Distributed resource coordination in networked systems described by digraphs
Introduction
We consider a multicomponent system in which a certain amount of a resource must be collectively provided by the system components. This amount of resource is known to an (outside) entity who cannot directly communicate with all components, but only with a limited number in its immediate neighborhood. The amount of resource that a component can provide is bounded from above and from below by locally known upper and lower limits, reflecting the constraints on that component’s capacity. In what we refer to as the resource coordination problem, the objective is for the components to distributively compute a feasible solution in the sense that: (i) each node contribution is within its individual (and only locally available) capacity limits; (ii) the nodes collectively provide the total amount of resource requested by the (outside) entity (also called leading node or leader); and (iii) if there is no feasible solution, each node realizes that its computed contribution is outside its capacity limits. Although our development is kept application-independent, the setting described above arises in electric power applications (see, e.g., [1]), and networking applications (see, e.g., [2]).
In our setup, system components can be thought of as nodes that can only receive/transmit information from/to neighboring nodes; the information exchange between a pair of nodes is not necessarily bidirectional. We adopt the standard assumption that the directed graph (digraph) that describes the exchange of information between nodes be strongly connected. We provide an algorithm that solves the resource coordination problem while adhering to such communication topology. In the proposed algorithm, each node maintains a set of values that are updated to be weighted linear combinations of node ’s own previous set of values and the previous set of values of nodes that transmit information to . As in distributed linear iterative algorithms for consensus (see, e.g., [3]), the collective dynamics of the proposed algorithm is described by a discrete-time transition system with no inputs and a time-varying transition matrix (also referred to as weight matrix) that takes values in some set (not necessarily finite). The key idea is for the nodes to use local information to iteratively update their weights so that (i) the weight matrix always remains column stochastic, and (ii) the right eigenvector associated with its largest eigenvalue asymptotically becomes parallel to a vector defined by the operational ranges of the nodes.
In our earlier work [1], we showed that when the communication topology between nodes is described by a connected undirected graph, the nodes can solve the resource coordination problem by taking the ratio of two (properly initialized) linear iterations with a weight matrix that is doubly stochastic and primitive; thus, each linear iteration converges to the average of its initial values (see, e.g., [3, Theorem 2-iii]). This approach could be extended to communication topologies described by strongly connected directed graphs as long as nodes can obtain a set of weights that form a doubly stochastic matrix using only local information. However, while obtaining a doubly stochastic matrix on an undirected graph using only information locally available to each node is relatively simple, this is not as straightforward on a digraph [4], [5]. Furthermore, if such an approach were to be adopted, each node would need to: (i) execute the distributed algorithm that allows the nodes to obtain a set of weights that form a doubly stochastic matrix, and (ii) execute two additional linear iterations that use the weights obtained via the algorithm in (i) to compute the necessary averages. In this paper, we show that it is not necessary to execute two additional iterations, but only one, if (instead of obtaining a set of weights that form a doubly stochastic matrix) one obtains a set of weights that form a column stochastic matrix with a specific right eigenvector associated with eigenvalue .
The paper focuses primarily on providing a distributed solution to the resource coordination problem on a strongly connected directed graph without relying on a doubly stochastic matrix; a side contribution of the paper is the distributed algorithm for obtaining a set of weights that form a column stochastic matrix with the right eigenvector associated with its largest eigenvalue aligned in a certain predetermined direction. This problem is related to the problem of matrix scaling to doubly stochastic form, which has been addressed in centralized (see, e.g., [6] and the references therein), and distributed (see, e.g., [4], [5]) settings; however, in these works, both right and left eigenvectors associated with must be parallel to the all-ones vector.
Section snippets
Problem setup
The information exchange between components (nodes) is described by a digraph , where is the vertex set (each vertex corresponds to a node), and is the edge set, where if node can receive information from node . We assume no self-loops in (i.e., for all ). All nodes that can transmit information to node are said to be in-neighbors of node and are represented by the set . The number of in-neighbors of is called the
Distributed resource coordination
Consider the resource coordination problem described in Section 2, and assume that the information exchange between components is described by a strongly connected digraph . Then, each component determines its contribution as , where , with being an auxiliary variable that node maintains and updates via Algorithm 1.
Concluding remarks
We have proposed an algorithm that solves the resource coordination problem on a digraph. In this algorithm, the nodes compute their contribution as a function of a linear iteration with weights that are updated as the algorithm progresses; in the process, the right eigenvector of the weight matrix eventually aligns with a vector defined by node capacity limits, which could potentially be exploited for security/robustness purposes.
References (8)
- et al.
Distributed strategies for generating weight-balanced and doubly stochastic digraphs
Eur. J. Control
(2012) - et al.
Methods for scaling to doubly stochastic form
Linear Algebra Appl.
(1982) - A. Domínguez-García, C.N. Hadjicostis, Coordination and control of distributed energy resources for provision of...
- et al.
Achieving proportional fairness using local information in ALOHA networks
IEEE Trans. Autom. Control
(2004)
Cited by (9)
Distributed algorithm for social cost minimization with second-order nonlinear dynamics over weight-unbalanced digraphs
2024, Systems and Control LettersA survey of distributed optimization
2019, Annual Reviews in ControlCitation Excerpt :Distributed Push-Sum Based Algorithms. Most existing discrete-time distributed algorithms for directed graphs are based on the push-sum method (Bénézit, Blondel, Thiran, Tsitsiklis, & Vetterli, 2010; Kempe, Dobra, & Gehrke, 2003; Nedić & Olshevsky, 2015) or ratio consensus (Charalambous et al., 2015; Domínguez-García & Hadjicostis, 2011; 2015; Hadjicostis & Charalambous, 2014), which relaxes the requirement of doubly stochastic mixing matrices in the distributed algorithms reviewed in Section 3.1 for undirected graphs to column stochastic matrices. In the push-sum method, each agent runs two linear iterations simultaneously with a column stochastic matrix, where the initial conditions of these two iterations are the initial estimations for the optimal solution and the vector of all ones, respectively, and the ratio of the two states converges to the initial average for strongly connected directed graphs which are not necessarily weight-balanced.
Distributed Optimal Data Allocation in Finite Time with Efficient Communication and Transmission Stopping over Dynamic Networks
2022, Proceedings of the IEEE Conference on Decision and Control