Abstract

In this paper, the trajectory tracking control and the field programmable gate array (FPGA) implementation between a recurrent neural network with time delay and a chaotic system are presented. The tracking error is globally asymptotically stabilized by means of a control law generated from the Lyapunov–Krasovskii and Lur’e theory. The applicability of the approach is illustrated by considering two different chaotic systems: Liu chaotic system and Genesio–Tesi chaotic system. The numerical results have shown the effectiveness of obtained theoretical results. Finally, the theoretical results are implemented on an FPGA, confirming the feasibility of the synchronization scheme and showing that it is hardware realizable.

1. Introduction

Neural networks can be considered as nonlinear mathematical functions whose parameters are adjusted to describe the behavior of a static or dynamic system [1]. According to their structure, neural networks can be classified as static neural networks or dynamic neural networks. The static neural networks are capable of approximating any function using static mapping [2]. Meanwhile, dynamic neural networks, also called recurrent neural networks, have feedback connections that give them higher capability than static neural networks. For example, recurrent neural networks can reproduce the dynamic response of a dynamic system due to their feedback connection. They can also overcome many problems related to static neural networks, such as extreme global search, and consequently, have better approximation properties [3]. Recently, due to the richness of dynamic behaviors from recurrent neural networks, they have received much attention and been investigated in a wide variety of applications in diverse fields such as in associative memory [4], neurodynamic optimization problems [5], pattern recognition [6], image processing [7], and so on [8, 9].

It is well known that the time-delay phenomenon is an inherent feature of many physical processes such as nuclear reactors, chemical processes, and biological systems. Usually, it is considered a source of oscillation and divergence, leading to system performance degradation or even generating instability [9]. A delayed neural network can generate complicated dynamic behaviors such as boundedness, periodicity, stability, chaos, and synchronization [10]. Synchronization is a fundamental behavior of recurrent neural networks. Hence, many researchers devote their effort to studying the delay effect on drive-response synchronization. Indeed, the drive-response synchronization of recurrent neural networks cannot be achieved individually, so external input signals should be considered in the neural network response. Many efficient control approaches have been designed to control or achieve the synchronized state in the literature, such as linear feedback control, active control, intermittent control, adaptive control, event-triggered control, pinning control, and impulsive control, among others [1113]. In particular, the Lyapunov–Krasovskii approach has demonstrated to be an efficient method to deal with the global asymptotic stability of recurrent neural networks with time delay. In [14], the global synchronization of multiple recurrent neural networks with time delays under a switching topology via impulsive interaction is given. An exponential synchronization method for an uncertain drive and response neural networks with mixed time delays was presented based on a Lyapunov–Krasovskii functional and free-weighting matrices [15]. The synchronization of delayed neural networks with hybrid couplings by employing the Lyapunov functional method and the Kronecker product technique is used to guarantee the global synchronization in coupled networks [16]. In [17], the global asymptotic synchronization for a class of delayed neural networks is investigated. In [18], the pinning synchronization in an array of coupled delayed neural networks with both constant and delayed couplings is presented, showing that the network can be pinned to a homogenous state by applying adaptive feedback control. It is worth noting that the Lyapunov–Krasovskii approach has been demonstrated to be an efficient method to deal with the global asymptotic stability of a recurrent neural network with time delay [19, 20]. In [21], the stability of linear continuous-time systems with time delay by employing new Lyapunov–Krasovskii functionals is presented. New Lyapunov–Krasovskii functionals are proposed to achieve the synchronization behavior of delay neural networks with two time scales for the fixed and adaptive coupling schemes [22]. Some new Lyapunov–Krasovskii functionals are developed by nonuniformly dividing the delay interval into multiple segments and choosing proper functionals with different weighting matrices corresponding to different sections in the Lyapunov–Krasovskii functionals proposed in [23]. In [24], the global stability of a system composed by identical Hopfield neural networks with time-delayed connections is presented by constructing a Lyapunov–Krasovskii functional.

Inspired by all the above works, this paper focuses on the problem of tracking a given reference trajectory. It proposes a trajectory tracking scheme in which a time-delay neural network is forced to follow a chaotic system’s reference signal, achieving a drive-response synchronization state between the neural network and the chaotic system. The control law that guarantees the trajectory tracking problem solution is obtained by using the Lyapunov–Krasovskii and Lur’e approach. The pertinence of the approach is demonstrated by considering two numerical examples. In each example, synchronization with one chaotic oscillator is addressed, and the derived control laws are tested via numerical experimentation. The Genesio–Tesi and Liu systems are considered. Although the proposed scheme could be useful to follow other nonlinear systems, we decide to restrict this work using only these two chaotic systems because their tracking can be more challenging than other tracking problems such as the reproduction of the gait cycle in humanoids [25] or the trajectory tracking in different mechanical systems [26] and complex systems [27]. In all the former cases, the movement may be softer and periodic.

Additionally, the FPGA technology is used to implement the proposed scheme by using a NI c-RIO-9068 device with a Xilinx Zynq-7000 XC7Z020 FPGA. The hardware implementation results confirm the feasibility of the proposed scheme. We decided to implement the entire scheme on the same chip, i.e., the system to be tracked, the recurrent neural network with time delay, and the derived control law are implemented on the same FPGA chip.

This article is organized as follows. In Section 2, the construction of the mathematical model is given. The control law of delayed neural network and global asymptotic stability conditions are shown in Section 3. The numerical results showing the applicability of the theory are given in Section 4. Section 5 provides experimental results based on FPGA implementations. Finally, we conclude the paper in the last section.

2. Preliminaries

Consider the following time-delay neural network model:where is the state vector associated with the neurons; with with being positive constants representing the rate with at which the neural network will reset its potential to the resting state when disconnected from the external input; represents the delayed connection weight matrix; is the activation function; is the transmission delay; and is an external input vector.

The following properties are assumed for the activation function [28, 29]:(1) is bounded and monotonically nondecreasing on .(2)The activation function is Lipschitz continuous, that is, there exists constant such that

The system to be tracked by the recurrent neural network with time delay (driving system) is defined as an autonomous -dimensional dynamical system given bywhere is a -dimensional state vector, with defining a vector field . In this paper, (3) is a nonlinear system that generates chaotic behavior.

We continue by presenting the Lyapunov–Krasovskii approach. This method is the natural extension of the second Lyapunov approach associated with the stability analysis of functional differential equations [30]. It consists of considering functionals of the form that are positive definite and decreasing along the trajectories of system . The Lyapunov–Krasovskii theorem is expressed as follows.

Theorem 1 (see [30]). Let , and be nondecreasing functions such that and are strictly positive for all . Let and . Assume that the vector field of is bounded for bounded values of its arguments. If there exists a continuous and differentiable functional such that(a)(b) for all trajectories of then the solution is uniformly stable for .
Finally, we add two definitions that will be used to analyze equilibrium points.

Definition 1. An equilibrium is called a saddle point of index 1 if has one eigenvalue with nonnegative real part (unstable).

Definition 2. An equilibrium is called a saddle point of index 2 if has two unstable eigenvalues.

3. Trajectory Tracking for a Recurrent Neural Network with Time Delay

While the main objective of the work is to present the proposed tracking scheme and its hardware implementation, the main objective of this section is to develop a control law such that the delayed neural network (1) tracks the solution of the dynamical system (3).

3.1. Dynamical Analysis Error

Define the tracking error as , where the respective error dynamics are

Substituting (1) and (3) in (5), the dynamics of the error are governed by the following equation:

Adding and subtracting to (6) the terms , , and , we havewhere is the function to be determined. In order to guarantee that the neural network given in (1) can track the reference trajectory of dynamical system (3), the following assumption has to be satisfied [31].

There exist functions and such that

Therefore, from (3) and (8), we obtain thatand thenso that (7) becomeswith and . It is clear that is an equilibrium point of (11) when . In this way, the tracking problem can be expressed as a global asymptotic stabilization problem for system (11).

3.2. Error Stabilization and Control Design

In order to establish the convergence of (11) to , a Lyapunov–Krasovskii functional is proposed ensuring the desired tracking. The Lyapunov–Krasovskii analysis is a Lyapunov-inspired method that consists of proposing a functional of the state , which should be positive and decreasing definite along the trajectories of the system. This is essential for the design of a globally and asymptotically stabilizing control law for time-delay systems [20]. In this work, the following Lyapunov–Krasovskii functional is proposed as in [19, 32]:where the expression is proposed to analyze the stability related to error , whereas the expression is envisioned to analyze the effect of the delay ; note that this term vanishes as .

In this manner, the time derivate of (12), along the trajectories of (11), was computed using the fundamental theorem of calculus as follows:

Substituting (11) in (13), we get

Regarding , equation (14) can be denoted as

Consider the inequality [19]:which holds for all matrices and a positive definite matrix . To prove the inequality (16), we consider. Denoting and , we obtain .

Applying (16) with to the term , we get

Simplifying (17), the following is obtained:

Because is a sector function with respect to , there exist positive constants and such that , where is used to denote the Euclidean norm. From ,

Then, there exists a positive constant such that . Henceforth, (18) can be written as follows:

Simplifying (20), we have

Since is Lipschitz, we consider (20) applied to , obtainingwith being the Lipschitz constant of .

Replacing (22) in equation (21), the following expression is obtained:

Now we consider the control law given as follows:

Then, substituting (24) in (23), we obtain

Then, for all . This means that the proposed control law can globally and asymptotically stabilize the error system, thus ensuring the tracking of (1) by (3) achieving the synchronization, which means that holds; moreover, this implies that the both systems have reached the synchrony state (synchronization).

Finally, the control action driving the recurrent neural network is given by

We summarize the developed analysis in the following theorem.

Theorem 2. The control law defined as in (26) ensures that the time-delay neural network established in (1) tracks the dynamical behavior generated by the reference system (chaotic system) (3).

4. Numerical Simulations

In this section, computer simulations are presented to confirm the applicability of the results proposed previously, which are applied to two dynamical systems that generate chaotic behavior.

4.1. Synchronization between Delayed Neural Network and Genesio–Tesi System

In 1992, Genesio and Tesi proposed a chaotic system known as the Genesio–Tesi system [33]. It is described by the following simple three-dimensional autonomous system with only one quadratic nonlinear term:where is the vector state and with are positive real parameters. System (27) has two equilibrium points and . The parameters and initial conditions of (27) are chosen as , , , , and . The corresponding eigenvalues of equilibria , and their stability are described in Table 1. The Lyapunov exponents for system (27) are which according to [34] make the system chaotic. The algorithm employed for determining Lyapunov exponents was proposed in [35]. Its Kaplan–Yorke dimension is , and the phase plane of the chaotic system is displayed in Figure 1. In addition, the bifurcation diagrams of system (27) in terms of the parameters and are plotted in Figures 2(a) and 2(b), respectively. Moreover, the bifurcation diagrams are obtained by plotting the local maximal of the state variable denoted as in Figures 2(a) and 2(b).

By considering the following delayed neural network defined as in equation (1), we getwhere is the control action applied to the recurrent neural network defined as in (24) and defined bywhere is a real constant defined as follows:

The initial values of the delayed neural network are taken as ; also, we consider a delay . In Figure 3, the results are shown.

Figure 3(a) shows the time evolution of the state variables (purple line) and (olive line) that corresponds to the chaotic system and delayed neural network, respectively, and we observe that both solutions evolve independently until , that is, when the control law begins to activate. In Figure 3(b), the error between the state variables and with are given, respectively.

4.2. Synchronization between Delayed Neural Network and Liu System

Now, in this instance, we demonstrate the applicability of the discussed results considering the delayed neural network (1) described as in the previous example, i.e., equation (28), where the reference model to be tracked is the Liu system.

Liu et al. introduced in 2009 a three-dimensional autonomous chaotic system which is based on two multipliers and one quadratic term to introduce the nonlinearity necessary for folding trajectories [36]. The Liu chaotic oscillator is defined as follows:where . Its parameters are chosen as , , , and . The equilibrium points, eigenvalues, and stability of the system are represented in Table 1. By considering the following initial conditions , the Lyapunov exponents are , which according to [34] confirm that the Liu system is a chaotic oscillator. The algorithm employed for determining Lyapunov exponents was proposed in [35]. Its Kaplan–Yorke dimension is . The phase planes of Liu chaotic oscillator are displayed in Figure 4. In addition, the bifurcation diagrams of system (31) with the parameters and are displayed in Figures 5(a) and 5(b), respectively. Moreover, the bifurcation diagrams are obtained by plotting the local maximum of the state variable denoted as in Figures 5(a) and 5(b).

The initial values of the delayed neural network are taken as ; also, we consider a delay . Simulation results are presented in Figure 6.

Here we consider the control law defined aswhere is a real constant given as in (30). Furthermore, Figure 6(a) presents the time-evolution of the delayed neural network (28) and the chaotic system (31), where they evolve independently until seconds; at that time, the proposed control (32) law is incepted. Finally, in Figure 6(b), the error between states is displayed.

5. FPGA-Based Implementation

The digital implementations of chaotic systems have attracted increasing interest in the last few years [37, 38]. They provide certain advantages in comparison with analog-based systems, like accuracy and possible integration in embedded applications, especially in data encryption and secure communications, which exhibit various practical difficulties like the sensitivity of components to temperature, aging, etc. Recently, the digital-based chaotic implementations are realized considering different numerical circuit-based integrated systems like digital signal processors (DSPs), application specific integrated circuits (ASIC), and FPGA. But the FPGA implementation designs overcome the problems related to AISC and DSP-based applications; this is due to the excellent trade-off between computational power and the performance and reliability which it provides.

In this section, the FPGA realizations for the systems previously shown are addressed. We present two implementations: one of them implements the systems shown in Section 4.1 and the other implements those shown in Section 4.2. Both implementations were done into a Xilinx Zynq-7000 XC7Z020 FPGA chip. The LabVIEW FPGA compiler software and the National Instruments cRIO-9068 hardware were used. cRIO-9068 has attached the FPGA chip and the NI-9264 module. The NI-9264 module allows each design to have six analog outputs from 0 to 10 volts. Both designs use the states of the neural network and the chaotic system as outputs.

5.1. Description of the Designs

All the mathematical operations were done using fixed-point (FXP) arithmetic. FXP was chosen to reduce the hardware cost and achieve higher speeds. We use 30 bits to represent each state of the neural network and the chaotic system; specifically, we use 7 bits for the integer part and 23 bits for the fractional part. In digital systems, the chaotic behavior may be affected by time discretization or low-resolution FXP arithmetic. In our case, we compute the maximum Lyapunov exponent (MLE) from the FXP sequences related to the implemented Liu and Genesio–Tesi systems by employing TISEAN package software [39]. The obtained values were as follows: MLE = 0.0664 for the Genesio–Tesi system and MLE = 0.0782 for the Liu system. The positive value for each MLE confirms chaotic behavior and validates the FXP resolution and the sampling time used.

5.1.1. Top Level

The top-level description of each implementation is shown in Figure 7, where represents the sample index. In this work, the top-level description used allows to implement the tracker and the system to be tracked on the same chip, and is composed of the following modules: (a) the chaotic system to be tracked, (b) the delayed neural network, (c) the control law, and (e) the integration method. Note that the block diagram in Figure 7 applies to both designs.

5.1.2. Secondary Level

The dynamics of the chaotic system, which are represented in the dashed block labeled as (a) in Figure 7, are given by the time-discrete version of (27):for the Genesio–Tesi case, and by the discrete version of (31):for the Liu case. In both cases, FXP multipliers and adders were used to perform the arithmetic operations involved.

The dynamics of the delayed neural network, which are represented in the dashed block labeled as (b) in Figure 7, are given by the discrete version of (1):where the function was approximated by its fourth-order Taylor series, and FIFO buffers implemented on the block RAM of the device were used to perform the delay of samples in the three states. Six FIFO registers were used, each one with 16384 elements of 30 bits each. With this configuration, a delay of samples is generated in all the states.

The control law applied to the neural network (35) is represented in the dashed block labeled as (c) in Figure 7. It was implemented as follows:where for denotes the error sequence.

Finally, shift registers were used to perform the numerical integration. In order to use an integration time of seconds, a mod- counter is inferred to derive an enable tick for all the registers each seconds, where ticks. The Euler method is based on the definition of the derivative operator and was selected to perform the numerical integration in order to reduce the complexity of the design due to its maximum simplicity. The block description of this method is presented in the dashed block labeled as (d) in Figure 7, which is described aswhere .

5.2. Implementation Results

The resources used for each design are presented in Table 2. The total amount of resources employed was obtained from the NI-FPGA compiler report. The minimal amount of ticks needed to get a new valid sample was computed using the LabVIEW FPGA tick count function. Its value was the same for both designs addressed. The achieved latencies for both designs are expressed as .

The states of the chaotic system and the neural network were scaled to six analog outputs of the NI-9264 module within the range of 0 to 10 volts. These outputs were monitored by a Tektronix TDS5104B digital oscilloscope. The results for the system implementation are given in Figures 8(a)8(d). The phase portraits , , and are described in Figures 8(a)8(c). The time evolution of , , and is shown in Figure 8(d). Regarding the performance of the neural network, the phase portraits , , and are shown in Figures 9(a)9(c). Note that each phase portrait evidences a line, which is related to the correct tracking performed by the time-delay neural network. Additional evidence of the tracking is shown in Figure 9(d) where the time evolution of and and its error is described.

In addition, similar results were achieved for the Liu system. The results for the Liu system are shown in Figures 10 and 11 .

5.3. Comparison with Other Works

Synchronization is an emerging behavior in neural networks. It has received academic attention because of a wide variety of applications [3, 8]. Schemes that consider chaotic systems and delayed recurrent neural networks are of particular interest due to the high complexity depicted in their sensibility to initial conditions, parameters, and time delays. For that reason, synchronizing or controlling these schemes is challenging work; even more, the practical implementation is not a trivial task. In this section, we perform a survey to demonstrate the pertinence of the proposed control method and the digital implementation. In Table 3, some synchronization schemes in a drive-response configuration are displayed with their respective control approaches. From the information depicted in Table 3, reference [40] considers the implementation of a synchronization scheme on an Arduino chip while the rest of the references only consider numerical results. In this paper, we implement the chaotic system (27), the delayed recurrent neural network (28), and the control laws (29) and (30) in an FPGA.

Table 4 presents a brief review, including some FPGA-based implementations of chaotic systems over the last ten years. Table 4 does not include detailed characteristics like the chip resource usage and the achieved performance because these parameters are hardware dependent. Instead, it includes generalized details like a brief description of the application, the numerical representation, the integration method, and the hardware used.

From Table 4, it can be seen that the implementation of a single chaotic system is a common practice. However, recent works include a chaotic node as a module of a bigger scale system, for example, a complex network in [38], an OFDM transmission system in [52], or a tracking scheme (this work).

It can also be seen that fixed-point (FXP) and floating-point (IEEE-754 FLP) implementations are equally used. The numerical representation selected in each work is related to a trade-off between accuracy and resource usage. It is evident that, in general, FXP representations require fewer resources and achieve better time performance, while an FLP representation has better numerical accuracy than FXP.

The integration method is used to implement a discrete version of the system. In Table 4, we found a prevalence of the following methods: fourth-order Runge–Kutta (RK4), forward Euler, and Heun. Note that the numerical integration method is not correlated to the date of the work, as we can see recent works using forward Euler and older works using a more complicated RK4 algorithm. Again, as the numerical representation, the integration algorithm selection is based on a trade-off between the accuracy and complexity of the design.

There is a diversity of devices and software platforms used for the FPGA fast prototyping. Some devices are displayed in the last column of Table 4, while some examples of the software platforms are the Matlab HDL Coder (used in [48]), the LabVIEW FPGA software (used in [46]), and Xilinx design suites like ISE and Vivado (used in [49, 52]). In this work, we use LabVIEW FPGA environment. This programming environment is well suited for the system-level design of prototypes.

6. Conclusions

In this paper, the trajectory tracking for a nonlinear system with a time-delay neural network was obtained. In particular, neural networks are forced to follow reference signals generated by a chaotic system, thus achieving the synchronization state. The control law that guarantees trajectory tracking was obtained by considering the Lyapunov–Krasovskii and Lur’e theory. The applicability of the approach was illustrated by considering two different chaotic systems: Liu’s chaotic system and Genesio–Tesi chaotic system. Numerical simulations and FPGA implementations were presented to show the effectiveness of obtained theoretical results. The results obtained allowed us to demonstrate the successful implementation of these trajectory tracking examples on FPGA. Moreover, we confirm that the Lyapunov–Krasovskii theory is an efficient method to deal with the global asymptotic stability of a recurrent neural network with time delay. The synchronization of chaotic systems and the neural networks on different chips streamed through a physical channel could be addressed in a future continuation of this work. It should consider the channel and its properties, and it may be useful in the area of secure communications, where it is common to use the synchronization of chaotic systems as an encryption tool.

Data Availability

The data set used to support the findings of this study is available from the corresponding author upon request.

Conflicts of Interest

The authors declare that they have no potential conflicts of interest.

Acknowledgments

J. Perez-Padron and J. Paz-Perez acknowledge the academic group “Sistemas dinámicos” of “Facultad de Ciencias Físico-Matemáticas” at UANL. C. Posadas-Castillo, E. Zambrano-Serrano, and M.A. Platas-Garza acknowledge “Departamento de Electrónica y Automatización” from “Facultad de Ingeniería Mecánica y Eléctrica” at UANL. C. Posadas-Castillo and E. Zambrano-Serrano acknowledge CONACYT/Mexico (research grants no. 166654 A1-S-31628 and 350385). C. Posadas-Castillo and M.A. Platas-Garza acknowledge UANL (research grants IT1784-21 and IT1824-21).