
🚀 Getting Started • 🔎 Overview • 📚 UserGuide • ↔️ Interoperability • 💡 Examples • 🤝 Support & Contributing
GEMS is a high-level modelling language, close to mathematical syntax, and a data structure for describing energy systems. Compared to other algebraic modelling languages, GEMS is object- and graph-oriented, making it particularly well-suited to representing energy systems.
<a href="https://gems-energy.readthedocs.io/en/latest/">🌐 Visit Website</a>
The ambition behind the GEMS language is to build and support a community of energy modellers and energy foresight practitioners who can easily share models, assumptions, and studies. This approach is particularly important as future energy systems — strategic by nature — are increasingly conceived in a multi-energy, multi-actor landscape, characterised by rising systemic complexity and tightly coupled interactions across scales.
<img src="https://github.com/AntaresSimulatorTeam/GEMS/raw/v0.3.4/doc/assets/Communaute.jpg" alt="GEMS Logo" width="150px"/>
GEMS has the key attributes required to support and sustain such a community.
Versatility: GEMS is a generic optimisation language capable of representing a wide range of energy systems and use cases, from operational studies to long-term planning, across multiple energy carriers and scales.
Code Stability and Maintainability: By clearly separating model definition from problem resolution, GEMS promotes robust, modular, and maintainable code that can evolve over time without breaking existing models.
Interoperability: GEMS relies on a self-contained and exhaustive mathematical formulation, ensuring that all modelling assumptions, variables, and constraints are explicitly defined. This guarantees unambiguous interpretability of models, which is a key enabler for true interoperability between tools, solvers, and modelling frameworks.

The GEMS documentation, pre-defined model libraries and quick-start examples are hosted in the GitHub repository: GEMS
The following interpreters can be used to run Gems modelling language :
Converters are available to translate existing studies into the GEMS modelling language: