Parameter Identification for Memristive Chaotic System Using Modified Sparrow Search Algorithm

A memristor is a non-linear element. The chaotic system constructed by it can improve its unpredictability and complexity. Parameter identification of a memristive chaotic system is the primary task to implement chaos control and synchronization. To identify the unknown parameters accurately and quickly, we introduce the Sine Pareto Sparrow Search Algorithm (SPSSA), a modified sparrow search algorithm (SSA). in this research. Firstly, we introduce the Pareto distribution to alter the scroungers’ location in the SSA. Secondly, we use a sine-cosine strategy to improve the producers’ position update. These measures can effectively accelerate the convergence speed and avoid local optimization. Thirdly, the SPSSA is used to identify the parameters of a memristive chaotic system. The proposed SPSSA exceeds the classic SSA, particle swarm optimization algorithm (PSO), and artificial bee colony algorithm (ABC) in simulations based on the five benchmark functions. The simulation results of parameter identification of a memristive chaotic system show that the method is feasible, and the algorithm has a fast convergence speed and high estimation accuracy.


INTRODUCTION
A memristor is the fourth fundamental circuit element except for resistance R, capacitance C, and inductance. L. Strukov et al [1]. realized the first memristor in the world in 2008. It has set off an upsurge of memristor research. In recent years, memristors have been intensely studied in many application fields, such as memory [2], neural networks [3,4], and image processing [5]. A memristor is a non-linear element. A chaotic system constructed by the memristor can improve the unpredictability and complexity of the system [6][7][8][9][10]. Applying a memristive chaotic system is also one of the research hotspots [11][12][13].
In practical engineering applications, the parameter identification of chaotic systems is the primary problem in realizing chaos control and synchronization. The accuracy of the parameter identification will directly affect the control effect of a chaotic system. Therefore, it is essential to accurately identify the parameters of a chaotic system, which has crucial research significance. The parameter identification of a chaotic system is essentially a complex non-linear numerical optimization problem based on multi-dimensional search space. Because swarm intelligence (SI) optimization algorithm does not need the derivative information of objective function, it has more advantages than traditional optimization algorithm in parameter identification. At present, many research results have emerged for some classical continuous memristive chaotic systems, such as particle swarm optimization algorithm [14,15], differential evolution algorithm [16,17], artificial bee colony optimization algorithm [18], bird swarm algorithm [19], Jaya algorithm [20]. For a discrete memristive chaotic system, the swarm intelligence optimization algorithms also provide many practical solutions, such as an improved PSO algorithm [21], meta-heuristic algorithm [22], and enhanced differential evolution algorithm [23].
The Sparrow search algorithm (SSA) is one of SI optimization algorithms proposed in recent years [24]. It is created by imitating the foraging behavior of a group of sparrows. Compared with other SI optimization algorithms, SSA has the advantages of fewer parameters, simple calculation, and easy implementation in dealing with multi-dimensional problems and global search. Therefore, SSA is used to solve the problem of parameter identification in a chaotic system. However, the traditional SSA is also easy to fall into local optimization. To avoid this phenomenon, many researchers proposed some improved methods. For example, Xiong et al. [25] used a fractional-order chaotic sequence to increases the diversity of the population and used Pareto mutation to escape local best. These methods achieve better results than traditional SSA on 12 benchmark functions. But it is more time-consuming than SSA. In this study, we propose a modified SSA called Sine Pareto Sparrow Search Algorithm (SPSSA). The following are the primary contributions of this paper: (1) We use a sine-cosine strategy to improve the producers' position update. (2) To improve the location of the scroungers, we employ Pareto distribution. This concept is useful for speeding up global convergence and avoiding local minimum points. (3) A memristive chaotic system's parameters are determined using the SPSSA.
In the following sections, Section 2 introduces preliminaries for parameter identification and some concepts of the SPSSA. Section 3 is the experimental results of the paper. Finally, our conclusions presented in Section 4.

Parameter Identification of the Chaotic System
Consider the n-dimensional original chaotic system with m parameters where, X (x 1 , x 2 , /, x n ) T ∈ R n is the state vector, θ (θ 1 , θ 2 , /, θ m ) T ∈ R m is system parameter vector, X 0 is the initial state of the system. F: R n × R m → R n is a given nonlinear vector function. Assuming that the system structure is known, the identified system can be defined as Eq. 2: where, Y (y 1 , y 2 , /, y n ) T ∈ R n is the state vector of the identified system.θ (θ 1 ,θ 2 , /,θ m ) T ∈ R m is the identified system parameter.
The parameter identified problem can be transformed into a Eq. 3 where, D n represents the data length used for state variables, x i and y i represent the actual value and estimated value of the system under their state variables, respectively. Through the above analysis, the parameter identification problem of a chaotic system can be transformed into a multivariable optimization problem, and the relevant variables can be adjusted to minimize the target value J. The optimization principle is shown in Figure 1.
It is a multi-dimensional and multi-mode non-linear function, and the chaotic system is dynamically unstable and sensitive to initial parameters. Therefore, it is difficult to identify the parameters of a chaotic system effectively and accurately. The sparrow search algorithm is easy to realize in dealing with multidimensional problems, so this paper proposes a modified SSA and takes Eq. 3 as the objective function.

The Sparrow Search Algorithm
When a group of sparrows is searching for food, we can divide them into three roles: producers, scroungers, and scouts. Producers, also called finders, are some sparrows searching for food. Scroungers are some sparrows following the producers' track to search for food. Scouts are sparrows watching for dangers. Producers usually account for 10%-20% of the population. Some sparrows will be selected randomly as scouts, which typically account for 10%-20% of the population.
In SSA, the behavior of sparrows searching for food can be simulated as the process of solving optimization problems. Consider that there exist N sparrows, the location of the ith The formula for the location update of producers is described as below: where, t presents the current iteration, j = 1,2, . . . D. T max indicates the cycles number. α ∈ (0, 1] and R 2 ∈ [0, 1] are all random numbers . ST ∈ [0.5, 1] is the alarm value. Q is a random number subject to standard normal distribution; L is a matrix of 1 × D. The initial values of all elements in the D are set to 1. The location of scroungers is updated as follows:  where, X t+1 P is the producers' best location at iteration t + 1, while x t worst denotes the current global worst location. A is a matrix of 1 × D. In A, all of the elements are initialized at random A + A T (AA T ) −1 .
In addition, the position of the scouts is updated by (6) where, X t best is the optimal place at iteration t. β is a parameter that controls the size of the steps. It is a random number with a normal distribution, with a mean of 0 and a variance of 1. The current sparrow fitness value, the best fitness value, and the worst fitness value are f i , f g and f w , respectively. K is a random number that ranges from -1 to 1. ε is a small constant that prevents zero-division-error.

Updating Scroungers' Locations
In the process of foraging, scroungers often forage around the best producer. During this process, the producers and the scroungers may switch roles with each other due to the competition for food. According to the optimization method proposed in [26], the Pareto distribution is introduced to improve scroungers' location so that we can avoid the algorithm falling into local optimization.
A random variable is said to obey the Pareto distribution if its cumulative distribution function has the following equation [26].
where, k > 0 is the scale parameter, h > 0 is the shape parameter (Pareto's index of inequality).
To avoid the local minimum points, the Pareto distribution is utilized [25]. As a result, the scroungers' location update formula is changed by Eq. 8 where, Pareto(k, h) is a random number that follows the Pareto distribution. α is the step scale factor, and ⊗ is the point-to-point multiplication.

Updating Producers' Locations
In the Eq. 4, when R 2 < ST, as the number of iterations increases, the producers gradually approach the local best location. Scroungers will also pour into that location, and the diversity of population locations will be decreased. The algorithm may inevitably fall into local optimum. To solve this problem, the idea of the sine cosine algorithm (SCA) is integrated into the producers' location update method [27], and a learning factor is introduced. The learning factor has a bigger value in the early stage of the search, which is conducive to global exploration, and a smaller value in the later stage, which is conducive to improving local development ability and accuracy. The learning factor formula and the improved producers' location formula are described as follows: where, ω max is a constant, t indicates the current iteration, r 1 is a random number in [0,2π], and r 2 is a random number in [0, 2]. Implementation of an improved sparrow search algorithm for parameter identification of a memristive chaotic system. Algorithm 1 shows the pseudo code for determining a memristive system's parameters using the SPSSA.

EXPERIMENTS AND DISCUSSIONS
To check the performance of SPSSA, we carry out some simulation experiments. The software platform is Windows 10 and MATLAB 2021b. The hardware platform is a desktop PC which a CPU is 3.20 GHz, and a memory size is 16 GB.

Benchmark Function Comparison Experiment
To prove the performance of the proposed SPSSA, we select five benchmark functions, which have been widely used to test the effectiveness of the SI algorithm [23]. Table 1 shows the name, range, and the minimum value of the benchmark test function.
In our experiment, we input the population number N = 50, Tmax = 500, ω max 0.6, Fd = Sd = 0.2. The dimension and the search range are set according to the Table 1. The five benchmark functions are used as fitness functions. Each benchmark test function is run 30 times using four different SI algorithms. Table 2 contains the best value, average, standard deviation, and computation time. The best value reflects exploration ability, the average value demonstrates convergence accuracy, and the standard deviation depicts the SPSSA's stability under the same benchmark test function [25].
In terms of the best value, average value, and standard deviation, the optimization accuracy of SPSSA is superior than the other three algorithms, as shown in Table 2. Especially for benchmark functions F5, only SPSSA converges to the optimal value. Although SPSSA is not the fastest, its accuracy and stability are the best. It shows that the SPSSA has a strong global search ability and better equilibrium. To further prove the dynamic convergence performance, four swarm intelligence techniques are utilized to show the convergence curves of the five benchmark functions (in Figure 2).
From Figure 2, we can see that SPSSA proposed in this paper has a faster downward trend, steeper slope, and fewer iterations compared with the other three algorithms, obviously in Figure 2A,C, and Figure 2E. Figures 2B,D also show that SPSSA can get the best result. As a result, SPSSA outperforms PSO, ABC, and SSA in terms of convergence speed and optimization impact.This shows the feasibility and superiority of SPSSA. Figure 3 shows the simplest memristor chaotic circuit model. A linear passive inductor, a linear passive capacitor, and a non-linear active charge driven memristor make up the circuit [28].

Parameter Identification of a Memristive Chaotic System
The dimensionless equation of that simplest memristor circuit system can be described by Eq. 11 where, _ x dx dt , _ y dy dt , _ z dz dt . a, b, c, d are system parameters. When the system parameters Eq. 11 are set to a = 1, b = 1/3,  c 0.6, d 1.5 the system Eq. 11 exhibits hyperchaotic behavior. When the initial state values are set to x (0) = 0.1, y (0) = 0, z (0) = 0, we can use fourth-order Runge Kutta method to solve the differential Eq. 11. The phase diagrams of the hyperchaotic attractor are shown in Figure 4, in which the step length h = 0.1 and the sampling times Sn = 20000. In the following simulations, we set a = 1, b = 1/3, c = 0.6, d = 1.5. x (0) = 0.1, y (0) = 0, z (0) = 0 are initial value of the original system. The step length h is 0.01 and the sampling times Sn = 500. The parameters of the SPSSA are input as follows: N = 20, T max = 100. Other parameters are same as those in Section 3.1. The range of the parameters of the memristive chaotic system is set to Figure 5 displays the convergence curve of the chaotic system Eq. 11. Figure 6 show the curve of parameters identification convergence. The final identified parameters of the PSO, ABC, SSA, and SPSSA are provided in Table 3.
As shown in Figure 5, it is obvious that the SPSSA has the fastest convergence speed and the smallest J value. Although SSA converges to the optimal value, its rate is significantly slower than SPSSA. This shows that among the four algorithms, SPSSA has the best performance. From Figure 6 we can see among the four algorithms, SPSSA always converges to the optimal value fastest. It is clear to see from Table 3 that the parameter values calculated by SPSSA are the closest to the actual value. All these show that the convergence and stability of SPSSA are better than the other three algorithms.

CONCLUSION
In this paper, a novel swarm intelligence optimization algorithm, the modified sparrow search algorithm, is used for the parameter estimation of a memristive chaotic system. The proposed algorithm, SPSSA, uses a sine cosine method to the sparrow finders' position to avoid falling into local optimization in the later search stage. Pareto distribution is used to adjust the current individual position, to improve the speed and the global optimization accuracy. Five standard test functions are used to verify the algorithm, and the results show that the SPSSA has high search accuracy. The simulation results show that the SPSSA can identify the parameters of the simplest memristive chaotic system more accurately, more rapidly, and more stable than the PSO, the ABC, and the SSA. This proves that SPSSA has good effectiveness and robustness. Other memristive chaotic systems can benefit from the SPSSA. If we know the equation of other systems, we can identify the system parameters by the methods mentioned in the article.

DATA AVAILABILITY STATEMENT
The original contributions presented in the study are included in the article/Supplementary Materials, further inquiries can be directed to the corresponding author.