动态多目标:动态多目标猫群优化算法(DMOCSO)

作品简介

猫群优化算法:

猫群优化算法(Cat Swarm Optimization)是基于猫科动物的捕食策略提出的一种新型的群优化算法,由Shu-An Chu等人在2006年首次提出。一般来说,猫大部分时间都处于休息状态,很少去搜寻和捕捉猎物。但是猫的警觉性非常高,即使在休息的时候也处于一种高度的警惕状态,时刻保持对周围环境的警戒搜寻;它们对于活动的目标具有强烈的好奇心,一旦发现目标便进行跟踪,并且能够迅速地捕获到猎物。猫群算法正是关注了猫的搜寻和跟踪两种行为。

首先,将猫随机分布在整个搜索空间中,然后将猫细分为两种模式。第一种模式称为“搜寻模式”,该模式下的猫处于休息状态,密切注视着周围的环境;第二种模式称为“追踪模式”,是猫跟踪、追逐动态猎物时的状态。通过结合这两种模式往往能实现全局优化。

猫群算法中,一部分猫执行搜寻模式,剩下的则执行跟踪模式,两种模式通过结合率MR(Mixture Ratio)进行交互,MR表示执行跟踪模式下的猫的数量在整个猫群中所占的比例,在程序中MR应为一个较小的值,因为猫只会花一小部分时间跟踪它们的食物。

搜索模式

搜寻模式用来模拟猫的当前状态,分别为休息、四处查看、搜寻下一个移动位置。在搜寻模式中,定义了4个基本要素:维度变化数(counts of dimension to change,CDC)、维度变化域(seeking range of selected dimension,SRD)、搜寻记忆池(seeking memory pool,SMP)和自身位置判断(self-position consideration,SPC)。CDC指用于变异的维度个数,其值是一个从0到总维数之间的随机值;SRD声明了所选维度的变化量,对于需要进行变异的维度,新旧值之间的变化不能超出范围定义,而这个范围正是由SRD定义的;SMP定义了每一只猫的搜寻记忆大小,表示猫所搜寻到的位置点,猫将根据适应度大小从记忆池中选择一个最好的位置点;SPC是一个布尔值,表示猫是否将已经过的位置作为将要移动到的候选位置之一,其值不影响SMP的取值。搜寻模式过程如下:


跟踪模式:

跟踪模式对猫在跟踪目标时的情况进行建模,一旦猫进入跟踪模式,其会根据每一维上的速度进行移动。跟踪模式过程如下:

实验结果:

将猫群优化算法运用于求解动态多目标问题,开创性的提出动态多目标猫群优化算法,下图为求解动态多目标函数的部分过程示意图。动态多目标猫群优化算法在求解动态多目标问题上优势显著,潜力巨大。

文件中包含完整的动态多目标猫群优化算法代码,可以直接下载运行。



创作时间: