How rte-france/atlas works
ATLAS is an electricity-market simulation platform covering day-ahead and intraday trading. A user builds or loads an AtlasDataset, then invokes a module or workflow through the CLI. The orchestrator dispatches modules, applies their structured changes to shared data, and persists outputs. Day-ahead runs order formulation, clearing, and portfolio optimisation; intraday adds price forecasting and revised orders before clearing and final optimisation. Sampled storage code confirms solver-backed storage decisions, state evolution, and reserve constraints; some module orchestration links are inferred only from the README and tree.
Components 22
Runtime Orchestration
- ATLAS CLI
atlas/app.py - Workflow Engine
atlas/orchestrator/workflow/workflow.py - Module Runner
atlas/modules/module_run.py - Change Sets
atlas/orchestrator/change_set.py
Data Foundation
- Atlas Dataset
atlas/io_utils/atlas_dataset.py - Dataset Loader
atlas/io_utils/input_loader.py - Output Writer
atlas/io_utils/output_writer.py - Equipment Models
atlas/objects/equipment/equipment.py - Market Objects
atlas/objects/market/order.py
Day-Ahead Chain
- Day-Ahead Orders
atlas/modules/day_ahead_orders/module.py - Storage Order Model
atlas/modules/day_ahead_orders/steps/storage/optim/storage.py - Market Clearing
atlas/modules/market_clearing/module.py - Clearing Phases
atlas/modules/market_clearing/phases/clearing.py
Intraday Market
- Intraday Price Forecast
atlas/modules/intraday_price_forecast/module.py - Intraday Orders
atlas/modules/intraday_orders/module.py - Intraday Formulation
atlas/modules/intraday_orders/orders_formulation/abstract_orders.py
Optimization Services
- Portfolio Optimization
atlas/modules/portfolio_optimisation/module.py - Portfolio Steps
atlas/modules/portfolio_optimisation/steps/base.py - Solver Interface
atlas/solver/solver_interface.py - Storage Dynamics
atlas/common/optimal_dispatch/dispatch/storage.py - Storage Reserves
atlas/common/optimal_dispatch/reserves/storage.py
Other components
- Market User
Connections 27
- Market User → ATLAS CLI: invokes
- ATLAS CLI → Workflow Engine: starts workflow
- ATLAS CLI → Module Runner: runs module
- Workflow Engine → Module Runner: dispatches steps
- Dataset Loader → Atlas Dataset: loads data
- Module Runner → Dataset Loader: reads inputs
- Module Runner → Atlas Dataset: reads dataset
- Module Runner → Day-Ahead Orders: runs module
- Day-Ahead Orders → Storage Order Model: optimizes storage
- Storage Order Model → Solver Interface: solves model
- Day-Ahead Orders → Change Sets: returns changes
- Module Runner → Market Clearing: runs module
- Market Clearing → Clearing Phases: dispatches phases
- Market Clearing → Change Sets: returns results
- Module Runner → Portfolio Optimization: runs module
- Portfolio Optimization → Portfolio Steps: builds steps
- Portfolio Steps → Solver Interface: solves model
- Portfolio Steps → Storage Dynamics: models storage
- Storage Dynamics → Storage Reserves: adds reserves
- Portfolio Optimization → Change Sets: returns changes
- Module Runner → Intraday Price Forecast: runs module
- Intraday Price Forecast → Change Sets: returns forecast
- Module Runner → Intraday Orders: runs module
- Intraday Orders → Intraday Formulation: formulates orders
- Intraday Orders → Change Sets: returns changes
- Module Runner → Atlas Dataset: applies changes
- Module Runner → Output Writer: writes outputs