| № | AO | Description | Hilly | Hilly final | Forest | Forest final | Megacity (discrete) | Megacity final | Final result | % of MAX | ||||||
| 10 p (5 F) | 50 p (25 F) | 1000 p (500 F) | 10 p (5 F) | 50 p (25 F) | 1000 p (500 F) | 10 p (5 F) | 50 p (25 F) | 1000 p (500 F) | ||||||||
| 1 | (P+O)ES | (P+O) evolution strategies | 0,99934 | 0,91895 | 0,56297 | 2,48127 | 1,00000 | 0,93522 | 0,39179 | 2,32701 | 0,83167 | 0,64433 | 0,21155 | 1,68755 | 6,496 | 72,18 |
| 2 | SDSm | stochastic diffusion search M | 0,93066 | 0,85445 | 0,39476 | 2,17988 | 0,99983 | 0,89244 | 0,19619 | 2,08846 | 0,72333 | 0,61100 | 0,10670 | 1,44103 | 5,709 | 63,44 |
この表の関連記事へのリンクをお願いします。
double FF( const double &Arg[] ) { double Res = 1; for (uint i = ArraySize(Arg); (bool)i--;) Res *= MathSin(Arg[i]); return(Res); }最良の値は1に近いはずだ。しかし、この連載記事のアルゴリズムはこの最大値に近づけることができるのだろうか?
このシリーズのアルゴリズムを長い間オプティマイザーに引きずり込もうとした(並列化したかった)のだが、大失敗してしまった - https://www.mql5.com/en/forum/454524/page2#comment_50233782。
- 2023.10.20
- www.mql5.com
このシリーズのアルゴリズムを長い間オプティマイザーに引きずり込もうとした(並列化したかった)のだが、大失敗してしまった - https://www.mql5.com/en/forum/454524/page2#comment_50233782。

- www.mql5.com
論文「集団最適化アルゴリズム:マイクロ人工免疫システム(Micro-AIS)アルゴリズム」についての議論。
fxsaber, 2024.01.19 22:30
種の関数を最適化するのは難しいですか?double FF( const double &Arg[] ) { double Res = 1; for (uint i = ArraySize(Arg); (bool)i--;) Res *= MathSin(Arg[i]); return(Res); }最適な値は1に近いはずです。しかし、この連載記事のアルゴリズムはこの最大値に近づけることができるのだろうか?
テスト済み。
#define dInput01 X1 #define dInput02 X2 #define dInput03 X3 #define dInput04 X4 #define dInput05 X5 #define dInput06 X6 #define dInput07 X7 #include <fxsaber\Input_Struct\Input_Struct.mqh> //https://www.mql5.com/ja/code/47932 INPUT_STRUCT inInputs; MACROS_INPUT(double, X1, 0); MACROS_INPUT(double, X2, 0); MACROS_INPUT(double, X3, 0); MACROS_INPUT(double, X4, 0); MACROS_INPUT(double, X5, 0); MACROS_INPUT(double, X6, 0); MACROS_INPUT(double, X7, 0); // 社内オプティマイザーのFFはその一例である。 double OnTester() { return(MathSin(inInputs.X1) * MathSin(inInputs.X2) * MathSin(inInputs.X3) * MathSin(inInputs.X4) * MathSin(inInputs.X5) * MathSin(inInputs.X6) * MathSin(inInputs.X7)); } #include <fxsaber\Optimization\Optimization_Addon.mqh> //https://www.mql5.com/ru/blogs/post/755815
入力。
カスタム・オプティマイザー。
カスタム。
PSO Finished 15835 of 35000 planned passes: true BestResult = 0.9884554736115849: X1 = 99.0, X2 = 99.0, X3 = 11.0, X4 = 77.0, X5 = 14.0, X6 = 11.0, X7 = 33.0 Check = 0.9884554736115849: X1 = 99.0, X2 = 99.0, X3 = 11.0, X4 = 77.0, X5 = 14.0, X6 = 11.0, X7 = 33.0 01: OPTIMIZATION_METHOD_AO_Micro_AIS OPTIMIZATION_METHOD_AO_Micro_AIS BestResult = 0.6914924547679845: X1 = 17.0, X2 = 89.0, X3 = 61.0, X4 = 33.0, X5 = 71.0, X6 = 64.0, X7 = 8.0 Check = 0.6914924547679845: X1 = 17.0, X2 = 89.0, X3 = 61.0, X4 = 33.0, X5 = 71.0, X6 = 64.0, X7 = 8.0 02: OPTIMIZATION_METHOD_AO_POES OPTIMIZATION_METHOD_AO_POES BestResult = 0.9268682527605293: X1 = 55.0, X2 = 80.0, X3 = 27.0, X4 = 99.0, X5 = 8.0, X6 = 52.0, X7 = 11.0 Check = 0.9268682527605293: X1 = 55.0, X2 = 80.0, X3 = 27.0, X4 = 99.0, X5 = 8.0, X6 = 52.0, X7 = 11.0 03: OPTIMIZATION_METHOD_AO_P_O_ES OPTIMIZATION_METHOD_AO_P_O_ES BestResult = 0.7717845794829589: X1 = 11.0, X2 = 49.0, X3 = 74.0, X4 = 30.0, X5 = 11.0, X6 = 77.0, X7 = 43.0 Check = 0.7717845794829589: X1 = 11.0, X2 = 49.0, X3 = 74.0, X4 = 30.0, X5 = 11.0, X6 = 77.0, X7 = 43.0 04: OPTIMIZATION_METHOD_AO_SC OPTIMIZATION_METHOD_AO_SC BestResult = 0.5703083565001157: X1 = 4.0, X2 = 39.0, X3 = 20.0, X4 = 93.0, X5 = 8.0, X6 = 20.0, X7 = 33.0 Check = 0.5703083565001157: X1 = 4.0, X2 = 39.0, X3 = 20.0, X4 = 93.0, X5 = 8.0, X6 = 20.0, X7 = 33.0 05: OPTIMIZATION_METHOD_AO_SIA OPTIMIZATION_METHOD_AO_SIA BestResult = 0.3770511069126069: X1 = 30.0, X2 = 55.0, X3 = 49.0, X4 = 77.0, X5 = 100.0, X6 = 65.0, X7 = 27.0 Check = 0.3770511069126069: X1 = 30.0, X2 = 55.0, X3 = 49.0, X4 = 77.0, X5 = 100.0, X6 = 65.0, X7 = 27.0 06: OPTIMIZATION_METHOD_AO_SA OPTIMIZATION_METHOD_AO_SA BestResult = 0.4195625904721657: X1 = 58.0, X2 = 77.0, X3 = 27.0, X4 = 40.0, X5 = 70.0, X6 = 14.0, X7 = 70.0 Check = 0.4195625904721657: X1 = 58.0, X2 = 77.0, X3 = 27.0, X4 = 40.0, X5 = 70.0, X6 = 14.0, X7 = 70.0 07: OPTIMIZATION_METHOD_AO_NMm OPTIMIZATION_METHOD_AO_NMm BestResult = 0.8314291991406518: X1 = 30.0, X2 = 46.0, X3 = 99.0, X4 = 11.0, X5 = 96.0, X6 = 39.0, X7 = 74.0 Check = 0.8314291991406518: X1 = 30.0, X2 = 46.0, X3 = 99.0, X4 = 11.0, X5 = 96.0, X6 = 39.0, X7 = 74.0 08: OPTIMIZATION_METHOD_AO_DE OPTIMIZATION_METHOD_AO_DE BestResult = 0.514763435265798: X1 = 33.0, X2 = 39.0, X3 = 49.0, X4 = 20.0, X5 = 73.0, X6 = 20.0, X7 = 58.0 Check = 0.514763435265798: X1 = 33.0, X2 = 39.0, X3 = 49.0, X4 = 20.0, X5 = 73.0, X6 = 20.0, X7 = 58.0 09: OPTIMIZATION_METHOD_AO_SDOm OPTIMIZATION_METHOD_AO_SDOm BestResult = 0.6248310950237546: X1 = 55.0, X2 = 61.0, X3 = 20.0, X4 = 71.0, X5 = 26.0, X6 = 74.0, X7 = 36.0 Check = 0.6248310950237546: X1 = 55.0, X2 = 61.0, X3 = 20.0, X4 = 71.0, X5 = 26.0, X6 = 74.0, X7 = 36.0 10: OPTIMIZATION_METHOD_AO_IWDm OPTIMIZATION_METHOD_AO_IWDm BestResult = 0.6582185170915256: X1 = 33.0, X2 = 24.0, X3 = 61.0, X4 = 55.0, X5 = 46.0, X6 = 36.0, X7 = 1.0 Check = 0.6582185170915256: X1 = 33.0, X2 = 24.0, X3 = 61.0, X4 = 55.0, X5 = 46.0, X6 = 36.0, X7 = 1.0 11: OPTIMIZATION_METHOD_AO_CSS OPTIMIZATION_METHOD_AO_CSS BestResult = 0.17125241139972677: X1 = 11.0, X2 = 5.0, X3 = 11.0, X4 = 37.0, X5 = 56.0, X6 = 65.0, X7 = 37.0 Check = 0.17125241139972677: X1 = 11.0, X2 = 5.0, X3 = 11.0, X4 = 37.0, X5 = 56.0, X6 = 65.0, X7 = 37.0 12: OPTIMIZATION_METHOD_AO_SDS OPTIMIZATION_METHOD_AO_SDS BestResult = 0.7015125972513457: X1 = 17.0, X2 = 46.0, X3 = 27.0, X4 = 39.0, X5 = 77.0, X6 = 71.0, X7 = 86.0 Check = 0.7015125972513457: X1 = 17.0, X2 = 46.0, X3 = 27.0, X4 = 39.0, X5 = 77.0, X6 = 71.0, X7 = 86.0 13: OPTIMIZATION_METHOD_AO_SDSm OPTIMIZATION_METHOD_AO_SDSm BestResult = 0.8318883232825393: X1 = 77.0, X2 = 14.0, X3 = 14.0, X4 = 30.0, X5 = 80.0, X6 = 49.0, X7 = 24.0 Check = 0.8318883232825393: X1 = 77.0, X2 = 14.0, X3 = 14.0, X4 = 30.0, X5 = 80.0, X6 = 49.0, X7 = 24.0 14: OPTIMIZATION_METHOD_AO_MEC OPTIMIZATION_METHOD_AO_MEC BestResult = 0.821421124921697: X1 = 99.0, X2 = 58.0, X3 = 90.0, X4 = 27.0, X5 = 14.0, X6 = 80.0, X7 = 96.0 Check = 0.821421124921697: X1 = 99.0, X2 = 58.0, X3 = 90.0, X4 = 27.0, X5 = 14.0, X6 = 80.0, X7 = 96.0 15: OPTIMIZATION_METHOD_AO_SFL OPTIMIZATION_METHOD_AO_SFL BestResult = 0.7123520662251704: X1 = 49.0, X2 = 52.0, X3 = 80.0, X4 = 93.0, X5 = 52.0, X6 = 87.0, X7 = 14.0 Check = 0.7123520662251704: X1 = 49.0, X2 = 52.0, X3 = 80.0, X4 = 93.0, X5 = 52.0, X6 = 87.0, X7 = 14.0 16: OPTIMIZATION_METHOD_AO_EM OPTIMIZATION_METHOD_AO_EM BestResult = 0.4739892519704631: X1 = 39.0, X2 = 96.0, X3 = 49.0, X4 = 54.0, X5 = 93.0, X6 = 8.0, X7 = 11.0 Check = 0.4739892519704631: X1 = 39.0, X2 = 96.0, X3 = 49.0, X4 = 54.0, X5 = 93.0, X6 = 8.0, X7 = 11.0 17: OPTIMIZATION_METHOD_AO_SSG OPTIMIZATION_METHOD_AO_SSG BestResult = 0.7570642423726676: X1 = 5.0, X2 = 49.0, X3 = 30.0, X4 = 96.0, X5 = 14.0, X6 = 55.0, X7 = 89.0 Check = 0.7570642423726676: X1 = 5.0, X2 = 49.0, X3 = 30.0, X4 = 96.0, X5 = 14.0, X6 = 55.0, X7 = 89.0 18: OPTIMIZATION_METHOD_AO_MA OPTIMIZATION_METHOD_AO_MA BestResult = 0.7831093525101701: X1 = 93.0, X2 = 36.0, X3 = 17.0, X4 = 58.0, X5 = 42.0, X6 = 61.0, X7 = 74.0 Check = 0.7831093525101701: X1 = 93.0, X2 = 36.0, X3 = 17.0, X4 = 58.0, X5 = 42.0, X6 = 61.0, X7 = 74.0 19: OPTIMIZATION_METHOD_AO_HS OPTIMIZATION_METHOD_AO_HS Error optimization! 20: OPTIMIZATION_METHOD_AO_GSA OPTIMIZATION_METHOD_AO_GSA BestResult = 0.020184193323560605: X1 = 9.0, X2 = 27.0, X3 = 54.0, X4 = 6.0, X5 = 77.0, X6 = 75.0, X7 = 23.0 Check = 0.020184193323560605: X1 = 9.0, X2 = 27.0, X3 = 54.0, X4 = 6.0, X5 = 77.0, X6 = 75.0, X7 = 23.0 21: OPTIMIZATION_METHOD_AO_GSA_Stars OPTIMIZATION_METHOD_AO_GSA_Stars Error optimization! 22: OPTIMIZATION_METHOD_AO_BFO OPTIMIZATION_METHOD_AO_BFO BestResult = 0.7322059190279094: X1 = 20.0, X2 = 11.0, X3 = 52.0, X4 = 49.0, X5 = 89.0, X6 = 36.0, X7 = 99.0 Check = 0.7322059190279094: X1 = 20.0, X2 = 11.0, X3 = 52.0, X4 = 49.0, X5 = 89.0, X6 = 36.0, X7 = 99.0 23: OPTIMIZATION_METHOD_AO_IWO OPTIMIZATION_METHOD_AO_IWO BestResult = 0.7392111937754324: X1 = 20.0, X2 = 11.0, X3 = 52.0, X4 = 49.0, X5 = 89.0, X6 = 37.0, X7 = 100.0 Check = 0.24076952243473274: X1 = 20.0, X2 = 11.0, X3 = 52.0, X4 = 49.0, X5 = 89.0, X6 = 37.0, X7 = 100.0 24: OPTIMIZATION_METHOD_AO_BA OPTIMIZATION_METHOD_AO_BA BestResult = 0.35033516894855804: X1 = 98.0, X2 = 49.0, X3 = 92.0, X4 = 77.0, X5 = 96.0, X6 = 99.0, X7 = 21.0 Check = 0.35033516894855804: X1 = 98.0, X2 = 49.0, X3 = 92.0, X4 = 77.0, X5 = 96.0, X6 = 99.0, X7 = 21.0 25: OPTIMIZATION_METHOD_AO_FAm OPTIMIZATION_METHOD_AO_FAm BestResult = 0.8628261244286874: X1 = 61.0, X2 = 33.0, X3 = 93.0, X4 = 55.0, X5 = 30.0, X6 = 49.0, X7 = 55.0 Check = 0.8628261244286874: X1 = 61.0, X2 = 33.0, X3 = 93.0, X4 = 55.0, X5 = 30.0, X6 = 49.0, X7 = 55.0 26: OPTIMIZATION_METHOD_AO_FSS OPTIMIZATION_METHOD_AO_FSS BestResult = 0.6586267117021989: X1 = 90.0, X2 = 17.0, X3 = 30.0, X4 = 11.0, X5 = 11.0, X6 = 89.0, X7 = 46.0 Check = 0.6586267117021989: X1 = 90.0, X2 = 17.0, X3 = 30.0, X4 = 11.0, X5 = 11.0, X6 = 89.0, X7 = 46.0 27: OPTIMIZATION_METHOD_AO_COAm OPTIMIZATION_METHOD_AO_COAm BestResult = 0.751387775021677: X1 = 33.0, X2 = 74.0, X3 = 89.0, X4 = 52.0, X5 = 2.0, X6 = 8.0, X7 = 99.0 Check = 0.751387775021677: X1 = 33.0, X2 = 74.0, X3 = 89.0, X4 = 52.0, X5 = 2.0, X6 = 8.0, X7 = 99.0 28: OPTIMIZATION_METHOD_AO_GWO OPTIMIZATION_METHOD_AO_GWO BestResult = 0.7905125996746682: X1 = 64.0, X2 = 24.0, X3 = 58.0, X4 = 11.0, X5 = 39.0, X6 = 36.0, X7 = 55.0 Check = 0.7905125996746682: X1 = 64.0, X2 = 24.0, X3 = 58.0, X4 = 11.0, X5 = 39.0, X6 = 36.0, X7 = 55.0 29: OPTIMIZATION_METHOD_AO_ABC OPTIMIZATION_METHOD_AO_ABC BestResult = 0.2279828722733523: X1 = 37.0, X2 = 49.0, X3 = 45.0, X4 = 96.0, X5 = 86.0, X6 = 54.0, X7 = 89.0 Check = 0.2279828722733523: X1 = 37.0, X2 = 49.0, X3 = 45.0, X4 = 96.0, X5 = 86.0, X6 = 54.0, X7 = 89.0 30: OPTIMIZATION_METHOD_AO_ACOm OPTIMIZATION_METHOD_AO_ACOm BestResult = 0.7283588705105443: X1 = 58.0, X2 = 36.0, X3 = 46.0, X4 = 58.0, X5 = 77.0, X6 = 42.0, X7 = 46.0 Check = 0.7283588705105443: X1 = 58.0, X2 = 36.0, X3 = 46.0, X4 = 58.0, X5 = 77.0, X6 = 42.0, X7 = 46.0 31: OPTIMIZATION_METHOD_AO_PSO OPTIMIZATION_METHOD_AO_PSO BestResult = 0.5892210470192797: X1 = 52.0, X2 = 52.0, X3 = 68.0, X4 = 62.0, X5 = 86.0, X6 = 77.0, X7 = 30.0 Check = 0.5892210470192797: X1 = 52.0, X2 = 52.0, X3 = 68.0, X4 = 62.0, X5 = 86.0, X6 = 77.0, X7 = 30.0 32: OPTIMIZATION_METHOD_AO_RND OPTIMIZATION_METHOD_AO_RND BestResult = 0.6663782757838177: X1 = 4.896755719304697, X2 = 61.0, X3 = 23.0, X4 = 8.0, X5 = 52.0, X6 = 67.0, X7 = 58.0 Check = 0.6663782757838177: X1 = 4.896755719304697, X2 = 61.0, X3 = 23.0, X4 = 8.0, X5 = 52.0, X6 = 67.0, X7 = 58.0
ZY 何かがIWOで正しく動作していない。たぶん、私が間違って移植したのだろう。
- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索






新しい記事「母集団最適化アルゴリズム:微小人工免疫系(Micro-AIS)」はパブリッシュされました:
この記事では、身体の免疫系の原理に基づいた最適化手法、つまりAISを改良した微小人工免疫系(Micro Artificial Immune System:Micro-AIS)について考察します。Micro-AISは、より単純な免疫系のモデルと単純な免疫情報処理操作を用います。また、この記事では、従来のAISと比較した場合のMicro-AISの利点と欠点についても触れています。
AISアルゴリズムは、抗原(入力)、抗体(解)、キラー細胞(最適化プロセス)の概念を用いてこれらのプロセスをモデル化し、問題を最適に解決します。抗原は最適化されるべき入力を表します。抗体はこの問題に対する潜在的な解です。キラー細胞は、最適化問題に対する最適解を探索する最適化プロセスです。
人工免疫系(AIS)最適化法は1990年代に提案されました。この手法に関する初期の研究は1980年代半ばまでさかのぼり、Farmer、Packard、Perelson (1986)、Bersini and Varela (1990)が大きく貢献しています。
それ以来、AIS法は発展を続け、科学界で継続的な研究の対象となっています。この方法は、様々な最適化問題や学習問題への応用と同様に、多くのバリエーションや修正が提案されています。身体の免疫系は、感染症や腫瘍などの外的影響から身を守るためにも重要な役割を果たしています。敵対的なエージェントを識別し、将来の使用のために情報を保存する能力を維持しながら、異常を認識し、検出し、攻撃する能力を持ちます。
Micro-AIS (Micro-Immune Algorithm)は、最適化問題を解くために開発された免疫系(AIS)アルゴリズムを改良したものです。従来のAISとの違いは、より単純な免疫系のモデルと、より単純な免疫情報処理操作を用いる点です。
作者: Andrey Dik