Missing “Mask” Attribute when Training Multi-Agent PPO with RNN (LSTM) – Error in local_ppo_rnn_ (R2024b)
1 view (last 30 days)
Show older comments
I am encountering a reproducible error when training a multi-agent reinforcement-learning environment with PPO and recurrent networks (LSTM) in MATLAB R2024b. Single-agent training with the same actor/critic and same Simulink environment runs without issues; the problem appears only in multi-agent training.
- During execution of local_ppo_rnn_, the trajectories mini-batch passed to the function lacks the Mask field (mb.Mask).
- In single-agent runs, padSequences correctly adds Mask, so the same code path works.
- In multi-agent runs, padSequences appears not to be invoked (or its result is not propagated), leading to the missing field and the runtime error.
- HasRecurrent is correctly detected as true (checked via rl.util.rlModelDescriptor).
- No custom ProcessExperienceFcn is used.
So, My questions are
- Is this a known issue (bug) in R2024b for multi-agent RNN training?
- Is there an official patch or workaround—other than disabling the recurrent layers or training agents individually?
- If the fix is scheduled for a future release, could you provide an estimated timeline or a temporary code change (e.g., ensuring Mask gets added) that we can apply locally?
Thank you for your assistance.
1 Comment
Haelee
on 9 Jun 2025
Hi, 홍렬. Could you kindly provide a code snippet that reproduces the issue, so that others can easily identify it?
Also, you can refer to the known bug/issue list from: External Bug Report - R2024b (Reinforcement Learning Toolbox)
Answers (0)
See Also
Categories
Find more on Sequence and Numeric Feature Data Workflows in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!