- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(数据结构课程设计报告模板计科1
数 据 结 构
课程设计报告
设计题目: $$$$$$$问题
专 业: 计算机科学与技术
班 级: 2班
学生姓名:张文杰
指导教师:
201*年*月*日
指导教师评语
指导教师:
年 月 日 成绩评定 学 号 姓 名 任务分工 成绩 目 录
1.设计内容 1
1.1问题描述 1
1.2设计要求 1
1.3开发环境 1
1.4研究思路 1
2.设计步骤 5
2.1需求分析 5
2.2概要设计 5
2.3详细设计 9
2.4调试分析 12
2.5测试结果 14
3.设计成果展示 17
3.1用户手册 17
3.2程序运行部分截图 18
4.总结与心得体会 19
附 录 21
1.设计内容
1.1问题描述 (给出你所选择的题目的要求描述)
某售货员要到若干城市去销售商品,已知各城市之间的路程(或旅费)。他要选定一条从驻地出发,经过每个城市一遍,最后回到驻地的路线,使总的路程(或旅费)最小。
本问题的关键词是:不重复遍历,路程最短,即程序应在给定的地图上给出一条路程最短的线路,使经过并且只经过要去的每个城市一次,最后回到驻地。
1.2设计要求
(1)输入数据放到文件里,输入要测试的文件名,能输出最短路程及其路线。
(2)能用图形演示旅行商的最佳推销路线。
1.3开发环境
本程序开发环境为 Visual Studio 2003
1.4研究思路
对于“旅行商路线选择”这一问题,我们的思路如下:
运行程序——调用用户所给标准地图(程序自带中国交通地图与山东省主要城市及周边省会地图)——选择要去的城市——通过坐标算出两城市之间的距离存入内存——将城市连成一条回路——通过算法将回路优化——优化一定程度后停止——界面显示最优路线与旅行顺序
我们程序的主要算法是遗传算法,其基本描述如下:
遗传算法是模拟自然选择和生物进化的过程,以优胜劣汰的方式求解问题。算法需要选择一种合适的编码方式表示解,并选择一种评价函数来计算每个解的适应值,适应值高的解可以更容易地被选中并进行交配,从而产生新的子代。选择和交配的过程一直循环,同时以一定的概率进行变异,直到求得满意解或其它终止条件。算法运行的过程具有很强的指向性,适合众多复杂问题的求解。
遗传算法的过程可以抽象为4大部分:初始化、选择算子、交配算子和变异算子。初始化确定具体问题在遗传算法中的编码、群体大小、各种概率大小等参数;选择算子确定如何在群体中选择新的种群;交配算子使选出来的种群进行交配以模拟进化;变异算子使新的个体能够保持多样性。
旅行商问题规定了每个城市只能出现一次,因此编码有其特殊性,一般采用整数的编码方式,通过数字序列来表示城市的遍历次序。采用整数编码方式的简单遗传算法(SGA)的交配策略通常是以单个整数为单位进行,可称为基于点的交配;为TSP设计的交配策略通常都会以边为单位进行,可称为基于边的交配。
1、简单遗传算法的流程如图
2、适应度函数
适应度函数必须能够配合选择方式有效区分子代的优劣,我们采用的方式是f=1/s ,其中s 是路径的总长度。
3、选择操作
实验采用了轮盘赌 的选择方式,它是一种经典的 GA 选
择方式,概率大个体在轮盘中占有更大的面积,更容易被选中。
4、变异操作
变异操作是让遗传算法跳出局部最优的重要手段。一般采用的变异操作是随机产生两个变异位,把这两个位的城市调换位置。在一次变异中,选中的个体进行进行n/20(n为城市数目) 次交换。
例:对序列 1 2 3 4 5 6 7 8执行 2 次交换,变异位分别 2 与 5,3 与 6,那么,一次交换后:1 5 3 4 2 6 7 8
两次交换后:1 5 6 4 2 3 7 8。
5、优化搜索
遗传算法一般采用的是2-opt 二段优化 ,这是一种简单的优化方案。一次 2-opt表述如下:选择位置 a,b,尝试倒置ab间的所有路径,如果路径比原来短,则接受倒置,否则路径保持不变。
例如:1 2 3 4 5 6 7 8。
倒置 2,5 间路径,则变成 1 5 4 3 2 6 7 8。
在我们采用遗传算法的优化中,倒置操作一共进行n/10次尝试。同时因为倒置较长的序列通常不会得到路径提升,所以控制倒置位置a,b 之间的差小于等于n /5。
由于我们的问
您可能关注的文档
最近下载
- 2025年院感知识理论考试题库+答案.docx VIP
- 配合协调与服务承诺.docx VIP
- 14《称空气》课件 科学三年级上册(苏教版2025).pptx
- 晚期消化道肿瘤临床规范诊疗新进展题库答案-2025年华医网继续教育.docx VIP
- 工程协调配合措施及承诺.docx VIP
- 医院信息科笔试、面试题(附答案).docx VIP
- 施工协调配合的承诺与措施.pdf VIP
- 医院信息科计算机考试精彩试题(附答案).docx
- 2025年最新人教版七年级(初一)数学上册教学计划及进度表(新课标,新教材).docx
- 2025至2030地毯和室内装饰清洁服务行业项目调研及市场前景预测评估报告.docx
文档评论(0)