借助通用的网格世界环境类搭建各式各样的二维环境进行强化学习训练
先看这个向量式方法生成随机maze来训练Q—learning的agent、主要特点是地图大
ccc
rng(0)
%% 布置环境硬件
n...(:,state2idx(GW,GW.ObstacleStates),:) = -n*2;
GW.R(:,state2idx(GW,GW.TerminalStates),:) = n*2;
%% 生成环境及初始位置...甚至还可以设置跳跃、类似传送门的效果
先创建障碍物
GW = createGridWorld(5,5);
GW.CurrentState = '[2,1]';
GW.TerminalStates = '...]"),:,:) = 0;
GW.T(state2idx(GW,"[2,4]"),state2idx(GW,"[4,4]"),:) = 1;
设定可以从[2,4]跳跃到[4,4]
在设定reward的时候加一句