Grid2op aims at make the use of (and the research on) "machine learning" or "artificial intelligence" for power grid operations purposed.
The grid2op ecosystem is made of different packages with different goals:
- grid2op is the core package. It is pure python, available on pypi and rather flexible. It allows lots of customization and provide default implementation for most of its component
- lightsim2grid is a grid2op "backend" that is a port of Pandapower in c++ and is optimized for speed and usability in grid2op
- pypowsybl2grid is another grid2op "backend", currently under heavy development. It aims at bringing all the power of the powsybl framework (including its capacity to simulate in great detail a powergrid) into the grid2op ecosystem
- chronix2grid is the package that we use to generate "time series" that are themselves used in grid2op environment. They provide load and generation for each time step of the grid during the entire episode.
- l2rpn-baselines is pacakge that aims at providing code example to get started in the training of agent able to control a powergrid for some reinforcement learning framework.
- grid2game is a graphical user interface that allows real human to "play" the grid2op and to act as a grid2op agent.
- grid2viz is another graphical user interface that allows people to inspect how a grid2op agent has performed when evaluated on a given set of scenarios. It also allows to easily compare an agent with a baseline.
- LearningToAlert provides an algorithm to "solve" part of the grid2op actions (sending alert at the right time to a possible human operator)
- grid2op-milp-agent is an example of a grid2op agent that is based on linear optimisation and is able to perform topological actions.
Other contributors are also developing code that could be hosted here. For example, the l2rpn top performers aften publish on github their approach. See https://l2rpn-baselines.readthedocs.io/en/latest/external_contributions.html for an updated list.
The ecosystem is also made of packages hosted elsewhere, for example:
- a graphical user interface developed by NVIDIA: https://github.com/NVIDIA/energy-sdk-l2rpn
- some good solutions to the L2RPN competitions: