- 1、本文档共32页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于遗传算法的组合优化问题研究-毕业设计答辩参考
TSP问题的遗传算法求解方案 要点陈述 要点陈述 TSP问题的定义 TSP(traveling salesman problem,即旅行商问题)的文字描述可以如下表达:给定一组N个城市和他们两两之间的直达距离,找出一个闭合的旅程,使得每个城市刚好经过一次且总的旅行距离最短。 TSP问题的实用价值 很多实际应用问题,经过简化处理后,均可建模为TSP问题,因而对TSP问题求解方法的研究具有重要实际价值。 应用一:TSP问题最直接的应用是车辆选路 TSP问题的实用价值 应用二:印制电路板的钻空路线方案 应用推广:城市水管,电缆,电话线的铺设;网络布线等等。 TSP问题的实用价值 应用三:连锁店的货物配送路线 。 应用推广:货运公司上门取货,送货上门的路线;邮局取运邮件的路线等等。 遗传算法简介 遗传算法的优点 设计的基本流程 设计的具体模块 各个模块的具体实现 直角坐标地图 圆形地图 各个模块的具体实现 随机生成城市 各个模块的具体实现 各个模块的具体实现 各个模块的具体实现 各个模块的具体实现 各个模块的具体实现 各个模块的具体实现 各个模块的具体实现 程序结果 设计中所做的改进 设计中所做的改进 设计中所做的改进 具体实践所达到的效果 具体实践所达到的效果 具体实践所达到的效果 结束语 * * 计算机科学与技术二班 遗传算法简介及其优点 2 设计的基本流程 3 TSP问题的定义及其实用价值 3 1 设计的具体模块 4 具体实践所达到的效果 7 结束语 8 各个模块的具体实现 3 5 设计中所做的改进 3 6 应用推广:校车的选路;公路,铁路的铺设,输油管道的铺设;灌溉水道的选取,调水工程(例如,南水北调工程)路线的选择;行军路线的选择等。 其实,TSP问题的应用还很多,像DNA基因序列长度的计算,机器人控制等。在此就不一一介绍 遗传算法是仿照人类社会的进化过程提出的,它首先利用随机方式产生一初始群体,群体中的每个个体称为染色体,它对应着优化问题的一个可能解,染色体的最小组成元素称为基因,它对应可能解的某一特征,即设计变量。染色体的评价函数值反映可能解的优劣,按照优胜劣汰原则对染色体进行选择,相对“好”的个体得以繁殖,相对“差”的个体将死亡,因此群体整体的性能,通过选择,交叉,变异等过程将趋于改善,经过若干代繁衍进化就可使群体性能趋于最佳。即能找到最优解。 遗传算法作为一种模拟生物进化的一种算法,提供了一种求解复杂系统优化问题的通用框架。它不依赖于问题的具体领域,对问题的种类有很强的鲁棒性,具有自组织、自适应和自学习性。这种自组织、自适应特性不需要事先描述问题的全部特点,所以可解决那些复杂的非结构化问题。 毕业设计 遗传算法参数设置模块 城市生成模块 交叉算子选择模块 变异算子选择模块 地图选择模块 具体输出信息显示模块 圆形地图:当用户选择圆形地图时,程序接收一个圆形地图菜单响应消息,调用圆形坐标地图类,然后调用函数在屏幕上画一个圆形地图。 直角坐标地图:当用户选择直角坐标地图时,程序接收一个菜单响应消息,调用直角坐标地图类,然后调用函数在屏幕上画一个700*420像素的直角坐标地图,默认地图为直角坐标地图。 选择地图 步骤一 用户可以点击鼠标左键产生城市,也可以选择菜单栏的设置城市选项,通过输入城市数目来随机生成城市。还可以按指定的城市坐标,设置指定的城市。当然,如果用户选择错了城市,可以在该城市上点击鼠标右键来清除城市。如果用户要清除所有的城市,可以双击鼠标右键或选择菜单栏的结束选项,都可以清除所有的城市。 步骤二 城市生成 近邻表示 顺序 矩阵表示 整数编码 自然,简单和符合逻辑 满足TSP问题的约束条件 保证了每个城市经过且只经过一次,并 且保证任何一个城市子集中不形成回路。 整数编码: n个城市分别用0到n-1之间不同的整数表示,n个数的一个排列就代表旅行商问题的一个可能解 ,同时亦是染色体的一种构成。 步骤三 城市编码 步骤四 遗传算法的相关参数的设置 部分匹配交叉算法 顺序交叉算法 交叉算子 改进循环交叉算法 改进循环贪心交叉算法 步骤五 基于次序的变异算法 基于位置的变异算法 倒位变异算法 变异算子 步骤六 当点击菜单开始后,程序开始进行寻路算法。经过不断的选择,交叉,变异,淘汰适应度比较差的解,保留好的解,经过一代代的循环,最终找到一条最优的染色体,即找到一条最优路径。 步骤七 计算模块 当找到一条最优路径以后,程序即停止运行。最终会用有色线条将图上的城市点连接起来,并且标出旅行城市的起点以及各个城市的访问顺序和编号。同时会将旅行路线的长度,以及算法所消耗的时间显示出来。
文档评论(0)