フィルターのクリア

How to implement reinforcement learning using code generation

33 ビュー (過去 30 日間)
Yihao Wan
Yihao Wan 2021 年 2 月 26 日
コメント済み: Mirjan Heubaum 2023 年 1 月 19 日
I want to implement the reinforcement learning block in dSPACE using code generation, while the simulink will pop out the error 'The 'AgentWrapper' class does not suppot code generation'. Is there a way how to solve it?
Or is it possible to extract the neural work of reinforcement learning agent and import it into deep learning toolbox?
Thank you very much. Any suggestions are appreciated.

採用された回答

Kishen Mahadevan
Kishen Mahadevan 2021 年 3 月 1 日
As of R2020b, the RL Agent block does not support Code Generation (we are working on it) and is currently only used for training a Reinforcement Learning Agent in Simulink.
However, in R2020b, native Simulink blocks such as 'Image Classifier' and 'Predict' were introduced in Deep Learning Toolbox, and the MATLAB function block was enhanced to model Deep Learning networks in Simulink. These blocks allow using pre-trained networks including Reinforcement Learning policies in Simulink to perform inference.
Also, in R2021a, plain C Code generation for Deep Learning networks is supported (so no dependence on 3p libraries like one-dnn), which enables code generation from the native DL blocks and the enhanced MATLAB function block mentioned above.
Using these features, steps you could follow in R2021a are:
1) Use either Predict or the MATLAB function block to replace the existing RL Agent block, and pull in your trained agent into Simulink
2) Leverage the Plain C Code generation feature to generate code for your Reinforcement Learning Agent
Note:
To create a function that can be used within the 'MATLAB function' block to evaluate the learned policy (pre-trained agent), or to create agentData that can be imported into the 'Predict' block, please refer to the 'generatePolicyFunction' API.
  5 件のコメント
Kishen Mahadevan
Kishen Mahadevan 2021 年 3 月 15 日
Hello,
The issue mentioned in point 1 is very similar to this MATLAB Answer. Please refer to it for more information.
Based on that MATLAB Answers post, using the MATLAB Function block in place of the predict block resolved the issue. Since you are facing issues with the MATLAB Function block setup as well, we might need to take a deeper look into the model.
Please contact Technical Support directly by creating a service request.
Mirjan Heubaum
Mirjan Heubaum 2023 年 1 月 19 日
@Kishen Mahadevan are you still working on the code generation support of the RL agent? In that case: only for inference or for the training?

サインインしてコメントする。

その他の回答 (0 件)

製品


リリース

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by