CN105005820A - Target assignment optimizing method based on particle swarm algorithm of population explosion - Google Patents
Target assignment optimizing method based on particle swarm algorithm of population explosion Download PDFInfo
- Publication number
- CN105005820A CN105005820A CN201510155893.1A CN201510155893A CN105005820A CN 105005820 A CN105005820 A CN 105005820A CN 201510155893 A CN201510155893 A CN 201510155893A CN 105005820 A CN105005820 A CN 105005820A
- Authority
- CN
- China
- Prior art keywords
- particle
- population
- optimal solution
- boundary
- iteration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 239000002245 particle Substances 0.000 title claims abstract description 138
- 238000004880 explosion Methods 0.000 title claims abstract description 46
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 42
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000005457 optimization Methods 0.000 claims abstract description 31
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000013459 approach Methods 0.000 claims description 3
- 239000002360 explosive Substances 0.000 claims description 3
- 230000005484 gravity Effects 0.000 claims description 3
- 238000012804 iterative process Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims description 3
- 238000004220 aggregation Methods 0.000 abstract 1
- 230000002776 aggregation Effects 0.000 abstract 1
- 238000004088 simulation Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 230000002068 genetic effect Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000019637 foraging behavior Effects 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
The invention provides a target assignment optimizing method based on a particle swarm algorithm of population explosion, and belongs to the field of intelligent algorithm optimization. In the optimizing method, according to aggregation situation of population in a process of optimization searching, a "population explosion operator" is introduced; divergent treatment of particles is performed under a restricted condition based on partial principles of chaos searching and self-adapting; and parameter adjustment is performed at the same time. The population is prevented against prematurely falling into local optimization, and the problem of target assignment of a battle between intelligent tanks in a virtual battlefield is solved. The method comprises: step 1, performing real number coding of an own side and an opposite side, and generating excellent initial population by utilizing chaos searching; step 2, adjusting initial parameters of the algorithm; step 3, performing iterative optimization searching by adopting the particle swarm algorithm based on the "population explosion operator"; and step 4, ending iteration when the iteration number reaches a set number, and obtaining an optimal scheme. Compared to a method based on an original algorithm, the method increases the total optimization searching ability of particles, and satisfies the requirement of high timeliness.
Description
Technical Field
The invention belongs to the field of intelligent algorithm optimization, and particularly relates to a target distribution optimization method based on a population explosion particle swarm algorithm.
Background
Target allocation in a virtual battlefield environment is an important aspect of the simulation of the real behavior of the CGF (Computer Generated Forces), and target allocation is a common behavior of many CGF combat entities, and the simulation accuracy directly influences other combat behaviors of the CGF and the reality of the CGF simulation.
The research significance of the target allocation is that the reliability of the simulation effect can be improved in the CGF simulation system, and a good immersion feeling is brought to people. Meanwhile, the research of 'target allocation' can play a great role in actual combat, and a quick and efficient striking scheme can be provided for combat personnel.
The allocation of CGF targets in a virtual battlefield environment is a very important issue in modern war. However, the solution space increases exponentially with the increase in the total number of weapons and targets, making it a multi-parameter, multi-constrained "NP-complete problem". So that the optimal solution can be obtained only by using a complete enumeration method. Obviously, it is impractical in larger scale situations and must therefore be solved by certain intelligent algorithms. To solve this problem, many algorithms have been proposed, such as neural network methods, genetic algorithms, particle swarm algorithms, and the like. These algorithms have advantages and disadvantages, but most of them have certain limitations, such as slow convergence speed, difficult realization in actual operation, etc.
The particle swarm algorithm (PSO algorithm), originally introduced by Kennedy, et al, 1995, was inspired by bird swarm foraging behavior and used to solve optimization problems. Compared with the genetic algorithm, the PSO algorithm not only has the global optimization capability of the genetic algorithm, but also has stronger local optimization capability. The PSO algorithm has the advantages of simple concept, easy realization, high convergence rate, adaptability to large-scale models and the like, and is widely applied to a plurality of fields. However, the PSO algorithm tends to converge too fast in the initial stage of search, and when there are a plurality of extreme points in the solution space (i.e., in the area near the point, the allocation scheme represented by this point is the best), the population tends to converge near the extreme points, and thus the population tends to fall into a locally optimal solution in the later stage of optimization, resulting in difficulty in obtaining an optimal solution.
Disclosure of Invention
In order to solve the above problems, the present invention provides a target allocation optimization method based on a population explosion particle swarm algorithm, which specifically comprises the following steps:
step 1, real number coding is adopted for both own and opposite parties, the opposite party is marked as 1,2, … q … N, the own party is marked as 1,2, … k … M, and then the feasible solution space in the optimization process is (x)1,x2…xi…xM) Representing an allocation scheme and randomly generating an initial allocation scheme, wherein xiIs an integer between 1 and N, xiQ represents that the q-th party is allocated to the i-th party, N is the total number of the parties, and M is the total number of the parties;
step 11, randomly generating first initial particlesThe component values of each dimension of the particle position belong to the interval (0, 1);
step 12, with the first initial particle X1On the basis of <math>
<mrow>
<msubsup>
<mi>x</mi>
<mrow>
<mi>n</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
<mi>i</mi>
</msubsup>
<mo>=</mo>
<mfenced open='{' close=''>
<mtable>
<mtr>
<mtd>
<msubsup>
<mi>x</mi>
<mi>n</mi>
<mi>i</mi>
</msubsup>
<mo>/</mo>
<mn>0.4</mn>
</mtd>
<mtd>
<mn>0</mn>
<mo><</mo>
<msubsup>
<mi>x</mi>
<mi>n</mi>
<mi>i</mi>
</msubsup>
<mo>≤</mo>
<mn>0.4</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>-</mo>
<msubsup>
<mi>x</mi>
<mi>n</mi>
<mi>i</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mo>/</mo>
<mn>0.6</mn>
</mtd>
<mtd>
<mn>0.4</mn>
<mo><</mo>
<msubsup>
<mi>x</mi>
<mi>n</mi>
<mi>i</mi>
</msubsup>
<mo><</mo>
<mn>1</mn>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
</math> Generating other initial particles X2~XD(ii) a Wherein D is the population scale,an ith dimension component representing an nth particle position;
step 13, all the generated initial particles X are processednAccording to round (X)nX (N-1) +1) to obtain an initial distribution scheme, where N is 1,2, … D;
step (ii) of2, using the formula <math>
<mfenced open='' close=''>
<mtable>
<mtr>
<mtd>
<mi>max</mi>
</mtd>
<mtd>
<mi>f</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>X</mi>
<mi>n</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<munderover>
<mi>Σ</mi>
<mrow>
<mi>q</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<mo>[</mo>
<msub>
<mi>t</mi>
<mi>q</mi>
</msub>
<mo>×</mo>
<mo>[</mo>
<mn>1</mn>
<mo>-</mo>
<munderover>
<mi>Π</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>M</mi>
</munderover>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>-</mo>
<msub>
<mi>p</mi>
<mi>kq</mi>
</msub>
<mo>×</mo>
<msub>
<mi>y</mi>
<mi>kq</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>]</mo>
<mo>]</mo>
</mtd>
</mtr>
</mtable>
</mfenced>
</math> Calculating an initial population X1~XDSetting the fitness value of each particle as the current individual optimal solution pbest of each particle; selecting the minimum from the individual optimal solutions pbest of the particles as the global optimal solution gbest of the initial population;
wherein, tqIs the threat value of the qth counterpart, pkqHit ratio of own k to counterpart q, ykqThe value of (1) is 0 or 1, if 1, own k attacks the opposite side q, otherwise own k does not attack the opposite side q;
and 3, performing optimization search by adopting an iterative process:
step 31, if the current particle population simultaneously meets the following three conditions, executing step 32; otherwise, directly executing 35;
1) the iteration times (t-m) for keeping the global optimal solution gbest unchanged continuously from the mth iteration to the current iteration is larger than a first set threshold;
2) setting t as the current iteration times, wherein t is smaller than a second set threshold;
3) the population explosion operator is not shielded, and the initial population explosion operator is defaulted to be not shielded;
step 32, determining convergence degree of the particles:
calculating a convergence boundary c _ boundary through c _ boundary ((MaxDT-t)/MaxDT +0.05) × DIS _ BANG according to the current iteration time t, and calculating Euclidean distances DIS from each particle to the global optimal solution gbest, wherein if DIS is smaller than the convergence boundary c _ boundary, the particle converges to the global optimal solution gbest;
after the convergence degree of all the particles is judged, if the particles in the convergence boundary c _ boundary reach the set amount, executing step 33, otherwise, directly executing step 35;
wherein,MaxDT is the maximum iteration number, dis _ BANG is a constant, and represents the maximum convergence boundary;
step 33, after executing the population explosion operator, executing step 34, where executing the population explosion operator includes:
step 331, calculating explosive power BANG by using BANG ((MaxDT-t)/MaxDT +0.02) × (N/3) +1, wherein MaxDT is the maximum iteration number, and t is the current iteration number; ,
step 332, according toCalculating the explosion direction matrix f of the ith particleiThen the calculation result is expressed as:rand represents a random number uniformly distributed between 0 and 1,the jth dimension representing the ith particle will be subject to "gravity",the j-th dimension, which represents the ith particle, will be subject to "repulsion", i.e., the force of the particle away from the global optimal solution direction; "gravitational" is the force that causes a particle to approach the direction of the global optimal solution;
step 333, using vi+fiX BANG update particle velocity viBy Xi+viUpdating the particle position Xi;
Step 34, use (w + w _1) x vi+c1×rand×(pbest-Xi)+(c2+c_2)×rand×(gbest-Xi) Updating the particle velocity viThen, step 36 is executed, in which w _1 and c _2 are the introduced adjustment parameters, and updating is performed after the end of each iteration, w _1 is updated in real time by w _1+ (-0.3/40), and c _2 is updated in real time by c _2+ (1/40);
wherein w is the weighted value of the original velocity in the velocity update formula, c1、c2Respectively updating the weight values of the local optimal solution and the global optimal solution in the formula;
step 35, if the condition 3 is not satisfied):
then according to (w + w _1) × vi+c1×rand×(pbest-Xi)+(c2+c_2)×rand×(gbest-Xi) Updating the particle velocity viThen, step 36 is performed;
if condition 3 is satisfied):
according to w × vi+c1×rand×(pbest-Xi)+c2×rand×(gbest-Xi) Updating the particle velocity viThen, step 36 is performed;
step 36, detecting whether the particle speed is out of range: velocity v of the particlesiThe value of any dimension is [ -N/4, N/4]Otherwise, the boundary is crossed, otherwise, the boundary is not crossed; if the boundary is crossed, the speed value of the dimension is a boundary value, and the speed which is not crossed is unchanged; step 37 is executed;
step 37, according to Xi+viUpdating the particle position XiStep 38 is executed;
step 38, detecting whether the position of the particle is out of range: if the value of any one dimension of the particle is beyond [1, N ], the boundary is crossed, otherwise, the boundary is not crossed; if the boundary is crossed, the value of the dimension is a random value within a certain range near the boundary value, and the position which is not crossed is unchanged;
step 39, updating the global optimal solution and the individual optimal solution
If the fitness of the new position of the particle generated by the t iterations is smaller than the fitness of the individual optimal solution pbest of the particle, updating the individual optimal solution of the particle to be the new position of the particle, otherwise, keeping the fitness unchanged; if the fitness of the individual optimal solution of the new position of the particle is smaller than the fitness of the global optimal solution, replacing the global optimal solution with the individual optimal solution of the particle, otherwise, keeping the fitness unchanged; step 40 and step 41 are performed simultaneously;
step 40, if the population explosion operator is executed in the current iteration process, generating a shadow population: the initial position of the shadow population is the position of the particles after the t-1 times of iteration execution or the individual optimal position of each particle; if the population explosion operator is not executed in the current iteration process, directly executing the step 4;
performing cross operation in sequence from t +1 to t + U of the influence algebra of the population explosion operator until the t + U iteration is finished, and obtaining the global optimal solution of the shadow population;
u is the population explosion shielding amount, namely the default population explosion operator from t +1 to t + U is shielded and influenced by the population explosion operator, and step 42 is executed;
step 41, in the iterations from t +1 to t + U, the actual population directly executes steps 34, 36, 37, 38 and 39 until the iteration from t + U is finished, a global optimal solution of the actual population is obtained, and step 42 is executed;
and 42, fusing the shadow population with the actual population: if the fitness of the global optimal solution of the shadow population is smaller than the fitness value of the global optimal solution of the actual population, assigning the global optimal solution of the shadow population to the global optimal solution of the actual population, selecting a particle at the same time, assigning the global optimal solution of the shadow population to the individual optimal solution of the particle, and then executing the step 4;
step 4, judging whether the maximum iteration times of the particle swarm reaches the set times, if so, finishing the iteration, obtaining the final global optimal solution of the actual population after the iteration is finished, and converting the final global optimal solution into a distribution scheme; otherwise, returning to execute the step 3.
Has the advantages that:
compared with the original algorithm, the optimized algorithm prevents the population from falling into the local optimal solution by introducing a population explosion operator, so that the global optimization capability of the algorithm is enhanced; by introducing the shadow population, the optimizing capability near the current global extreme value is enhanced. Therefore, the probability of finding the optimal solution can be greatly increased through the optimization algorithm. The probability of obtaining a poor solution (a solution with significantly poor fitness) is also greatly reduced due to the enhanced global optimization capability.
The implementation is simple, and the time cost of the optimization operation (namely the time increased on the basis of the time of the original algorithm) is low. Only a few parameters are introduced into the method, the calculation amount is small, and the time complexity of executing a population explosion operator is the same as the time complexity of executing a generation of optimization operation by a basic particle swarm algorithm; each generation of updates to the shadow population is also the same time complexity as performing a generation-seeking operation. Due to the limiting effect on the population explosion operator, the population explosion operator cannot be frequently executed, and the requirement of high real-time performance can be met.
Drawings
FIG. 1a is a 6X 5 scale results chart of the present invention;
FIG. 1b is a graph of 10X 10 scale results of the present invention;
FIG. 1c is a 15X 20 scale results chart of the present invention.
Detailed Description
The invention discloses a target distribution optimization method based on a population explosion particle swarm algorithm, which comprises the following steps:
step 1, real number coding is adopted for both own and opposite parties, the opposite party is marked as 1,2, … q … N, the own party is marked as 1,2, … k … M, and then the feasible solution space in the optimization process is (x)1,x2…xi…xM) Representing an allocation scheme and randomly generating an initial allocation scheme, wherein xiIs an integer between 1 and N, xiQ represents that the q-th party is allocated to the i-th party, N is the total number of the parties, and M is the total number of the parties;
step 11, randomly generating first initial particlesThe component values of each dimension of the particle position belong to the interval (0, 1);
step 12, with the first initial particle X1On the basis of <math>
<mrow>
<msubsup>
<mi>x</mi>
<mrow>
<mi>n</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
<mi>i</mi>
</msubsup>
<mo>=</mo>
<mfenced open='{' close=''>
<mtable>
<mtr>
<mtd>
<msubsup>
<mi>x</mi>
<mi>n</mi>
<mi>i</mi>
</msubsup>
<mo>/</mo>
<mn>0.4</mn>
</mtd>
<mtd>
<mn>0</mn>
<mo><</mo>
<msubsup>
<mi>x</mi>
<mi>n</mi>
<mi>i</mi>
</msubsup>
<mo>≤</mo>
<mn>0.4</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>-</mo>
<msubsup>
<mi>x</mi>
<mi>n</mi>
<mi>i</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mo>/</mo>
<mn>0.6</mn>
</mtd>
<mtd>
<mn>0.4</mn>
<mo><</mo>
<msubsup>
<mi>x</mi>
<mi>n</mi>
<mi>i</mi>
</msubsup>
<mo><</mo>
<mn>1</mn>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
</math> Generating other initial particles X2~XD(ii) a Wherein D is the population scale,an ith dimension component representing an nth particle position;
step 13, all the generated initial particles X are processednAccording to round (X)nX (N-1) +1) to obtain an initial distribution scheme, where N is 1,2, … D;
step 2, using a formula <math>
<mfenced open='' close=''>
<mtable>
<mtr>
<mtd>
<mi>max</mi>
</mtd>
<mtd>
<mi>f</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>X</mi>
<mi>n</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<munderover>
<mi>Σ</mi>
<mrow>
<mi>q</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<mo>[</mo>
<msub>
<mi>t</mi>
<mi>q</mi>
</msub>
<mo>×</mo>
<mo>[</mo>
<mn>1</mn>
<mo>-</mo>
<munderover>
<mi>Π</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>M</mi>
</munderover>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>-</mo>
<msub>
<mi>p</mi>
<mi>kq</mi>
</msub>
<mo>×</mo>
<msub>
<mi>y</mi>
<mi>kq</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>]</mo>
<mo>]</mo>
</mtd>
</mtr>
</mtable>
</mfenced>
</math> Calculating an initial population X1~XDSetting the fitness value of each particle as the current individual optimal solution pbest of each particle; selecting the minimum from the individual optimal solutions pbest of the particles as the global optimal solution gbest of the initial population;
wherein, tqIs the threat value of the qth counterpart, pkqHit ratio of own k to counterpart q, ykqThe value of (1) is 0 or 1, if 1, own k attacks the opposite side q, otherwise own k does not attack the opposite side q;
and 3, performing optimization search by adopting an iterative process:
step 31, if the current particle population simultaneously meets the following three conditions, executing step 32; otherwise, directly executing 35;
1) the iteration times (t-m) for keeping the global optimal solution gbest unchanged continuously from the mth iteration to the current iteration is larger than a first set threshold;
2) setting t as the current iteration times, wherein t is smaller than a second set threshold;
3) the population explosion operator is not shielded, and the initial population explosion operator is defaulted to be not shielded;
step 32, determining convergence degree of the particles:
calculating a convergence boundary c _ boundary through c _ boundary ((MaxDT-t)/MaxDT +0.05) × DIS _ BANG according to the current iteration time t, and calculating Euclidean distances DIS from each particle to the global optimal solution gbest, wherein if DIS is smaller than the convergence boundary c _ boundary, the particle converges to the global optimal solution gbest;
after the convergence degree of all the particles is judged, if the particles in the convergence boundary c _ boundary reach the set amount, executing step 33, otherwise, directly executing step 35;
wherein,MaxDT is the maximum iteration number, dis _ BANG is a constant, and represents the maximum convergence boundary;
step 33, after executing the population explosion operator, executing step 34, where executing the population explosion operator includes:
step 331, calculating explosive power BANG by using BANG ((MaxDT-t)/MaxDT +0.02) × (N/3) +1, wherein MaxDT is the maximum iteration number, and t is the current iteration number; ,
step 332, according toCalculating the explosion direction matrix f of the ith particleiThen the calculation result is expressed as:rand represents a random number uniformly distributed between 0 and 1,the jth dimension representing the ith particle will be subject to "gravity",the j-th dimension, which represents the ith particle, will be subject to "repulsion", i.e., the force of the particle away from the global optimal solution direction; "gravitational" is the force that causes a particle to approach the direction of the global optimal solution;
step 333, using vi+fiX BANG update particle velocity viBy Xi+viUpdating the particle position Xi;
Step 34, use (w + w _1) x vi+c1×rand×(pbest-Xi)+(c2+c_2)×rand×(gbest-Xi) Updating the particle velocity viThen, step 36 is executed, in which w _1 and c _2 are the introduced adjustment parameters, and updating is performed after the end of each iteration, w _1 is updated in real time by w _1+ (-0.3/40), and c _2 is updated in real time by c _2+ (1/40);
wherein w is the weighted value of the original velocity in the velocity update formula, c1、c2Respectively updating the weight values of the local optimal solution and the global optimal solution in the formula;
step 35, if the condition 3 is not satisfied):
then according to (w + w _1) × vi+c1×rand×(pbest-Xi)+(c2+c_2)×rand×(gbest-Xi) Updating the particle velocity viThen, step 36 is performed;
if condition 3 is satisfied):
according to w × vi+c1×rand×(pbest-Xi)+c2×rand×(gbest-Xi) Updating the particle velocity viThen, step 36 is performed;
step 36, detecting whether the particle speed is out of range: velocity v of the particlesiThe value of any dimension is [ -N/4 ],N/4]Otherwise, the boundary is crossed, otherwise, the boundary is not crossed; if the boundary is crossed, the speed value of the dimension is a boundary value, and the speed which is not crossed is unchanged; step 37 is executed;
step 37, according to Xi+viUpdating the particle position XiStep 38 is executed;
step 38, detecting whether the position of the particle is out of range: if the value of any one dimension of the particle is beyond [1, N ], the boundary is crossed, otherwise, the boundary is not crossed; if the boundary is crossed, the value of the dimension is a random value within a certain range near the boundary value, and the position which is not crossed is unchanged;
step 39, updating the global optimal solution and the individual optimal solution
If the fitness of the new position of the particle generated by the t iterations is smaller than the fitness of the individual optimal solution pbest of the particle, updating the individual optimal solution of the particle to be the new position of the particle, otherwise, keeping the fitness unchanged; if the fitness of the individual optimal solution of the new position of the particle is smaller than the fitness of the global optimal solution, replacing the global optimal solution with the individual optimal solution of the particle, otherwise, keeping the fitness unchanged; step 40 and step 41 are performed simultaneously;
step 40, if the population explosion operator is executed in the current iteration process, generating a shadow population: the initial position of the shadow population is the position of the particles after the t-1 times of iteration execution or the individual optimal position of each particle; if the population explosion operator is not executed in the current iteration process, directly executing the step 4;
performing cross operation in sequence from t +1 to t + U of the influence algebra of the population explosion operator until the t + U iteration is finished, and obtaining the global optimal solution of the shadow population;
u is the population explosion shielding amount, namely the default population explosion operator from t +1 to t + U is shielded and influenced by the population explosion operator, and step 42 is executed;
step 41, in the iterations from t +1 to t + U, the actual population directly executes steps 34, 36, 37, 38 and 39 until the iteration from t + U is finished, a global optimal solution of the actual population is obtained, and step 42 is executed;
and 42, fusing the shadow population with the actual population: if the fitness of the global optimal solution of the shadow population is smaller than the fitness value of the global optimal solution of the actual population, assigning the global optimal solution of the shadow population to the global optimal solution of the actual population, selecting a particle at the same time, assigning the global optimal solution of the shadow population to the individual optimal solution of the particle, and then executing the step 4;
step 4, judging whether the maximum iteration times of the particle swarm reaches the set times, if so, finishing the iteration, obtaining the final global optimal solution of the actual population after the iteration is finished, and converting the final global optimal solution into a distribution scheme; otherwise, returning to execute the step 3.
To further illustrate the above algorithm, the improved particle swarm algorithm (M-PSO) and the standard particle swarm algorithm (PSO) used in the present invention were simulated on the target allocation problem. Consider three scales of 6 x 5, 10 x 10 and 15 x 20, 6 friend 5 enemies, 10 friend 10 enemies, 15 friend 20 enemies, respectively.
In 6X 5 Scale c1=c22, w is 0.7289, the population size is 50, and the evolution generation number is 1000; in a 10X 10 scale c1=c22, w is 0.7289, the population size is 50, and the evolution generation number is 1000; in the 15X 20 scale c1=c22, w is 0.7289, the population size is 50, and the evolution generation number is 1000. The experiments are performed for 30 times respectively, and the effect pairs of two algorithms in a certain experiment are randomly selected, for example, as shown in fig. 1a to 1c, the average effect results in the 30 experiments are as follows:
the result shows that the performance of the improved algorithm is better improved compared with the performance of the standard particle swarm algorithm, and particularly when the scale is small, the performance of the optimization algorithm is obviously improved. From the brute force search results, 0.29295 was the optimum at 6 × 5 scale; on the 10 × 10 scale, 0.76350 is the optimum. When the scale is large, although the optimal value is difficult to find, the optimization algorithm can still greatly improve the optimization capability of the original algorithm. The optimization algorithm can slightly increase the optimization time, but the consumed time still meets the scene requirement. Therefore, compared with the original algorithm, the algorithm can obtain better effect and has good practical value.
The present invention may be embodied in other specific forms without departing from the spirit or essential attributes thereof, and it should be understood that various changes and modifications can be effected therein by one skilled in the art without departing from the spirit and scope of the invention as defined in the appended claims.
Claims (1)
1. A target distribution optimization method based on a population explosion particle swarm algorithm is characterized by comprising the following steps:
step 1, real number coding is adopted for both own and opposite parties, the opposite party is marked as 1,2, … q … N, the own party is marked as 1,2, … k … M, and then the feasible solution space in the optimization process is (x)1,x2…xi…xM) Representing an allocation scheme and randomly generating an initial allocation scheme, wherein xiIs an integer between 1 and N, xiQ denotes that the qth partner is assigned to the ith partner, and N is the partnerThe total number, M is the total number of own parties;
step 11, randomly generating first initial particlesThe component values of each dimension of the particle position belong to the interval (0, 1);
step 12, with the first initial particle X1On the basis ofGenerating other initial particles X2~XD(ii) a Wherein D is the population scale,an ith dimension component representing an nth particle position;
step 13, all the generated initial particles X are processednAccording to round (X)nX (N-1) +1) to obtain an initial dispensing scheme, wherein N is 1, 2.. D;
step 2, using a formulaCalculating an initial population X1~XDSetting the fitness value of each particle as the current individual optimal solution pbest of each particle; selecting the minimum from the individual optimal solutions pbest of the particles as the global optimal solution gbest of the initial population;
wherein, tqIs the threat value of the qth counterpart, pkqHit ratio of own k to counterpart q, ykqThe value of (1) is 0 or 1, if 1, own k attacks the opposite side q, otherwise own k does not attack the opposite side q;
and 3, performing optimization search by adopting an iterative process:
step 31, if the current particle population simultaneously meets the following three conditions, executing step 32; otherwise, directly executing 35;
1) the iteration times (t-m) for keeping the global optimal solution gbest unchanged continuously from the mth iteration to the current iteration is larger than a first set threshold;
2) setting t as the current iteration times, wherein t is smaller than a second set threshold;
3) the population explosion operator is not shielded, and the initial population explosion operator is defaulted to be not shielded;
step 32, determining the convergence degree of all particles:
calculating a convergence boundary c _ boundary through c _ boundary ((MaxDT-t)/MaxDT +0.05) × DIS _ BANG according to the current iteration time t, and calculating Euclidean distances DIS from each particle to the global optimal solution gbest, wherein if DIS is less than the convergence boundary c _ boundary, the particle converges to the global optimal solution gbest;
after the convergence degree of all the particles is judged, if the particles in the convergence boundary c _ boundary reach the set amount, executing step 33, otherwise, directly executing step 35;
wherein,MaxDT is the maximum iteration number, dis _ BANG is a constant, and represents the maximum convergence boundary;
step 33, after executing the population explosion operator, executing step 34, where executing the population explosion operator includes:
step 331, calculating explosive power BANG by using BANG ((MaxDT-t)/MaxDT +0.02) × (N/3) +1, wherein MaxDT is the maximum iteration number, and t is the current iteration number; ,
step 332, according toCalculating the explosion direction matrix f of the ith particleiThen the calculation result is expressed as:rand represents a random number uniformly distributed between 0 and 1,represents the ith particleWill be subject to "gravity",the j-th dimension, which represents the ith particle, will be subject to "repulsion", i.e., the force of the particle away from the global optimal solution direction; "gravitational" is the force that causes a particle to approach the direction of the global optimal solution;
step 333, using vi+fiX BANG update particle velocity viBy Xi+viUpdating the particle position Xi;
Step 34, use (w + w _1) x vi+c1×rand×(pbest-Xi)+(c2+c_2)×rand×(gbest-Xi) Updating the particle velocity viThen, step 36 is executed, in which w _1 and c _2 are the introduced adjustment parameters, and updating is performed after the end of each iteration, w _1 is updated in real time by w _1+ (-0.3/40), and c _2 is updated in real time by c _2+ (1/40);
wherein w is the weighted value of the original velocity in the velocity update formula, c1、c2Respectively updating the weight values of the local optimal solution and the global optimal solution in the formula;
step 35, if the condition 3 is not satisfied):
then according to (w + w _1) × vi+ci×rand×(pbest-Xi)+(c2+c_2)×rand×(gbest-Xi) Updating the particle velocity viThen, step 36 is performed;
if condition 3 is satisfied):
according to w × vi+c1×rand×(pbest-Xi)+c2×rand×(gbest-Xi) Updating the particle velocity viThen, step 36 is performed;
step 36, detecting whether the particle speed is out of range: velocity v of the particlesiThe value of any dimension is [ -N/4, N/4]Otherwise, the boundary is crossed, otherwise, the boundary is not crossed; if the boundary is crossed, the speed value of the dimension is a boundary value, and the speed which is not crossed is unchanged; step 37 is executed;
step 37, according to Xi+viUpdating the particle position XiStep 38 is executed;
step 38, detecting whether the position of the particle is out of range: if the value of any one dimension of the particle is beyond [1, N ], the boundary is crossed, otherwise, the boundary is not crossed; if the boundary is crossed, the value of the dimension is a random value within a certain range near the boundary value, and the position which is not crossed is unchanged;
step 39, updating the global optimal solution and the individual optimal solution
If the fitness of the new position of the particle generated by the t iterations is smaller than the fitness of the individual optimal solution pbest of the particle, updating the individual optimal solution of the particle to be the new position of the particle, otherwise, keeping the fitness unchanged; if the fitness of the individual optimal solution of the new position of the particle is smaller than the fitness of the global optimal solution, replacing the global optimal solution with the individual optimal solution of the particle, otherwise, keeping the fitness unchanged; step 40 and step 41 are performed simultaneously;
step 40, if the population explosion operator is executed in the current iteration process, generating a shadow population: the initial position of the shadow population is the position of the particles after the t-1 times of iteration execution or the individual optimal position of each particle; if the population explosion operator is not executed in the current iteration process, directly executing the step 4;
performing cross operation in sequence from t +1 to t + U of the influence algebra of the population explosion operator until the t + U iteration is finished, and obtaining the global optimal solution of the shadow population;
u is the population explosion shielding amount, namely the default population explosion operator from t +1 to t + U is shielded and influenced by the population explosion operator, and step 42 is executed;
step 41, in the iterations from t +1 to t + U, the actual population directly executes steps 34, 36, 37, 38 and 39 until the iteration from t + U is finished, a global optimal solution of the actual population is obtained, and step 42 is executed;
and 42, fusing the shadow population with the actual population: if the fitness of the global optimal solution of the shadow population is smaller than the fitness value of the global optimal solution of the actual population, assigning the global optimal solution of the shadow population to the global optimal solution of the actual population, selecting a particle at the same time, assigning the global optimal solution of the shadow population to the individual optimal solution of the particle, and then executing the step 4;
step 4, judging whether the maximum iteration times of the particle swarm reaches the set times, if so, finishing the iteration, obtaining the final global optimal solution of the actual population after the iteration is finished, and converting the final global optimal solution into a distribution scheme; otherwise, returning to execute the step 3.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510155893.1A CN105005820B (en) | 2015-04-03 | 2015-04-03 | Target assignment optimizing method based on particle swarm algorithm of population explosion |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510155893.1A CN105005820B (en) | 2015-04-03 | 2015-04-03 | Target assignment optimizing method based on particle swarm algorithm of population explosion |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105005820A true CN105005820A (en) | 2015-10-28 |
CN105005820B CN105005820B (en) | 2017-02-22 |
Family
ID=54378483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510155893.1A Active CN105005820B (en) | 2015-04-03 | 2015-04-03 | Target assignment optimizing method based on particle swarm algorithm of population explosion |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105005820B (en) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105470947A (en) * | 2015-11-23 | 2016-04-06 | 杭州电子科技大学 | Micro-power-grid scheduling method based on quantum-behaved particle swarm optimization |
CN107273581A (en) * | 2017-05-23 | 2017-10-20 | 浙江大学 | A kind of adaptive electric field automatic analysis system |
CN109739959A (en) * | 2018-11-30 | 2019-05-10 | 东软集团股份有限公司 | Method and device used in being calculated in topic association |
CN109872009A (en) * | 2019-03-14 | 2019-06-11 | 西安电子科技大学 | A kind of interference increment method method for improving particle swarm algorithm |
CN111709525A (en) * | 2019-07-18 | 2020-09-25 | 中国人民解放军火箭军工程大学 | Weapon-target allocation solution based on improved genetic algorithm |
CN111709547A (en) * | 2019-08-02 | 2020-09-25 | 中国人民解放军火箭军工程大学 | Weapon-target distribution solution method based on multi-target particle swarm algorithm |
CN112307622A (en) * | 2020-10-30 | 2021-02-02 | 中国兵器科学研究院 | Autonomous planning system and planning method for generating military forces by computer |
CN112907057A (en) * | 2021-02-06 | 2021-06-04 | 北京理工大学 | Production scheduling optimization method and system based on improved MOPSO algorithm |
CN113435722A (en) * | 2021-06-17 | 2021-09-24 | 上海海事大学 | Multi-device hybrid scheduling method for U-shaped automatic wharf and electronic device |
CN114040336A (en) * | 2021-11-05 | 2022-02-11 | 北京理工大学 | Beacon deployment method based on epitome decision positioning method and particle swarm optimization algorithm |
CN118212001A (en) * | 2024-03-19 | 2024-06-18 | 涅生科技(广州)股份有限公司 | Electronic commerce market trend prediction system based on big data analysis |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101908097A (en) * | 2010-07-13 | 2010-12-08 | 北京航空航天大学 | Particle swarm optimization method for air combat decision |
CN104200264A (en) * | 2014-09-25 | 2014-12-10 | 国家电网公司 | Two-stage particle swarm optimization algorithm including independent global search |
-
2015
- 2015-04-03 CN CN201510155893.1A patent/CN105005820B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101908097A (en) * | 2010-07-13 | 2010-12-08 | 北京航空航天大学 | Particle swarm optimization method for air combat decision |
CN104200264A (en) * | 2014-09-25 | 2014-12-10 | 国家电网公司 | Two-stage particle swarm optimization algorithm including independent global search |
Non-Patent Citations (3)
Title |
---|
YUHUI SHI等: "《Parameter Selection in Particle Swarm Optimization》", 《EVOLUTIONARY PROGRAMMINGⅦ, LECTURE NOTES IN COMPUTER SCIENCE,SPRINGER,1998》 * |
李宁等: "《带变异算子的粒子群优化算法》", 《计算机工程与应用》 * |
范赞超: "《改进粒子群算法研究》", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105470947B (en) * | 2015-11-23 | 2017-12-22 | 杭州电子科技大学 | A kind of micro-capacitance sensor dispatching method based on quantum-behaved particle swarm optimization |
CN105470947A (en) * | 2015-11-23 | 2016-04-06 | 杭州电子科技大学 | Micro-power-grid scheduling method based on quantum-behaved particle swarm optimization |
CN107273581B (en) * | 2017-05-23 | 2020-03-06 | 浙江大学 | Self-adaptive electric field automatic analysis system |
CN107273581A (en) * | 2017-05-23 | 2017-10-20 | 浙江大学 | A kind of adaptive electric field automatic analysis system |
CN109739959B (en) * | 2018-11-30 | 2021-02-26 | 东软集团股份有限公司 | Method and device used in topic association calculation |
CN109739959A (en) * | 2018-11-30 | 2019-05-10 | 东软集团股份有限公司 | Method and device used in being calculated in topic association |
CN109872009A (en) * | 2019-03-14 | 2019-06-11 | 西安电子科技大学 | A kind of interference increment method method for improving particle swarm algorithm |
CN111709525A (en) * | 2019-07-18 | 2020-09-25 | 中国人民解放军火箭军工程大学 | Weapon-target allocation solution based on improved genetic algorithm |
CN111709525B (en) * | 2019-07-18 | 2023-06-02 | 中国人民解放军火箭军工程大学 | Weapon-target distribution solving method based on improved genetic algorithm |
CN111709547A (en) * | 2019-08-02 | 2020-09-25 | 中国人民解放军火箭军工程大学 | Weapon-target distribution solution method based on multi-target particle swarm algorithm |
CN111709547B (en) * | 2019-08-02 | 2024-04-23 | 中国人民解放军火箭军工程大学 | Weapon-target distribution solving method based on multi-target particle swarm algorithm |
CN112307622A (en) * | 2020-10-30 | 2021-02-02 | 中国兵器科学研究院 | Autonomous planning system and planning method for generating military forces by computer |
CN112307622B (en) * | 2020-10-30 | 2024-05-17 | 中国兵器科学研究院 | Autonomous planning system and planning method for generating force by computer |
CN112907057A (en) * | 2021-02-06 | 2021-06-04 | 北京理工大学 | Production scheduling optimization method and system based on improved MOPSO algorithm |
CN112907057B (en) * | 2021-02-06 | 2022-11-11 | 北京理工大学 | Production scheduling optimization method and system based on improved MOPSO algorithm |
CN113435722B (en) * | 2021-06-17 | 2024-01-23 | 上海海事大学 | Multi-device mixed scheduling method for U-shaped automatic wharf and electronic device |
CN113435722A (en) * | 2021-06-17 | 2021-09-24 | 上海海事大学 | Multi-device hybrid scheduling method for U-shaped automatic wharf and electronic device |
CN114040336B (en) * | 2021-11-05 | 2023-11-17 | 北京理工大学 | Beacon deployment method based on reduction judgment positioning method and particle swarm optimization algorithm |
CN114040336A (en) * | 2021-11-05 | 2022-02-11 | 北京理工大学 | Beacon deployment method based on epitome decision positioning method and particle swarm optimization algorithm |
CN118212001A (en) * | 2024-03-19 | 2024-06-18 | 涅生科技(广州)股份有限公司 | Electronic commerce market trend prediction system based on big data analysis |
Also Published As
Publication number | Publication date |
---|---|
CN105005820B (en) | 2017-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105005820B (en) | Target assignment optimizing method based on particle swarm algorithm of population explosion | |
Abd Elaziz et al. | An improved opposition-based sine cosine algorithm for global optimization | |
CN105893694A (en) | Complex system designing method based on resampling particle swarm optimization algorithm | |
Asghari et al. | Multi‐swarm and chaotic whale‐particle swarm optimization algorithm with a selection method based on roulette wheel | |
CN112507622A (en) | Anti-unmanned aerial vehicle task allocation method based on reinforcement learning | |
Jiang et al. | Optimal allocation of cooperative jamming resource based on hybrid quantum‐behaved particle swarm optimisation and genetic algorithm | |
Hu et al. | Improved Ant Colony Optimization for Weapon‐Target Assignment | |
CN111797966B (en) | Multi-machine collaborative global target distribution method based on improved flock algorithm | |
CN112070418B (en) | Weapon target distribution method of multi-target whale optimization algorithm | |
CN115047907B (en) | Air isomorphic formation command method based on multi-agent PPO algorithm | |
CN114926026B (en) | Target distribution optimization method for multi-dimensional feature deep learning | |
CN108694438A (en) | A kind of single-object problem method and system of combination explosion strategy, backward learning and bat algorithm | |
CN110766125A (en) | Multi-target weapon-target allocation method based on artificial fish swarm algorithm | |
CN116017476A (en) | Wireless sensor network coverage design method and device | |
CN109299491B (en) | Meta-model modeling method based on dynamic influence graph strategy and using method | |
CN117391364A (en) | Multi-station cooperative electronic interference resource allocation method | |
Cheng et al. | Weapon-target assignment of ballistic missiles based on Q-learning and genetic algorithm | |
CN111382896B (en) | WTA target optimization method of self-adaptive chaotic parallel clone selection algorithm | |
CN111461282A (en) | Model identification method based on improved quantum behavior particle swarm algorithm | |
Tripathi et al. | A nature inspired hybrid optimisation algorithm for dynamic environment with real parameter encoding | |
Zhang et al. | AFOA: an adaptive fruit fly optimization algorithm with global optimizing ability | |
CN108446858B (en) | Air-to-ground threat assessment method based on specific network structure | |
CN116095670A (en) | Attack and defense game modeling and equilibrium analysis method based on 5G graph structure network | |
CN117556718B (en) | Thermal power distribution method based on neural network and multi-strategy combined gray wolf optimization algorithm | |
Huang et al. | Dynamic Task Allocation for Heterogeneous Multi-UAVs in Uncertain Environments Based on 4DI-GWO Algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |