← Back to Projects

Altered State Machine × FIFA · 2023

FIFA: AI League

UnityC#TensorFlowPythonAWS EC2CI/CDML-Agents

Overview

FIFA: AI League is a mobile football game developed in collaboration with FIFA, built around a machine learning–driven agent system running entirely on-device. The core technical challenge was enabling real-time inference across multiple simultaneous agents on low-end Android hardware without server-side processing.

I integrated TensorFlow-built models into the Unity runtime, achieving 16 model inferences per second across eight agents while maintaining ~75 FPS on older Android devices. Model outputs fed into a rule-based decision layer that selected actions based on current game state, combining the predictive power of ML with the reliability of explicit logic. I also designed and built the training infrastructure — Unity ML-Agents extensions for custom agent configurations, containerised EC2 training sessions running parameterised runs to generate model variants at scale, and analytics pipelines to automate model evaluation and selection for integration into mobile builds.

Media

Game loading screen
Game loading screen
In-game arena selection screen
In-game arena selection screen
ML agent training in progress — agents playing at accelerated speed during automated training runs
Game loop and UI flow planning diagram
Game loop and UI flow planning diagram

Key Contributions

01

TensorFlow model integration into Unity runtime for on-device multi-agent inference

02

16 model inferences per second across 8 simultaneous agents at ~75 FPS on older Android hardware

03

Hybrid ML + utility AI decision system combining model outputs with rule-based state logic

04

Unity ML-Agents extensions for custom model configurations and agent behaviours

05

Containerised EC2 training pipelines with parameterised runs generating model variants at scale

06

Analytics-driven automated model selection integrated into the CI/CD process