記事「アーチェリーアルゴリズム(AA)」についてのディスカッション

 

新しい記事「アーチェリーアルゴリズム(AA)」はパブリッシュされました:

この記事では、アーチェリーに着想を得た最適化アルゴリズムについて詳しく検討し、有望な「矢」の着地点を選定するメカニズムとしてルーレット法の活用に焦点を当てます。この手法により、解の質を評価し、さらなる探索に最も有望な位置を選び出すことが可能になります。

アーチェリーアルゴリズム(AA)は、最適化問題に対して最適解を見つけることを目的として設計された、全く新しい確率的最適化手法です。このアルゴリズムは、的を狙って矢を放つ射手の行動に着想を得ており、矢を射るプロセスをシミュレートします。集団内の各メンバーは、最適化問題に対する潜在的な解を表しており、それぞれの探索空間内での位置は、ランダムに選ばれた「的」となるメンバーの性能に基づいて更新されます。これは、射手が狙いたい場所に応じて照準を調整するのと似ています。

集団は行列として表現され、各行がメンバー(解)に、各列が問題の次元に対応します。これにより、目的関数に基づいて解を体系的に評価・更新することが可能となります。各メンバーの性能は、解の良否を定量的に評価する目的関数によって評価され、その結果はベクトルとして格納されます。この評価により、異なる解の効率性を比較できるようになります。

的は、集団メンバーの生産性に応じた幅を持つセクションに分割されます。そして、各メンバーが選ばれる確率は目的関数値に基づいて計算され、性能の高いメンバーほど選ばれる確率が高くなります。選択は累積確率に基づいてランダムにおこなわれ、これにより射手がどの的を狙うかを模倣します。この選択結果が、他のメンバーの位置更新に影響を与えます。各射手(エージェント)の位置は、一定の更新式を用いて探索空間内で調整されます。この更新は、選択された射手の目的関数値が現在のものよりも優れているか否かによって異なり、ランダム性を伴うことで探索空間の幅広い範囲をカバーします。AAは反復的に動作し、最大反復数などの停止条件に達するまで集団の状態を更新し続けます。その過程で、アルゴリズムは最良解を常に記録し保持します。


作者: Andrey Dik

 
ご研究ありがとうございます。しかし、私はmql5のExpert Advisorの単純なプログラマーとして非常に単純な質問があります(私は数学者ではありません)。くだらないと思われるかもしれませんが、あらかじめお詫びします。それでも、あなたの研究はEAの最適 化にどのように役立つのでしょうか?例を挙げてください。例えば、新しいEAがあり、それを最適化したいとします。ありがとうございます。
 
Ilya Melamed EAの最適 化にどのように役立つのでしょうか?例を挙げてください。例えば、新しいEAがあり、それを最適化したいとします。ありがとうございます。

私の研究に興味を持っていただき、ありがとうございます。

最適化アルゴリズムを適用するシナリオはたくさんあります。

例えば、ここに 書かれているように、EAの自己最適化に適用することができます。

また、ここで 説明されているように、社内テスターの最適化管理の一部として使用することもできます。

Использование алгоритмов оптимизации для настройки параметров советника "на лету"
Использование алгоритмов оптимизации для настройки параметров советника "на лету"
  • www.mql5.com
В статье рассматриваются практические аспекты использования алгоритмов оптимизации для поиска наилучших параметров советников "на лету", виртуализация торговых операций и логики советника. Данная статья может быть использована как своеобразная инструкция для внедрения алгоритмов оптимизации в торгового советника.