An open-source agent-based simulation toolbox for European electricity markets, supporting deep reinforcement learning bidding strategies and grid congestion management modeling.
Overview#
ASSUME (Agent-based Simulation for Studying and Understanding Market Evolution) is an open-source agent-based simulation framework for European electricity markets. The project is maintained by INATECH (University of Freiburg), IISM (Karlsruhe Institute of Technology), Fraunhofer ISI/IEG, and FH Aachen, with funding from BMWK (German Federal Ministry for Economic Affairs and Climate Action).
Core Capabilities#
Agent-Based Modeling: Modular representation of generators, demand-side, and storage agents with plug-and-play custom behavior logic.
Deep Reinforcement Learning Integration: DRL methods integrated into market agent strategies, enabling dynamic bidding adjustment based on market conditions.
Multiple Market Clearing Algorithms: Supports redispatch, zonal clearing with NTC, and nodal clearing mechanisms.
Grid Simulation: Network-constrained market clearing and congestion management via PyPSA library integration.
Data & Visualization: TimescaleDB time-series storage, Grafana dashboard analytics, and TensorBoard training monitoring.
Key Use Cases#
- Comparing different electricity market design options
- Modeling congestion management mechanisms
- Analyzing bidding strategies of storage and renewable operators
- Bidding strategy research under uncertainty
- Regulatory intervention impact assessment
- Multi-agent dynamics and emergent behavior research
Installation#
# Basic installation
pip install assume-framework
# With reinforcement learning
pip install 'assume-framework[learning]'
# With network clearing
pip install 'assume-framework[network]'
# Full installation
pip install 'assume-framework[all]'
Quick Start#
git clone https://github.com/assume-framework/assume.git
cd assume
python examples/examples.py
Run simulation via CLI:
assume -s example_01b -db "postgresql://assume:assume@localhost:5432/assume"
Docker deployment:
docker compose up -d
Access Grafana: http://localhost:3000
Technical Architecture#
- Core Modules:
assume/(main framework),assume_cli/(CLI interface) - Examples:
examples/contains runnable simulation scenarios - Deep Learning: PyTorch-based (GPU version requires separate installation)
- Grid Analysis: PyPSA library dependency
- License: AGPL-3.0
Target Users#
From master's thesis researchers to PhD candidates and industry professionals, suitable for academic research, policy evaluation, and commercial strategy validation.