Utility systems, such as power, water, and gas networks, are significant examples of networked systems and are undergoing rapid changes. Power systems, for instance, are experiencing significant penetration of distributed energy resources and flexible load. In another realm, water distribution systems may have monitoring and control systems that aren't ideal for addressing significant disruptive events, such as natural disasters.
In one example a device includes at least one processor configured to determine, for a first controllable device in a networked system, based on a measurement of an output parameter at the first controllable device and a minimum output parameter value, an output violation value for the first controllable device. The at least one processor is further configured to determine, based on a present input value for the first controllable device, the output violation value, and an assistance requisition value that corresponds to a second device in the networked system that is communicatively coupled to the first controllable device, a target input value for the first controllable device. The at least one processor is further configured to cause the first controllable device to modify operation based on the target input value and a maximum input value for the first controllable device.
In another example a method includes determining, by a computing device comprising at least one processor, for a first controllable device in a networked system, based on a measurement of an output parameter at the first controllable device and a minimum output parameter value, an output violation value for the first controllable device. The method further includes determining, by the computing device, based on a present input value for the first controllable device, the output violation value, and an assistance requisition value that corresponds to a second device in the networked system that is communicatively coupled to the first controllable device, a target input value for the first controllable device. The method further includes causing the first controllable device to modify operation based on the target input value and a maximum input value for the first controllable device.
In another example a system includes a plurality of devices in a networked system. Each device in the plurality of devices comprises at least one processor configured to determine, based on a respective measurement of an output parameter at the device and a minimum output parameter value, a respective output violation value. The at least one processor is further configured to determine, based on a respective present input value, the respective output violation value, and an assistance requisition value that corresponds to another device in the plurality of devices that is communicatively coupled to the device, a respective target input value. The at least one processor of at least one device in the plurality of devices is further configured to modify its operation based on the respective target input value and a respective maximum input value.
The details of one or more examples are set forth in the accompanying drawings and the description below. Other features, objects, and advantages will be apparent from the description and drawings, and from the claims.
The present disclosure provides systems, devices, and methods for ripple-type control of networked physical systems. In accordance with the techniques described herein, a controllable device within a networked system may receive requests for assistance from communicatively adjacent devices in the system and operation of the controllable device may account for the needs of such other devices. In some examples, when the controllable device is unable to meet its own needs and/or those of the other devices, the controllable device may communicate its needs to communicatively adjacent devices, creating a ripple effect through the system, thereby addressing devices' needs. In other words, as further described herein, devices (also referred to herein as control agents or agents) may implement a hybrid, low-communication, saturation-driven protocol for the coordination of control agents that are distributed over a system and are allowed to communicate with peers over a communication network. In accordance with this protocol, agents act upon local readings unless and until their control resources have been depleted. Upon determining that they won't be able to sufficiently address a situation themselves, the agents send a beacon for assistance to peer agents.
This ripple-type scheme triggers communication locally only for the agents with saturated resources and is proved to converge. Moreover, under a monotonicity assumption on the underlying physical law coupling control outputs to inputs, the devised control is proved to converge to a configuration satisfying safe operational constraints if such configuration exists. The assumption is shown to hold for voltage control in electric power systems and pressure control in water distribution networks. Numerical tests on both networks corroborate the efficacy of the techniques disclosed herein.
Utility systems, such as power, water, and gas networks, are significant examples of networked systems and are undergoing rapid changes. Power systems, for instance, are experiencing significant penetration of distributed energy resources and flexible load, which are increasing the system volatility. Natural gas-fired generators serve as a fast-acting balancing mechanism for power systems, but inadvertently increase the volatility in gas networks. Rising threats of clean water scarcity have motivated tremendous efforts towards judicious planning for bulk water systems and enhanced monitoring and control for water distribution networks. Moreover, increasing occurrence of natural disasters and other critical (both cyber and physical) disruptions undermines the stable and efficient operation of the aforementioned systems.
Classic operation of utility systems is performed via management systems that aim to satisfy consumer demands in a cost-effective manner while meeting the related operational and physical constraints. Such tasks constitute the family of optimal dispatch problems (ODP). ODPs may be solved at regular intervals based on anticipated demands and network conditions. Stochastic optimization formulations may be leveraged to account for the uncertainty in network conditions and ensure reliable operation within the ODP interval. Although ODP solutions may be able to ensure reliable system operation during normal conditions, they cannot account for the occurrence of low-probability, high-impact disruptions that might undermine system operation. To improve system resilience to these events, emergency control schemes are necessary that can help avoid system collapse by executing fast actions in real time.
The present disclosure details the design of emergency control techniques that can ensure the satisfaction of system operational requirements during the time-interval between two ODP actions. The techniques described herein can be referred to as ripple-type control and draw features from local, distributed, and event-triggered control. In related-art local control rules, agents make decisions based upon on locally available readings. For example, power generators may control their reactive power output given their local power injection and voltage. However, such local schemes may have limited efficacy. Related-art distributed control strategies, in which agents compute their control action after sharing information with neighbors in a communication network, have a wide spectrum of applications, from energy systems to camera networks. To avoid wasting resources and communicate only when really needed, event-triggered control techniques have been advocated in the literature. For instance, every agent may evaluate a triggering function locally (e.g., in a consensus setup, the mismatch between the current state and the state that was last sent to neighbors). When the triggering function takes some specified values, agents communicate and update their control rule.
On the contrary, in accordance with the ripple-type control techniques of the present disclosure, agents first try to satisfy their local constraints via purely local control. Only when such control efforts reach their maximum limit is assistance sought from neighboring agents on a communication graph. The process is continued until the control objectives of every agent are met. Another property of the disclosed techniques is that they are model-free in the sense that it does not require the knowledge of the system model parameters. This is an essential property of real-time emergency control, due to lack of accurate model information during contingency scenarios.
The techniques described herein provide a ripple-type control algorithm for ensuring satisfaction of operational requirements, and the present disclosure details how such an algorithm was devised and formally analyzed. Furthermore, to show applicability of the disclosed techniques in real systems, the control scheme was tested on electric power and water networks. While discussed herein primarily in the context of power and water distribution networks, the techniques of the present disclosure may be applied to various other types of resource networks that adhere to the monotonicity assumption.
In the example of
In the example of
In the example of
In the example of
Control module 108, in the example of
In accordance with the techniques provided herein, computing device 104 may be configured to determine, for a first controllable device in a networked physical system an output violation value for the first controllable device. In other words, computing device 104 may determine an amount by which the output at the controllable device is below the minimum “required” output at the controllable device. In the example of
Computing device 104 may be further configured to determine a target input value for the first controllable device. Computing device 104 may determine the target input value based on a present input value for the first controllable device, the output violation value, and an assistance requisition value that corresponds to a second device in the networked physical system that is communicatively coupled to the first controllable device. In other words, computing device 104 may determine how the input for the controllable device should be modified to address the controllable device's output violation (if any), as well as the needs of other, connected devices. In the example of
Computing device 104 may be further configured to cause the first controllable device to modify operation based on the target input value and a maximum input value for the first controllable device. In other words, computing device 104 may attempt to cause the controllable device to modify operation, within its ability, to address both its own output violation as well as the needs of the other, connected devices. In the example of
In some examples, computing device 104 may be further configured to determine an updated assistance requisition value for the first controllable device. Computing device 104 may determine the updated assistance requisition value based on the target input value and the maximum input value. In other words, computing device 104 may determine whether the controllable device is capable of addressing its own output violation as well as the needs of the other, connected devices. Computing device 104 may determine its own assistance requisition value indicating whether it is capable of doing so. In the example of
In some examples, computing device 104 may be further configured to output, for use by devices in the networked physical system that are communicatively coupled to the first controllable device, the updated assistance requisition value. In other words, computing device 104 may inform other, connected devices whether or not the controllable device needs assistance based on its inability to provide enough output for itself and those requesting it. In the example of
In some examples, computing device 104 may perform the techniques described in the example of
Though not shown in the example of
By implementing the ripple-type control techniques described herein, computing device 104 may ensure that nodes 102 avoid dropping below an output violation value while also minimizing the necessary communication among nodes 102. Furthermore, there is no need for computing device 104 to have any knowledge of system 100 (such as a system model) or the underlying mechanics of the system (such as power flow equations). Instead, the techniques described herein leverage the monotonic nature of the system to provide efficient assistance to communicatively adjacent nodes, thereby allowing system 100 to quickly reach a feasible state. As such, the techniques described herein thereby improve the computing efficiency of the system as well as provide a solution to the problem of how to address issues at one node using others in a minimally communicative manner.
The following provides a mathematical formulation of the techniques described herein. The following notation is used: lowercase and uppercase boldface letters denote column vectors and matrices, respectively. Sets are represented by calligraphic symbols. The symbol T stands for transposition. Inequalities, max, and min operators are understood elementwise. All-zero and all-one vectors are represented by 0 and 1; the respective dimensions are deducible from context. The dg(•) operator on vectors places the vector on the principal diagonal of a matrix. On a matrix, it extracts the diagonal as a vector. Symbol ∥•∥ represents the L2 norm.
Consider a networked system modeled by an undirected graph =,ε). The set is a collection of N nodes hosting controllable agents and vector u∈N represents their control inputs. A subset of agents comprising set ⊂ of cardinality M are assumed to be making local noiseless scalar observations, which are stacked in vector y∈M. The entries of y, henceforth referred to as outputs, are to be regulated within a desired range. Given an input u, the system has a locally unique output y, determined by a mapping F:N→M. Heed that the mapping F may not necessarily have an explicit form. This work considers physical systems in which the related mapping F adheres to the following property.
Assumption 1. The input-output mapping F is such that, for any u, m∈, and n∈, it holds
Albeit it might seem restrictive at the outset, the postulated monotonicity property holds true for several physical systems abiding by a dissipative flow law, such as natural gas transmission systems and water distribution networks. Moreover, this assumption is approximately true for electric power systems as delineated next.
The task of maintaining power system voltages above given lower limits is next considered. A power system may be modeled by a graph =(,ε), wherein electrical buses can be interpreted as agents. Buses in such networks are typically modeled as generator (PV) buses for which the active power injection and voltage magnitude are controlled; and load (PQ) buses for which the complex power injection is fixed and is independent of voltage. Let (vn, qn) denote the voltage magnitude (or simply voltage) and reactive power injection at bus n∈. Vectors v, q∈N collect the voltages and reactive injections across buses.
Transmission lines are often approximated as lossless, since their resistances are much smaller than their reactances. Thanks to this lossless approximation and the assumption of small voltage angle differences across neighboring buses, voltage angles (resp. magnitudes) are rather insensitive to variations in reactive (resp. active) power injections. To develop voltage control algorithms, the focus here is on the q−v system. Vectors v and q adhere to the approximate model
q=dg(v)Bv. (1)
where B∈N×N is a Laplacian matrix with line susceptances as weights. In detail, its (m, n)-th entry Bmn<0 equals the negative susceptance of line (m, n)∈ε; it equals zero if there is no line between buses m and n; and its diagonal entries are Bmm=−Σn≠mBmn>0.
Partition the node set into generator and load buses as =S⊕L. Arranging v and q as v=[vGTvLT]T and q=[qGTqLT]T, model (1) can be written as
where B has been partitioned accordingly.
For the voltage regulation task at hand, the control variable depends on the type of each bus n:
Generators can control their voltages, while loads could partially control their reactive injections due to inverters, capacitor banks, and flexible AC transmission systems (FACTS).
By controlling the inputs u, voltage regulation aims to maintain the load voltages vL within acceptable levels. To this end, it is necessary to analyze the dependence of the output y=vL on the control input u=[qLT vLT]T. Unfortunately, the quadratic equations in (2) are not amenable to a closed-form expression of y in terms of u. Thus, a linearization from the literature was adopted to compute the Jacobian matrix of y with respect to u. Let
and define
The second block equation of (2) provides
qL={tilde over (v)}2dg(1+ϵL)(BLG(1+ϵG)+BLL(1+ϵL))≈{tilde over (v)}2(BLGϵG+BLLϵL), (4)
wherein terms involving products between ϵ's were ignored and the property [BLGBLL]1=0 of B was used. Solving for ϵL in (4) and re-substituting voltages from (3) yields
Equation (5) approximates the mapping F for the voltage regulation task. Being a diagonal block of a Laplacian, matrix BLL is known to be positive definite and hence a non-singular. Additionally, because its off-diagonal entries are non-positive, matrix BLL is an M-matrix, so that all entries of BLL−1 are non-negative. This establishes that the Jacobian of y=vL with respect to qL has non-negative entries. The same property holds for the Jacobian of vL with respect to vG since BLG has non-positive entries. The previous arguments show that the approximate model (1) satisfies Assumption 1. This linearized model is employed due to analytical convenience for verifying Assumption 1. However, the numerical tests described below use a nonlinear AC power flow model.
A water distribution system (WDS) can be modeled by an undirected graph =(, ε), where the nodes in correspond to water reservoirs, tanks, junctions and consumers. If dn denotes the rate of water injection at node n, then dn≥0 for reservoirs; dn≤0 for water consumers; tanks may be filling or emptying; and dn=0 for junctions. Nodes are connected by edges in ε which represent pipelines, pumps and valves. Let σmn denote the water flow rate on edge (m, n) along the direction from m to n, with σmn=−σnm. Flow conservation at node n dictates
dn=Σm: (n,m)∈εσnm (6)
The relation between water flow σmn across edge (m, n) and the pressures πm and πn at nodes m and n takes the form
πm−πn=ρmn(σmn) (7)
The operation of a WDS involves serving water demands while maintaining nodal pressures within desirable levels. The task of pressure control may include continuous-valued variables, such as reservoir and tank output pressures, as well as water injections at different nodes. Pressure control may also involve binary variables capturing the on/off status of fixed-speed pumps and valves. These continuous and binary control variables are oftentimes determined by periodically solving ODPs. Assuming the binary variables to be fixed between two ODP instances, the next focus is on the continuous-valued variables. Partition set into the subset S comprising of reservoirs and tanks, and subset L representing loads. The pressures and demands for nodes in S and L, respectively, are assumed to be controllable. This is without loss of generality as inelastic quantities can be modeled with lower and upper limits coinciding. Thus, the control variables are
Given u, the water injections for the nodes in S and the pressures at nodes in L are determined by the water flow equation (6)-(7). Since nodal pressures over L need to be maintained at stipulated levels, they constitute vector y. Note that for the aforementioned assignments of vectors u and y, the mapping F is implicitly defined by (6)-(7). Relevant works have guaranteed that the mapping F maps a given u to a unique y.
To verify the validity of Assumption 1, a monotonicity result for dissipative flow networks from the literature was used. To qualify as a dissipative flow network, functions τmn(•) should be non-decreasing and continuous. Both these requirements hold true for edges in a WDS. Specifically, for a pipe (m,n)∈ε, the function ρmn models the pressure drop due to friction along the pipe described by the Darcy-Weisbach or the Hazen-Williams laws; both being nondecreasing and continuous. For pumps and valves, pressures πm and πn relate to flow σmn via non-decreasing empirical laws as well. Therefore, WDS come within the purview of dissipative networks and the ensuing result applies.
Lemma 1. Let π and π′ be N-length pressure vectors satisfying the water flow equations (6)-(7) for demand vectors d and d′. If πn≥π′n for all n∈S, and dn≥d′n for all n∈L, then πn≥π′n for all n∈L.
In terms of the assigned vectors u and y, Lemma 1 states that controls u≥u′ If result in y≥y′. Thus, considering infinitesimal changes at node pairs m and n, Lemma 1 translates to
hence satisfying Assumption 1.
Operators manage the networked systems described above by computing periodically the control setpoints that agents should implement. Usually, these control setpoints are the solution of an optimal dispatch problem (ODP) of the form
where c(u, y) is a cost function depending on both the system inputs and outputs; the mapping in (8a) corresponds to the physical laws governing the networked system; while inequality constraints can be divided into two categories:
Typically, given the set of parameters defining mapping F, a central dispatcher solves (ODP) and communicates optimal control setpoints u* to agents. Ideally, this process shall be repeated every time there is a change in the system model that justifies the underlying definition of F, such as an abrupt load change or line tripping for the case of power systems. Constrained by communication and computational resources, however, problem (ODP) is solved only at finite time intervals. As a consequence, the setpoints u* can become obsolete or even result in network constraint violations.
Such limitations motivate the design of mechanisms to at least ensure that some important operational requirements are met between two consecutive centralized dispatch actions, i.e., to make the control vector u belong to the feasible set
={u:u≤u≤ū,y=F′(u),y≥y}
in which F′ is the input-output mapping defined by the system model after a disruptive event. Set only considers the hard constraints of (ODP), namely (8c) and (8d).
Remark 1. For power systems, constraint (8b) models line flow limits, which can be considered soft constraints as their violation could be briefly tolerated. Limits on the power or voltage output of generators are captured by (8c). Inequality (8d) models load voltage constraints. Avoiding dangerously low voltages is important to prevent a voltage collapse.
Remark 2. For water distribution systems, the inequalities (8b) can represent the water flow limits on pipes and pumps. Although such limits shall normally be respected, they can be characterized as soft over short time intervals. Constraints (8c) represent the limits on pressure at water sources and demands by consumers. These limits can not be violated physically as they are determined by the actual capacity of the WDS components and available demands. The inequalities in (8d) can model the minimum pressure requirements at consumer nodes. The latter requirements must be adhered to at all times as low pressures may cause service failures and equipment malfunction at the consumer end.
Next, an algorithm for steering u to can be put forth with the ensuing key attributes:
The communication network is modeled as a graph c=(,εc) in which the communication links εc do not necessarily coincide with the physical connections among agents. Graph c is henceforth assumed to be connected. Denote as A its adjacency matrix. If node m and node n are not connected, then A(m, n)=0. Otherwise, A(m, n)≠0. A(m, n) is a parameter that can be designed and is always nonnegative. The function f:N→N is also introduced, defined entry-wise as
Assume that, at time t=0, a violation of (8d) occurs as a consequence of a model change. Let u(0) be the initial control variables, and introduce an auxiliary vector λ∈N, which is initialized as λ(0)=0. At subsequent times t≥1, the control scheme proceeds in four steps as delineated next.
Step 1: Agents compute f(u(t))≥0 according to (9). The entries of f(u(t)) are strictly positive if the associated nodes in experience a violation of (8d); and zero, otherwise.
Step 2: A target setpoint is computed as
û(t+1)=u(t)+dg(η1)f(u(t))+dg(η2)Aλ(t) (10)
for positive η1 and η2. Note that for node n, the target ûn(t) is computed using the local reading yn(t) and the entries of λ sent from its peers (neighbor nodes of node n on c).
Step 3: Agents compute the auxiliary vector λ as
λ(t+1)=max{0,dg(η3)(û(t+1)−ū)} (11)
for a positive η3. Vector λ serves as a beacon for assistance that is communicated across peer nodes.
Step 4: The target setpoint is projected to the feasible range
u(t+1)=min{û(t+1),ū} (12)
and is physically implemented.
To establish the effectiveness, Proposition 1 proves that the proposed scheme reaches an equilibrium point and Proposition 2 that this equilibrium belongs to . The proofs for these results are provided herein below.
Proposition 1. Given any u(0), the sequence {u(t)} converges asymptotically.
Proposition 2. Let Assumption 1 hold, be non-empty, and
∥dg(η2)dg(η3)A∥<1. (13)
A pair (u, λ) is an equilibrium for the proposed scheme if and only if u belongs to and λ=0.
The control scheme disclosed herein satisfies attribute A1) by design. Moreover, for a node n with target setpoints ûn (t+1) within the local control limit ūn, the corresponding entry of λ(t+1) is zero. Thus the computation of ûm from (10) for nodes m that are neighbors of n requires no communication from node n, hence fulfilling A2). The scheme also meets A3) since it is agnostic to changes in topology and/or demands.
Remark 3. Apparently, parameter η1 does not influence the control scheme convergence. Indeed, (13)provides a condition only on η2 and η3. However, η1 plays a role in determining the equilibrium point and the speed of convergence, whose analytical quantification is beyond the scope of this disclosure.
The control algorithm disclosed herein was tested for two utility network applications: voltage control in power systems and pressure control in water systems. Commencing with the power system, parameters η2 and η3 were chosen so that (13) holds true. In general, parameters η1, η2, and η3 may each be considered to represent responsiveness, by quantifying how aggressively updates are implemented.
For the purposes of testing, generators were allowed to raise their voltage output to 1.02 p.u.; loads could reduce their power demand by 10 MW and their voltages were required to be above Vthr=0:94 p.u., which represents a safe threshold.
In the example of
To study a scenario where not all agents have control capability, only two demand nodes, namely demand 403 and demand 408, are allowed to reduce demand by 50 m3/hr. Further, tank 410 has an injection flexibility of ±200 m3/hr and reservoir 401 has a controllable pressure range of [0,5] m.
In the example of
The computing device, in the example of
In the example of
The computing device, in the example of
In the example of
The example operations of
The present disclosure provides a novel ripple-type coordination scheme for emergency control of networked systems. The involved agents act based upon local control rules as long as local resources have not been saturated. Otherwise, they solicit help from peer agents through a “hotline” communication network not necessarily coinciding with the underlying physical system graph. The algorithm appears to converge to safe operating conditions under an appropriate choice of parameters. Its validity has been illustrated on power and water network examples.
At least some of the techniques of the present disclosure may additionally or alternatively described by one or more of the following examples.
Example 1: A device comprising at least one processor configured to: determine, for a first controllable device in a networked physical system, based on a measurement of an output parameter at the first controllable device and a minimum output parameter value, an output violation value for the first controllable device; determine, based on a present input value for the first controllable device, the output violation value, and an assistance requisition value that corresponds to a second device in the networked physical system that is communicatively coupled to the first controllable device, a target input value for the first controllable device; and cause the first controllable device to modify operation based on the target input value and a maximum input value for the first controllable device.
Example 2: The device of example 1, wherein the at least one processor is further configured to: determine, based on the target input value and the maximum input value, an updated assistance requisition value for the first controllable device; and output, for use by devices in the networked physical system that are communicatively coupled to the first controllable device, the updated assistance requisition value.
Example 3: The device of example 2, wherein determining the updated assistance requisition value comprises: determining a difference between the target input value and the maximum input value; responsive to determining that the difference is larger than or equal to zero, designating a scaled version of the difference as the updated assistance requisition value; and responsive to determining that the difference value is less than zero, designating zero as the updated assistance requisition value.
Example 4: The device of example 3, wherein determining the updated assistance requisition value comprises determining λn(t+1)=max{0, η3,n(ûn(t+1)−
Example 5: The device of any of examples 1-4, wherein determining the output violation value comprises: determining a difference between measurement and the minimum output parameter value; responsive to determining that the difference is greater than zero, determining the output violation value to be the difference; and responsive to determining that the difference is not greater zero, determining the output violation value to be zero.
Example 6: The device of any of examples 1-5, wherein determining the target input value comprises summing the present input value, a scaled version of output violation value, and a scaled version of the assistance requisition value.
Example 7: The device of example 6, wherein determining target input value comprises determining ûn(t+1)=un (t)+η1,nfn(t)+η2,nAnλ(t), wherein: n denotes the first controllable device; ûn(t+1) denotes the target input value for the first controllable device; un (t) denotes the present input value for the first controllable device; η1,n denotes a first positive scaling factor for the first controllable device; fn (t) denotes the output violation value for the first controllable device; η2,n denotes a second positive scaling factor for the first controllable device; An denotes an adjacency matrix for the first controllable device, the adjacency matrix indicating devices in the networked physical system that are communicatively coupled to the first controllable device; and λ(t) denotes a vector of assistance requisition values, including the assistance requisition value that corresponds to the second device.
Example 8: The device of any of examples 1-7, wherein: the networked physical system comprises a power system; the output parameter comprises voltage; and the minimum output parameter value comprises a voltage value.
Example 9: The device of example 8, wherein each of the present input value, the target input value, and the maximum input value comprises a respective power value. In some examples, each of the present input value, the target input value, and the maximum input value comprises a respective reactive power value.
Example 10: The device of example 8, wherein each of the present input value, the target input value, and the maximum input value comprises a respective voltage value.
Example 11: The device of any of examples 1-7, wherein: the networked physical system comprises a water system; the output parameter comprises water pressure; and the minimum output parameter value comprises a water pressure value.
Example 12: The device of example 11, wherein each of the present input value, the target input value, and the maximum input value comprises a respective water pressure value.
Example 13: The device of any of examples 1-12, wherein the at least one processor is further configured to perform the following operations in an iterative fashion: determining the output violation value; determining the target input value; and causing the first controllable device to modify operation.
Example 14: A method comprising: determining, by a computing device comprising at least one processor, for a first controllable device in a networked physical system, based on a measurement of an output parameter at the first controllable device and a minimum output parameter value, an output violation value for the first controllable device; determining, by the computing device, based on a present input value for the first controllable device, the output violation value, and an assistance requisition value that corresponds to a second device in the networked physical system that is communicatively coupled to the first controllable device, a target input value for the first controllable device; and causing the first controllable device to modify operation based on the target input value and a maximum input value for the first controllable device.
Example 15: The method of example 14, further comprising: determining, based on the target input value and the maximum input value, an updated assistance requisition value for the first controllable device; and outputting, for use by devices in the networked physical system that are communicatively coupled to the first controllable device, the updated assistance requisition value.
Example 16: The method of example 15, wherein determining the updated assistance requisition value comprises: determining a difference between the target input value and the maximum input value; responsive to determining that the difference is larger than or equal to zero, designating a scaled version of the difference as the updated assistance requisition value; and responsive to determining that the difference value is less than zero, designating zero as the updated assistance requisition value.
Example 17: The method of any of examples 14-16, wherein determining the target input value comprises summing the present input value, a scaled version of output violation value, and a scaled version of the assistance requisition value.
Example 18: The method of any of examples 14-17, wherein: the networked physical system comprises a power system; the output parameter comprises voltage; and the minimum output parameter value comprises a voltage value.
Example 19: The method of any of examples 14-17, wherein: the networked physical system comprises a water system; the output parameter comprises water pressure; and the minimum output parameter value comprises a water pressure value.
Example 20: The method of any of examples 14-19, wherein the first controllable device is the computing device.
Example 21: A system comprising: a plurality of devices in a networked physical system, wherein each device in the plurality of devices comprises at least one processor configured to: determine, based on a respective measurement of an output parameter at the device and a minimum output parameter value, a respective output violation value; and determine, based on a respective present input value, the respective output violation value, and an assistance requisition value that corresponds to another device in the plurality of devices that is communicatively coupled to the device, a respective target input value; and wherein the at least one processor of at least one device in the plurality of devices is further configured to: modify its operation based on the respective target input value and a respective maximum input value.
Example 22: The system of example 22, wherein the at least one processor of each device in the plurality of devices is further configured to: determine, based on the respective target input value and the respective maximum input value, a respective updated assistance requisition value; and output, for use by other devices in the plurality of devices that are communicatively coupled to the device, the respective updated assistance requisition value.
The following proofs are provided for completeness.
Proof of Proposition 1: Owing to the projection in (12), it is evident that u(t)≤ū for all t. Thus, proving a non-decreasing property u(t)≤u(t+1) for all t is sufficient for establishing convergence of the sequence {u(t)}. Consider an arbitrary node n and time t. When un (t+1)=ūn one trivially has un (t)≤un (t+1). When un (t+1)>ūn, Step 4 yields ûn (t+1)=un (t+1) and (10) implies
un(t+1)=un(t)+η1,nfn(t)+η2,nΣm=1NAnmλm(t)≥un(t)
because fn (t) and λm (t) are non-negative; η1,n and η2,n are positive; and matrix A has non-negative entries.
Proof of Proposition 2: Assume u∈ and λ=0. It follows that y(u)≥y and so f(u)=0 from (9). Upon initializing the proposed control scheme at u and λ, Step 1 provides f(u)=0; Step 2 yields û(1)=u; Step 3 provides λ(1)=0; and Step 4 that u(1)=u. Therefore, (u, λ) is an equilibrium for the proposed control steps.
To establish the reverse direction, one can prove the contra-positive statement, i.e., if u does not belong to or λ≠0, then (u, λ) is not an equilibrium. The two cases are shown separately using proof by contradiction.
Case 1) Vector u does not belong to : since is not empty by hypothesis, Assumption 1 implies that y(ū)≥y(u′) for u≤u′≤ū and hence
y(ū)≥y. (14)
In other words, applying the maximum control effort makes the constraints on observed outputs hold. Suppose u∉, yet there exists a λ such that (u, λ) is an equilibrium for the algorithm. Since u is projected in its permissible range by (12), its infeasibility means there exists a node n∈ such that
yn>yn(u) (15)
Define ûn:=un+η1,nfn(u)+η2,nΣ=1NAn,λ as in (10). Because fn (u)>0, it follows that ûn>un. However, since by hypothesis un=min{ûn,ūn}, it follows that un=ūn and ûn>ūn, so that λn>0.
Consider a node m neighbor of n in c and define
ûm=um+η1,mfm(u)+η2,mΣ=1NAm,λ (16)
Since λn>0 and um=min{ûm, ūm}, it holds again that ûm>um=ūm and so λm>0. Repeating this argument for all neighbors of n, one gets that λ>0 and that
u=ū (17)
This concludes the proof for Case 1 since (15) and (17) contradict (14).
Case 2) Vector λ≠0: Suppose u∈, and there exists a λ≠0 such that (u, λ) is an equilibrium for the proposed scheme. First, note that by plugging (10) into (11), λ(t+1) can be expressed as a function of λ(t) and u(t) as
λ(t+1)=max{0,dg(η3)(u(t)+dg(η1)f(u(t))−dg(η2)Aλ(t)−ū)}
The feasibility assumption provides f(u)=0 and the equilibrium condition yields
λ=max{0,dg(η3)(u+dg(η2)Aλ−ū}≤max{0,+dg(η3)dg(η2)Aλ}≤+dg(η3)dg(η2)Aλ. (18)
where the first and the second inequalities stem from the fact that u−ū and dg(η2)dg(η3)Aλ(t) have non-positive entries.
Invoking the norm inequality on (18) results in ∥λ∥≤∥dg(η2)dg(η3)A∥∥λ∥. Also, using the condition ∥dg(η2)dg(η3)A∥<1 with λ≠0 yields ∥λ∥<∥λ∥, which is a contradiction.
In one or more examples, the techniques described herein may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over, as one or more instructions or code, a computer-readable medium and executed by a hardware-based processing unit. Computer-readable media may include computer-readable storage media, which corresponds to a tangible medium such as data storage media, or communication media, which includes any medium that facilitates transfer of a computer program from one place to another, e.g., according to a communication protocol. In this manner, computer-readable media generally may correspond to (1) tangible computer-readable storage media, which is non-transitory or (2) a communication medium such as a signal or carrier wave. Data storage media may be any available media that can be accessed by one or more computers or one or more processors to retrieve instructions, code and/or data structures for implementation of the techniques described in this disclosure. A computer program product may include a computer-readable storage medium.
By way of example, and not limitation, such computer-readable storage media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage, or other magnetic storage devices, flash memory, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer. Also, any connection is properly termed a computer-readable medium. For example, if instructions are transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. It should be understood, however, that computer-readable storage media and data storage media do not include connections, carrier waves, signals, or other transient media, but are instead directed to non-transient, tangible storage media. Disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and Blu-ray disc, where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
Instructions may be executed by one or more processors, such as one or more digital signal processors (DSPs), general purpose microprocessors, application specific integrated circuits (ASICs), field programmable logic arrays (FPGAs), or other equivalent integrated or discrete logic circuitry. Accordingly, the term “processor,” as used herein may refer to any of the foregoing structure or any other structure suitable for implementation of the techniques described herein. In addition, in some aspects, the functionality described herein may be provided within dedicated hardware and/or software modules. Also, the techniques could be fully implemented in one or more circuits or logic elements.
The techniques of this disclosure may be implemented in a wide variety of devices or apparatuses, including a wireless handset, an integrated circuit (IC) or a set of ICs (e.g., a chip set). Various components, modules, or units are described in this disclosure to emphasize functional aspects of devices configured to perform the disclosed techniques, but do not necessarily require realization by different hardware units. Rather, as described above, various units may be combined in a hardware unit or provided by a collection of inter-operative hardware units, including one or more processors as described above, in conjunction with suitable software and/or firmware.
The foregoing disclosure includes various examples set forth merely as illustration. The disclosed examples are not intended to be limiting. Modifications incorporating the spirit and substance of the described examples may occur to persons skilled in the art. These and other examples are within the scope of this disclosure and the following claims.
This application claims the benefit of U.S. Provisional Patent Application No. 63/091,525, filed Oct. 14, 2020, the entire content of which is incorporated herein by reference.
This invention was made with government support under Contract No. DE-AC36-08GO28308 awarded by the United States Department of Energy. The government has certain rights in the invention.
Number | Name | Date | Kind |
---|---|---|---|
9030177 | Nakashima | May 2015 | B2 |
20050204028 | Bahl | Sep 2005 | A1 |
20190280481 | Kuroda | Sep 2019 | A1 |
Entry |
---|
Redl, Richard; Sun, Jian. IEEE Transactions on Power Electronics 24.12: 2669-2680. Institute of Electrical and Electronics Engineers, Inc., 3 Park Avenue, 17th FI New York NY 10016-5997 USA. (Dec. 2009) (Year: 2009). |
Emiroglu, Selcuk; Uyaroglu, Yilmaz; Ozdemir, Gulcihan. Advances in Electrical and Computer Engineering 17.4: 99-106. Suceava: Stefan cel Mare University of Suceava. (2017) (Year: 2017). |
Wei, “Coordination in Microgrid Networks Using Multi-agent Systems” Doctoral Thesis, Universit'e Bourgogne Franche-Comté2 Dec. 2019, 147 pages (Year: 2019). |
Bolognani et al., “Distributed reactive power feedback control for voltage regulation and loss minimization”, rXiv:1303.7173 [math.OC], Nov. 2014, available at https://arxiv.org/pdf/1303.7173.pdf, pp. 1-16. |
Chang et al., “Saddle-flow dynamics for distributed feedback-based optimization”, IEEE Control Systems Letters, Oct. 2019, vol. 3, No. 4, pp. 948-953. |
Singh et al., “Ripple-Type Control for Enhancing Resilience of Networked Physical Systems”, 2021 American Control Conference (ACC), New Orleans, LA, May 2021, pp. 2031-2036. |
Number | Date | Country | |
---|---|---|---|
20220113685 A1 | Apr 2022 | US |
Number | Date | Country | |
---|---|---|---|
63091525 | Oct 2020 | US |