miniducky 发表于 2006-9-13 16:35

求助:遗传算法初始种群的约束问题

问题描述:我要创建包含100个个体的初始种群,每个个体是由六个变量构成的,这六个变量的十进制值之和为一确定值,试问如何在创建初始种群时加入这个约束条件(即六个变量的十进制之和等于确定值)?
                本人的想法是“先随机创建初始种群,后选取满足约束条件的个体”,反复地创建和选取,直到有100个体,以构成我所需要的种群,可这样势必大大增加程序循环次数,请问有什么更好的方法,能在创建初始种群时加入这个约束条件,直接创建满足条件的种群。
谢谢各位大侠能给我一些意见或建议,先在此谢过!

[ 本帖最后由 miniducky 于 2006-9-13 16:37 编辑 ]

心灯 发表于 2006-9-13 21:34

这个采用实数编码吧,采用二进制编码不容易解决各个变量的精度问题。

在生成每个个体的时候,首先随机生成5个变量,然后用已知的确定值减去这5个变量,就得到了第六个变量,也就得到了该个体。

约束条件并不一定总是以明确的约束形式出现,变换一下思路,有时候解决问题更容易一些。

[ 本帖最后由 心灯 于 2006-9-13 21:36 编辑 ]

miniducky 发表于 2006-9-13 23:08

谢谢前辈的指点!

页: [1]
查看完整版本: 求助:遗传算法初始种群的约束问题