This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

FORWARD: Feasibility Oriented Random-Walk Inspired Algorithm
for Radial Reconfiguration in Distribution Networks


Joan Vendrell, Russell Bent and Solmaz Kia, Senior Member, IEEE
The first and third authors are with the Mechanical and Aerospace Engineering department, University of California Irvine, jvendrel, solmaz@uci.edu. The second author is with the Theoretical Division, Los Alamos National Lab rbent@lanl.edu. This work was supported by UCI-LANL Fellowship.
Abstract

We consider an optimal flow distribution problem in which the goal is to find a radial configuration that minimizes resistance-induced quadratic distribution costs while ensuring delivery of inputs from multiple sources to all sinks to meet their demands. This problem has critical applications in various distribution systems, such as electricity, where efficient energy flow is crucial for both economic and environmental reasons. Due to its complexity, finding an optimal solution is computationally challenging and NP-hard. In this paper, we propose a novel algorithm called FORWARD, which leverages graph theory to efficiently identify feasible configurations in polynomial time. By drawing parallels with random walk processes on electricity networks, our method simplifies the search space, significantly reducing computational effort while maintaining performance. The FORWARD algorithm employs a combination of network preprocessing, intelligent partitioning, and strategic sampling to construct radial configurations that meet flow requirements, finding a feasible solution in polynomial time. Numerical experiments demonstrate the effectiveness of our approach, highlighting its potential for real-world applications in optimizing distribution networks.

Keywords: Optimal flow distribution; Graph partitioning; Greedy radial reconfiguration; Minimum spanning forest.

I Introduction

We consider a network-flow distribution problem over a bidirectional distribution network 𝒢D=𝒢(𝒱D,D)\mathcal{G}_{D}=\mathcal{G}(\mathcal{V}_{D},\mathcal{E}_{D}) with |𝒱D|=N|\mathcal{V}_{D}|=N nodes, |D|=m|\mathcal{E}_{D}|=m edges, a set of ngn_{g} source nodes 𝒱g𝒱D\mathcal{V}_{g}\subset\mathcal{V}_{D}, and nc=Nngn_{c}=N-n_{g} sink nodes 𝒱c=𝒱D\𝒱g\mathcal{V}_{c}=\mathcal{V}_{D}\backslash\mathcal{V}_{g}, each with specified input and output. We let 𝐝0N\mathbf{d}\in_{\geq 0}^{N} be the output vector and 𝐠0N\mathbf{g}\in_{\geq 0}^{N} be the input vector, where gi>0g_{i}\in_{>0} (resp. dj>0d_{j}\in_{>0}) for i𝒱gi\in\mathcal{V}_{g} (resp. j𝒱cj\in\mathcal{V}_{c}) and gi=0g_{i}=0 (resp. dj=0d_{j}=0) otherwise. The assumption is that inputs match outputs, i.e., i𝒱ggi=i𝒱cdi\sum_{i\in\mathcal{V}_{g}}g_{i}=\sum_{i\in\mathcal{V}_{c}}d_{i}. The goal is to find an (oriented) radial configuration that delivers the input flow from the source nodes to the sink nodes with minimal overall cost, see Fig. 1. This cost results from the ‘resistance’ or ‘toll’ along the edges, characterized as a quadratic function of the flow across them.

Definition 1 (Set of radial configurations)

A radial configuration is a polyforest111A polyforest (or directed forest or oriented forest) is a directed acyclic graph whose underlying undirected graph is a forest. A forest is a type of graph that contains no loops. Consequently, forests consist solely of trees that might be disconnected, leading to the term ‘forest’ being used [1]. that includes all the nodes 𝒱D\mathcal{V}_{D}, has roots at 𝒱g\mathcal{V}_{g} and the undirected version of its edges are subset of D\mathcal{E}_{D}. We denote the set of these polyforest digraphs by (𝒢D,𝒱g)\mathcal{F}(\mathcal{G}_{D},\mathcal{V}_{g}). For brevity, when clear from context, we will use only \mathcal{F}. \Box

The problem of interest can be formalized as

min(i,j)𝒮Ci,jxi,j2,subject to\displaystyle\min~\sum\nolimits_{(i,j)\in\mathcal{S}}C_{i,j}\cdot x_{i,j}^{2},\quad\text{subject to} (1a)
𝒢(𝒱D,𝒮),andA(𝒮)𝐱=𝐠𝐝\displaystyle~~\mathcal{G}(\mathcal{V}_{D},\mathcal{S})\in\mathcal{F},\quad\text{and}\quad A(\mathcal{S})\,\mathbf{x}={\mathbf{g}}-{\mathbf{d}} (1b)

where xi,j>0x_{i,j}\in_{>0} is the flow across the link (i,j)(i,j), A(𝒮)A(\mathcal{S}) is the incidence matrix of the radial configuration (a decision variable of the optimization problem), Ci,jC_{i,j} is the coefficient of the cost of edge (i,j)𝒮(i,j)\in\mathcal{S}. The constraints confine the radial configuration to \mathcal{F} and enforce the flow conservation (Kirchhoff’s law) at the nodes. Throughout this paper, we assume that there are several radial configurations for which the input can meet the specified output. Thus, the feasible solution set of the optimization problem (1) is non-empty.

Refer to caption
(a) Original network.
Refer to caption
(b) Radial configuration.
Figure 1: In the optimal reconfiguration problem, the highlighted nodes in dark are the sources and the remaining nodes are the sinks. In radial configuration, some nodes, e.g., sink node 10 may receive receive input from two different edge; despite that there is no cycle in the graph. The network used here is the IEEE 33 network [2].

Problem (1) is highly relevant to various potential flow applications, including natural gas, water, and electricity distribution networks. For instance, in power systems, the efficient and reliable distribution of energy has become increasingly critical with the growing integration of renewable energy and distributed generation sources. Modern power distribution networks, comprising multiple distributed generators, must operate in a radial configuration to adhere to engineering and safety standards. Minimizing energy loss within these networks is vital for both economic viability and environmental sustainability. Consequently, radial configurations cannot be chosen arbitrarily; they must be designed to ensure feasibility and to optimize energy loss (cost of operation).

Optimal radial reconfiguration problems are NP-hard problems, primarily due to the exponential growth in possible configurations as the number of distribution links increases. Specific instance (1) is often cast as Mixed-Integer Non-Linear Programming (MINLP) because of problem-specific side constraints, but for the purposes of this paper we focus on this linear abstraction to address the salient complexities associated with modeling (1b). These problems remain computationally intensive, often requiring extensive computational time and lacking guarantees of optimality [3].

To address these challenges, this paper constructs a polynomial-time solution for (1) by leveraging the graph-like characteristics of distribution systems and how potential flows naturally navigate through a network. Our algorithm uses a greedy radial construction process starting from source nodes, incrementally adding edges while considering the flow across constructed components and the demanded output of the remaining nodes to reach. We draw inspiration from the similarities between electric flow in power networks and random walks [4], developing a novel ‘sampling’ method222Although our radial configuration construction is deterministic, we use ‘sampling’ as a conceptual analogy. for constructing radial configurations. In the random walk approach to describing electricity distribution in a given network, a weight proportional to the inverse of the resistance along the corresponding link in the power network is assigned to each link. This creates a notion of the edge weights being the conductance of the edge. Just as electricity flows through paths of least resistance, a random walk probabilistically selects paths based on transition probabilities influenced by edge weights.

Our method assigns weights to edges based on cost and downstream output, ensuring flow distribution aligns with network requirements and effectively delivers a radial configuration that meets demand. This methodology ensures the process aligns with both the physical properties of flow and the optimization constraints of the problem, enabling the efficient identification of feasible and near-optimal radial configurations in polynomial time. Our particular innovation is incorporating a mechanism (Net-Concad function explained in Section II-C) in our incremental ‘sampling’ process that addresses the shortsightedness of greedy selections by informing the process of the comprehensive demand of the remaining nodes. Numerical examples demonstrate the effectiveness of our proposed algorithm.

Refer to caption Refer to caption Refer to caption
(a) 𝒢D\mathcal{G}_{D} (b) MST (c) 𝒢(𝒱D,𝒮)\mathcal{G}(\mathcal{V}_{D},\mathcal{S}^{\star})
Figure 2: Example where radial distribution constructed from MST (plot (b)) is not the minimum radial configuration, 𝒢(𝒱D,𝒮)\mathcal{G}(\mathcal{V}_{D},\mathcal{S}^{\star}), (plot(c)). This phenomenon is due to the quadratic nature of the cost; let the demand at each consumer be dd and the generator node, highlighted in bold, can supply input 5d5d, in network (b) the cost is 1(d)2+5(4d)2=81d21\cdot(d)^{2}+5\cdot(4d)^{2}=81d^{2}, meanwhile in network (c) the cost is 5(2d)2+3(3d)2=47d25\cdot(2d)^{2}+3\cdot(3d)^{2}=47d^{2}.
Refer to caption Refer to caption Refer to caption
(a) 𝒢\mathcal{G} (b) MST (c) MSF
Figure 3: Example where MSF results is a better outcome than MST.

Related work: Several methods in the literature, especially in power networks applications, leverage topological properties to address the reconfiguration problem [5]. For example, [6] [7] use spectral clustering followed by local greedy search to identify radial configurations. In [8], the reconfiguration problem is linked to the maximum flow problem, based on Ford-Fulkerson’s work [9], which has been extensively studied in both single- and multi-source contexts [10], [11], [12]. These approaches often include a repair procedure for unfeasible solutions, which can be inefficient. While some methods address minimum-cost distribution, radiality remains a critical constraint [13], and cycle-breaking methods used to tackle it offer limited guarantees for large graphs [14]. Other approaches, such as those based on the minimum spanning tree (MST) problem, face challenges due to the constraints of the reconfiguration problem, making the MST approach NP-hard in this context (see Fig. 2). Moreover, although algorithms like Kruskal’s or Prim’s [15] can find MSTs in polynomial time, they lose their optimality when multiple sources are involved, note that the minimum spanning forest (MSF) is not necessarily a subset of the MST (see Fig. 3).

Refer to caption Refer to caption Refer to caption
(a) Original graph 𝒢0\mathcal{G}_{0}. (b) Pre-processor output 𝒢P\mathcal{G}_{P}. (c) Islander splits 𝒢P\mathcal{G}_{P}, creating 𝒢1\mathcal{G}^{1} and 𝒢2\mathcal{G}^{2}.
Refer to caption Refer to caption Refer to caption
(d) Net-Concad creates 𝒢¯1,𝒢¯2\bar{\mathcal{G}}^{1},\bar{\mathcal{G}}^{2} for the sub-graphs given in plot (b). (e) 𝒢2\mathcal{G}^{2} after multiple sampling. (f) Net-Concad output when its input graph in plot (e).
Figure 4: Demonstration of how Pre-processor,Islander and Net-Concad function. Filled solid nodes represent sources while others represent the sinks. The number next to the nodes show corresponding pip_{i}. In plot (b) p9p_{9} and p8p_{8} are adjusted to reflect, respectfully, excess input to deliver through node 9 to 𝒢p\mathcal{G}_{p} and extra demand at node 88 to supply to the removed pendent node 1111. In plot (c), after partitioning the graph, node 11 assumes different roles in each sub-graph. In plot (d) and (f) dashed circles represent super nodes. In plot (e), 𝒯1=𝒢({9},{})\mathcal{T}_{1}=\mathcal{G}(\{9\},\{\}) and 𝒯2=𝒢({2,8,10},(28),(810))\mathcal{T}_{2}=\mathcal{G}(\{2,8,10\},(2\to 8),(8\to 10)); note that here, Sampler has removed edge (2,10)(2,10) to avoid cycle.

II Algorithm design

Our proposed algorithm follows a greedy structure, typical of MST algorithms. Starting from an empty edge set 𝒮\mathcal{S}, we iteratively add edges connecting the nodes, guided by a heuristic to ensure feasibility. Inspired by the similarity between flow in distribution networks and random walks [4], we use a dual graph where edge weights represent the inverse of distribution costs. Our random walk starts at source nodes, assigning weights (intuitively interpreted as probabilities) to edges and adding the one with the highest probability of traversal to the growing forest.

We introduce some preliminary steps to sampling to compensate shortsightedness in greedy decision making algorithms by reducing the set of possible edges to select at each iteration. The first step is implementing the Pre-processor function which is followed by the Islander function to simplify the search space. Then, we apply sequentially Net-Concad and Sampler functions for finite number of times to construct the radial configuration. These four functions constitute the elements of our proposed algorithm, which we call FORWARD as defined in the title of the paper. These functions are explained one by one below. Before that we introduce some notations. We define the input vector 𝐩\mathbf{p}, associated with the nodes 𝒱D\mathcal{V}_{D}. This vector will be updated at each iteration of the algorithm, thus we denote it by 𝐩t\mathbf{p}^{t} at each iteration tt. We initialize at pi0=di<0p_{i}^{0}=-d_{i}<0 for i𝒱ci\in\mathcal{V}_{c} and pi0=gi>0p_{i}^{0}=g_{i}>0 if i𝒱gi\in\mathcal{V}_{g}. In what follows, we define the operator 𝒱(𝒮)\mathcal{V}(\mathcal{S}) as the nodes of the sampled edge set 𝒮\mathcal{S}, (𝒱i)\mathcal{E}(\mathcal{V}_{i}) as the set of edges in D\mathcal{E}_{D} interconnecting nodes in 𝒱i\mathcal{V}_{i} and 𝒩(𝒱i)\mathcal{N}(\mathcal{V}_{i}) as the set of nodes connected to nodes in 𝒱i\mathcal{V}_{i}. Also, (ij)(i\to j) denotes a directed edge indicating flow from node ii to jj. Given a directed edge set 𝒮\mathcal{S}, 𝒰(𝒮)\mathcal{U}(\mathcal{S}) returns the undirected edge version of 𝒮\mathcal{S}.

II-A Pre-processor

Distribution networks often exhibit a small-world graph structure [16], which implies the presence of numerous nodes with low degree of connectivity. Consequently, this structure suggests that some radial sub-graphs are likely part of the original network 𝒢0=𝒢D\mathcal{G}_{0}=\mathcal{G}_{D}. It is important to note that the edges of any radial sub-graph within 𝒢0\mathcal{G}_{0} conforms a unique solution, see Section III, so it is more efficient to aggregate them together. To address this, we introduce the Pre-processor function, which removes these trivially must-sampled components from the distribution network and adds them to the growing 𝒮\mathcal{S}.

The Pre-processor function, described in Algorithm 1, takes as input a graph 𝒢0\mathcal{G}_{0} and the associated input vector of the nodes, 𝐩0\mathbf{p}^{0}. Then, it samples every edge connecting single degree nodes, so-called pendant nodes (e.g., edges (8,11)(8,11), (9,12)(9,12), (12,13)(12,13), (3,14)(3,14), (3,15)(3,15) and (9,3)(9,3) in Fig. 4), and adds these edges to 𝒮\mathcal{S}. Once these edges and nodes are added to the solution set 𝒮\mathcal{S}, Pre-processor removes the pendant nodes and their connecting edges, redistributes their input/output back to the parent nodes, and repeats the process until no pendant nodes remain in the updated graph. The result of implementing the Pre-processor function on the network in Fig. 4 is shown in Fig. 4. After the network is simplified by Pre-processor, all nodes in the resulting graph 𝒢P\mathcal{G}_{P} are at least 2-connected.

Algorithm 1 Pre-Processor
1:Bidirectional graph 𝒢0=𝒢D\mathcal{G}_{0}=\mathcal{G}_{D}, input vector 𝐩0\mathbf{p}^{0}
2:𝒮\mathcal{S}\leftarrow\emptyset
3:PD\mathcal{E}_{P}\leftarrow\mathcal{E}_{D}
4:while exists pendant nodes do
5:  Pick a pendent edge (i,j)P(i,j)\in\mathcal{E}_{P}, let ii denote the pendent node
6:  if pi0p_{i}\geq 0 then
7:   𝒮0𝒮0{(ij)}\mathcal{S}_{0}\leftarrow\mathcal{S}_{0}\cup\{(i\rightarrow j)\}
8:  else
9:   𝒮0𝒮0{(ji)}\mathcal{S}_{0}\leftarrow\mathcal{S}_{0}\cup\{(j\rightarrow i)\}
10:  end if
11:  pj=pj+pip_{j}=p_{j}+p_{i}
12:  PP{(i,j)}\mathcal{E}_{P}\leftarrow\mathcal{E}_{P}\setminus\{(i,j)\}
13:end while
14:𝒢P𝒢(𝒱(P),P)\mathcal{G}_{P}\leftarrow\mathcal{G}(\mathcal{V}(\mathcal{E}_{P}),\mathcal{E}_{P})
15:Reshape 𝐩\mathbf{p} to include only the elements corresponding to nodes of 𝒢P\mathcal{G}_{P}
16:return 𝒮0\mathcal{S}_{0}, 𝒢P\mathcal{G}_{P}, 𝐩\mathbf{p}

II-B Islander

Islander, described in Algorithm 2, takes as input graph 𝒢P\mathcal{G}_{P} generated by Pre-processor, the source nodes in 𝒢P\mathcal{G}_{P} and its input vector 𝐩\mathbf{p}, and proceeds to partition the graph into disjoint sub-graphs induced by removing the articulation source nodes 333An articulation node in a graph is a node which, if removed, graph is disconnected. A bi-connected graph is a graph with no articulation nodes.. The results are 𝒢\mathcal{G}^{\ell}, {1,,L}\ell\in\{1,\cdots,L\}, where LL is the number of sub-graphs obtained in the process. The input vector 𝐩\mathbf{p} of each articulation super node will then be adjusted to balance the overall input-output in each sub-graph; the result of this process can change the role of the super nodes from a source to sink or vice versa. For example, after feeding the input graph in Fig. 4 whose source nodes are 11, 22 and 99, to Islander, the function partitions the graph into two sub-graphs as shown Fig. 4, in which the role of node 11 in each graph is different.

Islander enables us to search for radial configuration in each sub-graph in parallel, speeding up the process. Note that if two sub-graphs are only connected through an articulation node, and if both sub-graphs present a radial configuration, the overall graph remains radial.

Algorithm 2 Islander
1:A graph 𝒢P\mathcal{G}_{P}, source nodes 𝒱g\mathcal{V}_{g}, input vector 𝐩\mathbf{p}
2:Find nodes in 𝒱P𝒱g\mathcal{V}_{P}\cap\mathcal{V}_{g} which are articulation nodes of 𝒢P\mathcal{G}_{P}
3:Partition 𝒢P\mathcal{G}_{P} at articulation nodes creating 𝒢=𝒢(𝒱,)\mathcal{G}^{\ell}=\mathcal{G}(\mathcal{V}^{\ell},\mathcal{E}^{\ell}), {1,,L}\ell\in\{1,\cdots,L\}
4:Define an input vector 𝐩\mathbf{p}^{\ell}, which contains the elements of 𝐩\mathbf{p} that corresponds to nodes in 𝒢\mathcal{G}^{\ell}, {1,,L}\ell\in\{1,\cdots,L\}.
5:Compute and update pip_{i}^{\ell} for each articulation point ii in each partition \ell
6:𝒱g={i𝒱|pi>0}\mathcal{V}_{g}^{\ell}=\{i\in\mathcal{V}^{\ell}|p_{i}^{\ell}>0\},   {1,,L}\ell\in\{1,\cdots,L\}
7:return (𝒢1,𝒱g1,𝐩1),,(𝒢L,𝒱gL,𝐩L)(\mathcal{G}^{1},\mathcal{V}_{g}^{1},\mathbf{p}^{1}),\cdots,(\mathcal{G}^{L},\mathcal{V}_{g}^{L},\mathbf{p}^{L})

II-C Net-Concad

Net-Concad, described in Algorithm 3, takes as input a graph 𝒢P\mathcal{G}^{\ell}_{P}, the existing sampled radial polytrees 𝒯1,,𝒯b\mathcal{T}_{1},\cdots,\mathcal{T}_{b} in 𝒢P\mathcal{G}^{\ell}_{P} and its input vector 𝐩\mathbf{p}^{\ell}. The existing radial polytrees, starting from the source nodes, are incrementally built by the Sampler to channel the input flow from the sources to the sinks. Here, bb represents the number of polytrees already formed in the graph, which will be, at most, equal to the number of sources in the graph. An important notion we employ is that all nodes within a polytree have positive input to supply. Therefore, based on the flow vector 𝐩t\mathbf{p}^{t}, at iteration tt some nodes can assume “pseudo” roles. See Fig. 4 for an example of input graph and existing polytrees in it.

After partitioning the graph by Islander, Net-Concad proceeds to condensing each sub-graph 𝒢¯\bar{\mathcal{G}}^{\ell} by removing the formed polytrees (grouped in super source nodes) and turning the resulted connected components [17] into super sink nodes as shown in Fig. 4 and Fig. 4. In this new configuration we can assume, without loss of generality, that each sub-graph is a bi-connected and quasi-bipartite graph in terms of super source nodes as one group and super sink nodes as the other.

Definition 2

A quasi-bipartite graph is a graph where all its vertex can be divided into two disjoints subsets such as most of the edges exists between these subsets. However, conversely to bipartite graphs, few edges may occur within one of the subsets.

Algorithm 3 Net-Concad
1:A graph 𝒢\mathcal{G}^{\ell}
2:Define 𝒱g{i:pi>0}\mathcal{V}_{g}\leftarrow\{i:p_{i}>0\} and 𝒱c{i:pi0}\mathcal{V}_{c}\leftarrow\{i:p_{i}\leq 0\}, i𝒱\forall i\in\mathcal{V}^{\ell}
3:Define 𝒢g𝒢(𝒱g,(𝒱g))\mathcal{G}_{g}\leftarrow\mathcal{G}(\mathcal{V}_{g},\mathcal{E}(\mathcal{V}_{g})) and 𝒢c𝒢(𝒱c,(𝒱c))\mathcal{G}_{c}\leftarrow\mathcal{G}(\mathcal{V}_{c},\mathcal{E}(\mathcal{V}_{c}))
4:𝒢¯g,𝒢¯c\bar{\mathcal{G}}_{g},\bar{\mathcal{G}}_{c}\leftarrow Run [17] over 𝒢g\mathcal{G}_{g} and 𝒢c\mathcal{G}_{c}
5:Re-connect sub-graphs 𝒢¯P𝒢(𝒱¯g𝒱¯c,D{(𝒱g𝒱c)})\bar{\mathcal{G}}_{P}\leftarrow\mathcal{G}(\bar{\mathcal{V}}_{g}\cup\bar{\mathcal{V}}_{c},\mathcal{E}_{D}\setminus\{\mathcal{E}(\mathcal{V}_{g}\cup\mathcal{V}_{c})\})
6:return 𝒢¯\bar{\mathcal{G}}^{\ell}

It is important to note that each sub-graph 𝒢\mathcal{G}^{\ell} for {1,,L}\ell\in\{1,\ldots,L\} generated by Islander is irreducible; specifically, the super source nodes introduced at each iteration of Net-Concad do not become articulation points.

Lemma II.1

Each partitioned sub-graph 𝒢¯\bar{\mathcal{G}}^{\ell} is an irreducible graph.

Proof:

Since each 𝒢¯\bar{\mathcal{G}}^{\ell} is a 2-connected graph and growing the super source nodes does not affect this property, the graph does not include an articulation super source and thus it is irreducible. ∎

II-D Sampler

In order to choose which is the “most probable” edge to sample from a set of candidates we proceed with calling Sampler function. The Sampler assumes that some weight wi,jw_{i,j} is assigned to each candidate edge, which gets updated after sampling. These weights are defined by the problem context and the physical specificity of the flow. We give an example case in Section IV, where the underlying problem is an electric power distribution.

In order to keep the growing polyforest in the feasible domain, Sampler needs to guarantee the available flow in the network does not get stuck in it. Therefore it operates by a priority queue qq which first samples edges connecting pendant sources in each partition. Then, it also prioritizes edges which connect nodes which can provide the output demand of its children, so that the balance pi+pj0p_{i}^{\ell}+p_{j}^{\ell}\geq 0. Finally, to prevent the creation of cycles, taking inspiration from Loop-erase Random-Walk algorithm [18], we implement an edge-delete procedure (line 4 in Algorithm 4) where, prior to sample any edge, the Sampler looks for edges in ¯\bar{\mathcal{E}}^{\ell}, whose nodes are already included in one of the existing 𝒯i\mathcal{T}_{i}^{\ell}.

Algorithm 4 Sampler
1:Sub-graph partition 𝒢¯\bar{\mathcal{G}}^{\ell}, flow vector 𝐩\mathbf{p}^{\ell} and 𝒮\mathcal{S}^{\ell}
2:Initiate priority queue qq\leftarrow\emptyset
3:Compute weight e\forall e\in\mathcal{E}^{\ell} and add them to qq
4:Sort qq in increasing order.
5:Edge-delete procedure: delete all edges with both endpoints in 𝒱(𝒮)\mathcal{V}(\mathcal{S}^{\ell})
6:Push all edges (ij)(i\rightarrow j) such that pi+pj0p_{i}^{\ell}+p_{j}^{\ell}\geq 0 to the top of qq
7:Push all edges (ij)(i\rightarrow j) such that |𝒩(i)|=1|\mathcal{N}(i)|=1 to the top of qq
8:epop from qe^{\star}\leftarrow\textup{pop from }q
9:return ee^{\star}

II-E FORWARD

After Sampler is done, FORWARD, presented in Algorithm 5, proceed to update the information of the network. Note that the process is an adaptive procedure where the flow remaining in the system must decrease as sampling. Indeed, flow decreases proportionally to the output of the new node added to a polytree. Then Net-Concad and Sampler are applied again till convergence when all nodes are connected to a polytree, which will happen after N1N-1 iterations at most.

Remark II.1 (Complexity of FOWARD)

Notice that Pre-processor has a complexity of 𝒪(n)\mathcal{O}(n), Net-Concad runs in 𝒪(m+n)\mathcal{O}(m+n) which obeys the complexity of the contraction algorithm, which the same complexity as Islander, and, finally, Sampler runs over the edges that belong to the neighbourhood of the growing forest which is, in the worst-case scenario, all the mm edges of D\mathcal{E}_{D}, so that 𝒪(m)\mathcal{O}(m). Therefore, proposed procedure has a complexity of 𝒪(n(m+n))\mathcal{O}(n\cdot(m+n)). As distribution networks is a small-world graph, the number of edges is close to the number of nodes m=cnm=c\cdot n, therefore, complexity can be reduced to 𝒪(n2)\mathcal{O}(n^{2}) in the worst case scenario, which is polynomial time. However, it must be noticed that after Pre-Processor the remaining graph will have less than nn nodes and that Islander will partition the graph to even smaller sub-graphs which can be solved in parallel. Therefore, real implementation complexity can be significantly reduced. \Box

Algorithm 5 FORWARD
1:Bidirectional graph 𝒢0=𝒢D\mathcal{G}_{0}=\mathcal{G}_{D}, input vector 𝐩0\mathbf{p}^{0}
2:𝒮\mathcal{S}\leftarrow\emptyset,
3:𝒮0,𝒢P,𝐩\mathcal{S}^{0},\mathcal{G}_{P},\mathbf{p}\leftarrow Pre-Processor(𝒮,𝒢0,𝐩0\mathcal{S},\mathcal{G}_{0},\mathbf{p}_{0})
4:(𝒢1,𝒱g1,𝐩1),,(𝒢L,𝒱gL,𝐩L)(\mathcal{G}^{1},\mathcal{V}_{g}^{1},\mathbf{p}^{1}),\cdots,(\mathcal{G}^{L},\mathcal{V}_{g}^{L},\mathbf{p}^{L})\leftarrowIslander(𝒢P,𝐩\mathcal{G}_{P},\mathbf{p})
5:for each partition {1,,L}\ell\in\{1,\cdots,L\} do
6:  𝒮\mathcal{S}^{\ell}\leftarrow\emptyset
7:  𝒯i=𝒢({i},{})i𝒱g\mathcal{T}^{\ell}_{i}=\mathcal{G}(\{i\},\{\})~~\forall i\in\mathcal{V}^{\ell}_{g}
8:  while |𝒮||𝒱|1|\mathcal{S}^{\ell}|\leq|\mathcal{V}^{\ell}|-1 do
9:   𝒢¯\bar{\mathcal{G}}^{\ell}\leftarrowNet-Concad(𝒢\mathcal{G}^{\ell})
10:   ee^{\star}\leftarrow Sampler(𝒢¯,𝐩,𝒮\bar{\mathcal{G}}^{\ell},\mathbf{p}^{\ell},\mathcal{S}^{\ell})
11:   𝒮𝒮{e}\mathcal{S}^{\ell}\leftarrow\mathcal{S}^{\ell}\cup\{e^{\star}\}
12:   Update 𝐩\mathbf{p}^{\ell} and corresponding 𝒯i\mathcal{T}^{\ell}_{i}
13:  end while
14:end for
15:𝒮=0L𝒮\mathcal{S}\leftarrow\bigcup_{\ell=0}^{L}\mathcal{S}^{\ell}
16:return Radial configuration 𝒢(𝒱(𝒮),𝒮)\mathcal{G}(\mathcal{V}(\mathcal{S}),\mathcal{S})

III Feasibility analysis

To find a feasible radial distribution configuration from \mathcal{F} that can channel the inputs from the sources to the sinks and meet their demanded output is a non-trivial task. In what follows, we show that the FORWARD algorithm is guaranteed to generate such a feasible radial distribution configuration because of the inherent structure of the condensed dual graph. We start our demonstration with some auxiliary lemmas and remarks.

Lemma III.1

Any tree graph (undirected) admits a unique flow distribution from its sources to its sinks nodes as long as the total input meets the total demand, i.e., the (directed) polytree generated to deliver the input from the sources to the sinks is unique.

Proof:

For a connected acyclic graph with nn nodes, such as a tree graph, the incident matrix is full column rank (n1)(n-1). Therefore, the null space of the incident matrix is trivial and thus there is a unique flow vector that satisfies the flow conservation constraint matrix equation. ∎

Lemma III.1 asserts that in the sub-graphs separated from 𝒢D\mathcal{G}_{D} by the Pre-Processor the (oriented) radial configuration to deliver the inputs to the sinks exists and is unique. Therefore, polytree grown by Pre-Processor belongs to all the configurations that are in the feasible set of optimization problem (1), including the optimal configuration.

Note that the Islander function will not affect the sampling procedure as it re-distributes input vector 𝐩\mathbf{p} without disturbing the flow balance. In a similar way, applying Net-Concad to a graph 𝒢\mathcal{G}^{\ell} will not modify the sampling space. By construction, edges on the dual condensed graph, created by Net-Concad, ¯\bar{\mathcal{E}}^{\ell} are all the existing edges in P\mathcal{E}_{P}. Consequently, feasibility is guaranteed if we demonstrate that the FORWARD can always construct a feasible radial configuration in each 𝒢\mathcal{G}^{\ell} that delivers inputs in the sub-graph to the sinks (i.e., inputs meet the demands at the sinks).

The first result below shows that any digraph created by Sampler function through iterations is a polyforest (a radial configuration without a cycle).

Lemma III.2

Any 𝒢(𝒱(𝒮),𝒮)\mathcal{G}(\mathcal{V}(\mathcal{S}^{\ell}),\mathcal{S}^{\ell}), {1,,L}\ell\in\{1,\cdots,L\} generated by FORWARD is always a radial configuration.

Proof:

The proof hinges on the fact that each edge is sampled at most once by Sampler, and the edge-delete procedure within Sampler prevents the formation of cycles.∎

The following lemma shows that any radial digraph created by FORWARD will visit every node in the graph.

Lemma III.3

FORWARD radial configuration will contain all nodes from a sub-graph 𝒢(𝒱,)\mathcal{G}^{\ell}(\mathcal{V}^{\ell},\mathcal{E}^{\ell}), i.e., 𝒱(𝒮)=𝒱\mathcal{V}(\mathcal{S}^{\ell})=\mathcal{V}^{\ell}.

Proof:

Given that the edge-delete procedure only removes edges between nodes within the sampled polyforest, nodes that have not been connected to any polytree will retain all of their edges in \mathcal{E}^{\ell}. Consequently, a node can only remain isolated if none of the connected polytrees can provide sufficient input flow to satisfy the output demanded by the node. Assume there exists a node j𝒱¯j\in\bar{\mathcal{V}}^{\ell} (node 2 in Fig. 5) whose output cannot be supplied by any of its adjacent connected polytrees in 𝒩(j)\mathcal{N}(j) (nodes 1, 3 in Fig. 5). Since 𝒢¯\bar{\mathcal{G}}^{\ell} is bi-connected, each super source node i𝒩(j)i\in\mathcal{N}(j) is connected to super sink nodes distinct from jj (e.g., 1 to 4 and 3 to 6 in Fig. 5). To maintain overall flow balance in 𝒢¯\bar{\mathcal{G}}^{\ell}, at least one super source node uu in the partition must have sufficient input flow to meet the output of its neighbors (node 5 in Fig. 5). Moreover, due to the bi-connectedness of 𝒢¯\bar{\mathcal{G}}^{\ell}, there exists a super sink node vv such that v𝒩(i)𝒩(u)v\in\mathcal{N}(i)\cap\mathcal{N}(u) (nodes 4, 6 in Fig. 5). By definition, |pi||pv||pu||p_{i}^{\ell}|\leq|p_{v}^{\ell}|\leq|p_{u}^{\ell}|.

Since 𝒢¯\bar{\mathcal{G}}^{\ell} is quasi-bipartite, if ii is not receiving extra input to meet output in jj, it is because flow from uu cannot pass through ww. This scenario arises only if the edge (iv)(i\rightarrow v) is sampled in 𝒮\mathcal{S}^{\ell} before (uv)(u\rightarrow v), turning vv into a “pseudo” source. For instance, in Fig. 5, if 141\rightarrow 4 or 363\rightarrow 6 were sampled before 545\rightarrow 4 or 565\rightarrow 6, this contradicts the priority queue qq in Sampler, which prioritizes polytrees with excess input flow with respect to its neighbours (node 5 in Fig. 5). Thus, by contradiction, this situation cannot occur, ensuring that FORWARD successfully connects all nodes in 𝒱¯\bar{\mathcal{V}}^{\ell}. ∎

In light of the aforementioned, we can conclude the demonstration by noting that the solution provided by FORWARD will be a feasible radial configuration for flow distribution.

Refer to caption Refer to caption Refer to caption
(a) 𝒢{\mathcal{G}}^{\ell} (b) 1st1^{\textup{st}} step (c) 2nd2^{\textup{nd}} step
Refer to caption Refer to caption Refer to caption
(d) 3rd3^{\textup{rd}} step (e) 4th4^{\textup{th}} step (f) 5th5^{\textup{th}} step
Figure 5: Illustration of the sampling procedure. In b) and c), note that priority queue in Sampler avoids the flow blockage.

IV Case study

We demonstrated the efficacy of the proposed FORWARD algorithm in solving an optimal power distribution problem and discuss how edge weights (used in line 4 of Sampler, Algorithm 4) can be selected for this problem considering the physical nature of the flow in power networks. It is shown in the literature, single-phase direct current (DC) simplifications can be used to approximate the real three-phase alternating current (AC) flow problem, casting the optimal power flow problem as (1). We refer the readers to [19] for specific details of these simplifications.

In a power network, the demand at the sinks (loads) and the input in the sources (generators) are power. The flow in edges is characterized by the demand of the nodes in each distribution line following Ohm’s law. In power network systems, Ci,jC_{i,j} in the cost function of (1) is the resistance Ri,jR_{i,j} along the edge (i,j)(i,j).

Weight design: Given a radial configuration, the flow xi,jx_{i,j} at edge (ij)(i\to j) is defined as a function of the power demand dijd_{i\to j} of all the loads in power line extending from the source and containing edge (ij)(i\to j) and the voltage in node jj. Therefore, the cost due to flow through (ij)(i\to j) is

f(ij)=Ri,j(dijvj)2.f_{(i\to j)}=R_{i,j}\cdot(\frac{d_{i\to j}}{v_{j}})^{2}.

FORWARD constructs the radial configuration by iteratively adding the edges. Therefore, the power line connecting the nodes is not known in advance. Consequently, to have a cost-aware edge choice, the greedy selection process must estimate dijd_{i\to j}. For power networks we propose to approximate the energy lost due to flow across an edge (ij)(i\to j), when we want to sample this edge and add it to an existing radial configuration (power line) 𝒯k\mathcal{T}^{\ell}_{k}, to use

f^(ij)=Ri,jpj2+h~(𝒯k),\begin{split}\hat{f}(i\to j)&=R_{i,j}\cdot p_{j}^{2}+\widetilde{h}(\mathcal{T}^{\ell}_{k}),\end{split} (2)

where pjp_{j} is the power demand at node jj and h~(i)\widetilde{h}(i) is the accumulated cost of power line 𝒯k\mathcal{T}^{\ell}_{k}. Thus, a relevant edge weight (probability) for the random walk could be computed as

wi,j=piRi,jdj2+h~(𝒯k)w_{i,j}=\frac{p_{i}}{R_{i,j}\cdot d_{j}^{2}+\widetilde{h}(\mathcal{T}^{\ell}_{k})} (3)

where pip_{i} is the input vector characterized as the power remaining in node ii which decreases in each step by subtracting the power demand on jj. Therefore, the weights on each edge are dynamically changing in function of the steps taken. We point out here that of use of transition probability for (3) is with a degree of abuse of notation as in function of the parameters wi,jw_{i,j} can be greater than 11. Indeed, wi,jw_{i,j} is normalized at each iteration considering all the edge candidates to be sampled at time tt.

Numerical demonstration: In order to show computational benefit of using FORWARD in producing a feasible radial configurations for power network problems and the optimality gap of the algorithm, we consider 66 different power distribution networks. Specifically, three IEEE graphs have been used: IEEE 1313 with 22 sources, IEEE 1818 with 22 sources and IEEE 3333 with 33 sources. Note that, as mentioned before, these IEEE graphs have been pre-processed to a single-phase DC network structure. Besides, to test scalability, three random distribution systems have been generated following Watts–Strogatz mechanism [20] in order to create small-world graph structures. These graphs are named: WS 120120, WS 240240 and WS 400400, where their number indicates the number of nodes in each network. Networks WS 120120 and WS 240240 where designed with 1010 sources and WS 400400 has 2020 source nodes. We have modeled our numerical problem in PowerDistributionModel (PMD) framework [21] from Los Alamos National Laboratory, which is coded in Julia. This framework uses Knitro, from Artelys, to solve the MINLP. This numerical study was conducted on a MacBook Air with an M3 chip and 2424 GB of RAM. The simulation results are shown in Table I. In this table, power loss is in giga-watts (GW). In time column, * stands for processes which has been manually stopped after certain CPU Time, and - stands for situations where a solution could not be found after 33h of computation.

According to Table I, Knitro was only able to return a solution for small-sized networks. For these cases, the CPU time of Knitro is significantly more than the CPU time used to implement FORWARD. Knitro (like other commercial solvers) uses heuristics to warm up the process within the feasible domain. Notably, as the network size increases, these heuristics tend to struggle to find a proper initialization within polynomial time due to the large dimension of the combinatorial space. This often results in prolonged CPU times or even the inability to find an initial point. In contrast, FORWARD was able to construct a feasible radial configuration for all cases in noticeably low time, even for a network of 400 nodes.

The results shown in Table I for the cost indicate that FORWARD attains a promising optimality gap. This could be attributed to the physically flow-aware nature of designing the weights and the sampler mechanism of FORWARD. In our future work, we plan to formally characterize the optimality gap of FORWARD.

TABLE I: Comparison between Knitro and FOWARD.
Knitro FORWARD
Graph cost CPU time cost CPU time
IEEE 11 1.19e-7 118.21 1.19e-7 1.81
IEEE 18 1.79e-7 141.52 1.79e-7 1.53
IEEE 33 3.18e-09 500* 9.19e-09 5.2
WS 120 - - 1.42e-11 26.91
WS 240 - - 4.39e-9 130.63
WS 400 - - 2.83e-9 217.72

V Conclusions

We presented an algorithm for finding a feasible radial reconfiguration in distribution networks. Promising results from numerical experimentation allows us to believe the proposed method can serve as an effective warm-up strategy for iterative solvers refining solutions toward optimality. Also, it should be emphasized that despite the algorithm is designed for a simplified transportation problem, it can be seen it handles extended problems with complex physics constraints as they are power systems reconfiguration. For future work, it will be shown how, indeed, proposed problem works as an abstraction over other problems with non-linear constraints.

References

  • [1] R. Lyons and Y. Peres, Minimal Spanning Forests, p. 388–409. Cambridge Series in Statistical and Probabilistic Mathematics, Cambridge University Press, 2017.
  • [2] S. H. Dolatabadi, M. Ghorbanian, P. Siano, and N. D. Hatziargyriou, “An enhanced ieee 33 bus benchmark test system for distribution system studies,” IEEE Transactions on Power Systems, vol. 36, no. 3, pp. 2565–2572, 2021.
  • [3] J. Dong, S. Han, X. Shao, L. Tang, R. Chen, L. Wu, C. Zheng, Z. Li, and H. Li, “Day-ahead wind-thermal unit commitment considering historical virtual wind power data,” Energy, vol. 235, p. 121324, Nov. 2021.
  • [4] P. G. Doyle and J. L. Snell, “Random walks and electric networks,” 2000.
  • [5] A. Clark, “A submodular optimization approach to the metric traveling salesman problem with neighborhoods,” in 2019 IEEE 58th Conference on Decision and Control (CDC), pp. 3383–3390, 2019.
  • [6] A. Khodabakhsh, G. Yang, S. Basu, E. Nikolova, M. C. Caramanis, T. Lianeas, and E. Pountourakis, “A submodular approach for electricity distribution network reconfiguration,” EESS, 2017.
  • [7] U. von Luxburg, “A tutorial on spectral clustering,” Statistics and Computing, vol. 17, no. 4, pp. 395–416, 2007.
  • [8] D. R. Karger, “Minimum cuts in near-linear time,” 1998.
  • [9] T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, Introduction to Algorithms. MIT Press and McGraw-Hill, second ed., 2001.
  • [10] P. Christiano, J. A. Kelner, A. Madry, D. A. Spielman, and S.-H. Teng, “Electrical flows, laplacian systems, and faster approximation of maximum flow in undirected graphs,” 2010.
  • [11] J. A. Kelner, Y. T. Lee, L. Orecchia, and A. Sidford, “An almost-linear-time algorithm for approximate max flow in undirected graphs, and its multicommodity generalizations,” in Proceedings of the Twenty-Fifth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA ’14, (USA), p. 217–226, Society for Industrial and Applied Mathematics, 2014.
  • [12] G. Borradaile, P. N. Klein, S. Mozes, Y. Nussbaum, and C. Wulff-Nilsen, “Multiple-source multiple-sink maximum flow in directed planar graphs in near-linear time,” SIAM Journal on Computing, vol. 46, p. 1280–1303, Jan. 2017.
  • [13] G. Guex, “Interpolating between random walks and optimal transportation routes: Flow with multiple sources and targets,” Physica A: Statistical Mechanics and its Applications, vol. 450, p. 264–277, May 2016.
  • [14] L. Chen, R. Kyng, Y. P. Liu, R. Peng, M. P. Gutenberg, and S. Sachdeva, “Maximum flow and minimum-cost flow in almost-linear time,” 2022.
  • [15] S. R. Tate, “Proof of correctness for prim’s algorithm, handout 11,” Nov. 2016. Class Handout, CSC 330: Advanced Data Structures.
  • [16] B. Hartmann and V. Sugár, “Searching for small-world and scale-free behaviour in long-term historical data of a real-world power grid,” Scientific Reports, vol. 11, Mar. 2021.
  • [17] R. E. Tarjan and U. Zwick, “Finding strong components using depth-first search,” 2022.
  • [18] G. F. Lawler, “A self-avoiding random walk,” Duke Mathematical Journal, vol. 47, Sept. 1980.
  • [19] D. M. Fobes, H. Nagarajan, and R. Bent, “Optimal microgrid networking for maximal load delivery in phase unbalanced distribution grids: A declarative modeling approach,” IEEE Transactions on Smart Grid, vol. 14, no. 3, pp. 1682–1691, 2023.
  • [20] D. J. Watts and S. H. Strogatz, “Collective dynamics of ‘small-world’ networks,” Nature, vol. 393, p. 440–442, June 1998.
  • [21] D. M. Fobes, S. Claeys, F. Geth, and C. Coffrin, “Powermodelsdistribution.jl: An open-source framework for exploring distribution power flow formulations,” Electric Power Systems Research, vol. 189, p. 106664, 2020.