Variable structure controller design for Boolean networks

Variable structure controller design for Boolean networks

Neural Networks 97 (2018) 107–115 Contents lists available at ScienceDirect Neural Networks journal homepage: www.elsevier.com/locate/neunet Variab...

712KB Sizes 0 Downloads 105 Views

Neural Networks 97 (2018) 107–115

Contents lists available at ScienceDirect

Neural Networks journal homepage: www.elsevier.com/locate/neunet

Variable structure controller design for Boolean networks Liangjie Sun a , Jianquan Lu a,b, *, Yang Liu c,a , Tingwen Huang d , Fuad E. Alsaadi e , Tasawar Hayat b,f a

School of Mathematics, Southeast University, Nanjing 210096, China Department of Mathematics, King Abdulaziz University, Jeddah 21589, Saudi Arabia c College of Mathematics, Physics and Information Engineering, Zhejiang Normal University, Jinhua 321004, China d Texas A&M University at Qatar, Doha 23874, Qatar e Faculty of Engineering, King Abdulaziz University, Jeddah 21589, Saudi Arabia f Department of Mathematics, Quaid-I-Azam University, Islamabad, Pakistan b

article

info

Article history: Received 21 April 2017 Received in revised form 8 July 2017 Accepted 26 September 2017 Available online 13 October 2017 Keywords: Boolean network Variable structure control Semi-tensor product of matrices Stabilization

a b s t r a c t The paper investigates the variable structure control for stabilization of Boolean networks (BNs). The design of variable structure control consists of two steps: determine a switching condition and determine a control law. We first provide a method to choose states from the reaching mode. Using this method, we can guarantee that the number of nodes which should be controlled is minimized. According to the selected states, we determine the switching condition to guarantee that the time of global stabilization in the BN is the shortest. A control law is then determined to ensure that all selected states can enter into the sliding mode, such that any initial state can arrive in the steady-state mode. Some examples are provided to illustrate the theoretical results. © 2017 Elsevier Ltd. All rights reserved.

1. Introduction Boolean network (BN) is the simplest logical dynamic system with binary state variables. Kauffman (1969) firstly proposed BNs as models of complex and nonlinear biological systems in 1969. The BN has been extensively used in describing, analyzing, and simulating the cellular networks and gene regulatory networks (Akutsu, Miyano, & Kuhara, 1999; Davidson, Rast, Oliveri, Ransick, Calestani, Yuh, Minokawa, Amore, Hinman, Arenas-Mena, et al., 2002; Huang, Li, Duan, & Starzyk, 2012; Shmulevich, Dougherty, Kim, & Zhang, 2002; Shmulevich, Dougherty, & Zhang, 2002). Moreover, it has been a powerful tool in capturing basic dynamic behavior and providing useful information for many real world systems. Recently, in Cheng and Qi (2010) and Cheng, Qi, and Li (2010), a new approach called the semi-tensor product (STP) of matrices, has been used successfully to express and analyze Boolean networks (BNs). Please refer to Lu, Li, Liu, and Li (2017) for a survey of STP. Based on the STP of matrices, it is easy to convert a BN with logical expression into an algebraic form and many fundamental results have been derived (Chen, Liang, & Wang, in press; Chen & Sun, 2013; Cheng, 2011; Cheng & Qi, 2009; Fornasini & Valcher, 2013; Laschov, Margaliot, & Even, 2013; Li & Lu, 2013; Li & Wang, 2015a, b; Li, Wang, & Xie, 2015; Li, Xie, & Wang, 2016; Li, Zhao,

*

Corresponding author at: School of Mathematics, Southeast University, Nanjing 210096, China. E-mail address: [email protected] (J. Lu). https://doi.org/10.1016/j.neunet.2017.09.012 0893-6080/© 2017 Elsevier Ltd. All rights reserved.

Weng, & Feng, in press; Liu, Chen, & Wu, 2014; Liu, Li, Lu, & Cao, in press; Liu, Sun, Lu, & Liang, 2016; Lu, Zhong, Ho, Tang, & Cao, 2016; Lu, Zhong, Huang, & Cao, 2016b; Lu, Zhong, Li, Ho, & Cao, 2015; Lu, Zhong, Tang, Huang, Cao, & Kurths, 2014; Luo, Wang, & Liu, 2014; Zhong, Lu, Huang, & Ho, 2017; Zhong, Lu, Liu, & Cao, 2014). The stabilization of BCNs is a basic but meaningful issue in control theory. So it has attracted great attention of system scientists. Many results about the stabilization of BCNs have been proposed in Cheng, Qi, Li, and Liu (2011), Li (2016), Liu, Cao, Sun, and Lu (2016), Li and Wang (2013) and Li, Yang, and Chu (2013, 2014). Variable structure control is a kind of special nonlinear discontinuous control. It was firstly proposed by Emelyanov (1967) in 1950s. Furthermore, the theory of variable structure control was developed by Itkis (1976) and Utkin (1977, 1978). Variable structure control is an effective robust control strategy. Lots of researchers have been attracted since variable structure control is robust to uncertain parameters and external disturbances. Moreover, variable structure control can be applied in many practical systems (Chou & Cheng, 2003; De Battista & Mantz, 2004; Hsu, Chen, & Li, 2001; Jafarov, Alpaslan Parlakci, & Istefanopulos, 2005; Kim, Shin, & Chung, 2013). However, the variable structure control problem for BNs is still open and challenging, and to the best of our knowledge, there is no result on the construction of variable structure control for BNs as well. Motivated by the above discussions, the objective of this paper is to design the variable structure control for stabilization of BNs.

108

L. Sun et al. / Neural Networks 97 (2018) 107–115

When the variable structure control is applied to the BN, the states response of the system can be separated into three modes including reaching, sliding, and steady-state modes. In other words, we expect that the BN’s trajectory starting from any initial state converges to the steady-state mode. In this paper, if the state belongs to the sliding mode, it can arrive in the steady-state mode in finite time without any control. We just need to design the variable structure controller to control the states, which belong to the reaching mode, to enter into the sliding mode. The first problem we should solve in this paper is how to choose states from the reaching mode to guarantee that the number of nodes, which we should control, is minimized. Under the above precondition, we further determine the switching condition to ensure that the time of global stabilization in the BN is the shortest. It consists of two steps for designing the variable structure controller of BNs in this paper. The first step is to determine a switching condition which can guarantee that any initial state can arrive in the sliding mode. We consider three kinds of steadystate modes (the steady-state mode is a fixed point, or the steadystate mode is a state in a limit cycle, or the steady-state mode is a transient state). For each situation, we separate all states into three modes named the reaching, sliding, and steady-state modes respectively. Then we present a method to choose states from the reaching mode. Using this method, we can guarantee that the number of nodes, which should be controlled is minimized. According to the selected states, we then determine the switching condition to guarantee that the time of the process of the BN global stabilization is the shortest. The second step is to determine a control law to guarantee that all selected states in the reaching mode, can enter into the sliding mode. The method of determining a control law is motivated by the algorithm in Li (2016). We only need to get part of the solution, and hence less computational complexity is required. The rest is to be organized as the depiction below: Section 2 contains some preliminaries on STP. In Section 3, it consists of two steps for designing the variable structure controller of BN in this paper. The first step is to determine a switching condition and the second step is to determine a control law. Some examples are provided to illustrate the theoretical results. Conclusions are given in Section 4. 2. Preliminaries For simplicity, we first give some notations. We denote M { mi ×n as the set of } all m × n matrices. The delta set ∆k := δk |i = 1, 2, . . . , k , where δki is the ith column of identity matrix Ik with degree k. A matrix A is called a logical matrix if the columns set of A, denoted by Col(A), satisfies Col(A) ⊂ ∆m , and let Coli (A) denote the ith column of matrix A. The set of all m × n logical i i i matrices is denoted by Lm×n . Assuming A = [δm1 , δm2 , . . . , δmn ] ∈ Lm×n , we denote it as A = δm [i1 , i2 , . . . , in ] for simplicity. Let Ωm = {1, 2, . . . , 2m }. A logical domain D, is defined by D = {True = 1, False = 0}. Definition 1 (Cheng et al., 2010). The semi-tensor product of two matrices A ∈ Mm×n and B ∈ Mp×q is defined as A ⋉ B = (A ⊗ Iα/n )(B ⊗ Iα/p ), where α = lcm(n, p) is the least common multiple of n and p, and ⊗ is the tensor (or Kronecker) product. When n = p, STP is just the normal product. In this paper, we simply call STP ‘‘product’’ and omit the symbol ‘‘⋉’’ if no confusion raises.

Definition 2 (Cheng et al., 2010). An mn × mn matrix Wm,n is called a swap matrix, if it is constructed in the following way: label its columns by (11, 12, . . . , 1n, . . . , m1, m2, . . . , mn) and its rows by (11, 21, . . . , m1, . . . , 1n, 2n, . . . , mn). Then its element in the position ((I , J), (i, j)) is assigned as

w(I ,J),(i,j) = δiI,,jJ =

{

1, I = i and = j, 0, other w ise.

When m = n, we briefly denote W[n] = W[m,n] . Furthermore, for X ∈ Rm and Y ∈ Rn , W[m,n] ⋉ X ⋉ Y = Y ⋉ X , W[n,m] ⋉ Y ⋉ X = X ⋉ Y . Lemma 3 (Cheng et al., 2010). Let x = x1 x2 · · · xn with xi ∈ ∆2 , (i = 1, 2, . . . , n), then x2 = Φn x, where Φn = δ22n [1, 2n + 2, 2 · 2n + 3, . . . , (2n − 2) · 2n + 2n − 1, 22n ]. To use matrix expression we identify each element in D with a vector as True ∼ δ21 and False ∼ δ22 . Then the Boolean variable takes value from these two vectors, and D ∼ ∆2 . Using STP of matrices, a logical function with n arguments f : Dn → D can be expressed in the algebraic form as follows: Lemma 4 (Cheng et al., 2010). Any logical function f (x1 , . . . , xn ) with logical arguments x1 , . . . , xn ∈ ∆2 can be expressed in a multi-linear form as f (x1 , . . . , xn ) = Mf x1 x2 · · · xn , where Mf ∈ L2×2n is unique, and called the structure matrix of f . 3. Main results 3.1. Problem formulation A BN can be described as follows

⎧ x1 (t + 1) = f1 (x1 (t), . . . , xn (t)), ⎪ ⎪ ⎪ ⎪ ⎨ x2 (t + 1) = f2 (x1 (t), . . . , xn (t)), .. ⎪ ⎪ . ⎪ ⎪ ⎩ xn (t + 1) = fn (x1 (t), . . . , xn (t)),

(1)

where t = 0, 1, 2, . . . is the discrete time, fi : Dn → D are logical functions, and xi ∈ D, i = 1, 2, . . . , n are states of the BN. In view of the vector expression of logic, let xi (t) ∈ ∆. Then, using Lemma 4, for each logical function fi , i = 1, 2, . . . , n, we can find its unique structure matrix Mi . Let x(t) = ⋉ni=1 xi (t). Then system (1) can be converted into an algebraic form as follows

⎧ x1 (t + 1) = M1 x(t), ⎪ ⎪ ⎪ ⎪ ⎨ x2 (t + 1) = M2 x(t), .. ⎪ ⎪ . ⎪ ⎪ ⎩ xn (t + 1) = Mn x(t).

(2)

Multiplying the equations in (2) together yields x(t + 1) = Lx(t),

(3)

where Coli (L) = ⋉nj=1 Coli (Mj ), i = 1, 2, . . . , 2n . When the variable structure control is applied, the response of such a system in general consists of three modes, namely, the reaching mode, sliding mode, and steady-state mode. The states response of the system can also be separated into the reaching, sliding, and steady-state modes. For convenience, let the set of all states, which are separated into the reaching mode, be RM. All states, which are separated into the sliding mode, belong to the set SM. Similarly, we denote the set SS by the set of steady-state mode.

L. Sun et al. / Neural Networks 97 (2018) 107–115

109

Definition 5. For a given SS, the system (1) is said to be globally stabilized to SS by variable structure controller, if for any state x0 ∈ RM, there exist a set S and a variable structure controller u(x(t ; x0 )), such that x(t ; x0 ) ∈ S and x′ (t + 1; x0 , u(x(t ; x0 ))) ∈ SM.

For limit cycle Cxi , i = 1, 2, . . . , l, consider the mathematical programming problem

Designing the variable structure controller of BN is known to consist of the following steps

Subject to xp+u ∈ {xp+oi−1 +1 , xp+oi−1 +2 , . . . , xp+oi },

• Determine a switching condition such that when x(t) arrives in the set S, x(t) will enter into the SM at time t + 1. • Determine a control law u(t) = Ex(t), where x(t) ∈ S, such that a reaching condition is satisfied. This implies that the state, starting from any initial state, will move toward SS and arrive in finite time.

3.2. Determine a switching condition

Objectiv e function min d(xp+u , xw ),

xw ∈ {xα , xα1 , . . . , xαjα }, to get (xp+ui , xwi ) which satisfies min d(xp+u , xw ). Determine a switching condition: let x(k) = xp+ui −1 (if x(k + 1) = xp+ui = xp+oi−1 +1 , then x(k) = xp+oi ) enter into the sliding mode at time k + 1 by variable structure controller, i.e., when x(k) = xp+ui −1 , x′ (k + 1) = xwi . Because the state x′ (k + 1) = xwi belongs to the sliding mode, it can finally arrive in the steady-state mode along the trajectory of system (1) without any control.

Definition 6. Let xi , xj ∈ D. Then the distance of xi and xj is defined as d(xi , xj ) ≜ |xi − xj |. Let x = (x1 , x2 , . . . , xn ), x′ = (x′1 , x′2 , . . . , x′n ) ∈ Dn . Then x − x′ ≜ (d(x1 , x′1 ), d(x2 , x′2 ), . . . , d(xn , x′n )) and the distance of x and x′ is defined as d(x, x′ ) ≜ Σin=1 d(xi , x′i ).

Remark 1. The objective of calculating min d(xp+u , xw ) to find some xp+ui and xwi is to ensure that the number of control nodes is the least. For limit cycle, using the above method, we can determine a switching condition, to guarantee that any state in Cxi can arrive in the sliding mode, and to ensure that the number of nodes, which should be controlled, is the least.

2 3 4 Definition 7. Let x1 , x2 , x3 , x4 ∈ Dn . We define (x1 − ∑xn )∨(x1 −x 2) ≜ 3 4 1 2 3 4 ) , . . . , d(x , x ) ∨ d(x , x ) ] and [ (x − x )∨ , x [d(x11 , x21 ) ∨ d(x i=1 ∑1n 1 1 2 n n 3 4 n n (x3 − x4 )] ≜ [ d(x , x ) ∨ d(x , x ) ] . i i i i i=1

Remark 2. For transient state, it will enter into a fixed point or a limit cycle in finite time. So there is no need to consider transient states.

Let x(k) = x1 , where k = 0, 1, 2, . . ., and x1 ∈ Dn . For system (1), we have x(k + 1) = x2 , where x2 ∈ Dn . Design a switching condition such that when x(k) = x1 , x(k) = x1 will enter into the sliding mode at time k + 1 to ensure x′ (k + 1) = x∗ ̸ = x2 , where x∗ ∈ Dn and x∗ ∈ SM. In order to achieve this switching, we need to control some nodes, i.e., when x2i ̸ = x∗i , i = 1, . . . , n, the node xi needs to be controlled at time k, such that x′i (k + 1) = x∗i . According to Definition 6, we provide a method to determine the nodes that we need to control. If d(x2i , x∗i ) = 1, then the node xi , i = 1, . . . , n, needs to be controlled. So the number of nodes that we should control is d(x2 , x∗ ) = Σin=1 d(x2i , x∗i ). Without loss of generality, we assume that system (1) consists of fixed points x1 , x2 , . . . , xp , limit cycles Cx1 , Cx2 , . . . , Cxl , where Cxi = {xp+oi−1 +1 , . . . , xp+oi }, o0 = 0, i = 1, 2, . . . , l, and transient states. Here we should notice that x1 , . . . , xp , xp+1 , . . . , xp+o1 , . . . , xp+ol−1 +1 , . . . , xp+ol ∈ Dn . The objective of this paper is to force the system’s trajectory starting from any initial state converges to the steady-state mode. So the steady-state mode should be determined at first. In this paper, we consider three kinds of steady-state mode.

• The steady-state mode is a fixed point xα , 1 ≤ α ≤ p. • The steady-state mode is a state xp+βv ∈ Cxv , ov−1 + 1 ≤ βv ≤ ov , 1 ≤ v ≤ l. • The steady-state mode is a transient state xγ . α

(I) The steady-state mode is a fixed point x , 1 ≤ α ≤ p. We can find that some transient states xα1 , . . . , xαjα can arrive at xα along the trajectory of system (1). Then we separate all states into three modes and we have SS = {xα }, SM = {xα1 , . . . , xαjα , xα } and RM = Dn \ SM. For fixed point x1 (x1 ̸ = xα ), we calculate d(x1 , xα1 ), . . . , d(x1 , xαjα ), d(x1 , xα ), and we can assume that d(x1 , xαy1 ) is minimum, where αy1 ∈ {α1 , . . . , αjα , α}. Then we determine a switching condition, i.e., let x(k) = x1 enter into the sliding mode at time k + 1 by variable structure controller, such that x′ (k + 1) = xαy1 . Because the state x′ (k + 1) = xαy1 belongs to the sliding mode, it can arrive in the steady-state mode along the trajectory of system (1) without any control.

For fixed point and limit cycle, we both find a method to determine a switching condition, in order to ensure that the number of nodes, which should be controlled, is the least. But for the whole system, there are many fixed points and limit cycles. And we find that using the above methods cannot ensure that the number of control nodes for the whole system is the least. Here is a special case. Example 1. Consider a BN as follows x(t + 1) = Lx(t),

(4)

where L = δ16 [1, 14, 14, 14, 14, 14, 9, 14, 7, 14, 14, 1, 14, 14, 14, 14]. We can find that system (4) consists of fixed points x1 = (1, 1, 1, 1), x2 = (0, 0, 1, 0), limit cycle Cx = Cx1 = {x3 , x4 }, where x3 = (1, 0, 0, 1), and x4 = (0, 1, 1, 1). The steady-state mode is a fixed point x1 = (1, 1, 1, 1). For transient states, we find that only x5 = (0, 1, 0, 0) can arrive at x1 along the trajectory of system (4). Then we have SS = {x1 }, SM = {x5 , x1 }, and RM = D4 \ SM. For fixed point x2 , we get x2 − x1 = (1, 1, 0, 1), and x2 − x5 = (0, 1, 1, 0). We find that d(x2 , x5 ) is minimum. For limit cycle Cx1 , consider the mathematical programming problem Objectiv e function min d(x2+u , xw ), Subject to x2+u ∈ {x3 , x4 }, xw ∈ {x5 , x1 }. We can find the solution (x4 , x1 ) satisfying min d(x2+u , xw ) = 1. For the whole system, in theory, we should choose (x4 , x1 ) and (x2 , x5 ). However, we find x3 − x1 = (0, 1, 1, 0), x4 − x1 = (1, 0, 0, 0), and x2 − x5 = (0, 1, 1, 0). So if we choose (x4 , x1 ) and (x2 , x5 ), we need to control 3 nodes x1 , x2 , x3 . While if we choose (x3 , x1 ) and (x2 , x5 ), we only need to control 2 nodes x2 , x3 . And S = {x2 , x3 }. Therefore, using the above methods cannot ensure that the number of control nodes for the whole system is the least.

110

L. Sun et al. / Neural Networks 97 (2018) 107–115

If x can arrive at some limit cycle. Without loss of generality, let the limit cycle be Cx1 , and x(0) = x, x(t) = xp+u1 −1 . According to the switching condition, x′ (t + 1) = xw1 ∈ SM. So when the switching condition is determined, ∑n any stateα in S can arrive in SM at next time. According to min i=1 [(x1 − x i1 ) ∨ α α α α (x2 − x i2 ) ∨ . . . ∨(xp − x ip ) ∨ (xp+q1 − x io1 ) ∨ (xp+q2 − x io2 ) ∨ αio p+ql . . . ∨(x − x l )], it is easy to find that using this switching condition, the number of nodes, which should be controlled, is the least (see Fig. 1). □ Remark 3. According to Theorem 8, If the∑steady-state mode n αi1 1 ) ∨ is a fixed point xα , we need to calculate i=1 [(x − x αiα−1 αiα+1 α α−1 α+1 p · · · ∨ (x − x ) ∨ (x − x ) ∨ · · · ∨ (x − x ip ) ∨ α α α (xp+q1 − x io1 ) ∨ (xp+q2 − x io2 ) ∨ · · · ∨ (xp+ql − x iol )], where i1 , . . . , iα−1 , iα+1 , . . . , ip , io1 , io2 , . . . , iol = 0, 1, . . . , jα and q1 = 1, 2, . . . , o1 , q2 = o1 + 1, o1 + 2, . . . , o2 , . . . , ql = ol−1 + 1, ol−1 + 2, . . . , ol . Then the computational complexity is (jα + 1)p−1 × (o1 (jα + 1)) × · · · × (ol (jα + 1)).

Fig. 1. The state transfer graph of the system (1), where dotted lines are the switching condition.

For system (1), it consists of fixed points x1 , x2 , . . . , xp , limit cycles Cx1 , Cx2 , . . . , Cxl , where Cxi = {xp+oi−1 +1 , xp+oi−1 +2 , . . . , xp+oi }, o0 = 0, i = 1, 2, . . . , l, and transient states. Consider the steadystate mode is a fixed point xα , 1 ≤ α ≤ p. Firstly, separate all states into three modes, such that SS = {xα }, SM = {xα1 , . . . , xαjα , xα } and RM = Dn \ SM, where xα1 , . . . , xαjα can arrive at xα along the trajectory of system (1). Secondly, solve the mathematical programming problem 1 The mathematical programming problem 1: Objective ∑nfunction α α α min i=1 [(x1 − x i1 ) ∨ · · · ∨ (xp − x ip ) ∨ (xp+q1 − x io1 ) ∨ · · · ∨ αio p+ql (x − x l )], Subject to α α x i1 ∈ {xα , xα1 , xα2 , . . . , xαjα }, . . . , x ip αjα α α1 α2 ∈ {x , x , x , . . . , x }, αio

α

α1

α2

x ∈ {x , x , x , . . . , x ∈ {xα , xα1 , xα2 , . . . , xαjα }, 1

αjα

αio

}, . . . , x

Then we give the following theorem to determine the switching condition. αy1

Node Variable

x1 a1

x2 · · · a2 · · ·

xn an

where

{ ai =

1, w hen xi need to be controlled, 0, other w ise.

i = 1, 2, . . . , n.

(5)

We first consider a1 = a2 = · · · = an = 0. For fixed point x1 , if there exists k, where k ∈ {1, 2, . . . , n}, such that αj α x1k − xαk = 1, x1k − xk 1 = 1, . . . , x1k − xk α = 1, then the node xk must be controlled. Similarly, for each fixed point, we can get some nodes must be controlled. Without loss of generality, we assume that x1 , x2 , . . . , xm must be controlled. Then we first verify the hypothesis that a1 = a2 = · · · = am = 1, am+1 = am+2 = · · · = an = 0. Algorithm 1.

l

xp+q1 ∈ {xp+1 , xp+2 , . . . , xp+o1 }, . . . , xp+ql ∈ {xp+ol−1 +1 , xp+ol−1 +2 , . . . , xp+ol }.

αyp

w1

Theorem 8. Let solution (x , x ), . . . , (x , x ), (x , x ), . . . , (xp+ul , xwl ) satisfying the mathematical programming problem 1 and S = {x1 , . . . , xp , xp+u1 −1 , . . . , xp+ul −1 } (if p + uj = p + oj−1 + 1, then p + uj − 1 = p + oj , j = 1, 2, . . . , l), the switching condition can be determined as follows: x(t) = x1 ∈ S , x′ (t + 1) = xαy1 ∈ SM, . . . , x(t) = xp ∈ S , x′ (t + 1) = xαyp ∈ SM, x(t) = xp+u1 −1 ∈ S , x′ (t + 1) = xw1 ∈ SM, . . . , x(t) = xp+ul −1 ∈ S , x′ (t + 1) = xwl ∈ SM. This switching condition can guarantee that any state in S can arrive in SM at next time, and ensure that the number of nodes, which should be controlled, is the least. 1

Now we provide an algorithm to determine the switching condition, which can guarantee that any state in RM can arrive in the SM, and can ensure that the number of nodes, which should be controlled, is the least. Moreover, using this algorithm, we can effectively reduce the computational complexity. Let

p

p+u1

Proof. Suppose that x ∈ RM. The state x can arrive at some fixed point or limit cycle along the trajectory of system (1). If x can arrive at some fixed point. Without loss of generality, let the fixed point be x1 , and x(0) = x, x(t) = x1 . According to the switching condition, x′ (t + 1) = xαy1 ∈ SM.

Step 1: For fixed point x1 , if xαi , where αi ∈ {α, α1 , α2 , . . . , αjα } α α α satisfying x1m+1 − xmi+1 = 0, x1m+2 − xmi+2 = 0, . . . , x1n − xn i = 0, 1 αi then keep these (x , x ); else, stop, return to consider another hypothesis. Step 2: For each fixed point, repeat Step 1. α Step 3: For limit cycle Cx1 , if x io1 , where αio1 ∈ {α, α1 , . . . , αjα } p+q

αio

p+q

αio

p+q1

satisfying xm+11 − xm+11 = 0, xm+21 − xm+12 = 0, . . . , xn αio

xn 1 = 0, q1 ∈ {1, 2, . . . , o1 }, then keep these (xp+q1 , x else, stop, return to consider another hypothesis. Step 4: For each limit cycle, repeat Step 3.

αio

− 1

);

If the hypothesis that a1 = a2 = · · · = am = 1, am+1 = am+2 = · · · = an = 0 is not satisfied, then add a control node from xm+1 , xm+2 , . . . , xn . Consider the hypothesis that a1 = a2 = · · · = am = ah = 1, ah ∈ {am+1 , am+2 , . . . , an }. If all the hypotheses a1 = a2 = · · · = am = ah = 1, ah ∈ {am+1 , am+2 , . . . , an } are not satisfied, then add two control nodes from xm+1 , xm+2 , . . . , xn . And so on. Finally, the hypothesis satisfying the above conditions can ensure that the number of control nodes is the least. And we can also get the solution (x1∑ , xαy1 ), . . . , (xp , xαyp ), (xp+u1 , xw1 ), . . . , (xp+ul , n α α xwl ) satisfying min i=1 [(x1 − x i1 ) ∨ (x2 − x i2 ) ∨ · · · ∨ (xp − α αio α αip i p+q1 p + q o x ) ∨ (x − x 1 ) ∨ (x 2 − x 2 ) ∨ · · · ∨ (xp+ql − x iol )].

L. Sun et al. / Neural Networks 97 (2018) 107–115

When the steady-state mode is a fixed point xα , 1 ≤ α ≤ p. According to Algorithm 1, if there are more than one solution ∑n α α α satisfying min i=1 [(x1 −x i1 )∨(x2 −x i2 )∨· · ·∨(xp −x ip )∨(xp+q1 − αio αio αio p + q p + q l 2 x 1 ) ∨ (x − x 2 ) ∨ · · · ∨ (x − x l )], then we should choose one of them to guarantee that the time of global stabilization in the BN is the shortest. Algorithm 2. α

Step 1: For fixed point x1 , if (x1 , xαy1i ) and (x1 , x y1j ∑ ), where αy1i , αy1j ∈ {α1 , . . . , αjα , α} are both satisfied that min ni=1 [(x1 α − xαi1 ) ∨ (x2 − xαi2 ) ∨ · · · ∨ (xp − xαip ) ∨ (xp+q1 − x io1 ) ∨ (xp+q2 − αio αio αy1i p+ql l 2 x ) ∨ · · · ∨ (x − x )]. Let x(0) = x , along the trajectory of system (1), and then x(ti ) = xα , where ti is the first time that α xαy1i arrives at xα . Similarly, let x(0) = x y1j , and then x(tj ) = xα . Step 2: Compare ti with tj . If ti < tj , choose (x1 , xαy1i ); else, choose α (x1 , x y1j ). Step 3: For each fixed point, repeat Step 1 and Step 2. Algorithm 3. Step 1: For limit cycle Cx1 , if (xp+u1i , xw1i ) and (xp+u1j , xw1j ), where p + u1i , p + u1j ∈ {p + 1, p + 2, . . . , p ∑ + o1 }, w1i , w1j ∈ {α, α1 , . . . , αjα }, are both satisfied that min ni=1 [(x1 − xαi1 ) ∨ α α α α (x2 − x i2 ) ∨· · ·∨ (xp − x ip ) ∨ (xp+q1 − x io1 ) ∨ (xp+q2 − x io2 ) ∨· · ·∨ α i (xp+ql − x ol )]. Let x(0) = xw1i , along the trajectory of system (1), and then x(t1i ) = xα , where t1i (t1j ) is the first time that xw1i (xw1j ) arrives at xα . Similarly, let x(0) = xw1j , and then x(t1j ) = xα . Step 2: Compare t1i with t1j . If t1i < t1j , choose (xp+u1i , xw1i ); if t1i > t1j , choose (xp+u1j , xw1j ); if t1i = t1j , go to Step 3. Step 3: All transient states x11 , . . . , x1q1 can enter into Cx1 along the trajectory of system (1). Compare the time that these transient states arrive at xp+u1i −1 and xp+u1j −1 , respectively. If the time that these transient states arrive at xp+u1i −1 is less, choose (xp+u1i , xw1i ); else, choose (xp+u1j , xw1j ). Step 4: For each limit cycle, repeat Step 1, Step 2 and Step3. Finally, we can determine the switching condition, which can guarantee that the time of global stabilization in the BN is the shortest and can ensure that the number of nodes, which should be controlled, is the least. Example 2. Consider a BN as follows x(t + 1) = Lx(t),

(6)

where L = δ8 [3, 5, 3, 7, 4, 6, 2, 2]. We can find that system (6) consists of fixed points x1 = (1, 0, 1), x2 = (0, 1, 0), limit cycle Cx = Cx1 = {x3 , x4 , x5 , x6 }, where x3 = (1, 1, 0), x4 = (0, 1, 1), x5 = (1, 0, 0), and x6 = (0, 0, 1), and transient states x7 = (1, 1, 1), x8 = (0, 0, 0). The steady-state mode is a fixed point x1 = (1, 0, 1). The transient state x7 = (1, 1, 1) can arrive at x1 along the trajectory of system (6). Then we have SS = {x1 }, SM = {x7 , x1 }, and RM = D3 \ SM. Let Node Variable

x1 a1

x2 x3 a2 a3

where

{ ai =

1, w hen xi need to be controlled, 0, other w ise.

i = 1, 2, 3.

(7)

We first consider a1 = a2 = a3 = 0. For fixed point x2 , we get − x11 = 1, x21 − x71 = 1, and x23 − x13 = 1, x23 − x73 = 1. Then the nodes x1 , x3 must be controlled. So we first verify the hypothesis that a1 = a3 = 1, a2 = 0. x21

111

Step 1: For fixed point x2 , x22 − x72 = 0. Then keep (x2 , x7 ). Step 2: For limit cycle Cx1 , x52 − x12 = 0, x62 − x12 = 0, x32 − x72 = 0, and x42 − x72 = 0. Then keep (x5 , x1 ), (x6 , x1 ), (x3 , x7 ), and (x4 , x7 ). Finally, the hypothesis that a1 = 1, a2 = 0, a3 = 1 satisfies the above For fixed point x2 , we find only (x2 , x7 ) satisfying ∑conditions. α 3 α min i=1 [(x2 − x i2 ) ∨ (xp+q1 − x io1 )], where αi2 , αio1 = 1, 7 and p + q1 = 3, 4, 5, 6. For limit cycle Cx1 , we find that (x5 , x1 ), (x6 , x1 ), ∑3 α (x3 , x7 ), and (x4 , x7 ) all satisfying min i=1 [(x2 − x i2 ) ∨ (xp+q1 − αio x 1 )], where αi2 , αio1 = 1, 7 and p + q1 = 3, 4, 5, 6. Now we should choose one of the solutions to guarantee that the time of global stabilization in the BN is the shortest. Step 1: For the limit cycle Cx1 , (x5 , x1 ), (x6 , x1 ), (x3 , x7 ), and 4 (x , x7 ) are all satisfied the above condition. Let x(0) = x7 , along the trajectory of system (6), and then x(1) = x1 , where 1 is the first time that x7 arrives at x1 . Step 2: Obviously, choose (x5 , x1 ) and (x6 , x1 ). Step 3: Transient state x8 can enter into Cx1 along the trajectory of system (6). Compare the time that the transient state x8 arrives at x5−1 = x4 and x6−1 = x5 , respectively. The time that x8 arrives at x4 is less, choose (x5 , x1 ). Finally, we choose (x2 , x7 ) and (x5 , x1 ) to determine the switching condition, which can guarantee that the time of global stabilization in the BN is the shortest and ensure that the number of nodes, which should be controlled, is the least. (II) The steady-state mode is a state xp+βv ∈ Cxv , where ov−1 + 1 ≤ β ≤ ov , 1 ≤ v ≤ l. We can find that some transient states xv1 , . . . , xvqv can enter into Cxv along the trajectory of system (1). Then we separate all states into three modes, and we have SS = {xp+βv }, SM = {xv1 , . . . , xvqv , xp+ov−1 +1 , . . . , xp+ov }, and RM = Dn \ SM. Remark 4. The difference between (I) and (II) is that unlike (I), in (II), one needs to keep x′ (k) = xp+βv , k ≥ t + 1, when p+β +1 p+β x(t) = xp+βv . And nodes xi satisfying d(xi v , xi v ) ̸ = 0, where p+βv p+oi i = 1, 2, . . . , n,∑ must be controlled (if x = x , then xp+βv +1 n p+oi−1 +1 p+βv +1 p+βv =x ). If i=1 (x −x ) = n, then all the nodes need to be controlled. According to Theorem 8 and Remark 4, for the whole system, we provide an algorithm to determine a switching condition, to guarantee that any state in S can arrive in the SM at next time, and to ensure that the number of nodes, which we should control, is the least. Let Node Variable

x1 a1

x2 · · · a2 · · ·

xn an

where

{ ai =

1, w hen xi need to be controlled, 0, other w ise.

i = 1, 2, . . . , n.

(8)

Firstly, calculate (xp+βv +1 − xp+βv ) (when xp+βv = xp+oi , then p+β +1 p+β xp+βv +1 = xp+oi−1 +1 ). The nodes xi satisfying d(xi v , xi v ) ̸ = 0, where i = 1, 2, . . . , n must be controlled. Define ∑ a set Q = p+β +1 p+β {xi |d(xi v , xi v ) ̸= 0, i = 1, 2, . . . , n}. If ni=1 (xp+βv +1 − xp+βv ) = n, then all the nodes need to be controlled. Secondly, for fixed point x1 , if there exists xk , where xk ̸ ∈ Q , vq p+o +1 v such that x1k − xk1 = 1, . . . , x1k − xk v = 1, . . . , x1k − xk v−1 = p+ov 1 1, xk − xk = 1, then the node xk must be controlled. Similarly, for each fixed point, we can get some nodes must be controlled. Without loss of generality, we assume that x1 , x2 , . . . , xm must be controlled. Then we first verify the hypothesis that a1 = a2 = · · · = am = 1, am+1 = am+2 = · · · = an = 0.

112

L. Sun et al. / Neural Networks 97 (2018) 107–115

Algorithm 4. α

Step 1: For fixed point x1 , if x i1 , αi1 ∈ {v1 , . . . vqv , p + ov−1 + αi1 αi1 1 1, . . . , p + ov } satisfying x1m+1 − xm+ 1 = 0, xm+2 − xm+2 = αi

α

0, . . . , x1n − xn 1 = 0, then keep these (x1 , x i1 ); else, stop, return to consider another hypothesis. Step 2: For each fixed point, repeat Step 1. α Step 3: For limit cycle Cx1 , if x io1 , αio1 ∈ {v1 , . . . , vqv , p + ov−1 + p+q

αio

p+q

αio

1, . . . , p + ov } satisfying xm+11 − xm+11 = 0, xm+21 − xm+12 = p+q

αio

0, . . . , xn 1 − xn 1 = 0, q1 ∈ {1, 2, . . . , o1 }, then keep these α (xp+q1 , x io1 ); else, stop, return to consider another hypothesis. Step 4: For each limit cycle, repeat Step 3. If the hypothesis that a1 = a2 = · · · = am = 1, am+1 = am+2 = · · · = an = 0 is not satisfied, then add a control node from xm+1 , xm+2 , . . . , xn . Consider the hypothesis that a1 = a2 = · · · = am = ah = 1, ah ∈ {am+1 , am+2 , . . . , an }. If all the hypotheses that a1 = a2 = · · · = am = ah = 1, ah ∈ {am+1 , am+2 , . . . , an } are not satisfied, then add two control nodes from xm+1 , xm+2 , . . . , xn . And so on. Finally, the hypothesis, which satisfies the above conditions, can ensure that the number of control nodes is the least. And we can also get the solution (x1∑ , xαy1 ), . . . , (xp , xαyp ), (xp+u1 , xw1 ), p+ul wl . . . , (x , x ) satisfying min ni=1 [(xp+βv +1 − xp+βv ) ∨ (x1 − α α α α x i1 ) ∨ (x2 − x i2 ) ∨ · · · ∨ (xp − x ip ) ∨ (xp+q1 − x io1 ) ∨ (xp+q2 − αio αio p + q l x 2 ) ∨ · · · ∨ (x − x l )]. And using Algorithm 2 and Algorithm 3, we can choose one of them to guarantee that the time of global stabilization in the BN is the shortest. Remark 5. If the system (1) is stabilized to certain limit cycle (that is, the steady-state mode is a limit cycle), then we do not need to consider xp+βv +1 − xp+βv .

(III) The steady-state mode is a transient state xγ . We can find some transient states xγ1 , . . . , xγwγ which can arrive at xγ at time instant. Then we can separate all states into three modes and we have SS = {xγ }, SM = {xγ1 , . . . , xγwγ , xγ } and RM = Dn \ SM. When x(t) = xγ , we need to keep x′ (k) = xγ , where k ≥ t + 1. So when x(t) = xγ , we first need to find x(t + 1) in the system (1). Without loss of generality, we assume the next state is xγ +1 . γ +1 γ So we need to control the nodes xi satisfying d(xi , xi ) ̸ = 0, where i = 1, 2, . . . , n. Similar to the above, we can determine the switching condition. Example 4. Consider a BN as follows x(t + 1) = Lx(t),

(10)

where L = δ8 [3, 5, 3, 7, 4, 6, 2, 2]. We can find that system (10) consists of fixed points x1 = (1, 0, 1), x2 = (0, 1, 0), limit cycle Cx = Cx1 = {x3 , x4 , x5 , x6 }, where x3 = (1, 1, 0), x4 = (0, 1, 1), x5 = (1, 0, 0), and x6 = (0, 0, 1), and transient states x7 = (1, 1, 1), x8 = (0, 0, 0). The steady-state mode is a transient state x7 = (1, 1, 1). We have RM = {x1 , x2 , . . . , x6 , x8 }, SM = {x7 } and SS = {x7 }. When x(t) = x7 , we need to keep x′ (k) = x7 , where k ≥ t + 1. So when x(t) = x7 , we first find x(t + 1) = x1 in the system (10). We have x1 − x7 = (0, 1, 0). Then the node x2 must be controlled. Now we verify the hypothesis that a1 = 0, a2 = 1, a3 = 0. For fixed point x1 , x1 − x7 = (0, 1, 0). For fixed point x2 , x2 − x7 = (1, 0, 1). Because of (x1 − x7 ) ∨ (x2 − x7 ) = (1, 1, 1), we should control all the nodes. In order to guarantee that the time of global stabilization in the BN is the shortest, we finally choose (x1 , x7 ), (x2 , x7 ) and (x4 , x7 ). 3.3. Determine a control law

Example 3. Consider a BN as follows x(t + 1) = Lx(t),

(9)

where L = δ8 [3, 5, 3, 7, 4, 6, 2, 2]. We can find that system (9) consists of fixed points x1 = (1, 0, 1), x2 = (0, 1, 0), limit cycle Cx = Cx1 = {x3 , x4 , x5 , x6 }, where x3 = (1, 1, 0), x4 = (0, 1, 1), x5 = (1, 0, 0), and x6 = (0, 0, 1), and transient states x7 = (1, 1, 1), x8 = (0, 0, 0). The steady-state mode is a state x3 = (1, 1, 0) ∈ Cx1 . We can find that only the transient state x8 can enter into Cx1 along the trajectory of system (9). Then we separate all states into three modes and we have SS = {x3 }, SM = {x3 , x4 , x5 , x6 , x8 }, and RM = D3 \ SM. Firstly, we get x4 − x3 = (1, 0, 1). Then the nodes x1 , x3 must be controlled and Q = {x1 , x3 }. Now we verify the hypothesis that a1 = 1, a3 = 1, a2 = 0. Step 1: For fixed point x1 , x12 − x52 = 0, x12 − x62 = 0 and x12 − x82 = 0. Then keep (x1 , x5 ), (x1 , x6 ) and (x1 , x8 ). For fixed point x2 , x22 − x32 = 0 and x22 − x42 = 0. Then keep (x2 , x3 ) and (x2 , x4 ). Finally, the hypothesis that a1 = 1, a2 = 0, a3 = 1 satisfies the above conditions. Now according to Algorithm 2, we can choose one of them to guarantee that the time of global stabilization in the BN is the shortest. Step 1: For fixed point x1 , (x1 , x5 ), (x1 , x6 ), and (x1 , x8 ) are all satisfied the above condition. Let x(0) = x5 , along the trajectory of system (9), and then x(2) = x3 , where 2 is the first time that x5 arrives at x3 . Similarly, let x(0) = x6 , x(0) = x8 , and then x(1) = x3 . Step 2: 1 < 2. Choose (x1 , x6 ) or (x1 , x8 ). Step 3: For fixed point x2 , repeat Step 1 and Step 2. Finally, choose (x3 , x4 ), (x1 , x6 ) and (x2 , x3 ) ((x3 , x4 ), (x1 , x8 ) and (x2 , x3 )) to determine the switching condition.

If xi , xj ∈ D, then xi − xj = 0 or 1 or − 1, i.e., xi = xj or xi = 1, xj = 0 or xi = 0, xj = 1. According to the previous algorithm, we can get the nodes that should be controlled. Without loss of generality, we assume that xi1 , . . . , xib , where i1 , . . . , ib ∈ {1, 2, . . . , n}, need to be controlled. For fixed point xi , i = 1, . . . , p, according to the previous algorithm, we choose (xi , xαyi ), i.e., let x(k) = xi enter into the sliding mode at time k + 1 by variable structure controller, and then x′ (k + 1) = xαyi . For limit cycle Cxi , i = 1, . . . , l, according to previous algorithm, we choose (xp+ui , xwi ), i.e., let x(k) = xp+ui −1 (if x(k + 1) = xp+ui = xp+oi−1 +1 , then x(k) = xp+oi ) enter into the sliding mode at time k + 1 by variable structure controller, and then x′ (k + 1) = xwi . For fixed point and limit cycle, the method of determining a control law is the same. Now we consider (xi , xαyi ), i.e., let x(k) = xi enter into the sliding mode at time k + 1 by variable structure controller, and then x′ (k + 1) = xαyi . Assume that x(k) = xi ∼ δ2r n Calculate αy xi − xαyi . Without loss of generality, we assume that xii − xi i = αyi

1, xii − xi

αy

αy

1

1

= −1, xii3 − xi3 i = · · · = xiib − xib i = 0. 2 2 αy αy i For xi − xi i = 1, we know that xii ∼ δ21 , xi i ∼ δ22 . According 1 1 1 1 to x′ (k + 1) = xαyi and xii ∼ δ21 , we have xi1 (k + 1) = Mi1 x(k) = δ21 . 1 We assume that

x′i1 (k + 1) = Gi1 ui1 (k)Mi1 x(k), where

) αi1 ,1 αi1 ,2 αi1 ,3 αi1 ,4 , 1 − αi1 ,1 1 − αi1 ,2 1 − αi1 ,3 1 − αi1 ,4

( Gi1 =

and ui1 (k) = Ei1 x(k) with Ei1 being

( Ei1 =

) βi1 ,1 βi1 ,2 · · · βi1 ,2n . 1 − βi1 ,1 1 − βi1 ,2 · · · 1 − βi1 ,2n

L. Sun et al. / Neural Networks 97 (2018) 107–115 αyi

For xii − xi

Then

( ) 0 1

αi1 ,1

( =

αi1 ,2

αi1 ,3

αi1 ,4

)

1 − αi1 ,1 1 − αi1 ,2 1 − αi1 ,3 1 − αi1 ,4

(

βi1 ,r 1 − βi1 ,r

4

= M1 x(k) · · · Gi1 ui1 (k)Mi1 x(k) · · · Gib uib (k)Mib x(k)

)( )

1 . 0

· · · Mn x(k) ≜˜ Lu(k)x(k),

αi1 ,1 βi1 ,r + αi1 ,3 (1 − βi1 ,r ) = 0, (1 − αi1 ,1 )βi1 ,r + (1 − αi1 ,3 )(1 − βi1 ,r ) = 1.

where ˜ L = (I2i1 −1 ⊗ Gi1 )(I22i2 −i1 −1 ⊗ Gi2 ) · · · (I22ib −i1 −1 ⊗ Gib )W[2,2i1 −1 ] (I2 ⊗ W[2,2i2 −1 ] ) · · · (I2b−1 ⊗ W[2,2ib −1 ] )(I2b ⊗ L) ∈ L2n ×2n+b and u(k) = ui1 (k) · · · uib (k) = Ei1 x(k) · · · Eib x(k) ≜ Ex(k), E ∈ L2b ×2n .

Solving the above equations gives that

⎧ ⎧ ⎨ βi1 ,r = 0, ⎨ βi1 ,r = 1, αi ,3 = 0, αi1 ,1 = 0, or ⎩ 1 ⎩ αi1 ,1 = 0 or 1. αi1 ,3 = 0 or 1, αy

Example 5. Consider a BN as follows αy

For xii − xi i = −1, we know that xii ∼ δ22 , xi i ∼ δ21 . According 2 2 2 2 to x′ (k + 1) = xαyi and xii ∼ δ22 , we have xi2 (k + 1) = Mi2 x(k) = δ22 . 2 We assume that x′i2 (k + 1) = Gi2 ui2 (k)Mi2 x(k), where

( Gi2 =

) αi2 ,1 αi2 ,2 αi2 ,3 αi2 ,4 , 1 − αi2 ,1 1 − αi2 ,2 1 − αi2 ,3 1 − αi2 ,4

and ui2 (k) = Ei2 x(k) with Ei2 being

( Ei2 =

) βi2 ,1 βi2 ,2 · · · βi2 ,2n . 1 − βi2 ,1 1 − βi2 ,2 · · · 1 − βi2 ,2n αi2 ,1 αi2 ,2 αi2 ,3 αi2 ,4 1 − αi2 ,1 1 − αi2 ,2 1 − αi2 ,3 1 − αi2 ,4 )( ) ( 0 βi2 ,r . 1 − βi2 ,r 1

(

=

)

That is,

αi2 ,2 βi2 ,r + αi2 ,4 (1 − βi2 ,r ) = 1,

where L = δ8 [3, 5, 3, 7, 4, 6, 2, 2]. We assume that the steadystate mode is a fixed point x1 = (1, 0, 1) ∼ δ83 . According to Example 3, for the fixed point x2 , when x(t) = x2 , x′ (t + 1) = x7 and x(t + 2) = x1 . For the limit cycle Cx1 , when x(t) = x4 , x′ (t + 1) = x1 and x(t + 2) = x1 . Note x2 − x7 = (1, 0, 1), where x21 − x71 = −1 and x23 − x73 = −1. We also know that x5 − x1 = (0, 0, 1), where x53 − x13 = −1. Moreover, x2 ∼ δ86 and x4 ∼ δ85 . For limit cycle Cx1 , we should ensure that when x(k) = x4 = δ85 , x′3 (k + 1) = δ21 , where x3 (k + 1) = δ22 . We assume that

) α3,1 α3,2 α3,3 α3,4 , G3 = 1 − α3,1 1 − α3,2 1 − α3,3 1 − α3,4 (

and u3 (k) = E3 x(k) with E3 being

) β3,1 β3,2 · · · β3,8 . E3 = 1 − β3,1 1 − β3,2 · · · 1 − β3,8 (

Then

(1 − αi2 ,2 )βi2 ,r + (1 − αi2 ,4 )(1 − βi2 ,r ) = 0.

( ) 1 0

Solving the above equations gives that

⎧ ⎧ ⎨ βi2 ,r = 1, ⎨ βi2 ,r = 0, αi2 ,2 = 1, αi ,4 = 1, or ⎩ ⎩ 2 αi2 ,4 = 0 or 1, αi2 ,2 = 0 or 1. αy

αyi

αyi

xi

3

{

= 0, we know that xii3 ∼ δ21 , xi3 i ∼ δ21 or xii3 ∼ δ22 ,

For xii − xi 3

3

∼ δ22 . αy If xii ∼ δ21 , xi i ∼ δ21 . 3 3

αi3 ,1 βi3 ,r + αi3 ,3 (1 − βi3 ,r ) = 1, (1 − αi3 ,1 )βi3 ,r + (1 − αi3 ,3 )(1 − βi3 ,r ) = 0,

so we have

⎧ ⎧ ⎨ βi3 ,r = 1, ⎨ βi3 ,r = 0, αi3 ,1 = 1, αi ,3 = 1, or ⎩ 3 ⎩ αi3 ,3 = 0 or 1, αi3 ,1 = 0 or 1. αyi

If xii ∼ δ22 , xi 3

{

(11)

where

( )

{

x(t + 1) = Lx(t),

x′3 (k + 1) = G3 u3 (k)M3 x(k),

Then 1 0

= 0, . . . , xiib − xib = 0. Similarly, we have

x′ (k + 1) = x1 (k + 1) · · · xi1 (k + 1) · · · xib (k + 1) · · · xn (k + 1)

That is,

{

4

113 αyi

3

∼ δ22 .

)

That is,

{

α3,2 β3,5 + α3,4 (1 − β3,5 ) = 1, (1 − α3,2 )β3,5 + (1 − α3,4 )(1 − β3,5 ) = 0.

Solving the above equations gives that

⎧ ⎧ ⎨ β3,5 = 1, ⎨ β3,5 = 0, α3,2 = 1, α3,4 = 1, or ⎩ ⎩ α3,4 = 0 or 1, α3,2 = 0 or 1. For limit cycle Cx1 , we should ensure that when x(k) = x4 = δ85 , x′1 (k + 1) = x1 (k + 1) = δ21 , i.e.,

( ) 1 0

αi3 ,2 βi3 ,r + αi3 ,4 (1 − βi3 ,r ) = 0, (1 − αi3 ,2 )βi3 ,r + (1 − αi3 ,4 )(1 − βi3 ,r ) = 1,

so we have

⎧ ⎧ ⎨ βi3 ,r = 1, ⎨ βi3 ,r = 0, αi3 ,2 = 0, αi ,4 = 0, or ⎩ ⎩ 3 αi3 ,4 = 0 or 1, αi3 ,2 = 0 or 1.

α3,1 α3,2 α3,3 α3,4 = 1 − α3,1 1 − α3,2 1 − α3,3 1 − α3,4 )( ) ( 0 β3,5 . 1 1 − β3,5

(

α1,1 α1,2 α1,3 α1,4 = 1 − α1,1 1 − α1,2 1 − α1,3 1 − α1,4 ( )( ) β1,5 1 . 1 − β1,5 0

(

That is,

{

α1,1 β1,5 + α1,3 (1 − β1,5 ) = 1, (1 − α1,1 )β1,5 + (1 − α1,3 )(1 − β1,5 ) = 0.

)

114

L. Sun et al. / Neural Networks 97 (2018) 107–115

When the steady-state mode is a fixed point x1 , we can obtain the set S = {x2 (δ86 ), x4 (δ85 )} and

Solving the above equations gives that

⎧ ⎧ ⎨ β1,5 = 0, ⎨ β1,5 = 1, α1,3 = 1, α1,1 = 1, or ⎩ ⎩ α1,1 = 0 or 1. α1,3 = 0 or 1,

{

x′ (t + 1) = ˜ Lu(t)x(t), x(t) ∈ S ,

For a fixed point x2 , we should ensure that when x(k) = x2 = δ86 , x′1 (k + 1) = δ21 , where x1 (k + 1) = δ22 . We assume that x′1 (k + 1) = G1 u1 (k)M1 x(k),

G1 =

α1,1

α1,2

α1,3

α1,4

)

1 − α1,1 1 − α1,2 1 − α1,3 1 − α1,4

i.e., when x(k) ∈ S, the switching occurs, such that x′ (k + 1) ∈ SM. Because of x′ (k + 1) ̸ ∈ S, x(k + 2) = Lx′ (k + 1) and x(k + 2) will enter into SS in finite time. Remark 6. The method of determining a control law is similar to the algorithm in Li (2016). While in our paper, we do not need to compute all elements in G and E. So the computational complexity of this paper is reduced.

where

(

x(t + 1) = Lx(t), x(t) ̸ ∈ S ,

,

and u1 (k) = E1 x(k) with E1 being

( E1 =

) β1,1 β1,2 · · · β1,8 . 1 − β1,1 1 − β1,2 · · · 1 − β1,8

4. Conclusion In this paper, variable structure control design for stabilization of BNs is addressed. The design of variable structure control is known to consist of the following steps: determine a switching condition and determine a control law. We first provide a method to choose states from reaching mode to guarantee that the number of nodes which should be controlled is the least. According to the selected states, we determine the switching condition to ensure that the time of global stabilization in the BN is the shortest. And we determine a control law to guarantee that all states in reaching mode can arrive in sliding mode. Some examples are provided to illustrate the results. Future research efforts will be devoted to the design of variable structure controller for synchronization and set stability of BNs.

Then

( )

(

1 0

=

(

α1,1

α1,2

α1,3

α1,4

)

1 − α1,1 1 − α1,2 1 − α1,3 1 − α1,4

β1,6 1 − β1,6

)( )

0 . 1

That is,

{

α1,2 β1,6 + α1,4 (1 − β1,6 ) = 1, (1 − α1,2 )β1,6 + (1 − α1,4 )(1 − β1,6 ) = 0.

Solving the above equations gives that

⎧ ⎧ ⎨ β1,6 = 1, ⎨ β1,6 = 0, α1,2 = 1, α1,4 = 1, or ⎩ ⎩ α1,4 = 0 or 1, α1,2 = 0 or 1.

Acknowledgments

For fixed point x2 , we should also ensure that when x(k) = x2 = δ86 , x′3 (k + 1) = δ21 , where x3 (k + 1) = δ22 . Similarly, we assume that x′3 (k + 1) = G3 u3 (k)M3 x(k), and then we have

⎧ ⎧ ⎨ β3,6 = 1, ⎨ β3,6 = 0, α3,2 = 1, α3,4 = 1, or ⎩ ⎩ α3,4 = 0 or 1, α3,2 = 0 or 1.

References

So we can choose one solution: Col1 (G1 ) = Col2 (G1 ) = δ Col2 (G3 ) = δ21 , Col5 (E1 ) = Col6 (E1 ) = δ21 and Col5 (E3 ) = Col6 (E3 ) = δ21 . Finally, we have 1 2,

x′ (k + 1) = G1 u1 (k)M1 x(k)M2 x(k)G3 u3 (k)M3 x(k)

= G1 (I23 ⊗ G3 )u1 (k)M1 x(k)M2 x(k)u3 (k)M3 x(k) = G1 (I23 ⊗ G3 )(I2 ⊗ W[2,4] )u1 (k)u3 (k)Lx(k) = G1 (I23 ⊗ G3 )(I2 ⊗ W[2,4] )(I22 ⊗ L)u1 (k)u3 (k)x(k) ≜˜ Lu(k)x(k),

and u(k) = u1 (k)u3 (k)

= E1 x(k)E3 x(k) = E1 (I23 ⊗ E3 )Φ3 x(k) ≜ Ex(k),

where ˜ L = δ8 [∗, ∗, ∗, ∗, 3, 1, ∗, . . . , ∗] and E = δ4 [∗, ∗, ∗, ∗, 1, 1,

∗, ∗].

This work was supported by the National Natural Science Foundation of China under Grant No. 61573102 and 11671361, the Natural Science Foundation of Jiangsu Province of China under Grant BK20170019, and China Postdoctoral Science Foundation under Grant No. 2014M560377, 2015T80483, 2016T90406 and 2015M580378, Jiangsu Province Six Talent Peaks Project under Grant 2015-ZNDW-002, and the Fundamental Research Funds for the Central Universities.

Akutsu, Tatsuya, Miyano, Satoru, & Kuhara, Satoru (1999). Identification of genetic networks from a small number of gene expression patterns under the Boolean network model, in: Pacific Symposium on Biocomputing, Vol. 4 (pp. 17–28). Chen, Hongwei, Liang, Jinling, & Wang, Zidong (2016). Pinning controllability of autonomous Boolean control networks. Science China. Information Sciences, 59(7), 070107(14). Chen, Hao, & Sun, Jitao (2013). A new approach for global controllability of higher order Boolean control network. Neural Networks, 39, 12–17. Cheng, Daizhan (2011). Disturbance decoupling of Boolean control networks. IEEE Transactions on Automatic Control, 56(1), 2–10. Cheng, Daizhan, & Qi, Hongsheng (2009). Controllability and observability of Boolean control networks. Automatica, 45(7), 1659–1667. Cheng, Daizhan, & Qi, Hongsheng (2010). A linear representation of dynamics of Boolean networks. IEEE Transactions on Automatic Control, 55(10), 2251–2258. Cheng, Daizhan, Qi, Hongsheng, & Li, Zhiqiang (2010). Analysis and control of Boolean networks: A semi-tensor product approach. Springer Science & Business Media. Cheng, Daizhan, Qi, Hongsheng, Li, Zhiqiang, & Liu, Jiang B. (2011). Stability and stabilization of Boolean networks. International Journal of Robust and Nonlinear Control, 21(2), 134–156. Chou, Chien Hsin, & Cheng, Chih Chiang (2003). A decentralized model reference adaptive variable structure controller for large-scale time-varying delay systems. IEEE Transactions on Automatic Control, 48(7), 1213–1217. Davidson, Eric H., Rast, Jonathan P., Oliveri, Paola, Ransick, Andrew, Calestani, Cristina, Yuh, Chio Hwa, Minokawa, Takuya, Amore, Gabriele, Hinman, Veronica, Arenas-Mena, Cesar, et al. (2002). A genomic regulatory network for development. Science, 295(5560), 1669–1678.

L. Sun et al. / Neural Networks 97 (2018) 107–115 De Battista, Hernán, & Mantz, Ricardo Julian (2004). Dynamical variable structure controller for power regulation of wind energy conversion systems. IEEE Transactions on Energy Conversion, 19(4), 756–763. Emelyanov, S. V. (1967). Variable structure control systems, Moscow, Nouka. Fornasini, Ettore, & Valcher, Maria Elena (2013). On the periodic trajectories of Boolean control networks. Automatica, 49(5), 1506–1509. Hsu, Ya Chen, Chen, Guanrong, & Li, Ha Xiong (2001). A fuzzy adaptive variable structure controller with applications to robot manipulators. IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics), 31(3), 331–340. Huang, Tingwen, Li, Chuandong, Duan, Shukai, & Starzyk, Janusz A. (2012). Robust exponential stability of uncertain delayed neural networks with stochastic perturbation and impulse effects. IEEE Transactions on Neural Networks and Learning Systems, 23, 866–875. Itkis, Uri (1976). Control systems of variable structure. Halsted Press. Jafarov, Elbrous M., Alpaslan Parlakci, M. N., & Istefanopulos, Yorgo (2005). A new variable structure pid-controller design for robot manipulators. IEEE Transactions on Control Systems Technology, 13(1), 122–130. Kauffman, Stuart A. (1969). Metabolic stability and epigenesis in randomly constructed genetic nets. Journal of Theoretical Biology, 22(3), 437–467. Kim, Wonhee, Shin, Donghoon, & Chung, Chung Choo (2013). Microstepping using a disturbance observer and a variable structure controller for permanent-magnet stepper motors. IEEE Transactions on Industrial Electronics, 60(7), 2689–2699. Laschov, Dmitriy, Margaliot, Michael, & Even, Guy (2013). Observability of Boolean networks: a graph-theoretic approach. Automatica, 49(8), 2351–2362. Li, Fangfei (2016). Pinning control design for the stabilization of Boolean networks. IEEE Transactions on Neural Networks and Learning Systems, 27(7), 1585–1590. Li, Fangfei, & Lu, Xiwen (2013). Complete synchronization of temporal Boolean networks. Neural Networks, 44, 72–77. Li, Haitao, & Wang, Yuzhen (2013). Consistent stabilizability of switched Boolean networks. Neural Networks, 46(46), 183–189. Li, Haitao, & Wang, Yuzhen (2015a). Controllability analysis and control design for switched Boolean networks with state and input constraints. SIAM Journal on Control and Optimization, 53(5), 2955–2979. Li, Haitao, & Wang, Yuzhen (2015b). Logical matrix factorization with application to topological structure analysis of Boolean network. IEEE Transactions on Automatic Control, 60(5), 1380–1385. Li, Haitao, Wang, Yuzhen, & Xie, Lihua (2015). Output tracking control of Boolean control networks via state feedback: constant reference signal case. Automatica, 59, 54–59. Li, Haitao, Xie, Lihua, & Wang, Yuzhen (2016). On robust control invariance of Boolean control networks. Automatica, 68, 392–396. Li, Haitao, Zhao, Guodong, Weng, Min, & Feng, Jun e (2017). A survey on applications of semi-tensor product method in engineering. Science China. Information Sciences. http://dx.doi.org/10.1007/s11432-017-9238-1. in press. Li, Rui., Yang, Meng., & Chu, Tianguang. (2013). State feedback stabilization for Boolean control networks. IEEE Transactions on Automatic Control, 58(7), 1853–1857. Li, Rui, Yang, Meng, & Chu, Tianguang (2014). State feedback stabilization for probabilistic Boolean networks. Automatica, 50(4), 1272–1278.

115

Liu, Yang, Cao, Jinde, Sun, Liangjie, & Lu, Jianquan (2016). Sampled-Data State Feedback Stabilization of Boolean Control Networks. Neural Computation, 28, 778–799. Liu, Yang, Chen, Hongwei, & Wu, B. (2014). Controllability of Boolean control networks with impulsive effects and forbidden states. Mathematical Methods in the Applied Sciences, 37(1), 1–9. Liu, Yang, Li, Bowen, Lu, Jianquan, & Cao, Jinde (2017). Pinning control for the disturbance decoupling problem of Boolean networks. IEEE Transactions on Automatic Control. http://dx.doi.org/10.1109/TAC.2017.2715181. in press. Liu, Yang, Sun, Liangjie, Lu, Jianquan, & Liang, Jingling (2016). Feedback controller design for the synchronization of Boolean control networks. IEEE Transactions on Neural Networks and Learning Systems, 27(9), 1991–1996. Lu, Jianquan, Li, Haitao, Liu, Yang, & Li, Fangfei (2017). Survey on Semi-tensor Product Method with its Applications in Logical Networks and Other Finitevalued Systems. IET Control Theory & Applications, 11(13), 2040–2047. Lu, Jianquan, Zhong, Jie, Ho, Daniel W. C., Tang, Yang, & Cao, Jinde (2016a). On controllability of delayed Boolean control networks. SIAM Journal on Control and Optimization, 54(2), 475–494. Lu, Jianquan, Zhong, Jie, Huang, Chi, & Cao, Jinde (2016b). On pinning controllability of Boolean control networks. IEEE Transactions on Automatic Control, 61(6), 1658–1663. Lu, Jianquan, Zhong, Jie, Li, Lulu, Ho, Daniel W. C., & Cao, Jinde (2015). Synchronization analysis of master–slave probabilistic Boolean networks. Scientific Reports, 5, 13437. Lu, Jianquan, Zhong, Jie, Tang, Yang, Huang, Tingwen, Cao, Jinde, & Kurths, Jürgen (2014). Synchronization in output-coupled temporal Boolean networks. Scientific Reports, 4, 6292. Luo, Chao, Wang, Xingyuan, & Liu, Hong (2014). Controllability of time-delayed Boolean multiplex control networks under asynchronous stochastic update. Scientific Reports, 4, 7522. Shmulevich, Ilya, Dougherty, Edward R., Kim, Seungchan, & Zhang, Wei (2002). Probabilistic Boolean networks: a rule-based uncertainty model for gene regulatory networks. Bioinformatics, 18(2), 261–274. Shmulevich, Ilya, Dougherty, Edward R., & Zhang, Wei (2002). From Boolean to probabilistic Boolean networks as models of genetic regulatory networks. Proceedings of the IEEE, 90(11), 1778–1792. Utkin, Vadim Ivanovich (1977). Variable structure systems with sliding modes. IEEE Transactions on Automatic Control, 22(2), 212–222. Utkin, Vadim Ivanovich (1978). Sliding modes and their application in variable structure systems. Mir publishers. Zhong, Jie, Lu, Jianquan, Huang, Tingwen, & Ho, Daniel W. C. (2017). Controllability and synchronization analysis of identical-hierarchy mixed-valued logical control networks. IEEE Transactions on Cybernetics, 47(11), 3482–3493. Zhong, Jie, Lu, Jianquan, Liu, Yang, & Cao, Jinde (2014). Synchronization in an array of output-coupled Boolean networks with time delay. IEEE Transactions on Neural Networks and Learning Systems, 25(12), 2288–2294.