roadwide / AI-Homework

人工智能结课作业(A星八数码/广度优先/深度优先/粒子群寻优算法/遗传算法/蚁群算法/BP神经网络/卷积神经网络)
400 stars 81 forks source link

Update PSO.py #1

Closed ilovewarpig closed 4 years ago

ilovewarpig commented 4 years ago

修正了粒子速度更新时未考虑个体最优值的问题。 经过尝试,发现在原代码中self.addr和self.bestAddr共同指向了addr,任一方的修改都会影响另一个变量(有时变好有时变差),并且self.bestFit不会同步更新。因此在原代码中历代deltam始终为空集合,导致粒子的速度更新时从未考虑自己的最优值。 对init和upData中的代码进行了修改,添加[:]可避免self.addr和self.bestAddr共同访问同一存储空间的问题,加快收敛。

ilovewarpig commented 4 years ago

将变异和交叉引入解TSP问题的PSO算法的想法很有意思!受教了!