Intelligent optimization algorithm: optimization algorithm based on driving training - with code

Intelligent optimization algorithm: optimization algorithm based on driving training


Abstract: Driving Training-Based Optimization (DTBO) is an optimization algorithm based on driving training behavior proposed in 2022. The algorithm performs optimization by simulating and learning driving behavior. Strong ability, fast convergence, etc.

1. Optimization algorithm based on driving training

1.1 Initialization

Similar to other optimization algorithms, the population is randomly initialized in the optimization space:
xi , j = lbj + r ⋅ ( ubj − lbj ) , (2) x_{i, j}=l b_j+r \cdot\left(u b_j -l b_j\right), \tag{2}xi,j=lbj+r(ubjlbj),( 2 )
Among them, xi , j x_{i,j}xi,jis the individual, lbj lb_jlbjTo find the lower bound, ubj ub_jubjTo find the upper bound, rrr is a random number between [0,1].

1.2 Phase 1: Driving Instructor Training (Exploration Phase)

The first phase of the DTBO update is based on the selection of the driving instructor by the learner driver, followed by the driving training of the learner driver by the selected instructor. In the DTBO crowd, some of the best members are considered driving instructors, and the rest are considered learners to drive. Choosing a driving instructor and learning that instructor's skills will cause crowd members to move through different regions in the search space. This will enhance DTBO's exploration capabilities in the global search and discovery of optimal areas. Thus, this phase of DTBO update demonstrates the exploratory power of the algorithm. In each iteration, based on the comparison of objective function values, N members of DTBO are selected as driving instructors, as shown in Eq. (4).
D I = [ D I 1 ⋮ D I i ⋮ D I N D I ] N D I × m = [ D I 11 ⋯ D I 1 j ⋯ D I 1 m ⋮ ⋱ ⋮ ⋱ ⋮ D I i 1 ⋯ D I i j ⋯ D I i m ⋮ ⋱ ⋮ ⋱ ⋮ D I N D I 1 ⋯ D I N D I j ⋯ D I N D I m ] N D I × m , (4) D I=\left[\begin{array}{c} D I_1 \\ \vdots \\ D I_i \\ \vdots \\ D I_{N_{D I}} \end{array}\right]_{N_{D I} \times m}=\left[\begin{array}{ccccc} D I_{11} & \cdots & D I_{1 j} & \cdots & D I_{1 m} \\ \vdots & \ddots & \vdots & \ddots & \vdots \\ D I_{i 1} & \cdots & D I_{i j} & \cdots & D I_{i m} \\ \vdots & \ddots & \vdots & \ddots & \vdots \\ D I_{N_{D I} 1} & \cdots & D I_{N_{D I j}} & \cdots & D I_{N_{D I} m} \end{array}\right]_{N_{D I} \times m},\tag{4} D I= D I1D IiD IND I ND I×m= D I11D Ii 1D IND I1D I1 jD IijD IND I jD I1 mD IimD IND Im ND I×m,( 4 )
ThatDI DID I is the set of coaches,NDI N_{DI}ND Iis the number of trainers, where NDI = floor ( 0.1 ∗ N ∗ ( 1 − t / T ) ) N_{DI}=floor(0.1*N*(1-t/T))ND I=floor(0.1N(1t/T)) t t t is the current iteration number,TTT is the maximum number of iterations.

The mathematical modeling of this DTBO stage is such that, first, the new position of each member is calculated using equation (5). Then, according to equation (6), if the new position is better, the new position will replace the previous position
xi , j P 1 = { xi , j + r ⋅ ( DI ki , j − I ⋅ xi , j ) , FDI ki < F i ; xi , j + r ⋅ ( xi , j − DI ki , j ) , otherwise , (5) x_{i, j}^{P_1}= \begin{cases}x_{i, j} +r \cdot\left(D I_{k_i, j}-I \cdot x_{i, j}\right), & F_{D I_{k_i}}<F_i ; \\ x_{i, j}+r \cdot\left(x_{i, j}-D I_{k_{i, j}}\right), & \text { otherwise },\end{cases} \tag{5}xi,jP1={ xi,j+r( D Iki,jIxi,j),xi,j+r(xi,jD Iki,j),FD Iki<Fi; otherwise ,(5)

X i = { X i P 1 , F i p 1 < F i X i ,  otherwise  (6) X_i= \begin{cases}X_i^{P_1}, & F_i^{p_1}<F_i \\ X_i, & \text { otherwise }\end{cases} \tag{6} Xi={ XiP1,Xi,Fip1<Fi otherwise (6)

1.3 Phase 2: Student Learning (Exploration Phase)

The second phase of the DTBO update is based on the learning driver imitating the instructor, that is, the learning driver tries to model all the actions and skills of the instructor. This process moves DTBO members to different positions in the search space, thus increasing the exploration ability of DTBO. To model this concept mathematically, new positions are generated based on the linear combination of each member with the coach according to Equation (7). If this new location is better, it replaces the previous location according to equation (8).
xi , j P 2 = P ⋅ xi , j + ( 1 − P ) ⋅ DI ki , j , (7) x_{i, j}^{P 2}=P \cdot x_{i, j}+(1 -P) \cdot D I_{k_{i, j}}, \tag{7}xi,jP2 _=Pxi,j+(1P)D Iki,j,(7)

X i = { X i P 2 , F i p 2 < F i X i ,  otherwise  (8) X_i= \begin{cases}X_i^{P 2}, & F_i^{p 2}<F_i \\ X_i, & \text { otherwise }\end{cases} \tag{8} Xi={ XiP2 _,Xi,Fip 2<Fi otherwise (8)

of which PPP is calculated as follows:
P = 0.01 + 0.9 ( 1 − t T ) (9) P=0.01+0.9\left(1-\frac{t}{T}\right) \tag{9}P=0.01+0.9(1Tt)(9)

1.4 Phase 3: Personal Practice (Development Phase)

The third phase of DTBO renewal is based on the individual practice of each learner driver to improve driving skills. During this stage, every learning driver works towards getting closer to his or her best skills. This phase allows each member to discover better locations based on local searches of their current location. This phase demonstrates the ability of DTBO to leverage local search. This DTBO phase is mathematically modeled such that a random location is first generated near each population member according to equation (10). Then, according to Equation (11), this position will replace the previous position if it is better.
xi , j P 3 = xi , j + ( 1 − 2 r ) ⋅ R ⋅ ( 1 − t T ) ⋅ xi , j , (10) x_{i, j}^{P 3}=x_{i, j }+(1-2 r) \cdot R \cdot\left(1-\frac{t}{T}\right) \cdot x_{i, j}, \tag{10}xi,jP3 _=xi,j+(12r ) _R(1Tt)xi,j,(10)

X i = { X i P 3 , F i P 3 < F i X i ,  otherwise  (11) X_i= \begin{cases}X_i^{P 3}, & F_i^{P 3}<F_i \\ X_i, & \text { otherwise }\end{cases} \tag{11} Xi={ XiP3 _,Xi,FiP3 _<Fi otherwise (11)

Where R is a constant equal to 0.05, and r is a random number between [0,1].

The flow chart is as follows:

insert image description here

2. Experimental results

insert image description here

3. References

[1] Dehghani, M., Trojovská, E. & Trojovský, P. A new human-based metaheuristic algorithm for solving optimization problems on the base of simulation of driving training process. Sci Rep 12, 9924 (2022). https://doi.org/10.1038/s41598-022-14225-7

4.Matlab

Guess you like

Origin blog.csdn.net/u011835903/article/details/130538785
Recommended