1. Introduction
In recent years, complex networks have been gaining more attention in the scientific community, with a wide range of applications, from computer science to sociology [
1]. From the perspective of dynamical systems, it is possible to see a complex network as a group of interconnected systems, each one with their own dynamics and characteristics. For dynamical systems, it is often desirable to force them to follow a desired behavior, which can be performed with a controller. There are many techniques in control theory that have been developed over the years in order to achieve stability around a given equilibrium point [
2]. Using a particular method of control depends on the designer or the type of system that is being worked on. A technique developed for the control of complex dynamical networks is pinning control, which consists of controlling only a small fraction of nodes of a complex network [
3]. Numerous studies have been published around this pinning control technique, of particular interest to this study is the one of V-stability [
4], in which the stability problem for a complex network with different dynamics in its nodes is transformed to verify positive definiteness of an associated matrix.
Another technique not particular to complex networks is impulsive control, which consists of applying a control input in a non-continuous way and is carried out at rather well-defined time instants [
5]. The control and synchronization of complex networks through an impulsive input has been studied previously, as in [
6], where they propose a control method for a complex network where all node dynamics are the same, similar to [
7]. In [
8], different node dynamics are proposed, but no pinning control [
8].
On the other side, neural networks have long been studied for use in dynamical systems as they have the capacity to reconstruct nonlinear dynamics [
9,
10] by only having measurements of the system state, which is the case of the neural identifier; then, the output and the model of this neural network can be used to compute a desired control action.
The control and synchronization of complex networks is an active research area. In [
11], V-stability and inverse optimal control were used to control a complex network with different chaotic node dynamics. We use this approach in order to interpret the problem of stability of the network as a linear algebra problem that makes it easier to decide the node and gain selection. A discrete-time neural-network was used in [
12,
13] to synchronize a continuous-time dynamical complex network with an inverse optimal control and sliding mode approach respectively. This work also makes use of neural identification for the great advantage that it represents, accounting for unmodeled behavior and disturbances, which is a matter of study in this work. In [
14], a neural network was used to control the network along with V-stability analysis to determine the pinned node. Most of these previous works deal with continuous-time complex networks [
12,
13,
14], but not discrete nor impulsive complex networks. We aim to study discrete-time complex networks for their relevance, as any system governed by a computer processor is essentially discrete. A robotic system network may be a good fit to exemplify this case. For impulsive systems, there are few works that deal with discrete systems. In [
15], there is a compilation of distinct stability analysis for impulsive systems like the one in [
16], where they show stability conditions for a specific type of discrete-time impulsive systems, which is that the impulse dynamics are linear. This is something that often appears in impulse systems [
15]. This is not the case of the study presented here, as will be seen in later sections. Impulsive complex network systems are also important for their potential use in biomedicine. Practical stability for impulsive systems was investigated in [
17], where they consider impulsive perturbations and
h-manifolds.
The focus of this paper is based on V-stability and an experimental approach, where we work together the different control schemes mentioned above in order to control a discrete-time complex network with different dynamics in its nodes, with an impulsive control law that is synthesized with the neural model. The controller presented in this paper has characteristics of the different control schemes that conform it, like the unnecessariness of the dynamic model, reducing process cost, and reducing the number of local controllers in the complex network.
The remains of this paper is organized as follows. First, complex networks and their dynamical model are briefly described. Then, the concept of V-stability and the process of selecting nodes to control is described. After that, the parameters used in simulations are introduced. Later, impulsive systems are briefly explained, and we present the model used for the impulsive control simulations. Then, recurrent high order neural networks and the identifier used in this paper are discussed. After that, the results are presented and discussed. Lastly, a conclusion of this work is presented.
2. Some Complex Network Theory
Complex networks can be described as a set of
nodes in which any pair of nodes in the set may be connected by a link. This connection between nodes may be directed or undirected and can also be weighted. The number of connections a node has is called the degree and is often denoted by the letter
. This letter
is of much importance to complex networks since one can assume several properties based on the distribution of node degrees in the network [
18]. Degree distribution in form of a power law, for example, is called a scale-free network, and this kind of network shows a few nodes with a large number of connections and a majority of nodes with a small number of these connections [
19].
Nodes of a complex network and their connections can have different meanings [
20]. Our interest here is to consider the nodes as dynamical systems and the connection between them as communication between the different node dynamics that together form a bigger and more complex system.
Consider then, the next dynamical model of a complex network with
nodes and linear and diffusive connections [
11].
where
is the state vector of node
. Function
represents the self-dynamics of node
. Constant
is the connection strength between node
and node
. Matrix
is an outer coupling matrix that describes the network topology, with
when there is a connection between node
and node
,
when there is no connection between node
and node
, and when
, the diagonal elements of matrix
are
, where
is the degree (number of connections) of node
. The symmetry of matrix
indicates that the connections are undirected. Matrix
is an inner coupling matrix that describes the connections between different components of the state vector.
There are previous works about how to drive system (1) to stability [
1]. A very common method is the pinning control approach, in which only a few nodes of the network are controlled (or even just one node) [
1,
3], the nodes selected for control is still a matter of research but in [
3] it was found that for scale-free networks, selecting the largest nodes (nodes with the largest number of connections) is most useful.
3. V-Stability
The theoretical analysis presented in this paper is based on the theorem of V-stability presented in [
4], under this premise we must find a common Lyapunov function
for each node dynamics that satisfies:
for all
, where
is equal to the union of all
,
is the equilibrium point. As long as this condition holds for the nodes’ self-dynamics, then the V-stability methodology can be applied to any given network [
4]. The constant
is called the passivity degree and is not unique, the theoretical passivity degree is defined to be the largest one, but in practice, any value that satisfies the inequality may be chosen [
4]. The physical meaning of this method is that there is an energy-like function that is common to all nodes, such that the energy of said function is decreasing along with the evolution of node dynamics. A positive passivity degree means that the node is stable and that it can provide some energy to stabilize the network. A negative passivity degree, on the other hand, means that the node needs energy from the outside to be stable [
4]. This method depends greatly on the function
and constants
, that is why it is called V-stability.
If we use a quadratic Lyapunov function of the form
, where
is a symmetric and positive definite matrix, then we can change the original stability problem to check if the following inequality is true:
where matrix
is a diagonal matrix with passivity degrees
as its elements, and matrix
. The network (1) is V-stable if (3) is true.
For an unstable network, we can stabilize it with a control action. As mentioned before, with pinning control we can control a network by just controlling a small fraction of the nodes which is more practical than controlling every node of the network. For this purpose, we check the eigenvalues of matrix
, and if has
non-negative eigenvalues then we need at least
nodes selected for control [
4]. The characteristic matrix of a controlled network is:
where
is a diagonal matrix with
elements
and the remaining elements equal to zero. Elements
must be chosen such that characteristic matrix
is negative definite. The values selected can be seen as the feedback gain in the control input
of the form:
for all the nodes selected for control.
4. Simulation Preliminaries
Here, we introduce the 20-node network, with some scale-free characteristics, used for the experiments shown in this paper. This network is illustrated in
Figure 1.
For coding purposes, we consider a discrete version of the model (1) with a control input for the nodes selected for control:
where
is the sampling time. Parameters of the network are:
where
Connection strength
is equal to all nodes and is chosen as:
Matrix
is an identity matrix of the order of the state, which is 3:
Control input is:
with constant
and only when node
is selected control, if not, the control input is zero. Node self-dynamics are determined by the equations of the following chaotic attractors:
which is the Lorenz system with its parameters as they appear in [
21].
which is the Chen system with its parameters as they appear in [
22].
which is the Lü system with its parameters as they appear in [
23].
which is the Qi system with its parameters as they appear in [
24].
which is the Chua system with its parameters and:
as they appear in [
25].
We first make the continuous analysis of V-stability and then we apply the results of this analysis to the discrete network (6). First, we obtain the passivity degree
for each node using the function
, the equilibrium point
, and inequality (2) obtaining.
for the Lorenz system,
for the Chen system,
for the Lü system,
for the Qi system, and
for the Chua system.
It can be seen that there is no clear value for the passivity degrees, it all depends on the set
of interest. Defining an arbitrary set, we obtain the next rough set of values for the passivity degrees shown in
Table 1.
With these values, we can now construct the diagonal matrix
and with this, also matrix
and we can obtain its eigenvalues. Only one of the eigenvalues results non-negative, meaning that we need at least one controlled node. We thus construct matrix
with only one non-zero element, we select the element
to be non-zero so we control node 3, based on the number of its connections. If we select
and check for the eigenvalues of
, we can verify that the matrix is now negative definite which means that the network is now stable. A MATLAB
® simulation of the resulting dynamics using sample time
can be seen in
Figure 2.
The concept of V-stability refers to a characterization of node stability. The passivity degree expresses how stable or unstable the node in question is. In case the system is stable, we could verify the gain in which the system becomes unstable (in case of such gain exists). In the unstable case, we search for the gain in which the system becomes stable, like we did in this section. The advantage of this characterization is that it defines the stability of a given network with the negativity of matrix (3) (or (4) when it is in a closed loop), this facilitates the node selection by establishing the number of non-negative eigenvalues which is the minimum number of pinned nodes to control.
5. Impulsive Systems
Our goal is not to verify the V-stability method, which gives an interesting result on how many nodes to control, but to apply it while using a neural network as an identifier in order to synthesize control law for the controlled node state, and also verify how it works under and impulsive control scheme and noise conditions.
A time-dependent impulsive system in simple form can be written as [
5]:
This means that there is a certain dynamic in the system given by , but when time gets to , it changes to just for that time instant.
Extrapolating this to our complex network discrete model (6), we can write our system as:
and
if node
was not selected for control.
We see that the only thing that changes in the pulse dynamics (when ) is that there is a control input that only appears at time . We define as being every and every , this means that control input appears every five times the sample time and every ten times the sample time, whit sample time , for all simulations.
We cannot be sure the V-stability method works with something like this—that is where the experimentation enters in. Before that, we shall introduce the last concept.
6. Neural Identifier
Artificial neural networks have different applications depending on their configuration [
26]. A recurrent high order neural network (RHONN) is good at approximating the behavior of continuous and discrete dynamical systems [
9,
10].
For a discrete RHONN, we consider the model [
10]:
where
is the state of the
th neuron at time step
,
is the dimensión of the state,
is the adaptable weight vector, and
is defined as:
where
is the number of high order connections,
is a collection of
unordered subsets
, and
is a vector formed by the inputs of each neuron defined as:
vector
here is the input vector to the neural network.
is a smooth, monotonically increasing sigmoid function [
10,
21].
The discrete RHONN can be trained by using the extended Kalman filter (EKF) algorithm. Necessary equations for the EKF algorithm are [
10,
27]:
where
is the Kalman gain matrix.
represents the error covariance matrix.
is the matrix containing the derivatives of each network output with respect to each one of the weights, that is:
is the measurement error covariance matrix. is the weight vector, is the number of weights of the neural network. is the output vector; is the number of outputs, is the neural network output, the difference of these two represents the error signal. is the process error covariance matrix.
The neural identifier used is based on the described model (24) of discrete RHONN and it has the following structure:
where
is the sigmoid function:
The neural network weights
, are obtained by training the RHONN with the EKF algorithm. In this case, subscript
denotes the weight vector element, subscript
denotes the state element to identify, and subscript
is the aimed node identify. Weights are computed separately for each state element. Algorithm equations used for training are the ones in (27), (28) and (29), that become:
with initial
:
and the rest of the parameters as:
All these parameters were heuristically determined. Initial weight values are positive random values no bigger than 1.
With this, we can synthesize control law as:
where
is estimated by the analysis completed in
Section 3 and
is determined by the network (31).
7. Results
Using the models (6) and (23), with parameters used in
Section 4, and neural network parameters mentioned in
Section 6, simulations were made in MATLAB
®. One of the experiments is made with the model (6) as it is, and in the other, random noise is added to the system. We make the simulations for three different control schemes:
- (a)
Continuous in discrete time
- (b)
Control impulses every 5T
- (c)
Control impulses every 10T
Experiments were carried out as follows. All the nodes are unconnected at the beginning of the simulation. At time 2, the nodes connect with each other according to matrix
, matrix
, and constant
, defined in (7), (9), and (8) respectively. At time 4, the synthetized control law appears according to what is observed in (a), (b), and (c). All initial conditions for the node states are random. A general scheme, of the proposed control strategy, is shown in
Figure 3.
The results of simulations are shown as follows:
Figure 4 shows the network dynamics when the system does not have noise for all three control schemes.
Figure 5 shows the network dynamics when there is noise in all of the nodes in the network. It is important to note that all of the node self-dynamics are a set of dimensionless chaotic systems.
We can observe that the impulsively controlled systems stabilize, but not as close to zero as the one controlled continuously. If we increase the control gain to
when the control input is applied every 5T and
when the control input is applied every 10T we can obtain better results for the case when there is no noise as shown in
Figure 6. Doing the same in for the case with noise, we observe in
Figure 7 that we can cause more noise in the system.
8. Discussion
As detailed in
Section 5, we could not assure that the V-stability method works for the impulsive control schemes, but completing the analysis provides us with a good idea to how many and what nodes to pin, and we also obtain an estimate for the control gain value.
While we achieve stability in zero with the impulsively controlled unnoisy systems, we had to increase the gain to do it. In the case of noise, we observed more noise; therefore, perhaps another solution is more suitable.
In this kind of problem, it is always very tempting to stabilize the network using only one controller for one node. If we go back to the V-stability concept of
Section 3, we can control the network described by matrix (7) with at least one pinned node, and we did this by checking the stability of matrix
in (4) with a matrix
that we designed. We can choose to pin two nodes of the network by making two diagonal elements
of
different to zero. Hypothetically, if we make
, that is, we control nodes 3 and 4, we can verify that by doing this, all eigenvalues of
are negative, which means that the complex network is stable. Running another simulation of the unnoisy and noisy systems for the different schemes provides us with the results of
Figure 8 and
Figure 9 respectively.
We see that the impulsively controlled network performs similar to its one-pinned node counterpart, but with less than half the energy for both nodes. Increasing the gains to
for the 5T case and
for the 10T case, we obtain better results that are shown in
Figure 10 for the no-noise case and
Figure 11 for the case with noise.
Since a large enough gain can provide adequate performance, it can require inputs with a large amount of energy that are not possible to implement, in such case an option is to select more nodes to pin (but not all of the available nodes).
A formal analysis of the V-stability method for discrete and impulsive complex network systems may be a good direction for future work.
The results show that neural network works and adapts well as the same structure was used to identify the dynamics of node 4 and synthesize its control law.
We can reproduce these results with other networks using different parameters (number of nodes, connections, connection strength, etc.) as long as the self-dynamics of the nodes satisfy condition (2) discussed in
Section 3, for some passivity degree
. It is important to note if that we use the same network as before, but with a connection strength reduced to
, constructing matrix
again and checking for its eigenvalues, we still obtain the information that there is only one non-negative eigenvalue, but setting the same gain
is not sufficient to make matrix
negative definite.
Figure 12a shows the network node dynamics with a controller with this gain, and we can see that it starts to diverge from zero at the end of the simulation. If we make
matrix
will become negative definite, so we use this gain to control the network with a continuous input in discrete time as we see in
Figure 12b. Based on the results of
Figure 6 and
Figure 10, we increase the gain to
for the case where the control impulses are every 5T, and
for the case where control impulses are every 10T. These last results are shown in
Figure 12c,d respectively. These results were also obtained using the RHONN of past simulations.
Using a smaller connection strength results in requiring more effort in order to stabilize the network. In fact, if we use a connection strength of
, the analysis tells us that the minimum number of controllers must be 18. If we use the ten-node network described by matrix (41) with node self-dynamics in the same order as past simulations and a connection strength of
, from V-stability analysis on this network, we see that the associated matrix
has one non-negative eigenvalue, by pinning the first node, that has seven connections to other nodes, with a gain of
we can make matrix
negative definite. As before, we increase this gain to
for the case where the control input is applied every 5T and
when the control input is applied every 10T, these results can be seen in
Figure 13. The RHONN used before was also used here.
The same analysis was performed to the fifty-node network shown in
Figure 14, with a connection strength
, and node self-dynamics appearing in the same order as past networks. V-stability analysis tells us that we need at least one controller for this network, but the bigger the network is, the harder it becomes to determine which node we should select to control. In order to facilitate the process, we select the three biggest nodes for control (nodes with the largest number of connections), these are 1, 2 and 7. With a gain
we can make the associated matrix
negative definite. We apply this to the system that is continuous in discrete time and we increase the gain to
for the case where the control input is applied every 5T, and
for the case where the control input is applied every 10T. These results are shown in
Figure 15. As before, we use the same RHONN structure as in past simulations.
Four additional topologies, illustrated in
Figure 16, were simulated. New topologies consist of a five-node network with
, and a 13, 15, and 25 node networks with
. All of the node self-dynamics appear in the same order as past simulations. V-stability analysis for these topologies indicates that only one node is needed for control in all of them. Gains used are shown in
Table 2, where the subscript of
indicates the pinned node, gains for the cases where the control input is applied at every time step are determined by the V-stability analysis, gains are increased for the rest of the cases. Starting from where the control input is applied (when time equals 4), to the end of the simulation (when time equals 6), mean square error and variance of all state elements of the network were obtained, and they are also presented in
Table 2.
9. Conclusions
The concept of V-stability is studied and applied for a discrete-time complex network with continuous discrete-time and impulsive control schemes. A neural network was implemented as an identifier to synthesize the control law. The different control schemes were able to drive the system to state zero with some modifications made to analyze results in the case of the impulsive schemes. A formal rework of V-stability for impulsive complex networks may be a good research area as it proves to be a useful tool for continuous and continuous in discrete-time dynamical complex networks. One disadvantage of this method is the necessity to check eigenvalues of a given matrix, as the difficulty to do this increases as the network grows in size, although the 20-node network used here and some that are bigger are still manageable for unspecialized computer equipment.
In this work, we applied a novel neural-impulsive pinning control for complex networks for seven different topologies, each one with three different scenarios: input applied every time step, input applied every 5T, input applied every 10T, and the control design was carried out based on V-stability in order to stabilize the network states at zero, and all cases have an excellent evolution, as shown by the results presented in
Section 7 and
Section 8, showing the effectiveness of the proposed methodology for different complex network topologies with different dynamics in each node, without the need to apply control in every node at every time step.
An important area of application of the class of system considered in this paper is for biomedical purposes. Impulsive systems adapt well to how most of the treatments are administrated for different kind of diseases. In particular, a complex network approach, in this case, could represent the interaction between different individuals or a group of these people with specific relation to infectious diseases. These kinds of applications are considered as future work.