粒子群算法
一·概念
粒子群优化算法(Partical Swarm Optimization PSO)
该算法基本思想是源于对鱼类、鸟类等群体社会行为的观察研究,是一种基于群体智能、自适应的搜索优化方法。
PSO模拟鸟群的捕食行为。一群鸟在随机搜索食物,在这个区域里只有一块食物。所有的鸟都不知道食物在那里。最简单有效的就是搜寻离食物最近的鸟的周围区域。
是通过模拟鸟群觅食行为而发展起来的一种基于群体协作的随机搜索算法。
二.与遗传算法比较
与遗传算法比较,PSO的信息共享机制是很不同的。在遗传算法中,染色体互相共享信息,所以整个种群的移动是比较均匀的向最优区域移动。在PSO中, 只有gBest (orlBest) 给出信息给其他的粒子, 这是单向的信息流动。整个搜索更新过程是跟随当前最优解的过程。与遗传算法比较, 在大多数的情况下,所有的粒子可能更快的收敛于最优解。
三.算法思想
基本思想:POS初始化为一群随机粒子,然后通过迭代找到最优解,每一个粒子自己搜寻过程中产生的最优解,代表粒子自身认知水平,称为个体极值Pbest,所以粒子构成的种群中的最优解,称为全局极值Gbest。粒子群算法先初始化一群随机粒子,再根据两个极值通过更新迭代找到最优解。
其基本的迭代方程如下:
V ( j , : ) = V ( j , : ) + c 1 ∗ r a n d ∗ ( p b e s t ( j , : ) − p o p ( j , : ) ) + c 2 ∗ r a n d ∗ ( g b e s t − p o p ( j , : ) ) ; V(j,:)= V(j,:) + c1*rand*(pbest(j,:) - pop(j,:)) + c2*rand*(gbest - pop(j,:)); V(j,:)=V(j,:)+c1∗rand∗(pbest(j,:)−pop(j,:))+