From a Dodging Ball to an Autonomous Drone: Reinforcement Learning in Unity
Publication Date
Spring 2026
Presentation Length
30 minutes
College
College of Sciences & Mathematics
Department
Math and Computer Science, Department of
Student Level
Undergraduate
Faculty Mentor
Christina Davis
Metadata/Fulltext
Fulltext
Presentation Type
Talk/Oral
Summary
This project is an ongoing exploration of deep reinforcement learning in Unity, where I started by training a ball to dodge varied attacks and am now transitioning to training drones to do the same. Using Unity’s ML-Agents framework, I built a generic attack orchestration system with flying swords using Bézier curve trajectories and swinging blades with velocity prediction.
After getting the ball agent to successfully dodge attacks, I shifted focus to implementing more realistic drone flight with simulated LiDAR and IMU-like sensors, allowing the agent to perceive its environment and react.
Most of this work has gone into building the environment itself: designing systems, handling movement, and figuring out how perception and action interact, rather than just optimizing model performance. Moving forward, I’m combining the drone with the attack system, experimenting with different architectures, and testing deep learning approaches across different sensor inputs to see how they impact learning and behavior.
Project blog: marcocassar.info/dodgingagent
Source code: github.com/Ocramaru/UnityMLPlayground
Recommended Citation
Cassar, Marco, "From a Dodging Ball to an Autonomous Drone: Reinforcement Learning in Unity" (2026). SPARK Symposium Presentations. 991.
https://repository.belmont.edu/spark_presentations/991

Comments
Current progression:
Bezier-based attack trajectories
Initial drone flight
Drone navigation with simulated sensors (LiDAR/IMU)