📜  猫群优化

📅  最后修改于: 2022-05-13 01:58:07.899000             🧑  作者: Mango

猫群优化

大自然充满了社会隔间来开展各种工作。即使所有人和集体行为的最终目标都是生存,但出于各种原因:狩猎、保护、航行和觅食动物以群体、牛群、学校、殖民地和羊群的形式工作和互动。生物发现最佳情况并以群体形式有效执行任务是非常有趣的。很明显,这种最佳和有效的行为已经演变了数千年。所以我们激励他们解决我们的问题是相当合乎逻辑的。这是称为群智能 (SI) 的研究领域的主要目标。在群智能(SI)领域已经提出了许多算法,例如蚁群优化(ACO)、粒子群优化(PSO)、灰狼优化器(GWO)等。

在本文中,我们将讨论猫群优化技术,这是一种基于群的优化技术。

灵感:

猫群优化显然受到现实世界中猫的行为的启发。根据生物学,大约有 32 种不同的猫科动物,从狮子到猎豹,从老虎到家猫。尽管他们生活在完全不同的环境中,但许多行为属性是相似的。尽管在大多数时候不活动,猫有强烈的好奇心。

在定义算法的数学模型之前,必须知道任何猫都有两种不同的存在状态。

  1. 寻找模式:猫在这种状态不活动,即休息、环顾四周或处于移动到另一个位置的状态。
  2. 跟踪模式:猫在此状态处于活动状态,即它们会改变当前位置。

数学模型:

让我们定义猫群优化模型。解空间中的每只猫都有自己的 N 维 d N ,每个维的速度v_{i,d}       ,一个标志,表明猫是否处于两种模式(寻求或跟踪)中的任何一种,最后是一个适应度值,表示猫对适应度函数的适应。



我们希望为猫找到最佳位置。

寻求模式:如前所述,处于这种状态的猫是不活动的。这种模式有四个基本要素,即:寻找内存池(SMP)、寻找选定维度的范围(SRD)、要改变的维度计数(CDC)和自我位置考虑(SPC)。

  • SMP:定义每只猫的记忆,指示猫追求的点。
  • SRD:声明所选维度的可变比率。
  • CDC:这个因素表明将改变多少维度。
  • SPC:猫已经放置的位置是否会成为猫移动的候选点。它是一个布尔值(真或假)。

注意:无论 SPC 的值如何,SMP 的值都不会受到影响。

1. I F SPC为真,则J = SMP否则J = SMP-1 2.卡特彼勒C k的当前位置被复制进行j次。 3. 根据CDC 的值,SRD 的值要么递减,要么递增。 4. 计算所有候选点的适应度值(FV)。 5. 如果所有的 FV 不相等,则将 FV 转换为选择概率: P_i = \frac{|FV_i - FV_b|}{FV_{max}-FV_{min}}其中 i 的范围在 (0,j) FV_b可以设置为FV_{max}或者FV_{min}根据适应度函数的目标最大化或最小化。 6. 随机选择候选点并替换猫C k的当前位置。

追踪模式:一旦猫处于追踪模式,猫的速度被指定为v_{i,d}       .

1. 根据以下内容更新每只猫的速度: v_{k,d} = v_{k,d} + c_1.r_1(X_{best,d}-X_{k,d})其中 d 的范围为 [1,N] X_{k,d} = X_{k,d} + v_{k,d} c 1是一个常数,r 1 的范围在 [0,1] 和X_{k,d}X_{best,d}分别是维度 d 中猫 C k的位置和具有最佳 FV 的猫的位置。 2. I F v_{k,d} > v_{max}然后v_{k,d} = v_{max}别的v_{k,d} = v_{k,d}

CSO算法

为了合并这两种模式,我们必须记住,猫大部分时间都在寻找模式。因此,我们定义了一个混合比 (MR),它表明在执行 CSO 时要考虑的任一模式中的多少。很明显,我们必须将 MR 的值保持在非常低的值,以解决猫在搜索模式中花费最多时间的情况。

1.创造M只猫。 2. 在 N 维解空间中随机丢弃 M 只猫。根据下式分配每只猫的速度v_{max} . 3.根据MR将猫分配到追踪模式,休息到寻找模式。 4.应用猫的位置X_{k,d}进入适应度函数并计算适应度值 FV。 5. 根据它们的标志值移动猫。如果 C k处于跟踪模式,则对其应用跟踪模式过程,如果不是,则应用寻找模式过程。 6.根据MR重新分配猫。 7. 重复步骤 4 到 6,直到满足终止条件。

通过应用 CSO,我们得到X_{best,d}       这是具有最佳 FV 的猫的位置。

这就是 CSO 算法的工作原理。

参考:

https://link.springer.com/chapter/10.1007/978-3-540-36668-3_94