一、鸡群优化算法(Chicken Swarm Optimization, CSO)
CSO算法是由Meng等于2014年10月在第五次国际群体智能会议(ICSI)上提出的一种新的仿生算法,CSO算法模拟了鸡群的层次结构和鸡群觅食行为,包括公鸡、母鸡和小鸡,可以有效地提取鸡群的智能来优化问题。CSO算法能够简单、快速地解决科学研究领域中的各类数值计算问题,具有收敛速度快和收敛效率高的优点。
(一)首先理想化鸡的行为:
1、在鸡群中,有几个群体。每组由一只占主导地位的公鸡、几只母鸡和小鸡组成。
2、如何将鸡群分成几组,并确定鸡(公鸡、母鸡和小鸡)的身份,都取决于鸡本身的适应值。几个适应值最好的鸡将被当作公鸡,每只公鸡都是一组中的领头公鸡。几个适应值最差的鸡将被指定为雏鸡。其他的应该是母鸡。母鸡随机选择住在哪一组。母鸡和小鸡之间的母子关系也是随机建立的。
3、群体内部的等级秩序、支配关系和母子关系保持不变。这些状态每隔几(G)个时间步长才更新一次。
4、鸡跟着它们的同伴公鸡去寻找食物,而它们可能阻止公鸡吃自己的食物。假设鸡会随意偷别人已经找到的好食物。小鸡在妈妈(母鸡)周围寻找食物。优势个体在食物竞争中占优势。
5、假设RN、HN、CN和MN分别表示公鸡、母鸡、雏鸡和母鸡的数量。最好的RN鸡将被认为是公鸡,而最差的CN鸡将被认为是雏鸡。其余的被当作母鸡对待。由它们在时间步长 t 的位置xi,jt (i∈[1,...,N],j∈[1,...,D])描述的所有N只虚拟鸡在D维空间中搜索食物。在这项工作中,最优化问题是最小问题。因此,最好的RN鸡对应于RN适合度最小的鸡。
(二)鸡的行为
1、公鸡:适合值较高的公鸡比适合值较差的公鸡优先获得食物。为了简单起见,这种情况可以用适应值较好的公鸡比适应值较差的公鸡在更广泛的地方寻找食物的情况来模拟。这可以用下面的公式表示。
2、母鸡:至于母鸡,它们可以跟着它们的同伴公鸡去寻找食物。此外,它们还会随意偷取其他鸡找到的好食物,尽管它们会受到其他鸡的压制。在争夺食物方面,优势更强的母鸡比那些顺从的母鸡更有优势。这些现象可以用数学公式表示如下。
3、小鸡:小鸡在母鸡妈妈周围觅食,公式如下。
算法如下:
参考文献《A New Bio-inspired Algorithm: Chicken Swarm Optimization》——Xian-Bing Meng、Yu Liu
二、蜻蜓算法(Dragonflfly Algorithm, DA)
蜻蜓算法(Dragonfly Algorithm)是由Seyedali Mirjalili在2015年提出的一种新兴群智能算法。Reynoldz指出三个关于蜂群体行为准则:分离度、对齐度与聚合度。分离度是指相邻个体间保持适当距离,以免碰撞;对齐度是指速度和方向与相邻个体对齐;聚合度是指个体飞向相邻区域中心。蜻蜓主要目标都是生存,Seyedali Mirjalili提出五个因素影响蜻蜓算法的位置更新:分离,列队,聚集,捕食,逃离。数学模型如下:
参考文献:《基于蜻蜓算法的改进研究》
参考链接:https://www.hanspub.org/journal/paperinformation.aspx?paperid=31406
随机游走(Random Walk):
介绍乌鸦的习性:乌鸦会观察其他鸟类隐藏食物的地方,并在它们离开后偷走它。如果一只乌鸦犯了偷窃行为,它将需要采取额外的预防措施,例如移动藏身之处以避免成为未来的受害者。事实上,他们利用自己的小偷经验来预测盗窃者的行为,并且可以确定最安全的方法来保护他们的藏物处不被盗。
基于上述智能行为,开发了基于人口的元启发式算法CSA。CSA的原则如下:
1.乌鸦以群居的形式生活。
2.乌鸦记住了它们藏食物的位置。
3.乌鸦跟着领导者做偷取食物。
4.乌鸦保护他们的藏物处一定概率下不被偷窃。
原文链接:https://blog.csdn.net/weixin_41246729/java/article/details/82390511