1.2.2 算法流程

粒子群算法运行的具体流程如下。

步骤1:初始化粒子群,随机产生n个位置为xi=(xi1xi2,…,xiD),速度为Vi=(vi1vi2,…,viD)的粒子个体,初始化个体极值pbest和全局最优值gbest,并设置最大迭代次数T

其中,pbest是每个粒子在迭代过程中找到的最优粒子,被称为个体极值;gbest是种群个体在迭代过程中找到的最优粒子,被称为全局极值。

步骤2:计算粒子的适应度值,并与当前pbest比较,如果较好,则替换pbest

步骤3:对每个粒子,用它的适应度值和全局极值gbest比较,如果较好,则替换gbest

步骤4:根据式(1-1)、式(1-2)更新每个粒子的速度和位置。

其中,ω为惯性因子,其值为非负。其值较大,全局寻优能力强,局部寻优能力弱;其值较小,全局寻优能力弱,局部寻优能力强。c1c2为学习因子,也称为加速度常数,取[0,2]之间的随机数。

步骤5:比较当前迭代次数t是否在最大迭代次数范围内,若tT,返回步骤2。

步骤6:确定最终最优值并输出。