AI有很多定义。根据Merrian-Webster字典,人工智能是计算机科学的一个大领域,它模拟计算机中的智能行为。基于此,一种基于元启发式算法的算法实现称为粒子群优化(最初提出模拟鸟类寻找食物,鱼群的运动等)能够模拟群体的行为,以迭代地优化数值问题。例如,它可以被分类为群体智能算法,如蚁群算法,人工蜂群算法和细菌觅食算法。
由J. Kennedy和R.Eberhart于1995年提出的文章“粒子群优化”因其持续的优化过程(允许多目标的变化)而变得非常受欢迎。在不断搜索最佳解决方案的过程中,该方法将粒子(在本例中表示为A(x,y)位置)移动,并在每次迭代中计算出一定的速度。预期的最终结果是粒子群收敛到最佳解。重要的是要提到PSO不使用梯度下降,因此一旦它不要求问题必须是可微分的,它就可以用于非线性问题。
算法
让我们观察伪代码
首先,在2个for循环中,它初始化粒子的位置,在允许的范围内对其所有维度进行随机均匀分布(有些问题需要处理到几个维度)。然后,对于每个粒子,它计算它的适应度值,并与自己的最佳位置(p_best值是该特定粒子有史以来的最佳位置)进行比较,然后在g_best中选择所有粒子的最佳位置。
让我们仔细研究定义粒子维度下一次迭代速度的等式:Vᵢ(k + 1)是下一个迭代速度
W是惯性参数。此参数影响最后一个速度值给出的运动传播。
C 1和C 2是加速系数。C 1值给出了个体最佳值的重要性,C 2是群体最佳值的重要性。
Pᵢ是最佳的个体位置,