rohui 发表于 2007-7-29 11:40

如何在遗传算法中限定变量只取整数值?

求函数最小值:f=(x1-2.6)^2+(x2-2.6)^2+(x3-2.6)^2, -5<x1,x2,x3<5,(另要求x1,x2,x3都为整数)
很明显,结果为x1=3,x2=3,x3=3,直接用遗传算法可能得出x1=2.6,x2=2.6,x3=2.6 ,不是整数,
请问怎么用才可以求出x1,x2,x3取整数时的最优化问题。谢谢大虾指点。

[ 本帖最后由 rohui 于 2007-7-29 16:18 编辑 ]

frogfish 发表于 2007-7-29 16:37

http://forum.vibunion.com/forum/viewthread.php?tid=45952

rohui 发表于 2007-7-30 10:57

那里还是没有解决啊

lzy291 发表于 2007-8-19 17:02

你自己定义随机数生成器
产生MIN~MAX的随机整数

lzy291 发表于 2007-8-19 17:04

inline int Rand(UINT Upper){return rand()%Upper;};
这是产生0~Upper随机数的方法,
Rand(10)-5就可以了
你的个体最好也要这样生成

rohui 发表于 2007-8-23 09:12

已经解决了,谢谢

换了个软件,已经解决了,谢谢

zhlong 发表于 2007-8-23 09:33

回复 #6 rohui 的帖子

楼主用的是什么软件?我那个问题到现在还没去做。

lichunyang 发表于 2008-3-28 00:18

原帖由 rohui 于 2007-8-23 09:12 发表 http://www.chinavib.com/forum/images/common/back.gif
换了个软件,已经解决了,谢谢
您好,是什么软件?
matlab处理整数问题有点复杂
页: [1]
查看完整版本: 如何在遗传算法中限定变量只取整数值?