文档帮助中心文档
从强化学习代理中获得参与者表示
actor = getActor(代理)
例子
演员= getActor (代理)返回指定强化学习代理的参与者表示对象。
演员= getActor (代理)
演员
代理
全部折叠
假设你有一个现有的训练有素的强化学习代理。对于本例,从训练DDPG Agent控制双积分系统.
负载(“DoubleIntegDDPG.mat”,“代理”)
从代理获取参与者表示。
actor = getActor(代理);
从参与者获得可学习的参数。
params = getLearnableParameters(actor);
修改参数值。对于本例,只需将所有参数乘以2.
2
modifiedParams = cellfun(@(x) x*2,params,“UniformOutput”、假);
将参与者的参数值设置为新修改的值。
actor = setLearnableParameters(actor,modifiedParams);
将代理中的参与者设置为新的修改过的参与者。
agent = setActor(代理,actor);
创造一个具有连续动作空间的环境,并获得其观察和动作规范。对于本例,加载示例中使用的环境训练DDPG Agent控制双积分系统.
加载预定义的环境。
环境= rlPredefinedEnv(“DoubleIntegrator-Continuous”)
env = DoubleIntegratorContinuousAction with properties:增益:1 Ts: 0.1000 MaxDistance: 5 GoalThreshold: 0.0100 Q: [2x2 double] R: 0.0100 MaxForce: Inf State: [2x1 double]
获得观察和行动规范。
obsInfo = getObservationInfo(env);actInfo = getActionInfo(env);
根据环境观察和操作规范创建PPO代理。
agent = rlPPOAgent(obsInfo,actInfo);
要修改强化学习代理中的深度神经网络,必须首先提取参与者和评论家表示。
actor = getActor(代理);批评家= get批评家(代理);
从演员和评论家表征中提取深度神经网络。
actorNet = getModel(actor);criticNet = getModel(批评家);
网络是dlnetwork对象。来查看它们情节函数时,必须将它们转换为layerGraph对象。
dlnetwork
情节
layerGraph
例如,查看角色网络。
情节(layerGraph (actorNet))
要验证网络,请使用analyzeNetwork.例如,验证评论家网络。
analyzeNetwork
analyzeNetwork (criticNet)
您可以修改演员和评论家网络,并将它们保存回代理。如果要修改网络,可以使用深度网络设计器要打开每个网络的应用程序,使用以下命令。
deepNetworkDesigner (layerGraph (criticNet) deepNetworkDesigner (layerGraph (actorNet))
在深度网络设计器,修改网络。例如,您可以向网络添加其他层。在修改网络时,不要改变返回的网络的输入和输出层getModel.有关构建网络的更多信息,请参见用深度网络设计器构建网络.
getModel
验证修改后的网络深度网络设计器,你必须点击为dlnetwork分析,在分析部分。为了将修改后的网络结构导出到MATLAB®工作空间,生成用于创建新网络的代码,并从命令行运行此代码。中不使用导出选项深度网络设计器.有关显示如何生成和运行代码的示例,请参见使用深度网络设计器创建代理,并使用图像观察进行训练.
在这个例子中,创建修改过的演员和评论家网络的代码如下createModifiedNetworks.m.
createModifiedNetworks.m
createModifiedNetworks
每个修改后的网络都包含一个额外的fullyConnectedLayer而且reluLayer在它们的输出路径。查看修改后的角色网络。
fullyConnectedLayer
reluLayer
情节(modifiedActorNet)
导出网络后,将网络插入到参与者和评论家表示中。
actor = setModel(actor,modifiedActorNet);批评家= setModel(批评家,modifiedCriticNet);
最后,在参与者和评论家对象中插入修改后的参与者和评论家表示。
agent = setActor(代理,actor);agent = set批评家(代理,评论家);
rlDDPGAgent
rlTD3Agent
rlPGAgent
rlACAgent
rlPPOAgent
rlSACAgent
包含参与者表示的强化学习代理,指定为以下之一:
rlDDPGAgent对象
rlTD3Agent对象
rlACAgent对象
rlPGAgent对象
rlPPOAgent对象
rlSACAgent对象
rlDeterministicActorRepresentation
rlStochasticActorRepresentation
参与者表示对象,指定为以下之一:
rlDeterministicActorRepresentationobject -当返回时代理是一个rlDDPGAgent或rlTD3Agent对象
rlStochasticActorRepresentationobject -当返回时代理是一个rlACAgent,rlPGAgent,rlPPOAgent,或rlSACAgent对象
getCritic|setActor|setCritic|getModel|setModel|getLearnableParameters|setLearnableParameters
getCritic
setActor
setCritic
setModel
getLearnableParameters
setLearnableParameters
この例の変更されたバ,ジョンがあります.編集された方の例を開きますか?
次のmatlabコマンドに対応するリンクがクリックされました。
コマンドをmatlabコマンドウィンドウに入力して実行してください。Webブラウザ,はMATLABコマンドをサポ,トしていません。
选择一个网站,在可用的地方获得翻译的内容,并查看当地的活动和优惠。根据您所在的位置,我们建议您选择:.
您也可以从以下列表中选择一个网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
联系当地办事处