![]() |
部分匹配交叉PMX
(1)部分匹配交叉
随机选取两个交叉点,以确定一个匹配段,根据两个父体中两个交叉点之间 的中间段给出的映射关系生成两个子个体。例如在两个父体中随机选择两个交叉 点,以“|”表示。 A=984|567|1320 B=871|230|9546 则由交换段确定的部分映射为: 2-5,3-6,0-7, 首先, 两个交叉点之间的中间段交换,得到: A’ =984|230|1320 B’=871|567|9546 然后对于 A’, B’两子个体中交换区域以外出现的遍历重复,依据交换区域内 的位置映射关系,逐一交换,最后得到: A’’=984|230|1657 B’’=801|567|9243 假设两个父体为: X:1 |3 4 2| 5 6 Y:1 |2 3 6 |5 4 则由交换段确定的部分映射为: 3-2,4-3,2-6, 首先, 两个交叉点之间的中间段交换,得到: X:1 |2 3 6| 5 6 Y:1 |3 4 2 |5 4 然后对于 X, Y两子个体中交换区域以外出现的遍历重复,依据交换区域内 的位置映射关系,逐一交换,最后得到: X:1 |2 3 6| 5 2 Y:1 |3 4 2 |5 3 为什么出现错误? |
所有时间均为北京时间。现在的时间是 19:51。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.