本篇主要介绍一些启发式算法,包括粒子群算法,模拟退火算法,遗传算法。这些启发式的算法也是解决最优化问题的途径之一。
粒子群算法(PSO)
粒子群算法的思想是,粒子群算法是通过模拟鸟群捕食行为设计的一种群智能算法。区域内有大大小小不同的食物源,鸟群的任务是找到最大的食物源(全局最优解),鸟群的任务是找到这个食物源。鸟群在整个搜寻的过程中,通过相互传递各自位置的信息,让其他的鸟知道食物源的位置最终,整个鸟群都能聚集在食物源周围,即我们所说的找到了最优解,问题收敛。
假设 p b e s t p_{best} pbest是当前粒子的最优解, g b e s t g_{best} gbest是全局最优解, v v v表示粒子的速度, x x x表示粒子当前的位置。
v i = α v i + c 1 r 1 ( p b e s t i − x i ) + c 2 r 2 ( g b e s t − x i ) x i = x i + v i v^i=\alpha v^i+c_1 r_1(p_{best}^i-x^i)+c_2r_2(g_{best}-x^i) \\ x^i = x^i+v^i vi=