1

私は、シミュレートされたロボットが未知のパターン化された環境 (オフィス ビルなど) を探索するプロジェクトに取り組んでいます。つまり、各ポイントで、ロボットは利用可能な可視の場所から移動する新しい場所を選択する必要があります。私たちの最終的な目標は、環境内のパターンを活用してグローバルな探索時間を最適化する方法をロボットに学習させることです。

ロボットは、その場所に関する多くの既知の特徴 (ポイントまでの距離、ポイントから他のすべてのポイントまでの平均距離、ポイント周辺のエリアなど) の線形結合に基づいてユーティリティ スコアを与えることによって、次に移動する場所を選択します。すでに調査済みなど)。私の目標は、この効用関数の重みを最適化して、環境全体を探索する時間を最速にすることです。

スコアは探索パス全体に依存するため、探索中に重みを変更したくありません。重みの組み合わせをテストするには、シミュレートされたロボットがそれらの重みで環境全体を実行し、結果のスコアを取得する必要があります。したがって、データの |w|+1 xn 配列を作成できます。次のような重みの数です。

w1    w2    w3     w4      score
0.23, 4.30, -0.33, -2.001, 17030
-1.3, 2.03, -10.1, -0.021, 21983
3.65, -1.1, 5.021, 0.2301, 19508
etc...

私の質問は、どのような種類の強化学習アルゴリズムがこれに最適でしょうか? 私が文献や研究で見つけたもののほとんどは分類に関係しており、明らかに多変量回帰は機能しません。また、q-learning アルゴリズムを実装しようとしましたが、これは実際には機能しません。たどるパスと環境の構造に応じて、さまざまな数の状態とアクションがあるためです。私が本当に欲しいのは、データの行を次々と取り、予想されるスコアを最大化する重みとその組み合わせの値を決定する、ある種の構造です。ヘルプ/アイデアはありますか? ありがとう。

4

1 に答える 1

1

セットアップを形式化する方法 (中間報酬なし、オンライン学習なし、最終スコアのみ) は、ブラック ボックス最適化(または系統発生強化学習) の典型です。

適切なアルゴリズムには、遺伝的アルゴリズム、進化戦略、または確率的検索があります。いくつかの最先端のアルゴリズムは次のとおりです。

パラメーターの数、スコアのノイズの程度、期待するローカル最適値の数に応じて、それぞれ異なるフレーバーがあります。

Python でのこれらの実装のコレクションについては、PyBrainライブラリを参照してください。

于 2011-04-20T19:00:32.320 に答える