Sequential Convexification Method for Model Predictive Control of Nonlinear Systems with Continuous and Discrete Variables
The sequential convexification method for MINMPC reformulates problems to allow efficient solution of MICP subproblems, addressing computational challenges and enabling real-time control of hybrid systems with both continuous and discrete elements.
Patent Information
- Application Number
- JP2024548798
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-11-18
- Filing Date
- 2022-09-01
- Publication Date
- 2025-07-11
- Estimated Expiration
- 2042-09-01
AI Technical Summary
Existing methods for mixed-integer nonlinear model predictive control (MINMPC) are computationally difficult due to non-convex optimization problems, making real-time implementation challenging, especially when systems have both continuous and discrete elements.
A sequential convexification method based on mixed-integer convex programming (MICP) subproblems is used, reformulating the problem to ensure integer and binary variables enter linearly, allowing for partial convexification and efficient solution through branch-and-bound methods.
This approach enables the calculation of feasible and sub-optimal solutions in real-time, reducing computational complexity and achieving high processing speed with precision for hybrid dynamic systems.
Smart Images

Figure 0007706667000064 
Figure 0007706667000065 
Figure 0007706667000066
Abstract
Description
Technical Field
[0001] The present disclosure generally relates to mixed-integer nonlinear optimization-based control, and more particularly to a sequential convexification method and apparatus for model predictive control of a system described by nonlinear dynamics with continuous and discrete elements of operation.
Background Art
[0002] Optimization-based decision-making, planning, and control techniques such as model predictive control (MPC) enable a model-based design framework in which system dynamics, system requirements, and constraints can be directly considered. This framework has been extended to hybrid dynamic systems that include both continuous and discrete decision variables, which include, for example, dynamic systems with mode switching or systems with quantization operations, logical rules, temporal logic specifications, or problems with obstacle avoidance constraints. However, the resulting optimization problem is highly non-convex and thus difficult to solve in practice because it includes variables that take only discrete values (e.g., binary or integer values). When using nonlinear system dynamics, one or more non-linear constraint functions, and / or a non-linear objective function, the resulting optimal control problem (OCP) can be formulated as a mixed-integer non-linear program (MINLP) problem, which is NP-hard and thus computationally difficult to solve.
[0003] Generally, Mixed-Integer Nonlinear Model Predictive Control (MINMPC) requires the solution of non-convex MINLPs, i.e., the optimization problems are non-convex even after relaxing the integer constraints, due to, for example, non-linear system dynamics, non-linear constraint functions, and / or objective functions. Most successful global optimization algorithms for MINLPs require convexity of the objective and constraint functions and thus cannot be used to solve the MINMPC problem to global optimality. Global optimization algorithms exist for non-convex MINLPs, for example, using relaxations of factorable problems, but they are typically computationally very expensive and thus generally not yet practical for real-time implementation of MINMPC.
[0004] Decision-making, planning, or control for hybrid systems aims to solve the MINLP at each sampling instant in order to enable real-time MINMPC applications. Thus, some methods focus on approximate or heuristic techniques for finding feasible (and in some cases sub-optimal) solutions to MINLPs within strict timing requirements. Some existing techniques are based on global algorithms for convex MINLPs, which can be used, for example, with outer approximation or hybrid branch-and-bound (hB&B) methods, to find approximate solutions to non-convex MINLPs. For non-convex MINMPC in particular, variants of the Real-Time Iteration (RTI) algorithm based on outer convexification combined with rounding schemes have been proposed. However, when the inequality constraints directly depend on discrete decision variables, the latter approach requires solving mathematical programs with disappearing constraints, which are particularly difficult.
[0005] For example, sequential convexification techniques that use the sequential convex programming (SCP) method or the sequential quadratic programming (SQP) method form popular techniques for solving general non-linear programming (NLP) problems. In particular, sequential convexification techniques have been successfully used for the real-time implementation of non-linear model predictive control (NMPC) with smooth non-linear dynamics, non-linear constraint functions and / or inequality constraints. However, for systems that have both continuous and discrete elements of operation, i.e., systems in MINMPC that include continuous as well as integer and / or binary decision variables, these methods need to be extended to NMPC.
[0006] In recent prior art, a mixed integer sequential quadratic programming method (MISQP) based on the use of trust region radii for both continuous and integer optimization variables has been proposed. This method requires the solution of a mixed integer quadratic programming (MIQP) subproblem at each iteration, which can be efficiently solved, for example, using state-of-the-art branch and bound (B&B) optimization methods. However, the standard MISQP method relies on the assumption that integer variables have a smooth influence on MINLP, i.e., incrementing an integer variable by 1 only results in a small change in the function value. However, the latter assumption generally does not hold for MINMPC, because, for example, a constrained optimization problem may include binary variables that have a large impact on the optimal control trajectory.
[0007] Therefore, there is a need for a sequential convexification method that is more generally applicable to MINMPC problems, which is an object of the systems and methods described in the present invention. SUMMARY OF THE INVENTION
[0008] Embodiments of the present invention are based on the solution of a sequence of one or more Mixed-Integer Convex Programming (MICP) subproblems, and the preparation of each subproblem is performed based on a partial convexification technique to calculate a feasible but in some cases sub-optimal solution of the Mixed-Integer Nonlinear Optimal Control problem at each sampling time of the proposed MINMPC controller. The solution of each MICP subproblem can be used to update the optimal solution guess for all integer and / or binary decision variables, as well as to calculate a new search direction for the continuous decision variables. Additionally, based on the updated values for the integer and / or binary decision variables and based on the new search direction for the continuous decision variables, the current solution guess for the continuous decision variables can be updated in each iteration of the Mixed-Integer Successive Convex Programming (MISCP) optimization algorithm.
[0009] Some embodiments of the present invention are based on the recognition that any MINLP can be reformulated in a separable form as a different but mathematically equivalent MINLP, where all integer and / or binary decision variables enter linearly in all constraint functions and objective functions. The latter reformulation can be achieved, for example, by defining one or more auxiliary continuous optimization variables to ensure that all integer and / or binary optimization variables enter linearly in the constraint functions and objective functions. Specifically, thus, in the constraint functions and objective functions of the MINMPC formulation, all non-linear functions that may exist in a separable form depend only on the continuous optimization variables. Some embodiments of the present invention are based on the recognition that the linear dependence of the constraint functions and objective functions in the MINMPC formulation on all integer and / or binary decision variables can be used to avoid smoothness requirements, i.e., incrementing an integer variable by 1 results in only a small change in the function value, which limits the applicability of the standard MISQP algorithm for MINMPC.
[0010] In each iteration of the proposed MISCP optimization algorithm, a partial convexification technique is used to prepare the MICP subproblem. Some embodiments of the present invention are based on the recognition that due to the linear dependence of the constraint functions and objective functions in the MINMPC formulation with respect to all integer and / or binary decision variables, the partial convexification technique needs to be applied only to smooth non-linear functions. In some embodiments of the present invention, the partial convexification technique is based on the local linearization of all smooth non-linear functions that may exist in the constraint functions and objective functions of the MINMPC formulation, based on the solution guess of the continuous optimization variables in the current iteration of the MISCP algorithm. Alternatively, in other embodiments of the present invention, the partial convexification technique can be used to compute a more general convex approximation of the non-linear functions in one or more inequality constraints of the MINMPC problem formulation, resulting in convex quadratic inequality constraints in a mixed-integer quadratic constrained quadratic programming (MIQCQP) subproblem, or convex quadratic cone constraints in a mixed-integer second-order cone programming (MISOCP) subproblem.
[0011] Embodiments of the present invention are based on the recognition that the solution of the MICP subproblem in each iteration of the proposed MISCP algorithm can be computed relatively quickly, thanks to the progress made over the past few decades in the development of state-of-the-art solvers for MICP. For example, the branch-and-bound method can be used to efficiently solve mixed-integer quadratic programming (MIQP) or mixed-integer linear programming (MILP) subproblems. State-of-the-art branch-and-bound methods for MIQP and / or MILP include advanced primal heuristics, branching strategies, pre-solving, cut generation techniques, and convex solvers with early termination and infeasibility detection, effectively reducing the size of the branch-and-bound search tree and thus the amount of convex relaxation that needs to be solved to compute the globally optimal solution for each MIQP / MILP.
[0012] Some embodiments of the present invention are based on the recognition that updating the continuous decision variables in each MISCP iteration can be performed in a specific way to ensure a certain degree of progress when calculating a feasible but perhaps sub-optimal solution to the MINLP problem. Some embodiments of the present invention use a globalization strategy based on a merit function that quantifies a combination of optimality and constraint satisfaction for solution speculation of the values of continuous and discrete decision variables. An example of a merit function is based on the l1 penalty function applied to each violation of the equality constraints and each inequality constraint in the MINMPC problem formulation, excluding the integer constraints that are deliberately and automatically satisfied for each of the integer and / or binary decision variables in each iteration of the proposed MISCP optimization algorithm.
[0013]
Number
[0014] In some embodiments of the present invention, the globalization strategy is based on a trust region method that calculates a small region within the space of continuous decision variables where the local convex approximation of the non-linear constraints and / or the objective function is sufficiently accurate. The accuracy of the partial convexification can be approximately evaluated based on the ratio of the actual reduction to the predicted reduction in the value of the merit function from one solution speculation to the next in each iteration of the MISCP optimization algorithm. Some embodiments of the present invention are based on the trust region radius, the value of which can be increased, decreased, or kept the same in each iteration of the algorithm.
[0015] Some embodiments of the present invention are based on the recognition that a relatively small trust region radius may be used when the MISCP optimization algorithm is feasible for the MINMPC problem but in some cases is close enough to the sub-optimal solution, resulting in a significant reduction in the computational cost for solving the MICP sub-problem due to the relatively small trust region radius.
[0016] Some embodiments of the present invention are based on a warm-start strategy that calculates an estimate of the optimal values of continuous decision variables and integer and / or binary decision variables based on a feasible but in some cases sub-optimal solution of the MINMPC problem at the previous sampling time. For example, in some embodiments of the present invention, a time-shift procedure over one sampling period can be used to warm-start the solution estimate of the MISCP optimization algorithm, assuming an optimal or near-optimal solution to the MINLP at the previous sampling time of the proposed MINMPC controller.
[0017] Some embodiments of the present invention are based on the solutions of one or more MICP subproblems with a limited number, after which some or all of the integer and / or binary decision variables remain fixed, resulting in solutions of one or more of the convex programming (CP) subproblems. The upper limit on the number of MICP solutions can be relatively small so as to significantly reduce the computational cost of the MISCP optimization algorithm, while being chosen large enough to enable the MISCP optimization algorithm to calculate a well-feasible but in some cases sub-optimal solution to the MINMPC problem. For example, in some embodiments of the present invention, at each sampling time of a real-time executable MINMPC controller, it is only necessary to solve a single MICP subproblem.
[0018] Some embodiments of the present invention are based on the recognition that one or more solution methods of the CP subproblem can be executed at a much lower computational cost than one or more solution methods of the MICP subproblem. Some embodiments of the present invention are based on the recognition that fixing some or all of the integer and / or binary decision variables after one or more solutions of a limited number of MICP subproblems can prevent cycling of the MISCP optimization algorithm in the proposed MINMPC controller.
[0019] In some embodiments of the present invention, the number of MITCP iterations is determined by the termination condition of the optimization algorithm, which may be based on the norm of the Karush-Kuhn-Tucker (KKT) necessary conditions for optimality for MINLP, except for integer conditions.
[0020] In some embodiments of the present invention, the homotopy-type penalty method is used to adjust the cost function in each MICP subproblem, and the MISCP algorithm is gradually implemented to calculate updates to the optimal solution guess for some or all of the integer and / or binary decision variables that remain close to the solution guess of the integer and / or binary decision variables in the previous MISCP iteration.
Number
[0021] Some embodiments of the present invention are based on the recognition that the use of the homotopy-type penalty method for some or all of the integer and / or binary decision variables can prevent cycling in the MISCP optimization algorithm. In addition, some embodiments of the present invention are based on the recognition that the use of the homotopy-type penalty method for some or all of the integer and / or binary decision variables can significantly reduce the computational cost of solving the MICP subproblem in the MISCP optimization algorithm.
[0022] Accordingly, one embodiment discloses a predictive feedback controller for controlling a hybrid dynamic system with non-linear dynamics and continuous and discrete elements of operation, the predictive feedback controller comprising at least one processor and a memory storing instructions, the instructions, when executed by the at least one processor, cause the predictive feedback controller to, ●Accept a feedback signal including a measurement value indicating the current state of the hybrid dynamic system, including one or a combination of the current state of the prediction controller, the current state of one or more actuators of the hybrid dynamic system, and the current state of the output of the hybrid dynamic system; ●Formulate a mixed-integer nonlinear programming (MINLP) problem that optimizes an objective function subject to one or more constraints to change the current state of the hybrid dynamic system according to a control objective, where the constraints include equality constraints, inequality constraints, or both, and the constraints and control objective of the MINLP problem include one or more nonlinear functions of continuous optimization variables representing continuous elements of the operation of the hybrid dynamic system and one or more linear functions of integer optimization variables representing discrete elements of the operation of the hybrid dynamic system, and the MINLP problem is formulated in a separable format that ensures that the discrete elements of the operation only exist in the linear functions of the MINLP problem; furthermore, the instructions, when executed by at least one processor, cause the predictive feedback controller to, ●Solve the MINLP problem over multiple iterations of a sequential convexification-based optimization procedure until an end condition is met. To perform the iterations, the predictive feedback controller is configured to perform a partial convexification of a portion of the solution space including the current solution guess. The partial convexification generates a convex approximation of the non-linear functions of the MINLP without approximating the linear functions of the MINLP to generate a partially convexified MINLP; furthermore, the instructions, when executed by at least one processor, cause the predictive feedback controller to update the current solution guess by solving the mixed-integer convex programming (MICP) formulation of the partially convexified MINLP problem; ●Submit the control command generated according to the solution of the MINLP problem to the hybrid dynamic system, thereby causing a change in the current state of the hybrid dynamic system.
Brief Description of the Drawings
[0023]
Figure 1A
Figure 1B
Figure 1C
Figure 2A
Figure 2B
Figure 2C
Figure 2D
Figure 3A
Figure 3B
Figure 4A
Figure 4B
Figure 4C
Figure 5A
Figure 5B
Figure 6A
Figure 6B
Figure 6C
Figure 6D
Figure 7A
Figure 7B
Figure 7C
Figure 8A
Figure 8B
Figure 8C
Figure 8D
Figure 9A
Figure 9B
Figure 9C
Figure 10A
Figure 10B
Figure 11A
Figure 11B
Figure 12A
Figure 12B
Figure 12C
Figure 12D
Figure 13A
Figure 13B
Figure 14A
Figure 14B
Figure 15
DETAILED DESCRIPTION OF THE INVENTION
[0024] Some embodiments of the present disclosure provide a system and method for controlling the operation of a system, or a system that uses a predictive controller. An example of a predictive controller is a mixed integer nonlinear model predictive controller (MINMPC) that determines control inputs based on a nonlinear model of a controlled system having continuous and discrete elements of operation.
[0025] FIG. 1A shows a block diagram of a prediction controller 110 and a feedback system 120 according to some embodiments. FIG. 1A shows an exemplary feedback system (or system) 120 connected to a prediction controller 110 (or controller) via a state estimator 130 according to some embodiments. In some implementations, the prediction controller 110 is a MINMPC controller programmed according to a dynamic model 102 (or system model) of the system 120. The system model 102 can be a set of equations that represent the changes in the state and output 103 of the system 120 over time as a function of the current and previous inputs 111 and the previous output 103. The system model 102 can include constraints 104 that represent the physical and operational limitations of the system 120. During operation, the controller 110 receives a command 101 that indicates the desired behavior of the system 120. The command can be, for example, a motion command. In response to receiving the command 101, the controller 110 generates a control signal 111 that acts as an input to the system 120, including both continuous and discrete elements of the operation. In response to the input, the system updates the output 103 of the system 120. Based on the measurement of the output 103 of the system 120, the estimator 130 updates the estimated state 121 of the system 120. This estimated state 121 of the system 120 provides state feedback to the prediction controller 110. Thus, the prediction controller first receives a feedback signal 121 of the system 120 via the estimator 130, and the feedback signal 121 includes measurements of the state of the system 120.
[0026] The system 120 referred to in this specification can be any machine or device controlled by a specific operating input signal, such as control signal 111 (input). The control input signal can, in some cases, include continuous elements such as voltage, pressure, force, torque, steering angle, speed, and temperature, as well as discrete elements such as energy level, quantized valve input, gear shift, on / off operation, lane selection, and obstacle avoidance decision variables. The system 120 returns, in some cases, several controlled output signals 103 (output) including continuous elements such as current, flow, speed, position, temperature, direction of travel, and steering angle, as well as discrete elements such as energy level, quantized valve state, gear state, on / off state, and lane position. The output values are related, in part, to the previous output values of the system and, in part, to the previous and current input values. The dependencies on the previous input and previous output are encoded in the state of the system. The operation of the system, for example, the movement of the components of the system, can include a sequence of output values generated by the system after the application of specific input values.
[0027] The system model 102 can include a set of mathematical equations that describe how the system output changes over time as a function of the current input, previous input, and previous output. The mathematical equations can include one or more smooth equations that depend on continuous variables and one or more mixed integer equations that depend on both continuous and discrete variables. Each function in the mathematical equations can be either a linear or smooth non-linear function. The state of the system 120 is generally any time-varying set of information, such as the current input and output and an appropriate subset of the previous input and output that, together with the model of the system and future inputs, can uniquely define the future movement of the system.
[0028] System 120 can receive physical limitations and specification constraints 104 that limit the range within which the output, input, and possibly the state of system 120 can also be operated. The constraints can include one or more smooth equations that depend on continuous variables and one or more mixed - integer equations that depend on both continuous and discrete variables. The constraint functions can be either linear or smooth non - linear functions. Some embodiments of the present invention are based on the recognition that for each of the smooth non - linear functions within the constraints 104, first - order or higher - order directional derivatives can be calculated.
[0029] The prediction controller 110 can be implemented in hardware or as a software program executed by a processor, e.g., a microprocessor, and receives the estimated state 121 and the desired motion command 101 of the system 120 at a fixed or variable control - period sampling interval, and uses this information to determine an input, e.g., a control signal 111, for operating the system 120. The prediction controller 110 further uses a mixed - integer sequential convex programming (MISCP) method to solve an optimal control structured mixed - integer non - linear programming (MINLP) problem, and optimizes the current solution of the objective function subject to one or more equality and / or inequality constraints over a plurality of iterations until an end condition is satisfied, e.g., until the solution is feasible and (locally) optimal for the optimal control structured MINLP. Each iteration of the MISCP method performs a partial convexification of a portion of the solution space that includes the current solution, and the partial convexification generates a convex approximation of the smooth non - linear functions of the MINLP without approximating the linear functions of the MINLP to generate a partially convexified MINLP. Then, each iteration can update the current solution by solving a mixed - integer convex programming (MICP) formulation of the partially convexified MINLP problem to generate the control signal 111. Further, the prediction controller 110 controls the system 120 based on the control signal 111 to change the state of the system 120.
[0030] The estimator 130 can be implemented in hardware or as a software program executed by a processor that may be the same as or different from the controller 110, receives the output of the system 103 at a fixed or variable control period sampling interval, and determines the estimated state 121 of the system 120 using new and previous output measurements.
[0031] Thus, by using the MISCP optimization method, the processor can calculate a feasible and (locally) optimal solution of the optimal control structured MINLP by solving a sequence of MICP subproblems, and the formulation of each MICP subproblem is based on a partial convexification of a part of the solution space. Since the computational complexity of solving the MICP subproblems is reduced compared to the computational complexity of solving the original MINLP, the processor can accurately determine a feasible and (locally) optimal solution in order to control the state of the system 120 in less time. Thus, the processor achieves a high processing speed with high precision.
[0032] FIG. 1B shows a block diagram of a mixed-integer nonlinear predictive controller 110 and a feedback system 120 according to some embodiments. The predictive controller 110 operates the system 120 such that the estimated state 121 and output 103 of the system 120 follow the command 101. The controller 110 includes, for example, a computer in the form of a single central processing unit (CPU) or multiple CPU processors 151 connected to a memory 152 for storing the system model 102 and the constraints 104 regarding the operation of the system 120. The CPU processor 151 may be composed of a single-core processor, a multi-core processor, a computing cluster, or any number of other configurations. The memory 152 may include random access memory (RAM), read-only memory (ROM), flash memory, or any other suitable memory system.
[0033] Figure 1C shows a block diagram of the hierarchical integration between a mixed integer nonlinear predictive controller 110 that calculates a higher-level control signal 111 and a tracking controller 115 that tracks the higher-level control signal 111 and aims to calculate a lower-level control signal 112 to directly control a feedback system 120, according to some embodiments of the present invention. For example, the predictive controller 110 can be a MINMPC controller that calculates a reference motion trajectory based on a nonlinear dynamic model of a controlled system having continuous and discrete elements of operation, and the tracking controller 115 aims to execute (a part of) the reference motion trajectory by directly sending the control input 112 to the actuator of the controlled system.
[0034] An example of the tracking controller 115 can be based on a proportional-integral-derivative (PID) controller for tracking a time-varying reference motion trajectory calculated by the MINMPC controller 110. In some embodiments of the present invention, the tracking controller 115 can be based on a model predictive controller (MPC) with a relatively simplified dynamic model and a set of simplified constraints, and thus the required computational complexity is relatively small. For example, the MPC tracking controller 115 can be based on a linear-quadratic objective function, a linear dynamic model, and linear equality and inequality constraints that require solutions to convex linear programming (LP) or convex quadratic programming (QP) problems that are computationally much easier to solve than the MINLP solved by the MINMPC controller 110.
[0035] Some embodiments of the present invention are based on the recognition that a relatively long prediction horizon can be used for the mixed integer nonlinear predictive controller 110, a relatively short prediction horizon can be used for the tracking controller 115, a relatively fast sampling rate can be used for the tracking controller, for example, with a sampling period of 10 to 100 milliseconds, while a relatively slow sampling rate can be used for the mixed integer nonlinear predictive controller 110, for example, with a sampling period of 0.5 to 2 seconds.
[0036] Due to the computational complexity of solving MINLP, in some embodiments of the present invention, relatively high-level low-precision dynamic models 102 and constraints 104 can be used in the MINLP formulation of the mixed-integer nonlinear predictive controller 110, while in the design and formulation of the computationally inexpensive tracking controller 115, relatively low-level high-precision dynamic models 102 and constraints 104 can be used, based on the recognition that 。
[0037] FIG. 2A shows a block diagram of a system and method for mixed-integer nonlinear model predictive control (MINMPC) that implements a predictive controller 110 that calculates a control signal 111 given the current state of the system 121 and a control command 101, according to some embodiments. Specifically, MINMPC solves a constrained mixed-integer nonlinear programming (MINLP) problem 250 at each control time step to calculate a control solution, such as a solution vector 255 that may include a sequence of future optimal discrete and continuous control inputs over a prediction time horizon of the system 120. The objective function, equality constraints, and MINLP data 245 of discrete, continuous, and mixed-integer inequality constraints in this optimization problem 250 depend on the dynamic model, system constraints 240, the current state of the system 121, the control objective, and the control command 101.
[0038] In some embodiments of the present invention, the solution to this MINLP problem 250 with inequality constraints uses one or more state values and control values over the prediction time horizon, as well as potentially other MINLP solution information from the previous control time step that can be read from memory (210). This concept is called warm starting or hot starting of the optimization algorithm and, in some embodiments, can reduce the required computational effort of the MINMPC controller. Similarly, the corresponding solution vector 255 can be used to update and store in memory a sequence of one or more optimal state values and control values over the prediction time horizon, as well as potentially other MINLP solution information for the next control time step (235).
[0039] In some embodiments, the mixed-integer optimization algorithm is based on a search algorithm for solving the MICP subproblem that is the result of the partial convexification step in each iteration of the sequential convexification algorithm, and the MINMPC controller updates and stores additional mixed-integer programming solution information 260 to reduce the computational effort of the search algorithm in one or more iterations at the current and / or next control time steps. In one embodiment, the MICP subproblem in each iteration is solved using a branch-and-bound optimization method, and the warm-start information can include data associated with nodes in a binary search tree that is part of the solution path from the root node where the optimal integer-feasible control solution is found to the leaf nodes to improve node selection and variable branching strategies from one iteration to the next.
[0040] FIG. 3A shows a block diagram of the MINMPC method that solves the optimal control structured MINLP 250 to calculate the control signal 111 at each control time step, given the current state 121 of the system 121 and the control command 101. Some embodiments of the present invention are based on a non-linear dynamic model of the system 263 with linear equality constraints 262, non-linear mixed-integer inequality constraints 264 at each time step within the prediction time horizon, non-linear mixed-integer inequality constraints 265 at the terminal time step of the prediction time horizon, linear discrete equality constraints 266, and a linear-quadratic or non-linear objective function 261, and the resulting constrained MINLP 260 needs to be solved at each control time step. The MINLP data 245 can include MINLP matrices and vectors 246 and MINLP functions 247 for formulating the optimal control structured MINLP 260.
[0041] In some embodiments of the present invention, the non-linear dynamic model 263 of the system is described by one or more linear and / or smooth non-linear differential equations. In some embodiments of the present invention, the dynamic model 263 of the system describes a linear or non-linear hybrid system with state-dependent and / or input-dependent jumps in the dynamic equations, including, for example, piecewise linear and / or piecewise smooth non-linear equations.
Number
[0042]
Number
[0043]
Number
[0044] Figure 2C shows the reformulation (270) into a separable format of the optimal control structured MINLP 260, i.e., linearly, optionally by adding one or more continuous and / or integer variables, involving the separation of continuous and integer variables that enter the MINLP linearly and smooth non-linear functions thereof. In some embodiments, the MINMPC predictive controller 110 solves the resulting MINLP in a separable format (280) to calculate the control signal 111 at each control time step, given the current state 121 and command 101 of the system 120.
[0045] In some embodiments of the present invention, the optimal control structured MINLP 260 can be trivially reformulated into a separable format (270) because, for example, the functions 261 in the objective, the functions 263 in the equality constraints, and the functions 264 - 265 in the inequality constraints are defined as follows,
Number
[0046]
Number
[0047] Some embodiments of the present invention are based on the recognition that the separable - format MINLP 280 is mathematically equivalent to the original MINLP 260, i.e., the separable - format MINLP 280 is infeasible only if the original MINLP 260 is infeasible, and a feasible (locally) optimal solution for the separable - format MINLP 280 can be used to construct a feasible (locally) optimal solution for the original MINLP 260. For example, in some embodiments of the present invention, there are affine or non - linear transformations to convert a feasible (locally) optimal solution for the separable - format MINLP 280 into a feasible (locally) optimal solution for the original MINLP 260.
[0048] Figure 2D shows a block diagram of the MINMPC method that solves the separable format optimal control structured MINLP280 to calculate the control signal 111 at each control time step, assuming the current state 121 and command 101 of the system 120. Some embodiments of the present invention are based on a non - linear dynamic model 283 of a system with linear equality constraints 282, non - linear mixed - integer inequality constraints 284 at each time step within the prediction time horizon, non - linear mixed - integer inequality constraints 285 at the terminal time step of the prediction time horizon, linear discrete - equality constraints 286, and a linear - quadratic or non - linear objective function 281. The resulting constrained MINLP280 needs to be solved at each control time step. The MINLP data 245 can include MINLP matrices and vectors 246 and MINLP functions 247 to formulate the optimal control structured MINLP280.
[0049] For example, the MINLP matrices and vectors 246 can include matrices D k 、E k 、E N and vector c k in the constraint functions and objective function of the optimal control structured MINLP280.
Number
[0050] In some embodiments of the present invention, the non - linear dynamic model 283 of the system is described by one or more linear and / or smooth non - linear differential equations. In some embodiments of the present invention, the dynamic model 283 of the system describes a linear or non - linear hybrid system with state - dependent and / or input - dependent jumps in dynamic equations that include, for example, piece - wise linear and / or piece - wise smooth non - linear equations.
Number
[0051]
Number
[0052]
Number
[0053] Figure 3A shows a block diagram of an iterative optimization procedure for solving the optimal control structured MINLP250. Each iteration consists of a partial convexification step 315 and a solution 320 of a mixed-integer convex programming (MICP) subproblem, and can be used to construct a control signal 111 at each control time step, assuming the current state 121 and command 101 of the system 120, until a feasible and (locally) optimal solution is found (255) for updating the intermediate solution guesses for the integer variables 325 and continuous variables 330.
Number
[0054] Each iteration of the sequential convexification-based optimization procedure includes checking 350 whether the current intermediate solution guess is feasible and / or (locally) optimal. In that case, either a solution is found (255), or a new iteration is executed to update the current intermediate MINLP solution guess 335 based on the partial convexification step 315 and the MICP subproblem solution 320, and the current iteration number k can be updated (340). In some embodiments of the present invention, the termination condition 350 includes checking whether the current intermediate solution guess is both feasible, i.e., whether the solution satisfies all equality and inequality constraints in the MINLP, whether it is close enough to the globally optimal solution, and / or whether the computational cost of the iterative optimization procedure has reached a specific time limit. For example, a maximum number of iterations can be imposed to ensure that the iterative optimization procedure terminates at a deterministic runtime.
[0055] Some embodiments of the present invention are based on the recognition that each iteration of the sequential convexification-based optimization procedure for solving MINLP in a separable format (270) can be based on including a partial convexification step 315 of only the smooth non-linear part of the MINMPC problem in a separable format, i.e., for each of the non-linear equality constraints and non-linear inequality constraints, and / or for each of the non-linear objective functions. The partial convexification step 315 does not change the linear constraint functions and objective functions in the separable MINLP format 280 that depend on one or more integer variables, such as the matrix D in the constraint functions and objective functions of the optimal control structured MINLP280 k , E k , E N and the vector c k . Specifically, the partial convexification step 315 does not change the linear discrete equality constraints 286, resulting in a mixed-integer convex programming (MICP) subproblem for calculating the search directions of the continuous and integer variables (Δy k , Δz k ).
[0056] Some embodiments of the present invention are based on the recognition that depending on the specific implementation of the partial convexification step 315, the MICP subproblem can correspond to, for example, a mixed-integer linear programming (MILP) subproblem, a mixed-integer quadratic programming (MIQP) subproblem, a mixed-integer quadratic-constrained quadratic programming (MIQCQP) subproblem, or a mixed-integer second-order cone programming (MISOCP) subproblem
[0057]
Number
[0058] Figure 3B shows a block diagram of an iterative optimization procedure for solving the optimal control structured MINLP250, where each iteration consists of a partial convexification step 315 and a solution 360 of a mixed-integer convex program (MICP) subproblem subject to a trust-region constraint, and an achievable and (locally) optimal solution that can be used to construct the control signal 111 at each control time step is found (255) based on the current state 121 and command 101 of the system 120, while updating the intermediate solution guesses for the integer and continuous variables (335) until an achievable and (locally) optimal solution is found.
Number
[0059]
Number
[0060]
Number
[0061]
Number
[0062]
Number
[0063] Figure 4B shows an achievable and (locally) optimal MINLP solution (y N* , z N*)A block diagram of one or more iterations of a sequential convexification-based optimization procedure for calculating 255 is shown, where the partial convexification steps 401-402 in each iteration are based on local linear-quadratic approximations 441-442 within a small region of the MINLP solution space, and the MICP subproblems 411-412 in each iteration correspond to the solutions 451-452 of MIQP subproblems for calculating the search direction in each iteration of the optimization procedure. In some embodiments of the present invention, the partial convexification steps in each iteration are based on local linearization of only the smooth non-linear part of the MINMPC problem in a separable format, i.e., including local linearization steps for each of the non-linear equality constraints and non-linear inequality constraints and / or local linear-quadratic approximation steps for each of the non-linear objective functions.
[0064] [Number]
[0065] Some embodiments of the present invention are based on the recognition that the solution 453 of the convex QP subproblem is generally computationally much less expensive than the solutions 451-452 of the non-convex MIQP subproblem in each iteration of the sequential convexification-based optimization procedure. In some embodiments of the present invention, the determination of whether to fix the values of all integer variables 460 is based on whether the current intermediate solution guess is close enough to the globally optimal solution and / or whether the computational cost of the iterative optimization procedure has reached a specific time limit. For example, in some embodiments, a maximum number N miqp of MICP subproblem solutions is imposed, and for example, after k ≥ N miqp iterations 460, the computational effort of the iterative optimization procedure can be significantly reduced by fixing the value of the integer variable Δz k = 0.
[0066] FIG. 5A shows a schematic diagram of a partial convexification step of calculating one or more convex inequality constraints to approximate one or more non-convex inequality constraints within a small region of the MINLP solution space corresponding to the local neighborhood of the current intermediate solution guess. Some embodiments of the present invention are based on the recognition that the partial convexification step only calculates a convex approximation for one or more smooth non-linear inequality constraint functions in MINLP 280 in a separable format while keeping invariant a linear function that may depend on one or more integer variables.
[0067]
Number
[0068] In some embodiments of the present invention, each iteration of the sequential convexification-based optimization procedure executes a partial convexification step to calculate a convex approximation 525 of one or more non-convex constraints 510 in the local neighborhood of the current solution guess 520 in order to calculate a search direction that is approximately inside 526 the non-convex feasible region 511. Some embodiments of the present invention recognize that each iteration of the sequential convexification-based optimization procedure calculates a solution for a MICP subproblem 320 that is non-convex due to one or more integer variables, for example, the binary decision variable z k ∈ {0, 1} (505), thereby having a convex approximation 525 for the value z k = 0 (506), while different convex approximations 535 of one or more non-convex constraints 515 exist in the local neighborhood of the current solution guess 530 corresponding to the value z k = 1 (507) in order to calculate a search direction that is approximately inside 536 the non-convex feasible region 516.
[0069] For example, the solution for the MICP subproblem 320 is based on the corresponding convex approximation 525 or 535 of the smooth non-linear part of the MINLP, with the binary variable z k ∈ {0, 1} (505) being z k = 0 (506) or z kIt can include setting to any of =1(507). Some embodiments of the present invention relate to a binary decision variable z k ∈{0,1}(505), that is, depending on the value of z k =0(506) or z k =1(507), for each iteration of the sequential convexification-based optimization procedure, based on the recognition that there may be a complex transformation 540 between the current solution guess 520 or 530, the non-convex feasible region 511 or 516, and the corresponding convex approximation 525 or 535.
[0070] In some embodiments of the present invention, the partial convexification step in each iteration of the sequential convexification-based optimization procedure is based on the local linearization of one or more smooth non-linear inequality constraint functions that define the non-convex set 511 or 516 of achievable values. Specifically, the partial convexification step is to calculate one or more linear inequality constraints, that is, stay within one or more half-spaces 526 with respect to one or more linear functions 525, in order to approximate the non-convex set 511 of achievable values defined by one or more smooth non-linear inequality constraints 284 - 285 within a small region of the MINLP solution space corresponding to the local neighborhood of the current intermediate solution guess 520. Similarly, the partial convexification step can calculate one or more linear equality constraints to approximate the non-convex set of achievable values defined by one or more smooth non-linear equality constraints 283 within a small region of the MINLP solution space corresponding to the local neighborhood of the current intermediate solution guess.
[0071]
Number
[0072] In some embodiments of the present invention, each iteration of the sequential convexification-based optimization procedure calculates a convex approximation 565 of one or more non-convex cost functions 550 in the local neighborhood of the current solution guess 560 in order to calculate a search direction that approximately heads towards the local minimum 561 or the global minimum 562 of the non-convex cost function 550. Some embodiments of the present invention are such that each iteration of the sequential convexification-based optimization procedure calculates a solution to the MICP subproblem 320 that is non-convex due to one or more integer variables including, for example, the binary decision variable z k ∈{0,1}505, whereby there exists a convex approximation 565 for the value z k =0(506), while different convex approximations 575 of one or more non-convex cost functions 555 exist in the local neighborhood of the current solution guess 570 corresponding to the value z k =1(507) based on the recognition that they can be used to calculate a search direction that approximately heads towards the local minimum 571 or the global minimum 572 of the non-convex cost function 545.
[0073] Some embodiments of the present invention are based on the recognition that there may exist a complex transformation 580 between the current solution guesses 560 or 570, the non-convex cost functions 550 or 555, and the corresponding convex approximations 565 or 575 for each iteration of the sequential convexification-based optimization procedure according to the value of the binary decision variable z k ∈{0,1}(505), that is, according to whether z k =0(506) or z k =1(507).
[0074] In some embodiments of the present invention, the partial convexification step in each iteration of the sequential convexification-based optimization procedure is based on a local linear or linear-quadratic approximation 565 or 575 of one or more smooth non-linear objective functions 281 that define the non-convex cost function 550 or 555. Specifically, the partial convexification step can compute one or more linear or linear-quadratic objective functions 565 or 575 to approximate the non-convex cost function 545 within a small region of the MINLP solution space corresponding to the local neighborhood of the current intermediate solution guess 560 or 570, and the resulting MICP subproblem includes one or more linear or linear-quadratic objective functions 565 or 575 such that the solution of the MICP subproblem defines a search direction within the MINLP solution space towards the local or global minimum of the non-convex cost function 545.
[0075] Figure 6A shows a block diagram of a compact formulation of an optimal control structured MINLP in a separable format, solved at each time step of the MINMPC controller, according to some embodiments of the present invention. Specifically, the original optimal control structured MINLP includes functions 281 in the objective, functions 283 in the equality constraints, and functions 284 - 285 in the inequality constraints, in a separable format, based on matrices D k 、E k 、E N and vector c k for each of the time steps within the prediction time horizon k = 0, 1,..., N - 1.
Number
[0076]
Number
[0077]
Number
[0078] FIG. 6B shows a block diagram of an implementation of a sequential convexification-based optimization procedure for updating MINLP solution guesses based on local linear-quadratic approximations and MIQP subproblem solutions within a small region of the MINLP solution space, according to some embodiments of the present invention.
Number
[0079] In some embodiments of the present invention, the MIQP subproblem 650 is constructed based on a sequential convex programming (SCP) method or a sequential quadratic programming (SQP) method applied to a smooth non-linear function in a compact formulation 630 of the MINLP in a separable format with respect to the continuous variable y636, i.e., without affecting the linear terms with respect to the integer variable z637 of the MINLP.
Number
[0080]
Number
[0081]
Number
[0082]
Number
[0083]
Number
[0084]
Number
[0085]
Number
[0086]
Number
[0087] Figure 6D shows a block diagram of an iterative sequential convexification-based optimization procedure for solving the optimal control structured MINLP250, similar to the block diagram of Figure 3A. Each iteration consists of solving a convex QP subproblem 675 or an MIQP subproblem 680 that updates the intermediate solution guesses for the integer variables 325 and the continuous variables 330 following a partial convexification step 315, and is performed (255) until a feasible and (locally) optimal solution is found. Using that solution, the control signal 111 can be constructed at each control time step, assuming the current state 121 and command 101 of the system 120.
Number
[0088]
Number
[0089]
Number
[0090]
Number
[0091]
Number
[0092]
Number
[0093] In some embodiments of the present invention, each iteration of the MISCP optimization algorithm calculates a parameter value ρ>0 that is large enough such that the descent condition 721 holds. Embodiments of the present invention are based on the recognition that increasing the parameter value ρ>0 results in a merit function 711 that relatively strongly quantifies the constraint satisfaction degree compared to the optimality of the MINLP solution guess. Alternatively, decreasing the parameter value ρ>0 results in a merit function 711 that relatively strongly quantifies the optimality compared to the constraint satisfaction degree for the MINLP solution guess.
[0094] FIG. 7B shows a block diagram of a line search procedure for calculating a step size based on one or more merit function evaluations and directional derivative calculations to update the MINLP solution guess in the sequential convexification-based optimization procedure described in FIG. 3A (730).
Number
[0095]
Number
[0096] In some embodiments of the present invention, an iterative backtracking procedure is used to select a step size value 0≦α k starting from =1, where this step size value can be iteratively decreased towards 0≦α k ≦1 until the sufficient decrease condition 731 holds for the merit function of the MINLP. k
[0097]
Number
[0098]
Number
[0099]
Number
[0100]
Number
[0101] Figure 8A shows a block diagram for calculating the ratio R k , z k ) of the actual reduction to the predicted reduction in the value of the merit function 810, given the MINLP solution guess (y k , Δy k ) and the MICP subproblem solution (Δz k ) at each iteration of the sequential convexification-based optimization procedure. Assuming a compact formulation 705 of the objective and constraint functions in MINLP, the merit function can be defined (711) to quantify the optimality and constraint satisfaction of the MINLP solution guess at each MISCP iteration,
Number
[0102]
Number
[0103]
Number
[0104]
Number
[0105]
Number
[0106] [Number]
[0107] Figure 8C shows a block diagram of a trust region procedure for determining how to update the MINLP solution guess in the sequential convexification-based optimization procedure described in Figure 3B, and constructs and solves (360) a MICP subproblem subject to trust region constraints to limit the search direction within a small region of the MINLP solution space in each iteration of the MISCP optimization algorithm based on the partial convexification step 315. [Number] Some embodiments of the present invention are based on the recognition that the MIQP subproblem 840 corresponds to the MIQP subproblem 650 of Figure 6B with additional trust region constraints 845 to limit the search direction Δ within a small region of the MINLP solution space where the MIQP subproblem forms a sufficiently accurate approximation of the original MINLP 630 in a separable format. y in the MINLP solution space where the MIQP subproblem forms a sufficiently accurate approximation of the original MINLP 630 in a separable format.
[0108] Some embodiments of the present invention are generally based on the recognition that solving the MICP subproblem becomes computationally less expensive for even smaller values of the trust region radius d. k Therefore, in some embodiments of the present invention, the trust region procedure aims to reduce the trust region radius when it is possible without decelerating the convergence of the MISCP optimization algorithm to a feasible and (locally) optimal MINLP solution.
[0109] [Number]
[0110] [Number]
[0111]
Mathematics
[0112]
Mathematics
[0113] Figure 9A shows an example of a homotopy-type penalty method that can be used to accelerate the convergence of a sequential convexification-based optimization procedure according to some embodiments of the present invention. For example, in some embodiments of the present invention, when the integer variables of MINLP630 include one or more binary optimization variables z j ∈ {0, 1}900, one or more additional penalty terms can be added to the MINLP objective function 631 to avoid cycling between different values of the MINLP solution guesses in subsequent iterations of the MITCP optimization algorithm. Some embodiments of the present invention are based on the recognition that adding one or more additional penalty terms to the MINLP objective function 631 can result in a MICP subproblem 650 that is computationally less expensive to solve in each iteration of the MISCP optimization algorithm.
[0114]
Mathematics
[0115] Figure 9B shows a schematic diagram of an example of a homotopy-type penalty method that can be used to accelerate the convergence of the MISCP optimization algorithm to find a feasible and (locally) optimal solution of the MINLP. In some embodiments of the present invention, the homotopy-type penalty method is used to adjust the cost function in each MICP subproblem 320 to gradually implement the MISCP optimization algorithm and calculate updates to the MINLP solution guesses for some or all of the integer and / or binary decision variables that remain close to the solution guesses of the integer and / or binary decision variables in the previous MISCP iteration. [Number]
[0116] [Number]
[0117] Some embodiments of the present invention are based on the recognition that the use of a homotopy-type penalty method for some or all of the integer and / or binary decision variables can prevent cycling in the MISCP optimization algorithm. Additionally, some embodiments of the present invention are based on the recognition that the use of a homotopy-type penalty method for some or all of the integer and / or binary decision variables can significantly reduce the computational cost of solving the MICP sub-problem in the MISCP optimization algorithm. For example, some embodiments of the present invention are based on a branch-and-bound method to solve the MICP sub-problem in each iteration of the MISCP optimization algorithm, and adding one or more linear penalty terms to the cost function can result in a significantly smaller branch-and-bound search tree, and thus the computational cost of solving the MICP sub-problem can be significantly reduced.
[0118] FIG. 9C shows a schematic diagram of an example of a homotopy-type penalty method by adding one or more additional linear and / or smooth non-linear inequality constraints that can be used to accelerate the convergence of the MISCP optimization algorithm to find a feasible and (locally) optimal solution of the MINLP. For example, in some embodiments of the present invention, the integer variables of the MINLP 630 are one or more binary optimization variables z jWhen including ∈{0,1}900, one or more additional linear and / or smooth non-linear inequality constraints can be added to the MINLP constraint 633 to avoid cycling between different values of MINLP solution guesses in subsequent iterations of the MISCP optimization algorithm. Some embodiments of the present invention are based on the recognition that adding one or more additional linear and / or smooth non-linear inequality constraints to the MINLP constraint 633 can result in a MICP subproblem 650 that is computationally cheaper to solve in each iteration of the MISCP optimization algorithm.
[0119]
Number
[0120]
Number
[0121] In some embodiments of the present invention, if a particular set of values of one or more integer variables and / or continuous variables is detected to be infeasible for the MINLP 630, then each subsequent iteration of the MISCP optimization algorithm can include one or more linear and / or smooth non-linear inequality constraints to avoid revisiting the same set of values of one or more integer variables and / or continuous variables for the MINLP 630.
[0122] Some embodiments of the present invention are based on the branch-and-bound method to solve the MICP subproblem in each iteration of the MISCP optimization algorithm. Adding one or more inequality constraints can result in a considerably smaller branch-and-bound search tree, and thus can considerably reduce the computational cost of solving the MICP subproblem.
[0123]
Number
[0124]
Number
[0125] Figure 11A shows a schematic diagram of an example of a binary control variable search tree representing a nested tree of search regions for integer feasible solutions of the MICP subproblem in the MISCP optimization algorithm according to some embodiments. Figure 11A shows a schematic diagram of the branch-and-bound method used to implement the MINMPC controller in some embodiments by showing the binary search tree 1100 in a particular iteration of the mixed-integer optimization algorithm. The main concept of the branch-and-bound method (B&B) is to sequentially create partitions of the original MICP subproblem and attempt to solve those partitions, where each partition corresponds to a particular region of the discrete control variable search space. In some embodiments, the branch-and-bound method selects a partition or node, selects a discrete control variable that branches this partition into smaller partitions or search regions, resulting in a nested tree of partitions or search regions.
[0126] For example, partition P11101 represents a discrete search region that can be divided or branched into two smaller partitions or regions, P21102 and P31103, i.e., a first region and a second region that are nested within a common region. The first and second regions are disjoint, i.e., the common part of these regions is empty P2 ∩ P3 = φ (1107), but together they form the original partition or region P1, i.e., after branching, the union P2 ∪ P3 = P1 holds (1106). Next, the branch-and-bound method solves the integer relaxation convex problem for both the first and second partitions or regions of the search space, yielding two solutions (local optimal solutions) that can be compared against each other and against the currently known upper bound on the optimal objective value. The first and / or second partitions or regions can be pruned if their performance metrics are not more optimal than the currently known upper bound on the optimal objective value of the MICP subproblem. If the first region, the second region, or both regions yield a feasible discrete solution for the MICP subproblem, the upper bound value can be updated. The branch-and-bound method then continues by selecting the remaining regions within the current nested tree of regions for further partitioning.
[0127] Although it may still be difficult to solve each partition, obtaining a local lower bound on the optimal objective value is quite efficient by solving a local relaxation of the mixed integer program or by using duality. If a solution for the MICP subproblem happens to obtain an integer feasible solution while solving the local relaxation, the branch and bound method can then use it to obtain a global upper bound on the mixed integer control solution of the original MICP subproblem in the MISCP optimization algorithm in order to find a feasible and (locally) optimal solution to the MINLP. This helps to avoid solving or branching on specific partitions that have already been created, i.e., these partitions or nodes can be pruned. Such a general algorithmic concept of partitioning can be represented as a binary search tree 1100 that includes a root node, e.g., P11101, at the top of the tree and leaf nodes, e.g., P41104 and P51105, at the bottom of the tree. Additionally, nodes P21102 and P31103 are typically referred to as the direct children of node P11101, and node P11101 is referred to as the parent of nodes P21102 and P31103. Similarly, nodes P41104 and P51105 are children of their parent node P21102.
[0128] FIG. 11B shows a block diagram of a branch-and-bound mixed-integer optimization algorithm for searching for an integer-executable optimal solution of the MICP subproblem 320 based on the nested tree of search regions and the corresponding lower / upper limit values according to some embodiments. The block diagram of the branch-and-bound mixed-integer optimization algorithm shown in FIG. 11B can be used to implement the MINMPC controller in some embodiments. The branch-and-bound method initializes (1110) the branch-and-search tree information of the mixed-integer convex program (MICP) at the current control time step based on the MICP data 1165 consisting of matrices and vectors. This initialization can further use the branch-and-search tree information and the MICP solution information 1160 from the previous iteration to generate the warm-start initialization 1110 for the current control time step. The main goal of the optimization algorithm is to construct the upper and lower limits of the objective value of the MICP subproblem solution. In step 1111, if the gap between the upper limit value and the lower limit value is smaller than a specific tolerance value, the mixed-integer optimal control solution 1155 is found.
[0129] In step 1111, if the gap between the lower limit value and the upper limit value is larger than a specific tolerance value and the optimization algorithm has not yet reached the maximum execution time, the branch-and-bound method continues the iterative search by finding the mixed-integer optimal control solution 1155 of the MICP subproblem. Each iteration of the branch-and-bound method begins (1115) by selecting the next node of the tree corresponding to the next region or partition of the integer variable search space with a possible variable fix based on the pre-solving branching technique. After the selection of the node, the corresponding integer-relaxed convex problem is solved (1120) with a possible variable fix based on the post-solving branching technique.
[0130] When the integer relaxation convex problem has a feasible solution, the resulting relaxed control solution gives the lower bound of the objective value for that particular region or partition of the integer variable search space. At step 1121, if it is determined that the objective value is greater than the currently known upper bound of the objective value of the optimal mixed integer control solution of the MICP subproblem, the selected node is pruned or removed from the branch tree (1140). However, at step 1121, if it is determined that the objective value is lower than the currently known upper bound and the relaxed control solution is integer feasible (1125), the currently known upper bound and the corresponding mixed integer control solution estimate are updated at step 1130.
[0131] If the integer relaxation convex problem has a feasible solution and the objective is lower than the currently known upper bound (1121), but the relaxed control solution is not yet integer feasible (1125), the global lower bound of the objective can be updated to the minimum value of the objective values of the remaining leaf nodes of the branch tree (1135), and the selected node is pruned from the tree (1140). Additionally, starting from the current node, a resulting preliminary MICP subproblem corresponding to a small region or partition of the discrete search space of the original MICP subproblem is created and added as a child of that node in the branch tree (1150), and a discrete variable with a fractional value is selected for branching (1145) according to a specific branching strategy.
[0132] An important step in the branch-and-bound method is how to form the partitions, that is, which nodes to select (1115) and which discrete variables to select for branching (1145). Some embodiments are based on branching one of the binary control variables with a fractional value in the integer relaxation convex problem solution. For example, for a particular binary control variable u i,k ∈ {0,1} that has a fractional value as part of the integer relaxation convex problem solution, some embodiments respectively add the equality constraint u i,k = 0 to one subproblem and the equality constraint u i,kBy adding = 1 to the other subproblem, two partitions of the MICP subproblem are created. Some embodiments are based on a reliability branching strategy for variable selection (1145) that aims to predict future branching behavior based on information from previous branching decisions.
[0133] Some embodiments are based on a branch-and-bound method that uses a depth-first node selection strategy that can be implemented using a last-in-first-out (LIFO) buffer. The next node to be solved is selected as one of the children of the current node, and this process is repeated until the node is pruned, i.e., until the node becomes infeasible, optimal, or dominated by the currently known upper bound value, after which a backtracking procedure follows. Alternatively, some embodiments are based on a branch-and-bound method that uses a best-first strategy that selects the node with the currently lowest local lower bound. Some embodiments employ a combination of a depth-first node selection strategy and a best-first node selection strategy, where the depth-first node selection strategy is used until an integer-feasible control solution is found, and then, in subsequent iterations of the branch-and-bound based optimization algorithm, the best-first node selection strategy is used. The latter example is motivated by the aim of finding an integer-feasible control solution early (depth-first) in the early stages of the branch-and-bound procedure to enable early pruning, and then continuing with a more greedy search (best-first) to find a better feasible solution.
[0134] The branch-and-bound method continues the iteration until any one or more of the following conditions are met.
[0135] The maximum execution time of the processor is reached.
[0136] All nodes of the branch search tree are pruned and no new nodes can be selected to solve the convex relaxation or to branch.
[0137] The optimality gap between the global upper and lower bound values of the objective of the MICP subproblem solution is less than the tolerance value.
[0138] FIG. 12A shows a schematic diagram of a vehicle 1201 including a prediction controller 1202 that employs the principles of some embodiments. As used herein, the vehicle 1201 can be any type of wheeled vehicle such as a passenger car, bus, or rover. Also, the vehicle 1201 can be an autonomous vehicle or a semi-autonomous vehicle. For example, some embodiments control the movement of the vehicle 1201. Examples of movement include the lateral movement of the vehicle controlled by the steering system 1203 of the vehicle 1201. In one embodiment, the steering system 1203 is controlled by the controller 1202. Additionally, or alternatively, the steering system 1203 can be controlled by the driver of the vehicle 1201.
[0139] The vehicle can also include an engine 1206, which can be controlled by the controller 1202 or other components of the vehicle 1201. The vehicle can also include one or more sensors 1204 for sensing the surrounding environment. Examples of sensors 1204 include distance rangefinders, radars, lidars, and cameras. The vehicle 1201 can also include one or more sensors 1205 for sensing its current momentum and internal state. Examples of sensors 1205 include global positioning systems (GPS), accelerometers, inertial measurement units, gyroscopes, shaft rotation sensors, torque sensors, deflection sensors, pressure sensors, and flow sensors. The sensors provide information to the controller 1202. The vehicle can be equipped with a transceiver 1207 that enables the communication function of the controller 1202 via a wired or wireless communication channel.
[0140] FIG. 12B shows a schematic of the interaction between a controller 1202, such as a Mixed Integer Nonlinear Model Predictive Controller (MINMPC), and other controllers 1220 of vehicle 1201, according to some embodiments. For example, in some embodiments, the controllers 1220 of vehicle 1201 are a steering controller 1225 and a brake / throttle controller 1230 that control the rotation and acceleration of vehicle 1220, respectively. In such a case, the predictive controller 1202 outputs control inputs to controllers 1225 and 1230 to control the state of vehicle 1201. The controller 1220 can also include a high-level controller, such as a lane keeping assist controller 1235, that further processes the control inputs of the predictive controller 1202. In both cases, the controller 1220 uses the output of the predictive controller 1202 to control at least one actuator of vehicle 1201, such as the steering wheel and / or brakes of vehicle 1201, to control the movement of vehicle 1201. Further, the predictive controller 1202 determines the input to vehicle 1201 based on a Mixed Integer Optimal Control solution, and the input to vehicle 1201 includes one or a combination of the acceleration of vehicle 1201, the engine torque of vehicle 1201, the brake torque, and the steering angle, as well as discrete optimization variables for modeling one or a combination of discrete control decisions, switches in system dynamics, gear shifts, and obstacle avoidance constraints.
[0141] FIG. 12C shows a schematic diagram of a path and / or motion planning method for a control vehicle that employs the principles of some embodiments. FIG. 12C shows a schematic diagram of an autonomous or semi-autonomous control vehicle 1250 that can calculate a trajectory 1255 that is often dynamically executable and optimal by using embodiments of the present disclosure. The generated trajectory is intended to keep the vehicle within a specific road boundary 1252 and to avoid other controlled and / or uncontrolled vehicles, i.e., these vehicles are obstacles 1251 to this specific control vehicle 1250. In some embodiments, each of the obstacles 1251 can be represented by one or more inequality constraints in a temporal or spatial formulation of a constrained mixed-integer non-linear programming problem that includes one or more additional discrete variables for each obstacle. For example, based on an embodiment configured to implement a mixed-integer non-linear model predictive controller, the autonomous or semi-autonomous control vehicle 1250 can make additional continuous decisions in real time, such as speed, acceleration, or steering inputs, to control the movement of the vehicle 1250, while also making discrete decisions in real time, such as passing another vehicle on the left or right, or alternatively, staying behind another vehicle in the current lane of the road 1252.
[0142] FIG. 12D shows an exemplary traffic scenario of a single vehicle or multiple vehicle decision-making modules according to some embodiments. FIG. 12D depicts a scenario with one or more vehicles under control, called the host vehicle 1271, traffic consisting of other vehicles shown similar to 1272, lanes marked as 1273, for example, as L6, stop lines marked as 1274, for example, as S1, and intersections marked as 1275, for example, as I3. For the vehicle at position 1261 with a final destination 1262, the routing module provides a sequence of roads indicated by arrow 1263 and a sequence of direction changes indicated by arrow 1264. However, note that the road sequence 1263 and the direction change sequence 1264 do not by themselves specify the vehicle's trajectory or route. There are several discrete decisions to be made, such as which lane the vehicle should drive in, whether the vehicle should change lanes or stay in the current lane, whether the vehicle should start decelerating and stop at the stop line, whether the vehicle is permitted to cross the intersection, etc. Further, there are several continuous decisions to be made, such as the timed sequence of positions and orientations that the vehicle should achieve during its movement from its initial location to its destination. These decisions depend heavily on the traffic at that moment when the vehicle reaches the corresponding position, which is generally unknown to the routing module due to the uncertainty of traffic movement and the uncertainty of the moment when the vehicle will reach that position. In some embodiments of the present disclosure, the motion plan can be calculated for one or more host vehicles 1271 by solving one or more connected mixed-integer non-linear programming problems, optionally using communication that enables cooperation between vehicles (V2V) and / or between the smart infrastructure system and the vehicle (V2X).
[0143] Figures 13A and 13B are schematic diagrams of the formulation of a spacecraft mixed-integer nonlinear model predictive control problem using the principles of some embodiments of the present disclosure. Figures 13A and 13B show a spacecraft 1302 equipped with a plurality of actuators such as thrusters 1350 and momentum exchange devices 1351. Examples of types of momentum exchange devices include reaction wheels (RWs) and gyroscopes. The spacecraft 1302 is a vehicle, ship, or machine designed to fly in space such that quantities such as the position, velocity, attitude, or orientation of the spacecraft 1302 change operationally in response to commands sent to the actuators. When commanded, the actuators apply a force to increase or decrease the velocity of the spacecraft 1302, thereby transforming the position of the spacecraft 1302, and when commanded, the actuators further apply a torque to the spacecraft 1302 to rotate the spacecraft 1302, thereby changing its attitude or orientation. As used herein, the operation of the spacecraft 1302 is determined by the operation of the actuators that determine the movement of the spacecraft 1302 that changes such quantities.
[0144] The spacecraft 1302 flies in space along an open or closed orbital path 1360 around, between, or near one or more gravitational bodies such as the Earth 1361, the Moon, and / or other celestial planets, stars, asteroids, comets, etc. Usually, a desired position or target position 1365 along the orbital path is given. A reference frame 1370 is attached to the desired position, and the origin of the frame, i.e., the coordinates all zero within that reference frame, is always the coordinates of the desired position.
[0145] The spacecraft 1302 is subject to various disturbance forces 1314. These disturbance forces may include forces not considered when determining the orbital path of the spacecraft 1302. These disturbance forces act on the spacecraft 1302 to move it away from the desired position on the orbit. These forces include, but are not limited to, gravitational attraction, radiation pressure, atmospheric drag, non-spherical central bodies, and propellant leakage. Therefore, the spacecraft 1302 may be at a distance 1367 away from the target position.
[0146] Due to external disturbing forces, it is not always possible to keep the spacecraft 1302 at a desired position along its orbit. Therefore, instead, the spacecraft 1302 is desired to stay within the window 1366 with a specified dimension 1364 around the desired position. For this purpose, the spacecraft 1302 is controlled to move along any path 1380 included within the desired target window. In this example, the window 1366 has a rectangular shape, but the shape of the window can vary from embodiment to embodiment.
[0147] The spacecraft 1302 often also needs to maintain a desired orientation. For example, a reference frame 1374 fixed to the spacecraft needs to be aligned with a desired reference frame, such as an inertial reference frame 1371 fixed to a distant star 1372 or a reference frame 1373 oriented in a manner that always points in the direction of the Earth. However, depending on the shape of the spacecraft 1302, different disturbing forces 1314 act non-uniformly on the spacecraft 1302, thereby generating a disturbing torque that may rotate the spacecraft 1302 out of its desired orientation. To compensate for the disturbing torque, a momentum exchange device 1351, such as a reaction wheel, is used to absorb the disturbing torque so that the spacecraft can maintain its desired direction.
[0148] To prevent the momentum exchange devices from saturating and thereby losing their ability to compensate for the disturbing torque, their stored momentum must be unloaded, for example, by reducing the spin speed of the reaction wheels. Unloading the momentum exchange devices applies an undesired torque to the spacecraft 1302. Such an undesired torque is also compensated for by thrusters.
[0149] In some embodiments of the present invention, one or more non-linear equations are used to describe the dynamics and / or constraints of the system to be controlled, and the MINMPC controller determines the input to the spacecraft 1302 based on the mixed-integer optimal control solution, and the input to the spacecraft 1302 actuates one or a combination of thrusters and momentum exchange devices, and uses discrete optimization variables to model one or a combination of discrete control decisions, switching in the system dynamics, integer values of thruster commands, and obstacle avoidance constraints.
[0150] In some embodiments, the spacecraft 1302 can be modeled as a hybrid system, and the commands sent to the actuators are calculated using a predictive controller such as a mixed-integer non-linear model predictive controller (MINMPC). For example, in some embodiments, the commands sent to the thruster 1350 can only take a set of discrete values, and thus, for each step within the mixed-integer control horizon, it becomes a set of binary or integer control input variables.
[0151] In some embodiments of the present invention, the predictive controller is designed such that the spacecraft 1302 stays outside a specific zone 1385 of a specific dimension that is close to the desired position along the orbit. The latter zone can be fixed in time or vary over time, and is often referred to as the exclusion zone 1385, for which corresponding logical inequality constraints can be modeled using an additional set of binary or integer control input variables for each step within the mixed-integer control horizon. In this example, the exclusion zone 1385 is rectangular and is positioned at the corner of the desired window 1366, but the shape and position of the exclusion zone within the desired target window can vary in different embodiments.
[0152] FIG. 14A shows a schematic diagram of a vapor compression system 1400 controlled by a controller 1460 according to some embodiments. The controller 1460 includes a predictive controller such as a controller that implements mixed integer non-linear model predictive control (MINMPC). The components of the vapor compression system (VCS) 1400 can include an indoor unit heat exchanger 1420 located in an indoor space or zone 1450, an outdoor unit heat exchanger 1430 located in the ambient environment, a compressor 1410, and an expansion valve 1440. A heat load 1415 acts on the indoor space or zone 1450.
[0153] Further, the VCS 1400 can include a reverse flow valve 1455 used to direct the high-pressure refrigerant exiting the compressor to either the outdoor unit heat exchanger or the indoor unit heat exchanger, and to direct the low-pressure refrigerant returning from either the indoor unit heat exchanger or the outdoor unit heat exchanger towards the inlet of the compressor. When the high-pressure refrigerant is directed towards the outdoor unit heat exchanger, the outdoor unit heat exchanger functions as a condenser, the indoor unit functions as an evaporator, and the system rejects heat from the zone to the ambient environment, which is operationally called the "cooling mode". Conversely, when the high-pressure refrigerant is directed towards the indoor unit heat exchanger, the indoor unit heat exchanger functions as a condenser, the outdoor unit heat exchanger functions as an evaporator, extracts heat from the ambient environment, and pumps this heat into the zone, which is operationally called the "heating mode".
[0154] FIG. 14B shows an example of the configuration of signals, sensors, and controllers used in the VCS 1400 according to some embodiments. The controller 1460 reads information from sensors 1470 configured to measure various temperature, pressure, flow rate, and other information regarding the operation of the system, including measurable disturbances such as the ambient air temperature. The controller 1460 can be provided with a setpoint 1466 that represents a desired value of a measured signal of the process, such as a desired zone temperature. The setpoint information can be obtained from a thermostat, a wireless remote control, or an internal memory or storage medium. Next, the controller calculates control inputs so that some of the measured outputs are driven to their setpoints. These control inputs can include the indoor unit fan speed 1480, the outdoor unit fan speed 1481, the compressor rotation speed 1482, the expansion valve position 1483, and the reverse flow valve position 1484. In this way, the controller controls the operation of the vapor compression system so that the setpoint value is achieved in the presence of disturbances 1468 such as the heat load acting on the system.
[0155] In some embodiments, the VCS 1400 can be modeled as a hybrid non - linear system, and the commands sent to the actuators are calculated using a predictive controller such as a mixed - integer non - linear model predictive controller (MINMPC). For example, in some embodiments, the commands sent to the valves and / or fans can only take a set of discrete values, and thus, for each step within the mixed - integer control horizon, it becomes a set of binary or integer control input variables.
[0156] In some embodiments, the predictive controller determines the inputs to the vapor compression system based on a mixed - integer optimal control solution, and the inputs to the vapor compression system include one or a combination of the indoor unit fan speed, the outdoor unit fan speed, the compressor rotation speed, the expansion valve position, and the reverse flow valve position. Using discrete optimization variables, it models a discrete control decision, a switching in the system dynamics, and one or a combination of integer values for the commands sent to the valves and / or fans.
[0157] In some embodiments, the dynamic behavior of the VCS 1400 can change rapidly or even switch at a particular instant depending on the current state of the system and the current control input value. The resulting hybrid VCS 1400 with switching dynamics can be modeled using an additional set of binary or integer control input variables for each stage within a mixed-integer control horizon.
[0158] FIG. 15 shows a method 1500 for controlling a system according to an exemplary embodiment. In step 1501, the method includes receiving a feedback signal including a measured value of the state of the system. In step 1503, the method includes solving a mixed-integer non-linear optimal control problem using a mixed-integer sequential convex programming (MISCP) optimization algorithm that searches for a feasible and (locally) optimal solution to a mixed-integer non-linear programming (MINLP) problem. In step 1505, the system is controlled based on the control signal to change the state of the system.
[0159] The above-described embodiments of the present disclosure can be implemented in any of a number of ways. For example, the embodiments may be implemented using hardware, software, or a combination thereof. When implemented in software, the software code can be executed on any suitable processor or collection of processors, whether provided on a single computer or distributed among multiple computers. Such a processor may be implemented as an integrated circuit component having one or more processors within the integrated circuit component. However, the processor may be implemented using any suitable form of circuitry.
[0160] Also, the various methods or processes outlined herein may be encoded as software executable by one or more processors using 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 may be compiled as executable machine language code or intermediate code to be executed in a framework or virtual machine. Generally, the functionality of program modules may be combined or distributed as desired in various embodiments.
[0161] Also, embodiments of the present disclosure can be embodied as a method as provided by the examples. The acts executed as part of the method may be ordered in any suitable manner. Thus, embodiments can be constructed in which acts shown as consecutive acts in exemplary embodiments are performed simultaneously, including performing some of the acts shown as consecutive acts in exemplary embodiments in a different order than illustrated.
[0162] Although the present disclosure has been described by way of examples of preferred embodiments, it should be understood that various other adaptations and modifications can be made within the scope of the present disclosure. Accordingly, the purpose of the claims is to cover all such variations and modifications that fall within the true spirit and scope of the present disclosure.
Claims
Claim 1 A predictive feedback controller for controlling a hybrid dynamic system having non-linear dynamics and continuous and discrete elements of operation, comprising at least one processor and a memory storing instructions, which, when executed by the at least one processor, cause the predictive feedback controller to receive a feedback signal including a measurement indicating a current state of the hybrid dynamic system, including one or a combination of a current state of the predictive controller, a current state of one or more actuators of the hybrid dynamic system, and a current state of an output of the hybrid dynamic system; formulate a mixed-integer non-linear programming (MINLP) problem that optimizes a control objective subject to one or more constraints using a solution indicating a control command for changing the current state of the hybrid dynamic system according to the control objective, the constraints including equality constraints, inequality constraints, or both, and the constraints and the control objective of the MINLP problem including one or more non-linear functions of continuous optimization variables representing the continuous elements of the operation of the hybrid dynamic system and one or more linear functions of integer optimization variables representing the discrete elements of the operation of the hybrid dynamic system; and further, which, when executed by the at least one processor, cause the predictive feedback controller to solve the MINLP problem over a plurality of iterations of a sequential convexification-based optimization procedure until an end condition is satisfied, and to perform a partial convexification of a portion of the solution space including a current solution guess for executing the iterations; and further, which, when executed by the at least one processor, cause the predictive feedback controller to submit the control command generated according to the solution of the MINLP problem to the hybrid dynamic system, thereby causing a change in the current state of the hybrid dynamic system. The predictive feedback controller is implemented using Mixed-Integer Nonlinear Model Predictive Control (MINMPC), and the MINMPC calculates a control signal based on the current state of the system and a control command. The MINMPC solves a constrained mixed-integer nonlinear optimization problem at each control time step to calculate a control solution that includes a sequence of future optimal discrete and continuous control inputs over the prediction time horizon of the hybrid dynamic system. The MINMPC is planned according to the dynamic system model of the hybrid dynamic system. The MINLP problem is formulated in a separable format that ensures that the discrete elements of the operation only exist in the linear functions of the MINLP problem. The partial convexification generates a convex approximation of the nonlinear functions of the MINLP without approximating the linear functions of the MINLP to generate a partially convexified MINLP. Further, when the instructions are executed by the at least one processor, the predictive feedback controller is characterized in that the current solution guess is updated by solving a Mixed-Integer Convex Program (MICP) formulation of the partially convexified MINLP problem. **Claim 2** The processor The predictive feedback controller according to claim 1, wherein the processor is configured to convert the MINLP problem from the original format to the separable format by adding one or a combination of additional integer optimization variables and additional continuous optimization variables to the original format, thereby ensuring that the discrete elements of the operation only exist in the linear functions of the MINLP in the separable format. **Claim 3** To perform the partial convexification, the processor identifies whether a function in the objective function of the MINLP problem or the constraints is a function of the integer optimization variable or the continuous optimization variable, and when the function is a smooth nonlinear function of the continuous optimization variable, calculates a convex approximation of the smooth nonlinear function in a local neighborhood of the current solution guess within the solution space of the MINLP problem. The predictive feedback controller according to claim 1, wherein when the function is a linear function of the integer optimization variable, the convex approximation is avoided by saving the integer variable and is configured to be within the non-convex portion of the solution space of the MINLP.
4. The convex approximation is calculated by linearizing the local constraints or linear - quadratic objective approximation of the smooth non-linear function in the local neighborhood of the current solution guess in the solution space of the MINLP problem by evaluating one or more first and / or higher order directional derivatives of the smooth non-linear function using symbolic differentiation, numerical differentiation or algorithmic differentiation. The predictive feedback controller according to claim 3.
5. To update the current solution guess of the iteration, the predictive feedback controller solves the MICP problem of the partially convexified MINLP to calculate the search direction for the continuous optimization variable and the search direction for the integer optimization variable, updates the current value of the integer optimization variable in a step that satisfies the constraint that each of the constraints for the integer optimization variable is an integer value, in the direction of the search direction of the integer optimization variable, The predictive feedback controller according to claim 1, wherein the current value of the continuous optimization variable is updated in the direction of the search direction of the continuous optimization variable with a step size value 0 ≦ αk ≦ 1 selected using a line search method.
6. The step size value is between 0 and 1 and is selected for the iteration based on a merit function that balances the optimality and feasibility of the solution of the MINLP problem, and the value of the merit function decreases between at least two iterations of the sequential convexification-based optimization procedure. The predictive feedback controller according to claim 5.
7. The step size value is selected based on an iterative line search procedure starting from an initial step size value of 1, and the predictive feedback controller performs one or more iterations of the iterative line search procedure to select the step size value, and each iteration tests whether a decrease condition is satisfied for a merit function that balances the optimality and feasibility of the solution of the MINLP problem. If sufficient decrease conditions are satisfied, terminate the iterative line search procedure, and use the step size value to update the current value of the continuous optimization variable in the direction of the search direction of the continuous optimization variable; otherwise, decrease the step size value and configure to continue the iterative line search procedure, or The merit function is a combination of an objective function and one or more penalty functions applied to violations of each of the equality constraints and violations of each of the inequality constraints in the MINLP problem, according to the predictive feedback controller of claim 6.
8. The MICP problem of the partially convexified MINLP includes one or more trust region inequality constraints, and the search direction of the continuous optimization variable is guaranteed to be less than the trust region radius value, according to the predictive feedback controller of claim 5.
9. To update the current solution guess of the iteration, the processor calculates the ratio of the actual reduction to the predicted reduction for the value of a merit function that balances the optimality and feasibility of the MICP solution of the partially convexified MINLP problem, If the ratio of the actual reduction to the predicted reduction for the value of the merit function exceeds a threshold, the current values of the integer and continuous optimization variables are configured to be updated in the direction of the search direction of the integer and continuous optimization variables, according to the predictive feedback controller of claim 8.
10. To update the trust region radius value based on the solution of the MICP problem of the partially convexified MINLP, the processor if the ratio of the actual reduction to the predicted reduction of the value of the merit function or the search direction of the continuous optimization variable is less than a threshold, decrease the trust region radius value to ensure that the search direction of the continuous optimization variable is reduced in one or more of the next iterations; otherwise, increase the trust region radius value to ensure that the search direction of the continuous optimization variable is increased in one or more of the next iterations, according to the predictive feedback controller of claim 9.
11. Use a branch and bound (B&B) optimization method to calculate a globally optimal solution of the MICP problem of the partially convexified MINLP, or Using the homotopy-type penalty method, during at least two iterations of the sequential convexification-based optimization procedure, a penalty is imposed on the change of one or more values of the integer optimization variable based on a positive weight value, for the predictive feedback controller according to claim 1.
12. The current value of the integer optimization variable is fixed after one or more iterations of the sequential convexification-based optimization procedure, and in order to update the current solution prediction in one or more iterations of the sequential convexification-based optimization procedure, the predictive feedback controller Given the fixed current value of the integer optimization variable, solves the convex programming (CP) problem of the partially convexified MINLP to calculate the search direction of the continuous optimization variable, The predictive feedback controller according to claim 5, wherein the current value of the continuous optimization variable is updated in the search direction of the continuous optimization variable by the step size value.
13. Using the homotopy-type penalty method, during the at least two iterations of the sequential convexification-based optimization procedure, a penalty is imposed on the change of one or more of the values of the integer optimization variable based on the positive weight value, The homotopy-type penalty method adds one or more penalty terms to the objective function of the MICP problem of the partially convexified MINLP in order to accelerate the convergence of the sequential convexification-based optimization procedure to a feasible and / or optimal solution of the MINLP problem, or The homotopy-type penalty method adds one or a combination of a plurality of linear and / or smooth non-linear inequality constraints to the inequality constraints of the MICP problem of the partially convexified MINLP in order to accelerate the convergence of the sequential convexification-based optimization procedure to a feasible and / or optimal solution of the MINLP problem, for the predictive feedback controller according to claim 11.
14. Using the solution of the constrained mixed-integer non-linear optimization problem at a certain control time step as an initial solution prediction for the sequential convexification-based optimization procedure to calculate the solution of the constrained mixed-integer non-linear optimization problem at the next control time step, for the predictive feedback controller according to claim 1.
15. A hybrid dynamic system comprising the predictive feedback controller according to claim 1, The hybrid dynamic system includes a device controlled by an operation input signal representing the control command, the input signal specifying values of the continuous elements of the operation of the hybrid dynamic system and values of the discrete elements of the operation of the hybrid dynamic system, the continuous elements including one or a combination of voltage, pressure, force, torque, steering angle, speed, and temperature, and the discrete elements including one or a combination of energy levels, quantized valve inputs, gear shifts, on / off operations, lane selections, and obstacle avoidance decision variables, or, the control command generated by the predictive feedback controller specifies a target state of the hybrid dynamic system, and the hybrid dynamic system comprises a tracking controller configured to generate one or more control inputs to the actuator of the hybrid dynamic system to reduce an error between the current state of the hybrid dynamic system and the target state of the hybrid dynamic system, or, the system is a vehicle, the predictive feedback controller determines an input to the vehicle based on the MINLP solution, the input to the vehicle including one or a combination of the acceleration of the vehicle, the engine torque of the vehicle, the brake torque, and the steering angle, and using discrete optimization variables to model one or a combination of discrete control decisions, switching in the system dynamics, gear shifts, and obstacle avoidance constraints, or, the system is a spacecraft, the predictive feedback controller determines an input to the spacecraft based on the MINLP solution, the input to the spacecraft actuating one or a combination of thrusters and momentum exchange devices, and using the discrete optimization variables to model one or a combination of discrete control decisions, switching in the system dynamics, integer values for thruster commands, and obstacle avoidance constraints, or, The system is a vapor compression system, and the predictive feedback controller determines an input to the vapor compression system based on the MINLP solution. The input to the vapor compression system includes one or a combination of an indoor unit fan speed, an outdoor unit fan speed, a compressor rotational speed, an expansion valve position, and a reverse flow valve position. Using the discrete optimization variables, a hybrid dynamic system models one or a combination of discrete control decisions, switching in system dynamics, and integer values for commands sent to the valve and / or the fan.
Citation Information
Patent Citations
Process operation planning system
JP2003295906A
Control performance calculation method and control performance calculation device for plant
JP2014078146A
Problem solution device, method, and program
JP2020144529A
Process optimization using mixed integer nonlinear programming
US20160370772A1