Read data from csv file into a reward function for Reinforcement Learning

I have a list of coordinates (in a CSV file) that I want my RL model to imitate.
To do that, I wanted to compare the current coordinates of the model with the coordiantes from the csv file and set the reward based on the distance.
I tried readtable in the reward function itself but I got the error 'function not supported for code generation'. I tried moving that out and evalin the coordinates but evalin function was also not supported.
So how can I get the coordinates into the Reward function?
This is probably very simple but I am not familar with matlab.
The reward function is a MATLAB Function from Simulink/Used-Defined Functions.
I am using the Reinforcement Learning toolbox, in R2020b.

 채택된 답변

Emmanouil Tzorakoleftherakis
Emmanouil Tzorakoleftherakis 2021년 3월 18일

0 개 추천

It seems like you were trying to read the file from within the MATLAB Fcn block (this block assumes that anything you write in it supports code generation). One workaround is to use 'coder.extrinsic' on readtable. That should remove the codegen error although I am not sure if it makes sense to read the file every time the block is executed. Maybe reading the file from a script beforehand and using blocks like this would be more efficient.

추가 답변 (1개)

jeyasheelarakkini joseph
jeyasheelarakkini joseph 2021년 10월 12일

0 개 추천

i have a csv file where some of the attributes i need to give to a q learning agent(ephilson greedy), if the next row attribute value is greater than i can switch to that state or else stay in the same state.The state space can be formed at random from the CSV file with n number of rows and columns

카테고리

도움말 센터File Exchange에서 Environments에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by