{"id":17201694,"url":"https://github.com/fneum/benchmark-teplopf","last_synced_at":"2025-03-25T09:13:34.878Z","repository":{"id":115201017,"uuid":"257204871","full_name":"fneum/benchmark-teplopf","owner":"fneum","description":"Code to reproduce benchmark of paper \"Transmission Expansion Planning Using Cycle Flows\"","archived":false,"fork":false,"pushed_at":"2021-01-14T20:32:05.000Z","size":686,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-17T07:17:41.171Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fneum.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-20T07:31:01.000Z","updated_at":"2021-01-14T20:32:08.000Z","dependencies_parsed_at":null,"dependency_job_id":"ca9d3337-bdd8-4e8a-acc4-c011c7766f3e","html_url":"https://github.com/fneum/benchmark-teplopf","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fneum%2Fbenchmark-teplopf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fneum%2Fbenchmark-teplopf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fneum%2Fbenchmark-teplopf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fneum%2Fbenchmark-teplopf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fneum","download_url":"https://codeload.github.com/fneum/benchmark-teplopf/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245431726,"owners_count":20614184,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-15T02:12:28.649Z","updated_at":"2025-03-25T09:13:34.868Z","avatar_url":"https://github.com/fneum.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"![GitHub](https://img.shields.io/github/license/fneum/benchmark-teplopf)\n\n![GitHub repo size](https://img.shields.io/github/repo-size/fneum/benchmark-teplopf)\n\n# Benchmark of PyPSA Transmission Expansion Planning (TEP)\n\nThis repository contains the snakemake workflow to reproduce the benchmarks from the paper\n\n**Fabian Neumann and Tom Brown. 2020. Transmission Expansion Planning Using Cycle Flows. In Proceedings of the Eleventh ACM International Conference on Future Energy Systems (e-Energy ’20).**\n\n\u003e The common linear optimal power flow (LOPF) formulation that underlies most\ntransmission expansion planning (TEP) formulations uses bus voltage angles as\nauxiliary optimization variables to describe Kirchhoff's voltage law. As well\nas introducing a large number of auxiliary variables, the angle-based\nformulation has the disadvantage that it is not well-suited to considering the\nconnection of multiple disconnected networks, It is, however, possible to\ncircumvent these auxiliary variables and reduce the required number of\nconstraints by expressing Kirchhoff's voltage law directly in terms of the\npower flows, based on a cycle decomposition of the network graph. In\ncomputationally challenging benchmarks such as generation capacity expansion\nwith multi-period LOPF, this equivalent reformulation was shown in previous\nwork to reduce solving times for LOPF problems by an order of magnitude.\nAllowing line capacity to be co-optimized in a discrete TEP problem makes it a\nnon-convex mixed-integer problem. This paper develops a novel cycle-based\nreformulation for the TEP problem with LOPF and compares it to the standard\nangle-based formulation. The combinatorics of the connection of multiple\ndisconnected networks is formalized for both formulations, a topic which has\nnot received attention in the literature. The cycle-based formulation is shown\nto conveniently accommodate synchronization options. Since both formulations\nuse the big-$M$ disjunctive relaxation, useful derivations for suitable big-$M$\nvalues are provided. The competing formulations are benchmarked on a realistic\ngeneration and transmission expansion model of the European transmission system\nat varying spatial and temporal resolutions. The cycle-based formulation solves\nup to 31 times faster for particular cases, while averaging at a speed-up of\nfactor 4.\n\nFor a benchmark of PyPSA Linear Optimal Power Flow (LOPF) formulations, see https://github.com/FRESNA/benchmark-lopf.\n\n## Cite As\n\n```\n@inproceedings{NeumannTEP2020,\n    author = {Neumann, Fabian and Brown, Tom},\n    title = {Transmission Expansion Planning Using Cycle Flows},\n    year = {2020},\n    booktitle = {Proceedings of the Eleventh ACM International Conference on Future Energy Systems},\n    series = {e-Energy ’20}\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffneum%2Fbenchmark-teplopf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffneum%2Fbenchmark-teplopf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffneum%2Fbenchmark-teplopf/lists"}