自组织迁移算法

自组织迁移算法(self organizing migrating algorithm,SOMA)是捷克学者Zelinka提出的一种新型进化算法。与多数进化算法一样,SOMA也是一种基于群体的随机优化算法,但与遗传算法等传统进化算法不同,SOMA的社会生物学基础是社会环境下群体的自组织行为 ,如社会性动物的使用觅食行为。从这一意义上说,SOMA可以和蚁群算法粒子群算法一样归于群智能的范畴。

在生物群体中,合作与竞争往往是并存的。如一群动物在寻找食物时,若某一个休率先发现食物而成为群体中的领先者,群体中其它个体得到此信息后,往往会改变其运动方向,向领先者所在位置前进。如在搜索过程中,某个体比先前的领先者更为成功(如发现更多或更好的食物),群体中其它个体德高望重会再次改变其运动方向,转而向新的领先者所在位置前进。SOMA从上述“合作-竞争”行为中得到启发,通过寻优群体在问题空间中的自组织迁移运动,逐步达到或接近最优解。

产生新个体的方式:

Vi = Xi + (Xb – Xi)*t*PRTVector

PRTVector由参数PRT决定的向量,决定搜索方向(起到交叉作用)

t为以小步长step为参数的累积运行路径长度,最大值为PathLength(起到变异作用)

运动过程中如果发现比当前更优则个体迁移到此新的位置

所有个体都运动后重新选定领先者



发表评论

You must be logged in to post a comment.