使用 Python 实现粒子群优化从理论到实践

以下是关于什么是 PSO 以及如何使用它的教程继续阅读 Towards Data Science »

来源:走向数据科学

有一个笑话使我感到震惊:

“您知道,在发明时钟之前,人们不得不积极漫游并问人们时间吗?”

显然没有必要解释这个笑话,但是如果我们要过度思考一下(就像好的数学家一样),我们可以说笑话是关于一个事实,即可以使用群体的信息来告知所有其他粒子。这个概念实际上比我刚才说的笑话要深,可以进一步利用。

组粒子的信息

让我们考虑一个自组织的系统,例如鸟羊群或鱼类教育。我们可以将此系统定义为由颗粒制成的系统(例如粒子是鸟)。我们还可以在近似程度上假设这些粒子在空间中四处移动,以两个因素来调整其位置:

粒子
    特定粒子所知道的最佳位置:鸟类认为的最适合自己。所有粒子彼此“交流”所给出的全球最佳位置:“主鸟”指示鸟做什么
  • 特定粒子所知道的最佳位置:鸟类认为的最适合自己。
  • 特定粒子知道:
  • 彼此“交流”的所有粒子给出的全球最佳位置:“主鸟”指示鸟做什么
  • 全局