【緊急】強化学習の際のmemoryブロックのステップ遅れについて
Show older comments
お世話になっております。
memoryブロックのステップ遅れについて質問があります。
現在、MATLAB/Simulinkを通じて強化学習を行っています。
agentブロックからactionを受け渡す際に以下のようなエラーが発生します。
----------------------------------------------------------------------------------------------------------
エラー: rl.env.SimulinkEnvWithAgent>localHandleSimoutErrors (行 668)
'EAHEs/simulation/Mdl_surf_RF' の入力端子 (1) はループ内にあります。
---------------------------------------------------------------------------------------------------------
このため、例題などを確認すると、actionから環境側に受け渡す際にmemoryブロックが接続されているおり、
同様に接続を行うと解析が流れるようになりました(図)。
ただ、このブロックを使うと、初期値を入力する必要があるため、
agent側が選択した行動と環境側から返答される状態値が1ステップずれてしまうのではないかと考えました。
実際にmemoryブロックの前後でactionをmatファイルで確認したところ、1ステップ分、ずれていました。
※Unit Delayブロックでも同様の現象が発生しました。

上記のような、行動が1ステップ遅れる現象を改善する方法はありますでしょうか。
もし、memoryブロックを使わなくても解析が流せるのであれば、方法をご教授頂きたいです。
可能であれば、お早めに回答いただけると幸いです。何卒宜しくお願い致します。
Accepted Answer
More Answers (0)
Categories
Find more on Reinforcement Learning in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!