アルゴリズム最適化選手権。 - ページ 45

 
Andrey Dik:

あなたのアルゴリズムは、アルゴリズムからの直接のFF呼び出し、つまり、*.ex5から*.ex5への呼び出しを使用しています。ExpertRemove()を使用せずに最適化を正しく停止する特別な停止コマンドを実行中のスクリプトから呼び出すことは可能ですか?

落とし穴や問題点はないのでしょうか?

今日は、テストスクリプトでアルゴリズムを呼び出す例を、次の2つのバリエーションで提供しなければなりません。1.テストスクリプトからFFを呼び出す、2.アルゴリズムからFFを呼び出す。

無理でしょう。そんなことをヒントに、最近、いろいろな呼び方のバリエーションについて考察してみました。だから、時間を計測するのではなく、あくまでもチャートから外し、禁止された実行時間になったら捨てることを提案したのです。
 
Yuri Evseenkov:

ドミトリー・フェドセーエフやアンドレイ・ディックのようなMQLの推進者は、なぜ簡単な例ですべてを大衆的に説明しようとしないのだろうかと思う。

でも、できるんです。記事https://www.mql5.com/ru/articles/351 はその一例です。

おそらく、その理由は大衆性にあるのではないでしょうか。もしかしたら、自分たちのような上級ユーザーを探して、懇親会を開きたいのかもしれません。それゆえ、MQL5では、専門性の高い専門用語や長い時空間的なアナロジーに限定しています。

遺伝的アルゴリズムについては、こちら(https://habrahabr.ru/post/128704/)が非常にわかりやすい。

ここで試してみたが、誰も見ていないようだし、見たくもない。

でも、そのスレッドではなく、ベルコンスキーが作って削除した前のスレッドで。ここでも聞けばよかったのに。一般的な社会では正しく動作しますが、なぜここに投稿すると、Belkonskyはすぐにここでたわごとに来る場合。

 
Dmitry Fedoseev:
無理でしょう。そんなことをヒントに、最近、ここでさまざまな吹き出しについて考察してみました。だから、時間を計測するのではなく、あくまでグラフから外し、法外な実行時間になったら捨てることを提案したのです。
また、*.ex5関数の内部で、内部変数やグローバル変数のflag==falseを常時チェックするのでしょうか?
 
Andrey Dik:
また、*.ex5関数の内部で、内部変数やグローバル変数のflag==falseを恒久的にチェックするのでしょうか?

端末のグローバル 変数の場合。しかし、その場合、参加者がこれを行うための条件が必要です。

ここで、あるエポックの処理の途中でコマンドが投入され、処理を中断せざるを得なくなると、そのエポックの処理の一部が無駄になることがある。

 
Dmitry Fedoseev:

端末のグローバル 変数の場合。しかし、その場合、参加者がこれを行うための条件が必要です。

ここで、あるエポックの処理の途中でコマンドが投入され、処理を中断しなければならなくなると、あるエポックで行われた作業の一部が無駄になることがある。

もちろんです。

そして、スクリプトが好きな時にグローバル変数にブレークフラグを書き込めるようにする必要があります。

そして、アルゴリズムは、エポック開始前にフラグが許可されているかどうかを確認する必要があります。

チェックスクリプトの例では、この点(グローバルチェック)が反映されることになります。

 
Andrey Dik:

もちろんです。

そして、スクリプトが望む時にグローバル変数に停止フラグを書き込めるようにする必要があります。

そして、アルゴリズムはエポックを開始する前に、このフラグが許可されているかどうかを確認する必要があります。

チェックスクリプトの例では、この点(グローバルチェック)が反映されることになります。

そこで、エポックを実行する前に、そのような名前の変数の存在を確認する(名前を指定する)ことをルール化する必要があります。
 
このレベルのトレーニングを受けて、長年の経験を積んだ上で、ほとんど何も知らない人たちを選手権に参加させるわけですか。アニメを見せて「参加しろ、できるぞ!」と言うのでしょうか? あなたと他の数人の競争相手に勝つことは、道徳的に満足のいくことなのでしょうか?なぜ彼らを招待するのですか?もしかしたら、満足感は道徳的なものでなく、物質的な次元にあるのかもしれませんね。
 
Реter Konow:
これだけのトレーニングを積み、長年の経験を積んだ上で、ほとんど何も知らない人たちを選手権に招待するわけですか。アニメを見せて「参加しろ、できるぞ」と言うのですか? あなたと他の数人の競争相手に勝つことは、道徳的に満足のいくことなのでしょうか?なぜ彼らを招待するのですか?もしかしたら、満足感は道徳的なものでなく、物質的な次元にあるのかもしれませんね。

さて、まず、経験豊富なオプティマイザーは2人ではなく、もっとたくさんいます(あえて少ないというのは別の問題です)。次に、準備があまりできていない人に対しては、今何ができるのか。- 参加することも可能で、予備予選はありません。

MQのチャンピオンシップを見てください、そこでは緑の初心者は禁止されているのですか?- いいえ、そうではありませんでしたし、その通りでした。

若手」にも禁止事項はない。誰でも参加できる。

そして3つ目は、「参加するな、チャンスはない!」と言わなければならないのか。- 逆に、"誰にでもチャンスはある!"と言ったんです。そして、トレーニングのレベルに関係なく、そうするのです。

 
Dmitry Fedoseev:
そこで、エポックを実行する前に、このような名前(具体的に)の変更の有無を確認する、というような要件をルールに記述するのです。
OKです。
 
Dmitry Fedoseev:

端末のグローバル 変数の場合。しかし、その場合、参加者がこれを行うための条件が必要です。

このため、エポック処理の途中でコマンドを与えて中断させなければならない場合、エポック内で行われた作業の一部が無駄になることがあります。

私はあまり好きではありませんが、解決策はあると思います。誰かが提案したもので、もしかしたらあなたかもしれません。

事前に(コード内の特別な要求により)、実行回数がその数より大きくならないように規定することができます。そして、許容数を超えると呼び出し回数をカウントするFFは、ExpertRemove()を呼び出します。

アルゴリズムは警告され、そして、よく言われるように、本人の責任になる)。

大丈夫でしょうか?