1.约束优化问题的定义与处理约束的方法
带有约束条件的优化问题可以写为如下的一般形式
式中:x=(x1,x2,…,xn)∈Rn为n维实向量;f(x)为目标函数;gj、hk为约束函数,共有m个约束条件。
由式(5-48)可见,根据约束条件的特点,可以将约束分为三种类型,即域约束、不等式约束和等式约束。
就约束处理方法而言,罚函数方法无疑是整个优化界最常用的处理非线性规划问题的方法。目前遗传算法常见有四种罚函数方法:
(1)静态罚函数法[169](方法1)。
(2)动态罚函数法[170](方法2)。
(3)退火罚函数法[171](方法3)。
(4)分化罚函数法[172](方法4)。
从搜索的角度而言,群体中保留某些适当数量的不可行解是必要的,最近提出了一种新的处理约束的方法,即直接比较—比例方法(Direct comparison-proportional method)[162],它与遗传算法结合应用到实际问题的解决中取得了良好的效果。
2.基于网络调节的免疫进化算法设计和表达
独特性免疫网络调节理论是目前两个主要免疫模型之一,它认为生物免疫系统主要由骨髓和B细胞组成,骨髓可以产生大量的B细胞,每一个B细胞主要包括一个抗体。免疫调节能使多种抗体的数量达到彼此平衡,抗体间的联系通过铰链反应来实现,这样系统总处于既稳定又能及时对外部刺激产生应答[154]。而所有B细胞组成了一个免疫网络,当有外界抗原入侵时,此网络可对自身动态平衡进行调整。基于上述模型,在求解复杂问题时,可把搜索空间划为M个区域,每个区域内的所有解被视为一个抗体群,迭代过程中的抗体群的数量进行自我调节,把这种思想应用于基于区间变换的免疫进化算法即得到基于网络调节的免疫进化算法。该算法的具体表述为:
(3)下一代各抗体群的规模按下式计算,即
此步称作群体规模的网络调节,它是基于网络调节的免疫进化算法的核心。
(5)重复执行上述(3)和(4)直至满足终止条件,选定M个区域中的最优解作为优化问题的最终求解结果。(www.xing528.com)
基于网络调节的免疫进化算法不仅能够充分利用已有的经验简化参数设置,而且能够在全局收敛性和群体多样性之间起到更好协调作用,该算法在处理更为复杂问题时能够取得更优的效果。
3.应用实例
为了测试基于网络调节的免疫进化算法的性能,选取了如下有代表性的约束问题作为测试函数,即
该问题有四个非线性约束,目标函数也是非线性的,在x=(2.330499,1.951372,-0.4775414,4.365726,-0.6244870,1.038131,1.594227)处取得极小值680.6300573。
表5-4给出了利用前面提到的四种常见的罚函数在遗传算法基础上的求解结果,同时给出了利用基于网络调节的免疫进化算法的相应求解结果。可以看出,基于网络调节的免疫进化算法的求解结果最优。另外,还可以发现基于网络调节的免疫进化算法每次求得的最优解相差不明显,即其具有很强的稳定性,因此,基于网络调节的免疫进化算法在解决实际复杂问题时具有非常良好的性能。
表5-4 各方法的求解结果
注 表中“b”代表10次实验中的最好解,“m”代表按解的优劣排在第五位的解,“w”代表最差的解。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。