前言
蚁群算法是受到对真实蚂蚁群觅食行为研究的启发而提出。生物学研究表明:一群相互协作的蚂蚁能够找到食物和巢穴之间的最短路径,而单只蚂蚁则不能。生物学家经过大量细致观察研究发现,蚂蚁个体之间的行为是相互作用相互影响的。蚂蚁在运动过程中,能够在它所经过的路径上留下一种称之为信息素的物质,而此物质恰恰是蚂蚁个体之间信息传递交流的载体。蚂蚁在运动时能够感知这种物质,并且习惯于追踪此物质爬行,当然爬行过程中还会释放信息素。一条路上的信息素踪迹越浓,其它蚂蚁将以越高的概率跟随爬行此路径,从而该路径上的信息素踪迹会被加强,因此,由大量蚂蚁组成的蚁群的集体行为便表现出一种信息正反馈现象。某一路径上走过的蚂蚁越多,则后来者选择该路径的可能性就越大。
是个非常值得研究的毕业设计课题。
毕设帮助,开题指导,资料分享,疑问解答(见文末)
1 应用效果
老样子,先上效果
在二维地图上的路径优化:
不仅可以用于二维路径优化, 还可以用于三维地形下的路径优化:
示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
2 蚁群优化算法设计流程
- (1)对相关参数进行初始化,包括蚁群规模、信息素因子、启发函数因子、信息素的挥发因子、信息素常数、以及最大迭代次数等,以及将数据读入程序,并进行预处理:比如将城市的坐标信息转化为城市间的距离矩阵。
- (2)随机将蚂蚁放于不同的出发点,对每个蚂蚁计算其下个访问城市,直到有蚂蚁访问完所有的城市。
- (3)计算各蚂蚁经过的路径长度Lk,记录当前迭代次数最优解,同时对路径上的信息素浓度进行更新。
- (4)判断是否到达迭代次数,若否,返回步骤2;是,结束程序。
- (5)输出结果,并根据需要输出寻优过程中的相关指标,如运行时间、迭代次数等。