permutation order based crossover (POP),POP是OX(order crossover)的一种变体,执行过程如下:
- 选择两个父代染色体parent1和parent2,一个切点cut point
- parent1的第一部分,1到cut point的部分被复制到child2的第一部分,同理,child1的第一部分来自于parent2的第一部分
- 子代的第二部分来自于另一个父代出去已经填入的部分。例如,child2的第二部分应该填入的部分是,parent2删除1,3,4的部分,即5,8,2,7,6,所以child2最终为1,3,4,5,8,2,7,6,同理可求得child1
POP1与POP不同在于cut point 可以出现在任何位置,POP2的cut point做了限制,为了解决GCP问题,cut point只能在两个颜色的边缘。