{"id":"91bdec1e-fa11-4aa7-a519-7c82d25b65fb","arxiv_id":"2506.19412","paper_version":1,"verdict":"CONDITIONAL","confidence":"HIGH","novelty_score":6.0,"correctness_risk":"medium","formal_verification":"none","parameter_count":1,"one_line_summary":"The paper defines energy modularity, a self-sufficiency-based community detection objective, and a scalable Louvain algorithm that optimizes it with flexibility activation.","lead":"This paper introduces a new quality metric, energy modularity, to partition energy networks into self-sufficient communities, and a Louvain-based algorithm to maximize it using flexibility resources. It demonstrates the approach on a 99-bus benchmark grid, showing faster computation with a simulation-based approximation.","discovery_kind":"new_method","skeptic_critique":{"model":"deepseek-v4-flash","headline":"Algorithm 2 (SimulateFlex) does not compute d(C): it sums per-node min(S,D), ignoring cross-node internal supply, so the scalable method optimizes a different objective than Eq. (11) and the accuracy/scalability claims are unsupported.","rationale":"The reader correctly identified Algorithm 2 as load-bearing, but framed the issue as ambiguity and lossless-flow overestimation. My stress-test finds a more concrete and more damaging defect: even granting the lossless assumption, line 9 computes per-node min(S,D) instead of the community-level min(total S, total D) that the stated aggregation in Section 3.3.4 and the balance equations in Eq. (10) require. This is not a minor implementation detail; it changes the objective being optimized, so the scalable SimulateFlex results in Section 4 cannot be interpreted as maximizing energy modularity as defined by Eq. (11). The concern is specific and checkable with a two-node counterexample, so the appropriate outcome is a conditional acceptance requiring the algorithm to be corrected and the numerical evaluation redone, rather than outright rejection: the energy modularity concept and the LPFlex-based results may still be sound, but the headline scalability and accuracy claims are currently unsupported. I credit the paper for using a public benchmark (SimBench), for comparing three d(C) computation approaches, and for explicitly discussing some limitations, but none of that addresses this structural mismatch in the simulation approximation.","tokens_in":20952,"tokens_out":6626,"duration_ms":70426,"concrete_test":"Implement the minimal counterexample: C={A,B}, one time step, S_A=10, D_A=0, S_B=0, D_B=10, and no flexibility (f=soc=0). Solve Eq. (11) analytically or with the paper's LPFlex formulation; run Algorithm 2 as written. If d(C) is 10 in the LP but 0 in SimulateFlex, the approximation is not faithful. As a second check, rerun the Section 4.4 SimulateFlex benchmark after replacing line 9 with min(sum_w S_{w,t}, sum_w D_{w,t}) while preserving the flexibility bookkeeping, and compare the resulting partitions and self-sufficiency tables; material changes would show that the reported evaluation depends on this bug.","verdict_should_be":"CONDITIONAL","load_bearing_attack":"The paper's central claim that the Louvain-based algorithm 'effectively partitions energy networks into self-sufficient communities, leveraging available flexibility' rests on computing d(C) correctly. The scalable route, SimulateFlex (Algorithm 2), fails to do so even under its own lossless assumptions. Line 9 accumulates sum_{w in C} min(S_{w,t}, D_{w,t}), but Eq. (10) permits any node's internal supply to cover any node's demand in C through internal edges, and Section 3.3.4 states that without losses and flow limits the problem reduces to aggregating C into one node. The correct time-t contribution is therefore min(sum_w S_{w,t}, sum_w D_{w,t}), not the sum of per-node minima. These differ: per-node minima miss cross-node balancing. A two-node community with S_A=10, D_A=0, S_B=0, D_B=10 has LP d(C)=10, but SimulateFlex line 9 gives 0. Since Q_c(C) = e(C) - gamma*a(C)^2 and e(C) uses d(C), the simulation maximizes a different objective than Eq. (11). Thus the Section 4 SimulateFlex partitions, the full-year 41.4 s runtime claim, and the 'reasonable accuracy' statement in Section 4.5 do not support the central effectiveness claim for the scalable variant. The paper acknowledges only efficiency losses as a source of overestimation, not this structural undercount.","agreement_with_reader":"partial"},"referee_report":{"model":"deepseek-v4-flash","summary":"The paper proposes a new quality metric, \"energy modularity,\" for partitioning energy networks into self-sufficient communities. The metric evaluates a partition by the fraction of each community's demand that can be supplied internally over a time horizon, with flexibility resources (storage) modeled through state-of-charge and cyclic constraints. The authors integrate this metric into a Louvain-based greedy algorithm, computing community self-sufficiency via three routes: a no-flexibility baseline (NoFlex), a linear programming solver (LPFlex), and a simulation-based approximation (SimulateFlex). They validate the approach on a 99-bus SimBench rural medium-voltage grid, reporting community partitions, runtime scaling with time horizon, and the effect of a resolution parameter γ. The central claims are that energy modularity is an effective measure of self-sufficiency-based community quality and that the Louvain algorithm with SimulateFlex enables near-real-time, temporally high-resolution community detection on realistic grids.","tokens_in":21314,"tokens_out":6163,"duration_ms":56423,"significance":"If the results hold, the paper would contribute a principled, scalable tool for microgrid and energy-community formation that explicitly accounts for temporal supply/demand profiles and storage dynamics. This is a genuine gap in the existing community-detection literature for power grids, which largely relies on static topology or single-snapshot power flows. The strengths are the coherent LP formulation of community self-sufficiency with storage cycling constraints, the use of a public benchmark grid, and the explicit runtime comparison of the three d(C) computation methods. The novel metric itself, inspired by standard modularity but based on energy balancing rather than edge weights, is an original and reasonable conceptual step. However, the scalable simulation route contains a structural error that changes the optimized objective, and the empirical evaluation is limited to one grid without comparison to established partitioning methods.","major_comments":[{"comment":"The simulation-based method SimulateFlex does not compute d(C) as defined by Eq. (11). Under the algorithm's own assumptions (no losses, no flow limits), Section 3.3.4 states that the problem reduces to aggregating all community nodes into a single node. The correct per-time-step internal supply is then min(Σ_{w∈C} S_{w,t}, Σ_{w∈C} D_{w,t}), which permits cross-node balancing. Line 9 instead accumulates Σ_{w∈C} min(S_{w,t}, D_{w,t}), which only counts demand covered by the same node's supply. A two-node community with S_A=10, D_A=0, S_B=0, D_B=10 has LP value d(C)=10 but SimulateFlex returns 0. Since e(C) in Eq. (15) uses d(C), the SimulateFlex variant maximizes a different objective than Eq. (11). This undermines the relative-error comparison in Section 4.2.1, the full-year 41.4-second runtime claim in Section 4.2.2, the SimulateFlex partition in Section 4.4, and the \"reasonable accuracy\" statement in Section 4.5 for the scalable variant.","section":"Section 3.3.4, Algorithm 2, line 9"},{"comment":"The property that for γ=1 the trivial one-community partition has energy modularity zero is stated as \"e(V)=a(V)=1\", but e(V)=1 is not guaranteed by the model. e(V)=d(V)/Σ_{t,v}D_{v,t} equals 1 only when the entire network can satisfy all its demand from internal supply and flexibility; a net-importing network with external slack supply would have e(V)<1. This condition is not stated as an assumption, and the claimed value range [−1,1[ for energy modularity depends on it. The statement should be made conditional, or the model should fix the slack supply as part of V with a clear convention for d(V).","section":"Section 3.2.2"},{"comment":"The empirical evaluation of the central effectiveness claim is based on a single benchmark grid with no comparison to existing community-detection approaches for power grids (e.g., standard modularity with power-flow-based weights, or spectral clustering on electrical distance). The only baselines are the three internal d(C) computation variants. Additionally, γ=0.25 is chosen in Section 4.4 after inspecting Figure 5, which is a post-hoc selection. Without a second grid or a comparison to alternative partitioning objectives, the claim that energy modularity is an \"effective metric\" for self-sufficient community detection is not yet fully supported.","section":"Section 4, Section 4.4"}],"minor_comments":[{"comment":"Algorithm 2 reuses the symbol Δ for two different quantities: line 6 defines Δ as the flexibility usage limit (Σ f_w), while line 10 assigns Δ to the net imbalance Σ(S−D), and line 11 then clamps that net imbalance using both meanings of Δ. This overloading makes the pseudocode ambiguous and should be fixed with distinct variable names.","section":"Section 3.3.4, Algorithm 2"},{"comment":"The handling of cyclic state-of-charge in SimulateFlex (lines 19–20) is not derived or explained: the meaning of d_f, the role of σ_old, and the \"compensate over-dispatch\" step are unclear. A short derivation showing how these updates enforce the cyclic constraint (5) would improve reproducibility.","section":"Section 3.3.4, Algorithm 2, lines 19–21"},{"comment":"The sentence reporting self-sufficiency percentages (82.1% with LPFlex, 84.3% with NoFlex, 88.3% with LPFlex, 90.9% with SimulateFlex) should clarify that these are d(V)/ΣD values for the whole network and state which method produced each number; the current ordering is easy to misread.","section":"Section 4.1"},{"comment":"The captions \"NoFlex: Energy balance, ignoring flexibility\" and \"SimulateFlex: Energy balance, ignoring flexibility efficiencies\" are confusing because both methods are energy balances; the intended distinction is that NoFlex omits flexibility while SimulateFlex includes it, and the captions should say so explicitly.","section":"Figure 5 captions"}],"recommendation":"major_revision","confidential_remarks":"The SimulateFlex bug is the key technical issue: it changes the objective being optimized and invalidates the scalability claims for the approximate variant. The LP-based formulation and the energy modularity definition are sound enough to build on, so a corrected simulation and rerun experiments could resolve the concern. The single-grid validation without external baselines is a further weakness that the authors should address, at least by adding a comparative method on the same grid."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"The genuinely new thing here is energy modularity: instead of minimizing cut or maximizing structural modularity, the paper maximizes the fraction of community demand met by internal supply while penalizing large communities with an a(C)^2 term, and it bakes flexibility activation into the objective rather than treating edge weights as static. That is a real conceptual step for the microgrid-islanding literature, and the LP formulation in Eqs. (8)-(11) is coherent. The convergence argument for Louvain is standard but correctly adapted, and the use of public SimBench data plus reported runtimes is a plus for reproducibility.\n\nThe soft spots are real, and one is load-bearing. SimulateFlex in Algorithm 2 does not compute d(C) as defined. Line 9 sums per-node min(S_{w,t}, D_{w,t}), but Eq. (10) allows cross-node internal supply. The paper's own Section 3.3.4 says that without losses and flow limits the community reduces to one aggregated node, so the correct per-time contribution is min(sum_w S_{w,t}, sum_w D_{w,t}), not sum_w min(S_{w,t}, D_{w,t}). A two-node community with surplus at one node and deficit at the other has zero per-node minima but full internal coverage. SimulateFlex thus maximizes a different objective than Eq. (11), which disconnects the Section 4 full-year 41.4-second runtime and the \"reasonable accuracy\" claims from the central effectiveness claim. The paper flags efficiency losses as a source of overestimation but misses this structural undercount.\n\nOther issues are more standard: gamma=0.25 is chosen after seeing the results, the empirical validation is one grid with no baseline comparison, and the e(V)=a(V)=1 property at gamma=1 needs a net-supply assumption that is not stated. These are fixable and not disqualifying. The Algorithm 2 flaw is the one that must be corrected before the scalability claims should be accepted.\n\nThis paper is for people working on distribution grid partitioning, microgrid islanding, or energy communities. The concept is worth engaging, and the LP variant works as a proof-of-concept. I would send it to peer review with a clear request to fix the simulation method and re-run the experiments. As is, I would not rely on the scalable results.","headline":"A genuinely new energy modularity objective is hurt by a load-bearing bug in the scalable simulation variant, which does not compute the stated d(C).","tokens_in":21753,"tokens_out":4055,"would_cite":false,"duration_ms":38636,"reading_group":"yes","serious_thinker":"no","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"deepseek-v4-flash","headline":"An energy-aware modularity score partitions power grids into self-sufficient communities by measuring how much local demand is covered locally, and a Louvain-style algorithm maximizes it while accounting for storage and shiftable loads.","keywords":["community detection","energy modularity","self-sufficiency","flexibility activation","microgrids","energy cells","Louvain algorithm"],"falsifier":"Take the same benchmark grid, compute $d(C)$ for many communities with both the simulation method and the constrained linear program, and measure the relative error as a function of community size, line congestion, and horizon length; if the approximation changes the ranking of candidate partitions so that the simulation-optimal partition no longer reaches the claimed self-sufficiency when rechecked with the LP, the central scalability claim is refuted.","tokens_in":20776,"feed_emoji":"⚡","tokens_out":6744,"duration_ms":67297,"temperature":0.7,"pith_summary":"The paper aims to make community detection in power grids answer an energy question rather than a topology question: instead of asking which buses are densely connected, it asks which groups of nodes can cover their own demand from internal generation and storage. To that end it defines energy modularity, a partition-quality metric in which each community contributes the fraction of its demand met internally, minus a penalising term quadratic in its demand share. The authors argue that maximizing this metric with a Louvain-style greedy algorithm, where every candidate move is evaluated by re-optimizing community-level flexibility activation, yields partitions with high self-sufficiency. The practical pay-off is that such partitions can be computed fast enough to study full-year, quarter-hourly grid data, and they correspond to meaningful microgrid or energy-cell boundaries.","feed_headline":"Energy modularity carves grids into self-sufficient islands","feed_subtitle":"A Louvain-style search plus virtual-battery simulation finds high local demand coverage in near-real time.","key_machinery":"The load-bearing object is energy modularity, a redefinition of Newman-Girvan modularity in which edge density is replaced by energy self-sufficiency. For a community $C$, $e(C)$ is the maximum share of total network demand that can be supplied from inside $C$ after optimally activating flexibility, and $a(C)$ is $C$'s share of total demand; the score of a partition is $\\sum_C(e(C)-\\gamma a(C)^2)$ with resolution parameter $\\gamma$. Carrying the argument is the Louvain-style greedy search: starting from singleton communities, nodes are repeatedly moved to the neighboring community that most increases energy modularity, with moves that would disconnect a community forbidden, and communities are then aggregated into super-nodes. Because every move requires the self-sufficiency $d(C)$ of the affected communities, the authors couple this search with two flexibility-optimization methods, a linear program that respects efficiencies and flow limits, and a simulation-based method that aggregates all flexibility into one lossless virtual storage and updates its state of charge over time. The simulation is what delivers the claimed scalability, with per-community cost $O(|C||T|)$.","core_discovery":"The central claim is that energy modularity $Q(P)=\\sum_{C\\in P}(e(C)-\\gamma a(C)^2)$ is an effective objective for partitioning energy networks by self-sufficiency, where $e(C)$ is the fraction of total network demand supplied from inside community $C$ and $a(C)$ is community $C$'s share of total demand. Unlike standard modularity, which rewards dense internal edges and can therefore prefer artificial loops over useful direct supply, energy modularity rewards the covering of local demand by local supply and flexible assets. The proposed Louvain-based algorithm optimizes this objective by evaluating single-node moves through the gain in energy modularity, where each community's internally covered demand $d(C)$ is computed either by linear programming or by a fast simulation that aggregates the community's flexibility into one virtual battery. On a 99-bus medium-voltage benchmark grid, the paper reports that the resulting partitions reach per-community self-sufficiency between roughly 84 percent and 99.8 percent when flexibility is active, and that the simulation variant completes a full year at quarter-hour resolution in about 41 seconds, compared with roughly 2.5 hours for the LP variant. The paper concludes that energy modularity is a meaningful, operationally relevant metric and that the algorithm effectively leverages available flexibility to split networks into self-sufficient communities.","pith_inferences":["Because energy modularity is a well-defined global objective, it could be plugged into other modularity-maximizing schemes, such as spectral or mixed-integer methods, which may yield globally better partitions than the greedy Louvain search.","The reported self-sufficiency figures are upper bounds under real losses, so a natural follow-up is to re-run the same partitions through AC power flow and quantify the gap between simulated and physically achievable self-sufficiency.","The metric could extend to multi-energy cells covering gas, heat, and mobility by redefining internal supply and demand per energy carrier, since it only needs time series and flexibility constraints rather than a particular network physics model.","A testable extension is to compare resilience during blackouts: partitions optimized for energy modularity may outperform topology-based islanding in served load, but that connection is not established in the paper."],"forward_implications":["Network operators can use energy modularity as a single objective to compare candidate microgrid partitions without pre-specifying the number of communities, using the gamma parameter to tune cluster granularity.","Because the simulation-based method scales linearly in community size and time horizon, full-year, quarter-hourly community detection on medium-voltage grids becomes feasible on a single machine.","Flexibility-aware partitions tend to contain more, smaller communities than flexibility-blind partitions, since storage allows undersupplied periods to be covered locally and therefore gives operators more local control islands.","Communities with low no-flex self-sufficiency benefit most from the metric: on the test grid, one community rises from 74.3 percent self-sufficiency without flexibility to 99.8 percent with flexibility.","The energy modularity of a partition lies in $[-1,1)$, with the all-in-one partition scoring zero at $\\gamma=1$, so the score has a natural interpretation as a percentage-like quality measure."],"supporting_citations":[{"why":"Supplies the Louvain algorithm that the paper adapts for energy modularity maximization.","marker":"[4]"},{"why":"Defines standard modularity, the concept energy modularity is inspired by and compared against.","marker":"[31]"},{"why":"Provides the resolution-parameter formulation used in the energy modularity definition.","marker":"[34]"},{"why":"Supplies the SimBench benchmark grid and demand and supply profiles used in the numerical evaluation.","marker":"[27]"},{"why":"Provides the pruning acceleration used in the local optimization phase of the Louvain adaptation.","marker":"[32]"},{"why":"Justifies the linear-loss transport network model used in the problem formulation.","marker":"[30]"},{"why":"Supplies the Louvain pseudocode notation and the connectedness issue that the algorithm guards against.","marker":"[40]"},{"why":"Establishes the NP-hardness of modularity optimization, motivating the heuristic approach.","marker":"[6]"}],"fun_headline_variants":["Energy modularity redefines grid community detection","Self-sufficient microgrids via energy modularity","Louvain-style algorithm maximizes energy self-sufficiency","Fast simulation unlocks optimal energy clusters","Energy modularity: maximizing local demand coverage"],"cache_read_input_tokens":3200,"weakest_assumption_plain":"The load-bearing premise is that aggregating a community's entire flexibility into one lossless virtual battery, with no line-flow limits and no efficiency losses, gives a faithful enough value of internal demand coverage to guide the search; if that approximation misrepresents $d(C)$, the near-real-time scalability on full-year data does not carry over to real grids.","fun_headline_variants_meta":{"raw":{"variants":["Energy modularity redefines grid community detection","Self-sufficient microgrids via energy modularity","Louvain-style algorithm maximizes energy self-sufficiency","Fast simulation unlocks optimal energy clusters","Energy modularity: maximizing local demand coverage"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.000154,"raw_usage":{"total_tokens":1225,"prompt_tokens":975,"completion_tokens":250,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":591,"completion_tokens_details":{"reasoning_tokens":182}},"tokens_in":591,"tokens_out":250,"duration_ms":2930,"temperature":1.0,"reasoning_tokens":182,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-15T18:32:32.514220+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Take the same benchmark grid, compute $d(C)$ for many communities with both the simulation method and the constrained linear program, and measure the relative error as a function of community size, line congestion, and horizon length; if the approximation changes the ranking of candidate partitions so that the simulation-optimal partition no longer reaches the claimed self-sufficiency when rechecked with the LP, the central scalability claim is refuted.","supporting_citations":[{"cited_title":"Partitioning and modularity of graphs with arbitrary degree distribution","cited_arxiv_id":"cond-mat/0606295","evidence_quote":"Provides the resolution-parameter formulation used in the energy modularity definition."},{"cited_title":null,"cited_arxiv_id":null,"evidence_quote":"Supplies the SimBench benchmark grid and demand and supply profiles used in the numerical evaluation."},{"cited_title":null,"cited_arxiv_id":null,"evidence_quote":"Provides the pruning acceleration used in the local optimization phase of the Louvain adaptation."}],"review_version":2}