Using Aspect-Oriented Programming to Record DRL Agents' Data
Summary
The article describes using Aspect-Oriented Programming (AOP) and decorators in Python to instrument data collection for Deep Reinforcement Learning (DRL) agents in a game engine. It explains design goals (architecture independence, minimal core code changes) and demonstrates how an observer pattern, decorators, and YAML config enable non-invasive data tracking across multiple games. A practical dashboard (Streamlit) is shown, with ongoing work on useful metrics and thresholds for designers.