記事「母集団最適化アルゴリズム:粒子群(PSO)」についてのディスカッション

 

新しい記事「母集団最適化アルゴリズム:粒子群(PSO)」はパブリッシュされました:

この記事では、一般的な粒子群最適化(PSO)アルゴリズムについて検討します。以前は、収束、収束率、安定性、スケーラビリティなどの最適化アルゴリズムの重要な特性について説明し、テストスタンドを開発し、最も単純なRNGアルゴリズムを検討しました。

図2で説明した、連載の最初の記事と同じ構造をアルゴリズムの構築に使用しているため(今後もこれを継続します)、アルゴリズムをテストスタンドに接続することは難しくありません。.

スタンドを実行すると、以下に示すようなアニメーションが表示されます。この場合、粒子の群れがどのように振る舞うかをはっきりと見ることができます。群れは本質的に群れのように振る舞います。関数のヒートマップ上では、密な雲の形で移動します。

覚えていらっしゃるかもしれませんが、黒い円は関数の大域的最適値(最大値)を表し、黒い点は現在の反復時に取得された検索アルゴリズムの最適な平均座標を表します。平均値がどこから来るのか説明しましょう。ヒートマップは2次元の座標であり、最適化される関数には数百の変数(測定値)が含まれる場合があります。したがって、結果は座標によって平均化されます。

n1

  Skinテスト関数のPSO

n2

  Forestテスト関数のPSO

n3

  Megacityテスト関数のPSO

アニメーションでわかるように、テストでは、PSOがスムーズな最初の関数に非常にうまく対処できることが示されましたが、それは2つの変数を最適化する場合のみです。検索空間の次元が増加すると、アルゴリズムの効率は急激に低下します。これは、2番目と離散的な3番目の関数で特に顕著です。結果は、前回の記事で説明したランダムアルゴリズムよりも著しく悪いものです。結果に戻り、結果の比較表を作成する際に詳しく説明します。

作者: Andrey Dik

 
アルゴリズムの比較は素晴らしいですね!探索全体を通して慣性重み項(w)を線形に減衰させれば、大群の局所探索能力が向上し、収束が早まるのではないでしょうか。ほとんどの文献は、w=0.4の下限を 課すことを提案している。私は、PSOスキームがこの値で幅広い種類の問題に対して非常に効果的であることを発見した。
 
koehnw 下限を 課すことを提案している。私は、PSOスキームがこの値で幅広い種類の問題に対して非常に効果的であることを発見した。

コメントありがとうございます!はい、灰色オオカミの群れによる最適化アルゴリズムで行われているように、係数を反復にリンクさせることは可能です。


Population Optimization Algorithms:Ant Colony Optimization (ACO):https://www.mql5.com/ru/articles/11602
集団最適化アルゴリズム:Artificial Bee Colony (ABC):https://www.mql5.com/ru/articles/11736
母集団最適化アルゴリズム:灰色オオカミの群れによる最適化 (GreyWolf Optimizer - GWO):https://www.mql5.com/ru/articles/11785

推定表
 

メタヒューリスティック最適化技術に関する 記事は素晴らしいよ!私たちと共有できる経験の多さには驚かされるよ!

メタヒューリスティック最適化のターゲットをオプティマイザーに実装することを検討してください!

OnTester()の中でユーザーが設定できるような簡単なものです:

OptimizerSetEngine("ACO"); // アントコロニー最適化
OptimizerSetEngine("COA")); // カッコウ最適化アルゴリズム
OptimizerSetEngine("ABC")); // 人工蜂コロニー
OptimizerSetEngine("GWO")); // グレーウルフ・オプティマイザ
OptimizerSetEngine("PSO")); // 粒子群最適化



ブラジルより

 
Vinicius Barenho Pereira #:

メタヒューリスティック最適化技術に関する 記事は素晴らしいよ!あなたが私たちと共有できる経験の多さに驚かされます!

メタヒューリスティック最適化のターゲットをオプティマイザーに実装することを検討してください!

OnTester()の中でユーザーが設定できるような簡単なもの:


ブラジルより

レビューをありがとう!私にとって新しい記事はそれぞれ新しい発見です。

 
ありがとうございます。でも、私の知識をはるかに超えていると思います。