我的计划摘要:

我正在读取一个文本文件,每行都有一个int(节点标识符)和3个浮点数(x,y,z位置) . 始终开始的节点ID为1并按顺序递增 . 在我读完这些信息之后,我创建了一个邻接矩阵来获取每个节点到每个其他节点的距离 . 截至目前,在我的PSO算法类中,我首先创建一个粒子向量(我制作的一个类) . 在粒子类中,构造函数接受一个int,这是最大的节点号 . 然后,它创建一个所有节点的随机路径(存储在名为'currentPath'的向量中),该路径在节点1处开始和结束 . 我还在粒子类中将另一个向量设置为“bestPath”到此随机路径 . 在PSO算法类中,在创建粒子矢量后,我找出哪个粒子具有最佳的当前路径,并将一个名为“globalBest”的矢量设置到该路径 . 接下来,我进入for循环,在每次迭代中,我在粒子向量中的每个粒子上调用一个名为“move”的函数 .

题:

在移动函数中,如何使用粒子的当前路径,最佳路径,速度和全局最佳路径来计算下一条路径?另外,我如何计算速度/为什么它与生成下一条路径有关?