The present disclosure relates generally to system control, and more particularly to a device for controlling a system with polynomial dynamics.
A controller, such as model predictive control (MPC), is used in many applications to control complex dynamical systems. Examples of such systems include production lines, vehicles, engines, robots, power generators, and other numerically controlled machines.
Dynamics of these systems may be defined by polynomial functions. Accordingly, the dynamics of the systems may be referred to as polynomial dynamics. Control of the systems described with polynomial dynamics lead to stability analysis problems, optimal control problems, and control design problems, which can be referred to as polynomial optimization problems. For real-time applications of the control, these polynomial optimization problems needs to be solved under strict timing constraints, often on embedded hardware with limited computational resources.
Currently, there are few optimization techniques that try to solve these polynomial optimization problems under the strict timing constraints by transforming the polynomial optimization problems to linear programs in a higher dimension space. However, in some cases, these available optimization techniques fail to solve the polynomial optimization problems within the strict timing constraints, even if they solve the polynomial optimization problems by transforming the polynomial optimization problems to linear programs.
Accordingly, there is a need for a device that solves the polynomial optimization problems in an efficient manner to control the system described with the polynomial dynamics.
It is an objective of some embodiments to provide a device to solve a polynomial optimization of a polynomial function with a reformulation derived by introducing a minimum number of additional variables reducing a degree of the polynomial function till a target degree subject to constraints on a structure of the additional variables. In order to derive the reformulation, it is an objective of some embodiments to solve a mixed-integer optimization problem to find an optimal solution among all possible encodings of factorizations of the polynomial function such that the optimal solution reduces the degree of the polynomial function till the target degree with the minimum number of additional variables. It is also an objective of some embodiments to control a system performing a task by solving polynomial optimization of the polynomial function with the reformulation derived by introducing the minimum number of additional variables.
In order to control the system performing the task, it is an objective of some embodiments to submit a sequence of control inputs to the system. As a result, the system may change states associated with the system according to the task. To this end, some embodiments receive a feedback signal including a corresponding sequence of measurements. In an example embodiment, each measurement of the corresponding sequence of measurements is indicative of a state of the system caused by the corresponding control input. For instance, the system may be an electrical power grid and/or an electrical elevator. In these example cases, the sequence of control inputs may be submitted to the electrical power grid and/or the electrical elevator.
In order to submit the sequence of control inputs, it is an objective of some embodiments to determine, e.g., at each control step, a current control input for controlling the system based on the feedback signal including a current measurement of a current state of the system by solving a polynomial optimization of a polynomial function. As used herein, the polynomial optimization may be a minimization of the polynomial function. For instance, the polynomial function may be a multilinear program, a mixed-integer nonlinear program, or the like.
Some embodiments are based on the realization that the polynomial optimization of the polynomial function may be complex to solve and may be a time consuming process. To this end, it is an objective of some embodiments to derive a reformulation for the polynomial optimization. In other words, it is an objective of some embodiments to reduce the degree of the polynomial function to a target degree. As used herein, the reformulation may be a degree reduced version of the polynomial function. In order to derive the reformulation, some embodiments factorize the polynomial function by introducing additional variables. As used herein, the factorization may refer to reduce the degree of the polynomial function to the target degree by introducing the additional variables. Since the reformulation is derived by introducing the additional variables, the reformulation may be subjected to constraints on a structure of the additional variables. According to some embodiments, the polynomial function may be factorized to at least one of a bilinear programming reformulation, or a trilinear programming reformulation by setting the target degree.
Some embodiments are based on the realization that there may be multiple ways to factorize the polynomial function by introducing the additional variables, leading to multiple factorizations. To this end, it is an objective of some embodiments to determine all possible factorizations of the polynomial functions and encode all possible factorizations in one set such that a minimum factorization among all possible factorization may be selected. As used herein, the minimum factorization may correspond to the factorization that is determined by introducing a minimum number of additional variables. In some embodiments, the additional variable may be product of intermediate additional variables ending with a product of at least two of the original variables of the polynomial function. In some other embodiments, the additional variable may be product of an intermediate additional variable and an original variable of the polynomial function. The additional variable is at least one of a bilinear product or a trilinear product.
In order to determine all possible factorizations, some embodiments define each possible factorization of a monomial in the polynomial function as an in-tree having properties: a root of the in-tree corresponds to an original monomial of the polynomial function, leaf nodes of the in-tree correspond to the original variables of the original monomial, every node other than the leaf nodes has two child nodes each of which represents a monomial; and a product of the monomials of the child nodes equals a monomial represented by a parent node of the child nodes. Accordingly, each possible factorization of the monomial reads on a representation of the in-tree. In order to encode all possible factorizations, it is an objective of some embodiments to represent each monomial in the polynomial function as a decision diagram such that the decision diagram encodes all possible factorization of the monomial through collection of paths in the decision diagram. To this end, some embodiments produce a set of decision diagrams, where each decision diagram corresponds to the monomial in the polynomial function. According to some embodiments, each path may define different additional variables factorizing the monomial. According to some embodiments, the decision diagram encoding every possible linearization of the multilinear monomial is the in-tree having a root including original variables of the multilinear monomial.
In order to select the minimum factorization, it is an objective of some embodiments to solve a mixed-integer optimization problem. According to some embodiments, the mixed-integer optimization problem may be formulated such that solving the mixed-integer problem finds an optimal solution among all possible encodings of the factorizations of the polynomial function that reduces the degree of the polynomial function to the target degree with the minimum number of additional variables. According to some embodiments, the mixed-integer optimization problem solves a consistent path problem by minimizing over nodes and arcs connecting the nodes in the set of decision diagrams subject to consistency of intermediate variables. Some embodiments are based on the realization that solving the consistent path problem by minimizing over nodes and arcs connecting the nodes in the set of decision diagrams subject to consistency of intermediate variables, leads to a selection of the minimum number of additional variables. Since the reformulation is derived by introducing the minimum number of additional variables, computation to solve the polynomial optimization with the reformulation is reduced in comparison to other available optimization techniques. Accordingly, the polynomial optimization of the polynomial function is solved in an efficient manner.
Accordingly, one embodiment discloses a device for controlling an operation of a system performing a task. The device includes a transceiver that submits a sequence of control inputs to the system thereby changing states of the system according to the task and receives a feedback signal including a corresponding sequence of measurements, each measurement is indicative of a state of the system caused by the corresponding control input. The device further includes a feedback controller that determines a current control input for controlling the system based on the feedback signal including a current measurement of a current state of the system by solving a polynomial optimization of a polynomial function with a reformulation derived by introducing additional variables reducing a degree of the polynomial function till a target degree subject to constraints on a structure of the additional variables. Furthermore, the device includes an optimal factorable reduction module that solves a mixed-integer optimization problem to find an optimal solution among all possible encodings of factorizations of the polynomial function that reduces the degree of the polynomial function till the target degree with a minimum number of additional variables.
Accordingly, another embodiment discloses a method for controlling an operation of a system performing a task. The method comprises submitting a sequence of control inputs to the system thereby changing states of the system according to the task; receiving a feedback signal including a corresponding sequence of measurements, each measurement is indicative of a state of the system caused by the corresponding control input; determining a current control input for controlling the system based on the feedback signal including a current measurement of a current state of the system by solving a polynomial optimization of a polynomial function with a reformulation derived by introducing additional variables reducing a degree of the polynomial function till a target degree subject to constraints on a structure of the additional variables; and solving a mixed-integer optimization problem to find an optimal solution among all possible encodings of factorizations of the polynomial function that reduces the degree of the polynomial function till the target degree with a minimum number of additional variables.
Accordingly, yet another embodiment discloses a non-transitory computer readable storage medium embodied thereon a program executable by a processor for performing a method for controlling an operation of a system performing a task. The method comprising submitting a sequence of control inputs to the system thereby changing states of the system according to the task; receiving a feedback signal including a corresponding sequence of measurements, each measurement is indicative of a state of the system caused by the corresponding control input; determining a current control input for controlling the system based on the feedback signal including a current measurement of a current state of the system by solving a polynomial optimization of a polynomial function with a reformulation derived by introducing additional variables reducing a degree of the polynomial function till a target degree subject to constraints on a structure of the additional variables; and solving a mixed-integer optimization problem to find an optimal solution among all possible encodings of factorizations of the polynomial function that reduces the degree of the polynomial function till the target degree with a minimum number of additional variables.
In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. It will be apparent, however, to one skilled in the art that the present disclosure may be practiced without these specific details. In other instances, apparatuses and methods are shown in block diagram form only in order to avoid obscuring the present disclosure.
As used in this specification and claims, the terms “for example,” “for instance,” and “such as,” and the verbs “comprising,” “having,” “including,” and their other verb forms, when used in conjunction with a listing of one or more components or other items, are each to be construed as open ended, meaning that that the listing is not to be considered as excluding other, additional components or items. The term “based on” means at least partially based on. Further, it is to be understood that the phraseology and terminology employed herein are for the purpose of the description and should not be regarded as limiting. Any heading utilized within this description is for convenience only and has no legal or limiting effect.
In an example embodiment, the controller 100 may be a model predictive control (MPC) programmed according to a model 104 (hereinafter, a dynamical model 104) of the system 102. The dynamical model 104 may be a set of equations representing changes of states and outputs of the system 102 over time as functions of current inputs, previous inputs and previous outputs. The dynamical model 104 can include constraints 106 that represent physical and operation limitations of the system 102. During an operation of the system 102, the controller 100 receives a command 108 indicating a desired behavior of the system 102. The command 108 may be, for example, a motion command. In response to receiving the command 108, the controller 100 generates a sequence of control inputs that serves as an input signal 110 to the system 102. In response to the input signal 110, the system 102 changes the states of the system 102 according to the task. Further, the system 102 may output a sequence of measurements as a feedback signal 112. For instance, one or more sensors installed in the system 102 may output the feedback signal 112. In the sequence of measurements, each measurement is indicative of the state of the system 102 caused by the corresponding control input.
The system 102, as referred herein, can be any machine or device controlled by certain manipulation input signal(s) 110 (i.e. the sequence of control inputs), possibly associated to physical quantities such as voltages, pressures, forces, torques, and to return feedback signal(s) 112, possibly associated to physical quantities such as current, flow, velocity, position indicative of the states of the system 102. The measurement values are related in part to previous measurement values of the system 102, and in part to previous and current control input values. The dependency on previous control inputs and previous measurements is encoded in the state of the system 102. The operation of the system 102, e.g., a motion of components of the system 102, can include a sequence of measurements generated by the system 102 following the application of certain control input values.
The dynamical model 104 of the system 102 may include a set of mathematical equations that describe how the system 102 measurements change over time as functions of current and previous control inputs, and the previous measurements. The state of the system 102 is any set of information, in general time varying, for instance an appropriate subset of current and previous control inputs and measurements, that, together with the dynamical model 104 and future control inputs, can uniquely define the future motion of the system 102.
The system 102 can be subject to physical limitations and specification constraints 106 limiting the range where the measurement, the control inputs, and also possibly the states of the system 102 are allowed to operate.
The controller 100 can be implemented in hardware or as a software program executed in a processor, e.g., a microprocessor, which at fixed or variable control period sampling intervals receives the feedback signal 112 and the command 108 and determines, using the feedback signal 112 and the command 108, the input signal 110 for controlling the operation the system 102.
It is objective of the feedback controller 202a to solve a polynomial optimization of a polynomial function. As used herein, the polynomial optimization may indicate a minimization of the polynomial function. As used herein, the polynomial function may be a function (one or more equations) in a form of a polynomial. For example, a function may be a polynomial, if the function does not include trigonometric terms, exponential terms, and/or logarithmic terms. For instance, the polynomial function may be a control policy of the system 102. In this example case, the feedback controller 202a may solve a minimization of the control policy of the system 102. As used herein, the control policy of the system 102 may be a set of equations defined based on the system model 104 or may be a set of equations chosen as a choice to control the system 102. For instance, the control policy is function of a current state of the system 102 and/or previous states of the system 102. For instance, the control policy of the system 102 may be a multilinear program or a mixed-integer nonlinear program.
For example, a minimization of the multilinear program may be mathematically represented as:
where the notation x∈n, and may represent a set of n-dimensional real vectors and the notation
⊆
n is compact. The notation ƒ(x) is a function ƒ:
n→
and may be a polynomial. For instance, the polynomial function ƒ (x) may be mathematically represented as: ƒ(x)=Σi=1mαiƒi(x). The notation ƒi(x) may represent a monomial of the polynomial. The monomial ƒi(x) may be mathematically represented as: ƒi(x)=Πj=1nxjd
and the notation dij∈{0, 1}. For instance, the monomial ƒi(x) may be a multilinear monomial.
For example, a minimization of the mixed-integer nonlinear program may be mathematically represented as:
The notations ƒ(x,y), g(x,y), h(x,y) are continuous functions and may be polynomials. The notation x may be continuous. The notation y may be an integer variable.
It is also the objective of the feedback controller 202a to solve the polynomial optimization of the polynomial function with a reformulation derived by introducing additional variables. As used herein, the reformulation is a degree reduced version of the polynomial function. Since, the reformulation is derived by introducing the additional variables, the reformulation may be subjected to constraints on a structure of the additional variables.
In an example embodiment, the optimal factorable reduction module 202b may be configured to derive the reformulation for the polynomial function. According to an embodiment, to drive the reformulation for the polynomial function, the optimal factorable reduction module 202b may be configured to factorize the polynomial function. As used herein, the factorization may correspond to reducing the degree of the polynomial function to a target degree by introducing the additional variables.
Some embodiments are based on the realization that there may be multiple ways for factorizing the polynomial by introducing the additional variables, leading to multiple factorizations. To this end, the optimal factorable reduction module 202b may be configured to find all possible encodings of factorizations of the polynomial function and find an optimal solution among all possible encodings of factorizations of the polynomial function. In an example embodiment, to find the optimal solution, the optimal factorable reduction module 202b may be configured to solve a mixed-integer optimization problem such that the optimal solution reduces the degree of polynomial function till the target degree with a minimum number of the additional variables. Accordingly, the mixed-integer optimization problem may be formulated as a problem to find the optimal solution among all possible encodings of the factorizations of the polynomial function such that the optimal solution reduces the degree of the polynomial function to the target degree with the minimum number of additional variables.
It is also an objective of the feedback controller 202a to determine, e.g., at each or some control steps, the current control input for controlling the system 102, based on the feedback signal including a current measurement of the current state of the system 102 by solving the polynomial optimization with the reformulation obtained from the optimal factorable reduction module 202b. In other words, to determine the current control input for controlling the system 102, the feedback controller 202a may solve the polynomial optimization with the reformulation obtained from the optimal factorable reduction module 202b using the feedback signal including the current measurement of the current state of the system 102. To this end, for the feedback signal including the sequence of measurements, the at least one processor 202 may be configured to determine the sequence of control inputs for the system 102.
According to an embodiment, the transceiver 204 may be configured to submit the sequence of control inputs as the input signal 110 to the system 102. Thereby, the system 102 may change the states of the system 102 according to the task. Further, the system 102 may output the feedback signal 112. To this end, the transceiver 204 may be further configured to receive the feedback signal 112. Further, the at least one processor 202 may be configured to determine the input signal 110. In this way, the controller 100 may control the operation of the system 102 performing the task, by submitting the input signal 110 and receiving the feedback signal 112. For instance, the optimal factorable reduction module 202b may derive the reformulation for the polynomial function, as explained in the detailed description of
According to an embodiment, to derive the bilinear programming reformulation, the optimal factorable reduction module 202b may be configured to represent each multilinear monomial in the polynomial function as a decision diagram. In an example embodiment, the optimal factorable reduction module 202b may represent each multilinear monomial (ƒi(x)) as the decision diagram such that the decision diagram encodes every possible factorization of the corresponding multilinear monomial.
For purpose of explanation, considering a monomial ƒ1(x)=Πj=14xjd
According to an embodiment, the optimal factorable reduction module 202b may formulate the fourth level 316 such that the fourth level 310 includes a node 318, where the node 318 may be a bilinear product of the intermediate monomial of degree ‘three’ and the variable represented by the at least one leaf node or a bilinear product of two intermediate monomial of degree ‘two’. In an example embodiment, the multilinear monomial x1x2x3x4 may be defined by the arcs 304a, 304b, 304c, and 304d, the arcs 314a, 314b, 314c, 314d, 314e, and 314f, and arcs 320a, 320b, 320c, and 320d. For instance, the multilinear monomial x1x2x3x4 may be defined by at least one of: the arcs 320a and 304c, the arcs 320b and 304c, the arcs 320c and 304b, the arcs 320d and 304a, the arcs 314a and 314f, the arcs 314b and 314e, or the arcs 314c and 314d. In an example embodiment, the optimal factorable reduction module 202b may stop the formulation of the layers, when a most recent formulated layer includes a node that represents the multilinear monomial of the polynomial function. The node 318 representing the multilinear monomial of the polynomial function may be referred to as a root node. For instance, the decision diagram of the multilinear monomial x1x2x3x4 is as illustrated in
Considering, a set Si={j|xj occurs in ƒi(x)} for all i=1, . . . , m, where the notation ƒi(x) may be the multilinear monomial. A set of nodes i and
i are arranged in |Si| layers, where
i is the decision diagram. Each node n∈
i is associated with two functions, layeri:
i→{1, . . . , |Si|} denoting the layer to which the node n belongs and degi:
i→{0,1}n denoting the bilinear product that is represented by the node n. Accordingly, a layer l of
i includes all possible bilinear products of degree equal to l using indices in Si. Thereby, the layer l has (|
|) nodes. The layer l=|Si| represent the multilinear monomial ƒi(x).
The nodes in i are connected by a set of hyper-arcs
i. Each hyper-arc h∈
i is associated with three functions tail1i, tail2i, and headi that each map
i→
i. For instance, a hyper-arc h∈
i exists if and only if degi(tail1i(h))+degi(tail2i(h))=degi(headi(h)). Each hyper-arc h represents the bilinear product between two nodes represented by tail1i(h) and tail2i(h), leading to a bilinear product (e.g. a parent node or a root node) represented by headi(h). A set of hyper-arcs that incidents on a node n is denoted by In(n)={h|headi(h)}.
A set of arcs in i is denoted by Ai i.e. Ai={(n1, n2)|n1, n2∈
i and ni∈{tail1i(a), tail2i(h)}, n2=headi(h), for some h∈
i}. A subgraph in
i is denoted by G. The subgraph G⊆
i may be a rooted tree that includes nodes (G)⊆
i and arcs A(G)=Ai∩(
(G)×
(G)) such that there exists a
′⊆
i satisfying:
A(G)=∪h∈′{(tail1i(h),headi(h)),(tail2i(h),headi(h))} Equation (1).
According to an embodiment, the subgraph G⊆i may be a representation of an in-tree (also referred to as an in-tree representation). In an example embodiment, if the subgraph G is the in-tree representation, then the subgraph G may represent one possible factorization of the monomial ƒi(x). In other words, every possible factorization of the monomial ƒi(x) may read on the representation of the in-tree. Accordingly, if the subgraph G is the in-tree representation, then the subgraph G may represent one possible factorization of the monomial ƒi(x). For instance, an exemplary subgraph representing one possible factorization of the monomial ƒi(x) is as illustrated in
i is the in-tree representation, if the subgraph G is the rooted tree having properties of the in-tree representation. In an example embodiment, the properties of the in-tree representation may include: (i.) a root of the in-tree corresponds to the original monomial (ƒi(x)=Πj∈S
Since the subgraph G⊆i there exists a unique set
′⊆
i such that equation (1) is satisfied. By definition, the subgraph G is the rooted tree with each leaf representing xj for j∈Si and the root representing ƒi(x). Since the subgraph G is the in-tree representation, every node n except the root has a unique parent node n′ such that (n, n′)∈A(G). Thus, there exists a unique path from all nodes in (G) to the root. Further, a union of the arcs from xj for j∈Si to the root is A(G). Thus, the subgraph G represents the factorization of the monomial ƒi(x).
In an example embodiment, the path may define different additional variables factorizing the monomial ƒi(x). For instance, as illustrated in
Since the subgraph 326 is the in-tree representation, the subgraph 326 may represent one possible factorization of the monomial ƒi(x) of the polynomial function. In an example embodiment, the path from the leaf nodes 302a, 302b, 302c, and 302d to the root node 318 may define additional variables factorizing the monomial ƒi(x) of the polynomial function. For instance, as illustrated in
Referring back to i may also be the in-tree representation, since the decision diagram
i satisfy the properties of the in-tree representation. According to an embodiment, the decision diagram
i (e.g. the decision diagram 322) encodes all possible factorizations of the monomial ƒi(x) (e.g. ƒ1(x)=x1x2x3x4) through collections of the paths defined by the subgraphs (similar to the subgraphs 324 and 326).
For purpose of explanation, considering a set that includes all subgraphs in the decision diagram
i. The set
may be mathematically represented as follows:
={G|G is the in-tree representation in
i}. Since every G represents the factorization of the monomial ƒi(x), the set
includes all possible factorization of the monomial ƒi(x).
Further, a set Fi may be determined from the set . The set Fi may encode every factorization of the monomial ƒi(x) in the set
. The set Fi may be mathematically determined as follows:
A choice a particular node n∈i is denoted by a variable Zi,n∈{0, 1} for n∈
i: layeri(n)≥2, a flow on the hyper-arc h is denoted by a variable ui,h∈{0, 1} for h∈
. Let int(
i={n|n∈
i, layeri(n)∈[2, |Si|−1]}. Constraints (also referred to as flow conservation constraints) to encode every factorization of the monomial ƒi(x) in the set
is given as below.
Σh:headi) Equation (2a)
Σh:head
0≤ui,h≤zi,n∀(n,h): n∈int(i)∩{tail1i(h),tail2i(h)} Equation (2c)
zi,n=1∀n: layeri(n)=|Si| Equation (2d)
ui,h∈{0,1}∀h∈ Equation (2e)
zi,n∈{0,1}∀n∈int(i) Equation (2f).
Hereinafter, the variables ui,h and zi,n may be denoted as ui and zi respectively. The set Fi may be mathematically represented as: Fi={(ui, zi)|(ui, zi) satisfy (2)}. When the set Fi={(ui, zi)|(ui, zi) satisfy (2)}, the set Fi encodes every factorization of the monomial ƒi(x) in the set which is mathematically defined as below.
Let (ûi, {circumflex over (z)}i)∈Fi. The constraints (2b) and (2e) impose that ûi,h=1 for some h∈In(n) for the node n representing ƒi(x), i.e. exactly one hyper-arc in In(n) is chosen. By the constraint (2c), {circumflex over (z)}i,n=1 for all n∈{tail1i(h), tail2i(h)}.
Notably, the two tail nodes, for example n1 and n2 represent monomials of lower degree than ƒi(x). If the nodes are in int(i), the constraints (2a) and (2e) implies that ûi,h
i). The arcs A may be defined using the Equation (1) with
′={h|ûi,h=1} and the set of nodes
={n|n∈{headi(h), tail1i(h), tail2i(h)} for some h∈
′}. Consider the subgraph G=(
, A). The root of the subgraph G is the monomial, the leaves of the subgraph G are the nodes representing xj for j∈Si, the arcs in A are all directed towards the root and there are no cycles. Indeed, G∈
. This proves that every point in the set Fi encodes the factorization in the set
.
Let G∈ be any factorization. For the subgraph G there exists
′ such that Equation (1) is satisfied. Define ūi,h=1 for all h∈
′. Let
={n′|n′∈{headi(h), tail1i(h), tail2i(h)} for some h∈
′}. Let
\{n|layeri(n)=1}. This verifies that (ū,
is a point in Fi. Thereby, the set Fi={(ui, zi)|(ui, zi) satisfy (2)} encodes every factorization of the monomial ƒi(x) in the set
. For instance, the set Fi represents the decision diagram
.
In this way, the optimal factorable reduction module 202b represents the monomial ƒi(x) as the decision diagram i (e.g. the decision diagram 322) that encodes every possible factorizations of the monomial ƒi(x) (e.g. ƒ1(x)=x1x2x3x4). Similarly, the optimal factorable reduction module 202b may represent each multilinear monomial in the polynomial function as the decision diagram to produce a set of decision diagrams. For instance, the set of decision diagrams produced by the optimal factorable reduction module 202b may be as illustrated in
i to produce the set of decision diagrams. For instance, the optimal factorable reduction module 202b may represent the monomial ƒ1(x)=x1x2x3x4 as the decision diagram 322, as explained in the detailed description of
Once the set of decision diagram are produced, the optimal factorable reduction module 202b may be configured to select the minimum number of additional variables using the set of decision diagram. According to an example embodiment, to select the minimum number of additional variables, the optimal factorable reduction module 202b may be configured to solve a consistent path problem in the set of decision diagrams connected by a consistency of the intermediate monomials. As used herein, the intermediate monomials may be the monomials that are represented by the parent nodes of the decision diagrams in the set of decision diagrams. As used herein, the consistency of the intermediate monomials may indicate that if the intermediate monomials having similar structure is present in one or more decision diagrams of the set of decision diagrams, then the intermediate monomials having similar structure may be selected for the factorization of the polynomial function and may be represented with same additional variable. As used herein, the consistent path problem may be defined as a problem to find the intermediate monomials in the set of decision diagram subjected to the consistency of the intermediate monomials such that the intermediate monomials factorize the polynomial function.
According to an embodiment, the mixed-integer optimization problem solves the consistent path problem by minimizing over the nodes and the arc connecting the nodes in the set of decision diagrams subjected to the consistency of the intermediate. For instance, the mixed-integer optimization problem may be mathematically defined as below.
where the notation D is a set of all multilinear terms that occur in the polynomial function ƒ(x), the notation (d)={(i, n)|n∈
i, degi(n′)=d} for d∈D, and The notation ci,n are coefficients, which may be defined as ci,n=1/|{j|(n′)=degi(n) for some n′∈
}|.
Since the Equation (3b) encodes all possible factorizations for each monomial ƒi(x), the Equation (3c) ensures the consistency of the intermediate monomials, and the Equation (3a) represents the intermediate monomials that factorize all of the monomials in the polynomial function ƒi(x), accordingly the optimal solution to Equation (3) encodes a minimum factorization of the polynomial function ƒ(x). As used herein, the term ‘minimum’ part of the minimum factorization may indicate the factorization of the polynomial function with the minimum number of additional variables. For instance, the minimum factorization for the polynomial function ƒ(x)=10 x1x2x3x4+5 x0 x2 x3 is as illustrated in
The algorithm 334 (Line 1) is executed on the optimal factorable reduction module 202b to initialize the set Si including all variable that occur in each monomial of the polynomial function. The algorithm 334 (Line 2) is executed on the optimal factorable reduction module 202b to initialize a set (ui*) denoting a subset of hyper-arcs that are chosen in the optimal solution. The algorithm 334 (Line 3) is executed on the optimal factorable reduction module 202b to define a function d(i) for i∈{1, . . . , n} so that xd(i) represents variables xi. The algorithm 334 (Line 5 to Line 8) is executed on the optimal factorable reduction module 202b to introduce a new additional variable xn+1 that represents the intermediate monomials xd(n+1) and factorizes a product xj1xj2. The algorithm 334 (Line 9) is executed on the optimal factorable reduction module 202b to set d(n+1)=d(j1)+d(j2) as the new additional variable is introduced. The algorithm 334 (Line 12) is executed on the optimal factorable reduction module 202b to eliminate the variables xj1, xj2 from Sk if the intermediate monomial hyper-arc in
k representing the product xj1xj2 is chosen in the optimal solution. Upon executing the algorithm 334, the optimal factorable reduction module 334 may output a set g corresponding to the optimal solution. For instance, the set g may represent a set of additional variables and the products denoted by the additional variables.
Referring to
To this end, the polynomial optimization of the polynomial function ƒ(x)=10x1x2x3x4+5 x0x2x3 may be represented as below.
min 10x7+5x8 Equation (4a)
s.t. x7=x5x6,x8=x5x0,x5=x2x3,x6=x1x4,li≤xi≤ui i=0, . . . ,8 Equation (4b)
where li, ui are the lower and upper bounds on the variables.
The Equations (4a) and Equation (4b) indicate that the degree of the polynomial function ƒ(x)=10x1x2x3x4+5x0x2x3 is reduced to the target degree of ‘one’ as initially set by the optimal factorable reduction module 202b by introducing the additional variables x5, x6, x7, and x8 and further indicate the polynomial optimization may be subjected to the constraints (i.e. Equation (4b)) that may not be of degree as the target degree. For instance, the degree of the product terms in the constraints (Equation (4b)) may be higher than the target degree. Accordingly, in an example embodiment, the optimal factorable reduction module 202b may be further configured to reduce, to the target degree, the degree of the product terms in the constraints. In an example embodiment, the optimal factorable reduction module 202b may relax the product terms in the constraints using McCormick convex and concave envelops. The McCormick convex and concave envelops for a set j
xk−lj
xk−uj
xk−uj
xk−lj
where the notation xk is a product of the variables xj
Using Equations (4a) and 4(b) and Equations (5a) to (5d), the Linear Programming (LP) relaxation of the polynomial optimization of the polynomial function ƒ(x)=10x1x2x3x4+5 x0x2x3 may be represented as below.
min 10x7+5 x8 s.t. (x5,x6,x7)∈5,6,(x5,x0,x8)∈
5,0,(x2,x3,x5)∈
2,3,(x1,x4,x6)∈
1,4,li≤xi≤ui
In this way, the optimal reduction module 202b may derive the LP relaxation by introducing the minimum number of additional variables. Since the LP relaxation is derived by introducing the minimum number of additional variables, computation to solve the polynomial optimization with the LP relaxation is reduced in comparison to other available optimization techniques. Accordingly, the controller 100 may solve the polynomial optimization in an efficient manner. In an example embodiment, the feedback controller 202a may solve, using a branch and bound algorithm, the LP relaxation to determine the sequence of control inputs.
Some embodiments are based on the realization that the optimal reduction module 202b may derive multiple bilinear programing reformulations for the polynomial optimization with same number of minimum additional variables. To this end, the optimal reduction module 202b may identify that bilinear programming reformulation which leads to the LP relaxation with a largest lower bound.
For purpose of explanation, in
Similarly, the optimal factorable reduction module 202b may be configured to represent a monomial ƒ2(x)=x1x2x3 with a second decision diagram such that the second decision diagram encodes every possible factorization of the monomial ƒ2(x)=x1x2x3. Further, the optimal factorable reduction module 202b may be configured to produce a set of decision diagrams that includes the first decision diagram and the second decision diagram. Furthermore, the optimal factorable reduction module 202b may be configured to solve the mixed-integer optimization problem in the set of decision diagrams connected by the consistency of the intermediate monomials, as explained in the detailed description of
In an example embodiment, the optimal factorable reduction module 202b may introduce a new additional variable x6 to represent intermediate monomial x1x2 in the sub graphs 400 and 402. Further, the optimal factorable reduction module 202b may introduce a new additional variable x7 in the sub graph 400 to represent intermediate monomial x3x4. Furthermore, the optimal factorable reduction module 202b may introduce a new additional variable x8 in the sub graph 400 to represent the bilinear product of the intermediate monomial x1x2 (represented by the additional variable x6) and the intermediate monomial x3x4 (represented by the additional variable x7).
To this end, the polynomial optimization of the polynomial function ƒ(x)=20 x1x2x3x4x5+55 x1x2x3 may be represented as below.
min 20 x8x5+55 x6x3 Equation (6a)
s.t. x6=x1x2,x7=x3x4,x8=x6x7,li≤xi≤ui Equation (6b)
The Equation (6a) and (6b) may be the bilinear programing reformulation of the polynomial function ƒ(x), since the degree of the monomials in Equation (6a) and the degree of the product terms in the Equations (6b) is equal to the value of ‘two’. Further, in some example embodiment, the optimal factorable reduction module 202b may reduce the bilinear programming reformulation to the LP relaxation using the McCormick convex and concave envelops.
For purpose of explanation, in
Similarly, the optimal factorable reduction module 202b may be configured to represent a monomial ƒ2(x)=x1x2x3x4 with a second decision diagram such that the second decision diagram encodes every possible factorization of the monomial ƒ2(x)=x1x2x3x4. Further, the optimal factorable reduction module 202b may be configured to produce a set of decision diagrams that includes the first decision diagram and the second decision diagram. Furthermore, the optimal factorable reduction module 202b may be configured to solve the mixed-integer optimization problem in the set of decision diagrams connected by the consistency of the intermediate monomials, as explained in the detailed description of
In an example embodiment, the optimal factorable reduction module 202b may introduce a new additional variable x6 to represent intermediate monomial x1x2x3 in the sub graphs 500 and 502. To this end, the polynomial optimization of the polynomial function ƒ(x)=x1x2x3x4x5+x1x2x3x4 may be represented as below.
min x6x4x5+x6x4 Equation (7a)
s.t. x6=x1x2x3li≤xi≤ui Equation (7b)
The Equation (7a) and (7b) may be the trilinear programing reformulation of the polynomial function ƒ(x), since the degree of the monomials in the Equation (7a) and the degree of the product terms in the Equations (7a) is equal to the value of ‘less than or equal to three’. Further, in some example embodiment, the optimal factorable reduction module 202b may reduce the trilinear programming reformulation to the LP relaxation using one or more of the McCormick convex and concave envelops and/or polyhedral envelops. For instance, the polyhedral envelops may be used to represent a trilinear product as a linear function by using a set of inequalities.
In another example embodiment, a SemiDefinite Programming (SDP) relaxation may be used to compute a lower bound for the bilinear programming reformulation in Equations (4a) and (4b). The SDP relaxation is obtained by approximating the outer product of the vector variables. Let x=(x0, . . . , x8) denote the column vector of the variables in Equations (4a)-(4b) i.e. the set of original variables and additional variable introduced to reduce the degree of the polynomial to the target degree of less than or equal to 2. Then, the outer xxT is 9×9 matrix consisting of all the possible pairwise product terms that can be formed using the variables, i.e.
The SDP relaxation is a linear program over the semidefinite cone and is written as
min 10x7+5 x8 Equation (4a)
s.t. x7=X56,x8=X05,x5=X23,x6=X14,li≤xi≤ui,X−xxT is positive semidefinite,Xii≤min(li2,ui2) Equation (4b)
where Xij refers to the entry of the matrix X in row i and column j. The matrix X is a symmetric matrix that approximates the outer product xxT.
Starting at block 602, the controller 100 may be configured to solve the polynomial optimization for the control policy to test a presence of a Lyapunov function. For instance, the controller 100 may compute the minimization for the control policy with the reformulation obtained from the optimal factorable reduction module 202b to test the presence of the Lyapunov function. For example, the Lyapunov function may be a set of equations that define a stability of the system 102 using the feedback signal that includes the current measurement of the current state of the system 102 and/or the previous measurements of the previous states of the system 102.
At block 604, the controller 100 may determine the current control command according to the control policy. As used herein, the current control command may define a desired behavior of the system 102. For instance, if the solution to the polynomial optimization of the control policy indicates that the system 102 is not directed towards the stability, then the controller 100 may determine the current control command to direct the system 102 towards the stability.
At block 606, the controller 100 may determine the current control input, based on the determined current command. Such current control input may be used further to control the system 102.
Some embodiments are based on the recognition that the optimal transmission switching problem may be formulated as the mixed-integer nonlinear program with the binary variables correspond to on/off state of the transmission lines. To this end, the electrical grid 700 may be operatively coupled to the controller 100. The controller 100 may be configured to determine the sequence of control inputs indicating on/off states of the transmission lines in the power grid 700 by solving the solve the polynomial optimization of the polynomial function that corresponds to the mixed-integer nonlinear program. Thereby, the controller 100 may avoid the voltage violation problems in the transmission network.
The elevator car 802 and the counterweight 804 have a center of gravity at a point where summations of the moments in the x, y, and z directions are zero. In other words, the elevator car 802 or counterweight 804 may theoretically be supported and balanced at the center of gravity (x, y, z), because all of the moments surrounding the center of gravity point are cancel out. The main ropes 806 and 808 typically are connected to the crosshead 812 of the elevator car 802 where the coordinates of the center of gravity of the elevator car 802 are projected. The main ropes 806 and 808 are connected to the top of the counterweight 804 where the coordinates of the center of gravity of the counterweight 804 are projected.
During the operation of the electrical elevator 800, different components of the elevator are subjected to internal and external disturbance, e.g., sway due to wind, resulting in lateral motion of the components. Such lateral motion of the components can result in a sway of the elevator rope that needs to be measured. Accordingly, one or a set of sway sensors 828 can be arranged in the electrical elevator 800 to determine a lateral sway of the elevator rope.
The set of sensors may include at least one sway sensor 828. For example, the sway sensor 828 is configured to sense a lateral sway of the elevator rope at a sway location associated with a position of the sway sensor.
During the operation of the electrical elevator 800, the locations of the sway are determined and transmitted to the controller 100. The controller 100 determines a state of the sway of the elevator rope, e.g., amplitude and a velocity of the sway. The controller 100 can determine the state of the sway based only on the sway measurements. The controller 100 may determine the control policy that may be a function of the amplitude and the velocity of the sway. Further, the controller 100 may determine the sequence of the control inputs to the electrical elevator 800 by solving the polynomial optimization of the polynomial function (i.e. the determined control policy). The sequence of the control inputs may correspond to damping force. Furthermore, the controller 100 may control a semi-active damper actuator 830 of the electrical elevator 800 to change damping force to the elevator rope, based on the sequence of the control inputs.
At block 908, the controller 100 may reduce, to the target degree, the degree of the product terms of the constraints in the polynomial optimization. For instance, the controller 100 may use one or more of the McCormick convex and concave envelops and/or the polyhedral envelops to reduce the degree of the product terms of the constraints. At block 910, the controller 100 may solve, using the branch and bound algorithm, the polynomial optimization of the polynomial function to obtain a global optimality.
The above description provides exemplary embodiments only, and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the above description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing one or more exemplary embodiments. Contemplated are various changes that may be made in the function and arrangement of elements without departing from the spirit and scope of the subject matter disclosed as set forth in the appended claims.
Specific details are given in the above description to provide a thorough understanding of the embodiments. However, understood by one of ordinary skill in the art may be that the embodiments may be practiced without these specific details. For example, systems, processes, and other elements in the subject matter disclosed may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail. In other instances, well-known processes, structures, and techniques may be shown without unnecessary detail in order to avoid obscuring the embodiments. Further, like reference numbers and designations in the various drawings indicated like elements.
Also, individual embodiments may be described as a process which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations may be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process may be terminated when its operations are completed, but may have additional steps not discussed or included in a figure. Furthermore, not all operations in any particularly described process may occur in all embodiments. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, the function's termination may correspond to a return of the function to the calling function or the main function.
Furthermore, embodiments of the subject matter disclosed may be implemented, at least in part, either manually or automatically. Manual or automatic implementations may be executed, or at least assisted, through the use of machines, hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware or microcode, the program code or code segments to perform the necessary tasks may be stored in a machine readable medium. A processor(s) may perform the necessary tasks.
Various methods or processes outlined herein may be coded as software that is executable on one or more processors that employ any one of a variety of operating systems or platforms. Additionally, such software may be written using any of a number of suitable programming languages and/or programming or scripting tools, and also may be compiled as executable machine language code or intermediate code that is executed on a framework or virtual machine. Typically, the functionality of the program modules may be combined or distributed as desired in various embodiments.
Embodiments of the present disclosure may be embodied as a method, of which an example has been provided. The acts performed as part of the method may be ordered in any suitable way. Accordingly, embodiments may be constructed in which acts are performed in an order different than illustrated, which may include performing some acts concurrently, even though shown as sequential acts in illustrative embodiments. Although the present disclosure has been described with reference to certain preferred embodiments, it is to be understood that various other adaptations and modifications may be made within the spirit and scope of the present disclosure. Therefore, it is the aspect of the append claims to cover all such variations and modifications as come within the true spirit and scope of the present disclosure.
Number | Name | Date | Kind |
---|---|---|---|
20110257799 | Al-Hamouz | Oct 2011 | A1 |
20120239167 | Carrette | Sep 2012 | A1 |
20140025210 | Joshi | Jan 2014 | A1 |
20220403621 | Kinoshita | Dec 2022 | A1 |
20230158670 | Lin | May 2023 | A1 |
Number | Date | Country |
---|---|---|
1060540 | Apr 1992 | CN |
101322083 | Dec 2008 | CN |
106773700 | May 2017 | CN |
Number | Date | Country | |
---|---|---|---|
20230038838 A1 | Feb 2023 | US |