打字猴:1.701007683e+09
1701007683 我和数学有约:趣味数学及算法解析 [:1701004227]
1701007684 我和数学有约:趣味数学及算法解析 6.8 看背包客如何玩遍湖北省
1701007685
1701007686 背包客如何玩遍湖北省这个问题归属于旅行商问题。
1701007687
1701007688 旅行商(TSP)问题从描述上来看是一个非常简单的问题,即给定n个城市和各城市之间的距离,寻找一条遍历所有城市且每个城市只被访问一次的路径,并保证总路径距离最短。
1701007689
1701007690 其数学描述如下:
1701007691
1701007692
1701007693 设G=(V,E)为赋权图,V={1,2,…,n}为顶点集,E为边集,各顶点间距离为Cij,已知,并设:
1701007694
1701007695
1701007696
1701007697
1701007698 那么整个TSP问题的数学模型表示如下:
1701007699
1701007700
1701007701
1701007702
1701007703
1701007704
1701007705
1701007706 其中,K是V的全部非空子集,|K|是集合K中包含图G的全部顶点的个数。
1701007707
1701007708 旅行商问题为一个NP问题,有多种解,一般情况下,多采用生物智能算法进行寻优,找到一组可行解即可,笔者采用遗传算法进行分析。
1701007709
1701007710 遗传算法(Genetic Algorithm)是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的随机优化搜索方法。它是由美国的J.Holland教授于1975年首先提出,其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自适应地调整搜索方向,不需要确定的规则。遗传算法的这些性质,已被人们广泛地应用于组合优化、机器学习、信号处理、自适应控制和人工生命等领域。它是现代有关智能计算中的关键技术。
1701007711
1701007712 遗传进化操作简单、易懂,是其他一些遗传算法的雏形和基础,它不仅给各种遗传算法提供了一个基本框架,同时也具有一定的应用价值。
1701007713
1701007714 遗传算法GA的流程图如图6-10所示。
1701007715
1701007716
1701007717
1701007718
1701007719 图6-10 简单遗传算法流程图
1701007720
1701007721 基于遗传算法的旅行商算法流程详细步骤如下。
1701007722
1701007723 Step1:采用邻近算法生成初始种群。
1701007724
1701007725 Step2:计算适应值,保存当前最优染色体Tmax。
1701007726
1701007727 Step3:交叉操作。
1701007728
1701007729 Step4:计算适应值,保存最优染色体到Tmax。
1701007730
1701007731 Step5:判断是否满足变异条件,Yes跳转到Step7,No跳转到Step7。
1701007732
[ 上一页 ]  [ :1.701007683e+09 ]  [ 下一页 ]