Robust Convex Model Predictive Control with collision avoidance guarantees for robot manipulators
Bernhard Wullt, Johannes K\"ohler, Per Mattsson, Mikeal Norrl\"of, Thomas B. Sch\"on

TL;DR
This paper introduces a convex, robust MPC approach for robot manipulators that guarantees collision avoidance and safe, fast motion in cluttered environments despite model uncertainties.
Contribution
A novel convex MPC framework combining robust tube MPC and corridor planning for collision-free, high-speed robot manipulator control under uncertainties.
Findings
Outperforms benchmark methods in handling higher model uncertainties.
Enables faster motion while maintaining safety.
Validated in simulation with a 6 DOF industrial robot.
Abstract
Industrial manipulators are normally operated in cluttered environments, making safe motion planning important. Furthermore, the presence of model-uncertainties make safe motion planning more difficult. Therefore, in practice the speed is limited in order to reduce the effect of disturbances. There is a need for control methods that can guarantee safe motions that can be executed fast. We address this need by suggesting a novel model predictive control (MPC) solution for manipulators, where our two main components are a robust tube MPC and a corridor planning algorithm to obtain collision-free motion. Our solution results in a convex MPC, which we can solve fast, making our method practically useful. We demonstrate the efficacy of our method in a simulated environment with a 6 DOF industrial robot operating in cluttered environments with uncertainties in model parameters. We outperform…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Control Systems Optimization · Fault Detection and Control Systems · Robotic Path Planning Algorithms
Robust Convex Model Predictive Control with collision avoidance guarantees for robot manipulators
Bernhard Wullt, Johannes Köhler, , Per Mattsson, , Mikeal Norrlöf and Thomas B. Schön This research was supported by the Wallenberg AI, Autonomous Systems and Software Program (WASP) funded by Knut and Alice Wallenberg Foundation.Bernhard Wullt and Mikael Norrlöf are with ABB robotics, 721 36 Västerås, Sweden (e-mail: [email protected], [email protected]).Johannes Köhler is with the Department of Mechanical Engineering, Imperial College London, London, UK, (e-mail: [email protected]).Per Mattsson and Thomas B. Schön are with the Department of Information Technology, Uppsala University, 751 05 Uppsala, Sweden (e-mail: [email protected], [email protected]).
Abstract
Industrial manipulators are normally operated in cluttered environments, making safe motion planning important. Furthermore, the presence of model uncertainties make safe motion planning more difficult. As a result, the speed is limited in practice in order to reduce the effect of disturbances. Hence, there is a need for control methods that can guarantee safe motions which are executed fast. We address this by suggesting a novel model predictive control (MPC) solution for manipulators, where our two main components are a robust tube MPC and a corridor planning algorithm to obtain collision-free motion. Our solution results in a convex MPC formulation, which we can solve fast, making our method practically useful. We demonstrate the efficacy of our method in a simulated environment with a 6 DOF industrial robot operating in cluttered environments with uncertain model parameters. We outperform benchmark methods, both in terms of being able to work under higher levels of model uncertainties, while also yielding faster motion.
I Introduction
Motion planning for robot manipulators is an important problem in industrial applications due to the natural presence of surrounding obstacles. This problem has been extensively studied and it is typically addressed with an efficient pipeline that decouples the problem into smaller sub-problems [13]. First, a collision-free path is found using a sampling-based planner [14, 10], which can also be post-processed [7]. Next, the path is time scaled using the model of our system, e.g., by solving a convex optimization problem [24], which results in a dynamically feasible trajectory. Finally, feedback-linearization is used [23, 16] with the full dynamics model to track the trajectory closely.
Although the approach is efficient and successfully solves the problem, accurate modeling becomes paramount. Furthermore, since the path planning approach relies on collision-detection, we are forced to stay exactly on the path, since it is only there it has been certified to be collision-free. This becomes more challenging through uncertainties in the model parameters, which propagates through the coupled dynamics, resulting in state and input dependent model mismatch. The current pipeline addresses this issue by moving sufficiently slow, such that the effect of model mismatch can be effectively attenuated. A key limiting factor is the lack of methods to effectively ensure robustness also for faster motions.
We address the missing robustness guarantees, allowing us to provide safe and fast motion planning in cluttered environments. We realize this through two main contributions:
- •
We use feedback linearization to obtain a linear prediction model and derive a state and input dependent upper bound on the resulting model error. We design a tube based model predictive controller (MPC) that utilizes this bound and optimizes the tube size to reduce conservatism.
- •
To propagate the tube in the configuration space, we employ a signed configuration distance function (SCDF), which outputs collision-free balls in the configuration space. This allows us to formulate simple convex constraints for obstacle avoidance, while also propagating the tube in a collision-free region, enabling quick collision-free progress towards the goal.
The result is a convex MPC problem, which we can solve efficiently, and a simple approach to guide it to the goal state, resulting in fast and safe motion. This is the first construction of a convex MPC solution that guarantees collision avoidance for nonlinear uncertain dynamics of robots manipulators. We demonstrate the practical applicability of our approach through simulations of a proprietary 6 DOF industrial robot (see Figure 1). In addition, we provide an open-source implementation of the proposed method for general manipulators:
https://github.com/whiterabbitfollow/rob_cvx_mpc_rob_man.
Outline
Section II presents related work. We introduce the notation in Section III and the problem formulation in Section IV. Next, we derive our novel robust motion planning solution for manipulators in Section V. Obstacle avoidance is included in Section VI by proposing the concept of corridor planning and deriving simple convex constraints ensuring collision-free motion. We verify our approach in numerical experiments (Section VII) and end with conclusions (Section VIII).
II Related work
Forming collision-free regions in the configuration space is challenging for manipulators, due to the non-trivial mapping of world space obstacles to the configuration space. In the past decade, a lot of methods [1, 20, 15, 25] have been developed in order to produce convex collision-free regions in the configuration space. In [1, 20] an optimization problem is solved iteratively to enlarge an ellipsoid, representing a collision-free region, while [15, 25] instead uses learning to produce collision-free balls. These tools enable new approaches to motion planning, e.g. trajectory planning [17], path planning [25], manipulation planning [15]. Our work makes use of these new representation capabilities to formulate convex obstacle avoidance constraints and combines it with a novel robust control formulation to ensure safe and efficient motions.
Our approach relies on MPC [2], which guarantees satisfaction of state and input constraints. In particular, we build on MPC-for-tracking formulations [12], which can progressively reach far away targets by optimizing artificial references. Obstacle avoidance constraints can in principle also be directly added to such a formulation [5, 19]. However, especially for robot manipulators these constraints are highly non-linear and non-convex, thus increasing the computational demand. Similar to the proposed approach, the work in [22] use convex collision-free balls, however, the methodology is limited to single-body robots with known dynamics. Applications of MPC to robot manipulators are, for example, presented in [19, 4, 9]. However, these approaches are computationally expensive, can only cover simple collision avoidance constraints or none at all, or are conservative. In particular, [19, 4] formulate non-linear MPC schemes, which becomes computationally expensive. Only simplified collision avoidance constraints are treated in [19], while [4, 9] do not address obstacle avoidance at all. The robustness guarantees in [19, 9] are based on a constant (worst-case) bound on the model-mismatch, which neglects the state/input dependent nature of modeling errors, resulting in significant conservatism, while [4] lacks robustness guarantees. In contrast, we construct a collision-free corridor in the configuration space through a SCDF [25], resulting in convex obstacle avoidance constraints. We address model error through a robust design, which is tube based. Compared to standard rigid tube MPC [18], which uses a polytopic invariant sets to bound the state trajectories, we use scaled ellipsoids, resulting in a more scalable design and efficient formulation for online control. In particular, we exploit a state and input dependent bound on the model error, allowing us scale the tube in a flexible way, while also reducing conservatism. We end up with an MPC formulation that is convex, which we can solve fast, observing real-time capabilities in numerical experiments.
III Notation
The set of positive real numbers is denoted by . We denote the set of integers to , i.e. by . The set of dimensional positive definite matrices is denoted by . For a vector , we denote the 2-norm and infinity-norm as and . For a matrix , is the induced matrix norm, i.e., the largest singular value of A. The weighted vector norm is defined as . We denote the symmetric matrix square root of a positive semi-definite matrix A as . The vectors and denotes an dimensional vector of ones and zeros, respectively. The identify matrix is denoted as . The operation of stacking two column vectors is expressed as . Finally, the function , maps an dimensional vector into a diagonal matrix.
IV Problem formulation
Consider a robot operating in the world space, . The exact description of the robot body is given by its configuration , where is the configuration space. The robot dynamics has the following form
[TABLE]
In the above, , , denote the velocity and control input, constrained to lie in their corresponding sets and . Furthermore, , , , denote the mass matrix, coupling matrix (Coriolis and damping), and gravity vector functions, respectively. We assume incomplete knowledge of the model parameters (1), separating the model into nominal (known) and uncertain terms:
[TABLE]
where a null index denotes nominal terms, and error terms are indexed by a parameter vector , where is a known parameter set and is the unknown model parameter. We assume that the sets , and are hyperboxes, and that measurements of q and are readily available. The robot is surrounded by obstacles , where . The set of points covered by the robot body in configuration q is expressed as . We define the free space as and the obstacle region as . Our goal is to design a controller that steers the robot from a given start configuration to a goal configuration , while ensuring that the resulting trajectory satisfies constraints on velocity, torque, and is collision-free, i.e. , , , , for any considered model parameters .
V Robust convex MPC for manipulators
In this section, we will derive a motion planning solution that comes with robustness guarantees, for the moment ignoring obstacle avoidance, which we address in the subsequent section.
A key feature we aim for in our design is that the resulting MPC problem can be solved fast. Hence, we want a convex formulation, which requires convex constraints and linear prediction models. First, we utilize feedback linearziation to obtain a linear model and a suitable bound on the un-cancelled non-linearities (Section V-A). To ensure robustness, we predict a scaled tube around a nominal prediction such that it contains the true (unknown) system response. We use an auxiliary controller and an ellipsoid tube to derive an expression of the tube dynamics (Section V-B). Finally, we present our suggested convex robust MPC in Section V-C, including the theoretical analysis.
V-A Feedback linearization and model error
In order to obtain a convex optimization problem, we have to obtain a linear prediction model. We use feedback linearization (FL [23]) to realize this, i.e., we cancel the (known) non-linear terms in the dynamics using feedback
[TABLE]
where is the desired acceleration. To ensure that the resulting torque u satisfies the torque constraints , we introduce a convex acceleration constraint set , which satisfies
[TABLE]
Using the feedback (2) in the dynamics (1) yields
[TABLE]
where is the acceleration. The functions , and are errors parameterized by the uncertain model parameter , see Appendix -A for the derivation. We note that (5) does not introduce any approximations, it simply states that the uncertain robot dynamics (1) with the feedback (3) are equivalent to a double integrator subject to an additional nonlinear perturbation , that depends on the uncertain model parameters . Integrating the model (5) over the sampling time with a (piece-wise) constant desired acceleration a yields
[TABLE]
where, is the discrete time index, is the state with . To simplify the notation, we access the configuration and velocity from the state by and , respectively. and denote the dynamics and control matrices, respectively. The error term is an additional discretization error accounting for the fact that is not constant over the sampling time.
V-B Auxiliary controller and tube dynamics
To attenuate the effects of the model errors over a prediction horizon, we use an auxiliary controller, with the following control law
[TABLE]
The matrix , is referred to as the gain matrix, and are the reference control and states, respectively. We compute the gain matrix that satisfies the following requirement
[TABLE]
where is a contraction rate and is referred to as the Lyapunov matrix. We obtain P and K satisfying (8) by solving a convex optimization problem offline, see Appendix -B for details. The Lyapunov matrix P allows us to form an ellipsoid in the state space which, together with its projection on to the configuration, velocity and control input space, are
[TABLE]
The size of the ellipsoid is controlled by the scaling .
The following proposition provides a state and input dependent bound on the prediction error.
Proposition 1**.**
For all , and , we have
[TABLE]
with from (V-A) and according to (11)-(13).
Proof.
Using the triangle inequality and the property [8] on the individual terms of expression (5), we end up with the bound in (10), where are computed according to
[TABLE]
The closed-form expressions of the functions introduced above are presented in Appendix -A. ∎
This bound highlights that the error depends significantly on the velocity and acceleration, crucial knowledge that the controller will leverage for safe and efficient planning.
Having obtained a state and input dependent bound, we now focus on how to adjust the scaling such that the uncertain system (V-A) remains inside the ellipsoid (9) around the nominal prediction , which we present in the following proposition.
Proposition 2**.**
For any , , we have that with according to (V-A), , , and
[TABLE]
The proof can be found in Appendix -C. In the following, we abbreviate and we assume that . Given , this holds if the parametric uncertainty is sufficiently small. Finally, for a steady state with zero velocity/acceleration, the tube size converges to a steady state tube size
[TABLE]
We assume that this steady-state tube size is smaller than the velocity and acceleration constraints:
[TABLE]
V-C Robust convex MPC problem
With a convex expression for the model error propagation and convex input constraints established, we can now formulate our resulting robust MPC problem as follows:
[TABLE]
using the current state , the goal state , user chosen positive definite weight matrices , and a horizon . The user-chosen offset ensures that the system cannot get stuck at a steady-state close to the constraints [12]. The decision variables are the nominal trajectory, , the nominal control inputs and the tube size . In closed-loop operation, we solve (18) with the current measured state , and then apply , the first optimized input, to the system. Note that Problem (18) is a convex second-order cone problem, which can be efficiently solved.
The objective, (18a), consists of two parts. The first part drives the predicted trajectory to the steady-state , which acts as an artificial reference (cf. [12]), while keeping the controls small. A second term pushes this artificial reference to the desired goal .
The nominal trajectory starts with a tube around the measured state (18b) and evolves according to the linear dynamics (18c). The final state is a steady-state with zero velocity (18d). The tube (18e) is scaled according to Proposition 2. Finally, the state and control limits are tightened by the tube size in (18f) and (18g), respectively. The operator denotes the Pontryagin differences, see Appendix -B2 for implementation details. The following theorem summarizes the closed-loop properties.
Theorem 1**.**
Consider the nonlinear system (V-A) with and . Suppose that Problem (18) is feasible at , then the closed-loop system satisfies:
- •
Recursive feasibility: Problem (18) is feasible ;
- •
Constraint satisfaction: , , ;
- •
Convergence: .**
Proof.
The proof merges concepts from robust MPC using homothetic tube [21] and MPC for tracking [12, 11].
**Part I: ** Given the optimal solution to problem (18) at time , we consider the following feasible candidate solution , , . Here, according to (18e) with , given that is a steady-state using (18d). Furthermore, and (16) ensure that and thus this appended solution also satisfies the tightened constraints (18e) at . Lastly, Proposition 2 ensures that this candidate solution also satisfies the initial state constraint (18b) with the new measured state for any .
**Part II: **Closed-loop constraint satisfaction follows from the feasibility of Problem (18), the tightened constraints (18f), (18g), and the fact that , using the definition of the ellipsoids (9) and the initial state constraint (18b).
**Part III: **Let us denote the optimal cost of Problem (18) at time by . The feasible candidate solution implies
[TABLE]
Given non-negative and finite, using this condition in a telescopic sum ensures that, as , converges to a steady-state. Lastly, to ensure that this steady-state corresponds to , we use [11, Lemma 1], to ensure the existence of a uniform constant , such that
[TABLE]
This result applies given the convex steady-state manifold, the strictly convex quadratic cost, the fact that steady-states are the interior of the (tightened) constraints with , and controllability of with . Thus, converges to and converges to . ∎
Notably, Theorem 1 relies only on convex optimization, provides robustness guarantees for uncertain nonlinear manipulators, accounts for velocity/acceleration dependence of the model error, and provides a larger region of attraction.111Given (17), any steady-state is a feasible initial condition of the MPC (18). Furthermore, in case the uncertainty in gravity and the discretization error is small, we get . With this implies that any steady-state in the constraints is a feasible initial condition.
VI Real-time MPC with convex obstacle avoidance constraints
In this section, we add the two missing pieces of the approach presented in Section V: (i) How to enforce obstacle avoidance? (ii) How to execute the optimization in parallel to ensure real-time applicability? Furthermore, we present an algorithm that guides the robot through a collision-free corridor, only requiring the solution to a convex MPC problem that is solved in parallel during execution. Finally, we provide a theoretical analysis, showing that this approach robustly ensures safe operation.
VI-A Obstacle avoidance through SCDF
The SCDF is defined as
[TABLE]
which is the distance to the boundary of the obstacle region . Given a collision-free point , the SCDF allows us to define a collision-free region as
[TABLE]
which is parametrized by the tuple . The region is an Euclidean norm ball in the configuration space. Obtaining an analytical expression for the SCDF is non-trivial, which is why we resort to approximate methods[25, 15]. To adapt the proposed MPC such that it guarantees obstacle avoidance, we simply add the following constraints
[TABLE]
to the MPC problem in (18). The computation of the constraint tightening is given in Appendix -D. In the above, each state in the nominal trajectory is constrained to lie within an allocated ball . How these are computed is presented in Section VI-C.
VI-B Parallel MPC formulation
To fulfill the real-time constraints, we solve the MPC problem (18) in parallel while running the auxiliary controller (7) for steps. To enable this parallelism, we need to use a forward projection of the initial condition [6], since the measured state in (18b) is not yet available. Thus, we replace the measured state in the constraint (18b) with a tube prediction which will contain the future state:
[TABLE]
Here, and are the nominal state and tube size predicted at time . In particular, corresponds to the prediction made steps ago. Similarly, the tube is predicted using (18e), but with the initial condition based on the most up-to-date information at time :
[TABLE]
VI-C Robust corridor planning
Next, we propose an algorithm that ensures that the robot reaches a given goal configuration, , without collisions. The high-level idea is to first generate a collision-free region that connects the current configuration and the goal configuration. We refer to this region as a corridor, which is produced using the SCDF around a collision-free path and is illustrated in the left part of Figure 2. Then, at each iteration, we constrain the predicted MPC trajectory to stay within this corridor and pull it towards a temporary virtual goal state, , such that we make progress to the global goal state.
Our approach is sketched in Algorithm 1. Before any planning can take place, we perform the offline tasks already described in the previous sections. That is, we compute the acceleration constraints , line 2, compute the auxiliary controller, line 3 , and compute the model error constants, line 4.
During online operation, we start at a steady-state configuration , receive a goal configuration and first execute the corridor planning, lines 6-7.
Then, we plan a high-level collision-free path, , to the goal, e.g. by using a sampling-based planner, line 8. Next, in line 9, we discretize the corresponding path, resulting in the sequence , and precompute the collision-free balls with the SCDF according to (20), resulting in a discretized corridor .
In order to guarantee convergence, the sequence of balls needs to be sufficiently overlapping, which is captured by the following condition
[TABLE]
We verify (24) for all neighbouring balls in the corridor and use a finer discretization for pairs where it is not yet fulfilled. Then, we initialize a feasible trajectory, control inputs, and a predicted tube around the current state, line 10. Next, we enter the real-time control loop, line 12-23, which is illustrated in the mid-left part of Figure 2. From a feasible trajectory we loop over all its states and assign a corresponding ball to it, line 12. This is done according to
[TABLE]
which returns the ball that contains with the largest margin. The assignment rule is conceptualized in the mid right part of Figure 2. The process is repeated for , resulting in the sequence .
Next, we compute a virtual goal state , line 13, which serves the purpose of pulling the trajectory in a direction that makes progress to the global goal state . This is done by selecting the configuration that has made the most progress along the path and is contained in the last ball, i.e. according to
[TABLE]
where the last ball is tightened with the steady state tube size in order to be compliant with the convergence properties of Theorem 1. Having computed a virtual goal configuration, we define the resulting state as . We illustrate this process in the right part of Figure 2. We continue with solving the MPC problem in parallel, line 14, where we solve Problem (18) with the collision-avoidance constraints (21) and initial tube constraint (22). The inputs are the predicted tube, and , balls and the virtual goal . Solving the problem results in an optimized nominal trajectory and control inputs. While the MPC solver is running, we continue by predicting our future tube, line 15, and run our auxiliary controller, line 16-21. Next, we shift our nominal trajectory times and append the last state times, line 22, serving as a feasible trajectory for the next iteration, line 23. The number of auxiliary steps defines a tunable time slot, , which enables parallel execution of the auxiliary controller and the MPC solver. It is defined by the user and helps to meet any real-time requirements.
The following theorem shows that running our proposed algorithm guarantees feasibility and convergence to the goal state.
Theorem 2**.**
Consider the nonlinear system (V-A) with and Algorithm 1. Suppose further that the corridor reaches from to the target . Then,
- •
Feasibility: All the optimization problems in Algorithm 1 are feasible for all ;
- •
Constraint satisfaction: , , , ;
- •
Convergence: .
Proof.
The proof is analogous to Theorem 1. The main change is ensuring that the allocated ball constraints (21) do not adversely impact convergence and feasibility and that the virtual goal converges to the global goal in finite time. The detailed proof can be found in Appendix -E. ∎
VII Numerical experiments
VII-A Setup
The robot we use for our simulations is an IRB 1100 which is a 6 DOF robot, illustrated in the left part of Figure 3. The configuration space is defined by its joint limits and the velocity constraint set is defined as . The dynamics is based on a proprietary model of an IRB 1100 robot with an additional damping term proportional to the velocity, defined as . We simulate the continuous-time dynamics (4) with an Explicit Runge-Kutta method of order 5. We consider parametric uncertainty in the mass of each link and the damping. Gravity error is assumed to be negligible, i.e. in (13), since it is usually easy to compensate with a disturbance observer. We demonstrate our proposed method on a common robotic application, illustrated in the left part of Figure 3, which shows a pick and place scenario.
VII-A1 Convex acceleration set
We compute the convex acceleration constraint in (3) using sampling. We start with a nominal box constraint set for the acceleration, , represented in vertex form. Then, we uniformly sample states . For each sampled state and control input vertex , we verify condition (3). If the condition is violated, we shrink the acceleration set uniformly by 1 % and then repeat the process until it is satisfied for all states and control inputs.
VII-A2 Model error constants
The model error constants are also computed using a sampling-based approach. We compute a batch containing random states and control inputs, from which we compute (11)-(13) by using a running max. We check for convergence between the batches by checking the largest difference of the constants in-between the batches. The process is stopped if the difference is less than .
VII-A3 Corridor planning
To produce a corridor, we use the hybrid solution presented in [25]. That is, we fist learn a deep neural network representing the SCDF, referred to as an nSCDF, by over-approximating the wrist and tool with a sphere to reduce the dimensionality. When the nSCDF is negative, we fallback on a conventional collision-detector to refine the collision query. To find an initial path, we start by creating a roadmap where the nSCDF is positive. Then, we connect the query points to the graph. To produce a corridor around the path, we discretize the path and query the nSCDF for the distances. For parts where the nSCDF is negative, we use the collision detector, where we sample configuration within a ball of size [rad], shrinking the ball if any collision is detected until all points within the ball are collision-free.
VII-A4 Methods
In our experiments we compare the following methods.
- •
Flexible: Our approach, i.e. (18) with (21) and (22).
- •
Rigid: Standard tube MPC, i.e. same as ours but executed with a constant tube size based on the worst-case model mismatch.
- •
Nominal: The MPC in (18) with (21), but without robustness features, i.e., .
- •
Oracle: The same as nominal, but with a perfect model. This provides a lower bound on the achievable performance.
All methods are executed with the following parameters: , , and .
VII-A5 Simulations
A constant control input is applied every [ms]. The robust MPC methods are optimized every steps. All MPC schemes are solved on a laptop with an Intel i5-1155G7 CPU. We repeat each simulation times, re-sampling the uncertainty parameter uniformly for each run. To evaluate the scaling capabilities, the methods are tested with different levels of uncertainty. If the method was not able to reach the goal within seconds, it was stopped and labeled as unsuccessful. To verify the SCDF, we collision-checked all trajectories returned from the methods with a conventional collision checker using the exact obstacle and robot geometries. The robot was defined to have reached the goal if its state is within an -ball of radius around the goal state. We measure performance based on the time it takes to reach the goal region and how the method scales with increasing uncertainty.
VII-B Results
The offline computation times are presented in Table I.
Corridor: Finding a path takes [ms] and to produce a corridor with the hybrid SCDF takes roughly [s]. Robustness & performance: The times to reach the goal for different level of uncertainty is presented in the middle of Figure 3. None of the methods resulted in trajectories that were in collision. The nominal MPC is not included in the figure since it resulted in infeasibility issues in each run due to the model errors. This shows the importance of including robustness in the design. For the robust methods, we see an intuitive trend, larger uncertainty yields longer time to reach the goal. This is a design feature to ensure feasible and safe motion. For our method, this behavior is directly controlled by the constants in (11)-(13), which become larger as the uncertainty is increased. Comparing the performance between the robust methods, we see that for lower uncertainties, the methods perform basically the same, but with increasing uncertainties, the tightening becomes too conservative for the rigid rube. Our method shows superior scaling capabilities compared to the rigid tube, being able to scale to more than times higher level of uncertainty.
Online complexity: Assigning the balls and computing the virtual goal was observed to take max 1 [ms]. The main computational bottleneck is in solving the MPC problem. We present the statistics of the solvers computation times in the right part of Figure 3. Observing the plot, we see that solving the nominal MPC is done very fast, with a max time of roughly [ms]. Naturally, adding additional robustness features adds more computation time, roughly a factor . We observe that our flexible tube has a max computation time below [ms], which therefore fulfills our real-time requirement, since we take time steps with the auxiliary controller in the inner loop.
VIII Conclusions
We have presented a novel convex robust motion planning solution for manipulators that gives robustness guarantees to bounded model errors and results in collision-free motion. One of the main benefits is that we derived a convex optimization problem, which can be solved fast and reliably. From the numerical experiments, we observed that a robust design of the MPC is necessary to maintain feasibility. Compared to a more standard robust MPC formulation, our approach was less conservative and scaled to over three times larger levels of uncertainty. For future work, we want to focus on validation in hardware experiments and data-driven estimation of model uncertainty.
-A Model error derivation
In the following, to increase readability, we drop the input arguments to the functions, e.g. . From the manipulator dynamics (1) we obtain
[TABLE]
In the above, FL denotes feedback linearization. The denotes the step where we decompose the matrix in front of the acceleration input into as follows
[TABLE]
The function defines the state and input dependent model error on the following form
[TABLE]
-B Auxiliary controller and Lyapunov matrix
We present the optimization problem to compute in Appendix -B1, and derive it in Appendix -B2. How we selected a suitable pair P and K in the experiments is presented in Appendix -B3.
-B1 Convex optimization program
We solve the following semidefinite program to produce the gain K and Lyapunov matrix P:
[TABLE]
with the objective function defined as
[TABLE]
The gain and Lyapunov matrix is computed from the following relationship and . The decision variables and , control the amount of tightening on the state and control constraints, respectively. In this context, the set is a box set of the model error, including both the model error due to model uncertainty (5), and the discretization error (V-A). Here corresponds to the vertices of this box. The inputs are the state constraints, and , the control input constraints, and , and the contraction rate, . We assume polytopic constraints, represented in its half-plane form, i.e. for the state constraints the form is
[TABLE]
where is the :th row of the matrix and is the :th element of .
-B2 Derivation of optimization problem
Our goal is to derive an optimization problem where the amount of tightening is included in the cost, thereby allowing us to reduce the conservatism in the tightening.
In order to achieve this, we first have to derive an expression for the tightened state and input constraints. Then, we present LMI’s which allows us to include the tightening in the optimization. This results in a non-convex objective which we as a last step convexify, ending up with our proposed optimization problem.
First, the following linear matrix inequalities (LMIs) are a standard reformulation of inequality (8) (cf. [3]):
[TABLE]
The worst case disturbance is defined as
[TABLE]
A robust positive invariant (RPI) set can be computed that contains the worst case disturbance, having the following tube size
[TABLE]
The rigid tube MPC in Section VII-A4 uses the above tube size to tighten its constraints.
Next, we focus on how to introduce the tightenings into the optimization problem. We start by deriving an expression for the state constraint tightening. We require that around a reference state, , the tube with size should not violate the state constraints. That is, for each , we want
[TABLE]
The error is defined as . We introduce
[TABLE]
Now, we input the above into the condition of (38) resulting in
[TABLE]
The worst case error maximizer is the following
[TABLE]
Thus, the tightened constraints become
[TABLE]
and we define the tightening constants as
[TABLE]
Next, we focus on the control input tightening. Using the control law in (7), , into the above we get
[TABLE]
This is on the same form as for the state constraints. Thus, following the same approach, the tightening constant can be expressed as
[TABLE]
Having introduced the expressions for both the state and control input tightening, we now address how to include them into the optimization problem. We start by re-writing our tightenings. Focusing on the state inputs, for then (43) and (37) defines our tightening, which we express as
[TABLE]
and split into two inequalities
[TABLE]
where . We rewrite the above into LMI’s using the Schur complement [8], ending up with the LMI’s in (32c) and (32e). The control input tightenings follows the same reasoning. Now, we include all the state and control input tightenings in the objective, resulting in
[TABLE]
The bi-linear terms makes the cost non-convex. To make it convex we use the inequality of the arithmetic and geometric means [8], which results in
[TABLE]
ending up with the loss in (-B1).
-B3 Candidate selection
We normalized the objective function by dividing the constraint tightenings of the configuration, velocity and control with a representative normalizing factor. For the configuration tightening, we used [rad], which was the padded clearance added in the path planning. For the velocity and control tightening, they were divided with their corresponding max values from the constraints, i.e. [rad/s] and [rad/s2], respectively.
We compute values of , equally spaced between 0.8 and 0.99. Having solved the optimization problem for all values of resulted in pairs of K and P. First, all pairs where was satisfied were removed. From the remaining pairs, we selected the pair that resulted in the smallest max tightening. For the rigid tube MPC, the condition was ignored, otherwise the same selection rule was used.
-C Proof of Proposition 2
It holds that
[TABLE]
with . The uncertainty bound satisfies
[TABLE]
Combining both bounds yields
[TABLE]
-D Tube in ball constraint
To compute the tightened ball constraints in (21), we compute a ball that over-approximates the projection of the tube on the configuration space:
[TABLE]
with a suitable radius . To ensure the above, we start by projecting onto the configuration space. The Lyapunov matrix is structured as
[TABLE]
The projection of the ellipsoid onto the configuration space, , is done with the Schur-complement
[TABLE]
The eigenvalues give the principal axes of the resulting ellipsoid. We compute a radius that encompasses the projected ellipsoid as
[TABLE]
Now, to fulfill condition (52), we simply shrink the given ball’s radius, , by . Thus our homothetic constraint tightening becomes
[TABLE]
-E Proof of Theorem 2
The proof follows the same steps as Theorem 1 and we only highlight the differences related to the added and updated ball constraints (21) and the virtual goal (26).
Part I: The system starts at steady-state, the allocation rule (25) picks balls with largest margin around the initial trajectory. Note that the corridor satisfies (24), which also ensures that the ball around the initial condition is larger than . Hence, a feasible solution to Problem (18) with the added obstacles avoidance constraints (21) is given by staying at the steady-state with , i.e., we are guaranteed that the MPC problem is feasible at the start.
Next, we show recursive feasibility. Analogous to the proof of Theorem 1, the candidate solution is given by shifting the previous optimal solution by steps. Compared to Theorem 1, we need to account for the change in the initial condition (23) and the added obstacle avoidance constraints (21). For the initial constraint (23), the shifted candidate solution , also provides a feasible solution. In particular, Proposition 2 also ensures that and monotonicity of (18e) ensures .
Regarding the added ball constraints (21): If we would simply shift the previously allocated balls, i.e., , then the fact that the candidate sequence is equally shifted compared to the previous feasible solution, ensures feasibility of the candidate sequence, The ball assignment (25) is such that the distance to the boundary of the ball is non-decreasing and thus (21) is also feasible with the new assigned balls.
Part II: For all , due to the initial constraint (22) and the tube construction (18e). Hence, the tightened constraints (18f), (18g), and (21) ensure , , . Condition (3) ensures , i.e., the torque limits are respected at each discrete time. The construction of the balls (20) with the SCDF (19) ensures , i.e., the robot operates in a collision-free configuration,
Part III: We need to ensure that converges to in finite time. For contradiction, suppose that the intermediate goal is not updated for some arbitrarily long time. Then, converges exponentially to zero, analogous to the proof of Theorem 1, given that . Thus, in finite time, , for any . From (24), we know that . The ball selection (25) for maximizes the distance around , which in combination with ensures that . Hence, satisfies condition (26), ensuring that the virtual goal is updated. Thus, is updated in finite time. Given the finite number of possible virtual goals based on the discretization, in finite time. Convergence of to the neighborhood of the goal follows analogous to Theorem 1.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] A. Amice, H. Dai, P. Werner, A. Zhang, and R. Tedrake (2022) Finding and optimizing certified, collision-free regions in configuration space for robot manipulators . In International Workshop on the Algorithmic Foundations of Robotics , pp. 328–348 . Cited by: §II .
- 2[2] F. Borrelli, A. Bemporad, and M. Morari (2017) Predictive control for linear and hybrid systems . Cambridge University Press . Cited by: §II .
- 3[3] S. Boyd, L. El Ghaoui, E. Feron, and V. Balakrishnan (1994) Linear matrix inequalities in system and control theory . SIAM . Cited by: § -B 2 .
- 4[4] A. Carron, E. Arcari, M. Wermelinger, L. Hewing, M. Hutter, and M. N. Zeilinger (2019) Data-driven model predictive control for trajectory tracking with a robotic arm . IEEE Robotics and Automation Letters 4 ( 4 ), pp. 3758–3765 . External Links: Document Cited by: §II . · doi ↗
- 5[5] M. A. dos Santos, A. Ferramosca, and G. V. Raffo (2024) Set-point tracking mpc with avoidance features . Automatica 159 , pp. 111390 . Cited by: §II .
- 6[6] R. Findeisen and F. Allgöwer (2004) Computational delay in nonlinear model predictive control . IFAC Proceedings Volumes 37 ( 1 ), pp. 427–432 . Cited by: § VI-B .
- 7[7] K. Hauser and V. Ng-Thow-Hing (2010) Fast smoothing of manipulator trajectories using optimal bounded-acceleration shortcuts . In International Conference on Robotics and Automation (ICRA) , Vol. , pp. . External Links: Document Cited by: §I .
- 8[8] R. A. Horn and C. R. Johnson (2012) Matrix analysis . Cambridge university press . Cited by: § -B 2 , § -B 2 , § V-B .
