- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
遗传算法在工程优化中的几点改进
陈玲俐,姚宇琼,于洁
上海大学土木系,上海(200072 )
E-mail :cllzgy@
摘 要:本文面对工程优化中的实际困难,对传统遗传算法进行了系统改进。在遗传算法中
采用动态种群规模,消除了种群规模对优化效率和优化质量的影响;在选择操作中加入记忆
功能,避免了大量重复计算工作;针对实数编码导致的杂交操作并行机制丧失问题,提出了
双重模糊编码方法;为了提高优化效率,提出用启发式优化准则减少变异操作中的盲目性。
为避免早熟收敛,在优化进程中逐步增大变异率,减小杂交率。改进的遗传算法在不破坏自
适应并行运算机制的同时,规避了种群的无效解、消除了优化过程中的重复计算,提高了优
化效率。
关键词:遗传算法,动态种群,双重模糊编码
1. 引言
遗传算法是 1975 年美国密西根大学的Holand 教授借鉴生物进化原则,提出的一种自适
应并行优化算法。在自然界中,生物的染色体决定生物的形态。千差万别的染色体都是由相
同数目的基因组成,一个基因只能是两种属性值(X ,Y )中的一种(也可以表示为0 或1),
不同属性值的基因的组合方式构成了千差万别的染色体。生物进化过程是染色体中的基因优
化过程。在工程和数学优化问题中,优化方案决定优化目标。千差万别的优化方案都是由相
同数目的优化参数组成,一个优化参数只能取有限的几个值、或在有限区间[L ,U] 中取值,
不同取值的优化参数的组合方式构成了千差万别的设计方案。可见,优化问题与生物进化问
题从表达方式到最终目标都非常相似。将优化问题表述成生物进化问题,在优化过程中采用
生物进化原则,实现优化目的的一类算法,称为遗传算法。
2. 传统遗传算法
遗传算法在求解优化问题时一般包括以下几个步骤:
1、 编码。将优化参数表示为基因的过程称为编码。由于生物基因属性只有两种,对应
0-1 二进制编码中的一个编码位。如果优化参数的值域也只包括两个值,则用一个编码位的
基因就可以代表一个优化参数。如果优化参数的值域包括多个值、或者优化参数为一个连续
变量,则多个编码位的基因才能表示一个优化参数。例如,优化参数的值域为(0~7 )的 8
个整数,称值域空间为8,则需要3 个编码位才能表示一个优化参数。优化参数的值域空间
大小决定了编码位数的大小。如果编码位数为 n ,则编码空间为2 n 。一般编码空间不小于
优化参数的值域空间。当编码空间大于优化参数的值域空间时,则基因值可能会对应无意义
的或超界的优化参数值。对此,要进行修正、淘汰或加以惩罚。这种处理干扰了算法的自然
进化过程。为了避免编码空间与优化参数的值域空间不一致问题,又提出了自然数编码、序
列编码和实数编码等编码形式。如值域空间为8 的优化参数,可以用变化范围为1~8 的一个
自然数编码位来表示。后三种编码方式大大降低了编码和译码的工作量,在工程优化中应用
广泛,但是这些编码方式破坏了在生物杂交操作中隐含的并行机制。
2 、 遗传操作。遗传操作是通过种群性态的比较,使好的染色体遗传到下一代,差的染
色体失去繁殖权利。染色体的好坏通过适应函数值的大小来评价,适应值不小于零。适应值
- 1 -
函数要通过具体的目标函数值和约束情况综合考虑,构建。适应值函数与目标函数值的关系
通常有以下几种关系:线性关系、指数关系、对数关系、倒数关系等。当染色体对应的优化
方案满足优化模型中的约束关系,约束对染色体的适应值不产生影响;当约束关系不满足时,
要根据违约量的大小,对目标函数值得到的适应值附加一项惩罚。违约量越大,惩罚量越大。
如果一个优化方案违反严格约束,则此方案的适应值为零。这种处理方式相当于淘汰不满足
约束条件的解,在窄界约束条件下,很少采用这种处理方式。在种群中挑选遗传的染色体有
多种选择方法:赌盘选择、确定性原则、有退还和无退还随机选择、有退还和无退还剩余随
机选择。在后面我们将介绍一种新的遗传选择机制,有繁殖能力的染色体只能在子代中复制
一个样本,有效避免降低种群的多样性。
文档评论(0)