rlTrainingOptions
描述
使用一个rlTrainingOptions
对象指定选项来训练一个代理在一个环境。培训选项包括集训练的最大数量,标准停止训练,储蓄标准代理和选择使用并行计算。在设置选项,使用这个对象作为输入参数火车
。
培训代理商的更多信息,请参阅强化学习培训代理。
创建
属性
MaxEpisodes
- - - - - -最大数量的集培训代理
500年
(默认)|正整数
集训练特工的最大数量,指定为一个正整数。无论终止的其他标准,培训后终止MaxEpisodes
。
例子:MaxEpisodes = 1000
MaxStepsPerEpisode
- - - - - -最大数量的步骤运行每一集
500年
(默认)|正整数
最大数量的步骤运行每集指定为一个正整数。一般来说,您定义事件终止条件环境。这个值是步骤运行的最大数量的事件如果其他终止条件不满足。
例子:MaxStepsPerEpisode = 1000
ScoreAveragingWindowLength
- - - - - -窗口长度平均
5
(默认)|正整数标量|正整数向量
窗口长度平均成绩、奖励和每个代理的一些步骤,指定为一个标量或矢量。
如果培训环境包含一个代理,指定ScoreAveragingWindowLength
作为一个标量。
如果训练的环境是一个多代理仿真软件®环境,指定一个标量应用相同的窗口长度对所有代理。
为每个代理使用一个不同的窗口长度,指定ScoreAveragingWindowLength
作为一个向量。在这种情况下,元素的顺序向量对应订单的代理期间使用环境的创建。
选项表示平均而言,ScoreAveragingWindowLength
是集的数量包括在平均水平。例如,如果StopTrainingCriteria
是“AverageReward”
,StopTrainingValue
是500年
对于一个给定的代理,然后代理,训练终止时平均奖励中指定事件的数量ScoreAveragingWindowLength
等于或超过500年
。其他代理、培训持续进行直到:
所有代理达到停止条件。
集到的数量
MaxEpisodes
。通过单击你停止训练停止训练按钮事件经理或紧迫ctrl - c在MATLAB®命令行。
例子:ScoreAveragingWindowLength = 10
StopTrainingCriteria
- - - - - -训练终止条件
“AverageSteps”
(默认)|“AverageReward”
|“EpisodeCount”
|……
训练终止条件,指定为以下字符串之一:
“AverageSteps”
——停止训练运行时平均每集的步数等于或超过临界值指定的选项StopTrainingValue
。使用窗口的平均计算“ScoreAveragingWindowLength”
。“AverageReward”
——停止训练时正在运行的平均回报等于或超过临界值。“EpisodeReward”
——停止训练时,奖励在当前事件等于或超过临界值。“GlobalStepCount”
——停止训练步骤在所有事件的总数(的总数乘以代理调用)等于或超过临界值。“EpisodeCount”
——停止训练当训练集的数量等于或超过临界值。
例子:StopTrainingCriteria = " AverageReward "
StopTrainingValue
- - - - - -临界值的训练终止条件
500年
(默认)|标量|向量
临界值的训练终止条件,指定为一个标量或矢量。
如果培训环境包含一个代理,指定StopTrainingValue
作为一个标量。
如果训练的环境是一个多代理仿真软件环境,指定一个标量相同的终止准则适用于所有代理。为每个代理,使用不同的终止准则指定StopTrainingValue
作为一个向量。在这种情况下,元素的顺序向量对应订单的代理期间使用环境的创建。
对于一个给定的代理、培训结束时,指定的终止条件StopTrainingCriteria
选择等于或超过这个值。其他代理的培训持续进行直到:
所有代理达到停止条件。
集到的数量
maxEpisodes
。通过单击你停止训练停止训练按钮事件经理或紧迫ctrl - c在MATLAB命令行。
例如,如果StopTrainingCriteria
是“AverageReward”
,StopTrainingValue
是One hundred.
对于一个给定的代理,然后代理,训练终止时平均奖励中指定事件的数量ScoreAveragingWindowLength
等于或超过One hundred.
。
例子:StopTrainingValue = 100
SaveAgentCriteria
- - - - - -在训练条件保存代理
“没有”
(默认)|“EpisodeReward”
|“AverageReward”
|“EpisodeCount”
|……
条件保存代理培训期间,指定为以下字符串之一:
“没有”
——不保存任何代理在训练。“EpisodeReward”
——保存剂当奖励在当前事件等于或超过临界值。“AverageSteps”
——保存代理运行时平均每集的步数等于或超过临界值指定的选项StopTrainingValue
。使用窗口的平均计算“ScoreAveragingWindowLength”
。“AverageReward”
——保存代理运行时平均回报所有集等于或超过临界值。“GlobalStepCount”
——保存剂步骤在所有事件的总数(的总数乘以代理调用)等于或超过临界值。“EpisodeCount”
——保存剂当训练集的数量等于或超过临界值。
设置这个选项来存储候选代理人根据您所指定的标准,表现良好。当你设定这个选项以外的一个值“没有”
,软件设置SaveAgentValue
选择500。你可以改变这个值指定条件保存剂。
例如,假设你想等待进一步测试的任何代理收益率一集奖励,等于或超过100年。为此,集SaveAgentCriteria
来“EpisodeReward”
并设置SaveAgentValue
选择100。当一集奖励等于或超过100年,火车
在垫文件保存相应的代理在指定的文件夹中SaveAgentDirectory
选择。垫文件AgentK.mat
,在那里K
的数量相应的事件。代理是垫文件存储在saved_agent
。
例子:SaveAgentCriteria = " EpisodeReward "
SaveAgentValue
- - - - - -临界值条件节约代理
“没有”
(默认)|500年|标量|向量
临界值的条件保存代理、指定为一个标量或矢量。
如果培训环境包含一个代理,指定SaveAgentValue
作为一个标量。
如果训练的环境是一个多代理仿真软件环境,指定一个标量应用相同的储蓄标准每个代理。保存剂,当一个人满足一个特定的标准,指定SaveAgentValue
作为一个向量。在这种情况下,元素的顺序向量对应订单的创建环境时使用的代理。保存标准代理时,所有代理都保存在相同的垫文件。
当你指定一个条件保存候选人代理使用SaveAgentCriteria
,软件将这个值设置为500。改变指定条件的值保存剂。看到SaveAgentCriteria
选择更多的细节。
例子:SaveAgentValue = 100
SaveAgentDirectory
- - - - - -文件夹名称保存代理
“savedAgents”
(默认)|字符串|特征向量
文件夹名称保存代理、指定为字符串或字符向量。文件夹可以包含一个完整或相对路径名称。当一个事件发生在指定的条件SaveAgentCriteria
和SaveAgentValue
选项是满意,垫的代理文件软件保存在这个文件夹中。如果该文件夹不存在,火车
创建它。当SaveAgentCriteria
是“没有”
,此选项将被忽略火车
不创建一个文件夹。
例子:SaveAgentDirectory = pwd +“\ run1 \代理”
UseParallel
- - - - - -标志使用并行训练
假
(默认)|真正的
国旗使用并行训练、指定为一个逻辑
。设置这个选项真正的
配置培训使用并行处理来模拟环境,从而使使用多核处理器,计算机集群或云资源加快训练速度。指定选择并行训练,使用ParallelizationOptions
财产。
当UseParallel
是真正的
然后DQN、DDPG TD3,囊NumStepsToLookAhead
财产或相应的代理必须设置为选择对象1
,否则会生成一个错误。这可以保证连续存储的经历。当并行交流特工训练,如果生成一个警告StepsUntilDataIsSent
财产的ParallelizationOptions
对象设置为不同的值NumStepToLookAhead
AC代理选择对象的属性。
请注意,如果你想加快深层神经网络计算(如梯度计算,参数更新和预测)使用当地的GPU,你不需要设置UseParallel
为true。相反,当创建你的演员或评论家表示,使用一个rlRepresentationOptions
对象的UseDevice
选项设置为“图形”
。使用并行计算或GPU需要并行计算工具箱™软件。另外需要使用计算机集群或云资源MATLAB并行服务器™。关于培训的更多信息使用多核处理器和gpu,明白了培训代理商使用并行计算和gpu。
例子:UseParallel = true
ParallelizationOptions
- - - - - -选项来控制并行训练
ParallelTraining
对象
并行化选项来控制并行训练,指定为一个ParallelTraining
对象。培训使用并行计算的更多信息,请参阅强化学习培训代理。
的ParallelTraining
对象具有以下属性,您可以修改后使用点符号创建rlTrainingOptions
对象。
模式
——并行计算模式
“同步”
(默认)|“异步”
并行计算模式,指定为以下之一:
“同步”
——使用parpool
运行同步训练可用的工人。在这种情况下,工人暂停执行,直到所有的工人都完成了。主机更新演员和评论家参数基于结果从所有的工人和将更新后的参数发送给所有工人。注意,基于同步训练需要梯度并行,这是当DataToSendFromWorkers
被设置为“梯度”
然后模式
必须设置为“同步”
。“异步”
——使用parpool
运行异步培训可用的工人。在这种情况下,工人们把他们的数据返回到主机就完成从主机和接收更新参数。工人们继续他们的工作。
例子:模式=“异步”
WorkerRandomSeeds
——初始化随机函数发生器的工人
1
(默认)|2
|向量
随机函数发生器初始化对工人,指定为以下之一:
1
——每个工人分配一个唯一的随机种子。种子是工人ID的值。2
——不随机种子分配给员工。向量-手动指定每个工人的随机种子。向量中的元素的数量必须与工人的数量。
例子:WorkerRandomSeeds = (1 2 3 4)
TransferBaseWorkspaceVariables
——选择发送模型和并行工人工作空间变量
“上”
(默认)|“关闭”
选择发送模型和工作空间变量平行工人,指定为“上”
或“关闭”
。当选择是“上”
,客户端发送给工人基MATLAB工作区中定义的变量和用于近似模型。
例子:TransferBaseWorkspaceVariables =“关闭”
AttachedFiles
——附加文件附加到平行池
[]
(默认)| |字符串的字符串数组
附加文件附加到平行池,指定为一个字符串或字符串数组。
例子:AttachedFiles = " myInitFile.m "
SetupFcn
培训开始前——函数来运行
[]
(默认)|函数处理
函数运行在培训开始前,指定为一个处理函数没有输入参数。这个函数是在培训开始前人均运行一次。编写这个函数来执行任何处理之前,你需要训练。
例子:AttachedFiles = @mySetupFcn
CleanupFcn
——函数运行培训结束后
[]
(默认)|函数处理
函数运行培训结束后,指定为一个处理函数没有输入参数。您可以编写这个函数清理工作区或执行其他处理训练后终止。
例子:AttachedFiles = @myCleanupFcn
详细的
- - - - - -在命令行选项来显示培训进展
假
(0)(默认)|真正的
(1)
在命令行选项来显示培训进展,指定为逻辑值假
(0)或真正的
(1)设置真正的
写的信息从每个训练集训练期间MATLAB命令行。
例子:Verbose = false
StopOnError
- - - - - -选择发生错误时停止训练
“上”
(默认)|“关闭”
选择停止训练当一个错误发生在一集,指定为“上”
或“关闭”
。当这个选项“关闭”
、错误捕获和返回的SimulationInfo
的输出火车
和培训继续下一集。
例子:StopOnError =“关闭”
情节
- - - - - -选项来显示与事件经理培训进展
“训练进步”
(默认)|“没有”
选项来显示与事件经理培训进展,指定为“训练进步”
或“没有”
。默认情况下,调用火车
打开了强化学习集管理器,它以图形和数字显示培训进展的信息,如每集的奖励,平均回报,集,数量和总数量的步骤。有关更多信息,请参见火车
。关掉这显示,设置这个选项“没有”
。
例子:情节= "没有"
对象的功能
火车 |
强化学习培训代理在指定的环境中 |
例子
为培训配置选项
创建一个选项设置培训强化学习代理。设置事件的最大数量和步骤每集的最大数量为1000。配置选项停止训练时的平均回报等于或超过480年,打开命令行显示和强化学习集经理显示培训结果。您可以使用名称-值对参数设置选项当您创建选项集。任何选项,你不显式地设置默认值。
trainOpts = rlTrainingOptions (…MaxEpisodes = 1000,…MaxStepsPerEpisode = 1000,…StopTrainingCriteria =“AverageReward”,…StopTrainingValue = 480,…Verbose = true,…情节=“训练进步”)
trainOpts = rlTrainingOptions属性:MaxEpisodes: 1000 MaxStepsPerEpisode: 1000 StopOnError:”“ScoreAveragingWindowLength: 5 StopTrainingCriteria:“AverageReward”StopTrainingValue: 480 SaveAgentCriteria:“没有一个”SaveAgentValue:“没有一个”SaveAgentDirectory:“savedAgents”详细:1块:“训练进步”UseParallel: 0 ParallelizationOptions: [1 x1 rl.option.ParallelTraining]
另外,创建一个默认的选项设置和使用点符号改变的一些值。
trainOpts = rlTrainingOptions;trainOpts。MaxEpisodes = 1000;trainOpts。MaxStepsPerEpisode = 1000;trainOpts。StopTrainingCriteria =“AverageReward”;trainOpts。StopTrainingValue = 480;trainOpts。详细的= true; trainOpts.Plots =“训练进步”;trainOpts
trainOpts = rlTrainingOptions属性:MaxEpisodes: 1000 MaxStepsPerEpisode: 1000 StopOnError:”“ScoreAveragingWindowLength: 5 StopTrainingCriteria:“AverageReward”StopTrainingValue: 480 SaveAgentCriteria:“没有一个”SaveAgentValue:“没有一个”SaveAgentDirectory:“savedAgents”详细:1块:“训练进步”UseParallel: 0 ParallelizationOptions: [1 x1 rl.option.ParallelTraining]
您现在可以使用trainOpts
作为输入参数火车
命令。
配置并行计算选项进行训练
打开培训强化学习代理并行计算,设置UseParallel
培训选项真正的
。
trainOpts = rlTrainingOptions (UseParallel = true);
配置您的并行训练,配置的字段trainOpts.ParallelizationOptions
。例如,指定异步的培训模式:
trainOpts.ParallelizationOptions。模式=“异步”;trainOpts.ParallelizationOptions
ans = ParallelTraining属性:模式:“异步”WorkerRandomSeeds: 1 TransferBaseWorkspaceVariables:”“AttachedFiles: [] SetupFcn: [] CleanupFcn: []
您现在可以使用trainOpts
作为输入参数火车
命令执行培训与并行计算。
配置选项A3C培训
训练使用异步代理优势actor-critic (A3C)方法,你必须适当地设置代理和并行训练选项。
当创建交流代理设置NumStepsToLookAhead
值要大于1
。共同的价值观是64年
和128年
。
agentOpts = rlACAgentOptions (NumStepsToLookAhead = 64);
使用agentOpts
当创建你的代理。另外,创建您的代理,然后修改它的选项,包括演员和评论家选项后使用点符号。
配置培训使用异步并行算法。
trainOpts = rlTrainingOptions (UseParallel = true);trainOpts.ParallelizationOptions。模式=“异步”;
配置工人梯度数据返回给主机。同时,之前设置的步骤工人回到主机发送数据匹配步骤向前看的数量。
trainOpts.ParallelizationOptions。DataToSendFromWorkers =…“梯度”;trainOpts.ParallelizationOptions。StepsUntilDataIsSent =…agentOpts.NumStepsToLookAhead;
使用trainOpts
当训练你的代理。
例如异步优势actor-critic代理培训,明白了列车空调代理使用并行计算平衡Cart-Pole系统。
版本历史
介绍了R2019aR2022a:培训并行选择:DataToSendFromWorkers
和StepsUntilDataIsSent
属性已经不再活跃
房地产DataToSendFromWorkers
的ParallelizationOptions
对象不再是活跃的,在将来的版本将被删除。学习者从工人发送的数据现在是基于代理类型自动确定。
房地产StepsUntilDataIsSent
的ParallelizationOptions
对象不再是活跃的,在将来的版本将被删除。数据已经发送从工人到学习者在每一集结束。
R2022a:rlTrainingOptions
不建议多代理培训
rlTrainingOptions
不建议同时训练特工的多代理环境。使用rlMultiAgentTrainingOptions
代替。
rlMultiAgentTrainingOptions
多智能体强化学习是专为,并允许您集团代理根据常见的学习策略并指定他们的学习是否集中(即所有代理在一组分享经验)或分散(代理不分享经验),而rlTrainingOptions
只允许对分散学习。
MATLABコマンド
次のMATLABコマンドに対応するリンクがクリックされました。
コマンドをMATLABコマンドウィンドウに入力して実行してくださ了对いweb这类ブラウザーはMATLABコマンドをサポートしていません。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。