Is it possible to change to the second element of rlNumericSpec other than 1 ?

1 ビュー (過去 30 日間)
Aysegul Kahraman
Aysegul Kahraman 2022 年 4 月 1 日
Hi all,
Observation and action information seem to only take [number of obs/action 1]. As an example from https://se.mathworks.com/help/reinforcement-learning/ug/quadruped-robot-locomotion-using-ddpg-gent.html:
obsInfo = rlNumericSpec([numObs 1]);
obsInfo.Name = 'observations';
numAct = 8;
actInfo = rlNumericSpec([numAct 1],'LowerLimit',-1,'UpperLimit', 1);
actInfo.Name = 'torque';
It seems the second element is 1, representing the time step (for all the cases even with the scheduling tank example). And we defined my problem with one action only, but I want to find a result like 1x24 as an example (it is a scheduling problem and I do not want to have a good control during the simulation, I also want to have a vector which gives me a good horizon control like an MPC. It made sense to increase this one to another bigger number (like 24) based on my problem. However, I haven’t seen any documentation that shows this is actually doable.
The documentation seems clear about using the scalar value (the first component to define the dimension of action/obs).
While creating the critic network, it directly caused an error, as we can expect.
critic = rlQValueRepresentation(criticNetwork,obsInfo,actInfo,'Observation',{'State'},'Action',{'Action'},criticOpts);
because of an error using rl.representation.rlAbstractRepresentation/validateModelInputDimension
Model input sizes must match the dimensions specified in the corresponding observation and action info specifications.
It does not seem like it is going to be possible to change, but before saying anything certain I’d be really happy to take some advise.

回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by