Annual Reviews in Control 36 (2012) 11–25
Contents lists available at SciVerse ScienceDirect
Annual Reviews in Control journal homepage: www.elsevier.com/locate/arcontrol
Analysis and control of general logical networks – An algebraic approach q Daizhan Cheng ⇑, Hongsheng Qi, Yin Zhao Key Laboratory of Systems and Conrol, Academy of Mathematics and Systems Science, Chinese Academy of Sciences, Beijing 100190, PR China
a r t i c l e
i n f o
Article history: Received 10 December 2011 Accepted 9 February 2012
Keywords: General logical network Algebraic approach Semi-tensor product Network control Dynamic game
a b s t r a c t Since Boolean network is a powerful tool in describing the genetic regulatory networks, accompanying the development of systems biology, the analysis and control of Boolean networks have attracted much attention from biologists, physicists, and systems scientists. From mathematical point of view, the dynamics of a Boolean (control) network is a discrete-time logical dynamic process. This paper surveys a recently developed technique, called the algebraic approach, based on semi-tensor product. The new technique can deal with not only Boolean networks, which allow each node to take two values, but also k-valued networks, which allow each node to take k different values, and mix-valued networks, which allow nodes to take different numbers of values. The paper provides a comprehensive introduction to the new technique, including (1) mathematical background of this new technique – semi-tensor product of matrices and the matrix expression of logic; (2) dynamic models of Boolean networks, and general (multi- or mix-valued) logical networks; (3) the topological structure of Boolean networks and general networks; (4) the basic control problems of Boolean/general control networks, which include the controllability, observability, realization, stability and stabilization, disturbance decoupling, identification and optimization, etc.; (5) some other related applications. Ó 2012 Elsevier Ltd. All rights reserved.
1. Introduction In 1943 ‘‘McCulloch and Pitts had claimed that the brain could be modeled as a network of logical operations such as ‘and’, ‘or’, ‘not’ and so forth. It had been a revolutionary idea at the time, to put it mildly, and had proved to be immensely influential.’’ (Waldrop, 1992) ‘‘Jacob and Monod were publishing their first papers on genetic circuits in 1961 through 1963. It was the work for which they later won the Nobel Prize. Their work shows that any cell contains a number of ‘regulatory’ genes that act as switches and can turn one another on and off. That work was a revelation for all biologists. If genes can turn one another on and off, then you can have genetic circuits.’’ (Waldrop, 1992) Motivated by these works and through his hard work, Kauffman first proposed Boolean network to describe the cellular and regulatory networks in 1969 (Kauffman, 1969). A tutorial introduction can be found in Kauffman (1995). Since Boolean network is a proper model in describing and analyzing the interaction and evolution of cells, it has received the most attention, not only from the biology community, but also in physics and systems science. There are many research
q Supported partly by the National Natural Science Foundation of China under Grants 61074114, 60821091, and 61104065. ⇑ Corresponding author. E-mail addresses:
[email protected] (D. Cheng),
[email protected] (H. Qi),
[email protected] (Y. Zhao).
1367-5788/$ - see front matter Ó 2012 Elsevier Ltd. All rights reserved. http://dx.doi.org/10.1016/j.arcontrol.2012.03.002
literatures on various topics on Boolean networks. The first widely discussed problem is the topological structure of Boolean networks. Many analytic and/or numerical methods have been developed to figure out the fixed points, cycles, etc. (Aldana, 2003; Farrow, Heidel, Maloney, & Rogers, 2004; Heidel, Maloney, Farrow, & Rogers, 2003; Klemm & Bornholdt, 2005). Analyzing the dynamic characteristics and identification (Akutsu, Miyano, & Kuhara, 2000; Albert & Barabási, 2000; Chaves, Albert, & Sontag, 2005; El Snoussi & Thomas, 1993; Liang, Fuhrman, & Somogyi, 1998) of Boolean networks are also widely investigated theoretical topics. Boolean modeling and analysis of biological systems are important in applications (Huang, 2002; Huang & Ingber, 2000). In addition to deterministic networks, the investigation of stochastic Boolean networks is also a hot and fruitful topic (Lynch, 2002; Shmulevich, Dougherty, Kim, & Zhang, 2002a, Shmulevich, Dougherty, & Zhang, 2002b). Recently, the interest in Boolean control network is increasing. It was pointed out in Akutsu, Hayashida, Ching, and Ng (2007) that ‘‘One of the major goals of systems biology is to develop a control theory for complex biological systems.’’ Since the dynamics of Boolean network is a process of logical evolution, and there are less tools for logical process, investigating Boolean network becomes difficult. Over the past decade, the first author has proposed and been working on a new matrix product, namely, the semi-tensor product (STP) of matrices, which generalizes the conventional matrix
12
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
product to two arbitrary matrices. An general introduction for this can be found in Cheng and Qi (2007), a survey in Cheng (2007), or a coming soon book (Cheng, Qi, & Zhao, in press). Its various applications can be found in Cheng (2001), Cheng and Dong (2003), Cheng, Hu, and Wang (2004a, 2004b), Cheng (2006), Cheng, Yang, and Xi (2007, 2011f). Particularly, we refer to a recent book (Mei, Liu, & Xue, 2010) for its applications to power systems, and to another book (Cheng, Qi, & Li, 2011a) for its application to Boolean networks. In a Boolean network the nodes can take only two possible values: zero (0) and one (1). This is obviously an approximation. Though, it was claimed that in modeling large genetic networks on-off type could be better than complex models (Bornholdt, 2005), there are also many other papers shown that more precise model may be necessary in biology or some other fields (Adamatzky, 2003). Hence, k-valued network is also an interesting topic. More generally, in describing the dynamic games between machine and human and circuit design, etc. the models can also be described as a network, where each node may take different finite numbers (Mu & Guo, 2009; Zhao, Li, & Cheng, 2011). Such processes can be described by mix-valued networks. This paper surveys application of STP and STP-based new technique, called the algebraic approach, to Boolean networks. Since the technique is applicable also to multi- and mix-valued cases, we try to extend the results for Boolean networks to k-valued or mix-valued networks as much as we can. First, we show that a logical relation can be expressed into a matrix form by using semi-tensor product (Cheng & Qi, 2005, 2007). Using it, the dynamics of a logical (control) network can be converted into a discrete-time (conventional) dynamic system, and hence the conventional matrix approach to discrete-time systems is applicable to the analysis and control of logical dynamic systems. In addition, the paper also introduces some other related applications of this new technology. For statement ease, we first fix some notations, which are used throughout the paper:
control networks. Section 6 discusses the disturbance decoupling problem. The stability of Boolean networks and the stabilization of Boolean control networks are discussed in Section 7. Section 8 explores the optimal control of Boolean control networks. The identification of Boolean (control) networks is studied in Section 9. Section 10 introduces some other related applications. Section 11 is a brief summary. 2. Algebraic form of logic 2.1. Semi-tensor product of matrices Definition 2.1. Let A 2 Mmn , B 2 Mpq , and c = lcm(n, p) (the least common multiple of n and p). Then the semi-tensor product (STP) of two matrices A and B, denoted by A n B, is defined as
AnB ¼ ðA Inc ÞðB Ipc Þ; where is the Kronecker product of matrices.
Remark 2.2. When n = p the STP coincides with the conventional matrix product. Hence STP is a generalization of the conventional matrix product. Owing to this, the symbol n can be omitted. We will do this in the sequel for most cases. STP keeps most of the properties of the conventional matrix product unchanged. We list some of them in the following, which are used throughout this paper. Proposition 2.3 1. (Distributive Law)
FnðaG bHÞ ¼ aFnG bFnH; ðaF bGÞnH ¼ aFnH bGnH;
6. din : din ¼ Coli ðIn Þ, where In is the n n identity matrix; n o 7. Dn: Dn ¼ din ji ¼ 1; 2; . . . ; n ; 8. L 2 Mmr is called a logical matrix if Col(L) Dm. The set of m r logical matrices is denoted by Lmr ; h i 9. Let L 2 Lmr be a logical matrix. Then L ¼ dim1 dim2 dimr . For notational briefness, denote it as
L ¼ dm ½i1 i2 ir : 10. B 2 Mmr is called a Boolean matrix, if the entries of B are 0 or 1, i.e., bi;j 2 D. The set of m r Boolean matrices is denoted by Bmr . 11. Let {x1, . . . , xs} be a set of logical variables. Then F ‘ ðx1 ; . . . ; xs Þ is the set of logical functions of x1, . . ., xs. The rest of this paper is organized as follows: Section 2 gives the preliminaries of the approach, which includes: (i) the definition and basic properties of STP; (ii) the matrix expression of logic; (iii) the algebraic form of Boolean (control) networks. Section 3 gives the formulas for fixed points and cycles. The state space and subspaces of logical dynamic systems are defined in Section 4. Section 5 considers the controllability, observability, and realization of Boolean
a; b 2 R:
ð2Þ
2. (Associative Law)
ðFnGÞnH ¼ FnðGnHÞ: 1. Mmn : the set of m n real matrices. When m = n it is briefly denoted as Mn . 2. Col(A) (Row(A)): the set of columns (rows) of matrix A. Coli(A) (Rowi(A)) is the ith column (row) of A. 3. Blki(A): the ith n n block of a matrix A 2 Mmnm . 4. mjn: m is a factor of n ðm; n 2 Zþ Þ; 1 2 5. Dk : Dk ¼ 0; k1 ; k1 ; . . . ; 1 ; D :¼ D2 ;
ð1Þ
ð3Þ
Proposition 2.4 1.
ðAnBÞT ¼ BT nAT :
ð4Þ
2. Assume A and B are invertible. Then
ðAnBÞ1 ¼ B1 nA1 :
ð5Þ
Proposition 2.5 1. Let Z 2 Rt be a column. Then
ZA ¼ ðIt AÞZ:
ð6Þ
2. Let Z 2 Rt be a row. Then
AZ ¼ ZðIt AÞ:
ð7Þ
Proposition 2.6. There exists a unique matrix W ½m;n 2 Mmnmn , called the swap matrix, such that for any two column vectors X 2 Rm and Y 2 Rn
W ½m;n XY ¼ YX:
ð8Þ
Remark 2.7. Throughout this paper we assume the matrix product is the generalized one, i.e., the STP. Hence, the product of any two matrices is well defined.
13
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
2.2. Matrix expression of logic A logical variable can be either ‘‘true’’ or ‘‘false’’ (briefly, T or F). It was proposed by G. Boole (Boole, 1847, 1854) to identify T with 1 and F with 0. That is,
T 1
ð9Þ
F 0:
This is a revolutionary idea. It converts a logical statement into a binary algebraic form, and then algebraic tools are applicable to logical inferences. Precisely, a logical variable takes value from D ¼ f0; 1g. A k-ary logical operator (or function) r is a mapping, r : Dk ! D. Negation, : is a 1-ary (unary) operator, defined as :ð0Þ ¼ 1, :ð1Þ ¼ 0. Some commonly used 2-ary (binary) operators are defined by their truth table in Table 1. Instead of Boole’s identification (9), we propose the following alternative identification.
(
T d12 F
ð10Þ
d22 :
Then a logical variable x 2 D becomes x 2 D, and a logical function f : Dn ! D becomes f: Dn ? D (or equivalently, f : D2n ! D). This expression is called the vector form. The main advantage of the identification (10) is that a logical expression can be expressed as a conventional matrix product of a structure matrix with an argument vector. Then the matrix analysis tools can be used for logical dynamic systems. To realize this approach the following result is very important (Cheng & Qi, 2007).
Fig. 1. A Boolean network.
Then each multi-/mix-valued logical function can also be converted into its vector form. In vector form, similar to Boolean case, we have the following: Q (i) Let y ¼ f ðx1 ; . . . ; xn Þ : ni¼1 Dki ! Dk0 be a mix-valued logical function. Then in vector form we have its algebraic form as
y ¼ M f x;
ð13Þ nni¼1 xi ,
Qn
where x ¼ M f 2 Lk0 k k ¼ i¼1 ki is the unique structure matrix of f. Qn Q (ii) Let F : i¼1 Dki ! pj¼1 Dlj , which is determined by
yj ¼ fj ðx1 ; . . . ; xn Þ;
j ¼ 1; . . . ; p:
Then we have an algebraic form as
y ¼ M F x; Theorem 2.8. Let f(x1, . . . , xn) be a logical function in vector form as f : D2n ! D. Then there exists a unique M f 2 L22n , called the structure matrix of f, such that
f ðx1 ; . . . ; xn Þ ¼ Mf nx;
ð11Þ
nni¼1 xi .
where x ¼ For some classical operators their structure matrices are obtained as follows. The structure matrix of negation : is M: = d2 [2 1]. For the operators in Table 1 we have
M ^ ¼ d2 ½1 2 2 2;
M _ ¼ d2 ½1 1 1 2; M ! ¼ d2 ½1 2 1 1;
M $ ¼ d2 ½1 2 2 1; M _ ¼ d2 ½2 1 1 2; M " ¼ d2 ½2 1 1 1;
ð14Þ npj¼1 yj ,
where x is as in (i), y ¼ MF 2 Llk (k is as in (i) and Q l ¼ pj¼1 lj ) is the unique structure matrix of F. 2.3. Algebraic form of Boolean (control) networks A Boolean network can be described by a directed graph, denoted by (N, E), where N = {x1, . . . , xn} is the set of nodes, E N N is the set of directed edges. (i, j) 2 E (A short notation for (xi, xj) 2 E) means the state value of node j at time t + 1, denoted by xj(t + 1), depends on xi(t). Its dynamics is described by a logical dynamic equation. We use an example to depict it.
M # ¼ d2 ½2 2 2 1: Example 2.11. Fig. 1 is a Boolean network with three nodes. Assume its dynamics is
In general we have (Cheng & Qi, 2010a) Theorem 2.9. Let Fðx1 ; . . . ; xn Þ : Dn ! Dk be a logical mapping, (equivalently, in vector form, F : D2n ! D2k ). Then there exists a unique matrix M F 2 L2k 2n , called the structure matrix of F, such that
Fðx1 ; . . . ; xn Þ ¼ M F nx:
ð12Þ
Remark 2.10. Both Theorems 2.8 and 2.9 can be extended to general logical case. First, we identify
dir
ri ; r1
8 > < Aðt þ 1Þ ¼ BðtÞ ^ CðtÞ Bðt þ 1Þ ¼ :AðtÞ > : Cðt þ 1Þ ¼ BðtÞ _ CðtÞ:
A Boolean network with inputs and outputs is called a Boolean control network. Consider the following example. Example 2.12. Fig. 2 is a Boolean control network. Its dynamics is assumed to be
8 > < Aðt þ 1Þ ¼ BðtÞ ^ u1 ðtÞ Bðt þ 1Þ ¼ CðtÞ _ u2 ðtÞ > : Cðt þ 1Þ ¼ AðtÞ; yðtÞ ¼ :CðtÞ:
i ¼ 0; 1; . . . ; r 1:
Table 1 Truth Table of ^, _, ?, M, _, ", ;. p
q
p^q
p_q
p?q
pMq
p_q
p"q
p;q
1 1 0 0
1 0 1 0
1 0 0 0
1 1 1 0
1 0 1 1
1 0 0 1
0 1 1 0
0 1 1 1
0 0 0 1
ð15Þ
ð16Þ
In general, the dynamics of a Boolean (control) network is described as follows. Definition 2.13. 1. The dynamics of a Boolean network is defined as
14
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
1. The Boolean network (15) has its algebraic form (19) with
L ¼ d8 ½3 7 7 8 1 5 5 6: 2. The Boolean control network (16) has its algebraic form (20) with
L ¼ d8 ½1 1 5 5 2 2 6 6 1 3 5 7 2 4 6 8
Fig. 2. A Boolean control network.
5 5 5 5 6 6 6 6 5 7 5 7 6 8 6 8; 8 x1 ðt þ 1Þ ¼ f1 ðx1 ðtÞ; . . . ; xn ðtÞÞ > > > > < x2 ðt þ 1Þ ¼ f2 ðx1 ðtÞ; . . . ; xn ðtÞÞ .. > > . > > : xn ðt þ 1Þ ¼ fn ðx1 ðtÞ; . . . ; xn ðtÞÞ;
H ¼ d2 ½2 1 2 1 2 1 2 1: ð17Þ
where xi ðtÞ 2 D, i = 1, . . ., n are state variables, fi : Dn ! D, i = 1, . . ., n are logical functions. 2. The dynamics of a Boolean control network is defined as
8 x1 ðt þ 1Þ ¼ f1 ðx1 ðtÞ; . . . ; xn ðtÞ; u1 ðtÞ; . . . ; um ðtÞÞ > > > > < x2 ðt þ 1Þ ¼ f2 ðx1 ðtÞ; . . . ; xn ðtÞ; u1 ðtÞ; . . . ; um ðtÞÞ .. > > > >. : xn ðt þ 1Þ ¼ fn ðx1 ðtÞ; . . . ; xn ðtÞ; u1 ðtÞ; . . . ; um ðtÞÞ yj ðtÞ ¼ hj ðx1 ðtÞ; . . . ; xn ðtÞÞ; j ¼ 1; . . . ; p;
ð18Þ
where xi ðtÞ 2 D, i = 1, . . ., n are state variables, ui ðtÞ 2 D, i = 1, . . ., m are controls, yi ðtÞ 2 D, i = 1, . . ., p are outputs; fi : Dnþm ! D, i = 1, . . ., n, and hi : Dn ! D, i = 1, . . ., p are logical functions. p In vector form we set x :¼ nni¼1 xi , u :¼ nm i¼1 ui , and y :¼ ni¼1 yi . Using Theorem 2.9 we have (Cheng, 2009; Cheng & Qi, 2010a).
ð19Þ
where L 2 L2n 2n ; 2. (18) can be expressed as
yðtÞ ¼ HxðtÞ;
Since a Boolean network has only finite states, a trajectory will eventually enter into a fixed point or a cycle. Therefore, the fixed points and cycles form the most important topological structure of a Boolean network. The problem of finding fixed points and cycles has been investigated by several authors (Farrow et al., 2004; Heidel et al., 2003). The following is a general result based on the algebraic form Cheng and Qi (2010a).
1. x ¼ di2n is a fixed point of (17), if and only if, the ith diagonal element of L, ‘ii = 1. Hence, the number of fixed points of (17) is
1. (17) can be expressed as
xðt þ 1Þ ¼ LuðtÞxðtÞ
3. Topological structure of Boolean networks
Theorem 3.1. Consider a Boolean network (17) with its algebraic form (19).
Theorem 2.14. Under vector form
xðt þ 1Þ ¼ LxðtÞ;
Remark 2.17. Using STP, a logical dynamic (control) equation can be converted into its algebraic form, which is a standard discretetime dynamic system (with xi 2 D). Since there are no more logical operators involved, the conventional tools for discrete-time systems are applicable. The rest discussions in this paper are based on algebraic form. We refer to Cheng and Qi (2010a) for converting a Boolean network into its algebraic form, and to Cheng and Qi (2009) for converting the algebraic form back to logical form.
ð20Þ
where L 2 L2n 2mþn , H 2 L2p 2n . (19) and (20) are called the algebraic form of (17) and (18) respectively.
Ne ¼ trðLÞ:
ð21Þ
(We use tr(A) for the trace of A.) 2. Denote the number of cycles of length s by Ns. Then we have recursive formulas as
(
N1 ¼ Ne ; Ns ¼
P
trðLs Þ
t2PðsÞ
s
tNt
;
2 6 s 6 2n ;
ð22Þ
where PðsÞ is the set of proper factors of s, s 2 Zþ . For instance, Pð6Þ ¼ f1; 2; 3g, Pð10Þ ¼ f1; 2; 5g. Remark 2.15 (i) Note that we use L in both (19) and (20). But they have different dimensions. In fact, (19) provides a linear discretetime dynamic equation, while (20) is a bilinear discrete-time dynamic equation, which is linear with respect to both states and controls respectively. (ii) The dynamics of mix-valued logical (control) networks can also be described by (17) and (19) (correspondingly, (18) and (20)) with obvious modification. For instance, now in (18) we have xi 2 Dki , i = 1, . . ., n; uj 2 Dlj , j = 1, . . ., m; y‘ 2 Dm‘ , ‘ = 1, . . ., p. Correspondingly, in (20) we have p x ¼ nni¼1 xi , u ¼ nm . Moreover, L 2 Lkkl , and j¼1 uj ,Qy ¼ n‘¼1 y‘Q Qp n H 2 Lmk , (where k ¼ i¼1 ki , l ¼ m j¼1 lj , and m ¼ s¼1 ms ).
Example 2.16. The structure matrix L in (19) for Boolean network and the structure matrices L and H in (20) are easily computable (Cheng & Qi, 2010a). For instance, we have the following results.
In the following we consider the state equation of Boolean control network (18), which is
8 x1 ðt þ 1Þ ¼ f1 ðx1 ðtÞ; x2 ðtÞ; . . . ; xn ðtÞ; u1 ðtÞ; . . . ; um ðtÞÞ > > > > < x2 ðt þ 1Þ ¼ f2 ðx1 ðtÞ; x2 ðtÞ; . . . ; xn ðtÞ; u1 ðtÞ; . . . ; um ðtÞÞ .. > > . > > : xn ðt þ 1Þ ¼ fn ðx1 ðtÞ; x2 ðtÞ; . . . ; xn ðtÞ; u1 ðtÞ; . . . ; um ðtÞÞ;
ð23Þ
and assume the input dynamics is
8 u1 ðt þ 1Þ ¼ g 1 ðu1 ðtÞ; u2 ðtÞ; . . . ; um ðtÞÞ > > > > < u2 ðt þ 1Þ ¼ g 2 ðu1 ðtÞ; u2 ðtÞ; . . . ; um ðtÞÞ .. > > . > > : um ðt þ 1Þ ¼ g m ðu1 ðtÞ; u2 ðtÞ; . . . ; um ðtÞÞ:
ð24Þ
Then we consider the input-state space. An alternative explanation is: (23) and (24) is a Boolean network with (24) as its invariant subspace.
15
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
Assume there is a cycle of length k in the input-state space W. Say, it is C kW : wð0Þ ¼ w0 ¼ u0 x0 ! wð1Þ ¼ w1 ¼ u1 x1 ! ! wðkÞ ¼ wk ¼ uk xk ¼ w0 :
First of all, one sees easily that since u0 = uk, in the input space U, the sequence {u0, u1, . . . , uk} contains, say, j folds of a cycle of length ‘, where j‘ = k. Hence u‘ = u0. Now let us see what condition the {xi} in the cycle C kW should satisfy. Define a network transition matrix as
W :¼ Lðu‘1 ÞLðu‘2 Þ Lðu1 ÞLðu0 Þ: Starting from w0 = u0x0, we have x component of the cycle
2. Let y1 ; . . . ; yk 2 F ‘ fx1 ; . . . ; xn g. Then
Y :¼ F ‘ fy1 ; . . . ; yk g is called a subspace of X , generated by {y1, . . . , yk}. 3. A subspace Y :¼ F ‘ fy1 ; . . . ; yk g is called a regular subspace, if there exist {yk+1, . . . , yn}, such that X ¼ F ‘ fy1 ; . . . ; yn g. Remark 4.2.
ð25Þ C kW
(i) This definition can be generalized to k-valued logical networks, where all the logical variables are in Dk . Most of the following arguments about the state space and its subspaces of Boolean networks can easily be extended to k-valued logical networks. (ii) Unlike the k-valued case, for mix-valued logical networks the one-to-one correspondence between the state space and its dual space (the set of logical functions) is not obvious. Hence, it is still not clear so far how to use the state space approach to mix-valued logical networks.
as
x0 ! x1 ¼ Lðu0 Þx0 ! x2 ¼ Lðu1 ÞLðu0 Þx0 ! ! x‘ ¼ Wx0 ! x‘þ1 ¼ Lðu0 ÞWx0 ! x‘þ2 ¼ Lðu1 ÞLðu0 ÞWx0 ! ! x2‘ ¼ W2 x0 ! !
ð26Þ
xðj1Þ‘þ1 ¼ Lðu0 ÞWj1 x0 ! xðj1Þ‘þ2 ¼ Lðu1 ÞLðu0 ÞWj1 x0 ! ! xj‘ ¼ Wj x0 ¼ x0 : We conclude that x0 2 D2n is a fixed point of the equation
xðt þ 1Þ ¼ Wj xðtÞ:
ð27Þ
For convenience, we assume j > 0 is the smallest positive integer, which makes x0 a fixed point of (27). Conversely, assume x0 2 D2n is a fixed point of (27) and u0 is a point on a cycle of control space C ‘U . Then it is obvious that we have the cycle (26). Summarizing above arguments yields Theorem 3.2. Consider Boolean control network (23) and (24). A set C kW D2kðnþmÞ is a cycle in the input-state space W with length k, if and only if, for any point w0 ¼ u0 x0 2 C kW , there exists an ‘ 6 k as a factor of k, such that u0, u1 = Gu0, u2 = G2u0, . . ., u‘ = G‘u0 = u0 is a cycle in the control space, and x0 is a fixed point of Eq. (27) with j = k/‘.
Remark 3.3. Theorems 3.1 and 3.2 are also applicable to mix-valued logical networks, where the structure matrix L in (21) and (22) is a k k logical matrix, and 2 6 s 6 k in (22). This result is interesting. It shows that if a Boolean network has an invariant subspace, then the cycles on the overall state space have a product structure, with a ‘‘factor cycle’’ in the invariant subspace. This result can be generalized to multi-hierarchy Boolean networks to show that such networks have a ‘‘rolling gear’’ structure, which may be used to explain the fact, described by Kauffman, that (Kauffman, 1995) the small cycles decide the vast order of networks. We refer to Cheng (2009) for detailed discussion on this. 4. State space and subspaces Consider Boolean network (17) or Boolean control network (18). The state variables are logical variables {x1, . . . , xn}. We define their state space, X , as the set of logical functions of {x1, . . . , xn}, denote it as
X ¼ F ‘ fx1 ; . . . ; xn g: Definition 4.1. 1. Let z1 ; . . . ; zn 2 F ‘ fx1 ; . . . ; xn g (k 6 n). If
F ‘ fz1 ; . . . ; zn g ¼ F ‘ fx1 ; . . . ; xn g; then {z1, . . . , zn} is said to be a basis of X . Moreover, the mapping p:(x1, . . . , xn) ´ (z1, . . . , zn) is called a coordinate transformation.
Let z1 ; . . . ; zn 2 F ‘ fx1 ; . . . ; xn g. By definition, zi, i = 1, . . ., n are logical functions of {x1, . . . , xn}. Express the mapping, denoted by F, by functions as
8 z1 ¼ f1 ðx1 ; . . . ; xn Þ > > < .. . > > : zn ¼ fn ðx1 ; . . . ; xn Þ:
ð28Þ
Denote by x ¼ nni¼1 xi and z ¼ nni¼1 zi . According to Theorem 2.9, there exists LF 2 L2n 2n such that (28) can be equivalently expressed as
z ¼ LF x:
ð29Þ
Then the following result is obvious. Theorem 4.3. The mapping F: x ? z defined in (28) is a coordinate transformation, if and only if, its structure matrix LF is non-singular. Similarly, a subspace Y ¼ F ‘ fy1 ; . . . ; yq g can also be expressed by
8 y1 ¼ g 1 ðx1 ; . . . ; xn Þ > > < .. . > > : yq ¼ g h ðx1 ; . . . ; xn Þ:
ð30Þ
And its algebraic form is
y ¼ LG x:
ð31Þ
To investigate when Y is a regular subspace, we consider LG and denote its entries as
2 6 6 6 LG ¼ 6 6 4
‘1;1
‘1;2
‘2;1 .. .
‘2;2
‘2q ;1
‘2q ;2
‘1;2n
3
7 ‘2;2n 7 7 7: 7 5 ‘2q ;2n
ð32Þ
Then we have the following result: Theorem 4.4. Assume Y ¼ F ‘ fy1 ; . . . ; yk g, and it has the algebraic expression as (31) with the structure matrix LG as in (32). Then Y is a regular subspace, if and only if, the entries of LG satisfies 2n P
‘j;i ¼ 2nq ;
j ¼ 1; 2; . . . ; 2q :
ð33Þ
i¼1
We refer to Cheng, Li, and Qi (2010) for coordinate transformation, and to Cheng and Qi (2010b) for state space and subspace.
16
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
Remark 4.5. For k-valued logical networks, (33) can be rewritten as kn P
‘j;i ¼ k
nq
;
Consider the algebraic form (20). Split L into 2m blocks as
L ¼ ½Blk1 ðLÞ; Blk2 ðLÞ; . . . ; Blk2m ðLÞ :¼ ½B1 ; B2 ; . . . ; B2m ; where Bi 2 L2n 2n , i = 1, . . ., 2m. Define a set of matrices as Xi 2 L2p 2n , i = 0, 1, 2, . . .
q
j ¼ 1; 2; . . . ; k :
i¼1
5. Controllability and observability 5.1. Controllability Definition 5.1. (i) System (18) is controllable from x0 to xd, if there exist a finite integer T P 1, a sequence of controls {u0, . . . , uT1}, such that the trajectory of (18) starting from x0 can be driven by the controls to x(T) = xd. (ii) System (18) is controllable at x0, if it is controllable to any destination xd 2 D2n . (iii) System (18) is controllable, if it is controllable at any x0.
8 X0 ¼ fHg > > > > > X1 ¼ fHBi ji ¼ 1; 2; . . . ; 2m g > > > > m > > < X2 ¼ fHBi Bj ji; j ¼ 1; 2; . . . ; 2 g .. > . > > > > > Xs ¼ fHBi1 Bi2 Bis ji1 ; i2 ; . . . ; is ¼ 1; 2; . . . ; 2m g > > > >. > :. .
It is easy to see that there exists an s, such that
Xsþ1 [sk¼1 Xk :
Denote by s the smallest positive integer such that (38) holds. Arrange the matrices in Xi to form matrices Ci as
J :¼ J jð18Þ
J s0 ¼ Lnð12m nLÞ
2
6 HB 2 6 .. 4 .
7 7 7; 7 5
C2 ¼ 6 6
HB2m
ð34Þ
HB1 B1
3
6 HB B 1 2 6 .. 4 .
7 7 7; 7 5
HB2m B2m
Define the observability matrix of Boolean control network (18) as
ð35Þ
:
3
C1 ¼ 6 6
C0 ¼ H;
where L is the structure matrix of (18), and called the basic block of J . It is easy to see that J s has a similar structure (called the row periodic structure), and its basic block is s1
HB1
2
Consider the controllability of Boolean control network (18). Denote by J the input-state incidence matrix of system (18):
2 39 L > > > 6 L 7> 6 7= m 7 6 ¼ 6 . 7 2 2 B2mþn 2mþn ; > 4 .. 5> > > ; L
ð38Þ
⁄
3
2
C0 6C 7 6 17
7 MO ¼ 6 6 .. 7: 4 . 5
ð39Þ
Cs
Express
J 0 ¼ ½Blk1 ðJ 0 ÞBlk2 ðJ 0 Þ Blk2m ðJ 0 Þ; Theorem 5.4. Assume Boolean control network (18) is controllable. Then it is observable, if and only if,
where Blkj ðJ 0 Þ 2 L2n 2n , j = 1, . . ., 2m. Then we define
M¼
2m P
Blki ðJ 0 Þ:
ð36Þ
rankðMO Þ ¼ 2n :
ð40Þ
i¼1
Starting from its algebraic form (20) and using (34)–(36), we define the controllability matrix as
MC :¼
mþn m 2P 2 P
ðsÞ Blki ðJ 0 Þ s¼1 i¼1
¼
mþn 2P
M ðsÞ 2 B2n 2n ;
Example 5.5. Consider the following Boolean control network
ð37Þ
s¼1
where J ðsÞ means we simply use the Boolean algebra in the product of matrices (Zhao, Qi, & Cheng, 2010), and denote its entries as MC ¼ ðcij Þ. Then we have Theorem 5.2. Consider Boolean control network (18). (i) Starting from x0 ¼ dj2n , xd ¼ di2n is reachable, if and only if, cij > 0; (ii) System (18) is controllable from x0 ¼ dj2n , if and only if, Colj ðMC Þ > 0; (iii) System (18) is controllable, if and only if, MC > 0. Note that for a real matrix A 2 Mmn , A > 0 means for any i, j, the entries ai,j > 0 in this paper. 5.2. Observability
x1 ðt þ 1Þ ¼ :x1 ðtÞ _ x2 ðtÞ x2 ðt þ 1Þ ¼ uðtÞ ^ :x1 ðtÞ _ ð:uðtÞ ^ x1 ðtÞ ^ :x2 ðtÞÞ; yðtÞ ¼ x1 _x2 :
Setting xðtÞ ¼ n2i¼1 xi ðtÞ, we have
xðt þ 1Þ ¼ LuðtÞxðtÞ yðtÞ ¼ HxðtÞ;
ð42Þ
where
L ¼ d4 ½2 4 1 1 2 3 2 2; H ¼ d2 ½2 1 1 2: For system (41), the basic block of its input-state incidence matrix J 0 ¼ L. Checking the controllability matrix, we have
3 1 1 1 1 61 1 1 17 7 6 ¼6 7 > 0: 41 1 1 15 2
3
MC ¼
2 P s¼1
Definition 5.3. Consider Boolean control network (18). It is observable, if for any x0 there exists a control sequence {u0, u1, . . .} such that the initial state can be determined by the corresponding output sequence {y(0), y(1), y(2), . . .}.
ð41Þ
MðsÞ
1 1 1 1 We conclude that the system is controllable. A straightforward computation shows the observability matrix is
17
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
2
0 6 61 3 6 2 61 H 6 7 6 6 6 HB1 7 6 0 7 6 6 7 6 6 MO ¼ 6 HB2 7 ¼ 6 1 7 6 6 6 HB1 B1 7 6 0 5 6 4 60 .. 6 . 6 61 4 .. .
1 1 0
3
where ni(t), i = 1, . . ., q are the disturbances.
7 0 0 17 7 0 0 07 7 7 1 1 17 7 1 1 17 7: 7 0 0 07 7 0 1 17 7 7 1 0 07 5
Definition 6.1. The disturbance decoupling problem (DDP) of system (44) is: Finding if possible, state feedback controls
ui ðtÞ ¼ g i ðx1 ðtÞ; . . . ; xn ðtÞÞ;
i ¼ 1; . . . ; m;
such that for the closed-loop system using these controls, the outputs are not affected by the disturbances. We need another concept for the investigation. Definition 6.2. Let Y ¼ F ‘ fy1 ; . . . ; yp g. S X is called the Yfriendly subspace, if S is a regular subspace and
From part of O, it is enough to see rankðMO Þ ¼ 4. Thus, the system is observable. 5.3. Realization
yi 2 S;
i ¼ 1; . . . ; p:
To explore the Y-friendly subspaces, we consider the algebraic form of y ¼ npi¼1 yi . Let this algebraic form be expressed as
y ¼ d2p ½i1 ; i2 ; . . . ; i2n x :¼ Hx:
In this subsection we consider the Kalman decomposition of Boolean control networks. Denote by C, O, Cc , and Oc the controllable, observable, uncontrollable, and unobservable subspaces respectively. Denote by
V 1 ¼ C \ O :¼ Dn n ðCc [ Oc Þ;
V 2 ¼ C \ Oc :¼ ðCc [ Oc Þ n Cc ;
V 3 ¼ Cc \ O :¼ Cc n ðCc \ Oc Þ;
V 4 ¼ Cc \ Oc :
z1 2 V 1 z2 2 V 2 z3 2 V 3
ð43Þ
Denote by
nj ¼ jfkjik ¼ j; 1 6 k 6 2n gj;
j ¼ 1; . . . ; 2p :
Then we have the following result (Cheng, 2011).
1. There is a Y-friendly subspace of dimension r, if and only if nj, j = 1, . . ., 2p have a common factor 2nr. 2. Assume 2nr is the largest common 2-type factor of nj, j = 1, . . ., 2p. Then the minimum Y-friendly subspace is of dimension r. We refer to Cheng (2011) for the algorithm to construct Yfriendly subspaces. Now assume S is a Y-friendly subspace. Then there exists a coordinate frame z = {z1, . . . , zn} with
S ¼ Z 2 ¼ F ‘ fzkþ1 ; . . . ; zn g:
z4 2 V 4 ;
where z1(t) (equivalently, V1) is the controllable and observable subspace, z2(t) (equivalently, V2) is the controllable and unobservable subspace, z3(t) (equivalently, V3) is the uncontrollable and observable subspace, and z4(t) (equivalently, V4) is the uncontrollable and unobservable subspace. Remark 5.7. The results about controllability and observability can be generalized to mix-valued logical control networks directly by using their structure matrix. However, Theorem 5.6 seems can only be generalized to k-valued logical control networks, since the regular subspaces for mix-valued case has not been properly defined. We refer to Cheng et al. (2011a, 2010) for more details about controllability, observability and realization of Boolean control networks.
It follows that under this coordinate frame system (44) can be expressed as
8 1 z ðt þ 1Þ ¼ F 1 ðz1 ðtÞ; . . . ; zn ðtÞ; u1 ðtÞ; . . . ; um ðtÞ; > > > < n1 ðtÞ; . . . ; nq ðtÞÞ 2 > z ðt þ 1Þ ¼ F 2 ðz1 ðtÞ; . . . ; zn ðtÞ; u1 ðtÞ; . . . ; um ðtÞ; > > : n1 ðtÞ; . . . ; nq ðtÞÞ; yj ðtÞ ¼ hj ðz2 ðtÞÞ;
ð47Þ
j ¼ 1; . . . ; p:
(47) is called a Y-friendly form of (44). Then we have the following result. Theorem 6.4. Consider Boolean control network (44) with disturbances. The disturbance decoupling problem is solvable, if and only if, (i) there exists a Y-friendly subspace with Y-friendly form (47); (ii) there exist state-feedback controls
6. Disturbance decoupling It is well known that the decoupling is one of the important topics in control theory. There are many different decoupling problems, we refer to Cheng and Qi (2010a) for some kinds of them, and most of them are still untouched. This section considers only the disturbance decoupling problem, which is based on Cheng (2011). Consider the following system 8 x1 ðt þ 1Þ ¼ f1 ðx1 ðtÞ; . . .; xn ðtÞ; u1 ðtÞ;. . . ; um ðtÞ; > > > > > n1 ðtÞ; . . .; nq ðtÞÞ > > < .. . > > > > > xn ðt þ 1Þ ¼ fn ðx1 ðtÞ; . . . ;xn ðtÞ; u1 ðtÞ; . .. ; um ðtÞ; > > : n1 ðtÞ; . . .; nq ðtÞÞ; yj ðtÞ ¼ hj ðxðtÞÞ; j ¼ 1;. . . ; p;
ð46Þ
Theorem 6.3. Assume y ¼ npi¼1 yi has its algebraic form (46).
Theorem 5.6. Assume Cc , Oc , Cc [ Oc , and Cc \ Oc are all regular subspaces of X . Then there exists a coordinate transformation: x ? z, such that under this new coordinate frame system (18) has the following Kalman decomposed form
8 > z1 ðt þ 1Þ ¼ F 1 ðz1 ðtÞ;z3 ðtÞ;uðtÞÞ; > > > < z2 ðt þ 1Þ ¼ F 2 ðz1 ðtÞ;z2 ðtÞ;z3 ðtÞ;z4 ðtÞ;uðtÞÞ; > z3 ðt þ 1Þ ¼ F 3 ðz3 ðtÞÞ; > > > : 4 z ðt þ 1Þ ¼ F 4 ðz3 ðtÞ;z4 ðtÞÞ; ys ðtÞ ¼ hs ðz1 ðtÞ;z3 ðtÞÞ; s ¼ 1;2;...;p;
ð45Þ
ð44Þ
ui ðtÞ ¼ /i ðzðtÞÞ;
i ¼ 1; . . . ; m;
such that
F 2 ðz1 ðtÞ; . . . ; zn ðtÞ; /1 ðzðtÞÞ; . . . ; /m ðzðtÞÞ; n1 ðtÞ; . . . ; nq ðtÞÞ ¼ e F 2 ðz2 ðtÞÞ: Again, we refer to Cheng (2011) for the technique to design the controls. Remark 6.5. Similar to Remark 5.7, the result in this section depends on the regular subspace, which is still open defined for mix-valued logical network. But it is not difficult to generalize the results to k-valued logical network by using Dk to replace D in the above arguments.
18
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
M1 ¼ d2 ½1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2;
Example 6.6. Consider the following system
8 x1 ðt þ 1Þ ¼ x4 ðtÞ_u1 ðtÞ > > > > > > > x2 ðt þ 1Þ ¼ ðx2 ðtÞ_x3 ðtÞÞ ^ :nðtÞ > > < x3 ðt þ 1Þ ¼ ½ðx2 ðtÞ $ x3 ðtÞÞ _ nðtÞ_½ðx1 $ x5 Þ _ u2 ðtÞ > > > > > x4 ðt þ 1Þ ¼ ½u1 ðtÞ ! ð:x2 ðtÞ _ nðtÞÞ ^ ðx2 ðtÞ $ x3 ðtÞÞ > > > > : x5 ðt þ 1Þ ¼ ðx4 ðtÞ_u1 ðtÞÞ $ ½ðu2 ðtÞ ^ :x2 ðtÞÞ _ x4 ðtÞ;
M2 ¼ d2 ½2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1; ð48Þ
where u1(t), u2(t) are controls, n(t) is a disturbance, y(t) is the output. Setting xðtÞ ¼ n5i¼1 xi ðtÞ, u = u1(t)u2(t), we express (48) into it algebraic form as
xðt þ 1Þ ¼ LuðtÞnðtÞxðtÞ
ð49Þ
yðtÞ ¼ hxðtÞ;
8 z 1 ¼ x1 > > > > > > < z2 ¼ :x2
z 3 ¼ x2 $ x3 > > > z 4 ¼ x4 > > > : z 5 ¼ x1 $ x5 :
ð50Þ
Setting z ¼ n5i¼1 zi and x ¼ n5i¼1 xi , the algebraic form of (50) is z = Tx with
where 30 30 32 32 26 30 28 32 13 13 13 13 9 13 9 13
1 1 1 1 2 2 2 2 2 2 2 2 1 1 1 1: It is easy to check that the Boolean matrix Bz of {z1, z2, z3, z4, z5} has no equal columns. So it is a coordinate change. From Mi, the zi can be calculated as
yðtÞ ¼ x4 ðtÞ ^ ðx1 ðtÞ $ x5 ðtÞÞ;
L ¼ d32 ½30 30 32 32 30 26 32 28 13 13 13 13 13 9 13 9
M3 ¼ d2 ½1 1 1 1 2 2 2 2 2 2 2 2 1 1 1 1
14 14 16 16 14 10 16 12 29 29 29 29 29 25 29 25
14 14 16 16 10 14 12 16 29 29 29 29 25 29 25 29
32 32 20 20 32 28 20 24 15 15 3 3 15 11 3 7
32 32 20 20 28 32 24 20 15 15 3 3 11 15 7 3
16 16 4 4 16 12 4 8 31 31 19 19 31 27 19 23
16 16 4 4 12 16 8 4 31 31 19 19 27 31 23 19
32 32 20 20 32 28 20 24 15 15 3 3 15 11 3 7
32 32 20 20 28 32 24 20 15 15 3 3 11 15 7 3
15 15 3 3 16 12 4 8 32 32 20 20 31 27 19 23
15 15 3 3 12 16 8 4 32 32 20 20 27 31 23 19
30 30 30 30 30 26 30 26 13 13 13 13 13 9 13 9
30 30 30 30 26 30 26 30 13 13 13 13 9 13 9 13
13 13 13 13 14 10 14 10 30 30 30 30 29 25 29 25
13 13 13 13 10 14 10 14 30 30 30 30 25 29 25 29;
h ¼ d2 ½1 2 2 2 1 2 2 2 1 2 2 2 1 2 2 2 2 1 2 2 2 1 2 2 2 1 2 2 2 1 2 2: First, we have to find the minimum output-friendly subspace. Observing h, we have n1 = 8 and n2 = 24. Then we have the largest 2-type common factor 2s = 23, and m1 = 1, m2 = 3. Hence, we know that the minimum output-friendly subspace is of dimension n s = 5 3 = 2. Using algorithms in Cheng (2011), we may choose
T 0 ¼ d4 ½1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 2 1 4 3 2 1 4 3 2 1 4 3 2 1 4 3; and
G ¼ d2 ½1 2 2 2: From T0 we can find the output-friendly sub-basis, denote it by {z4, z5}, with z4 = M4x and z5 = M5x. Then we can easily calculate M4 and M5 from T0. In fact, for two factor case, we simply have the following rule: For M1 each column of d14 or d24 of T0 yields a column d12 in the corresponding column of M1; otherwise, we have d22 ; and for M2 each column of d14 or d34 of T0 yields a d12 in the corresponding column of M2; otherwise, we have d22 . Hence, we have
M 4 ¼ d2 ½1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2; M 5 ¼ d2 ½1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2
T ¼ d32 ½9 10 11 12 13 14 15 16 5 6 7 8 1 2 3 4 26 25 28 27 30 29 32 31 22 21 24 23 18 17 20 19: Conversely, we have x = TTz, with
T T ¼ ½13 14 15 16 9 10 11 12 1 2 3 4 5 6 7 8 30 29 32 31 26 25 28 27 18 17 20 19 22 21 24 23: The inverse mapping of coordinate transformation (50) becomes
8 x1 > > > > > > < x2 x3 > > > x4 > > > : x5
¼ z1 ¼ :z2 ¼ z2 _z3 ¼ z4 ¼ z1 $ z5 :
Now under the coordinate frame z, Eq. (49) becomes
zðt þ 1Þ ¼ Txðt þ 1Þ ¼ TLuðtÞnðtÞxðtÞ ¼ TLuðtÞnðtÞT T zðtÞ ¼ TLðI8 T T ÞuðtÞnðtÞzðtÞ :¼ e LuðtÞnðtÞzðtÞ; and T ~ yðtÞ ¼ hxðtÞ ¼ hT zðtÞ :¼ hzðtÞ;
where e L ¼ d32 ½17 17 17 17 17 17 17 17 1 1 1 1 1 1 1 1
17 17 17 17 21 21 21 21 1 1 1 1 5 5 5 5
1 1 1 1 2 2 2 2 17 17 17 17 18 18 18 18
1 1 1 1 6 6 6 6 17 17 17 17 22 22 22 22
19 19 27 27 19 19 27 27 3 3 11 11 3 3 11 11
19 19 27 27 23 23 31 31 3 3 11 11 7 7 15 15
3 3 11 11 4 4 12 12 19 19 27 27 20 20 28 28
3 3 11 11 8 8 16 16 19 19 27 27 24 24 32 32
17 17 19 19 17 17 19 19 1 1 1 1 1 1 1 1
17 17 19 19 21 21 23 23 1 1 1 1 5 5 5 5
2 2 4 4 2 2 4 4 18 18 18 18 18 18 18 18
2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1: Using Theorem 4.4, we simply set zi = Mix, i = 1, 2, 3, where Mi are chosen as follows:
~ ¼ d2 ½1 2 2 2 1 2 2 2 1 2 2 2 1 2 2 2 h 1 2 2 2 1 2 2 2 1 2 2 2 1 2 2 2:
2 2 4 4 6 6 8 8 18 18 18 18 22 22 22 22
19 19 27 27 19 19 27 27 3 3 11 11 3 3 11 11
19 19 27 27 23 23 31 31 3 3 11 11 7 7 15 15
4 4 12 12 4 4 12 12 20 20 28 28 20 20 28 28
4 4 12 12 8 8 16 16 20 20 28 28 24 24 32 32;
19
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
Then a mechanical procedure can convert the original system into Y-friendly coordinate frame z as
8 z1 ðt þ 1Þ ¼ z4 ðtÞ_u1 ðtÞ > > > > > > < z2 ðt þ 1Þ ¼ z3 ðtÞ _ nðtÞ
ð59Þ
The vector distance satisfies the basic properties of distance. Proposition 7.3. Let A; B; C 2 Bmn . Then
z3 ðt þ 1Þ ¼ z5 ðtÞ _ u2 ðtÞ > > > z4 ðt þ 1Þ ¼ ½u1 ðtÞ ! ðz2 ðtÞ _ nðtÞÞ ^ z3 ðtÞ > > > : z5 ðt þ 1Þ ¼ ðu2 ðtÞ ^ z2 ðtÞÞ _ z4 ðtÞ; y ¼ z4 ^ z5 :
ð51Þ
ðiÞ
Dv ðA; BÞ ¼ 0 () A ¼ B
ðiiÞ
Dv ðA; BÞ ¼ Dv ðB; AÞ
ð60Þ
ðiiiÞ Dv ðA; CÞ 6 Dv ðA; BÞðþÞDv ðB; CÞ:
Now in the output-friendly subspace (z4, z5) we may choose
u1 ðtÞ ¼ z2 ðtÞ ¼ :x2 ðtÞ;
Dv ðA; BÞ :¼ A_B:
u2 ðtÞ ¼ 0:
Then the only unlimited variable out of this space is z3. Enlarging the output-friendly subspace to include z3, one sees that the closed-loop system is in such a form that the DDP is solved. Since in system (51) the controls which solve the DDP is obvious, we do not need to use general formula.
Consider Boolean network (17) and Boolean control network (18). Denote by X ¼ Dn as its state space. A point X 2 X can be expressed as X = (x1, . . . , xn)T. Let F : X ! X be a logical mapping, which is determined by
8 z1 ¼ f1 ðx1 ; . . . ; xn Þ; > > < .. . > > : zn ¼ fn ðx1 ; . . . ; xn Þ: Briefly denote it as
Z ¼ FðXÞ;
7. Stability and stabilization of Boolean networks
ð61Þ
where X; Z 2 X:
ð62Þ
For instance, consider Boolean network (17). It can be expressed First we introduce the concept and some properties of the vector distance, which are based on Robert (1986) with some trivial extensions. We define the logical operators over Boolean matrices. Definition 7.1. 1. Let A ¼ ðaij Þ 2 Bmn , r is a unary logical operator. Then
rA :¼ ðraij Þ;
ð52Þ
2. Let A ¼ ðaij Þ; B ¼ ðbij Þ 2 Bmn , and r be a binary logical operator. Then
ArB :¼ ðaij rbij Þ:
ð53Þ
as
X tþ1 ¼ FðX t Þ:
ð63Þ
Same as a Boolean network, a mapping can be described by its graph (N, E). Definition 7.4. The incidence matrix of a mapping F, denoted by I ðFÞ :¼ ðbij Þ, is an n n matrix, defined as
bij ¼
1; ði; jÞ 2 E; 0;
otherwise:
Now we are ready to discuss the stability of Boolean networks and the stabilization of Boolean control networks.
3. Let a 2 D. Then the product of a with A 2 Bmn is defined as
aA ¼ Aa :¼ a ^ A:
ð54Þ
Particularly, Assume a; b 2 D, then ab = a ^ b. 4. Let A ¼ ðaij Þ 2 Bpq , B 2 Bmn . Then
A B ¼ ðaij BÞ 2 Bpmnqn :
ð55Þ
5. Let a; b; ai 2 D, i = 1, 2, . . ., n. The Boolean plus is defined as
aðþÞb :¼ a _ b; ðþÞni¼1 ai :¼ a1 _ a2 _ . . . _ an :
ð56Þ
6. Let A ¼ ðaij Þ 2 Bmn , B ¼ ðbij Þ 2 Bnp . The Boolean product is defined as
AðnÞB :¼ C 2 Bmp ;
ð57Þ
1. Consider Boolean network (17). If there exists a fixed point Xe and a fixed time T0 > 0, such that from any point Xð0Þ ¼ x01 ; . . . ; x0n , the trajectory satisfies X(t) = Xe, t P T0, the network is said to be globally stable. 2. Consider Boolean control network (18). If there exists a set of state feedback controls
ui ðtÞ ¼ g i ðx1 ðtÞ; . . . ; xn ðtÞÞ;
i ¼ 1; . . . ; m;
ðþÞnk¼1 aik bkj ;
i ¼ 1; . . . ; m; j ¼ 1; . . . ; p:
7. Let A t B (the row number of B is t times of the column number of A) (or A t B). The semi-tensor Boolean product of A and B is defined as
AðnÞB :¼ ðA It ÞðnÞB:ðAðnÞB :¼ AðnÞðB It ÞÞ:
ð58Þ
8. Assume AnB A is well defined. Then the power of A is defined as
AðkÞ :¼ AðnÞAðnÞ . . . ðnÞA : |fflfflfflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl} k
ð64Þ
such that the closed-loop network is stable, then the control network is said to be stabilizable by the controls. Theorem 7.6. Let n be a fixed point of (17). Then
Dv ðXðkÞ; nÞ 6 ½I ðFÞðkÞ ðnÞDv ðXð0Þ; nÞ;
where
cij ¼
Definition 7.5.
ð65Þ
Particularly, if the incidence matrix of F is nilpotent, i.e., there exists a k > 0 such that ½I ðFÞðkÞ ¼ 0, then system (17) is stable. Remark 7.7. For mix-valued logical networks, the vector distance cannot be defined as (59) since the Boolean function _ cannot be generalize to mix-valued logic. However, we can see that if the incidence matrix of F is nilpotent, i.e., there exists a k > 0 such that ½I ðFÞðkÞ ¼ 0, then the mix-valued logical network is also stable. The following theorem for Boolean control network is applicable to mix-valued logical control networks.
Next, we define the vector distance of two Boolean matrices. Definition 7.2. Let A; B 2 Bmn . Then the vector distance of A and B, denoted by Dv(A, B), is defined as
Theorem 7.8. Boolean control network (18) is stabilizable, if there is a state feedback u(t) = u(x(t)), such that the closed-loop system has the following cascading form:
20
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
8 x1 ðt þ 1Þ ¼ f1 ðxðtÞ; uðxðtÞÞÞ ¼ const: > > > > > x2 ðt þ 1Þ ¼ f2 ðxðtÞ; uðxðtÞÞÞ ¼ ~f 2 ðx1 ðtÞÞ > > < x3 ðt þ 1Þ ¼ f3 ðxðtÞ; uðxðtÞÞÞ ¼ ~f 3 ðx1 ðtÞ; x2 ðtÞÞ > > > .. > > . > > : xn ðt þ 1Þ ¼ fn ðxðtÞ; uðxðtÞÞÞ ¼ ~f n ðx1 ðtÞ; . . . ; xn1 ðtÞÞ
ð66Þ
The previous results are sufficient. We refer to Cheng, Qi, Li, and Liu (2011c) for necessary and sufficient conditions.
PðCÞ ¼
‘ 1P PðxðtÞ; uðtÞÞ: ‘ t¼1
Then we have Proposition 8.4. Any cycle C contains a simple Cs, satisfying
8. Optimal control This section considers the optimal control problem of Boolean control network (18). We assume the feasible controls are
fUðtÞ 2 Dm jt ¼ 0; 1; . . .g; the performance criterion is
JðuÞ ¼ limT!1
Theorem 8.3. Consider Boolean control network (18). There exist optimal controls u⁄(t), which maximize (67). Moreover, the corresponding optimal trajectory w⁄(t) = u⁄(t)x⁄(t) becomes periodic after finite steps. For a cycle C of length ‘, denote by
T 1P PðxðtÞ; uðtÞÞ; T t¼1
PðC s Þ P PðCÞ: According to Theorem 8.3 and Proposition 8.4, one sees easily that an optimal trajectory will eventually enter into a simple cycle. Therefore, solving the optimal control problem becomes finding the best simple cycle. In the following we give a simple example to demonstrate this.
ð67Þ
W ¼ fðU; XÞjU ¼ ðu1 ; . . . ; um Þ 2 Dm ; X ¼ ðx1 ; . . . ; xn Þ 2 Dn g:
Example 8.5. Consider the infinitely repeated prisoner’s dilemma. Assume player one is a machine and player two is a person. Their possible actions are: C (cooperation) and D (defection). The payoff bi-matrix is shown in Table 2. Assume the machine strategy is ‘‘Tit for Tat’’: That is its first step is C. In the following only when the previous man’s action is D, the machine takes D. Denote the action of machine at t-step by x(t), and man’s action by u(t). Letting C d12 and D d22 , the above process can be described as
It is easy to see that the cardinality of W is jWj ¼ 2mþn .
xðt þ 1Þ ¼ LuðtÞxðtÞ;
We refer to Mu and Guo (2009) and Zhao et al. (2011) for the physical meaning of this criterion. First, we need some details about the cycles of a Boolean control network. Definition 8.1. Consider Boolean control network (18). Denote the input-state (product) space as
W i ¼ ðU i ; X i Þ 2 S, W j ¼ ðU j ; X j Þ 2 W. Denote by U i ¼ ui1 ; . . . ; uim , X i ¼ xi1 ; . . . ; xin . (Wi, Wj) is called a directed edge if Xi, Ui, Xj satisfy (18). Precisely speaking,
1. Let
xjk ¼ fk xi1 ; . . . ; xin ; ui1 ; . . . ; uim ; 2. 3. 4.
5.
Consider the number of fixed points and number of cycles for a Boolean control network, we have some results paralleled to what for Boolean networks (Zhao et al., 2011). Theorem 8.2. Consider Boolean control network (18). In the inputstate space 1. the number of fixed points is 2m P
trðBlki ðJ 0 ÞÞ ¼ trðMÞ;
where
L ¼ d2 ½1 1 2 2: Human is choosing his action u(t) to maximize his gain
k ¼ 1; . . . ; n:
Denote the set of edges by E W W. ðW; EÞ forms a directed graph, called the input-state transition graph (ISTG). (W1, W2, . . . , W‘) is called a path, if ðW i ; W iþ1 Þ 2 E, i = 1, 2, . . ., ‘ 1. A path (W1, W2, . . .) is called a cycle, if for any i, Wi+‘ = Wi. The smallest such ‘ is called the length of the cycle. Particularly, the cycles of length 1 is called the fixed point. A cycle (W1, W2, . . . , W‘), Wi = (Ui, Xi), is called a simple cycle, if for any 1 6 i < j 6 ‘, we have Xi – Xj.
N1 ¼
ð70Þ
ð68Þ
JðuÞ ¼ lim
T 1P
Ph ðxðtÞ; uðtÞÞ;
ð71Þ
T!1 T t¼1
where
3 0 Ph ðxðtÞ; uðtÞÞ ¼ u0 ðtÞ xðtÞ: 5 1 Remark 8.6. In the performance criterion (71) we use ‘‘lim’’ because we are not sure whether the limit exists or not. But eventually we found for the optimal control the limit does exist. Hence, ‘‘lim’’ turns to be ‘‘lim’’. Using Theorem 8.2 and the related algorithms, we can find all the cycles. Since
L ¼ d2 ½1 1 2 2; and tr(Blk1(L)) = 1, tr(Blk2(L)) = 1, N1 = 2. d12 and u ¼ d12 form a fixed point, d22 and u ¼ d22 form another fixed point. All the fixed points are
d2 d2 ðð1; 1ÞÞ;
d2 d2 ðð2; 2ÞÞ:
i¼1
Pm Pm where M ¼ 2i¼1 Blki ðJ 0 Þ ¼ 2i¼1 Blki ðLÞ; 2. the number of cycles of length s is inductively obtained as
Ns ¼
trðM s Þ
P s
k2PðsÞ kN k
;
2 6 s 6 2mþn :
Back to the optimal control problem, we have
Table 2 Payoff Bi-matrix.
ð69Þ
P1nP2
C
D
C D
3.3 5.0
0.5 1.1
21
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
Proposition 9.1. Let xðtÞ ¼ dj2n and xi ðt þ 1Þ ¼ dk2 . Then
Next,
M2 ¼
2 2
Colj ðMi Þ ¼ dk2 :
tr(M2) = 4, it follows that N2 = 1. d12 under the controls uðt þ 1ÞuðtÞ ¼ d24 ¼ d14 d24 becomes a cycle of length 2, which is
d2 d2 ðð1; 2Þ; ð2; 1ÞÞ: This is a simple cycle. Since a simple cycle has length less then or equal to 2, we do not need to search cycles of length greater than 2. From the simple cycles, it is easy to verify that C = d2 d2((1,1)) is the optimal one. Since the first step action of the machine is C, that is, x0 ¼ d12 , let uð0Þ ¼ d12 , then the optimal cycle is reached. Finally, we know that the human’s best strategy is
where ⁄ can be chosen arbitrarily. For instance, human may choose G⁄ = d2[1 1 1 1], that is, always takes C. Alternatively, human may choose G⁄ = d2[1 2 1 2], that is, human also takes the strategy of ‘‘Tit for Tat’’. Remark 8.7. Since the results in this section only depend on the structure matrix of Boolean control networks, they can be generalized to mix-valued logical control networks directly. In this section, we only show that the optimal control can be found by finding optimal cycle. We refer to Zhao (2011) for the mixvalued case and a detailed algorithm for finding the optimal cycle. In our recent work (Cheng, Zhao, & Liu, submitted for publication), it has been prove that for the criterion with discount factor r 1 P
In general, the least in-degree identification is used for less data. Using Proposition 9.1, we may identify some columns of Mi. Then we can used ⁄ for undefined columns. Hence we can have partly identified structure matrices Mi, i = 1, . . ., n. Define
Mi;j :¼ Mi W ½2;2j1 ;
j ¼ 1; 2; . . . ; n:
ð76Þ
Then split it into two equal-size blocks as
h M i;j ¼ M1i;j
i M 2i;j :
ð77Þ
Then we know that
G ¼ d2 ½1 ;
JðuÞ ¼
ð75Þ
2 2
rt PðxðtÞ; uðtÞÞ;
Proposition 9.2. fi has a realization which is independent of xj, if and only if
M1i;j ¼ M2i;j
ð78Þ
has solution for undefined columns. Summarizing the above arguments, we have the identifying process as: Algorithm 9.3. Step 1: According to Proposition 9.1 and using obtained data, some columns of Mi can be identified. Step 2: According to Proposition 9.2, if (78) has solution, we assume fi is independent of xj. Continuing this procedure, we can have an fi with least in-degree.
ð72Þ
t¼1
We give a numerical example to depict this.
similar to the average payoff case, if the optimal control exists, there must be a periodic solution.
9. Identification
Example 9.4. Observe four points as in Fig. 3. Let white circle be d12 and black one be d22 and x ¼ n4i¼1 xi . Then the 6 states become
xð0Þ ¼ d12 16 ;
xð1Þ ¼ d16 xð2Þ ¼ d816 ; 16 ;
d216 ;
xð4Þ ¼ d10 xð5Þ ¼ d12 16 ; 16 :
xð3Þ ¼
9.1. Identification of Boolean networks This subsection considers the identification of Boolean networks. Assume we have a set of observed data on the states of a Boolean network, denoted as
Assume the evolutive dynamics is
xi ðt þ 1Þ ¼ fi ðx1 ðtÞ; x2 ðtÞ; x3 ðtÞ; x4 ðtÞÞ;
i ¼ 1; 2; 3; 4:
Their algebraic forms are
fXð0Þ; Xð1Þ; . . . ; XðNÞg; where XðtÞ ¼ ðx1 ðtÞ; . . . ; xn ðtÞÞ:
xi ðt þ 1Þ ¼ Mi xðtÞ;
Our purpose is to find the dynamics of the Boolean network. We refer to Cheng, Qi, and Li (2011b) for general identification, which requires a large number of data. In the following we consider a special case, called the least in-degree identification. Least in-degree identification means to find a realization of the data, which has smallest in-degrees. We explain it as follows. Consider a Boolean network
where Mi 2 L216 , x(t) = x1(t) n . . . n x4(t). We consider M1 first. From known data the structure matrix can be obtained as
xi ðt þ 1Þ ¼ fi ðx1 ðtÞ; . . . ; xn ðtÞÞ;
i ¼ 1; . . . ; n:
ð73Þ
i ¼ 1; . . . ; n;
M1 ¼ d2 ½ 2 1 2 2 1: Setting M11 ¼ M21 yields
M11 ¼ M 21 ¼ d2 ½ 2 2 1: Hence, x1(t + 1) is independent of x1(t). The equation becomes
Its component-wise algebraic form is
xi ðt þ 1Þ ¼ M i xðtÞ;
i ¼ 1; 2; 3; 4;
ð74Þ
where M i 2 L22n . Our identification process is always like this: First identify the structure matrices Mi, and then construct fi via Mi. The following result is fundamental for identification.
x1 ðt þ 1Þ ¼ d2 ½ 2 2 1x2 ðtÞx3 ðtÞx4 ðtÞ: Splitting M11 into two parts, we have the following equation:
d2 ½ 2 2 ¼ d2 ½ 1; has no solution, so x1(t + 1) depends on x2(t). Consider
Fig. 3. Data of Example 9.4.
M1;2 ¼ M11 W ½2;2 ¼ d2 ½ 2 2 1:
22
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
Then
and split it to kk equal-size blocks as
h i k Mi;j ¼ M1i;j ; M 2i;j ; . . . ; Mi;jk :
d2 ½ 2 ¼ d2 ½ 2 1 has solution
d2 ½ 2 1:
Then, Proposition 9.2 can be restated as: fi has a realization which is independent of xj, if and only if
Hence the equation becomes
M1i;j ¼ M2i;j ¼ ¼ M i;jk k
x1 ðt þ 1Þ ¼ d2 ½ 2 1x2 ðtÞx4 ðtÞ:
ð81Þ
has solution for undefined columns.
Finally, consider x4(t). Since
10. Some other applications
d2 ½ 2 1W ½2;2 ¼ d2 ½ 2 1;
As a new mathematical tool, STP has many applications. For instance, it can be applied to continuous time non-linear control systems. For instance, its application to linearization of non-linear systems (Cheng et al., 2004a), control of power systems (Mei et al., 2010), etc. In this section, we introduce only some Boolean or logical functions related applications.
and
d2 ½ ¼ d2 ½2 1 has solution
d2 ½2 1; we finally get
x1 ðt þ 1Þ ¼ d2 ½2 1x2 ðtÞ:
10.1. Properties of Boolean functions
Its logical form is
x1 ðt þ 1Þ ¼ :x2 ðtÞ: Using similar process to the other 3 equations, we finally get the dynamics of the Boolean network as
8 x1 ðt þ 1Þ ¼ :x2 ðtÞ > > > < x2 ðt þ 1Þ ¼ x4 ðtÞ _ x1 ðtÞ > > x3 ðt þ 1Þ ¼ x1 ðtÞ > : x4 ðt þ 1Þ ¼ x3 ðtÞ_x4 ðtÞ:
ð79Þ
Boolean function plays a fundamental role in computer sciences, circuit design, cryptography, etc. Semi-tensor product provides a new powerful tool for investigating Boolean functions. We refer to Zhao, Gao, and Cheng (in press) for some recent developments. In the following we give an example to show this: the linearity of Boolean functions. The existence of linear structures is a weakness in cryptography. We first give the rigorous definition of linear structure. Definition 10.1. Let f : Dn ! D be a Boolean function.
9.2. Identification of Boolean control networks Consider Boolean control network (18). First, we ignore the outputs. Assume we have input-state data as
fUð0Þ; Uð1Þ; . . . ; UðNÞg; where UðtÞ ¼ ðu1 ðtÞ; . . . ; um ðtÞÞ;
1. a 2 Dn is called an invariant linear structure of f, if f(x + a) + f(x) = 0. 2. a 2 Dn is called a variant linear structure of f, if f(x + a) + f(x) = 1. 3. Denote by
E0 :¼ fa 2 Dn jf ðx þ aÞ þ f ðxÞ ¼ 0g E1 :¼ fa 2 Dn jf ðx þ aÞ þ f ðxÞ ¼ 1g
fXð0Þ; Xð1Þ; . . . ; XðNÞg; where XðtÞ ¼ ðx1 ðtÞ; . . . ; xn ðtÞÞ: Our purpose is to find the state equation of the Boolean control network. We also consider its algebraic form (20) and try to identify L. Throughout this subsection we assume the data are enough (as much as we wish). Then we have the following result. Theorem 9.5. The state equation of system (18) is input-state identifiable, if and only if, the system is controllable. Next, assume we have the input-output data as
fUð0Þ; Uð1Þ; . . . ; UðNÞg; where UðtÞ ¼ ðu1 ðtÞ; . . . ; um ðtÞÞ; fYð1Þ; Yð2Þ; . . . ; YðN þ 1Þg; where YðtÞ ¼ ðy1 ðtÞ; . . . ; yp ðtÞÞ: Our purpose is to find the dynamics of the Boolean control network. We also consider its algebraic form (20) and try to identify L and H. We have We refer to Cheng and Zhao (2011) for numerical algorithms of the identifications.
ð82Þ
E :¼ E0 [ E1 : Then E is called the linear structure subspace of f. 4. If E – {0}, f is called a Boolean function with linear structure (BFLS). For a BFLS, if E0 – {0}, it is said to be of type I, otherwise, it is said to be of type II. Though there have already been many efficient algorithms to check whether a Boolean function have linear structure, we can give a precise formula to calculate E0 and E1. Let f : Dn ! D be a Boolean function with its structure matrix Mf 2 L22n . Denote by a ¼ nni¼1 ai , x ¼ nni¼1 xi . Then it is easy to see that (a1, . . . , an) 2 E0, if and only if
Mf M_ a1 x1 M _ a2 x2 M_ an xn ¼ M f x1 x2 xn :
ð83Þ
A straightforward computation shows that (83) is equivalent to n1 Mf M_ nn1 i¼1 ðI 22i M _ Þni¼1 ðI 2i W ½2;2i Þax ¼ M f x:
ð84Þ
Define Theorem 9.6. System (18) is identifiable from input-output data with proper controls, if and only if the system is controllable and observable. Remark 9.7. The results in this section are also applicable to mixvalued logical control networks. Precisely, (76) should be rewritten as
M i;j ¼ M i W Qj1 ; kj ;
a¼1
ka
ð80Þ
n1 Wf :¼ M f M _ nn1 i¼1 ðI22i M _ Þni¼1 ðI2i W ½2;2i Þ; n1 where M_ nn1 i¼1 ðI 22i M _ Þni¼1 ðI2i W ½2;2i Þ is a constant matrix which depends only on n. Split Wf into 2n blocks as
Wf ¼ ½w1 w2 w2n ; where wk = Blkk(Wf), k = 1, 2, . . ., 2n. Then the following result is straightforward verifiable.
23
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
Theorem 10.2 (Zhao et al., 2010). Let a ¼ nni¼1 ai ¼ di2n . Then (a1, . . . , an) 2 E0, if and only if wi = Mf. (a1, . . . , an) 2 E1, if and only if wi = M:Mf.
f ðx1 ; . . . ; xn Þ ¼ Fð/ðxc jc 2 CÞ; wðxk jk 2 KÞÞ:
ð89Þ
For simplicity, assume
C ¼ f1; 2; . . . ; kg;
and K ¼ fk þ 1; k þ 2; . . . ; ng:
ð90Þ
10.2. Solving fuzzy relational equation Definition 10.6. Let M ¼ d2 ½i1 i2 i2k 2 L22k . STP has some interesting applications to fuzzy control. We use one example to show this. Consider a fuzzy relational equation
A R ¼ B;
1. M is called a constant function matrix, if
i1 ¼ i2 ¼ ¼ i2k :
ð85Þ
That is, it is the structure matrix of a constant function. 2.
where R 2 Mns is an unknown fuzzy relation matrix. Collecting different values of the entries of A and B as
:M :¼ d2 ½1 i1 1 i2 1 i2k 2 L22k
S ¼ fai;j ; bp;q ji ¼ 1; . . . ; m; j ¼ 1; . . . ; n; p ¼ 1; . . . ; m; q ¼ 1; . . . ; sg; and adding 1 and/or 0 when they are not in S, we construct an ordered set as
N ¼ fni ji ¼ 1; . . . ; r;
is called the compliment of M. M and :M are called the two complimented matrices.
and n1 ¼ 0 < n2 < < nr1 < nr ¼ 1g: Theorem 10.7 (Cheng and Xu, submitted for publication). Let f : Dn ! D be a Boolean function with its structure matrix Mf, being split into 2k equal-size blocks as
Then we have S N. Definition 10.3. Let x 2 [0, 1]. Then we define
Mf ¼ ½M1 M 2 M 2k ;
(i) p⁄:[0, 1] ? N as
p ðxÞ ¼ maxfni 2 Njni 6 xg; i
ð86Þ
(ii) p⁄:[0, 1] ? N as
p ðxÞ ¼ minfni 2 Njni P xg: i
where each Mi 2 L22nk . f is decomposable with respect to the partition in (90), if and only if, the set {Miji = 1, . . . , 2k} consists of one of the following four possible cases:
ð87Þ
(iii) Let R = (ri,j). Then
p ðRÞ ¼ ðp ðri;j ÞÞ; p ðRÞ ¼ ðp ðri;j ÞÞ:
ð91Þ
ð88Þ
Note that if x = ni 2 N, then
p ðxÞ ¼ p ðxÞ ¼ ni : Otherwise, there exists a unique i such that
ni < x < niþ1 :
(i) (ii) (iii) (iv)
two constant matrices; or one constant matrix and one non-constant matrix; or one non-constant matrix; or two complemented non-constant matrices.
We refer to Cheng and Xu (submitted for publication) for nondisjoint decomposition, decompositions of mix-valued logical functions, and its applications to dynamic-algebraic logical networks. 10.4. Boolean calculus
Then we have
p ðxÞ ¼ ni ; p ðxÞ ¼ niþ1 : Using above notations, we have the following result. Theorem 10.4 (Cheng, Feng, and Lv, in press). R ¼ ðri;j Þ 2 Mns is a solution of (85), if and only if both p⁄(R) and p⁄(R) are solutions of (85). i1 To use r-valued logic, we identify ni with r1 drriþ1 , i = 1, . . ., r. Then STP and the matrix expression of r-valued logic can be used to find the so called parameter-set solutions R, which have ri,j 2 N. Using Theorem 10.4, all the solutions can be constructed from parameter-set solutions (Cheng et al., in press).
10.3. Decomposition of logical mapping Decomposition is one of the most efficient way to realize networks economically. If the decomposition exists, it can significantly reduce the area, delay, and power for logical synthesis. We consider the most simple case. n
Definition 10.5. Let f : D ! D be a Boolean function, C [ K be a partition of {1, 2, . . . , n}. f is said to be decomposed with respect to C and K if there exist three Boolean functions F : D2 ! D, / : fxc jc 2 Cg ! D, and w : fxk jk 2 Kg ! D, such that
Boolean derivatives have been applied to many area. The applications include control of Boolean networks (Luque & Solé, 2000), synthesis of discrete event systems (Scheuring & Wehlan, 1991), logical circuit analysis (Brown, 2003), asynchronous circuit design (Smith & Roth, 1971), image edge detection (Agaian, Panetta, Nercessian, & Danahy, 2010), selection probabilities of stack filters (Egiazarian, Kuosmanen, & Astola, 1996), cellular automata and finite state machine (Pabitra, Sahoo, Chakraborty, Bhandari, & Pal, 2009; Vandermeulen, Donegan, Larnac, & Magnier, 1995), etc. Using STP, we can easily provide a structure matrix of Boolean derivatives. There are several definitions of Boolean derivatives. In this paper, we only consider the most used one, which is defined as (Bochmann, 1978). Definition 10.8. Let f ðx1 ; . . . ; xn Þ : Dn ! D be a logical function. 1. The Boolean derivative of f with respect to xi is defined as
@f ¼ f ðx1 ; . . . ; xi ; . . . ; xn Þ_f ðx1 ; . . . ; :xi ; . . . ; xn Þ: @xi
ð92Þ
2. The higher-order derivative of f with respect to xi1 , . . ., xik is defined recursively as
@kf @ ¼ @xi1 @xik @xi1
@ @xi2
@f : @xik
ð93Þ
24
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25
Using the structure matrix Mf of f, we can obtain the structure matrix M @ i f . Theorem 10.9. Let f(x1, . . . , xn) be a Boolean function with structure @f matrix Mf. Then the structure matrix of @x , denoted by M @ i f , is i
"
M@i f ¼
Row1 ðM f ÞðnÞNin
#
:Row1 ðMf ÞðnÞNin
ð94Þ
where
Nin ¼ I2i1 122 : Hence, in vector form,
@f ¼ M@ i f x; @xi
ð95Þ
where x ¼ nni¼1 xi . @f As we know that @x is independent of xi, so one may be interi ested in an alternative expression as
@f ¼ M@ ½i f x1 xi1 ^xi xiþ1 xn ; @xi
ð96Þ
(iii) Using matrix expression, the dynamics of Boolean (control) networks can be converted into a standard discrete-time linear (bilinear) system. This method is called the algebraic approach. The only restriction is the state variables xi can only take values from D ¼ d12 ; d22 . But this restriction does not affect the use of matrix and its tools. The algebraic approach can easily be extended to general logical dynamic systems. (iv) The state space and subspace are defined by the set of Boolean functions. In this way, a subspace is equivalent to a Boolean mapping, which is again expressed by matrix (namely, the structure matrix of the mapping). Then the existing methods in control theory can easily be applied to the synthesis of Boolean control systems. All the results obtained for Boolean control networks can easily be extended to general logical dynamic (control) networks. (v) The algebraic approach can also be used to many other related problems, such as analysis and factorization of Boolean and general logical functions, solving fuzzy relational equations, calculating derivatives/integrals of Boolean networks, etc. While there is no perfect approach, the main weaknesses of this approach which should be improved are
where notation ‘‘^xi ’’ means xi is omitted. Then we have
2
M @ ½i f
h iT 3 Row1 ðMf ÞðnÞ Win 6 7 ¼4 h iT 5 ; i :Row1 ðMf ÞðnÞ Wn
ð97Þ
where
Win ¼ Ii1 1T2 Ini : Using this expression of Boolean derivative, we can solve Boolean differential equations. We refer to Cheng, Zhao, and Xu (2011g) for the details.
11. Concluding remarks It was pointed out by Kauffman that (Kauffman, 1993) ‘‘Switching Boolean networks are of central importance to the construction of a mechanics over ensembles of systems and to an adequate theory of complex but ordered systems.’’ Because of its role in modeling and manipulating the cellular networks, to explore the structure of Boolean networks and its manipulation become a very challenging problem. Many research works have been done in this field. The purpose of this paper is not a general survey over this broad topic, but only to provide an introduction to a new approach, called the algebraic approach based on STP. There are many other recent works about this approach, such as Li and Sun (2011a), Li, Sun, and Wu (2011), Laschov and Margaliot (2011), Li and Sun (2011c, 2011b, 2011d), Laschov and Margaliot (in press), Li and Sun (2012). This approach consists of some key steps, described as follows: (i) As a basic tool, a new matrix product, called the semi-tensor product (STP) of matrices, was proposed. It is a generalization of conventional matrix product to two arbitrary matrices. This generalization keeps all major properties of conventional matrix product unchanged. In addition, it has some pseudo-commutative properties. (ii) By identifying 1 d12 and 0 d22 , a Boolean function can be expressed by matrices and STP. This matrix expression makes the matrix tools applicable to standard logical sysi tems. Similarly, by identifying k1 dki k , i = 0, 1, . . ., k 1, a general logical function, either k-valued or mix-valued, can be expressed into a matrix form too.
(i) The computational complexity has not been investigated properly. So far most parts of this approach can only be used for small networks (up to 30 nodes or so).1 (ii) It seems that this approach is particularly suitable for deterministic networks. There are some recent works show it is also applicable to probabilistic Boolean networks, e.g., Zhao and Cheng (submitted for publication). But for most other problems involving probabilistic ones, there is still a long way to go. Finally, we refer to Cheng et al. (2011a) as a comprehensive introduction of this new approach to Boolean networks, and to Cheng et al. (in press) for many other applications. We are confident that this approach is useful in analysis and control design of Boolean networks as well as general logical networks. There are so many untouched and/or open problems in this field, which demand further investigations. Acknowledgment This paper is based on our IFAC paper Cheng, Qi, and Zhao (2011d). References Adamatzky, A. (2003). On dynamically non-trivial three-valued logics: Oscillatory and bifurcatory species. Chaos Solitons & Fractals, 18, 917–936. Agaian, S., Panetta, K., Nercessian, S., & Danahy, E. (2010). Boolean derivatives with application to edge detection for imaging systems. IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics, 40(2), 371–382. Akutsu, T., Hayashida, M., Ching, W., & Ng, M. (2007). Control of Boolean networks: Hardness results and algorithms for tree structured networks. Journal of Theoretical Biology, 244(4), 670–679. Akutsu, T., Miyano, S., & Kuhara, S. (2000). Inferring qualitative relations in genetic networks and metabolic pathways. Bioinformatics, 16(8), 727. Albert, R., & Barabási, A. (2000). Dynamics of complex systems: Scaling laws for the period of Boolean networks. Physical Review Letters, 84(24), 5660–5663. Aldana, M. (2003). Boolean dynamics of networks with scale-free topology. Physica D: Nonlinear Phenomena, 185(1), 45–66. Bochmann, D. (1978). Boolean differential calculus. German: Larl Marx Stadt. Boole, G. (1847). The mathematical analysis of logic. Cambridge: Barcly and Macmillan. Boole, G. (1854). An investigation of the laws of thought. London: Walton and Maberley. 1 For numerical computations a MatlabÒ toolbox is provided at http://lsc.amss.ac.cn/ dcheng/stp/STP.zip.
D. Cheng et al. / Annual Reviews in Control 36 (2012) 11–25 Bornholdt, S. (2005). Less is more in modeling large genetic networks. Science, 310(21). Brown, F. (2003). Boolean reasoning: The logic of Boolean equations (2nd ed.). New York: Dover Pub.. Chaves, M., Albert, R., & Sontag, E. (2005). Robustness and fragility of Boolean models for genetic regulatory networks. Journal of Theoretical Biology, 235(3), 431–449. Cheng, D. (2001). Semi-tensor product of matrices and its application to Morgans problem. Science in China, Series F: Information Sciences, 44(3), 195–212. Cheng, D. (2006). Some applications of semi-tensor product of matrices in algebra. Computers and Mathematics with Applications, 52(6–7), 1045–1066. Cheng, D. (2007). Semi-tensor product of matrices and its applications: A survey. In Proc. ICCM 2007 (Vol. 3, pp. 641–668). Cheng, D. (2009). Input-state approach to Boolean networks. IEEE Transactions on Neural Networks, 20(3), 512–521. Cheng, D. (2011). Disturbance decoupling of Boolean control networks. IEEE Transactions on Automatic Control, 56(1), 2–10. Cheng, D., & Dong, Y. (2003). Semi-tensor product of matrices and its some applications to physics. Methods and Applications of Analysis, 10(4), 565–588. Cheng, D., Feng, J., & Lv, H. (in press). Solving fuzzy relational equations via semitensor product. IEEE Transactions on Fuzzy Systems. http://dx.doi.org/10.1109/ TFUZZ.2011.2174243. Cheng, D., Hu, X., & Wang, Y. (2004a). Non-regular feedback linearization of nonlinear systems via a normal form algorithm. Automatica, 40(3), 439–447. Cheng, D., Li, Z., & Qi, H. (2010). Realization of Boolean control networks. Automatica, 46(1), 62–69. Cheng, D., Ma, J., Lu, Q., & Mei, S. (2004b). Quadratic form of stable sub-manifold for power systems. International Journal of Robust and Nonlinear Control, 14(9–10), 773–788. Cheng, D., & Qi, H. (2005). Matrix expression of logic and fuzzy control. In Proc. 44th IEEE CDC (pp. 3273–3278). IEEE. Cheng, D., & Qi, H. (2007). Semi-tensor product of matrices – Theory and application. Beijing: Science Press (in Chinese). Cheng, D., & Qi, H. (2009). Controllability and observability of Boolean control networks. Automatica, 45(7), 1659–1667. Cheng, D., & Qi, H. (2010a). A linear representation of dynamics of Boolean networks. IEEE Transactions on Automatic Control, 55(10), 2251–2258. Cheng, D., & Qi, H. (2010b). State-space analysis of Boolean networks. IEEE Transactions on Neural Networks, 21(4), 584–594. Cheng, D., Qi, H., & Li, Z. (2011a). Analysis and control of Boolean networks: A semitensor product approach. London: Springer Verlag. Cheng, D., Qi, H., & Li, Z. (2011b). Model construction of Boolean network via observed data. IEEE Transactions on Neural Networks, 22(4), 525–536. Cheng, D., Qi, H., Li, Z., & Liu, J. (2011c). Stability and stabilization of Boolean networks. International Journal of Robust and Nonlinear Control, 21(2), 134–156. Cheng, D., Qi, H., & Zhao, Y. (2011d). On Boolean control networks – An algebraic approach. In Proceedings of the 18th IFAC World congress (pp. 8366–8377). Cheng, D., Qi, H., & Zhao, Y. (in press). An introduction to semi-tensor product of matrices and its applications. Singapore: World Scientific. Cheng, D., & Xu, X. (submitted for publication). Decomposition of logical mappings via semi-tensor product of matrices. Cheng, D., Yang, G., & Xi, Z. (2007). Nonlinear systems possessing linear symmetry. International Journal of Robust and Nonlinear Control, 17(1), 51–81. Cheng, D., & Zhao, Y. (2011). Identification of Boolean control networks. Automatica, 47(4), 702–710. Cheng, D., Zhao, Y., & Liu, J. (submitted for publication). Optimal control of finitevalued networks. Cheng, D., Zhao, Y., & Mu, Y. (2011f). Strategy optimization with its application to dynamic games. In Proc. 49th IEEE CDC (pp. 5822–5827). Cheng, D., Zhao, Y., & Xu, X. (2011g). Matrix approach to Boolean calculus. In Proc. 50th IEEE CDC-ECC (pp. 6950–6955). Egiazarian, K., Kuosmanen, P., & Astola, J. (1996). Boolean derivatives, weighted chow parameters, and selection probabilities of stack filters. IEEE Transactions on Signal Processing, 44(7), 1634–1641. El Snoussi, H., & Thomas, R. (1993). Logical identification of all steady states: The concept of feedback loop characteristic states. Bulletin of Mathematical Biology, 55(5), 973–991. Farrow, C., Heidel, J., Maloney, J., & Rogers, J. (2004). Scalar equations for synchronous Boolean networks with biological applications. IEEE Transactions on Neural Networks, 15(2), 348–354. Heidel, J., Maloney, J., Farrow, C., & Rogers, J. (2003). Finding cycles in synchronous Boolean networks with applications to biochemical systems. International Journal of Bifurcation and Chaos in Applied Sciences and Engineering, 13(3), 535–552. Huang, S. (2002). Regulation of cellular states in mammalian cells from a genomewide view. In J. Collado-Vodes & R. Hofestadt (Eds.), Gene Regulation and Metabolism: Postgenomic Computational Approaches (pp. 181–220). Cambridge, MA: MIT Press. Huang, S., & Ingber, D. (2000). Shape-dependent control of cell growth, differentiation, and apoptosis: Switching between attractors in cell regulatory networks. Experimental Cell Research, 261(1), 91–103. Kauffman, S. (1969). Metabolic stability and epigenesis in randomly constructed genetic nets. Journal of Theoretical Biology, 22(3), 437–467. Kauffman, S. (1993). The origins of order: Self organization and selection in evolution. New York: Oxford University Press. Kauffman, S. (1995). At home in the universe. New York: Oxford University Press.
25
Klemm, K., & Bornholdt, S. (2005). Topology of biological networks and reliability of information processing. Proceedings of the National Academy of Sciences of the United States of America, 102(51). Laschov, D., & Margaliot, M. (2011). A maximum principle for single-input Boolean control networks. IEEE Transactions on Automatic Control, 56(4), 913–917. Laschov, D., & Margaliot, M. (in press). A Pontryagin maximum principle for multiinput Boolean control networks. Recent Advances in Dynamics and Control of Neural Networks. Li, F., & Sun, J. (2011a). Controllability of Boolean control networks with time delays in states. Automatica, 47(3), 603–607. Li, F., & Sun, J. (2011b). Controllability of probabilistic Boolean control networks. Automatica, 47(12), 2765–2771. Li, F., & Sun, J. (2011c). Observability analysis of Boolean control networks with impulsive effects. IET Control Theory & Applications, 5(14), 1609–1616. Li, F., & Sun, J. (2011d). Stability and stabilization of multivalued logical networks. Nonlinear Analysis: Real World Applications, 12(6), 3701–3712. Li, F., & Sun, J. (2012). Stability and stabilization of Boolean networks with impulsive effects. Systems & Control Letters, 61(1), 1–5. Li, F., Sun, J., & Wu, Q. (2011). Observability of Boolean control networks with state time delays. IEEE Transactions on Neural Networks, 22(6), 948–954. Liang, S., Fuhrman, S., Somogyi, R., et al. (1998). REVEAL, a general reverse engineering algorithm for inference of genetic network architectures. In: Pacific symposium on biocomputing (Vol. 3, pp. 18–29). Luque, B., & Solé, R. V. (2000). Lyapunov exponents in random Boolean networks. Physica A, 284, 33–45. Lynch, J. (2002). Critical points for random Boolean networks. Physica D: Nonlinear Phenomena, 172(1–4), 49–64. Mei, S., Liu, F., & Xue, A. (2010). Transient state analysis of power systems: Semi-tensor product approach. Beijing: Tsinghua University Press (in Chinese). Mu, Y., & Guo, L. (2009). Optimization and identification in a non-equilibrium dynamic game. In Proc. IEEE CDC-CCC’09 (pp. 5750–5755). IEEE. Pabitra, P., Sahoo, S., Chakraborty, M., Bhandari, S., & Pal, A. (2009). Investigation of the globak dynamics of cellular automata using Boolean derivatives. Computers & Mathematics with Applications, 57(8), 1337–1351. Robert, F. (1986). Discrete iterations: A metric study. Berlin: Springer-Verlag. Scheuring, R., & Wehlan, H. (1991). On the design of discrete event dynamic systems bu means of the Boolean differential calculus. Design Methods of Control Systems, 2, 723–728. Shmulevich, I., Dougherty, E., Kim, S., & Zhang, W. (2002a). Probabilistic Boolean networks: A rule-based uncertainty model for gene regulatory networks. Bioinformatics, 18(2), 261. Shmulevich, I., Dougherty, E., & Zhang, W. (2002b). From Boolean to probabilistic Boolean networks as models of genetic regulatory networks. Proceedings of the IEEE, 90(11), 1778–1792. Smith, J., & Roth, C. (1971). Analysis and synthesis of asynchronous sequential networks using edge-sensitive flip-flops. IEEE Transactions on Computers, 20, 847–855. Vandermeulen, E., Donegan, H., Larnac, M., & Magnier, J. (1995). The temporal Boolean derivative applied to verification of extended finite state machines. Computers & Mathematics with Applications, 30(2), 27–36. Waldrop, M. (1992). Complexity. New York: Simon & Schuster. Zhao, Y. (2011). A Floyd-like algorithm for optimization of mix-valued logical control networks. In Proceedings of the 30th Chinese control conference (pp. 1972–1977). Zhao, Y., & Cheng, D. (submitted for publication). On controllability and stabilizability of probabilistic Boolean control networks. Zhao, Y., Gao, X., & Cheng, D. (in press). Some applications of the matrix expression of Boolean function via semi-tensor product. Journal of the Graduate School of the Chinese Academy of Science. Zhao, Y., Li, Z., & Cheng, D. (2011). Optimal control of logical control networks. IEEE Transactions on Automatic Control, 56(8), 1766–1776. Zhao, Y., Qi, H., & Cheng, D. (2010). Input-state incidence matrix of Boolean control networks and its applications. Systems & Control Letters, 59(12), 767–774. Daizhan Cheng received the B.S. degree from Department of Mechanics, Tsinghua University, in 1970, received the M.S. degree from Graduate School of Chinese Academy of Sciences in 1981, the Ph.D. degree from Washington University, St. Louis, in 1985. Since 1990, he is a Professor with Institute of Systems Science, Academy of Mathematics and Systems Science, Chinese Academy of Sciences. His research interests include non-linear control systems, switched systems, Hamiltonian systems-logical dynamic systems, and numerical realization for control design. He is currently Editor-in-Chief of the J. Control Theory and Applications and Deputy Editor-in-Chief of Control and Decision. He was the Chairman of IEEE CSS Beijing Chapter (2006–2008), Chairman of Technical Committee on Control Theory, Chinese Association of Automation, Program Committee Chair of annual Chinese Control Conference (2003–2010), IEEE Fellow (2005–) and IFAC Fellow (2008–). Hong-Sheng Qi received the B.S. degree in Mathematics and Applied Mathematics from Anhui University in 2003 and received the Ph.D. degree in systems theory from the Academy of Mathematics and Systems Science, Chinese Academy of Sciences in 2008. He is currently an assistant professor at the Academy of Mathematics and Systems Science, Chinese Academy of Sciences. His research interest covers non-linear control and complex systems. Yin Zhao received the B.S. degree in Mathematics and Applied Mathematics from Tsinghua University, Beijing, China, in 2008. He is currently a Ph.D. candidate in Academy of Mathematics and Systems Science, Chinese Academy of Sciences. His research interests include complex systems, game theory, etc.