FlexPlan.jl

An open-source Julia tool for transmission and distribution expansion planning considering storage and demand flexibility.
https://github.com/Electa-Git/FlexPlan.jl

Category: Energy Systems
Sub Category: Grid Analysis and Planning

Keywords

demand-flexibility distribution-grid julia optimization planning-tool storage transmission-grid

Last synced: about 8 hours ago
JSON representation

Repository metadata

Open-source Julia tool for transmission and distribution expansion planning considering storage and demand flexibility

README.md

FlexPlan.jl

Status:
CI


DOI

Overview

FlexPlan.jl is a Julia/JuMP package to carry out transmission and distribution network planning considering AC and DC technology, storage and demand flexibility as possible expansion candidates.
Using time series input on renewable generation and demand, as well a list of candidates for grid expansion, a mixed-integer linear problem is constructed which can be solved with any commercial or open-source MILP solver.
The package builds upon the PowerModels and PowerModelsACDC packages, and uses a similar structure.

Modelling features provided by the package include:

  • Joint multistage, multiperiod formulation to model a number of planning years, and planning hours within years for a sequential grid expansion plan.
  • Stochastic formulation of the planning problem, based on scenario probabilities for a number of different time series.
  • Extensive, parametrized models for storage, demand flexibility and DC grids.
  • Linearized DistFlow model for radial distribution networks, considering reactive power and voltage magnitudes.
  • Support of networks composed of transmission and distribution (T&D), with the possibility of using two different power flow models.
  • Heuristic procedure for efficient, near-optimal planning of T&D networks.
  • Basic implementations of Benders decomposition algorithm to efficiently solve the stochastic planning problem.

Documentation

The package documentation includes useful information comprising links to example scripts and a tutorial.

Additionally, these presentations provide a brief introduction to various aspects of FlexPlan:

  • Network expansion planning with FlexPlan.jl [PDF] – EnergyVille, 16/02/2023
  • FlexPlan.jl – An open-source Julia tool for holistic transmission and distribution grid planning [PDF] – OSMSES 2023 conference, Aachen, 28/03/2023

All notable changes to the source code are documented in the changelog.

Installation of FlexPlan

From Julia, FlexPlan can be installed using the built-in package manager:

using Pkg
Pkg.add("FlexPlan")

Development

FlexPlan.jl is research-grade software and is constantly being improved and extended.
If you have suggestions for improvement, please contact us via the Issues page on the repository.

Acknowledgements

This code has been developed as part of the European Union’s Horizon 2020 research and innovation programme under the FlexPlan project (grant agreement no. 863819).

Developed by:

  • Hakan Ergun (KU Leuven / EnergyVille)
  • Matteo Rossini (RSE)
  • Marco Rossi (RSE)
  • Damien Lepage (N-Side)
  • Iver Bakken Sperstad (SINTEF)
  • Espen Flo Bødal (SINTEF)
  • Merkebu Zenebe Degefa (SINTEF)
  • Reinhilde D'Hulst (VITO / EnergyVille)

The developers thank Carleton Coffrin (Los Alamos National Laboratory) for his countless design tips.

Citing FlexPlan.jl

If you find FlexPlan.jl useful in your work, we kindly request that you cite the following publication (preprint):

@inproceedings{FlexPlan.jl,
    author = {Matteo Rossini and Hakan Ergun and Marco Rossi},
    title = {{FlexPlan}.jl – An open-source {Julia} tool for holistic transmission and distribution grid planning},
    booktitle = {2023 Open Source Modelling and Simulation of Energy Systems ({OSMSES})},
    year = {2023},
    month = {mar},
    publisher = {{IEEE}},
    doi = {10.1109/osmses58477.2023.10089624},
    url = {https://doi.org/10.1109/osmses58477.2023.10089624}
}

License

This code is provided under a BSD 3-Clause License.


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 9 days ago

Total Commits: 602
Total Committers: 13
Avg Commits per committer: 46.308
Development Distribution Score (DDS): 0.294

Commits in past year: 12
Committers in past year: 3
Avg Commits per committer in past year: 4.0
Development Distribution Score (DDS) in past year: 0.5

Name Email Commits
Matteo Rossini m****i@r****t 425
Hakan Ergun h****n@i****g 68
Iver Bakken Sperstad 5****d 52
espenb e****l@s****o 29
dle-n-side d****e@n****m 9
Electa-Git 5****t 5
Matteo Rossini m****i@k****e 3
Rossi Marco (RSE) M****I@r****t 3
ibsperstad i****d@s****o 3
marcor4 4****4 2
D'hulst Reinhilde r****t@v****e 1
Matteo Rossini m****i 1
merkebuz 5****z 1

Committer domains:


Issue and Pull Request metadata

Last synced: 1 day ago

Total issues: 19
Total pull requests: 81
Average time to close issues: 4 months
Average time to close pull requests: 2 days
Total issue authors: 5
Total pull request authors: 6
Average comments per issue: 1.68
Average comments per pull request: 0.89
Merged pull request: 74
Bot issues: 0
Bot pull requests: 0

Past year issues: 0
Past year pull requests: 0
Past year average time to close issues: N/A
Past year average time to close pull requests: N/A
Past year issue authors: 0
Past year pull request authors: 0
Past year average comments per issue: 0
Past year average comments per pull request: 0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/Electa-Git/FlexPlan.jl

Top Issue Authors

  • matteorossini (11)
  • hakanergun (4)
  • ibsperstad (2)
  • espenfb (1)
  • JuliaTagBot (1)

Top Pull Request Authors

  • matteorossini (43)
  • hakanergun (26)
  • dle-n-side (4)
  • espenfb (3)
  • ibsperstad (3)
  • Electa-Git (2)

Top Issue Labels

  • enhancement (6)
  • bug (3)
  • duplicate (1)
  • invalid (1)

Top Pull Request Labels

  • enhancement (3)

Package metadata

juliahub.com: FlexPlan

Open-source Julia tool for transmission and distribution expansion planning considering storage and demand flexibility

  • Homepage: https://electa-git.github.io/FlexPlan.jl/
  • Documentation: https://docs.juliahub.com/General/FlexPlan/stable/
  • Licenses: BSD-3-Clause
  • Latest release: 0.4.0 (published 10 months ago)
  • Last Synced: 2025-04-29T14:08:18.871Z (1 day ago)
  • Versions: 8
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Downloads: 12 Total
  • Rankings:
    • Dependent repos count: 9.94%
    • Stargazers count: 32.57%
    • Average: 33.737%
    • Dependent packages count: 38.915%
    • Forks count: 53.523%

Dependencies

.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite
.github/workflows/ci.yml actions
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • codecov/codecov-action v3 composite
  • julia-actions/julia-buildpkg latest composite
  • julia-actions/julia-processcoverage v1 composite
  • julia-actions/julia-runtest latest composite
  • julia-actions/setup-julia v1 composite
.github/workflows/documentation.yml actions
  • actions/checkout v3 composite
  • julia-actions/setup-julia latest composite

Score: 8.220941168281389