【動画講座】James McCaffrey: Swarm Intelligence Optimization using Python

リンク

https://www.youtube.com/watch?v=bVDX_UwthZI

画像

内容

最適化

最適化にはいろいろな手法が存在する.
昔からあるのは,数学的解析なやり方である.

しかし,これは閉形式解しか基本的に求めることができず
最近は,コンピュータの進化によって,シミュレーションによる最良解の計算が進んでいる.

今日は群知能という生物の群れから着想を得たメタヒューリスティクスについてお話する.

AmoebaMethod

Amoebaアルゴリズムは,三角形(simplex(triangle))を構築して最適解を探す.
これは,3点をランダムにとり最も悪い点を他に動かすことで最良点を探すアルゴリズムである.

しかし,現代ではコンピュータの資源も増加しているため,使用されない.
(局所解に陥りやすいのと,初期会に影響されまくる)

PSO

大量の粒子を用意して,それぞれが

  • 速度
  • 各粒子のパーソナルベスト
  • 全体のグローバルベスト

を元に移動して,最適解を探す.

集団のちからによって,失敗する個体が居ても全体としては問題がなく
最良解に近い解を探してくれる.

連続解空間で使用されることが多く,組合せ最適化とは少し異なる数理最適化である.
ただし,うまく表現することで組合せ最適化に応用する例もある.
(まあそこまでするか?になるが)

ABC

ABCは,ハチの動きを模倣したもので
3つのハチの種類を利用して最適化を探す.

ACOと同じで離散的な組合せ最適化を溶けるっぽい.

あとで調べる

これらは,すべてメタヒューリスティクスなものであるため,ただの枠組みであり
応用していく必要がある.

感想

面白い内容だった.
見ている人を飽きさせないようにする工夫が良かった