遗传算法旅行商问题、点集距离和最小问题易语言源码
具体步骤如下:

(1)初始化。设置进化代数计数器 g=0,设置最大进化代数 G,随机生成 NP个 个体作为初始群体 P(0)

(2)个体评价。计算群体 P(t)中各个个体的适应度。

(3)选择运算。将选择算子作用于群体,根据个体的适应度,按照一定的规则或方法,选择一些优良个体遗传到下一代群体。

(4)交叉运算。将交叉算子作用于群体,对选中的成对个体,以某一概率交换它们之间的部分染色体,产生新的个体。

(5)变异运算。将变异算子作用于群体,对选中的个体,以某一概率改变某 一个或某一些基因值为其他的等位基因。群体 P(t)经过选择、交叉和变异运算之后得到下一代群体 P(t+1)。计算其适应度值,并根据适应度值进行排序,准备进行下一次遗传操作。

(6)终止条件判断:若 g≤G,则 g=g+1,转到步骤(2);若 g>G,则此进化过程中所得到的具有最大适应度的个体作为最优解输出,终止计算。

‘ 旅行商问题(TSP 问题)。假设有一个旅行商人要拜访全国 31 个省会城市,
‘ 他需要选择所要走的路径,路径的限制是每个城市只能拜访一次,而且最后要回到原来出发的城市。
‘ 对路径选择的要求是:所选路径的路程为所有路径之中的最小值。
‘ (1)初始化种群数目为 NP=200,染色体基因维数为 N=31,最大进化代数为 G=2000
‘ (2)产生初始种群,计算个体适应度值,即路径长度;采用基于概率的方式选择进行操作的个体;
‘ 对选中的成对个体,随机交叉所选中的成对城市坐标,以确保交叉后路径每个城市只到访一次;
‘ 对选中的单个个体,随机交换其一对城市坐标作为变异操作,产生新的种群,进行下一次遗传操作。
‘ (3)判断是否满足终止条件:若满足,则结束搜索过程,输出优化值;若不满足,则继续进行迭代优化。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系贝贝进行处理。
本站默认解压密码:www.hibbba.com