训练强化学习代理
创建环境增强学习代理后,使用环境培训代理火车
函数.配置训练使用rlTrainingOptions
对象.例例创建培训选项集选择
并培训代理代理程序
环境环境env
.
选择=rl培训选项.MaxEpisodes=1000,.MaxStepsPerEpisode=1000,.StopTrainingCriteria=常值奖励,.StopTrainingValue=480)!trainResults = train(代理,env,opt);
ifenv
多代理环境万博1manbetxrlsimlinkenv
中指定代理参数为数组数组代理程序必须匹配代理程序创建env
.万博1manbetx多代理培训不支持MATLAB®环境学
更多创建代理信息见强化学习代理.更多创建环境信息见强化学习环境并万博1manbetx创建自定义仿真链路环境.
注解
火车
代理程序更新培训进度之所以有可能,是因为每个代理器都是一个控点对象保存原代理参数供日后使用,将代理保存到MAT文件
保存( save)"initialAgent.mat",代理)
训练自动终止时条件定义StopTrainingCriteria
并StopTrainingValue
选项rlTrainingOptions
对象满足点击结束条件实现前也可以终止训练停止训练增强学习分机管理器
训练终止时训练统计和结果存储训练Results
对象.
因为火车
代理端更新训练Results
存储上一期培训结果并存数据正确重创培训场景并更新插件管理程序要做到这一点,命令行类型:
trainResults = train(代理,env,trainResults);
火车
打个电话
上头训练Results
对象属性之一包含rlTrainingOptions
对象设置选择
具体说明培训选项集启动更新培训选项后 先修改培训选项训练Results
使用点符号如果上一期培训中已经实现最大片段数,则必须增加最大片段数
禁止显示Epiode管理器培训进度虚博斯
选项显示命令行培训进度,将事件最大数修改到2000年并重开培训,返回新训练Results
对象输出
trainResults.TrainingOptions.MaxEpisodes = 2000!trainResults.TrainingOptions.Plots =无脱机培训Results培训Objects.Verbose=1trainResultsNew = train(agent,env,trainResults);
注解
训练终止时代理程序
反映每一代理器状态 结束最后训练集最终代理获取的奖赏不一定是培训过程实现的最高值,因为持续探索训练期间保存代理程序rlTrainingOptions
对象定义SaveAgentCriteria并保存代理价位属性传递火车
原封不动trainOpts
参数推理
训练算法
一般来说,培训执行下列步骤
初始化代理
每一集:
重置环境
获取初始观察s级0自环境
计算初始动作a/0=华府高山市s级0)中华府高山市s级)即当前策略
设置当前动作初始动作a/←a/0)并设置当前观察为初始观察s级←s级0)
事件未完成或终止时,执行以下步骤
应用动作a/并获取下一观察s'和奖赏R.
从经验集学习s级,a/,R,s')
计算下一步动作a'=华府高山市s')
当前动作更新a/←a'并用下个观察更新当前观察s级←s')
终止事件满足环境定义条件
训练终止条件满足时,终止训练否则,开始下一集
软件执行这些步骤的细节取决于代理器配置和环境举例说,重置环境开始时可包含随机初始状态值,如果配置环境作此调整的话。更多代理程序培训算法见强化学习代理.并行处理GPUs加速训练见train代理使用并行计算和GPU.
Epiode管理器
默认调用火车
函数打开Episode管理器,使您可视化培训进度
Episode管理器图显示每一集的奖项ipsode报答运行平均奖赏值平均奖励)
代理评论家第5集Q0估计每集启动时的贴值长期奖项,并初步观察环境训练进展中,如果评论家设计得当并学习成功第5集Q0平均算法真贴长期奖励,可冲抵ipsode报答因打折而值设计良好的评论家使用免贴奖折算算法
等于一号
),然后平均第5集Q0接近真事件奖项,前图显示
Episode管理器还显示多集训练统计您也可以使用火车
函数返回集培训信息关闭强化学习ipsode管理器绘图
选项rlTrainingOptions
至无
.
保存候选代理
训练期间,您可存取符合条件的候选人代理SaveAgentCriteria
并保存代理价位
选项rlTrainingOptions
对象.举例说,您可以保存事件奖赏超过一定值的代理商,即使终止训练的总体条件尚未满足。例例,当事件奖励大于时保存代理百元
.
选择=rl培训选项事件评分,SaveAgentValue=100);
火车
存储器存储器文件SaveAgentDirectory
选项rlTrainingOptions
.保存代理程序可用以测试长程培训过程生成的候选代理程序细节保存标准保存位置见rlTrainingOptions
.
培训完成后,您可使用MATLAB工作空间从MATLAB中保存最后培训代理保存
函数.例例保存代理myAgent
对文件finalAgent.mat
当前工作目录中
save(Opt.SaveAgentity++"/finalAgent.mat",代理)
默认时,当DDPG和DQN代理时,经验缓冲数据不保存计划继续训练保存代理时,可开始训练前经验缓冲区作为起始点中位设置SaveExperienceBufferWithAgent
选项到真实性
.某些代理商,如经验缓冲和图像观察代理商,保存经验缓冲所需的内存量大在这种情况下,你必须确保保存代理器有足够的内存可用性
验证训练策略
验证培训代理程序时,您可使用培训环境模拟代理程序sim系统
函数.配置模拟使用rlSimulationOptions
.
验证代理时,考虑验证代理处理下列事务:
修改模拟初始条件-修改模型初始条件,修改环境重置函数例重置函数见创建自定义环境使用步和重置函数,从类模板创建自定义环境并万博1manbetx创建自定义仿真链路环境.
训练模拟环境动态之间的误差-检查不匹配性,以与创建培训环境相同的方式创建测试环境,改变环境行为
和并行训练一样,如果你有并行计算工具箱软件,你可以多极计算机运行多并行模拟狦ΤMATLAB并行服务器TM软件可运行多并行计算机集群或云资源模拟更多配置模拟使用并行计算信息见Parallel使用
并ParallelizationOptions
内rlSimulationOptions
.
环境可视化
if your train环境执行绘图
方法,你可以视觉化环境行为 训练模拟万一你调用绘图(env)
训练或模拟前env
即环境对象,然后培训期间可视化更新,允许您视觉化每一集或模拟的进展
万博1manbetx环境可视化不支持培训或模拟代理使用并行计算
自定义环境必须实现绘图
方法论更多信息创建自定义环境绘图
函数见从类模板创建自定义环境.