遗传算法的参数设定: 种群大小:M=50; 最大代数:G=1000; 交叉率:pc=1; 变异率:pm=0.1; (1)编码策略 采用十进制编码,用随机数列ω1 ω2…ω102作为染色体,其中0 ωi 1(i=2,3,…,101),ω1=0,ω102 =1;每一个随机序列都和种群中的一个个体相对应。 例如一个9城市问题的一个染色体为: [0.23,0.82,0.45,0.74,0.87,0.11,0.56,0.69,0.78] 6-1-3-7-8-4-9-2-5 (2)初始种群 此处用经典的近似算法——改良圈算法求得一个较好的初始种群。即对于初始圈: C=π1… πu-1πuπu+1…πv-1πvπv+1…π102, 2≤u<v≤101, 2≤ πu < πv ≤101 , 交换u与v之间的顺序,此时的新路径为: C‘=π1… πu-1π vπv-1…πu+1πu πv+1…π102, 记 若Δf0,则以新的路径修改旧的路径,直到不能修改为止 (3)目标函数 目标函数为侦查所有目标的路径长度,适应度函数就取目标函数,即 (4)交叉操作 交叉操作采取单点交叉,设计如下,对于选定的两个父代个体f1= ω1 ω2…ω102, f2= ω’1 ω’2…ω’102,我们随机地取第t个基因处为交叉点,则经过交叉运算后得到的子代编码为S1和S2,S1的基因由f1
原创力文档

文档评论(0)