# Open energy system models

Open energy-system models are energy-system models that are open source. However, some of them may use third-party proprietary software as part of their workflows to input, process, or output data. Preferably, these models use open data, which facilitates open science.
Energy-system models are used to explore future energy systems and are often applied to questions involving energy and climate policy. The models themselves vary widely in terms of their type, design, programming, application, scope, level of detail, sophistication, and shortcomings. For many models, some form of mathematical optimization is used to inform the solution process.
Energy regulators and system operators in Europe and North America began adopting open energy-system models for planning purposes in the early‑2020s. Open models and open data are increasingly being used by government agencies to guide the develop of net‑zero public policy as well (with examples indicated throughout this article). Companies and engineering consultancies are likewise adopting open models for analysis (again see below).

## General considerations
### Organization

The open energy modeling projects listed here fall exclusively within the bottom-up paradigm, in which a model is a relatively literal representation of the underlying system.
Several drivers favor the development of open models and open data. There is an increasing interest in making public policy energy models more transparent to improve their acceptance by policymakers and the public. There is also a desire to leverage the benefits that open data and open software development can bring, including reduced duplication of effort, better sharing of ideas and information, improved quality, and wider engagement and adoption. Model development is therefore usually a team effort and constituted as either an academic project, a commercial venture, or a genuinely inclusive community initiative.
This article does not cover projects which simply make their source code or spreadsheets available for public download, but which omit a recognized free and open-source software license. The absence of a license agreement creates a state of legal uncertainty whereby potential users cannot know which limitations the owner may want to enforce in the future.$^{:1}$ The projects listed here are deemed suitable for inclusion through having pending or published academic literature or by being reported in secondary sources.
A 2017 paper lists the benefits of open data and models and discusses the reasons that many projects nonetheless remain closed.$^{:211–213}$ The paper makes a number of recommendations for projects wishing to transition to a more open approach.$^{:214}$ The authors also conclude that, in terms of openness, energy research has lagged behind other fields, most notably physics, biotechnology, and medicine.$^{:213–214}$

### Growth

Open energy-system modeling came of age in the 2010s. Just two projects were cited in a 2011 paper on the topic: OSeMOSYS and TEMOA.$^{:5861}$ Balmorel was also active at that time, having been made public in 2001. As of July 2022, 31 such undertakings are listed here (with an approximately equal number waiting to be added). Chang et al (2021) survey modeling trends and find the open to closed division about even after reviewing 54 frameworks — although that interpretation is based on project count and not on uptake and use. A 2022 model comparison exercise in Germany reported eight from 40 modeling projects (20%) were open source, these projects also had active communities behind them.

### Transparency, comprehensibility, and reproducibility

The use of open energy-system models and open energy data represents one attempt to improve the transparency, comprehensibility, and reproducibility of energy system models, particularly those used to aid public policy development.
A 2010 paper concerning energy efficiency modeling argues that "an open peer review process can greatly support model verification and validation, which are essential for model development".$^{:17}$ To further honor the process of peer review, researchers argue, in a 2012 paper, that it is essential to place both the source code and datasets under publicly accessible version control so that third-parties can run, verify, and scrutinize specific models. A 2016 paper contends that model-based energy scenario studies, seeking to influence decision-makers in government and industry, must become more comprehensible and more transparent. To these ends, the paper provides a checklist of transparency criteria that should be completed by modelers. The authors however state that they "consider open source approaches to be an extreme case of transparency that does not automatically facilitate the comprehensibility of studies for policy advice."$^{:4}$
A one-page opinion piece from 2017 advances the case for using open energy data and modeling to build public trust in policy analysis. The article also argues that scientific journals have a responsibility to require that data and code be submitted alongside text for peer review. And an academic commentary from 2020 argues that distributed development would facilitate a more diverse contributor base and thus improve model quality — a process supported by online platforms and enabled by open data and code.

### State projects

State-sponsored open source projects in any domain are a relatively new phenomena.
As of 2017, the European Commission now supports several open source energy system modeling projects to aid the transition to a low-carbon energy system for Europe. The Dispa-SET project (below) is modeling the European electricity system and hosts its codebase on GitHub. The MEDEAS project, which will design and implement a new open source energy-economy model for Europe, held its kick-off meeting in February 2016.$^{:6}$ As of February 2017, the project had yet to publish any source code. The established OSeMOSYS project (below) is developing a multi-sector energy model for Europe with Commission funding to support stakeholder outreach. The flagship JRC-EU-TIMES model however remains closed source.
The United States NEMS national model is available but nonetheless difficult to use. NEMS does not classify as an open source project in the accepted sense.
A 2021 research call from the European Union Horizon Europe scientific research funding program expressly sought energy system models that are open source.

### Surveys

A survey completed in 2021 investigated the degree to which open energy-system modeling frameworks support flexibility options, broken down by supply, demand, storage, sector coupled, and network response. Of the frameworks surveyed, none supported all types, which suggests that the soft coupling of complementary frameworks could provide more holistic assessments of flexibility. Even so, most candidates opt for perfect foresight and do not natively admit probabilistic actions or explicit behavioral responses.

## Electricity sector models

Open electricity sector models are confined to just the electricity sector. These models invariably have a temporal resolution of one hour or less. Some models concentrate on the engineering characteristics of the system, including a good representation of high-voltage transmission networks and AC power flow. Others models depict electricity spot markets and are known as dispatch models. While other models embed autonomous agents to capture, for instance, bidding decisions using techniques from bounded rationality. The ability to handle variable renewable energy, transmission systems, and grid storage are becoming important considerations.
Open electricity sector models :
| Project | Host | License | Access | Coding | Documentation | Scope/type |
| AMIRIS | German Aerospace Center | Apache 2.0 | GitLab | Java | wiki | agent‑based electricity market modeling |
| Breakthrough Energy Model | Breakthrough Energy Foundation | MIT | GitHub | Python, Julia | website, GitHub | power sector modeling |
| DIETER | DIW Berlin | MIT | download | GAMS | publication | dispatch and investment |
| Dispa-SET | EC Joint Research Centre | EUPL 1.1 | GitHub | GAMS, Python | website | European transmission and dispatch |
| EMLab-Generation | Delft University of Technology | Apache 2.0 | GitHub | Java | manual, website | agent-based |
| EMMA | Neon Neue Energieökonomik | CC BY-SA 3.0 | download | GAMS | website | electricity market |
| GENESYS | RWTH Aachen University | LGPLv2.1 | on application | C++ | website | European electricity system |
| NEMO | University of New South Wales | GPLv3 | git repository | Python | website, list | Australian NEM market |
| OnSSET | KTH Royal Institute of Technology | MIT | GitHub | Python | website, GitHub | cost-effective electrification |
| pandapower | University of KasselFraunhofer Institute IEE | BSD-new | GitHub | Python | website | automated power system analysis |
| PowerMatcher | Flexiblepower Alliance Network | Apache 2.0 | GitHub | Java | website | smart grid |
| Power TAC | Erasmus Centre for Future Energy BusinessRotterdam School of ManagementErasmus University | Apache 2.0 | GitHub | Java | website, forum | automated retail electricity trading simulation |
| renpass | University of Flensburg | GPLv3 | by invitation | R, MySQL | manual | renewables pathways |
| SciGRID | DLR Institute of Networked Energy Systems | Apache 2.0 | git repository | Python | website, newsletter | European transmission grid |
| SIREN | Sustainable Energy Now | AGPLv3 | GitHub | Python | website | renewable generation |
| SWITCH | University of Hawaiʻi | Apache 2.0 | GitHub | Python | website | optimal planning |
| URBS | Technical University of Munich | GPLv3 | GitHub | Python | website | distributed energy systems |
| Access refers to the methods offered for accessing the codebase. |||||||

### AMIRIS

AMIRIS is the open Agent-based Market model for the Investigation of Renewable and Integrated energy Systems. The AMIRIS simulation framework was first developed by the German Aerospace Center (DLR) in 2008 and later released as an open source project in 2021.
AMIRIS enables researchers to address questions regarding future energy markets, their market design, and energy-related policy instruments. In particular, AMIRIS is able to capture market effects that may arise from the integration of renewable energy sources and flexibility options by considering the strategies and behaviors of the various energy market actors present. For instance, those behaviors can be influenced by the prevailing political framework and by external uncertainties. AMIRIS may also uncover complex effects that may emerge from the inter‑dependencies of the energy market participants.
The embedded market clearing algorithm computes electricity prices based on the bids of prototyped market actors. These bids may not only reflect the marginal cost of electricity production but also the limited information available to the actors and related uncertainties. But also the bidding can be strategic as an attempt to game official support instruments or exploit market power opportunities.
Actors in AMIRIS are represented as agents that can be roughly divided into six classes: power plant operators, traders, market operators, policy providers, demand agents, and storage facility operators. In the model, power plant operators provide generation capacities to traders, but do not participate directly in markets. Instead, they supply traders who conduct the marketing and deploy bidding strategies on the operators behalf. Marketplaces serve as trading platforms and calculate market clearing. Policy providers define the regulatory framework which then may impact on the decisions of the other agents. Demand agents request energy directly at the electricity market. Finally, flexibility providers, such as storage operators, use forecasts to determine bidding patterns to match their particular objectives, for instance, projected profit maximization.
AMIRIS is based on the open Framework for distributed Agent-based Modelling of Energy systems or FAME.
AMIRIS can simulate large‑scale agent systems in acceptable timeframes. For instance, the simulation of one year at hourly resolution may take as little as one minute on a contemporary desktop computer. The researchers at DLR also have access to high-performance computing facilities.

### Breakthrough Energy Model

The Breakthrough Energy Model is a production cost model with capacity expansion algorithms and heuristics, originally designed to explore the generation and transmission expansion needs to meet U.S. states' clean energy goals. The data management occurs within Python and the DCOPF optimization problem is created via Julia. The Breakthrough Energy Model is being developed by the Breakthrough Energy Sciences team.
The open data underlying the model builds upon the synthetic test cases developed by researchers at Texas A&M University.
The Breakthrough Energy Model initially explored the generation and transmission expansion necessary to meet clean energy goals in 2030 via the building of a Macro Grid. Ongoing work adds and expands modules to the model (e.g. electrification of buildings and transportation) to provide a framework for testing numerous scenario combinations. Development of and integration with other open-source data sets is in progress for modeling countries and regions beyond the United States.
The model was applied subsequently the 2021 Texas power crisis, in which winter power outages resulted in hundreds of deaths and billions of dollars in economic losses.$^{:1}$

### DIETER

DIETER stands for Dispatch and Investment Evaluation Tool with Endogenous Renewables. DIETER is a dispatch and investment model. It was first used to study the role of power storage and other flexibility options in a future greenfield setting with high shares of renewable generation. DIETER is being developed at the German Institute for Economic Research (DIW), Berlin, Germany. The codebase and datasets for Germany can be downloaded from the project website. The basic model is fully described in a DIW working paper and a journal article. DIETER is written in GAMS and was developed using the CPLEX commercial solver.
DIETER is framed as a pure linear (no integer variables) cost minimization problem. In the initial formulation, the decision variables include the investment in and dispatch of generation, storage, and DSM capacities in the German wholesale and balancing electricity markets. Later model extensions include vehicle-to-grid interactions and prosumage of solar electricity.
The first study using DIETER examines the power storage requirements for renewables uptake ranging from 60% to 100%. Under the baseline scenario of 80% (the lower bound German government target for 2050), grid storage requirements remain moderate and other options on both the supply side and demand side offer flexibility at low cost. Nonetheless, storage plays an important role in the provision of reserves. Storage becomes more pronounced under higher shares of renewables, but strongly depends on the costs and availability of other flexibility options, particularly biomass availability.

### Dispa-SET

Under development at the European Commission's Joint Research Centre (JRC), Petten, the Netherlands, Dispa-SET is a unit commitment and dispatch model intended primarily for Europe. It is written in Python (with Pyomo) and GAMS and uses Python for data processing. A valid GAMS license is required. The model is formulated as a mixed integer problem and JRC uses the proprietary CPLEX sover although open source libraries may also be deployed. Technical descriptions are available for versions 2.0  and 2.1. Dispa-SET is hosted on GitHub, together with a trial dataset, and third-party contributions are encouraged. The codebase has been tested on Windows, macOS, and Linux. Online documentation is available.
The SET in the project name refers to the European Strategic Energy Technology Plan (SET-Plan), which seeks to make Europe a leader in energy technologies that can fulfill future (2020 and 2050) energy and climate targets. Energy system modeling, in various forms, is central to this European Commission initiative.
The model power system is managed by a single operator with full knowledge of the economic and technical characteristics of the generation units, the loads at each node, and the heavily simplified transmission network. Demand is deemed fully inelastic. The system is subject to intra-period and inter-period unit commitment constraints (the latter covering nuclear and thermal generation for the most part) and operated under economic dispatch.$^{:4}$ Hourly data is used and the simulation horizon is normally one year. But to ensure the model remains tractable, two day rolling horizon optimization is employed. The model advances in steps of one day, optimizing the next 48 hours ahead but retaining results for just the first 24 hours.$^{:14–15}$
Two related publications describe the role and representation of flexibility measures within power systems facing ever greater shares of variable renewable energy (VRE). These flexibility measures comprise: dispatchable generation (with constraints on efficiency, ramp rate, part load, and up and down times), conventional storage (predominantly pumped-storage hydro), cross-border interconnectors, demand side management, renewables curtailment, last resort load shedding, and nascent power-to-X solutions (with X being gas, heat, or mobility). The modeler can set a target for renewables and place caps on CO$_2$ and other pollutants. Planned extensions to the software include support for simplified AC power flow  (transmission is currently treated as a transportation problem), new constraints (like cooling water supply), stochastic scenarios, and the inclusion of markets for ancillary services.
Dispa-SET has been or is being applied to case studies in Belgium, Bolivia, Greece, Ireland, and the Netherlands. A 2014 Belgium study investigates what if scenarios for different mixes of nuclear generation, combined cycle gas turbine (CCGT) plant, and VRE and finds that the CCGT plants are subject to more aggressive cycling as renewable generation penetrates.
A 2020 study investigated the collective impact of future climatic conditions on 34 European power systems, including potential variations in solar, wind, and hydro‑power output and electricity demand under various projected meteorological scenarios for the European continent.
Dispa-SET has been applied in Africa with soft linking to the LISFLOOD model to examine water‑energy nexus problems in the context of a changing climate.

### EMLab-Generation

EMLab-Generation is an agent-based model covering two interconnected electricity markets – be they two adjoining countries or two groups of countries. The software is being developed at the Energy Modelling Lab, Delft University of Technology, Delft, the Netherlands. A factsheet is available. And software documentation is available. EMLab-Generation is written in Java.
EMLab-Generation simulates the actions of power companies investing in generation capacity and uses this to explore the long-term effects of various energy and climate protection policies. These policies may target renewable generation, CO$_2$ emissions, security of supply, and/or energy affordability. The power companies are the main agents: they bid into power markets and they invest based on the net present value (NPV) of prospective power plant projects. They can adopt a variety of technologies, using scenarios from the 2011 IEA World Energy Outlook. The agent-based methodology enables different sets of assumptions to be tested, such as the heterogeneity of actors, the consequences of imperfect expectations, and the behavior of investors outside of ideal conditions.
EMLab-Generation offers a new way of modeling the effects of public policy on electricity markets. It can provide insights into actor and system behaviors over time – including such things as investment cycles, abatement cycles, delayed responses, and the effects of uncertainty and risk on investment decisions.
A 2014 study using EMLab-Generation investigates the effects of introducing floor and ceiling prices for CO$_2$ under the EU ETS. And in particular, their influence on the dynamic investment pathway of two interlinked electricity markets (loosely Great Britain and Central Western Europe). The study finds a common, moderate CO$_2$ auction reserve price results in a more continuous decarbonisation pathway and reduces CO$_2$ price volatility. Adding a ceiling price can shield consumers from extreme price shocks. Such price restrictions should not lead to an overshoot of emissions targets in the long-run.

### EMMA

EMMA is the European Electricity Market Model. It is a techno-economic model covering the integrated Northwestern European power system. EMMA is being developed by the energy economics consultancy Neon Neue Energieökonomik, Berlin, Germany. The source code and datasets can be downloaded from the project website. A manual is available. EMMA is written in GAMS and uses the CPLEX commercial solver.
EMMA models electricity dispatch and investment, minimizing the total cost with respect to investment, generation, and trades between market areas. In economic terms, EMMA classifies as a partial equilibrium model of the wholesale electricity market with a focus on the supply-side. EMMA identifies short-term or long-term optima (or equilibria) and estimates the corresponding capacity mix, hourly prices, dispatch, and cross-border trading. Technically, EMMA is a pure linear program (no integer variables) with about two million non-zero variables. As of 2016, the model covers Belgium, France, Germany, the Netherlands, and Poland and supports conventional generation, renewable generation, and cogeneration.
EMMA has been used to study the economic effects of the increasing penetration of variable renewable energy (VRE), specifically solar power and wind power, in the Northwestern European power system. A 2013 study finds that increasing VRE shares will depress prices and, as a consequence, the competitive large-scale deployment of renewable generation will be more difficult to accomplish than many anticipate. A 2015 study estimates the welfare-optimal market share for wind and solar power. For wind, this is 20%, three-fold more than at present.
An independent 2015 study reviews the EMMA model and comments on the high assumed specific costs for renewable investments.$^{:6}$

### GENESYS

GENESYS stands for Genetic Optimisation of a European Energy Supply System. The software is being developed jointly by the Institute of Power Systems and Power Economics (IAEW) and the Institute for Power Electronics and Electrical Drives (ISEA), both of RWTH Aachen University, Aachen, Germany. The project maintains a website where potential users can request access to the codebase and the dataset for the 2050 base scenario only. Detailed descriptions of the software are available. GENESYS is written in C++ and uses Boost libraries, the MySQL relational database, the Qt 4 application framework, and optionally the CPLEX solver.
The GENESYS simulation tool is designed to optimize a future EUMENA (Europe, Middle East, and North Africa) power system and assumes a high share of renewable generation. It is able to find an economically optimal distribution of generator, storage, and transmission capacities within a 21 region EUMENA. It allows for the optimization of this energy system in combination with an evolutionary method. The optimization is based on a covariance matrix adaptation evolution strategy (CMA-ES), while the operation is simulated as a hierarchical set-up of system elements which balance the load between the various regions at minimum cost using the network simplex algorithm. GENESYS ships with a set of input time series and a set of parameters for the year 2050, which the user can modify.
A future EUMENA energy supply system with a high share of renewable energy sources (RES) will need a strongly interconnected energy transport grid and significant energy storage capacities. GENESYS was used to dimension the storage and transmission between the 21 different regions. Under the assumption of 100% self-supply, about 2500 GW of RES in total and a storage capacity of about 240000 GWh are needed, corresponding to 6% of the annual energy demand, and a HVDC transmission grid of 375000 GW·km. The combined cost estimate for generation, storage, and transmission, excluding distribution, is 6.87 ¢/kWh.
A 2016 study looked at the relationship between storage and transmission capacity under high shares of renewable energy sources (RES) in an EUMENA power system. It found that, up to a certain extent, transmission capacity and storage capacity can substitute for each other. For a transition to a fully renewable energy system by 2050, major structural changes are required. The results indicate the optimal allocation of photovoltaics and wind power, the resulting demand for storage capacities of different technologies (battery, pumped hydro, and hydrogen storage) and the capacity of the transmission grid.

### NEMO

NEMO, the National Electricity Market Optimiser, is a chronological dispatch model for testing and optimizing different portfolios of conventional and renewable electricity generation technologies. It applies solely to the Australian National Electricity Market (NEM), which, despite its name, is limited to east and south Australia. NEMO has been in development at the Centre for Energy and Environmental Markets (CEEM), University of New South Wales (UNSW), Sydney, Australia since 2011. The project maintains a small website and runs an email list. NEMO is written in Python. NEMO itself is described in two publications.$^{:sec2}$$^{:sec2}$ The data sources are also noted.$^{:sec3}$ Optimizations are carried out using a single-objective evaluation function, with penalties. The solution space of generator capacities is searched using the CMA-ES (covariance matrix adaptation evolution strategy) algorithm. The timestep is arbitrary but one hour is normally employed.
NEMO has been used to explore generation options for the year 2030 under a variety of renewable energy (RE) and abated fossil fuel technology scenarios. A 2012 study investigates the feasibility of a fully renewable system using concentrated solar power (CSP) with thermal storage, windfarms, photovoltaics, existing hydroelectricity, and biofuelled gas turbines. A number of potential systems, which also meet NEM reliability criteria, are identified. The principal challenge is servicing peak demand on winter evenings following overcast days and periods of low wind. A 2014 study investigates three scenarios using coal-fired thermal generation with carbon capture and storage (CCS) and gas-fired gas turbines with and without capture. These scenarios are compared to the 2012 analysis using fully renewable generation. The study finds that "only under a few, and seemingly unlikely, combinations of costs can any of the fossil fuel scenarios compete economically with 100% renewable electricity in a carbon constrained world".$^{:196}$ A 2016 study evaluates the incremental costs of increasing renewable energy shares under a range of greenhouse gas caps and carbon prices. The study finds that incremental costs increase linearly from zero to 80% RE and then escalate moderately. The study concludes that this cost escalation is not a sufficient reason to avoid renewables targets of 100%.

### OnSSET

OnSSET is the OpeN Source Spatial Electrification Toolkit. OnSSET is being developed by the division of Energy Systems, KTH Royal Institute of Technology, Stockholm, Sweden. The software is used to examine areas not served by grid-based electricity and identify the technology options and investment requirements that will provide least-cost access to electricity services. OnSSET is designed to support the United Nations' SDG 7: the provision of affordable, reliable, sustainable, and modern energy for all. The toolkit is known as OnSSET and was released on 26 November 2016. OnSSET does not ship with data, but suitable datasets are available from energydata.info. The project maintains a website and runs a mailing list.
OnSSET can estimate, analyze, and visualize the most cost-effective electrification access options, be they conventional grid, mini-grid, or stand-alone. The toolkit supports a range of conventional and renewable energy technologies, including photovoltaics, wind turbines, and small hydro generation. As of 2017, bioenergy and hybrid technologies, such as wind-diesel, are being added.
OnSSET utilizes energy and geographic information, the latter may include settlement size and location, existing and planned transmission and generation infrastructure, economic activity, renewable energy resources, roading networks, and nighttime lighting needs. The GIS information can be supported using the proprietary ArcGIS package or an open source equivalent such as GRASS or QGIS. OnSSET has been applied to microgrids using a three‑tier analysis starting with settlement archetypes.
OnSSET has been used for case studies in Afghanistan, Bolivia, Cameroon, Ethiopia, Malawi, Nigeria, and Tanzania. OnSSET has also been applied in India, Kenya, and Zimbabwe. In addition, continental studies have been carried out for Sub-Saharan Africa and Latin America. A 4‑way GIS‑based study set in Nigeria reported that OnSSET offered the best set of capabilities.
OnSSET results have contributed to the IEA World Energy Outlook reports for 2014  and 2015, the World Bank Global Tracking Framework report in 2015, and the IEA Africa Energy Outlook report in 2019. OnSSET also forms part of the nascent GEP platform.

### pandapower

pandapower is a power system analysis and optimization program being jointly developed by the Energy Management and Power System Operation research group, University of Kassel and the Department for Distribution System Operation, Fraunhofer Institute for Energy Economics and Energy System Technology (IEE), both of Kassel, Germany. The codebase is hosted on GitHub and is also available as a package. The project maintains a website, an emailing list, and online documentation. pandapower is written in Python. It uses the pandas library for data manipulation and analysis and the PYPOWER library  to solve for power flow. Unlike some open source power system tools, pandapower does not depend on proprietary platforms like MATLAB.
pandapower supports the automated analysis and optimization of distribution and transmission networks. This allows a large of number of scenarios to be explored, based on different future grid configurations and technologies. pandapower offers a collection of power system elements, including: lines, 2-winding transformers, 3-winding transformers, and ward-equivalents. It also contains a switch model that allows the modeling of ideal bus-bus switches as well as bus-line/bus-trafo switches. The software supports topological searching. The network itself can be plotted, with or without geographical information, using the matplotlib and plotly libraries.
A 2016 publication evaluates the usefulness of the software by undertaking several case studies with major distribution system operators (DSO). These studies examine the integration of increasing levels of photovoltaics into existing distribution grids. The study concludes that being able to test a large number of detailed scenarios is essential for robust grid planning. Notwithstanding, issues of data availability and problem dimensionality will continue to present challenges.
A 2018 paper describes the package and its design and provides an example case study. The article explains how users work with an element-based model (EBM) which is converted internally to a bus-branch model (BBM) for computation. The package supports power system simulation, optimal power flow calculations (cost information is required), state estimation (should the system characterization lacks fidelity), and graph-based network analysis. The case study shows how a few tens of lines of scripting can interface with pandapower to advance the design of a system subject to diverse operating requirements. The associated code is hosted on GitHub as jupyter notebooks.
As of 2018, BNetzA, the German network regulator, is using pandapower for automated grid analysis. Energy research institutes in Germany are also following the development of pandapower.$^{:90}$

### PowerMatcher

The PowerMatcher software implements a smart grid coordination mechanism which balances distributed energy resources (DER) and flexible loads through autonomous bidding. The project is managed by the Flexiblepower Alliance Network (FAN) in Amsterdam, the Netherlands. The project maintains a website and the source code is hosted on GitHub. As of June 2016, existing datasets are not available. PowerMatcher is written in Java.
Each device in the smart grid system – whether a washing machine, a wind generator, or an industrial turbine – expresses its willingness to consume or produce electricity in the form of a bid. These bids are then collected and used to determine an equilibrium price. The PowerMatcher software thereby allows high shares of renewable energy to be integrated into existing electricity systems and should also avoid any local overloading in possibly aging distribution networks.

### Power TAC

Power TAC stands for Power Trading Agent Competition. Power TAC is an agent-based model simulating the performance of retail markets in an increasingly prosumer- and renewable-energy-influenced electricity landscape. The first version of the Power TAC project started in 2009, when the open source platform was released as an open-source multi-agent competitive gaming platform to simulate electricity retail market performance in smart grid scenarios. The inaugural annual tournament was held in Valencia, Spain in 2012.
Autonomous machine-learning trading agents, or 'brokers', compete directly with each other as profit-maximizing aggregators between wholesale markets and retail customers. Customer models represent households, small and large businesses, multi-residential buildings, wind parks, solar panel owners, electric vehicle owners, cold-storage warehouses, etc. Brokers aim at making profit through offering electricity tariffs to customers and trading electricity in the wholesale market, while carefully balancing supply and demand.
The competition is founded and orchestrated by Professors Wolfgang Ketter and John Collins and the platform software is developed collaboratively by researchers at the Rotterdam School of Management, Erasmus University Centre for Future Energy Business, the Institute for Energy Economics at the University of Cologne, and the Computer Science department at the University of Minnesota. The platform uses a variety of real-world data about weather, market prices and aggregate demand, and customer behavior. Broker agents are developed by research teams around the world and entered in annual tournaments. Data from those tournaments are publicly available and can be used to assess agent performance and interactions. The platform exploits competitive benchmarking to facilitate research into, among other topics, tariff design in retail electricity markets, bidding strategies in wholesale electricity markets, performance of markets as penetration of sustainable energy resources or electric vehicles is ramped up or down, effectiveness of machine learning approaches, and alternative policy approaches to market regulation. The software has contributed to research topics ranging from the use of electric vehicle fleets as virtual power plants to how an electricity customer decision support system (DSS) can be used to design effective demand response programs using methods such as dynamic pricing.

### renpass

renpass is an acronym for Renewable Energy Pathways Simulation System. renpass is a simulation electricity model with high regional and temporal resolution, designed to capture existing systems and future systems with up to 100% renewable generation. The software is being developed by the Centre for Sustainable Energy Systems (CSES or ZNES), University of Flensburg, Germany. The project runs a website, from where the codebase can be download. renpass is written in R and links to a MySQL database. A PDF manual is available. renpass is also described in a PhD thesis. As of 2015, renpass is being extended as renpassG!S, based on oemof.
renpass is an electricity dispatch model which minimizes system costs for each time step (optimization) within the limits of a given infrastructure (simulation). Time steps are optionally 15 minutes or one hour. The method assumes perfect foresight. renpass supports the electricity systems found in Austria, Belgium, the Czech Republic, Denmark, Estonia, France, Finland, Germany, Latvia, Lithuania, Luxembourg, the Netherlands, Norway, Poland, Sweden, and Switzerland.
The optimization problem for each time step is to minimize the electricity supply cost using the existing power plant fleet for all regions. After this regional dispatch, the exchange between the regions is carried out and is restricted by the grid capacity. This latter problem is solved with a heuristic procedure rather than calculated deterministically. The input is the merit order, the marginal power plant, the excess energy (renewable energy that could be curtailed), and the excess demand (the demand that cannot be supplied) for each region. The exchange algorithm seeks the least cost for all regions, thus the target function is to minimize the total costs of all regions, given the existing grid infrastructure, storage, and generating capacities. The total cost is defined as the residual load multiplied by the price in each region, summed over all regions.
A 2012 study uses renpass to examine the feasibility of a 100% renewable electricity system for the Baltic Sea region (Denmark, Estonia, Finland, Germany, Latvia, Lithuania, Poland, and Sweden) in the year 2050. The base scenario presumes conservative renewable potentials and grid enhancements, a 20% drop in demand, a moderate uptake of storage options, and the deployment of biomass for flexible generation. The study finds that a 100% renewable electricity system is possible, albeit with occasional imports from abutting countries, and that biomass plays a key role in system stability. The costs for this transition are estimated at 50 €/MWh. A 2014 study uses renpass to model Germany and its neighbors. A 2014 thesis uses renpass to examine the benefits of both a new cable between Germany and Norway and new pumped storage capacity in Norway, given 100% renewable electricity systems in both countries. Another 2014 study uses renpass to examine the German Energiewende, the transition to a sustainable energy system for Germany. The study also argues that the public trust needed to underpin such a transition can only be built through the use of transparent open source energy models.

### SciGRID

SciGRID, short for Scientific Grid, is an open source model of the German and European electricity transmission networks. The research project is managed by DLR Institute of Networked Energy Systems located in Oldenburg, Germany. The project maintains a website and an email newsletter. SciGRID is written in Python and uses a PostgreSQL database. The first release (v0.1) was made on 15 June 2015.
SciGRID aims to rectify the lack of open research data on the structure of electricity transmission networks within Europe. This lack of data frustrates attempts to build, characterise, and compare high resolution energy system models. SciGRID utilizes transmission network data available from the OpenStreetMap project, available under the Open Database License (ODbL), to automatically author transmission connections. SciGRID will not use data from closed sources. SciGRID can also mathematically decompose a given network into a simpler representation for use in energy models.

### SIREN

SIREN stands for SEN Integrated Renewable Energy Network Toolkit. The project is run by Sustainable Energy Now, an NGO based in Perth, Australia. The project maintains a website. SIREN runs on Windows and the source code is hosted on SourceForge. The software is written in Python and uses the SAM model (System Advisor Model) from the US National Renewable Energy Laboratory to perform energy calculations. SIREN uses hourly datasets to model a given geographic region. Users can use the software to explore the location and scale of renewable energy sources to meet a specified electricity demand. SIREN utilizes a number of open or publicly available data sources: maps can be created from OpenStreetMap tiles and weather datasets can be created using NASA MERRA-2 satellite data.
A 2016 study using SIREN to analyze Western Australia's South-West Interconnected System (SWIS) finds that it can transition to 85% renewable energy (RE) for the same cost as new coal and gas. In addition, 11.1 million tonnes of CO$_2$eq emissions would be avoided. The modeling assumes a carbon price of AUD $30/tCO$_2$. Further scenarios examine the goal of 100% renewable generation.

### SWITCH

SWITCH is a loose acronym for solar, wind, conventional and hydroelectric generation, and transmission. SWITCH is an optimal planning model for power systems with large shares of renewable energy. SWITCH is being developed by the Department of Electrical Engineering, University of Hawaiʻi at Mānoa, Hawaii, USA. The project runs a small website and hosts its codebase and datasets on GitHub. SWITCH is written in Pyomo, an optimization components library programmed in Python. It can use either the open source GLPK solver or the commercial CPLEX solver.
SWITCH is a power system model, focused on renewables integration. It can identify which generator and transmission projects to build in order to satisfy electricity demand at the lowest cost over a several-year period while also reducing CO$_2$ emissions. SWITCH utilizes multi-stage stochastic linear optimization with the objective of minimizing the present value of the cost of power plants, transmission capacity, fuel usage, and an arbitrary per-tonne CO$_2$ charge (to represent either a carbon tax or a certificate price), over the course of a multi-year investment period. It has two major sets of decision variables. First, at the start of each investment period, SWITCH selects how much generation capacity to build in each of several geographic load zones, how much power transfer capability to add between these zones, and whether to operate existing generation capacity during the investment period or to temporarily mothball it to avoid fixed operation and maintenance costs. Second, for a set of sample days within each investment period, SWITCH makes hourly decisions about how much power to generate from each dispatchable power plant, store at each pumped hydro facility, or transfer along each transmission interconnector. The system must also ensure enough generation and transmission capacity to provide a planning reserve margin of 15% above the load forecasts. For each sampled hour, SWITCH uses electricity demand and renewable power production based on actual measurements, so that the weather-driven correlations between these elements remain intact.
Following the optimization phase, SWITCH is used in a second phase to test the proposed investment plan against a more complete set of weather conditions and to add backstop generation capacity so that the planning reserve margin is always met. Finally, in a third phase, the costs are calculated by freezing the investment plan and operating the proposed power system over a full set of weather conditions.
A 2012 paper uses California from 2012 to 2027 as a case study for SWITCH. The study finds that there is no ceiling on the amount of wind and solar power that could be used and that these resources could potentially reduce emissions by 90% or more (relative to 1990 levels) without reducing reliability or severely raising costs. Furthermore, policies that encourage electricity customers to shift demand to times when renewable power is most abundant (for example, though the well-timed charging of electric vehicles) could achieve radical emission reductions at moderate cost.
SWITCH was used more recently to underpin consensus-based power system planning in Hawaii. The model is also being applied in Chile, Mexico, and elsewhere.
Major version 2.0 was released in late‑2018. An investigation that year favorably compared SWITCH with the proprietary General Electric MAPS model using Hawaii as a case study.

### URBS

URBS, Latin for city, is a linear programming model for exploring capacity expansion and unit commitment problems and is particularly suited to distributed energy systems (DES). It is being developed by the Institute for Renewable and Sustainable Energy Systems, Technical University of Munich, Germany. The codebase is hosted on GitHub. URBS is written in Python and uses the Pyomo optimization packages.
URBS classes as an energy modeling framework and attempts to minimize the total discounted cost of the system. A particular model selects from a set of technologies to meet a predetermined electricity demand. It uses a time resolution of one hour and the spatial resolution is model-defined. The decision variables are the capacities for the production, storage, and transport of electricity and the time scheduling for their operation.$^{:11–14}$
The software has been used to explore cost-optimal extensions to the European transmission grid using projected wind and solar capacities for 2020. A 2012 study, using high spatial and technological resolutions, found variable renewable energy (VRE) additions cause lower revenues for conventional power plants and that grid extensions redistribute and alleviate this effect. The software has also been used to explore energy systems spanning Europe, the Middle East, and North Africa (EUMENA) and Indonesia, Malaysia, and Singapore.

## Energy system models

Open energy-system models capture some or all of the energy commodities found in an energy system. Typically models of the electricity sector are always included. Some models add the heat sector, which can be important for countries with significant district heating. Other models add gas networks. With the advent of emobility, other models still include aspects of the transport sector. Indeed, coupling these various sectors using power-to-X technologies is an emerging area of research.
Open energy-system models (bottom-up, with support for heat, gas, and such, in addition to electricity) :
| Project | Host | License | Access | Coding | Documentation | Scope/type |
| AnyMOD.jl | Technische Universität Berlin | MIT | GitHub | Julia | website | system planning framework |
| Backbone | VTT | LGPLv3 | GitLab | GAMS | website | dispatch, investment, all sectors, LP/MILP |
| Balmorel | Denmark | ISC | registration | GAMS | manual | energy markets |
| Calliope | ETH Zurich | Apache 2.0 | download | Python | manual, website, list | dispatch and investment |
| DESSTinEE | Imperial College London | CC BY-SA 3.0 | download | Excel/VBA | website | simulation |
| Energy Transition Model | Quintel Intelligence | MIT | GitHub | Ruby (on Rails) | website | web-based |
| EnergyPATHWAYS | Evolved Energy Research | MIT | GitHub | Python | website | mostly simulation |
| ETEM | ORDECSYS, Switzerland | Eclipse 1.0 | registration | MathProg | manual | municipal |
| ficus | Technical University of Munich | GPLv3 | GitHub | Python | manual | local electricity and heat |
| GENeSYS-MOD | Technische Universität Berlin | Apache-2.0 | GitHub | GAMS Julia | GitHub | multi‑commodity optimization |
| GenX | MIT and Princeton University | GPLv2 | GitHub | Julia | website | multi‑commodity sector investment planning |
| oemof | oemof community supported by Reiner Lemoine Institute University of Flensburg Flensburg University of Applied Sciences | MIT | GitHub | Python | website | dispatch, investment, all sectors, LP/MILP |
| OSeMOSYS | OSeMOSYS community | Apache 2.0 | GitHub | GAMS MathProg Python | website, forum | planning at all scales |
| PyPSA | Goethe University Frankfurt | MIT | GitHub | Python | website | electric power systems with sector coupling |
| REMix | Deutsches Zentrum für Luft- und Raumfahrt e.V. | BSD 3-Clause | GitLab | Python/GAMS | website | dispatch, investment, all sectors, LP/MILP |
| TEMOA | North Carolina State University | GPLv2+ | GitHub | Python | website, forum | system planning |
| Access refers to the methods offered for accessing the codebase. |||||||

### AnyMOD.jl

AnyMOD.jl is a framework for planning macro‑energy systems at a high level of spatio-temporal detail. The framework covers the expansion and operation of short-term and seasonal storage, fossil and renewable generation, transmission infrastructure, and sector coupling technologies. It can be used to plan long‑term pathways under perfect foresight.
AnyMOD.jl is implemented in Julia and relies on the JuMP library for optimization and DataFrames.jl for data management. Models are formulated as linear optimization problems and can be solved with open-source libraries like HiGHS or commercial solvers like CPLEX. To increase accessibility and enable version-controlled development, specific models are fully defined using CSV files.
Compared to similar tools, AnyMOD.jl puts an emphasis on innovative methods to achieve high detail and capture intermittent renewables, while maintaining a comprehensive scope in terms of regions and sectors. These methods include varying the spatio-temporal resolution by energy carrier within the same model and a scaling algorithm to improve the properties of the underlying optimization problem. Methods from stochastic programming are now being implemented to better address the uncertainties associated with renewable generation.
As of 2022, most studies deploying the tool have focused on the German energy system in a European context, for instance investigating the trade‑offs between centralized and decentralized designs, the role of grid planning, and the potential of sufficiency measures. In addition, AnyMOD.jl has been used to support policy reports from the German Institute for Economic Research (DIW) on the European Green Deal and the coordination of the German Energiewende.

### Backbone

Backbone is an energy system modeling framework that allows for a high level of detail and adaptability. It has been used to study city-level energy systems as well as multi-country energy systems. It was originally developed during 2015–2018 in an Academy of Finland‑funded project 'VaGe' by the Design and Operation of Energy Systems team at VTT. It has been further developed in a collaboration which includes VTT, UCD, and RUB.
The framework is agnostic about what is modeled, but still has capabilities to represent a large range of energy system characteristics — such as generation and transfer, reserves, unit commitment, heat diffusion in buildings, storages, multiple emissions and P2X, etc. It offers linear and mixed integer constraints for capturing things like unit start-ups and investment decisions. It allows the modeler to change the temporal resolution of the model between time steps. — and this enables, for example, to use a coarser time resolution further ahead in the time horizon of the model. The model can be solved as an investment model (single or multi-period, myopic, or full foresight) or as a rolling production cost unit commitment model to simulate operations.
Backbone's own wiki page has a tutorial for new users, example models, and user created mods. Open datasets include Northern European model for electricity, heat, and hydrogen  and district heating and cooling model for the Finnish capital region.

### Balmorel

Balmorel is a market-based energy system model from Denmark. Development was originally financed by the Danish Energy Research Program in 2001.$^{:23}$ The codebase was made public in March 2001. The Balmorel project maintains an extensive website, from where the codebase and datasets can be download as a zip file. Users are encouraged to register. Documentation is available from the same site. Balmorel is written in GAMS.
The original aim of the Balmorel project was to construct a partial equilibrium model of the electricity and CHP sectors in the Baltic Sea region, for the purposes of policy analysis. These ambitions and limitations have long since been superseded and Balmorel is no longer tied to its original geography and policy questions. Balmorel classes as a dispatch and investment model and uses a time resolution of one hour. It models electricity and heat supply and demand, and supports the intertemporal storage of both. Balmorel is structured as a pure linear program (no integer variables).
As of 2016, Balmorel has been the subject of some 22 publications. A 2008 study uses Balmorel to explore the Nordic energy system in 2050. The focus is on renewable energy supply and the deployment of hydrogen as the main transport fuel. Given certain assumptions about the future price of oil and carbon and the uptake of hydrogen, the model shows that it is economically optimal to cover, using renewable energy, more than 95% of the primary energy consumption for electricity and district heat and 65% of the transport. A 2010 study uses Balmorel to examine the integration of plug-in hybrid vehicles (PHEV) into a system comprising one quarter wind power and three quarters thermal generation. The study shows that PHEVs can reduce the CO$_2$ emissions from the power system if actively integrated, whereas a hands-off approach – letting people charge their cars at will – is likely to result in an increase in emissions. A 2013 study uses Balmorel to examine cost-optimized wind power investments in the Nordic-Germany region. The study investigates the best placement of wind farms, taking into account wind conditions, distance to load, and the generation and transmission infrastructure already in place.

### Calliope

Calliope is an energy system modeling framework, with a focus on flexibility, high spatial and temporal resolution, and the ability to execute different runs using the same base-case dataset. The project is being developed at the Department of Environmental Systems Science, ETH Zurich, Zürich, Switzerland. The project maintains a website, hosts the codebase at GitHub, operates an issues tracker, and runs two email lists. Calliope is written in Python and uses the Pyomo library. It can link to the open source GLPK solver and the commercial CPLEX solver. PDF documentation is available. And a two‑page software review is available.
A Calliope model consists of a collection of structured text files, in YAML and CSV formats, that define the technologies, locations, and resource potentials. Calliope takes these files, constructs a pure linear optimization (no integer variables) problem, solves it, and reports the results in the form of pandas data structures for analysis. The framework contains five abstract base technologies – supply, demand, conversion, storage, transmission – from which new concrete technologies can be derived. The design of Calliope enforces the clear separation of framework (code) and model (data).
A 2015 study uses Calliope to compare the future roles of nuclear power and CSP in South Africa. It finds CSP could be competitive with nuclear by 2030 for baseload and more competitive when producing above baseload. CSP also offers less investment risk, less environmental risk, and other co-benefits. A second 2015 study compares a large number of cost-optimal future power systems for Great Britain. Three generation technologies are tested: renewables, nuclear power, and fossil fuels with and without carbon capture and storage (CCS). The scenarios are assessed on financial cost, emissions reductions, and energy security. Up to 60% of variable renewable capacity is possible with little increase in cost, while higher shares require large-scale storage, imports, and/or dispatchable renewables such as tidal range.
Calliope co‑developer Stefan Pfenninger discusses the role that energy system models can play in supporting real‑world decisions at a seminar held in mid‑2021. One study cited investigates the consequences of pursuing energy self‑sufficiency by duly adding increasingly restrictive internal constraints. Another at near optimal solutions for Italy. A 2023 video describes recent developments, many of which are designed to benefit users.

### DESSTinEE

DESSTinEE stands for Demand for Energy Services, Supply and Transmission in EuropE. DESSTinEE is a model of the European energy system in 2050 with a focus on the electricity system. DESSTinEE is being developed primarily at the Imperial College Business School, Imperial College London (ICL), London, United Kingdom. The software can be downloaded from the project website. DESSTinEE is written in Excel/VBA and comprises a set of standalone spreadsheets. A flier is available.
DESSTinEE is designed to investigate assumptions about the technical requirements for energy transport – particularly electricity – and the scale of the economic challenge to develop the necessary infrastructure. Forty countries are considered in and around Europe and ten forms of primary and secondary energy are supported. The model uses a predictive simulation technique, rather than solving for either partial or general equilibrium. The model projects annual energy demands for each country to 2050, synthesizes hourly profiles for electricity demand in 2010 and 2050, and simulates the least-cost generation and transmission of electricity around the region.
A 2016 study using DESSTinEE (and a second model eLOAD) examines the evolution of electricity load curves in Germany and Britain from the present until 2050. In 2050, peak loads and ramp rates rise 20–60% and system utilization falls 15–20%, in part due to the substantial uptake of heat pumps and electric vehicles. These are significant changes.

### Energy Transition Model

The Energy Transition Model (ETM) is an interactive web-based model using a holistic description of a country's energy system. It is being developed by Quintel Intelligence, Amsterdam, the Netherlands. The project maintains a project website, an interactive website, and a GitHub repository. ETM is written in Ruby (on Rails) and displays in a web browser. ETM consists of several software components as described in the documentation.
ETM is fully interactive. After selecting a region (France, Germany, the Netherlands, Poland, Spain, United Kingdom, EU-27, or Brazil) and a year (2020, 2030, 2040, or 2050), the user can set 300 sliders (or enter numerical values) to explore the following:
* targets: set goals for the scenario and see if they can be achieved, targets comprise: CO$_2$ reductions, renewables shares, total cost, and caps on imports
* demands: expand or restrict energy demand in the future
* costs: project the future costs of energy carriers and energy technologies, these costs do not include taxes or subsidies
* supplies: select which technologies can be used to produce heat or electricity
ETM is based on an energy graph (digraph) where nodes (vertices) can convert from one type of energy to another, possibly with losses. The connections (directed edges) are the energy flows and are characterized by volume (in megajoules) and carrier type (such as coal, electricity, usable-heat, and so forth). Given a demand and other choices, ETM calculates the primary energy use, the total cost, and the resulting CO$_2$ emissions. The model is demand driven, meaning that the digraph is traversed from useful demand (such as space heating, hot water usage, and car-kilometers) to primary demand (the extraction of gas, the import of coal, and so forth).

### EnergyPATHWAYS

EnergyPATHWAYS is a bottom-up energy sector model used to explore the near-term implications of long-term deep decarbonization. The lead developer is energy and climate protection consultancy, Evolved Energy Research, San Francisco, USA. The code is hosted on GitHub. EnergyPATHWAYS is written in Python and links to the open source Cbc solver. Alternatively, the GLPK, or CPLEX solvers can be employed. EnergyPATHWAYS utilizes the PostgreSQL object-relational database management system (ORDBMS) to manage its data.
EnergyPATHWAYS is a comprehensive accounting framework used to construct economy-wide energy infrastructure scenarios. While portions of the model do use linear programming techniques, for instance, for electricity dispatch, the EnergyPATHWAYS model is not fundamentally an optimization model and embeds few decision dynamics. EnergyPATHWAYS offers detailed energy, cost, and emissions accounting for the energy flows from primary supply to final demand. The energy system representation is flexible, allowing for differing levels of detail and the nesting of cities, states, and countries. The model uses hourly least-cost electricity dispatch and supports power-to-gas, short-duration energy storage, long-duration energy storage, and demand response. Scenarios typically run to 2050.
A predecessor of the EnergyPATHWAYS software, named simply PATHWAYS, has been used to construct policy models. The California PATHWAYS model was used to inform Californian state climate targets for 2030. And the US PATHWAYS model contributed to the United Nations Deep Decarbonization Pathways Project (DDPP) assessments for the United States. As of 2016, the DDPP plans to employ EnergyPATHWAYS for future analysis.

### ETEM

ETEM stands for Energy Technology Environment Model. The ETEM model offers a similar structure to OSeMOSYS but is aimed at urban planning. The software is being developed by the ORDECSYS company, Chêne-Bougeries, Switzerland, supported with European Union and national research grants. The project has two websites. The software can be downloaded from first of these websites (but as of July 2016, this looks out of date). A manual is available with the software. ETEM is written in MathProg. Presentations describing ETEM are available.
ETEM is a bottom-up model that identifies the optimal energy and technology options for a regional or city. The model finds an energy policy with minimal cost, while investing in new equipment (new technologies), developing production capacity (installed technologies), and/or proposing the feasible import/export of primary energy. ETEM typically casts forward 50 years, in two or five year steps, with time slices of four seasons using typically individual days or finer. The spatial resolution can be highly detailed. Electricity and heat are both supported, as are district heating networks, household energy systems, and grid storage, including the use of plug-in hybrid electric vehicles (PHEV). ETEM-SG, a development, supports demand response, an option which would be enabled by the development of smart grids.
The ETEM model has been applied to Luxembourg, the Geneva and Basel-Bern-Zurich cantons in Switzerland, and the Grenoble metropolitan and Midi-Pyrénées region in France. A 2005 study uses ETEM to study climate protection in the Swiss housing sector. The ETEM model was coupled with the GEMINI-E3 world computable general equilibrium model (CGEM) to complete the analysis. A 2012 study examines the design of smart grids. As distribution systems become more intelligent, so must the models needed to analysis them. ETEM is used to assess the potential of smart grid technologies using a case study, roughly calibrated on the Geneva canton, under three scenarios. These scenarios apply different constraints on CO$_2$ emissions and electricity imports. A stochastic approach is used to deal with the uncertainty in future electricity prices and the uptake of electric vehicles.

### ficus

ficus is a mixed integer optimization model for local energy systems. It is being developed at the Institute for Energy Economy and Application Technology, Technical University of Munich, Munich, Germany. The project maintains a website. The project is hosted on GitHub. ficus is written in Python and uses the Pyomo library. The user can choose between the open source GLPK solver or the commercial CPLEX solver.
Based on URBS, ficus was originally developed for optimizing the energy systems of factories and has now been extended to include local energy systems. ficus supports multiple energy commodities – goods that can be imported or exported, generated, stored, or consumed – including electricity and heat. It supports multiple-input and multiple-output energy conversion technologies with load-dependent efficiencies. The objective of the model is to supply the given demand at minimal cost. ficus uses exogenous cost time series for imported commodities as well as peak demand charges with a configurable timebase for each commodity in use.

### GENeSYS-MOD

The Global Energy System Model (GENeSYS‑MOD) is a linear cost-minimizing optimization model being developed at Technische Universität Berlin, Germany. The project was originally based on the OSeMOSYS framework and the first version was released in 2017 using GAMS. The codebase was later translated into Julia. Both versions and a representative dataset are available on GitHub.
GENeSYS‑MOD couples the demand sectors covering electricity, buildings, industry, and transport and finds the cost-optimal investment into conventional and renewable energy generation, storage, and infrastructure. The research focus is on long-term system development and pathway analysis.
The model was first used to analyze decarbonization scenarios at the global level, broken down into ten regions. However, the framework is highly flexible, allowing for calculations at various levels of detail, from individual households to global aggregations, depending on the desired research question and availability of input data.
A 2019 study examined the low‑carbon transition of the European energy system and specifically the problem of stranded assets under a range of scenarios. It found that up to €200 billion in fossil-fueled capacities could be stranded by 2035 unless stronger policy signals are able to address short‑term planning biases. Another 2019 study evaluates China's energy system transformation, highlighting the need to reduce coal consumption by 60% by 2050 to meet global climate targets. Renewable energies, and in particular photovoltaics and onshore wind, emerge as cost-effective solutions, but overcoming local resistance and increasing stakeholder engagement remain crucial for success. A 2021 study investigates the European Green Deal goal of achieving 100% greenhouse gas reductions by 2050, examining the interplay of technological developments, policy imperatives, and societal attitudes. The study presents four future storylines that highlight the critical contribution of high rates of electrification combined with near‑term technology deployment to achieve the necessarily rapid decarbonization.

### GenX

GenX is multi‑commodity sector capacity expansion model originally developed by researchers in the United States. The framework is written in Julia and deploys the JuMP library for building the underlying optimization problem. GenX through JuMP can utilize various open source (including CBC/CLP) and commercial optimization solvers (including CPLEX). In June 2021, the project launched as an active open source project and test suites are available to assist onboarding.
In parallel, the PowerGenome project is designed to provide GenX with a comprehensive current state dataset of the United States electricity system. That dataset can then be used as a springboard to develop future scenarios.
GenX has been used to explore long-term storage options in systems with high renewables shares, to explore the value of 'firm' low-carbon power generation options, and a variety of other applications. While North America remains a key focus, the software has been applied to problems in India, Italy, and Spain.
GenX was deployed in a 2021 case study with Louisville Gas and Electric and Kentucky Utilities that showed that stakeholder-driven modeling utilizing open‑source tools and public data can contribute productively to utility‑led analysis and planning.
A mid‑2022 study examined the natural gas crisis facing Europe, and particularly Germany, and concluded that there are several feasible paths (labeled "cases") to eliminate all imports of Russian natural gas by October 2022. Ongoing work seeks to examine the effect of extending the operating lives of Germany's three remaining nuclear reactors past 2022 and the effect of strong drought conditions on hydro generation and the system more generally.

### oemof

oemof stands for Open Energy Modelling Framework. The project is managed by the Reiner Lemoine Institute, Berlin, Germany and the Center for Sustainable Energy Systems (CSES or ZNES) at the University of Flensburg and the Flensburg University of Applied Sciences, both Flensburg, Germany. The project runs two websites and a GitHub repository. oemof is written in Python and uses Pyomo and COIN-OR components for optimization. Energy systems can be represented using spreadsheets (CSV) which should simplify data preparation. Version 0.1.0 was released on 1 December 2016.
oemof classes as an energy modeling framework. It consists of a linear or mixed integer optimization problem formulation library (solph), an input data generation library (feedin-data), and other auxiliary libraries. The solph library is used to represent multi-regional and multi-sectoral (electricity, heat, gas, mobility) systems and can optimize for different targets, such as financial cost or CO$_2$ emissions. Furthermore, it is possible to switch between dispatch and investment modes. In terms of scope, oemof can capture the European power system or alternatively it can describe a complex local power and heat sector scheme.
oemof has been applied in sub‑Saharan Africa. A masters project in 2020 compared oemof and OSeMOSYS.

### OSeMOSYS

OSeMOSYS stands for Open Source Energy Modelling System. OSeMOSYS is intended for national and regional policy development and uses an intertemporal optimization framework. The model posits a single socially motivated operator/investor with perfect foresight. The OSeMOSYS project is a community endeavor, supported by the division of Energy Systems, KTH Royal Institute of Technology, Stockholm, Sweden. The project maintains a website providing background. The project also offers several active internet forums on Google Groups. OSeMOSYS was originally written in MathProg, a high-level mathematical programming language. It was subsequently reimplemented in GAMS and Python and all three codebases are now maintained. The project also provides a test model called UTOPIA. A manual is available.
OSeMOSYS provides a framework for the analysis of energy systems over the medium (10–15 years) and long term (50–100 years). OSeMOSYS uses pure linear optimization, with the option of mixed integer programming for the treatment of, for instance, discrete power plant capacity expansions. It covers most energy sectors, including heat, electricity, and transport. OSeMOSYS is driven by exogenously defined energy services demands. These are then met through a set of technologies which draw on a set of resources, both characterized by their potentials and costs. These resources are not limited to energy commodities and may include, for example, water and land-use. This enables OSeMOSYS to be applied in domains other than energy, such as water systems. Technical constraints, economic restrictions, and/or environmental targets may also be imposed to reflect policy considerations. OSeMOSYS is available in extended and compact MathProg formulations, either of which should give identical results. In its extended version, OSeMOSYS comprises a little more than 400 lines of code. OSeMOSYS has been used as a base for constructing reduced models of energy systems.
A key paper describing OSeMOSYS is available. A 2011 study uses OSeMOSYS to investigate the role of household investment decisions. A 2012 study extends OSeMOSYS to capture the salient features of a smart grid. The paper explains how to model variability in generation, flexible demand, and grid storage and how these impact on the stability of the grid. OSeMOSYS has been applied to village systems. A 2015 paper compares the merits of stand-alone, mini-grid, and grid electrification for rural areas in Timor-Leste under differing levels of access. In a 2016 study, OSeMOSYS is modified to take into account realistic consumer behavior. Another 2016 study uses OSeMOSYS to build a local multi-regional energy system model of the Lombardy region in Italy. One of the aims of the exercise was to encourage citizens to participate in the energy planning process. Preliminary results indicate that this was successful and that open modeling is needed to properly include both the technological dynamics and the non-technological issues. A 2017 paper covering Alberta, Canada factors in the risk of overrunning specified emissions targets because of technological uncertainty. Among other results, the paper finds that solar and wind technologies are built out seven and five years earlier respectively when emissions risks are included. Another 2017 paper analyses the electricity system in Cyprus and finds that, after European Union environmental regulations are applied post-2020, a switch from oil-fired to natural gas generation is indicated.
OSeMOSYS has been used to construct wide-area electricity models for Africa, comprising 45 countries and South America, comprising 13 countries. It has also been used to support United Nations' regional climate, land, energy, and water strategies (CLEWS) for the Sava river basin, central Europe, the Syr Darya river basin, eastern Europe,$^{:29}$ and Mauritius. Models have previously been built for the Baltic States, Bolivia, Nicaragua, Sweden, and Tanzania. A 2021 paper summarizes recent applications and also details various versions, forks, and local enhancements related to the OSeMOSYS codebase. An electricity sector analysis for Bangladesh completed in 2021 concluded that solar power is economically competitive under every investigated scenario. A 2022 study looked at the effects of a changing climate on the Ethiopian power system. OSeMOSYS has also been applied variously in Zimbabwe  and Ecuador. Another 2022 study examined water usage, split by withdraws and consumption, for several low carbon energy strategies for Africa. Another study that year examined renewable energy in Egypt. And another the Dominican Republic. The Italian island of Pantelleria was used as a case study to compare battery and hydrogen storage and found that a hybrid system was least cost.
In 2016, work started on a browser-based interface to OSeMOSYS, known as the Model Management Infrastructure (MoManI). Led by the UN Department of Economic and Social Affairs (DESA), MoManI is being trialled in selected countries. The interface can be used to construct models, visualize results, and develop better scenarios. Atlantis is the name of a fictional country case-study for training purposes. A simplified GUI interface named clicSAND and utilizing Excel and Access was released in March 2021. A CLI workflow tool named otoole bundles several dedicated utilities, including one that can convert between OKI frictionless data and GNU MathProg data formats.$^{:3}$ In 2022, the project released starter kits for modeling selected countries in Africa, East Asia, and South America.
The OSeMBE reference model covering western and central Europe was announced on 27 April 2018. The model uses the MathProg implementation of OSeMOSYS but requires a small patch first. The model, funded as part of Horizon 2020 and falling under work package WP7 of the REEEM project, will be used to help stakeholders engage with a range of sustainable energy futures for Europe. The REEEM project runs from early-2016 until mid-2020.
A 2021 paper reviews the OSeMOSYS community, its composition, and its governance activities. And also describes the use of OSeMOSYS in education and for building analytical capacity within developing countries.

#### OSeMOSYS Global project

The OSeMOSYS community launched the OSeMOSYS Global project in 2022 to create a global model and associated workflows. As of late‑2022, OSeMOSYS Global is limited in scope to the electricity sector and the world system provided comprises 164 countries separated by 265 nodes.

### PyPSA

PyPSA stands for Python for Power System Analysis. PyPSA is a free software toolbox for simulating and optimizing electric power systems and allied sectors. It supports conventional generation, variable wind and solar generation, electricity storage, coupling to the natural gas, hydrogen, heat, and transport sectors, and hybrid alternating and direct current networks. Moreover, PyPSA is designed to scale well. The project is managed by the Institute for Automation and Applied Informatics (IAI), Karlsruhe Institute of Technology (KIT), Karlsruhe, Germany, although the project itself exists independently under its own name and accounts. The project maintains a website and runs an email list. PyPSA itself is written in Python and uses the Pyomo library. The source code is hosted on GitHub and is also released periodically as a PyPI package.
The basic functionality of PyPSA is described in a 2018 paper. PyPSA bridges traditional steady-state power flow analysis software and full multi-period energy system models. It can be invoked using either non-linear power flow equations for system simulation or linearized approximations to enable the joint optimization of operations and investment across multiple periods. Generator ramping and multi-period up and down-times can be specified, DSM is supported, but demand remains price inelastic.
A 2018 study examines potential synergies between sector coupling and transmission reinforcement in a future European energy system constrained to reduce carbon emissions by 95%. The PyPSA-Eur-Sec-30 model captures the demand-side management potential of battery electric vehicles (BEV) as well as the role that power-to-gas, long-term thermal energy storage, and related technologies can play. Results indicate that BEVs can smooth the daily variations in solar power while the remaining technologies smooth the synoptic and seasonal variations in both demand and renewable supply. Substantial buildout of the electricity grid is required for a least-cost configuration. More generally, such a system is both feasible and affordable. The underlying datasets are available from Zenodo.
As of January 2018, PyPSA is used by more than a dozen research institutes and companies worldwide.$^{:2}$ Some research groups have independently extended the software, for instance to model integer transmission expansion.
In 2020, the PyPSA‑Eur‑Sec model for Europe was used to analyze several Paris Agreement Compatible Scenarios for Energy Infrastructure  and determined that early action should pay off.
On 9 January 2019, the project released an interactive web-interfaced "toy" model, using the Cbc solver, to allow the public to experiment with different future costs and technologies. The site was relaunched on 5 November 2019 with some internal improvements, a new URL, and faster solver now completing in about 12 s. A newer version now uses the HiGHS solver.
During September 2021, PyPSA developers announced the PyPSA‑Server project to provide a web interface to a simplified version of their PyPSA‑Eur‑Sec sector‑coupled European model. Users need not install software and can define fresh scenarios "by difference" using a forms‑based webpage. Previously run scenarios are stored for future reference. The implementation as of October 2021 is essentially proof‑of‑concept.
In late‑2021, PyPSA‑Eur developers reported their investigation into integrated high-voltage electricity and hydrogen grid expansion options for Europe and the United Kingdom and the impact of the kind of trade‑offs that might stem from limited public acceptance of new infrastructure. Subsequent work added endogenous learning effects and identified steeper technology cost reductions than those anticipated by the European Commission. Work published in 2024 integrated PyPSA‑Eur with the global energy supply chain model TRACE and highlighted the need to coordinate infrastructure policies and import strategies.
A December 2021 study and ongoing work deployed a PyPSA‑PL model to assess policy options for Poland. Edinburgh University researchers published an independent power system model for Britain named PyPSA‑GB in 2024, together with assessments of official net‑zero Future Energy Scenarios (FES) from the UK National Grid.
Several PyPSA maintainers announced a new non‑profit startup in June 2023 to provide consulting services using PyPSA.

#### PyPSA meets Earth initiative

The PyPSA meets Earth initiative arose in October 2022 as a means of gathering together several historically disjoint PyPSA applications. One key strand is the PyPSA‑Africa project (previously PyPSA-meets-Africa), launched some months earlier to provide a single model and dataset spanning the African continent. A July 2022 webinar co‑hosted by CPEEL, Nigeria advanced this agenda. The first research paper, released in 2022, examines various pathways for Africa to be net zero by 2060 — with solar power and battery storage expected to be the predominant technologies.
Another key strand of the initiative is the PyPSA‑Earth project which seeks to create a global energy systems model at high spatial and temporal resolution. The project hopes to encourage large‑scale collaboration by providing software and processes that can capture the global energy system and thus also any subset of it. The codebase currently supports system integration studies that draw together electricity generation, storage, and transmission expansion. And a sector-coupled version of the framework is in development that will also offer a choice between myopic decision‑taking or perfect foresight.

### REMix

REMix stands for "Renewable Energy Mix". It is an open source framework developed by the German Aerospace Center for setting up linear or mixed integer optimization models written in GAMS. A framework is understood as a collection of mutually compatible source codes required for a particular model, which can be combined in a modular manner. In this way, the same modeling concepts, along with the associated source code, can be reutilized to address various content focuses based on a common set of available model features.
REMix is developed for applications in energy system modeling studies. It is typically used to set up energy system optimization models, although potential applications beyond energy research are conceivable. In particular, these energy system optimization models are often characterized as bottom-up models in terms of explicitly modeling different technologies. In addition, these models are resolved on a spatial and a temporal dimension.
In practical terms, the framework allows for modeling competition between technologies that can serve the same purpose, such as power generation, while also providing insights into when and where a specific technology is required. Additionally, it can be applied to transportation problems, where the optimal exchange of a commodity between at least two distinct regions needs to be determined. Furthermore, it addresses storage problems, where the optimal balance between production and consumption at different points in time is calculated.
REMix offers several key features that make it a robust tool for energy system modeling. It is designed to handle large-scale models with high spatial and technological resolutions, making it suitable for complex analyses. The framework also incorporates path optimization, allowing for multi-year analyses and strategic planning over extended periods. Ongoing work deals with very large instances involving path optimization using the parallel solver PIPS-IPM++. A notable feature is its custom accounting capability, provided through the indicator module, which enables flexible definitions of what contributes to the objective functions. Additionally, REMix supports flexible modeling, offering multiple approaches to integrate and model technologies, allowing users to tailor the framework to their specific needs. Finally, it supports multi-criteria optimization, where, beyond cost minimization, additional factors such as ecological impacts or resilience indicators can be considered in the objective function, providing a more comprehensive approach to system optimization.
In the past, the model has been used to investigate a wide range of research questions. In addition to detailed analyses of the integration of renewable energies into the electricity system, for example, the role of hydrogen in the energy system of the future has also been examined.
For the purpose of validating the REMix model, German Aerospace Center has participated in various model comparisons.

### TEMOA

TEMOA stands for Tools for Energy Model Optimization and Analysis. The software is being developed by the Department of Civil, Construction, and Environmental Engineering, North Carolina State University, Raleigh, North Carolina, USA. The project runs a website and a forum. The source code is hosted on GitHub. The model is programmed in Pyomo, an optimization components library written in Python. TEMOA can be used with any solver that Pyomo supports, including the open source GLPK solver. TEMOA uses version control to publicly archive source code and datasets and thereby enable third-parties to verify all published modeling work.
TEMOA classes as a modeling framework and is used to conduct analysis using a bottom-up, technology rich energy system model. The model objective is to minimize the system-wide cost of energy supply by deploying and utilizing energy technologies and commodities over time to meet a set of exogenously specified end-use demands. TEMOA is "strongly influenced by the well-documented MARKAL/TIMES model generators".$^{:4}$
TEMOA forms the basis of the Open Energy Outlook (OEO) research project spanning 2020–2022. The OEO project utilizes open source tools and open data to explore deep decarbonization policy options for the United States.
From mid‑2021, an interactive interface located on the main website allows registered users to manipulate scenario data locally, upload structured SQLite files, and then run these scenarios using the TEMOA software. The service also provides some limited data visualization and project management functionality.

## Specialist models

This section lists specialist modeling frameworks that cover particular aspects of an energy system in more detail than would normally be convenient or feasible with more general frameworks.

### RAMP

RAMP is an open-source software suite for the stochastic simulation of user‑driven energy demand time series based on few simple inputs. For example, a minimal definition of a user type — say, a particular category of household — requires only information about which energy-consuming devices they own, when they tend to use them on any typical day, and for how long in total. The software then leverages stochasticity to make up for the absence of more detailed information and to include the unpredictability of human behavior.
The RAMP software can then generate synthetic data wherever metered data does not exist, such as when designing systems in remote areas  or when looking forward to future electric-vehicle fleets. The limited data requirements also allow for a greater flexibility in scenario selection and development than similar but more data-intensive characterizations.
RAMP has been used in scientific research for a variety of use cases, including the generation of electricity demand profiles for remote or residential communities, domestic hot water usage, cooking practices, and electric mobility. Associated geographical scales can range from neighborhoods to continents.
RAMP has several dozen users worldwide. In the early‑2020s, the software became part of a multi-institution software development effort, supported by TU Delft, VITO, Reiner Lemoine Institute, University of Liège, Leibniz University Hannover, and Universidad Mayor de San Simón.
RAMP runs on Python and requires input in tabular form. Graphical user interfaces (GUI) are available, allowing the software to be run from web browsers.

### venco.py

The venco.py model framework can be used to investigate interactions between the uptake of battery electric vehicles (BEV) and the electricity system at large. More specifically, BEVs can usefully contribute to short‑haul storage in power systems facing high shares of fluctuating renewable energy. But unlike dedicated grid storage, BEV contributions are highly dependent on the connection and charging choices that individual vehicle owners might make.
Venco.py has been applied to various scenarios in Germany in 2030 using a projected 9 million BEVs in service and an annual fleet power consumption of 27 TWh. Simulations show that owner decisions are indeed significant and that some system design variables have more influence than others. For instance, aggregate fleet capacity and the availability of fast charging facilities appear to strongly impact the likely system contribution. Further work is needed to assess the influence of more resolved weather and demand patterns. The mathematical formulation is available. Venco.py builds on an earlier spreadsheet prototype.

## Project statistics

Statistics for the 30 open energy modeling projects listed (given sufficient information is available) are as follows:
Core programming language :
| Paradigm | Language | Count |
| Imperative programming | R | 1 |
| Object-oriented programming | C++ | 1 |
| Object-oriented programming | Java | 2 |
| Object-oriented programming | Python | 14 |
| Object-oriented programming | Ruby | 1 |
| Multiple dispatch | Julia | 3 |
| Mathematical programming | GAMS | 7 |
| Mathematical programming | MathProg | 2 |
| Spreadsheet | Excel/VBA | 1 |
| indicates a compiled language.  indicates a commercial software license is required. |||
Primary origin :
| Country | Count |
| Australia | 2 |
| Denmark | 1 |
| European Union | 1 |
| Finland | 1 |
| Germany | 14 |
| Netherlands | 5 |
| Sweden | 2 |
| Switzerland | 2 |
| United Kingdom | 1 |
| United States | 3 |
Project host :
| Type | Count |
| Academic institution | 21 |
| Commercial entity | 5 |
| Community-based | 1 |
| Non-profit entity | 2 |
| State-sponsored | 1 |
The GAMS language requires a proprietary environment and its significant cost effectively limits participation to those who can access an institutional copy.

## Programming components

Programming components, in this context, are coherent blocks of code or compiled libraries that can be relatively easily imported or linked to by higher‑level modeling frameworks in order to obtain some well‑defined functionality.

### Technology modules

A number of technical component models are now also open source. While these component models do not constitute systems models aimed at public policy development (the focus of this page), they nonetheless warrant a mention. Technology modules can be linked or otherwise adapted into these broader initiatives.
* Sandia photovoltaic array performance model
* pvlib photovoltaics facility library
* hplib heat pump facility library
* windpowerlib wind turbine library
* hydropowerlib hydroelectricity library

### Auction models

A number of electricity auction models have been written in GAMS, AMPL, MathProg, and other languages. These include:
* the EPOC nodal pricing model
* Australian National Electricity Market examples using MathProg can be found at b:GLPK/Electricity markets

### Open solvers

Many projects rely on a pure linear or mixed integer solver to perform classical optimization, constraint satisfaction, or some mix of the two. While there are several open source solver projects, the most commonly deployed solver is GLPK. GLPK has been adopted by Calliope, ETEM, ficus, OSeMOSYS, SWITCH, and TEMOA. Another alternative is the Clp solver. From mid‑2022, the HiGHS open source solver offers another option. HiGHS is used by the web‑based version of the PyPSA European multi‑sector model
Proprietary solvers outperform open source solvers by a considerable margin (perhaps ten-fold), so choosing an open solver will limit performance in terms of speed, memory consumption, and perhaps even tractability.
The flexible SMS++ optimization toolbox, written in C++17, is being developed specifically to meet the needs of energy system modeling.