Abstract

Because of the complexity of the failure diagnosis for large-scale discrete event systems (DESs), DESs with decentralized information have received a lot of attention. DESs with communication events are defined as distributed DESs. Stochastic discrete event systems (SDESs) are DESs with a probabilistic structure. A-diagnosability is an important property in failure diagnosis of SDES. In this paper, we investigate A-diagnosability in distributed SDESs. We define a local model and global model. Moreover, we construct a synchronized stochastic diagnoser to check A-diagnosability in distributed SDESs. We also propose a necessary and sufficient condition for a distributed SDES to be A-diagnosable. Some examples are described to illustrate our algorithms.

1. Introduction

Discrete event system (DES) is a discrete-state, event-driven system, the states evolution of which depends entirely on the occurrence of asynchronous discrete events over time. Failure diagnosis of DES has received considerable attention to guarantee the performance of a reliable system [15]. Most of the previous work concerned the DES as a global system, where there is only a site for collecting all the information about the system [1, 2]. However, in many complex systems, such as communication networks, power systems, and manufacturing systems, information is decentralized among many physically separated sites [6]. According to the decentralized information, the global system can be partitioned into a set of local models.

DESs with decentralized information can be classified into distributed DESs [3, 7, 8] and decentralized DESs [4, 9]. Meanwhile, the methods of diagnosis are classified into distributed diagnosis and decentralized diagnosis. The distinction is not exactly between distributed DESs and decentralized DESs in the previous literature. In this paper, the difference between distributed DESs and decentralized DESs is summarized as follows: in distributed DESs, the local models communicate with each other by the communication events between them; however, communication events do not exist between the local models in decentralized DESs, and a coordinator is constructed to exchange the local diagnosis information. Briefly speaking, the diagnosis is performed locally in distributed DESs. Figures 1 and 2, respectively, depict the procedures of verifying diagnosability in distributed DESs (Algorithm 1) and decentralized DESs.

inputs: local models ;
output: A-diagnosability;
(1) for all   do
(2) = ConDia()
(3) if   satisfies Theorem 10  then
(4) return is A-diagnosable
(5) else
(6)
(7) while  (  do
(8) for  all   do
(9) = ConSSDia(, )
(10)if   satisfies Theorem 17  then
(11)return    is A-diagnosable
(12)end for
(13)++
(14)end while
(15)return   is not A-diagnosable
(16)end for

To deal with the diagnosis problem of DESs precisely, stochastic discrete event systems (SDESs) were proposed by Lunze and Schroder [10]. SDESs extend DESs by probabilistic transitions. A-diagnosability is an important property in failure diagnosis of SDES. References [1113] have investigated A-diagnosability in SDESs. In some complex SDESs, the information is also decentralized. Inspired by the DESs with decentralized information, SDESs with decentralized information are partitioned into decentralized SDESs and distributed SDESs. Failure diagnosis in decentralized SDESs was investigated in [14, 15]. However, the previous literature only focused on the decentralized SDESs. The approach for diagnosis in decentralized SDESs is not adapted to the distributed SDESs, because the structure of distributed SDESs is different from that of the decentralized SDESs. Distributed SDESs exchange the local diagnosis information by the communication events. In this paper, we contributed by checking A-diagnosability in distributed SDESs. We define the local models in distributed SDESs and verify the A-diagnosability in local models. Furthermore, we propose a synchronized stochastic diagnoser to diagnose the failure events which are not A-diagnosable in the local models. Based on the synchronized stochastic diagnoser, we describe a necessary and sufficient condition for a distributed SDES to be A-diagnosable.

This paper is organized as follows. Some definitions and frequently used terms are introduced in Section 2. In Section 3, A-diagnosability in distributed SDES is presented. In Section 4, we construct a synchronized stochastic diagnoser and propose a necessary and sufficient condition for a distributed SDES to be A-diagnosable. We give an example to illustrate the condition of the A-diagnosability for distributed SDES in this section. In Section 5, we analyze the complexity of the algorithm. Section 6 describes the related work. Finally, Section 7 presents a summary of the results in the paper and gives the concluding remarks.

2. Preliminaries

In this section, we review some definitions and frequently used terms of SDES, A-diagnosability, and stochastic diagnoser.

2.1. SDES

We first introduce some basic concepts in SDES. SDES is usually modeled as a stochastic automaton (SA), which is a finite state machine with probabilistic structure [12].

Definition 1 (SA). An SA is defined as a tuple , where is the state space, is the set of events, is the partial state transition probability function, and is the initial state of the SDES.

The event set is partitioned as , where and denote the sets of observable and unobservable events, respectively. Note that denotes the set of failure events to be diagnosed. Let denote the set of all sequences formed by events in , including (empty event). The behavior of the system is described by the prefix-closed language , where is a subset of . A path denotes an arbitrary element of . Suppose is a path of ; projection removes the unobservable events from . Formally, projection is defined as follows [1].

Definition 2 (projection). A projection is defined as , for any , , , where

The inverse operation of projection is . denotes the set of possible continuations of a path . Let represent the number of events in .

According to different failure types, the set of failure events can be partitioned into disjoint sets; that is, . Let denote the final event of a path . Define

The result of function represents the set of paths whose final event is the failure event of a specific type. Hereafter, denotes the failure events whose type is . For the sake of simplicity, we introduce our algorithms by the systems with only a single failure type. In Section 4, we extend our algorithms to multiple failure types.

In SA, is a state transition probability of the system evolution from to driven by event , where , and . To facilitate the solution to the diagnosis problems, we formulate three assumptions about the transition probability [1, 12]:At most one exists, such that for a given and a given .For every state in , the probability of a transition occurring from that state is one or, equivalently, ,There does not exist any cycle of unobservable events; that is,

Intuitively, assumptions (A1) and (A2) indicate that transitions will continue to occur in any state. Assumption (A3) ensures that the DES does not exhibit an arbitrarily long path of unobservable events.

The probability transition function presents the probability of the partial transition function, which is defined as , where

If , then is undefined. Furthermore, the transition function can be extended to the sequence of events as follows:

Particularly, .

The probability of a sequence between two states is defined as . For example, the probability from to through path can be calculated aswhere .

On the basis of (7), the probability of a path, which is from state to , can be calculated recursively as follows:

Following [12], if no confusion results, and can be denoted by and , respectively.

Example 3. Consider the SA represented in Figure 3 and let . Thus, the probability of from state 0 to 1 is . We suppose , and then .

2.2. A-Diagnosability and Stochastic Diagnoser of SDES

The approach for distributed diagnosis is based on the related definitions in [12]. In this subsection, we review the definitions of A-diagnosability and stochastic diagnoser of SDES in [12].

Assessing the diagnosability of a system is crucial in diagnosis. The definition of diagnosability in DES was proposed in [1]. However, diagnosability cannot distinguish between paths highly probable and less probable. Therefore, A-diagnosability was proposed in [12]. A-diagnosability requires an error bound and a delay bound such that, for any failure path, its extensions, which are longer than , occur with a probability smaller than [12].

Definition 4 (A-diagnosability). A live, prefix-closed language is -A-diagnosable with respect to a projection Pj and a set of transition probabilities ifwhere the diagnosability condition function is as follows:

In (9), path ends with a failure event whose type is . is an arbitrary sufficiently long continuation of . is not logical diagnosable (referred to as diagnosability in [1]). is -A-diagnosable, if and only if (iff) the probability of is smaller than .

An SA is A-diagnosable iff every failure event in SA is A-diagnosable.

Example 5. Consider the SDES in Figure 3 as an example; the path . We take = 0.1. The continuation of is or . For both continuations, we have . However, the inverse projection . Therefore, = 0. When , the probability of is . We can conclude that is not A-diagnosable in .

A necessary and sufficient condition was proposed to check the A-diagnosability of the failure events in [12]. The condition is based on stochastic diagnoser. Stochastic diagnoser, which is used either online or offline to describe the behavior of the stochastic system , is constructed as follows [12].

Definition 6 (stochastic diagnoser). A stochastic diagnoser is defined as a tuple , where is the set of logical elements with the initial logical element , is the set of observable events, is the transition function of the stochastic diagnoser, is the set of probability transition matrices, and is the initial probability mass function on .

More details of the stochastic diagnoser can be found in [12]. Figure 4 shows the stochastic diagnoser of the SDES in Figure 3. Two logical elements exist in ; that is, and . is the initial logical element. Let denote a component of . If all the components in a logical element bear , then is -certain. Otherwise, is -uncertain. is an -uncertain logical element.

The condition of A-diagnosability is based on the theory of Markov chains. Let and be states of a Markov chain. () represents the probability that if the Markov chain is in state , it will go back to state at some point in the future. If , then is called a recurrent state. Otherwise, is called a transient state.

The condition for a language to be A-diagnosable is described as follows.

Theorem 7 (see [12]). A language L generated by an SA G is -A-diagnosable iff every logical element of its stochastic diagnoser containing a recurrent component bearing the label is -certain.

The proof of Theorem 7 can be found in [12].

We conclude this section with an example that illustrates the stochastic diagnoser in Figure 4. Components and are two recurrent components in . Moreover, is a recurrent component bearing failure event. However, is -uncertain. Therefore, is not A-diagnosable in .

3. A-Diagnosability for Distributed SDESs

In Section 2, we have already introduced A-diagnosability in SDES. In this section, A-diagnosability property will be taken into account when the SDES is modeled as a distributed SDES.

3.1. SDES with Decentralized Information

DESs with decentralized information are partitioned into decentralized DESs and distributed DESs. Similarly, we separate the SDESs with decentralized information into decentralized SDESs and distributed SDESs. In distributed SDESs, the local models communicate with each other by the communication events. The main task of the communication events is to deliver the diagnosis information. A distributed stochastic system is composed of interacting SDESs . is called global model. is obtained by the synchronization of the local models (), which are defined as follows.

Definition 8 (local model). A local model is defined as a tuple , where is the local state space, is the set of local events, is a partial local state transition probability function, and is the initial state of the local model.

can be divided into three disjoint sets:(1) are the observable events. If an event occurs on the local model, then this event cannot be observed by other local models. Therefore, suppose and are two arbitrary local models of . and represent the observable event sets of and , respectively. We have = .(2) are the unobservable events. If the failure event , then can only occur on this local model.(3) are the communication events. If a communication event , then occurs at least on another local model. Note that communication events are unobservable.

The communication events are used to exchange the local diagnosability information. Therefore, if a communication event has been triggered in a local model, then should be triggered in other local models at the same time. In order to guarantee assumption (A2) and avoid deadlock state, we make the following assumptions:(A4)If there exists such that , then, , we have .(A5)If there is a local model such that and , then, , the event from the initial state of local model , s.t. or .

Assumption (A4) implies that if there exists a communication event from state , then all the other events from belong to . Assumption (A5) avoids the deadlock state during synchronization.

After defining the local models, we introduce some properties in distributed SDESs. We define has an observable event or a communication event into  .

Let denote the set of all paths that originate from state of . We define

For the sake of simplicity, we first illustrate a distributed SDES with two local models as an example. It is not difficult to extend to the case of a finite number of local models.

Example 9. A distributed stochastic system composed of local models is shown in Figure 5. In the system, is the set of communication events. Event is observable in . Events and are observable in . is a failure event. = 0.2 is a probability transition in .

A local model is an SA. Therefore, based on Theorem 7, we can similarly obtain the A-diagnosability of the failure events in local models. The proof of Theorem 10 is the same as Theorem 7’s.

Theorem 10. A language generated by a local model is -A-diagnosable iff every logical element of its diagnoser containing a recurrent component bearing the label is -certain.

A local model is locally A-diagnosable iff every failure event occurring on that local model is locally A-diagnosable.

3.2. Global Model

Suppose is a failure event in a local model . The purpose of failure diagnosis in distributed SDES is to verify the A-diagnosability of in the global model. Given a set of local models, the global model can be obtained by the synchronization of transitions among the local models. The synchronization is based on the communication events.

Before introducing the global model, we make the following assumption:(A6)The delay among the observable events in different local models can be omitted.

Assumption (A6) ensures that the local states from different local models can be triggered together by the local events.

Definition 11 (global model). Given a set of local models , the global model of is defined by

The operator represents synchronization operation. The result of synchronization is a tuple , where one has the following:

(1) is the set of global states, where is the set of states of local model . For all , where .

(2) is the set of global events, where = . The element in is of the form , where, for each ,where represents the event from the local event set . If an observable event does not exist after a state, then we use event to guarantee the synchronization of the local models.

(3) is the probability transition function of the global model (to be defined later).

(4) is the initial state of the global model, defined as ), where () are the initial states of the local models separately.

The synchronization of the transitions is described as follows:and the results can be separated into two cases:(1)If such that , then all the events in which are are triggered.(2)If there does not exist communication event among , then all the events in which are not are triggered.

Based on the definition of local model, only communication events can occur in different local models. Therefore, if an event is a communication event, then all the transitions including should be triggered.

Meanwhile, when a new transition is generated, its probability is calculated according to different cases. Let denote the probability of transition from global state to driven by global event .where denotes the probability of the triggered transition in local model . Moreover, we suppose . Based on the definition of global model, the event is the Cartesian product of the local events. Therefore, a temporary probability of can be calculated recursively by . For example, we choose two transitions in and in , and then the temporary probability of transition . However, some results of the Cartesian product are redundant (suppose two outgoing transitions from labeled by and exist in ; then the result of Cartesian products () and () is redundant). Let represent the sum of the probabilities of the transitions which are not redundant. In order to guarantee that the sum of the probabilities is equal to 1, we need to divide by .

Figure 6 presents the global model of the local models shown in Figure 5.

Then, we verify A-diagnosability of the failure event in the global model. The global event can be seen as an ordinary event in SDES. Similarly, the global state can be seen as an ordinary state in SDES. Thus, the global model is equivalent in formalism to an SA. According to Definition 4, we can obtain the A-diagnosability of the failure event in the global model.

Consider the global model in Figure 6 as an example; the sequence . One of the continuations of is . We have . However, the inverse projection . Therefore, = 0. Meanwhile, . When becomes large, the probability of approaches zero. We can conclude that is A-diagnosable in global model .

4. Conditions of A-Diagnosability for Distributed SDESs

In this section, we present the conditions for a distributed SDES to be A-diagnosable.

4.1. A-Diagnosable Local Model

In local models, two cases exist: the failure event is A-diagnosable and the failure event is not A-diagnosable. For the failure event which is A-diagnosable in the local model, we have the following theorem.

Theorem 12. If is locally A-diagnosable in a local model, then is A-diagnosable in the global system.

Proof. Since is locally A-diagnosable in , by Definition 4, for any , there exists , for any and (where ), such that We determine the A-diagnosability through the global model. The probability of the transition is computed by (15). Suppose is the path ended with failure event in the global model. There exists . According to (15), we have .
By contrast, assume is not A-diagnosable in the global system. Then,Because , there exists . Therefore, there exists and (where ), such thatThe assumption violates the known conditions. Therefore, if is locally A-diagnosable in a local model, then is A-diagnosable in the global system.

In Example 9, is A-diagnosable in the local model . Moreover, we have already presented that is A-diagnosable in the global model shown in Figure 6. The result also demonstrates the correction of Theorem 12.

However, if the failure event is not A-diagnosable in the local model, we cannot verify whether is A-diagnosable or not in the global model. Furthermore, we construct a synchronized stochastic diagnoser to test the A-diagnosability of the failure event which is not locally A-diagnosable.

4.2. Construction of Synchronized Stochastic Diagnoser

In this subsection, we describe the construction of a synchronized stochastic diagnoser used to state the condition that ensures A-diagnosability. We need to first define the set of possible failure labels, which are similar to the failure labels in stochastic diagnoser in [12].

Definition 13 (local failure label). is a set of possible local failure labels, where is the set of failure events in the local model and label represents the normal behavior of .

Similarly, is a set of possible global failure labels, where ( is the number of the local models).

The local label propagation function is . Given , , and , LP propagates the label over . It is defined as follows:

For the sake of describing the synchronized stochastic diagnoser clearly, we first present a prediagnoser including communication events.

Definition 14 (prediagnoser). Given a set of local models , the prediagnoser of local models is a tuple , where one has the following:

(1) is a set of logical elements. The logical element in is of the form , where state is an -tuple () of local states. For each and .

(2) is the set of synchronized events, where = . The element in is of the form , where, for each ,where represents the event from the local event set .

(3) is the transition function of the prediagnoser (to be defined later).

(4) is the initial logical element of the prediagnoser, defined as , where () are the initial states of the local models separately.

Given a logical element of the prediagnoser , a pair () is called a diagnoser component of . In (), is an -tuple ( of local states. In order to define , we first introduce the evolution of the diagnoser component driven by the synchronized events. Given a synchronized event , we use to define the evolution, where = :

Figure 7 presents the prediagnoser of local models in Figure 5.

Definition 15 (synchronized stochastic diagnoser). Synchronized stochastic diagnoser removes the communication events from and adds probability transition matrices. Synchronized stochastic diagnoser is a tuple = (), where one has the following:

(1) The result of is a 4-tuple ), which removes communication events from and removes transitions including communication events.

(2) is the set of probability transition matrices. A set of probability transition matrices is defined as :where and .

(3) represents the initial probability mass function on .

Example 16. We take the prediagnoser in Figure 7 as an example. Figure 8 shows the synchronized stochastic diagnoser of local models and .

4.3. Necessary and Sufficient Condition of A-Diagnosability for Distributed SDES

In this subsection, we present a necessary and sufficient condition of A-diagnosability for distributed SDESs which are not A-diagnosable in local models. Before determining the condition, we introduce a property of the synchronized stochastic diagnoser.

Let be a logical element of the synchronized stochastic diagnoser. If all the diagnoser components in a logical element bear , then is -certain. Otherwise, is -uncertain.

Theorem 17. Let be a synchronized stochastic diagnoser of the local models , where . is A-diagnosable iff every logical element in containing a recurrent diagnoser component bearing the label is -certain.

The logical elements in can be viewed as a whole state and the synchronized events in can be viewed as a whole event. Thus, the synchronized stochastic diagnoser is equivalent to a stochastic diagnoser in formalism. Therefore, the proof of Theorem 17 is the same as the proof of Theorem 3 in [12].

Consider the synchronized stochastic diagnoser in Figure 8; and are two recurrent diagnoser components. The label of is . We only consider the logical element of component . The logical element of is -certain. Therefore, there does not exist a logical element containing a recurrent diagnoser component bearing the label which is -uncertain in Figure 8. We can conclude that is A-diagnosable in the global model.

When a distributed SDES has more than two local models (i.e., ) and a failure event is not A-diagnosable in a local model , computing the synchronized stochastic diagnoser of all the local models is complex. Theorem 12 has stated that a failure event is A-diagnosable in the global model if is A-diagnosable in the local model. Moreover, Theorem 12 can be extended as follows.

Theorem 18. If is A-diagnosable in a synchronized stochastic diagnoser of local models , where , then is A-diagnosable in the global model.

The proof of Theorem 18 is the same as the proof of Theorem 12. Therefore, if is not A-diagnosable in , we do not need to compute the synchronized stochastic diagnoser of all the local models. We first compute the synchronized stochastic diagnoser of and (). We use to denote the synchronized stochastic diagnoser of and other local models. If there exists a logical element in containing a recurrent diagnoser component bearing the label which is -certain, then is A-diagnosable in the global model. We present an algorithm, called VerDia, to present the process of testing A-diagnosability in distributed SDESs. For the sake of simplicity, we consider the distributed SDES with a failure event. It is not difficult to extend the algorithm to the case of multiple failures.

Let be a distributed stochastic system composed of local models , where . The set of local models is the input of VerDia. Lines (1)–(4) check the A-diagnosability of each local model. In line (2), function ConDia() computes the stochastic diagnoser of local model . If the failure event is A-diagnosable in , then is A-diagnosable in the global model and the algorithm is finished. Otherwise, we compute the synchronized stochastic diagnoser of with other local models. In line (8), represents the set of local models except . presents the number of local models in . We first construct the synchronized stochastic diagnoser of with one local model ; that is, . Therefore, the initial value of is equal to one. If all the synchronized stochastic diagnosers of and () do not satisfy Theorem 17, then we construct the synchronized stochastic diagnoser of with two local models. In line (9), the result of function ConSSDia() represents the synchronized stochastic diagnoser of and the local models in . The algorithm is finished until we have found a synchronized stochastic diagnoser which satisfies Theorem 17.

If all the synchronized stochastic diagnosers do not satisfy Theorem 17, then the failure event is not A-diagnosable.

Example 19. Figure 9 presents a distributed SDES including three local models Event is observable in . Events and are observable in . Event is observable in . Event is unobservable in . Events and are failure events and they belong to different failure types. is the set of communication events. is the same as the local model in Figure 5, and thus is not A-diagnosable. In , suppose the path ended with a failure event is . One of the continuations of is . The projection of is . However, the inverse projection . Therefore, . The probability of is . When becomes large, the probability of approaches zero. Therefore, is A-diagnosable in . Based on Theorem 12, we can conclude that is A-diagnosable in the global model.

In order to verify the A-diagnosability of in the global model, we compute the synchronized stochastic diagnoser of and . Figure 10 shows the result. Diagnoser components and are recurrent diagnoser components bearing a failure label . However, logical element , ,  is -uncertain. Therefore, is not A-diagnosable in the synchronized stochastic diagnoser of and . is also not A-diagnosable in the synchronized stochastic diagnoser of and (the synchronized stochastic diagnoser of and is omitted). Then, we compute the synchronized stochastic diagnoser of . The result is shown in Figure 11. ) and ) are recurrent diagnoser components bearing failure label . Moreover, logical element , , ,  is -uncertain. Therefore, is not A-diagnosable in the synchronized stochastic diagnoser of , , and . Based on Theorem 17, is not A-diagnosable in the global model.

is not A-diagnosable and is A-diagnosable. Therefore, the distributed SDES is not A-diagnosable.

5. Evaluations

Let be a distributed stochastic system composed of local models , where . and denote the number of states and events of , respectively, where . Table 1 lists the maximum numbers of states and transitions of . is the stochastic diagnoser of . The logical element space of the stochastic diagnoser is a subset of . Therefore, each local stochastic diagnoser has at most logical elements and transitions. represents the synchronized stochastic diagnoser of and . Similarly, the logical element of is at most and the transition is at most . Let = ) be the largest number of the states of the local models. If the failure event is A-diagnosable in the local models, then the complexity of the computing process is . However, if the local models are not A-diagnosable, the synchronized stochastic diagnosers should be constructed to verify the A-diagnosability of the distributed SDES. The worst case is that we verify the A-diagnosability through the global model. The number of states of the global model is and the number of transitions is . Therefore, the overall complexity of the computing process of verifying A-diagnosability is .

Since Sampath et al. proposed diagnosability in DESs [1], many algorithms about failure diagnosis were proposed. In order to reduce the complexity in central diagnosis, DESs with decentralized information were investigated. References [4, 9] described the diagnosis in decentralized DES and [3, 7, 8] described the diagnosis in distributed DES. SDES can present the system more precisely. In the context of testing diagnosability of SDES, a number of approaches have been proposed, including [1117]. Reference [16] has defined safe diagnosability for SDES, in which failure detection occurs before any given forbidden string in the failed mode of system is executed. References [1113, 17] have presented the algorithms of testing diagnosability of SDES. The methods in [12] constructed a diagnoser and used Markov matrix to test diagnosability of the SDES. The complexity of the methods in [12] is , which is exponential in the number of states of the system. To improve the efficiency, [11, 17] proposed a polynomial test to verify the diagnosability. The complexity of the methods in [11] is . Reference [11] is based on the twin-plant structure and does not construct a diagnoser. Reference [13] has used probabilistic logic to diagnose SDES. The complexity of [13] is also polynomial and the power of the algorithms is 4. Because of the large number of states in a global SDES, SDESs with decentralized information were proposed. Similarly, SDESs with decentralized information are separated into decentralized SDESs and distributed SDESs. A-diagnosability of decentralized SDESs has been presented in [15]. In order to improve the complexity of diagnosis in decentralized SDESs, [14] proposed a polynomial algorithm to check the A-diagnosability of decentralized SDESs.

To the best of our knowledge, there is no work about A-diagnosability in a distributed SDES. Therefore, the question of A-diagnosability in a distributed SDES is investigated in this paper.

7. Conclusion

A-diagnosability is an important property in SDES. SDESs with decentralized information are partitioned into decentralized SDES and distributed SDES. In this paper, we investigate the A-diagnosability in distributed SDES. We introduce the local model and global model in distributed SDES. In order to verify the A-diagnosability of the global model, A-diagnosability of every local model should be verified first. For the local models which are not A-diagnosable, we have proposed a necessary and sufficient condition to ensure A-diagnosability of distributed SDES. A synchronized stochastic diagnoser has been constructed to determine the condition.

Incremental diagnosis is another approach to diagnose the system locally. In the future, we intend to investigate the incremental diagnosis in SDES.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this article.

Acknowledgments

This work was supported in part by NSFC under Grants nos. 61272208, 61133011, 41172294, and 61170092 and by Jilin Province Science and Technology Development Plan under Grant no. 201201011.