A Novel Particle Swarm Optimization Algorithm (NIPSO) Integrating and Improved Sine Chaos Map-with Code

A Novel Particle Swarm Optimization Algorithm (NIPSO) Integrating Improved Sine Chaos Mapping


Abstract: In order to deal with the problems of the traditional particle swarm optimization (PSO), such as uneven initial position, easy to achieve local optimum, and low search accuracy, a new PSO algorithm based on improved Sine chaotic map is proposed. An improved Sine chaotic mapping technology is used to replace the traditional pseudo-random number method to generate the initial particle population to enrich the diversity of the population. On the basis of the original basic position update formula, two new position update mechanisms are added, and a Gaussian mutation operator is introduced respectively to achieve the dynamic balance between the algorithm exploration performance and development performance, and to make the particles effectively jump out of the local optimum during the iterative process

1. Particle swarm optimization algorithm

The specific principle of the basic particle swarm optimization algorithm reference blog

2. Improved particle swarm optimization algorithm

2.1 Improved Sine Chaos Mapping

In view of the shortcomings of ordinary chaotic maps, the improved chaotic maps are often selected as the initialization of the swarm intelligence optimization algorithm. The two most improved ones are Logistic map and Sine map. In view of the improved Sine chaotic map has good space ergodicity, rich population diversity, uniform distribution in the phase plane, simple structure and high efficiency, this paper chooses the improved Sine chaotic map As an initialization method for the improved particle swarm optimization algorithm. The improved Sine chaos formula is as follows:
{ ai + 1 = sin ⁡ ( κ π ai ) bi + 1 = sin ⁡ ( κ π bi ) yi + 1 = ( ai + 1 + bi + 1 ) % 1 (5) \left\ {\begin{array}{l} a_{i+1}=\sin \left(\kappa \pi a_i\right) \\ b_{i+1}=\sin \left(\kappa \pi b_i\right ) \\ y_{i+1}=\left(a_{i+1}+b_{i+1}\right) \% 1 \end{array}\right.\tag{5} ai+1=sin( cf. ai)bi+1=sin( cf. bi)yi+1=(ai+1+bi+1)%1( 5 )
In the formula:ai a_iaiJapanese bi b_ibiThe initial value ranges from ( 0 , 1 ) (0,1)(0,1 ) ; control parameterκ \kappaκ =1200 ; yi + 1 1200 ; y_{i+1}1200;yi+1It is the iterative chaotic sequence value; % \%% is the remainder operation.

2.2 Particle swarm improvement

In order to dynamically coordinate the global search and local search at different stages of the optimization process, the following new particle position update equation is proposed to improve the speed and accuracy of finding the optimal solution without weakening its global search ability.
X i ( t + 1 ) = { X i ( t ) + V i ( t + 1 ) , r 3 > 0.5 sin ⁡ ( t π 2 t max ⁡ ) X i ( t ) + u ( X gb ( t ) − X i ( t ) ) , λ i max ⁡ ( t ) > α ( 1 + v ) X i ( t ) , λ i max ( t ) ≤ α } r 3 ≤ 0.5 sin ⁡ ( t π 2 t max ⁡ ) (6) \begin{aligned} & \boldsymbol{X}_i(t+1)= \\ & \left\{\begin{array}{lr} \boldsymbol{X}_i(t)+\boldsymbol{ V}_i(t+1), & r_3>0.5 \sin \left(\frac{t \pi}{2 t_{\max }}\right) \\ \boldsymbol{X}_i(t)+u\ left(\boldsymbol{X}_{\mathrm{gb}}(t)-\boldsymbol{X}_i(t)\right), \lambda_{i \max }(t)>\alpha \\ (1+ v) \boldsymbol{X}_i(t), & \lambda_{i \text { max }}(t) \leq \alpha \end{array}\right\} r_3 \leq 0.5 \sin \left(\frac {t \pi}{2 t_{\max }}\right) \end{aligned}\tag{6}Xi(t+1)= Xi(t)+Vi(t+1),Xi(t)+u(Xgb(t)Xi(t)),limax(t)>a(1+v)Xi(t),r3>0.5sin(2t _maxt π)li max (t)a r30.5sin(2t _maxt π)( 6 )
where:t max ⁡ t_{\max }tmaxis the total number of iterations; r 3 r_3r3for [0,1][0,1][0,1 ] random number between;α \alphaα is the variation factor;vvv sumuuu is a random number that obeys Gaussian distribution;λ i max ⁡ ( t ) \lambda_{i \max }(t)limax( t ) is X i ( t ) \boldsymbol{X}_i(t)in all dimensionsXi( t ) andX gb ( t ) \boldsymbol{X}_{\mathrm{gb}}(t)Xgb(t) 之间的最大差值 的权重, 可以描述为
{ λ imax  ( t ) = max ⁡ { λ i 1 ( t ) , λ i 2 ( t ) , … , λ i k ( t ) , … , λ i n ( t ) } λ i k ( t ) = ∣ x i k ( t ) − x g b k ( t ) ∣ ∣ x g b k ( t ) ∣ (7) \left\{\begin{array}{l} \lambda_{\text {imax }}(t)=\max \left\{\lambda_{i 1}(t), \lambda_{i 2}(t), \ldots, \lambda_{i k}(t), \ldots, \lambda_{i n}(t)\right\} \\ \lambda_{i k}(t)=\frac{\left|x_{i k}(t)-x_{\mathrm{gbk}}(t)\right|}{\left|x_{\mathrm{gbk}}(t)\right|} \end{array}\right.\tag{7} { limax (t)=max{ li 1(t),li2(t),,li(t),,lin(t)}li(t)=xgbk(t)xi(t)xgbk(t)( 7 )
where:xik ( t ) x_{ik}(t)xi( t ) is thettthiiat iteration tThe kkth of the i particle positionk- dimensional value,xgbk ( t ) x_{\mathrm{gb} k}(t)xgb k( t ) is thettthThe kkthglobal best position at iteration tk- dimensional value, andλ ik ( t ) \lambda_{ik}(t)li(t) 则是 x i k ( t ) x_{i k}(t) xi( t ) andxgbk ( t ) x_{\mathrm{gb} k}(t)xgb kThe difference between ( t ) and xgbk ( t ) x_{\mathrm{gb} k}(t)xgb k( t ) ratio. It should be noted that the random numberuuuwa vv_Let v be (8) a smooth function
{ u ∼ N ( 1 , σ u 2 ) , σ u = µ cos ⁡ ( ( t − 1 ) π 2 t max ⁡ ) v ∼ N ( r 4 , σ v 2 ) , σ v = r 5 (8) \left\{\begin{array}{l} u \sim \mathrm{N}\left(1, \sigma_u^2\right), \sigma_u=\sqrt{ \mu \cos \left(\frac{(t-1) \pi}{2 t_{\max }}\right)} \\v \sim \mathrm{N}\left(r_4, \sigma_v^2\ right), \sigma_v=r_5\end{array}\right.\tag{8} uN(1,pu2),pu=mcos(2t _max( t 1 ) p) vN(r4,pv2),pv=r5( 8 )
where:r 4 r_4r4is [ − 1.5 , 1.5 ] [-1.5,1.5][1.5,1.5 ] , a random number betweenr 5 r_5r5for [0,1][0,1][0,1 ] random number between,μ \muμ is an adaptive coefficient determined by equation (9).

Where: r 4 r_4r4is [ − 1.5 , 1.5 ] [-1.5,1.5][1.5,1.5 ] , a random number betweenr 5 r_5r5for [0,1][0,1][0,1 ] random number between,μ \muThe µ equation ( 9 ) is the standard deviation parameter
µ = { 20 3 λ i max 2 ( t ) − 7 λ i max ( t ) + 7 3 , α < λ i max ⁡ ( t ) ≤ 0.5 0.3 , . λ i max ( t ) > 0.5 (9) \mu= \begin{cases}\frac{20}{3}\lambda_{i\text { max }}^2(t)-7 \lambda_{i\text { max }}(t)+\frac{7}{3}, &\alpha<\lambda_{i\max}(t)\leq 0.5\\0.3, &\lambda_{i\text {max}}( t)>0.5\end{cases}\tag{9}m={ 320li max 2(t)7 mini max (t)+37,0.3,a<limax(t)0.5li max (t)>0.5( 9 )
According to formulas (8) and (9), it can be seen that the random numberuuThe concentration of u is not only affected by the number of iterations, but also by the parameterλ max ( t ) \lambda_{\text {max }}(t)lmax ( t ) influence.

Considering the influence of inertia weight and acceleration constant coefficient on finding the global optimum, the influence of individual and global optimum fitness is added, so that the inertia weight can be adjusted adaptively, and the acceleration coefficient is directly expressed in the literature. Therefore, the inertia coefficient wi w_iwiand acceleration coefficients c 1 , c 2 c_1 , c_2c1c2can be expressed as:
w i = { ∣ w max ⁡ f ( X g b ( t ) ) f ( X p b i ( t ) ) − ( w max ⁡ − w min ⁡ ) t t max ⁡ ∣ , f ( X p b i ( t ) ) > 0 w max ⁡ − ( w max ⁡ − w min ⁡ ) t t max ⁡ , f ( X p b i ( t ) ) = 0 ∣ w max ⁡ f ( X p b i ( t ) ) f ( X g b ( t ) ) − ( w max ⁡ − w min ⁡ ) t t max ⁡ ∣ , f ( X p b i ( t ) ) < 0 (10) w_i=\left\{\begin{array}{cc} \left|\frac{w_{\max } f\left(\boldsymbol{X}_{\mathrm{gb}}(t)\right)}{f\left(\boldsymbol{X}_{\mathrm{pbi}}(t)\right)}-\frac{\left(w_{\max }-w_{\min }\right) t}{t_{\max }}\right|, & f\left(\boldsymbol{X}_{\mathrm{pbi}}(t)\right)>0 \\ w_{\max }-\frac{\left(w_{\max }-w_{\min }\right) t}{t_{\max }}, & f\left(\boldsymbol{X}_{\mathrm{pbi}}(t)\right)=0 \\ \left|\frac{w_{\max } f\left(\boldsymbol{X}_{\mathrm{pbi}}(t)\right)}{f\left(\boldsymbol{X}_{\mathrm{gb}}(t)\right)}-\frac{\left(w_{\max }-w_{\min }\right) t}{t_{\max }}\right|, & f\left(\boldsymbol{X}_{\mathrm{pbi}}(t)\right)<0 \end{array}\right.\tag{10} wi= f(Xpbi(t))wmaxf(Xgb(t))tmax(wmaxwmin)t ,wmaxtmax(wmaxwmin)t, f(Xgb(t))wmaxf(Xpbi(t))tmax(wmaxwmin)t ,f(Xpbi(t))>0f(Xpbi(t))=0f(Xpbi(t))<0(10)

{ c 1 = 2.5 − 2 t t max ⁡ c 2 = 0.5 + 2 t t max ⁡ (11) \left\{\begin{array}{l} c_1=2.5-\frac{2 t}{t_{\max }} \\ c_2=0.5+\frac{2 t}{t_{\max }} \end{array}\right.\tag{11} { c1=2.5tmax2 tc2=0.5+tmax2 t( 11 )
in formula:w min w_{\text {min }}wmin is the minimum value of inertia weight, w max ⁡ w_{\max }wmaxis the maximum value of the inertia weight, fpbi f_{\mathrm{pb} i}fpbiis the individual optimal fitness of the particle, fgb f_{\mathrm{gb}}fgbis the global optimal fitness of the particle.

3. Experimental results

insert image description here

4. References

[1] Liu Lei, Jiang Bowen, Zhou Hengyang, etc. A New Particle Swarm Optimization Algorithm Fused with Improved Sine Chaos Mapping [J/OL]. Journal of Xi'an Jiaotong University: 1-11 [2023-05-25]. http://kns. cnki.net/kcms/detail/61.1069.T.20230512.1619.002.

5. Matlab code

6. Python code

Guess you like

Origin blog.csdn.net/u011835903/article/details/130903284