Path Planning: Particle Swarm Algorithm

1. Theoretical basis

Particle swarm optimization (PSO) is a biological heuristic method in the field of computational intelligence, which belongs to a kind of swarm intelligence optimization algorithm. Common swarm intelligence optimization algorithms mainly include the following categories: (1) Ant colony
  algorithm (Ant Colony Optimization, referred to as ACO) [proposed in 1992];
  (2) Particle Swarm Optimization algorithm (Particle Swarm Optimization, referred to as PSO) [proposed in 1995] (simple and easy to implement, and is currently the most widely used swarm intelligence optimization algorithm) ;
  (3) Bacterial Foraging Optimization (BFO for short) [proposed in 2002]; (
  4) Shuffled Frog Leading Algorithm (SFLA for short) [proposed in 2003];
  (5) Artificial bee colony algorithm (Artificial Bee Colony Algorithm, referred to as ABC) [proposed in 2005];
  in addition to the above-mentioned common swarm intelligence algorithms, there are some swarm intelligence algorithms that are not widely used, such as firefly algorithm, cuckoo algorithm, bat algorithm and phosphorus algorithm. Shrimp swarm algorithm and so on.

The particle swarm optimization algorithm (PSO) is derived from the study of bird predation behavior. When birds prey, the simplest and limited strategy to find food is to search around the bird that is currently closest to the food.

To give a popular example:

A group of birds are looking for food. There is a food in this area. All the birds don’t know where the food is, but the food emits a scent. The birds can judge how far their current location is from the food through the intensity of the scent. At the same time, the birds It is possible for flocks to communicate and tell where the birds closest to food are. Just imagine what will happen at this time?

Bird A: Hahaha, I am the closest to the food!

Bird B, C, D...: I have to hurry to see Bird A!

At the same time, when the position of each bird is constantly changing, the distance from the food is also constantly changing, so there must be a position closest to the food, which is a reference for them.

Bird Moumou: My position just now seems to be very close to the food, I have to get closer there!

Through such a process and constant changes, the flock of birds will eventually gather in the direction of food and achieve the goal. In the process of this change, there are two factors that affect the change of the bird's movement state:

The position of the bird closest to the food
The position closest to the food that I have reached before
And every time the position of the bird changes, in addition to the above two factors, there is another factor that is inertia. The change in position is represented by the amount of change (speed).

Through the above example, we can abstract the bird as a particle (point) without mass and volume, and extend it to the N-dimensional space. The position of the particle I in the N-dimensional space is expressed as a vector Xi=(x1, x2, ..., xN) , the flight speed is expressed as a vector Vi = (v1, v2, ..., vN). Each particle has a fitness value (fitness value) determined by the objective function, and knows the best position (pbest) found so far and the current position Xi. This can be regarded as the flight experience of the particle itself. In addition, each particle also knows the best position (gbest) found by all particles in the whole population so far (gbest is the best value in pbest). This can be regarded as the experience of the particle companion. Particles determine the next movement through their own experience and the best experience among their peers.

Read blog:
https://blog.csdn.net/qq_37913997/article/details/81807532

Guess you like

Origin blog.csdn.net/weixin_42754727/article/details/124646180