標準のオフライン学習ではなくオンライン学習で実装されたGPを見た人はいますか?私は遺伝子プログラムでいくつかのことをしました、そして私は単に学習プロセスをオンラインにするための良い方法が何であるかを理解することができません。
何かアイデアがあったり、実装を見たり、私が見ることができる参考資料があれば教えてください。
標準のオフライン学習ではなくオンライン学習で実装されたGPを見た人はいますか?私は遺伝子プログラムでいくつかのことをしました、そして私は単に学習プロセスをオンラインにするための良い方法が何であるかを理解することができません。
何かアイデアがあったり、実装を見たり、私が見ることができる参考資料があれば教えてください。
ウィキペディアのリンクによると、オンライン学習は「一度に 1 つのインスタンスを学習します」。通常、オンライン/オフライン ラベルは、トレーニング データが教師あり回帰または分類アルゴリズムにどのようにフィードされるかを示します。遺伝的プログラミングは、評価関数を使用して解の適合性を評価するヒューリスティック検索であり、ラベル付きのトレーニング セットではないため、これらの用語は実際には当てはまりません。
あなたが求めているのは、GPアルゴリズムの出力(つまり、最良の表現型)がより良い解決策を「検索」している間に使用できるかどうかである場合、それがあなたのドメイン/アプリケーションにとって理にかなっていると仮定すると、そうしない理由はわかりません. GA/GP の母集団の適合度が特定のしきい値に達すると、そのソリューションをアプリケーションに適用し、GP の実行を継続して、より良いソリューションが利用可能になったときに新しいソリューションに切り替えることができます。
これに沿ったアプローチの 1 つがrtNEATと呼ばれるアルゴリズムで、遺伝的アルゴリズムを使用してニューラル ネットワークをリアルタイムで生成および更新しようとします。
オンラインの Genetic Programmingを Google の学者で検索して、いくつかの例を見つけました。
行動を進化させ、遺伝的プログラミングでリアルタイムに小型ロボットを制御するオンライン方法
彼らは実際の活動中に GP にロボットの制御システムのマシン コードを変更させる方法を見つけたようです。
これらの同じ著者は、次の改善など、より関連する作業を作成し続けました。
うまくいけば、彼らの仕事があなたを始めるのに十分であることを願っています - 私はあなたに特定のアドバイスを与えることができるほど遺伝的プログラミングの経験がありません.
彼らは実際の活動中に GP にロボットの制御システムのマシン コードを変更させる方法を見つけたようです。
はい、Uni Dortmund の部門は線形 GP に大きく傾いていました :-)
GP プログラムと解釈されたコードの直接実行にはいくつかの利点がありますが、最近では、Java、C#、Obj-C などの動的言語を使用したいと思うでしょう。生の CPU で実行するのではなく、ランタイムの恩恵を受けることができます。
オンライン学習のアプローチは、まったく新しいものでも、「従来の GP」と異なるものでもないように思えます。私の理解では、実行時にトレーニング/フィットネス/テストケースのセットを拡張するだけのケースですか?
乾杯、ジェイ