Distributed-drive electric plant-protection vehicles (DDEPPVs) offer strong potential for improving maneuverability and energy efficiency in smart agriculture, but their performance is limited by low-adhesion terrain, load fluctuations, and severe wheel-ground coupling in complex field environments. To address these challenges, this study proposes a lightweight and robustness-enhanced hierarchical reinforcement learning framework, termed LRTD3, for distributed-drive electric agricultural vehicles. The framework decomposes the original high-dimensional four-wheel torque control problem into an upper-layer motion-demand generation task and a lower-layer torque-allocation task, reducing control redundancy and online computational complexity. The upper layer employs a robustness-enhanced DDPG controller to generate the desired additional yaw moment and total driving torque through parameter randomization, disturbance injection, and risk-aware reward shaping. The lower layer adopts a lightweight TD3-based allocator that analytically reconstructs left-right torque demands and learns only front-rear torque allocation coefficients, enabling compact action representation and efficient inference. Hardware-in-the-loop experiments under dry-field hard-soil and muddy-field conditions, together with real-vehicle paddy-field validation, verify the effectiveness of the proposed method. Compared with 4D-TD3, LRTD3 reduces CPU training time by 83.9% and average VCU inference time by 28.2%. Under muddy-field conditions, it reduces peak yaw rate by 23.7% and 11.8%, peak sideslip angle by 25.8% and 18.8%, and cumulative energy consumption by 13.1% and 9.7% compared with 2D-TD3 and 4D-TD3, respectively. These results demonstrate improved robustness, computational efficiency, and energy-saving performance in uncertain field environments.
No takes yet. Share an insight, caveat, or question.
Xu et al. (2026) studied this question.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: