Reaching observation data and pass them to the learning process

조회 수: 3 (최근 30일)
Hi everyone,
I'm wondering if I can have access to observation data and take actions based on the first observed observations in every time step.
Something that I need is like here:
like here:
obsInfo = rlNumericSpec([8 1]);
if obsInfo.input(1)<0
actInfo= rlNumericSpec([4 1],...
LowerLimit=[-inf -inf -inf -inf]',...
UpperLimit=[0 0 0 0]');
obsInfo.input(1)>0
actInfo= rlNumericSpec([4 1],...
LowerLimit=[0 0 0 0]',...
UpperLimit=[inf inf inf inf]');
else
end

채택된 답변

Emmanouil Tzorakoleftherakis
Emmanouil Tzorakoleftherakis 2024년 3월 21일
편집: Emmanouil Tzorakoleftherakis 2024년 3월 21일
In general, you cannot change the observation/action space definition once they are defined. That said, it seems to me that what you are trying to accomplish can be done in a different way. Depending on whether your environment is in MATLAB or Simulink, you can check whether the last observation was positive or negative and adjust the agent's output as needed.
If you are using an off-policy agent, it would be a good idea to also make sure this adjustment is reflected in the experience buffer as well. You can use, e.g. the last action port for that.
  댓글 수: 1
Esan freedom
Esan freedom 2024년 3월 24일
Thank you so much,
As I'm using Simulink I did it the way you mentioned. Regards.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

제품


릴리스

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by