Filter löschen
Filter löschen

Easy way to evaluate / compare the performance of RL algorithm

5 Ansichten (letzte 30 Tage)
Saurav Sthapit
Saurav Sthapit am 29 Jul. 2020
Bearbeitet: Saurav Sthapit am 6 Aug. 2020
I have a RL agent trained and would like to compare its performance with a dumb agent. I can run simout=sim(env,agent,simOpts) to evaluate the actual agent. But, I would like to compare the simulation results with a couple of dumb agents which always has the same action or random action. Is there any easy way to do this?
Currently, I have a seperate simulink model without RL agent block (replaced with constant block) and logging Observation and rewards using Simulation Data Inspector.
Thanks
Saurav

Antworten (1)

Emmanouil Tzorakoleftherakis
Why not use a MATLAB Fcn block and implement the dummy agent in there? If you want random/constant actions should be just one line.
  1 Kommentar
Saurav Sthapit
Saurav Sthapit am 6 Aug. 2020
Bearbeitet: Saurav Sthapit am 6 Aug. 2020
Thanks, thats an excellent suggestion for evaluating random actions.
However, when I do that (or use constant blocks), I have to run two statements below: first one for evaluating random/dumb action and one for evaluating the agent.
logsout=sim(mdl)
simout=sim(env,agent,simOpts)
logsout and simout are not directly comparable, but logsout is a field in the simout.SimulationInfo struct.
I am wondering if this is the best approach or if there is a easy way to do this.
Also, simout contains action, observation and reward but if the reward is weighted sum of multiple rewards, I can't access the individual rewards. ( Of course, i can compare logsout with simout.logsout)

Melden Sie sich an, um zu kommentieren.

Produkte


Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by