Skip to content

EnergyTwin: A Multi-Agent System for Simulating and Coordinating Energy Microgrids

🕒 Published (v1): 2025-11-25 18:19 UTC · Source: Arxiv · link

Ask a follow-up

Open an assistant pre-loaded with this paper's context.

💬 Ask ChatGPT✦ Ask Claude

TL;DR

EnergyTwin is an open-source multi-agent simulation platform that couples physically grounded energy-asset models with a FIPA-compliant agent coordination layer running over the JADE platform. It targets tertiary-layer (minutes-to-hours) microgrid decision-making via rolling-horizon planning and contract-based negotiation. Evaluation on a university campus scenario shows forecast-driven planning improves energy self-sufficiency and battery reserve margins compared to reactive baselines.

Problem

Existing microgrid tools split along a hard seam: power-system simulators (OpenDSS, pandapower, HELICS) capture electrical physics but assume centralized control, while agent frameworks (JADE, GridLAB-D) model decentralized decision-making but use abstract commodity-flow representations with no physical grounding. No single stack combines validated DER physics with reusable, protocol-driven multi-agent coordination templates in a modular, extensible way.

Method

EnergyTwin wraps each physical asset (PV array, BESS, load, external supply) in a Java/JADE agent that encapsulates both a physical model and local decision logic. A global OrchestratorAgent advances a discrete tick counter and broadcasts TickBroadcastBehaviour messages to synchronize all agents. An AgentStateRegistry aggregates per-agent STATE_UPDATE messages into a single grid-state view. The AggregatorAgent acts as the central planner: at each planning interval it queries the ForecastAgent for load/irradiance predictions, solves an economic dispatch over a rolling horizon, and then—if shortfalls or surpluses are projected—issues FIPA Contract Net Protocol (CNP) call-for-proposals to BatteryAgent and ExternalSupplyAgent, which respond with bids evaluated against their operational constraints (\(SOC\) bounds, C-rate limits). Physical models include: - PV cell temperature via the NOCT model: \(T_c = T_a + (G/G_\text{NOCT})\times(T_\text{NOCT}-T_\text{amb,NOCT})\) - Efficiency correction: \(\eta = \eta_\text{STC}\times(1 + \gamma(T_c - T_\text{STC}))\) - BESS state-of-charge: \(E_{t+1} = E_t + \eta_c P_\text{ch,t}\Delta t - \frac{1}{\eta_d}P_\text{dis,t}\Delta t - E_\text{self}\Delta t\)

Weather variability is injected via Gaussian noise on sinusoidal GHI/temperature profiles. The architecture is implemented in Java (Spring + JADE) and published as open source.

Key Contributions

  • Hybrid simulation platform unifying validated physical DER models with a FIPA-compliant MAS coordination layer in a single, modular codebase.
  • Hierarchical agent taxonomy (AbstractSimAgent → AbstractEnergySourceAgent / AbstractEnergyStorageAgent / AbstractLoadAgent) enabling plug-and-play DER extension.
  • Tick-synchronized OrchestratorAgent that enforces a global discrete-time step across all agents, preventing race conditions.
  • Forecast-informed rolling-horizon planning loop coupled to CNP-based negotiation for dynamic energy procurement.
  • Validated campus-scale scenario demonstrating measurable improvement in self-sufficiency and resilience KPIs across multiple planning strategies.
  • Open-source release of code and experimental scenarios for community extension.

Results

  • Forecast-driven rolling-horizon planning increased local energy self-sufficiency relative to reactive (no-forecast) and static baselines (exact percentages are not reported in the provided text excerpt).
  • Higher battery state-of-charge reserves were maintained under the rolling-horizon strategy, reducing vulnerability to demand spikes and contingency events.
  • Fewer low-resilience operating states (e.g., near-zero SOC while grid-connected supply is uncertain) were observed with the forecast-driven strategy.
  • Results are characterized qualitatively in the abstract; quantitative tables/figures appear in Section 4 of the full paper, which is not included in the provided excerpt.

Limitations

  • Tertiary-layer focus only: primary (millisecond inverter dynamics) and secondary (set-point restoration) control layers are out of scope.
  • Weather model uses a configurable sinusoidal + Gaussian-noise approximation rather than real meteorological time series, limiting fidelity for extreme-event stress tests.
  • Negotiation mechanism depth is intentionally deferred to future work; current CNP usage is described as lightweight and not thoroughly evaluated.
  • Java/JADE implementation may impose integration friction for Python-centric power-systems workflows (pandapower, PyPSA).
  • No convergence guarantees or formal verification of the distributed decision-making are provided.
  • Quantitative benchmark comparisons against co-simulation frameworks (HELICS, mosaik) or reinforcement-learning baselines are absent.

Relevance to Harnesses / Meta-Harnesses

EnergyTwin is a concrete domain-specific harness architecture: the OrchestratorAgent functions as a meta-harness that clocks and synchronizes all subordinate agents via a broadcast tick loop, while the AgentStateRegistry acts as a shared-state bus—a pattern directly analogous to a workflow harness coordinating parallel worker agents with a central context store. The FIPA CNP bidding loop (CFP → PROPOSE/REFUSE → ACCEPT → EXECUTE) mirrors the task-dispatch/result-collection lifecycle seen in LLM-agent harnesses, grounding the abstract pattern in a physically validated domain. For researchers tracking harness design, EnergyTwin illustrates how tick-based synchronization, hierarchical agent roles, and protocol-driven negotiation can be composed into a reproducible, extensible orchestration layer—lessons transferable to any multi-agent harness that must coordinate heterogeneous, stateful workers under timing constraints.