主体内容

训练强化学习代理

创建环境增强学习代理后,使用环境培训代理火车函数.配置训练使用rlTrainingOptions对象.例例创建培训选项集选择并培训代理代理程序环境环境env.

选择=rl培训选项.MaxEpisodes=1000,.MaxStepsPerEpisode=1000,.StopTrainingCriteria=常值奖励,.StopTrainingValue=480)!trainResults = train(代理,env,opt);

ifenv多代理环境万博1manbetxrlsimlinkenv中指定代理参数为数组数组代理程序必须匹配代理程序创建env.万博1manbetx多代理培训不支持MATLAB®环境学

更多创建代理信息见强化学习代理.更多创建环境信息见强化学习环境万博1manbetx创建自定义仿真链路环境.

注解

火车代理程序更新培训进度之所以有可能,是因为每个代理器都是一个控点对象保存原代理参数供日后使用,将代理保存到MAT文件

保存( save)"initialAgent.mat",代理)
复制代理器为新变量时,新变量总指针带更新参数的最新代理版更多控点对象信息见 handle对象行为.

训练自动终止时条件定义StopTrainingCriteriaStopTrainingValue选项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参数推理

训练算法

一般来说,培训执行下列步骤

  1. 初始化代理

  2. 每一集:

    1. 重置环境

    2. 获取初始观察s级0自环境

    3. 计算初始动作a/0=华府高山市s级0)中华府高山市s级)即当前策略

    4. 设置当前动作初始动作a/a/0)并设置当前观察为初始观察s级s级0)

    5. 事件未完成或终止时,执行以下步骤

      1. 应用动作a/并获取下一观察s'和奖赏R.

      2. 从经验集学习s级,a/,R,s')

      3. 计算下一步动作a'=华府高山市s')

      4. 当前动作更新a/a'并用下个观察更新当前观察s级s')

      5. 终止事件满足环境定义条件

  3. 训练终止条件满足时,终止训练否则,开始下一集

软件执行这些步骤的细节取决于代理器配置和环境举例说,重置环境开始时可包含随机初始状态值,如果配置环境作此调整的话。更多代理程序培训算法见强化学习代理.并行处理GPUs加速训练见train代理使用并行计算和GPU.

Epiode管理器

默认调用火车函数打开Episode管理器,使您可视化培训进度

Episode管理窗口显示预定义钟环境上DQN代理培训完成

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.

验证代理时,考虑验证代理处理下列事务:

和并行训练一样,如果你有并行计算工具箱软件,你可以多极计算机运行多并行模拟狦ΤMATLAB并行服务器TM软件可运行多并行计算机集群或云资源模拟更多配置模拟使用并行计算信息见Parallel使用ParallelizationOptionsrlSimulationOptions.

环境可视化

if your train环境执行绘图方法,你可以视觉化环境行为 训练模拟万一你调用绘图(env)训练或模拟前env即环境对象,然后培训期间可视化更新,允许您视觉化每一集或模拟的进展

万博1manbetx环境可视化不支持培训或模拟代理使用并行计算

自定义环境必须实现绘图方法论更多信息创建自定义环境绘图函数见从类模板创建自定义环境.

并见

应用

函数类

对象

相关实例

多点讲解