基于遗传算法的旅行商问题
旅行商问题(Travelling salesman problem, TSP): 一个商品推销员要去若干个城市推销商品,该推销员从一个城市出发,需要经过所有城市后,回到出发地。应如何选择行进路线,以使总的行程最短。 遗传算法(Genetic Algorithm): 模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,通过模拟自然进化过程搜索最优解。遗传算法是从一组候选解构成的一个种群(population)开始的,初代种群产生之后,按照适者生存和优胜劣汰的原理,逐代(generation)演化产生出越来越好的近似解,在每一代,根据问题域中个体的适应度(fitness)大小选择个体,并借助于的遗传算子进行组合交叉(crossover)和变异(mutation),产生出代表新的解集的种群。这个过程将导致种群按照自然进化一样产生后生代种群,并且更适应于环境,末代种群中的最优个体经过解码(decoding),可以作为问题近似最优解。 如图所示,在遗传算法中,一共有如下几个步骤: 初始化:设置进化代数计数器 t=0、设置最大进化代数 T、交叉概率、变 异概率、随机生成 M 个个体作为初始种群 P 个体评价:计算种群 P 中各个个体的适应度 选择运算:将选择算子作用于群体。以个体适应度为基础,选择最优个体 直接遗传到下一代或通过配对交叉产生新的个体再遗传到下一代 交叉运算