Elsevier

Systems & Control Letters

Volume 108, October 2017, Pages 56-63
Systems & Control Letters

Real time trajectory optimization for nonlinear robotic systems: Relaxation and convexification

https://doi.org/10.1016/j.sysconle.2017.08.004Get rights and content

Abstract

Real time trajectory optimization is critical for robotic systems. Due to nonlinear system dynamics and obstacles in the environment, the trajectory optimization problems are highly nonlinear and non convex, hence hard to be computed online. Liu, Lin and Tomizuka proposed the convex feasible set algorithm (CFS) to handle the non convex optimization in real time by convexification. However, one limitation of CFS is that it will not converge to local optima when there are nonlinear equality constraints. In this paper, the slack convex feasible set algorithm (SCFS) is proposed to handle the nonlinear equality constraints, e.g. nonlinear system dynamics, by introducing slack variables to relax the constraints. The geometric interpretation of the method is discussed. The feasibility and convergence of the SCFS algorithm is proved. It is demonstrated that SCFS performs better than existing non convex optimization methods such as interior-point, active set and sequential quadratic programming, as it requires less computation time and converges faster.

Introduction

Although great progresses have been made in motion planning for robotic systems [1], challenges remain in real time planning in dynamic uncertain environment. The applications include but are not limited to real time navigation [2], autonomous driving [3], robot arm manipulation and human robot cooperation [4]. To achieve real time safety and efficiency, the robot motion should be re-planned from time to time when new information is obtained during operation, which requires the motion planning algorithms to run fast enough online.

This paper focuses on optimization-based motion planning, where an ideal low level tracking controller is assumed. The method fits into the framework of model-predictive control (MPC) [5], where an optimal trajectory is obtained by solving a constrained optimization or optimal control problem in receding horizons. The optimization problem may be highly nonlinear due to the dynamic constraints, and highly non convex due to the constraints for obstacle avoidance, which makes it hard to be solved online.

Convexification [6] is a popular way to deal with non convexity by transforming the non convex problem into a convex one. One popular convexification method is the sequential quadratic programming (SQP), which approximates the non convex problem as a sequence of quadratic programming (QP) problems and solves them iteratively. References for SQP can be founded in [7] and [8]. The method has been successfully applied to offline robot motion planning as discussed in [9] and [10]. However, as SQP is designed for general purpose, the unique geometric structure of the motion planning problems is neglected. As a consequence, it is hard to use for real time applications.

In practice, the cost function for motion planning is usually designed to be convex [11], [12], while the non convexity mainly comes from the physical constraints, e.g. obstacles. Regarding this observation, the convex feasible set algorithm (CFS) [13] was proposed to handle motion planning problems with convex objective functions and non convex inequality constraints. The idea of the CFS algorithm is to transform the origin problem into a sequence of convex subproblems by obtaining convex feasible sets within the non convex inequality constraints, and then iteratively solve the convex subproblems until solutions converge. The difference between CFS and SQP lies in the methods in obtaining the convex subproblems, where the geometric structure of the motion planning problem is fully considered in CFS.

However, one limitation of CFS is that it may not converge to local optima under nonlinear equality constraints (such as nonlinear dynamic constraints) as the convex feasible set for a nonlinear equality constraint may reduce to a singleton point.

In this paper, the slack convex feasible set algorithm (SCFS) is introduced to handle optimization problems with convex cost functions and non convex equality and inequality constraints. The idea is to relax the nonlinear equality constraints to several nonlinear inequality constraints using slack variables and then solve the relaxed problem using CFS. The feasibility, convergence and optimality of the algorithm will be proved in the paper. The performance of SCFS will be compared to that of SQP as well as other existing non convex optimization algorithms.

The remainder of the paper will be organized as follows: in Section 2, a benchmark motion planning problem is proposed; Section 3 reviews the convex feasible set algorithm; Section 4 introduces the slack convex feasible set algorithm; Section 5 illustrates the performance of SCFS; Section 6 concludes the paper.

Section snippets

The notations

Denote the state of the robot as xXRn where X represents n dimensional state space. Denote the control input of the robot as uURm where U represents m dimensional control space.1 Suppose the robot needs to travel from xstart to xgoal. The robot trajectory is denoted as x=[x0T,x1T,

The convex feasible set algorithm

The convex feasible set algorithm was proposed in [13] to solve the following problem.

Problem 7 The Benchmark Problem for the CFS Algorithm

minxΓJ(x),where J satisfies Assumption 2 and Γ satisfies Assumption 3. Moreover, the interior Γo of Γ is non empty.

Problem 7 is a special case of Problem 1. The geometry of Problem 7 is illustrated in Fig. 2, which is identical to the geometry on the plane u=0 in Fig. 1. In this section, the CFS algorithm will be briefly reviewed, followed by the discussion

The slack convex feasible set algorithm

The slack convex feasible set algorithm (SCFS) will be introduced in this section to solve Problem 1. The key idea is to introduce slack variables and transform the nonlinear equality constraint (4) to a set of non degenerating nonlinear inequality constraints such that the CFS algorithm can be applied.

Numerical examples

The performance of SCFS is illustrated in a motion planning problem for a mobile robot in a crowded environment as shown in Fig. 7. State xR2 denotes the planar position of the vehicle. Control uR is the yaw rate. Then x=[x0T,x1T,,xhT]TR2(h+1) is the planar trajectory. u=[u0T,u1T,,uh1T]TRh is the trajectory of yaw rate. x and u satisfy the dynamic equation in (7) for any q. The area occupied by the jth obstacle at time step q is denoted as Oj,qR2. Define ϕj,q(x)=d(xq,Oj,q)dmin where d(

Conclusion

This paper discussed the geometric structure of the trajectory optimization problem for nonlinear robotic systems. Based on the geometric understanding, the slack convex feasible set algorithm was proposed to solve the constrained trajectory optimization problem by relaxation and convexification. The feasibility, convergence and optimality of the algorithm were proved. Simulation results also validated the efficiency of the algorithm and illustrated its advantage over existing algorithms.

References (16)

  • LatombeJ.-C.

    Robot Motion Planning, Vol. 124

    (2012)
  • FrazzoliE. et al.

    Real-time motion planning for agile autonomous vehicles

    J. Guid. Control Dyn.

    (2002)
  • KuwataY. et al.

    Real-time motion planning with applications to autonomous urban driving

    IEEE Trans. Control Syst. Technol.

    (2009)
  • LiuC. et al.

    Algorithmic safety measures for intelligent industrial co-robots

  • HowardT.M. et al.

    Receding horizon model-predictive control for mobile robot navigation of intricate paths

  • TawarmalaniM. et al.

    Convexification and Global Optimization in Continuous and Mixed-Integer Nonlinear Programming: Theory, Algorithms, Software, and Applications, Vol. 65

    (2002)
  • SpellucciP.

    A new technique for inconsistent qp problems in the sqp method

    Math. Methods Oper. Res.

    (1998)
  • ToneK.

    Revisions of constraint approximations in the successive qp method for nonlinear programming problems

    Math. Program.

    (1983)
There are more references available in the full text version of this article.

Cited by (31)

View all citing articles on Scopus

The work is supported in part by Berkeley fellowship and in part by FANUC Corporation , Japan.

View full text