⛄一、VRP简介
1 遗传算法基本原理
遗传算法 (Genetic Algorithm, GA) 是由美国密歇根大学的John Holland教授首先提出的, 它基于达尔文的进化论和孟德尔的遗传学说, 模拟生物在自然环境中的遗传和进化过程而形成的一种自适应全局优化的概率搜索算法[2]。遗传算法从一组随机产生的种群开始, 经过选择、杂交和变异3个遗传操作算子使目标函数向着最优解进化, 使遗传算法具有了其他传统方法所没有的特性。
遗传算法首先将问题可能的解按某种形式进行编码, 编码后的解称为染色体 (个体) 。随机选取N个染色体构成初始群种, 再根据预定的评价函数对每个染色体计算适应度, 使得性能较好的染色体具有较高的适应度。选择适应度高的染色体进行复制, 通过遗传算子 (选择、交叉 (重组) 、变异) 来产生一群新的更适应环境的染色体, 形成新的种群。按照适者生存和优胜劣汰的原理逐代演化产生出越来越好的近似解, 在每一代, 根据问题域中个体的适应度大小选择个体, 并借助于自然遗传学的遗传算子进行组合交叉和变异, 产生出代表新的解集的种群。这个过程将导致种群像自然进化一样的后生代种群比前代更加适应于环境, 末代种群中的最优个体经过解码, 可以作为问题近似最优解。
遗传算法流程图如图1所示: