找回密码
 注册
Simdroid-非首页
查看: 437|回复: 2

问个遗传算法中处理约束的问题!

[复制链接]
发表于 2005-10-17 21:33:39 | 显示全部楼层 |阅读模式 来自 黑龙江哈尔滨
我不是使用软件的 ,是自己做程序开发的。能否帮我解答一下问题呢?
在遗传算法中非线性约束问题的处理,现在一般采用什么方法?比较新的是什么?那种的处理方式好一些?
谢谢!
发表于 2005-10-18 12:20:49 | 显示全部楼层 来自 黑龙江哈尔滨

Re:问个遗传算法中处理约束的问题!

Simdroid开发平台
<遗传算法中处理约束 >
主要来自玄光男,和程润伟的两本书
==============================

拒绝方法:抛弃进化过程中产生的所有不可行的解。简单,效率低。

修补方法:获得不可行解后经过修补变成可行解。 对于组合优化问题,创建修补过程相对较容易。

罚函数方法:遗传算法中最常用的方法,通过对不可行解的惩罚来将约束问题变成无约束问题,任何对约束的违反都要在目标函数中添加惩罚项。思路从传统优化中借鉴而来,但应用上仍然有区别。遗传算法中,罚函数法用于在每一代中维持一定数量的不可行解,从而使遗传搜索从可行区域和不可行区域两个方向搜索最优解,通常并不拒绝每代中的不可行解,原因在于其中一些个体可能提供关于最优解的更有用的信息。我们的关注点在于如何确定惩罚项,从而在信息保留(保持一些不可行解)与选择压力(拒绝一些不可行解)之间维持平衡,并要注意避免惩罚不够或者过度惩罚。解决问题以前,对于可行区域和不可行区域这两个子空间没有任何前提假设。应用罚函数法的关键在于如何设计罚函数f(x),这时目标函数可以采用“加”的形式,也可以采用“乘”的形式。

评分

1

查看全部评分

发表于 2005-11-23 21:36:52 | 显示全部楼层 来自 湖南常德

Re:问个遗传算法中处理约束的问题!

对于惩罚函数法,建议用准确不可微罚函数!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-10-4 12:27 , Processed in 0.044110 second(s), 15 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表