1

私は、Pybrainパッケージを使用して強化学習と交通光シミュレーションを組み合わせるプロジェクトに取り組んでいます。私はチュートリアルを読んで、EnvironmentTaskという独自のサブクラスを実装しました。私は自分の状態を、連続した値を持つベクタにして、各レーンで待っている車の数、レーンあたりの合計待ち時間などの情報を含むことができるようにしたいので、コントローラーとしてActionValueNetworkを使用しています。パイ脳強化学習;状態の次元

ActionValueNetworkの入力サイズをmy状態ベクトルの次元に設定しました。これは、ベクトルを状態変数として使用できることを示唆しています。 Q-learnerまたはSARSA学習者を使用すると、コードは最初はうまく動作しますが、メソッドlearn()が呼び出されるとすぐにエラーメッセージが表示されます。この関数は、

state = int(state) 

ラインが含まれていると、エラーメッセージは、スカラー型の状態を使用することができることを示唆している

TypeError: only length-1 arrays can be converted to Python scalars 

です。

パイブレイン強化学習環境はベクトル形状をサポートしていますか?もしそうなら、Qラーニングや他のメソッドの実装で動作するようにコードを変更するにはどうすればよいですか?

答えて

1

私はその間に私の問題を発見しました。私はQ()学習者を使用していましたが、neural-fitted Q-learning algorithmを実装するNFQ()学習者を使用していたはずです。今それは動作します。

関連する問題