Autonomous AI Palletizer
A Reinforcement Learning palletizing system trained in Unity (C# / ML-Agents) and deployed to an industrial robot arm controller via ROS2 and C++, addressing real-world physical discrepancies.
Automating parcel palletizing is difficult because incoming conveyor packages vary in size, weight, and sequence. Fixed rules or lookup tables often result in unstable stacks or empty pallet space.
Trained an RL agent in Unity (C# / ML-Agents) with reward shaping for stack stability and volume density.
Exported the trained model to a C++ runtime integrated with a real industrial robot via ROS2, bridging practical differences between simulated physics and physical robot hardware.
Technical Specifications & Subsystems
Trained deep neural network policies in parallelized 3D Unity simulation, progressively increasing box size variety and arrival randomness.
Integrated the trained neural policy into a C++ node communicating with ROS2 topics to control physical robot arm motions.
Formulated reward functions that prioritize center of mass alignment, spatial compactness, and stack balance to prevent tipping.
Identified and compensated for real-world discrepancies (surface friction, box deformation, placement tolerances) between simulation and the physical robot workcell.
Want to discuss robotics & reinforcement learning?
I would be excited to talk about ROS2 pipelines, deep RL simulation, and industrial automation.