在人工智能计算和系统工程等领域中,许多离散空间优化问题常具有解的多样性、动态性以及目标函数收敛速度慢等特点。为了在有限的空间环境下快速搜寻到优化问题的最优解,学者们已对多种智能算法进行融合并展开了广泛的研究和应用。
狼群演化算法(wolf pack evolutionary algorithm,WPEA)作为模拟自然界群狼分工协作捕猎的启发式智能优化算法,1970年美国著名专家Mech[1]在其著作中对狼群的行为特征进行了详细的描述;2014年Mirjalili等[2]将该算法与金字塔模型进行结合,提出了一种具有等级森严的狼群捕猎层次模型,该算法在解决实数空间问题的应用效果明显。此后针对离散空间优化问题,文献[3]针对分类特征子集的优化问题,提出了二进制狼群演化算法;文献[4-5]提出了一种改进的二进制狼群演化算法,扩展了狼群演化算法的应用范围;Srikanth等[6]在深入分析狼群演化算法的基础上,针对组合调度优化问题,提出了二进制量子狼群演化算法(quantum wolf pack evolutionary algorithm,QWPEA)。QWPEA算法相对于WPEA算法具有原理简单、参数设置少、收敛速度快、较强的全局搜索能力等特点,在测试函数和实际工程应用中取得了突出的效果[7-8]。但这些应用都是以固定的搜索空间和种群个体位置的静态更新为基础进行优化求解,对于离散空间中局部和全局的并行演化以及狼群中的个体狼的量子位置旋转角的动态选取和调整问题,QWPEA算法并没有一个有效的解决方法。
元胞自动机(cellar automation,CA)最早由冯诺伊曼在1966年提出[9],CA是一种根据简单的并行演化规则和协同更新方法,采用元胞来模拟复杂的离散系统动力学方法[10],CA具有时空动态性、状态离散性和同步性等基本特征。
为了解决有限的离散空间内狼群演化算法的收敛速度慢、搜索能力弱以及易于陷入局部最优等问题,提出了一种求解离散优化问题的元胞量子狼群演化算法(cellar quantum-behaved wolf pack evolutionary algorithm,CQWPEA),该算法主要采用二进制编码方式和元胞自动机中的演化规则,分别实现量子狼群中的个体狼位置与猎物之间的距离以及量子旋转角的选取和调整,并给出了头狼与猎物资源位置的编码方式,同时给出了探狼和猛狼局部搜索算子的编码方式,分析了编码规则。另外,采用泛函分析方法对该算法的收敛性进行了证明,最后通过6个测试函数验证了CQWPEA算法的有效性和合理性。
1 量子狼群演化算法为了使量子狼群算法适应离散搜索空间寻优问题,受二进制编码量子粒子群演化算法[11]的启示,在量子狼群演化算法中引入二进制编码,融合元胞自动机演化规则,提出了求解离散优化问题的元胞量子行为狼群演化算法。为分析方便,首先对元胞自动机原理、二进制量子狼群演化算法中的狼群行为规则、头狼产生规则、狼群更新和变异等演化方程进行描述。
1.1 元胞自动机原理元胞自动机通过利用大量元胞的并行演化规则来模拟复杂结构和过程,成为探索复杂系统的有效工具[12]。CA协同更新元胞空间中的所有元胞,协同更新的规则:下一个时刻元胞
Download:
|
|
元胞自动机的动态演化规则以元胞的动态时间状态变化集合为基础,其可表示为
$F: S_t^Z \to S_{t + 1}^Z $ | (1) |
式中:
元胞的局部演化函数
$f: S_t^{2r + 1} \to S_{t + 1}$ | (2) |
元胞局部演化函数
$ {F(c}_{t + 1}^i ) = f( c_t^{i - r} ,c_t^{i - r + 1}, \cdots , c_t^i , \cdots , c_t^{i + r} )$ | (3) |
式中:
CA由一个标准的四元组构成,其形式为
$A = ( H_D ,S,M,f)$ | (4) |
式中:
$N = ( S_1 , S_2 , \cdots , S_n )$ | (5) |
式中:
在量子狼群演化算法中,人工狼编码是以一组量子位和二进制表示,每个量子位的状态可用式表(6)示:
$\left| \mu \right\rangle = \alpha \left| 0 \right\rangle + \beta \left| 1 \right\rangle $ | (6) |
式中
人工狼当前位置的编码可通过量子位的概率幅表示,考虑到狼群初始化时编码的随机性,假设采用量子方式编码的个体为
${p} = \left[ \begin{array}{l} \alpha _1 \quad {\alpha }_2 \quad \cdots \quad \alpha _d \\ \beta _1 \quad \beta _2 \quad \cdots \quad \beta _d \\ \end{array} \right]$ | (7) |
式中:
由此可知,量子狼群可表示为
${{q}}_i^g = \left[ \begin{array}{l} \alpha _{i1}^g \quad {\alpha }_{i2}^g \quad \cdots \quad \alpha _{id}^g \\ \beta _{i1}^g \quad \beta _{i2}^g \quad \cdots \quad \beta _{id}^g \\ \end{array} \right]$ | (8) |
最后通过对
在初始化狼群演化过程中,狼群中每匹狼位置的所有量子位对应态的概率幅可采用Logistic混沌映射产生,其产生的基本过程为:
1) 设狼群规模为
2) 随机产生
3) 对式(9)采用迭代计算获得相应的混沌变量序列
$x_{k + 1}^j = \mu x_k^j (1 - x_k^j ),\quad k = 0,1, \cdots ,n$ | (9) |
式中:μ为混沌因子,
4) 采用2种策略将式(8)中的
5) 计算全部
在初始解空间中,将最接近猎物资源(或最优目标函数)的个体狼视为头狼,头狼直接进入迭代过程。算法运行中,通过比较每匹人工狼的量子位状态
$ s_j = \left\{ \begin{aligned} & 0,\quad {\rm{random}}\left[ {0,1} \right]> {\left| { \alpha _j } \right|}^2 \\& 1,\quad {\rm{random}}\left[ {0,1} \right] \leqslant {\left| { \alpha _j } \right|}^2 \\ \end{aligned} \right.$ | (10) |
式中:
在传统的进化算法中,与狼群算法的“优胜劣汰生存”规则和遗传算法的“轮盘赌”规则不同的是,本文设计了一种基于滑模原理的交叉量子位遗传演化方法,用于将选择之后产生的候选头狼集合
Download:
|
|
交叉权值分布函数为
$ f_{\rm{gs}} \left( {\left. { e_i } \right)} \right. = \frac{1}{{\sqrt {2{\text{π}}\sigma } }}\exp \left[ {\left. { - \frac{{ {\left( {\left. { e_i - \mu } \right)} \right.}^2 }}{{2 \sigma ^2 }}} \right]} \right.$ | (11) |
式中:
交叉权值为
$\left\{ \begin{aligned} & \omega _i = \int\limits_{\frac{i}{I}\sigma }^{\frac{{i + 1}}{I}\sigma } { f_{\rm{gs}} \left( {\left. { e_i } \right)} \right.{\rm{d}} e_i ,\quad i \in I} \\ &\displaystyle\sum\limits_{i = 1}^I { \omega _i = 1} \\ \end{aligned} \right.$ | (12) |
式中I表示当前候选头狼数量。
滑模位置为
$j_i^{\rm{sl}} = \left\{ \begin{aligned}& L, \quad \omega _i \in \left[ {0, I^{ - 1} } \right) \\ &\left\lfloor {L \times \left( {\left. {1 - \omega _i } \right)} \right.} \right\rfloor , \quad \omega _i \in \left( { I^{ - 1} ,(I - 2) \times I^{ - 1} } \right) \\ &2, \quad \omega _i \in \left( {(I - 2) \times I^{ - 1} ,1} \right) \\ \end{aligned} \right.$ | (13) |
式中:
在QWPEA中,当滑模交叉结束后,采用上次迭代过程中的最优解对狼群中的每一个量子位进行量子旋转门更新,更新过程如式(14)。
$\left[ \begin{array}{l} \!\!\! \cos \left( {\left. { \theta _{ij}^{t + 1} } \right)} \right. \!\!\! \\\!\!\! \sin \left( {\left. { \theta _{ij}^{t + 1} } \right)} \right. \!\!\! \\ \end{array} \right] = \left[ \begin{array}{l} \!\!\! \cos \left( {\left. {\Delta \theta _{ij}^{t + 1} } \right)} \right.\;\;\;\; - \sin \left( {\left. { {\Delta \theta }_{ij}^{t + 1} } \right)} \right. \!\!\! \\ \!\!\! \sin \left( {\left. {\Delta \theta _{ij}^{t + 1} } \right)} \right.\;\;\;\;\;\;\cos \left( {\left. {\Delta \theta _{ij}^{t + 1} } \right)} \right.\!\!\! \\ \end{array} \right] \times \left[ \begin{array}{l} \!\!\! \cos \left( {\left. { \theta _{ij}^t } \right)} \right.\!\!\! \\ \!\!\! \sin \left( {\left. { \theta _{ij}^t } \right)} \right. \!\!\! \\ \end{array} \right]$ | (14) |
式中:
由此可知,量子旋转门是通过改变描述量子人工狼位置的相位角来实现人工狼在搜索空间位置的同步移动。
1.2.5 量子狼群变异为了避免算法陷入局部最优解状态,维持狼群的多样性,以平衡
$\left[ \begin{array}{l}0\;\;\;1\\1\;\;\;\;1\end{array} \right]\left[ \begin{array}{l}\cos \left( {\left. { \theta _{ij} } \right)} \right.\\\sin \left( {\left. { \theta_{ij} } \right)} \right.\end{array} \right] = \left[ \begin{array}{l}\cos \left( {\left. { {\displaystyle{{\frac{\text{π}}{2}}} -} {\theta _{ij}} } \right)} \right.\\\sin \left( {\left. { {\displaystyle{{\frac{\text{π}}{2}}}- }{\theta _{ij}} } \right)} \right.\end{array} \right]$ | (15) |
式中:
假设变异概率为
1) 四处游走行为
假设量子人工探狼的当前状态为pi,在其感知的目标猎物资源信息为
$\left\{ \begin{array}{l} \!\!\! p^ * \in \max \{ {{\rm{fit}}_i^p} ,p \in H\} \\ \!\!\!{{\rm{fit}}_i^p}{\text{>}} {{\rm{fit}}_i}_{0} \\ \end{array} \right.$ | (16) |
在人工狼群中存在的个体探狼有着不同差异,嗅探猎物资源的方式也不同,因此可取不同的
$ x_{id}^p = x_{id} + \gamma \cdot \sin \left( {\left. {2{\text{π}} \times \frac{p}{h}} \right)} \right. \times {{\rm{step}}}_s^d $ | (17) |
式中:
2) 嚎叫召唤行为
假设量子人工头狼的当前状态为
$ x_{jd}^{k + 1} = x_{jd}^k + {\rm{step}}_b^d \cdot \left( {\left. {\left( {\left. { p_d^k - x_{jd}^k } \right)/\left| { p_d^k - x_{jd}^k } \right|} \right.} \right)} \right.$ | (18) |
式中:
猛狼在向头狼聚拢的过程中,如果猛狼
$ d_{{\rm{near}}} = \frac{1}{{D\omega }} \cdot \sum\limits_{d = 1}^D {\left| { {\max }_d - {\min }_d } \right|} $ | (19) |
式中:
3) 智能猎杀行为
假设量子人工头狼的当前状态为
$ x_{id}^{k + 1} = x_{id}^k + {\gamma \cdot {\rm{step}}}_i^d \cdot \left| { {\rm{fit}}_{id}^k - x_{id}^k } \right|$ | (20) |
式中:
假设在第
$ {{\rm{step}}}_s^d = 2 \cdot {{\rm{step}}}_i^d = {{ {{\rm{step}}}_b^d } / {2 = }}{{\left| { {\max }_d , {\min }_d } \right|} / S}$ | (21) |
式中:
在CQWPEA算法中,人工狼(头狼、探狼和猛狼)的位置表示为一组0、1构成的二进制编码向量,首先通过使用概率统计方法对个体狼与猎物之间的最优平均位置值进行编码,并记录编码位中出现的0、1次数,实现局部搜索算子编码位的计算;然后,采用元胞自动机选取和调整人工狼群位置的量子位旋转角,增强元胞量子狼群演化算法的搜索空间,加快算法的收敛速度。
CQWPEA的设计思路是,将散布在猎场空间中的量子狼群中的探狼朝着猎物遗留的气味浓度强和环境信息方向进行嗅探,一旦发现猎物,探狼需要判断自身与头狼距离猎物资源的位置,如果探狼与猎物的量子位置旋转角比头狼与猎物的量子位置旋转角大,则探狼代替头狼发起嚎叫召唤行为,否则向头狼报告猎物的位置信息;猛狼收到嚎叫召唤信号后,猛狼迅速向头狼所在位置或猎物所在位置靠拢,同时对猎场的周围环境进行探测,量子狼群进化算法中的人工狼之间以嚎叫信息实现相互通信,并通过元胞机中的局部演化规则不断调整人工狼的位置旋转角度,更好地调节人工狼群的搜索范围和定位猎物的位置,随着局部搜索过程的不断推进,人工狼群向着全局最优解逼近,最终通过计算头狼与猎物的平均最优位置来实现目标函数的优化求解。
2.1 个体狼位置的二进制编码在二进制编码的元胞量子狼群演化算法中,为了精确描述狼群中头狼与猎物资源之间的距离关系,将元胞空间作为量子狼群演化算法的搜索空间,将距离猎物资源最近的头狼所在位置
定义1 设以
${X_i} = \left\{ {{x_{i1}},{x_{i2}}, \cdots ,{x_{im}}{\rm{|}}i \in \left\{ {1,2, \cdots ,N;j \in 1,2, \cdots ,m} \right\}} \right\}$ | (22) |
式中:
$L\left( {p,q} \right) = \sum \limits_{j = 1}^m \left| {{x_{pj}} - {x_{qj}}} \right|,\quad p,q \in \left\{ {1,2, \cdots ,N} \right\}$ | (23) |
定义2 移动算子[5],设人工狼
定义3 设集合
$L = \left\{ {{\rm{Cell}}X = \left( {{c_1},{c_2}, \cdots ,{c_i}, \cdots ,{c_n}} \right){\rm{|}}{c_i} \in \left\{ {0,1} \right\}} \right\}$ | (24) |
式中CellX表示由
定义4[7] 扩展Moore邻居类型
$ N_{{\rm{moore}}} = \left\{ {{\rm{Cell}}\left. Y \right|{\rm{diff}}\left( {\left. {{\rm{cell}}Y - {\rm{cell}}\;X} \right)} \right. \leqslant r,{\rm{cell}}X,{\rm{cell}}Y \in L} \right\}$ | (25) |
式中:任意两个
在二进制编码的元胞量子狼群演化算法中,为了精确表达头狼和猎物资源之间的距离,根据定义1,假设头狼和猎物的位置为
Download:
|
|
在CQWPEA算法中,定义头狼与猎物(目标函数)含有决策变量的个数即为元胞空间的维数;例如,
$l = \sum \limits_{i = 1}^d {l_i},\quad d = 1,2, \cdots ,D$ | (26) |
根据量子狼群演化算法,通过修改算法中的头狼和猎物之间的平均最优位置
Download:
|
|
从图4中可知,狼群中有5个最优位置值,每个个体狼当前的最优个体信息分别为
在QWPEA算法中,式(17)、(18)是探狼和猛狼在整个搜索空间的局部位置信息,其值表示了局部搜索算子
$\left| {{p_{{id}}} - {p_{{\rm{best}}i}}} \right| \leqslant \left| {{p_{{\rm{best}}i}}} - {g_{\rm{best}}} \right|$ | (27) |
$\left| {{p_{{id}}} - {g_{\rm{best}}}} \right| \leqslant \left| {{p_{{\rm{best}}i}} - {g_{\rm{best}}}} \right|$ | (28) |
通过对
Download:
|
|
探狼和猛狼的局部搜索算子,
${p_{id}} = {p_{{{\rm{best}}}i}}\gamma x_{id}^p + {g_{{\rm{best}}}}\gamma x_{id}^p$ | (29) |
${p_{jd}} = {p_{{{\rm{best}}}i}}x_{jd}^k + {g_{{\rm{best}}}}x_{jd}^{k + 1}$ | (30) |
式中
在QWPEA算法中,新一代个体狼的概率幅是由上一代个体的概率幅与量子旋转门
${{U}}(\theta ) = \left[ \begin{aligned}& \cos \left( {\left. {\Delta \theta _{ij}^{t + 1} } \right)} \right.\;\;\; - \sin \left( {\left. { {\Delta \theta }_{ij}^{t + 1} } \right)} \right. \\ & \sin \left( {\left. {\Delta \theta _{ij}^{t + 1} } \right)} \right.\;\;\;\;\;\cos \left( {\left. {\Delta \theta _{ij}^{t + 1} } \right)} \right. \\ \end{aligned} \right]$ | (31) |
$\left[ {\begin{array}{*{20}{c}} {\alpha _i'} \\ {\beta _i'} \end{array}} \right] = U\left( \theta \right)\left[ {\begin{array}{*{20}{c}} {{\alpha _i}} \\ {{\beta _i}} \end{array}} \right]$ | (32) |
在QWPEA中,旋转变异的量子旋转角
设每匹狼
$\left\{ {\begin{aligned}&{{S^t} = 1,\quad{\text{则}}{S^{t + 1}} = \left\{ {\begin{aligned}{1,\;\;s = 2,3}\\{0,\;\;s \ne 2,3}\end{aligned}} \right.}\\&{{S^t} = 0,\quad{\text{则}}{S^{t + 1}} = \left\{ {\begin{aligned}{1,\;\;s = 3}\\{0,\;\;s \ne 3}\end{aligned}} \right.}\end{aligned}} \right.$ | (33) |
式中:
$\vartriangle \!\theta _{ij}^{g + 1} = \vartriangle \!\theta \left( {{c_1}\left( {p_{ij}^g - x_{ij}^g} \right) + {c_2}\left( {p_{gj}^g - x_{ij}^g} \right)} \right)$ | (34) |
式中:
$\Delta \theta = 0.04{\text{π}} - \frac{{\left( {0.04{\text{π}} - 0.01{\text{π}} } \right)T}}{{{T_{{\rm{max}}}}}}$ | (35) |
式中
为了增强量子狼群演化算法搜索范围,将量子旋转角进一步扩展到
$\Delta \theta _{ij}^{g + 1} = \left\{ {0,\;\; \pm \Delta \theta ,\;\; \pm 2\Delta \theta ,\;\;3\Delta \theta } \right\}$ | (36) |
由式(36)可知,本文算法中的量子旋转角扩大了3倍,呈现双向性,避免了混沌序列的迭代计算和多次比较的查表操作,节省了运算时间。
2.3 CQWPEA算法的步骤1) 初始化参数,根据1.2.2节的双策略对量子狼群的初始量子位进行初始化,并采用二进制序串的形式初始化狼群中的个体狼位置
2) 根据
3) 根据方程式(29)、(30)计算局部搜索算子
4) 根据初始狼群的适应度函数值计算种群中每个个体狼位置值,并与上一次迭代的局部最优值进行比较,如果适应度值
5) 量子人工狼按照式(31)~(36)进行元胞邻域搜索,并计算狼群体中新的适应度值。将狼群的全局最优位置值
6) 按头狼产生规则和猎物气息元胞邻居空间的演化规则对头狼位置
7) 将局部搜索算子
8) 判断是否满足迭代次数
9) 输出目前的最优解集和最优值。
3 CQWPEA算法的收敛性分析本节将用泛函分析方法[13-14]对CQWPEA算法的收敛性进行分析证明。令二进制编码字符集
${S^X} = \left\{ {\left( {{X_1},{X_2}, \cdots ,{X_M}} \right),{X_j} \in S,j = 1,2, \cdots ,M} \right\}$ | (37) |
狼群中人工狼的最佳位置空间为
${S^P} = \left\{ {\left( {{P_1},{P_2}, \cdots ,{P_M}} \right),{P_j} \in S,j{\rm{ = }}1,2, \cdots ,M} \right\}$ | (38) |
全局最优解的位置空间为
${S^g}{\rm{ = }}\left\{ {{P_g},{P_g} \in S} \right\} = S$ | (39) |
根据QWPEA算法的流程图[6]可知,QWPEA算法的解算过程遵循着反复迭代,逐渐求精的过程,该过程中包括目标函数适应度值的评价、
设
定义5 CQWPEA算法的搜索算子T是通过逐步迭代方式对个体狼的当前位置进行迭代搜索,以获得个体狼的最好位置的过程,该过程是从人工狼当前位置的元胞状态空间以及全局位置的元胞状态空间随机映射到个体狼最好位置状态空间,其映射形式为
$T:\varOmega \times {S^X} \times {S^P} \times {S^{\rm{g}}} \to {S^P}$ | (40) |
CQWPEA算法在每次迭代解算过程中产生一次映射
$P\left( {t + 1} \right) = T\left( {\omega ,X\left( t \right),P\left( t \right),{P_g}\left( t \right)} \right)$ | (41) |
式中:
实验表明,CQWPEA算法中每一代全局最好解位置的适应度值序列是一个递增序列,即
$f\left( {{P_{g,t - 1}}} \right) \leqslant f\left( {{P_{g,t}}} \right) \leqslant f\left( {{P_{g,t + 1}}} \right)$ | (42) |
式中:
在CQWPEA算法中,解算优化问题时,通常只需关注搜索过程中狼群攻击获得的最好解,不妨将迭代狼群体用全局最好位置来代替。由此对CQWPEA算法的映射过程进行重新定义,其形式为
${P_{g,t + 1}} = T\left( {\omega ,{P_{g,t}}} \right),\quad {P_{g,t}} \in P\left( t \right),\quad {P_{g,t + 1}} \in P\left( {t + 1} \right)$ | (43) |
在CQWPEA算法中,解算优化问题的过程可视为元胞演化空间之间的映射。以下采用随机映射的方法证明和分析CQWPEA算法的收敛性。
定义6 定义度量
$\begin{aligned} d\left( {{P_{g,i}},{P_{g,j}}} \right) = \left| {c - f\left( {{P_{g,i}}} \right) - \left( {c - f\left( {{P_{g,j}}} \right)} \right)} \right| = \left| {f\left( {{P_{g,i}}} \right) - f\left( {{P_{g,j}}} \right)} \right|\end{aligned} $ | (44) |
式中:
证明 首先证明
1)
2)
3)
其次证明
最后证明
定义7 随机搜索算子
$d(\{ \omega ,d(T(\omega ,{P_{g,i}}),T(\omega ,{P_{g,i + 1}}))K(\omega )d({P_{g,i}},{P_{g,i + 1}})\} ) =1$ |
${P_{g,i}},\;\; {P_{g,i + 1}} \in S$ |
定理1 CQWPEA算法的迭代过程形成的映射
证明 依据CQWPEA原理,每迭代一次均可产生比上一次更优的个体狼和目标猎物资源,所以存在一个非负实值随机变量
$\begin{array}{*{20}{c}}{d\left( {{T_{{\rm{CQWPEA}}}}\left( {\omega ,{P_{g,i - 1}}} \right),{T_{{\rm{CQWPEA}}}}\left( {\omega ,{P_{g,i}}} \right)} \right) = }{d\left( {{P_{g,i}},{P_{g,i + 1}}} \right)} =\\ \left| {\left( {c - f\left( {{P_{g,i}}} \right)} \right) - \left( {c - f\left( {{P_{g,i + 1}}} \right)} \right)} \right| \leqslant K\left( \omega \right)|\left( {c - f\left( {{P_{g,i - 1}}} \right)} \right) - \\\begin{array}{c}\left. \left( {c - f\left( {{P_{g,i}}} \right)} \right) \right| = K\left( \omega \right)d\left( {{P_{g,i - 1}},{P_{g,i}}} \right)\end{array}\\\begin{array}{c}{\varOmega _0} = \left\{ {\omega :d} {\left( {{T_{{\rm{CQWPEA}}}}\left( {\omega ,{P_{g,i - 1}}} \right),{T_{{\rm{CQWPEA}}}}\left( {\omega ,{P_{g,i - 1}}} \right)} \right) \leqslant } \right.\\\left. {K\left( \omega \right)d\left( {{P_{g,i - 1}},{P_{g,i}}} \right)} \right\} \leqslant \varOmega \\p\left( {{\varOmega _0}} \right) = 1\end{array}\end{array}$ |
由此可知,CQWPEA算法迭代过程中形成的映射
定理2 (随机压缩映射定理)设随机搜索算子
证明 首先利用巴拿赫压不动点定理,对
然后证明
为了检验CQWPEA算法的寻优性能,选取6个标准的测试函数进行仿真实验,6个测试函数的表达式如下:
1) Sphere函数
${f_1}\left( x \right) = \sum \limits_{i = 1}^d x_i^2, \quad - 100 \leqslant {x_i} \leqslant 100$ |
2) Schwefel函数
${f_2}\left( x \right) = 418.982\,\,9 \times d - \sum \limits_{i = 1}^d {x_i}\cdot {\rm{sin}}\left( {{{\left| {{x_i}} \right|}^{\frac{1}{2}}}} \right),\quad - 500 \leqslant {x_i} \leqslant 500$ |
3) Rosenbrock函数
${f_3}\left( x \right) = \sum \limits_{i = 1}^d \left[ {100{{\left( {{x_{i + 1}} - x_i^2} \right)}^2} + {{\left( {{x_i} - 1} \right)}^2}} \right],\quad - 30 \leqslant {x_i} \leqslant 30$ |
4) Rastrigrin函数
${f_4}\left( x \right) = \sum \limits_{i = 1}^d \left( {x_i^2 - 10\cos \left( {2 {\text{π}}{x_i}} \right) + 10} \right),\quad - 5.12 \leqslant {x_i} \leqslant 5.12$ |
5) Ackley函数
$\begin{array}{c}{f_5}\left( x \right) = - 20\exp \left( { - \displaystyle\frac{1}{5}\sqrt {\displaystyle\frac{1}{d}} \displaystyle\sum\limits_{i = 1}^d {x_i^2} } \right) - \\\exp\left( {\displaystyle\frac{1}{d}\displaystyle\sum\limits_{i = 1}^d {\cos } \left( {2{\text{π}} {x_i}} \right)} \right) + 20 + e,\quad - 32 \leqslant {x_i} \leqslant 32\end{array}$ |
6)Griewangk函数
${f_6}\left( x \right) = \frac{1}{{4\,\,000}} \sum \limits_{i = 1}^d x_i^2 - \prod \limits_{i = 1}^d \cos \left( {\frac{{{x_i}}}{{\sqrt i }}} \right) + 1, - 100 \leqslant {x_i} \leqslant 100$ |
在上述6个标准测试函数中,
采用CQWPEA算法对6个标准测试函数进行解算,并将其结果与WPEA、QWPEA算法的结果进行比较。其中相同的参数设置为:狼群规模均为500,最大迭代次数为500次,收敛精度设置为0.000 01。具体到每个不同算法的参数,在WPEA算法和QWPEA算法中,判定因子
从表1的结果可知,在满足固定收敛精度下,本文提出的CQWPEA算法分别在维度为10、20和30的基础上进行测试,发现除了Schwefel函数、Rosenbrock函数和Ackley函数外,其他3种函数经过20次实验均能一致性收敛到问题的全局最优解0。针对函数
由上述分析结果可以得出,从总体上来看,本文提出的求解离散优化问题的元胞量子狼群演化算法在寻优能力均要优于其他狼群演化算法和量子狼群演化算法,但从部分函数测试的结果可知,本文算法对于部分函数也会存在无法获得全局最优解问题,这主要是因为算法的初始参数设置的随机性、局部寻优结果差、元胞演化规则对量子旋转角的调整速度慢、量子相位角的选择不精确等原因造成的。
由表2的结果可知,在不同的维数和相同的优化步数下,从收敛率和消耗时间上来看,对于6种不同的标准测试函数,CQWPEA算法收敛率均可到达100%,且消耗时间明显比WPEA算法和QWPEA算法少;但对于不同的函数,3个算法的性能还存在一定的差异。对于f1(x)函数、f4(x)函数、f5(x)函数和f6(x)函数,WPEA算法的寻优结果不理想,主要是因为当维数大于3时,这4个典型的凹函数呈现多峰特征,具有大量的局部极值点,因此找到全局最优解较为困难。对于f3(x)函数、f4(x)函数和f6(x)函数,QWPEA算法的寻优结果的收敛率为0,其搜索到的最优解与目标函数的最优解的偏差较大,这是因为这3个函数是复杂的非线性多峰函数,寻优过程中会使算法陷入局部收敛;对于f2(x)函数和f3(x)函数,QWPEA算法的收敛率也几乎为0,其搜索到的最优解偏差也较大。
由上述的比较结果知,与WPEA算法和QWPEA算法相比,无论从收敛精度还是收敛稳定性方面,CQWPEA算法的寻优性能明显优于其他2种算法。
另外,从算法收敛(达到收敛精度)时间方面,WPEA算法对6个标准测试函数20次实验的收敛消耗总时间分别为31.55、91.34、77.39、33.74和31.59 s,而QWPEA算法对6个标准测试函数20次实验的收敛消耗总时间分别为3.69、3.24、2.62、3.20、3.10和3.25 s,CQWPEA算法对6个标准测试函数20次实验的收敛消耗总时间分别为0.46、0.82、0.52、0.72、0.84和0.55 s。从收敛消耗总时间来看,与WPEA算法和QWPEA算法相比,CQWPEA算法的收敛速度明显加快。从图6中可清晰地看出,CQWPEA算法要比WPEA算法和QWPEA算法具有较快的收敛速度。
Download:
|
|
1) 基于元胞自动机和量子狼群演化算法的原理,提出一种求解离散优化问题的元胞量子狼群演化算法,该算法采用双策略方法,实现量子人工狼群初始位置的生成。
2) 针对狼群中个体狼的位置与猎物资源的关系问题,采用二进制编码方式和元胞自动机中的演化规则,分别对狼群中个体狼与猎物间的距离进行精确描述和量子旋转角的选取、调整,实现狼群个体与猎物资源位置的精确定位和增强狼群的全局搜索空间能力。
3) 元胞量子狼群演化算法是对解决离散空间优化问题的初步探索,该算法具有寻优精度高、收敛速度快以及较强的鲁棒性,将CQWPEA算法进行改进以加强算法的寻优能力,并用于处理复杂约束优化问题是进一步研究的方向。
[1] | MECH L D. The wolf: the ecology and behavior of an endangered species [M]. New York: Natural History Press, 1970. (0) |
[2] | MIRJALILI S, MIRJALILI S M, LEWIS A. Grey wolf optimizer[J]. Advances in engineering software, 2014, 69: 46-61. DOI:10.1016/j.advengsoft.2013.12.007 (0) |
[3] | EMARY E, ZAWBAA H M, HASSANIEN A E. Binary grey wolf optimization approaches for feature selection[J]. Neurocomputing, 2016, 172: 371-381. DOI:10.1016/j.neucom.2015.06.083 (0) |
[4] |
吴虎胜, 张凤鸣, 战仁军, 等. 利用改进的二进制狼群算法求解多维背包问题[J]. 系统工程与电子技术, 2015, 37(5): 1084-1091. WU Husheng, ZHANG Fengming, ZHAN Renjun, et al. Improved binary wolf pack algorithm for solving multidimensional knapsack problem[J]. Systems engineering and electronics, 2015, 37(5): 1084-1091. (0) |
[5] |
吴虎胜, 张凤鸣, 战仁军, 等. 求解0-1背包问题的二进制狼群算法[J]. 系统工程与电子技术, 2014, 36(8): 1660-1667. WU Husheng, ZHANG Fengming, ZHAN Renjun, et al. A binary wolf pack algorithm for solving 0-1 knapsack problem[J]. Systems engineering and electronics, 2014, 36(8): 1660-1667. (0) |
[6] | SRIKANTH K, PANWAR L K, PANIGRAHI B K, et al. Meta-heuristic framework: quantum inspired binary grey wolf optimizer for unit commitment problem[J]. Computers & electrical engineering, 2017, 14(21): 1-18. (0) |
[7] | MUANGKOTE N, SUNAT K, CHIEWCHANWATTANA S. An improved grey wolf optimizer for training q-Gaussian radial basis functional-link nets[C]//Proceedings of 2014 International Computer Science and Engineering Conference. Khon Kaen, Thailand, 2014: 209–214. (0) |
[8] |
金杉, 金志刚. 基于量子狼群进化的多目标汇聚节点覆盖算法[J]. 电子与信息学报, 2017, 39(5): 1178-1184. JIN Shan, JIN Zhigang. Multi-objective sink nodes coverage algorithm based on quantum wolf pack evolution[J]. Journal of electronics & information technology, 2017, 39(5): 1178-1184. (0) |
[9] | VON NEUMANN J, BURKS A W. Theory of self-reproducing automata[M]. Urbana: University of Illinois Press, 1966. (0) |
[10] |
奚茂龙, 孙俊, 吴勇. 一种二进制编码的量子粒子群优化算法[J]. 控制与决策, 2010, 25(1): 99-104. XI Maolong, SUN Jun, WU Yong. Quantum-behaved particle swarm optimization with binary encoding[J]. Control and decision, 2010, 25(1): 99-104. (0) |
[11] |
张丽娟, 张艳芳, 赵宜宾. 基于元胞自动机的智能疏散模型的仿真研究[J]. 系统工程理论与实践, 2015, 35(1): 247-253. ZHANG Lijuan, ZHANG Yanfang, ZHAO Yibin. Simulation research on intelligent evacuation model based on cellular automation[J]. Systems engineering—theory & practice, 2015, 35(1): 247-253. (0) |
[12] |
赵知劲, 郑仕链, 尚俊娜, 等. 基于量子遗传算法的认知无线电决策引擎研究[J]. 物理学报, 2007, 56(11): 6760-6766. ZHAO Zhijin, ZHENG Shilian, SHANG Junna, et al. A study of cognitive radio decision engine based on quantum genetic algorithm[J]. Acta physica sinica, 2007, 56(11): 6760-6766. (0) |
[13] |
鲁宇明, 黎明, 李凌. 一种具有演化规则的元胞遗传算法[J]. 电子学报, 2010, 38(7): 1603-1607. LU Yuming, LI Ming, LI Ling. The cellular genetic algorithm with evolutionary rule[J]. Acta electronica sinica, 2010, 38(7): 1603-1607. (0) |
[14] |
邱玉霞, 谢克明. 基于泛函分析的思维进化算法收敛性研究[J]. 计算机工程与应用, 2006(22): 36-38. QIU Yuxia, XIE Keming. A Study on convergence of mind evolutionary algorithm based on functional analysis[J]. Computer engineering and application, 2006(22): 36-38. DOI:10.3321/j.issn:1002-8331.2006.22.011 (0) |