Problems to set up the reset function in Reinforcement learning environment

5 vues (au cours des 30 derniers jours)
Jooo
Jooo le 19 Août 2020
Hi,
I am trying to set up a reset function for my simulation of a Furuta pendulum. With the code below I am able to randomly assign a Value to the specified constant block in Simulink in every new episode. Unfortunately I don´t know how to modify my code, so that it also varies the Arm and Pendulum Position at every new episode. These variables are used as state targets in the revolute joints of my simulink model.
Can somebody help me on that?
function in = localResetFcn(in)
blk = sprintf('RL_Inverse_Pendulum_10/Environment/Target_Position');
Target_Position = randi(4)*pi/2-pi/2;
% Arm_Position=randi(4)*pi/2-pi/2;
% Pendel_Position=randi(4)*pi/2-pi/2;
in = setBlockParameter(in,blk,'Value',num2str(Target_Position));
end

Réponses (1)

Emmanouil Tzorakoleftherakis
Maybe I am missing something, but why don't you add a couple of lines that call 'setBlockParameter' with the appropriate path to your other constant blocks?

Produits


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by