Reinforcement learning: "NextObs" vs. "LoggedState" in step function
Show older comments
Hi,
I could not find out what the difference between "NextObs" and "LoggedSignals" is in the step function. In all scripts both are passed on from the step function.
[NextObs,Reward,IsDone,LoggedSignals] = myStepFunction(Action,LoggedSignals)
"LoggedSignals" is obviously used for the next step, but what is "NextObs" used for?
Thanks!
Answers (1)
Emmanouil Tzorakoleftherakis
on 27 Jul 2020
0 votes
Actually, NextObs is the important thing here. It represents the value of your states after you apply current action and integrating one step.
LoggedSignals is where you can log information to view later - can be left empty too.
4 Comments
Anne Tscheliessnig
on 28 Jul 2020
Emmanouil Tzorakoleftherakis
on 28 Jul 2020
Oh you were looking at creating custom environments with functions - I was looking at creating environments with classes by running e.g.
rlCreateEnvTemplate('myenv')
where LoggedSignals is not that important since you can use class variables to store the states.
I suspect the reason you need both LoggedSignals and NextObs is to create a unified way of using custom environments regardless of how you create it. NextObs is probably what the agent is using when interacting with the environment, whereas LoggedSignals is a way to save intermmediate values if you don't use classes to create your custom env.
lfyx
on 1 Nov 2021
Hello, may I ask that, can the "sim" function output the LoggedSignals to the work space? Many information about the simulation action or observarion are saved in the LoggedSignals. However, the output of "sim" is the experince structure.
Maha Mosalam
on 22 Nov 2021
Hi, what about the xact role of IsDone flag it it shuld be true or false or what?
Categories
Find more on Simscape Electrical 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!