1、 计算机科学与技术学院 课程设计报告 2015 2016 学年第一学期 课程名称 Java 基础入门 设计题目 PSO 算法解决 TSP 问题 姓 名 学 号 专业班级 计算机(本)1501 指导教师 2016 年 1 月 6 日 - 1 - 目录目录 一课程设计内容 2 (一)课程设计题目 2 (二)课程设计目的 2 (三)课程设计要求 2 二算法相关知识 3 (一) PSO 算法简介 3 (二) 基本 PSO 算法 . 3 (三) PSO 算法的粒子公式 3 三.算法的 JAVA 实现 4 (一)程序设计代码 4 (二)运行结果 错误错误! !未定义书签。未定义书签。 四. 课程设计的总结
2、体会 . 16 五参考文献 . 17 2 一课程设计内容一课程设计内容 (一一)课程课程设计题目设计题目 应用 PSO 算法 求解 TSP 问题; TSP 问题 旅行商问题,即 TSP 问题(Travelling Salesman Problem)又译为旅行推销 员问题、货郎担问题,是数学领域中著名问题之一。假设有一个旅行商人要 拜访 n个城市,他必须选择所要走的路径,路径的限制是每个城市只能拜访 一次,而且最后要回到原来出发的城市。路径的选择目标是要求得的路径路 程为所有路径之中的最小值。 ( (二二) )课程设计目的课程设计目的 1.训练应用算法求解实际问题; 2 训练应用 Java 语言
3、实现具体问题的求解算法; 3.到达理解 java 语言的应用特点以及熟练应用 java 语言的目标。 ( (三三) )课程设计要求课程设计要求 1.读懂算法,理解算法计算过程中每一步操作是如何实现的; 2.设计函数优化的编码格式; 3.采用 java 语言编程实现算法的求解过程; 4.掌握 PSO 算法的基本原理 ,了解在 JAVA 环境中实现 PSO 算法的方程方法。 并以此例说明所编程序在函数全局寻优中的应用。 二算法相关知识二算法相关知识 ( (一一) ) psopso 算法简介算法简介 粒子群算法,也称粒子群优化算法(Particle Swarm Optimization) ,缩写 为
4、 PSO, 是近年来发展起来的一种新的进化算法(Evolutionary Algorithm - EA)。 PSO 算法属于进化算法的一种,和模拟退火算法相似,它也是从 随机解出发,通过迭代寻找最优解,它也是通过适应度来评价解的品质。 这种算法以其实现容易、精度高、收敛快等优点引起了学术界的重视, 并且在解决实际问题中展示了其优越性。粒子群算法是一种并行算法。 ( (二二) ) 基本基本 PSOPSO 算法算法 粒子群算法简称 PSO, 它的基本思想是模拟鸟群的捕食行为。 设想这样一个场景: 3 一群鸟在随机搜索食物。在这个区域里只有一块食物。所有的鸟都不知道食物在 那里。但是他们知道当前的位置离食物还有多远。那么找到食物的最优策略是什 么呢。最简单有效的就是搜寻目前离食物最近的鸟的周围区域。 PSO 从这种模型中得到启示并用于解决优化问题。PSO 中,每个优化问题的解都 是搜索空间中的一只鸟。我们称之为“粒子” 。所有的粒子都有一个由被优化的 函数决定的适应值(fitn