並列計算を使用して強化学習に関して

9 views (last 30 days)
Teppei Iwata
Teppei Iwata on 11 Jan 2020
並列計算を使用して強化学習を行っているのですがつぎのエラーが発生してしまい途中でプログラムが終了してしまいます.
また,現在プログラムを動かしているPCは複数人で使用しており,PC上ではユーザ1がMATLAB2019b,ユーザ2がMATLAB2019aでそれぞれ並列計算のプログラムを動かしている状況です.
'local' プロファイルを使用して並列プール (parpool) を起動中...
クラッシュ ダンプ ファイルを含んでいるため、ID: 2 を付けてジョブを保存しています。
'delete(myCluster.Jobs)' を使用すると、プロファイル local を指定して作成したすべてのジョブを削除することができます。'myCluster' を作成するには、'myCluster = parcluster('local')' を使用します。
並列プールに接続済み (ワーカー数: 8)
警告: 無効であるか削除されたオブジェクトです。
警告: 無効であるか削除されたオブジェクトです。
警告: 無効であるか削除されたオブジェクトです。
警告: 無効であるか削除されたオブジェクトです。
警告: 無効であるか削除されたオブジェクトです。
警告: ハンドルが無効です。
警告: 無効であるか削除されたオブジェクトです。
警告: クラス rl.env.SimulinkEnvWithAgent に対して定義されたイベント SimulationsDistributed のリスナー コールバックの実行中にエラーが発生しました。
無効であるか削除されたオブジェクトです。
エラー: rl.util.EpisodeManager/setActionMessage (line 76)
this.ActionLabel.Text = msg;
エラー: rl.train.TrainingManager/setActionMessage (line 104)
setActionMessage(episodeMgr,msg);
エラー: rl.train.parCommTrain/nestedSimDistCB (line 221)
setActionMessage(trainMgr,getString(message('rl:general:TrainingManagerRunningTasksOnWorkers')));
エラー: rl.train.parCommTrain>@(src,ed)nestedSimDistCB(hostComm) (line 232)
@(src,ed) nestedSimDistCB(hostComm));
エラー: rl.env.AbstractEnv/notifySimsDistributed (line 307)
notify(this,'SimulationsDistributed');
エラー: rl.env.SimulinkEnvWithAgent>@(src,ed)notifySimsDistributed(this) (line 342)
simlist(2) = event.listener(this.SimMgr,'AllSimulationsQueued' ,@(src,ed) notifySimsDistributed(this));
エラー: Simulink.SimulationManager/handleAllSimulationsQueued
エラー: Simulink.SimulationManager>@(varargin)obj.handleAllSimulationsQueued(varargin{:})
エラー: MultiSim.internal.SimulationRunnerParallelBase/executeImplNonSimManager
エラー: MultiSim.internal.SimulationRunnerParallelBase/executeImpl
エラー: Simulink.SimulationManager/executeSims
エラー: Simulink.SimulationManagerEngine/executeSims (line 50)
out = obj.SimulationManager.executeSims(fh);
エラー: rl.env.SimulinkEnvWithAgent/executeSimsWrapper (line 358)
executeSims(this.SimEngine,simfh,in);
エラー: rl.env.SimulinkEnvWithAgent/parsimWrapper (line 467)
simouts = executeSimsWrapper(this,policy,in,simfh,simouts,opts);
エラー: rl.env.SimulinkEnvWithAgent/simWithPolicy (line 590)
simouts = parsimWrapper(env,policy,simData,in,opts);
エラー: rl.train.parCommTrain (line 240)
simWithPolicy(env,commPolicy,simOptions);
エラー: rl.train.TrainingManager/train (line 253)
rl.train.parCommTrain(this);
エラー: rl.train.TrainingManager/run (line 155)
train(this);
エラー: rl.agent.AbstractAgent/train (line 54)
TrainingStatistics = run(trainMgr);
エラー: LiveEditorEvaluationHelperE1483005771 (line 46)
trainingStats = train(agent,env,trainOpts);
エラー: matlab.internal.editor.evaluateRegions
エラー: matlab.internal.editor.EvaluationOutputsService.evalRegions
警告: 無効であるか削除されたオブジェクトです。
警告: 無効であるか削除されたオブジェクトです。
並列計算の設定は次のようになっています.
useParallel = true;
if useParallel
trainOpts.UseParallel = true;
trainOpts.ParallelizationOptions.Mode = "async";
trainOpts.ParallelizationOptions.DataToSendFromWorkers = "experiences";
trainOpts.ParallelizationOptions.StepsUntilDataIsSent = 30;
trainOpts.ParallelizationOptions.WorkerRandomSeeds = -1;
end

Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!