24小时热门版块排行榜    

查看: 1261  |  回复: 10

wangu

金虫 (正式写手)

[求助] 遗传算法问题求助 已有4人参与

打算求解一个函数的最大值f(x1,x2,x3),但是变量x1,x2,x3之间有个严格的约束关系即x1<x2<x3,否则不能输出函数值,请问该如何处理?MATLAB中的ga函数可以处理这样的问题吗?
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

向着梦想飞
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

yanshuiting

新虫 (正式写手)

matlab遗传工具箱没有用过,你的约束关系确定了求解区域,可不可以在这方面做做文章

发自小木虫Android客户端
2楼2015-11-11 11:50:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wenqu

铁杆木虫 (职业作家)

酷酷文曲

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
wangu: 金币+10 2015-11-19 17:38:27
就是对你要求解的那个函数文件做这样的处理:如果三个变量满足x1<x2<x3,就有f(x1,x2,x3);否则,就让f等于一个很小的值。这样通过遗传选择找到你要的结果了啊。其实,楼上有写的。

[ 发自手机版 http://muchong.com/3g ]
不羁年华
6楼2015-11-15 13:16:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
wangu: 金币+5 2015-11-11 14:25:06
可以自己加一个罚函数,
类似于:
if x1<x2<x3
obj=inf
else
obj=...

obj表示目标函数
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
3楼2015-11-11 13:23:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wenqu

铁杆木虫 (职业作家)

酷酷文曲

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
wangu: 金币+10 2015-11-15 11:36:13
对目标值进行条件选择,加编个程序就好啦

[ 发自手机版 http://muchong.com/3g ]
不羁年华
4楼2015-11-15 00:21:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wangu

金虫 (正式写手)

引用回帖:
4楼: Originally posted by wenqu at 2015-11-15 00:21:35
对目标值进行条件选择,加编个程序就好啦

能否说的再详细一点?多谢
向着梦想飞
5楼2015-11-15 11:36:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wangu

金虫 (正式写手)

引用回帖:
6楼: Originally posted by wenqu at 2015-11-15 13:16:33
就是对你要求解的那个函数文件做这样的处理:如果三个变量满足x1<x2<x3,就有f(x1,x2,x3);否则,就让f等于一个很小的值。这样通过遗传选择找到你要的结果了啊。其实,楼上有写的。
...

试了一下,不可行。随机生成的初始种群几乎都不满足约束条件。
向着梦想飞
7楼2015-11-19 17:39:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wenqu

铁杆木虫 (职业作家)

酷酷文曲

【答案】应助回帖

好吧,看来最好用工具箱了,在定义种群的时候就把区间约束条件定义进去。要不然,你这个定义9个个体,确实概率上只有一个个体能满足约束条件。除非你把种群规模弄得很大,100有效个体估计需要900个个体

[ 发自手机版 http://muchong.com/3g ]
不羁年华
8楼2015-11-19 19:25:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wenqu

铁杆木虫 (职业作家)

酷酷文曲

【答案】应助回帖

不对,27个个体只有一个是有效的,一般至少要100个有效个体,估计得定义2700个个体

[ 发自手机版 http://muchong.com/3g ]
不羁年华
9楼2015-11-19 19:26:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wang_chuan

银虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★
wangu: 金币+5 2015-11-23 14:16:07
工具箱比较不灵活,最好还是自己写代码,非得满足x1<x2<x3这个条件的话, 初始化时加一个判断如果生成的初始解不满足这个条件就重新生成初始值,直至所有初始解都满足这个条件;在优化过程中,如果生成了不满足这个条件的解的话,直接放弃,原种群不发生任何变化。这样的话,程序迭代执行一定次数后就会有新解生成了。
10楼2015-11-22 14:45:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wangu 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +3 Tide man 2026-08-10 3/150 2026-08-10 21:48 by GZUZM
[基金申请] FileCode能看出啥? +7 要乐观耀哥 2026-08-10 15/750 2026-08-10 19:29 by 要乐观耀哥
[基金申请] filecode +8 documentary 2026-08-10 8/400 2026-08-10 19:20 by loufangrui
[基金申请] 关于代码变化问题,想知道的进来 +17 且听虎啸 2026-08-07 24/1200 2026-08-10 18:35 by zhangduo2008
[基金申请] 静等基金结果 +5 gjjjzhong 2026-08-10 16/800 2026-08-10 17:19 by Tide man
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +8 家与远方 2026-08-10 11/550 2026-08-10 17:09 by 六两废铜
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +4 布布和一二 2026-08-10 4/200 2026-08-10 14:50 by 医学老男孩
[基金申请] 8月时间戳变的,举个手。玩一下,释放压力 +11 archvillain 2026-08-04 13/650 2026-08-10 14:41 by seekfind
[基金申请] 好奇怪的filecode +4 布布和一二 2026-08-08 5/250 2026-08-10 14:20 by 冰心玉壶晴
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 这样的filecode谁见过 +11 布布和一二 2026-08-08 22/1100 2026-08-10 11:10 by wmfsnow
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 关于filecode +4 布布和一二 2026-08-07 7/350 2026-08-07 22:55 by zhanghaozhu
[基金申请] 化学口download_prp&amp;fileCode的固定段好像这几天一直没变,有变的大神么? +3 Tide man 2026-08-07 4/200 2026-08-07 22:39 by Tide man
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 好消息?这个有何含义??? +8 Tide man 2026-08-05 10/500 2026-08-05 16:14 by xmuxiaoyu
信息提示
请填处理意见