3D Soccer Sim
3D Soccer Sim is a Unity-based soccer simulation environment designed for experimenting with multi-agent reinforcement learning in a 2v2 setting. The simulator focuses on training two deep reinforcement learning agents to play soccer cooperatively and competitively using real-time spatial data and game dynamics. This project was developed as an assesment for Deep learning and Multi-agent systems Courses in University of Tehran.
Built with Unity and C#, this project provides an interactive and extensible framework for AI training, benchmarking, and visualization in multi-agent systems.
Screenshots:
đ§ Project Goals
- đšī¸ Build a 3D soccer simulation environment in Unity
- đ¤ Implement a 2 vs 2 multi-agent system
- đ§Ŧ Train agents using deep reinforcement learning techniques
- đ Simulate realistic interactions between agents, ball, and environment
- đ Observe emergent cooperative and adversarial behaviors between agents
đ§° Tech Stack
Component |
Technology |
Game Engine |
Unity (C#) |
AI Framework |
Custom integration with ML libraries |
Learning Algorithms |
PPO |
Agents |
Multi-Agent System (2v2) |
Simulation Target |
Soccer Environment |
đ Features
- đ§ Supports training and evaluation of AI agents in Unity
- âŊ Real-time soccer mechanics with ball control.
- đ Easily extendable for reward shaping, new strategies, or larger teams
- đˇ Visualization tools for debugging and training observation
đ Use Cases
- Research on multi-agent reinforcement learning in dynamic environments
- Simulation-based AI development and policy testing
- Teaching tool for ML concepts in interactive 3D settings
- Benchmarking multi-agent coordination and competition strategies
đ§Ŧ Reinforcement Learning Setup
- Agents receive input from the environment (positions, velocities, ball state, field of view)
- Actions include move, turning around
- Rewards based on goals, positioning, and strategy
- Supports integration with frameworks like ML-Agents, PyTorch, or TensorFlow via socket or REST interface