Abstract

An amplitude controllable hyperjerk system is constructed for chaos producing by introducing a nonlinear factor of memristor. In this case, the amplitude control is realized from a single coefficient in the memristor. The hyperjerk system has a line of equilibria and also shows extreme multistability indicated by the initial value-associated bifurcation diagram. FPGA-based circuit realization is also given for physical verification. Finally, the proposed memristive hyperjerk system is successfully predicted with artificial neural networks for AI based engineering applications.

1. Introduction

Memristor brings the nonlinear factor with memory function [14]. The discovery of the memristor gives the possibility of the circuit with brain-like natural memory. In 2008, HP Company has triggered an upsurge in the research of memristor, among which memristive chaotic system is the main branch [57]. The amplitude control in the memristive system has also aroused great interest in chaos producing. When the coexisting attractors [8, 9] or multistable [1012] systems are considered, chaos producing becomes more and more complicated. Specifically, noise may pose a great influence on the dynamics of a memristive system by initial conditions. Li explained the mechanism of amplitude control in chaotic systems [13], and then the partial amplitude control was studied by Li et al. and Gu et al. [14, 15]. The amplitude control with one parameter is still a challenge and attractive in chaos application. At the same time, during the last decade, many researchers have discussed chaotic systems and their implementations based on FPGA [1618], where, to simulate a differential system, a proper numerical method is chosen. In fact, FPGA implementation [1923] of chaotic systems has been a hot topic in recent days. Motivated by the above discussions, in this work, the newly proposed memristive hyperjerk chaotic system with amplitude control is finally implemented by FPGA.

Chaos extends its application for synchronization [24] or data encryption [25] based on the inherent randomness. However, people also expect to grasp the whole evolvement based on the technology of artificial intelligence. In order to control the dynamics of chaotic systems, some research tried to predict the data outputting by various classes of optimization. Alatas et al. introduced the chaotic particle swarm optimization algorithm [26]. Sayed et al. introduced the chaotic multiverse optimization algorithm [27]. The chaos-based whale optimization algorithm is introduced by using chaotic systems in whale optimization processes [28, 29]. Chaotic systems are also used in the field of genetic algorithms [3033]. Artificial neural networks (ANN) [3437], fuzzy logic [38], and fuzzy neural network [39] methods have been used for predicting chaotic systems with artificial intelligence (AI). Various chaos and AI based engineering applications such as random number generator [40, 41] and cryptology [42, 43] are performed by chaos producing and image analysis with AI techniques.

In this paper, a memristor is introduced into a jerk structure for chaos producing with amplitude control and a line of equilibria. The amplitude of the chaotic attractor is controlled by a parameter in a flux-controlled memristor. In section 2, basic dynamics are analyzed including equilibria stability, bifurcation, and multistability. In section 3, FPGA implementation is designed to show that the proposed system is also suitable for hardware realization. The proposed memristive hyperjerk chaotic system is predicted with ANN for AI based engineering applications in section 4. Conclusions are given in the last section.

2. Memristive Hyperjerk Chaotic System and Basic Analysis

2.1. Model Description

Because the jerk system equation is simple in form and convenient for circuit implementation, here the magnetron memristor is introduced into the jerk system to obtain a memristive jerk system:where y, z, and are the system state variables, while x is the internal variable of the memristor. a or b is a bifurcation parameter, and c or d defines the external characteristic of the memristor. The new proposed Jerk system (1) produces chaos by the memristor nonlinearity. The integration of the input variable y of the memristor determines the internal state variable x. The excess volume shrinkage of the system . When parameter , system (1) is a dissipative system and shows chaos.

The flux-controlled memristor is defined as

The flux-controlled memristor is a function of the internal variable x related to the voltage y. When and , where . The memductance associated with the parameter and the pinched hysteresis loop against frequency is shown in Figure 1.

When , and the initial value is (0.01, 0.01, 0, 0), system (1) produces strange attractors, and the phase trajectory is shown in Figure 2. Using the fourth-order Runge–Kutta integrator, the time step is selected to be 0.005, MATLAB is used to solve the equations, the Lyapunov exponents are , and Kaplan–Yorke dimension is proving that the system is chaotic.

2.2. Equlibira Analysis

Solving equation (3),

Therefore, system (1) has a line of equilibria (x, 0, 0, 0). The characteristic equation iswhere a, b, c, and d are constants and x is an arbitrary variable. When , and the equilibrium points are stable, when . In fact, from the stability criterion of Routh–Hurwitz,and when , the nonzero eigenvalue of the system is either negative or has a negative real part, and therefore the line of equilibria is stable; otherwise, the equilibria are unstable.

Specifically, there are four types of stability for the line equlibrium points, as shown in Table 1. When x is in the range of (the green area I in Figure 3), the eigenvalue consists of a zero, a positive real root, and a pair of conjugate complex numbers with a negative real part, correspondingly the equilibrium points are saddle foci of index-1. When (the purple area II in Figure 3), the eigenvalue is shown in Table 1, the equilibrium points belong to the stable node foci. When (the blue area III in Figure 3), the eigenvalue has a pair of virtual roots, and the equilibrium points are stable which turns to be unstable when a Hopf bifurcation occurs. When x changes in the interval (yellow area IV in Figure 3), the equilibrium points are saddle foci of index-2.

2.3. Bifurcation Analysis

When b = 0.5, c = 1, d = 0.1; the initial value is (0.01, 0.01, 0, 0); and a varies in the range of [0.78, 0.9], system (1) shows a typical inverse period-doubling bifurcation. From the Lyapunov exponent spectrum and bifurcation diagram in Figure 4, we can see that when the parameter a is in the range of [0.780, 0.788] and [0.791, 0.805], the system returns chaos. When a is in the range of [0.790, 0.791], the cycle-3 attractor is generated in a very short window. When a changes in the region of [0.817, 0.840] and [0.864, 0.900], cycle-2 and cycle-1 are generated, respectively. The phase trajectories of system (1) under different parameters of a are shown in Figure 5.

When the initial value is (0.01, 0.01, 0, 0), the parameters a, c, and d are set to be 0.8, 1, and 0.1, respectively; while b changes within the range of [0.45, 0.56], system (1) also shows the inverse period-doubling bifurcation. The Lyapunov exponent spectrum and bifurcation diagram of system (1) are shown in Figure 6. The parameter b in the range of [0.450, 0.492] and [0.495, 0.502] also give the chance for chaos producing. The cycle-2 attractor exists when the parameter b changes in the interval of [0.510, 0.523]. Parameter b generates cycle-1 attractor in the range of [0.532, 0.560]. Corresponding phase trajectories of system (1) are shown in Figure 7.

Under the same initial value, and a = 0.8, b = 0.5, d = 0.1, the Lyapunov exponent spectrum and bifurcation diagram of system (1) are shown in Figure 8. The parameter c in the range of [0.85, 1.1] leads a typical period-doubling bifurcation, the system gradually changes from periodic state to chaotic state, and the trajectories of system (1) are shown in Figure 9. When the parameter c is in the range of [0.995, 1.011] and [1.016, 1.100], the system is in a chaotic state. When the value of c is changed in the range of [0.947, 0.980] and [0.850, 0.946], cycle-2 attractors and cycle-1 attractors are produced respectively.

2.4. Multistability Observation

The chaotic system is very sensitive to the initial value showing extreme multistability, which can be clearly seen from the Lyapunov exponent spectrum and bifurcation diagram under the control of initial condition x0 or y0 in Figures 10 and 11. When the initial conditions and change within the interval of [−0.11, 0.11] and [−0.18, 0.15], intermittent chaotic oscillations show up. Figures 12 and 13 show the typical phase trajectories under different initial values and . As analyzed above, when the parameters are a = 0.8, b = 0.5, c = 1, d = 0.1 and is in the region of, the system has infinitely many stable equilibrium points. In this case, we can say infinitely many point attractors coexist with chaotic attractors and periodic attractors.

Furthermore, from the bifurcation diagram of xmax in Figure 10, system (1) switches its dynamics from period to chaos at the breakpoint of x0 = 0.02. This discontinuous bifurcation mode is also proved by Figure 12, where system (1) switches the oscillation from a limit cycle to chaos. Note that all the bifurcation is realized by the initial condition, and therefore the hidden bifurcation occurs in the initial space indicating a new regime of multistability.

2.5. Amplitude Control

For a dynamical system, there are various parameters influencing the dynamics, some of which are bifurcation ones and some define the geometric properties. In the chaotic system with only one linear or nonlinear term, the coefficient of it may play the role of amplitude control. Here, after the tertiary magnetron memristor was introduced into the Jerk system, the new chaotic system introduces only a nonlinear term with a parameter for adjusting the amplitude. When a = 0.8, b = 0.5, c = 1, let , , , ; the derived equation is the same as system (1) when d = 1, so the coefficient d in system (1) can control the amplitude of the state variables x, y, z, . The amplitude adjustment of the chaotic attractor is realized by the internal parameter d in the memristor. The parameter d makes the state variables x, y, z, scaled by the ratio of . As shown in Figure 14, parameter d has basically the same influence on the amplitude of system state variables x, y, z, and .

The average value of the absolute value of the state variable decreases with the increase of the parameter d, but when the parameter d changes in the range of [0, 5], the Lyapunov exponent spectrum remains constant. The controlled amplitude can be clearly seen from the attractor and signal waveforms as shown in Figures 15 and 16. Figures 1416 show that the size of the attractor has a negative proportion with the parameter d.

3. FPGA-Based Implementation

In this part, digital implementation of the memristive hyperjerk chaotic system is shown. From the variety of digital platform, we choose FPGA technology as this provides a good performance and higher design flexibility. FPGA will also provide a better computing performance with low cost as when compared to ASIC (Application Specific Integrated Circuits) Technology. FPGA implementation of memristive hyperjerk chaotic system has been implemented and power efficiency analysis is investigated. All four states of a hyperjerk system are discretized using a suitable numerical method (Euler’s method) with 32-bit IEEE-754-1985 floating point format. We have used the hardware-software cosimulation to implement the memristive hyperjerk oscillator in Kintex-7 board and the output is seen using MATLAB.

FPGA-based hyperjerk chaotic system has been obtained using Xilinx (Vivado) system generator [44, 45] which is integrated with MATLAB software. Xilinx block sets which are available on the system generator toolbox need to be configured with zero latency and 32/16-bit fixed point settings. In order to reduce the bit latency, the output block is configured to round quantization. By configuring all blocks and setting, the following phase portraits are obtained.

Figure 17 represents the phase portrait where the hyperjerk chaotic system signals x, y, z, and are represented with 32 bits using the Forward Euler method by setting with parameter values a = 0.8, b = 0.5, c = 1, d = 0.1 and the initial condition of . It can be seen that the functional hardware results are very similar to MATLAB results. Figure 18 represents the phase portraits of system (1) with a = 0.8, b = 0.5, c = 1, under the initial condition of . D = 0.08 is red while the initial conditions are ; is blue while the initial conditions are ; and is green while the initial conditions are .

Figure 19 and Table 2 show power utilization and resource utilization of memristive hyperjerk chaotic system obtained using FPGA with the parameter values, , under the initial condition .

The power chart of the proposed system gives us information about the different resources and their power utilization. From the chart, it is observed that the power consumption is extremely less when compare with realizing the system on other digital software.

Figure 20 and Table 3 show power utilization and resource utilization of memristive hyperjerk chaotic system which is obtained using FPGA with the parameter values, , , under initial condition , , 0, 0) (a) y-z plane, for d = 0.08 (red), for (blue), for (green) (b) x- plane, for (red), for (blue), for (green).

From Table 3, we can find the different resources such as flip-flops, lookup tables, input-output, digital signal processing, and the global buffer. The total number of available flip flops in the design is 407600, but here the system had utilized only 0.06% of the available resources, likewise, for other resources too, it had utilized only less numbers; thus, it consumes less power.

The Register-Transfer Level (RTL) schematic of the memristive hyperjerk chaotic system is shown in Figure 21. This RTL design is achieved by interfacing the Xilinx system generator with the Vivado design tool. Each block in the Simulink will get implemented and synthesized using Vivado and generates a schematic diagram. Figure 21 shows the RTL design of the state of system (1). Kintex 7 is the hardware chosen to implement the system.

4. System Prediction with Artificial Neural Network

ANN is a mathematical model representing neurons in the brain and their network relationships [35]. In ANN architecture design, the number of layers, the number of neurons in the layers, the learning algorithm, and activation functions are parameters that can be changed to achieve the desired result. A basic neuron model is given in Figure 22. Inputs are denoted by x, outputs are denoted by y, weights are denoted by , bias is denoted by b, and f denotes activation function. The neuron output is given in Table 4 [42]. Each input information is multiplied by weight and added by bias. The output (y) is obtained by processing the total value on the activation function.

Chaotic data can be predicted with artificial neural networks. Compared with the fuzzy logic method [38] or the fuzzy neural network [39], NARX network model can give the prediction in a relatively simple way [46]. NARX is a feedforward network model with two layers. A general diagram of the NARX model is given in Figure 23 [46]. In the first layer (Layer 1), data from inputs and outputs enter the network by passing through the delay line (TDL-Tapped Delay Time). Thus, the past values of the time series are also applied to the input. In the NARX model, the network architecture relates both the present value of the time series and the current and past values of the exogenous input [46]. The mathematical expression of the input and output relationship of the NARX model is given in equation (7) [46, 47].where u is the input, y is the output, m and n are the number of input and output variables, and are the activation functions, IW is the input weight, LW is the output weight, b1 is the Layer-1 bias (input bias), b2 is the Layer-2 bias (output bias), and t is the time step. In Figure 23, Layer-1 refers to the hidden layer, and Layer-2 refers to the output layer. Equation (8) gives the dynamics of the NARX network for the number of q neurons. In equation (8), i indicates the index of neurons and j indicates the index of n inputs [46]:

The designed NARX model given in Figure 24 is used to estimate the system (1) with ANN. The network model has 4 inputs (x, y, z, ) and 4 outputs (x, y, z, ). The data obtained from the simulation result under the initial conditions (0.01, 0.01, 0, 0) of system (1) are used as the data set. 24500 of the data set are used for training (70% of the data set), 5250 of the data set used for validation (15% of the data set), and 5250 of the data set used for testing (15% of the data set). Training, testing, and verification data are taken at random. 15000 pieces of data that were not given to the network before were used for testing. Hyperbolic tangent is used as the activation function in the hidden layer, and a pureline function is used as the activation function in the output layer. Three different learning algorithms, Levenberg-Marquardt, Bayesian Regularization, and Scaled Conjugate Gradient are used for network training. The performance of the network is compared using three different training algorithms by taking the number of hidden layer neurons at different values. The performance (mse-mean squared error) of the network in different learning algorithms and different numbers of hidden layer neuron is given in Table 4. As can be seen from Table 4, the best result was achieved with the Levenberg–Marquardt learning algorithm and 20 neurons in the hidden layer. Performance (mse values) and error histogram graphs of the tested network are given in Figure 24. In the test simulation process, the mse value was obtained as 9.1743e-10, Figure 25(a). As a result, according to this mse value, the trained network can predict the chaotic system (1) very well.

As can be seen from the phase portraits in Figure 26, designed ANN has predicted system (1) very successfully. The green attractors and blue attractors represent the target data and the predicted data from the artificial neural network, respectively.

5. Conclusion

When a memristor is introduced into a jerk structure, a new memristive hyperjerk chaotic system with amplitude control is designed. The coefficient of the internal variable shows its function for amplitude control. In this work, it is proven that the jerk structure can host a nonlinear memristor for chaos rescaling. By revising, a resistor in the physical circuit can realize the total amplitude control leaving much margin for chaos application. Like some of the other memristive chaotic systems [4850], the newly proposed chaotic system shows extreme multistability. The implementation of FPGA proves the consistence of theoretical analysis and numerical simulation. Also, the proposed memristive hyperjerk chaotic system is predicted with ANN for AI based engineering applications. Further work associated with this system like chaos-based communication or image encryption is expected in the near future.

Data Availability

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

Conflicts of Interest

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

Acknowledgments

This work was supported financially by the National Natural Science Foundation of China (Grant no. 61871230), the Natural Science Foundation of Jiangsu Province (Grant no. BK20181410), and a Project Funded by the Priority Academic Program Development of Jiangsu Higher Education Institutions.