{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/powerflownet-leveraging-message-passing-gnns","title":"PowerFlowNet: Power Flow Approximation Using Message Passing Graph Neural Networks","arxiv_id":"2311.03415","date":"2023-11-06","proceeding":null,"authors":["Nan Lin","Stavros Orfanoudakis","Nathan Ordonez Cardenas","Juan S. Giraldo","Pedro P. Vergara"],"abstract":"Accurate and efficient power flow (PF) analysis is crucial in modern electrical networks' operation and planning. Therefore, there is a need for scalable algorithms that can provide accurate and fast solutions for both small and large scale power networks. As the power network can be interpreted as a graph, Graph Neural Networks (GNNs) have emerged as a promising approach for improving the accuracy and speed of PF approximations by exploiting information sharing via the underlying graph structure. In this study, we introduce PowerFlowNet, a novel GNN architecture for PF approximation that showcases similar performance with the traditional Newton-Raphson method but achieves it 4 times faster in the simple IEEE 14-bus system and 145 times faster in the realistic case of the French high voltage network (6470rte). Meanwhile, it significantly outperforms other traditional approximation methods, such as the DC relaxation method, in terms of performance and execution time; therefore, making PowerFlowNet a highly promising solution for real-world PF analysis. Furthermore, we verify the efficacy of our approach by conducting an in-depth experimental evaluation, thoroughly examining the performance, scalability, interpretability, and architectural dependability of PowerFlowNet. The evaluation provides insights into the behavior and potential applications of GNNs in power system analysis.","url_abs":"https://arxiv.org/abs/2311.03415v3","url_pdf":"https://arxiv.org/pdf/2311.03415v3.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"powerflownet-leveraging-message-passing-gnns","repo_url":"https://github.com/StavrosOrf/PoweFlowNet","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"powerflownet-leveraging-message-passing-gnns","repo_url":"https://github.com/distributionnetworkstudelft/poweflownet","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[],"methods":[{"method_slug":"speed","method_name":"SPEED"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2311.03415","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2311.03415"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/StavrosOrf/PoweFlowNet","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/distributionnetworkstudelft/poweflownet","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":5,"unverified":2},"by_repo_kind":{"official":{"samples":7,"ran":5,"repositories":2}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"b467417a3dfd3486","entry":"get_line_z_pu","repo":"StavrosOrf/PoweFlowNet","repo_kind":"official","path":"dataset_generator.py","file_url":"https://github.com/StavrosOrf/PoweFlowNet/blob/HEAD/dataset_generator.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b467417a3dfd3486"}},{"code_sha256_prefix":"790b8dd294470306","entry":"get_trafo_z_pu","repo":"StavrosOrf/PoweFlowNet","repo_kind":"official","path":"dataset_generator.py","file_url":"https://github.com/StavrosOrf/PoweFlowNet/blob/HEAD/dataset_generator.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"790b8dd294470306"}},{"code_sha256_prefix":"2c5cb188fee02176","entry":"get_trafo_z_pu","repo":"distributionnetworkstudelft/poweflownet","repo_kind":"official","path":"dataset_generator_pandapower_v2.py","file_url":"https://github.com/distributionnetworkstudelft/poweflownet/blob/HEAD/dataset_generator_pandapower_v2.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2c5cb188fee02176"}},{"code_sha256_prefix":"3ea53c3f92e2f87b","entry":"load_net","repo":"StavrosOrf/PoweFlowNet","repo_kind":"official","path":"speedup_evaluator.py","file_url":"https://github.com/StavrosOrf/PoweFlowNet/blob/HEAD/speedup_evaluator.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3ea53c3f92e2f87b"}},{"code_sha256_prefix":"91e03edd0fdfa357","entry":"tikhonov_regularizer","repo":"StavrosOrf/PoweFlowNet","repo_kind":"official","path":"collaborative_filtering.py","file_url":"https://github.com/StavrosOrf/PoweFlowNet/blob/HEAD/collaborative_filtering.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"91e03edd0fdfa357"}},{"code_sha256_prefix":"981325d5db79c1c4","entry":"load_cases","repo":"StavrosOrf/PoweFlowNet","repo_kind":"official","path":"speedup_evaluator.py","file_url":"https://github.com/StavrosOrf/PoweFlowNet/blob/HEAD/speedup_evaluator.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"981325d5db79c1c4"}},{"code_sha256_prefix":"bc1f2c3e38a8f07e","entry":"plot_error_extreme","repo":"StavrosOrf/PoweFlowNet","repo_kind":"official","path":"plot_error_extreme.py","file_url":"https://github.com/StavrosOrf/PoweFlowNet/blob/HEAD/plot_error_extreme.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bc1f2c3e38a8f07e"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}