Combining Safe Interval Path Planning and Constrained Path Following Control: Preliminary Results
Konstantin Yakovlev, Anton Andreychuk, Juliya Belinskaya, Dmitry, Makarov

TL;DR
This paper presents a hierarchical navigation approach combining safe interval path planning with a flatness-based constrained control method, improving success rates in robot navigation amidst static and dynamic obstacles.
Contribution
It introduces enhancements to safe interval path planning and integrates it with a flatness-based control approach for improved robot navigation.
Findings
Increased success rate in navigation tasks
Effective handling of static and dynamic obstacles
Enhanced trajectory planning techniques
Abstract
We study the navigation problem for a robot moving amidst static and dynamic obstacles and rely on a hierarchical approach to solve it. First, the reference trajectory is planned by the safe interval path planning algorithm that is capable of handling any-angle translations and rotations. Second, the path following problem is treated as the constrained control problem and the original flatness-based approach is proposed to generate control. We suggest a few enhancements for the path planning algorithm aimed at finding trajectories that are more likely to be followed by a robot without collisions. Results of the conducted experimental evaluation show that the number of successfully solved navigation instances significantly increases when using the suggested techniques.
| Acceleration | Success Rate | ||
|---|---|---|---|
| 5ms | 57% | 0.06980 | 0.02156 |
| 8ms | 69% | 0.04705 | 0.01997 |
| 15ms | 73% | 0.03077 | 0.01878 |
| inflate= | inflate= | inflate= | inflate= | |||||
| Acceleration | Success | Trajectory | Success | Trajectory | Success | Trajectory | Success | Trajectory |
| () | Rate | Cost | Rate | Cost | Rate | Cost | Rate | Cost |
| 5ms | 72% | 100.3% | 82% | 100.96% | 86% | 101.45% | 84% | 103.7% |
| 8ms | 82% | 100.3% | 86% | 100.96% | 87% | 101.45% | 85% | 103.7% |
| 15ms | 86% | 100.3% | 86% | 100.96% | 87% | 101.45% | 85% | 103.7% |
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.
11institutetext: Artificial Intelligence Research Institute, Federal Research Center ”Computer Science and Control” of Russian Academy of Sciences, Moscow, Russia http://www.rairi.ru/ 22institutetext: National Research University Higher School of Economics, Moscow, Russia 33institutetext: Peoples’ Friendship University of Russia (RUDN University), Moscow, Russia 44institutetext: Bauman Moscow State Technical University, Moscow, Russia 55institutetext: Moscow Institute of Physics and Technology, Dolgoprudny, Russia
55email: [email protected], [email protected], [email protected], [email protected]
Combining Safe Interval Path Planning and Constrained Path Following Control: Preliminary Results ††thanks: This work was partially supported by RFBR Grant no. 18-37-20032 and by the “RUDN University Program 5-100”
Konstantin Yakovlev 11 2 2 5 5 0000-0002-4377-321X
Anton Andreychuk 1133 0000-0001-5320-4603
Julia Belinskaya 1144 0000-0002-4136-7912
Dmitry Makarov 1155 0000-0001-8930-1288
Abstract
We study the navigation problem for a robot moving amidst static and dynamic obstacles and rely on a hierarchical approach to solve it. First, the reference trajectory is planned by the safe interval path planning algorithm that is capable of handling any-angle translations and rotations. Second, the path following problem is treated as the constrained control problem and the original flatness-based approach is proposed to generate control. We suggest a few enhancements for the path planning algorithm aimed at finding trajectories that are more likely to be followed by a robot without collisions. Results of the conducted experimental evaluation show that the number of successfully solved navigation instances significantly increases when using the suggested techniques. ††Camera-ready version of the paper as submitted to ICR’19
Keywords:
Path Planning Path Finding AA-SIPP Differentially flat systems Point-to-point control problem
1 Introduction
Moving from one location to the other without collisions is one of the fundamental problems in mobile robotics. Two approaches to solve it are common: reactive and deliberative. Methods following reactive approach, e.g. BUG algorithms [9], [8] or ORCA [14], rely on minimum knowledge and on simple “follow-straight-line-to-the-goal” strategy combined with a fixed set of rules to avoid collisions. Deliberative methods utilize knowledge about the environment to plan the collision-free trajectory avoiding detours and/or deadlocks. In this paper we follow the second approach.
When environment is static, it is common to solve a discretized version of the problem, e.g. treat the path finding as a graph search problem. This graph can incorporate information about the kinematic/dynamic constraints of the robot. In this case utilizing one of the family of the RRT planners [7] is widespread. The other option is to plan for a path in a simplified graph which models only the environment, e.g. occupancy grid [17] or visibility graph [15], and then use this path as a reference trajectory the robot has to follow [10]. In this work we adopt the latter approach.
Presence of dynamic obstacles adds another layer of complexity to path finding as one needs to reason about the time as well. Typically timeline is discretize into the timesteps and robot’s moves are restricted to last exactly one timestep. In this setting, conventional heuristic search, e.g. A* [5] or one of its descendants, might be run to solve the problem. To make the search more efficient it is reasonable to group the time steps into the intervals as suggested by the paradigm of Safe Interval Path Planning (SIPP) [11].
In our work we do not restrict all robot’s moves to last the same and utilize a modification of SIPP, i.e. AA-SIPP [16], that allows following not only edges that were initially present in the graph but also the newly build ones that represent the shortcuts. Original AA-SIPP as described in [16] is supposed to handle only translation moves, while we wish to handle turn-in-place moves as well. Thus we propose an appropriate extension of the algorithm.
To follow the planned collision-free trajectory flatness-based approach is used. Many models of real vehicles can be defined as a differentially flat [4] system (see, for example, [13], [12]), i.e. the systems which are equivalent to the Brunovsky normal form [6]. At this stage model constraints, e.g. maximum acceleration, are taken into account and desired admissible trajectory and control are defined (see [2],[3], [1] for details). Then a state feedback control providing asymptotic stabilization around the obtained admissible trajectory is constructed. It is likely that the real trajectory of closed-loop system does not exactly match the planned one, thus collisions might occur. To mitigate this issue we suggest to modify path planning algorithm in such way that it keeps additional safety margin in the time-space while planning for a trajectory. We evaluate the suggested approach empirically and show that it can definitely contribute to finding trajectories that have higher chances to be followed without collisions.
2 Problem Statement
We study the problem of navigating the wheeled robot in 2D in the presence of static and dynamic obstacles. Robot’s workspace is a bounded rectangle comprised of the free space and the obstacles: . Workspace is tessellated to the regular square grid, composed of cells. The cell of the grid is blocked if its interior contains at least one point from , otherwise the cell is un-blocked. Robot is modelled as an open disk of radius , where is the size of the grid cell. Valid locations for the robot are the centers of the un-blocked cells. Robot’s state is a tuple , where are the coordinates in meters and in rads. The union of all valid stated is denoted as .
Robot’s action space is: wait in place, rotate in place, translate from one un-blocked cell to the other. Trajectory of a robot is a sequence of such actions. Formally the trajectory is a mapping
[TABLE]
We suppose that each action composing the trajectory ends with a full stop. Thus one can state that:
[TABLE]
where and are the start and finish times of an action.
Besides a robot dynamic obstacles are navigating the same configuration space. Thus, mappings defining their trajectories are also given, , . We assume that the obstacles do not appear/disappear, i.e. at time they hold their initial positions and after finishing their moves they stay in . Without loss of generality we assume that the obstacles are translating-and-rotating open disks of radii and move in the same way as the robot, i.e. initially each dynamic obstacle is at some free grid cell and when translating it finishes its move at the center of another grid cell as well.
From the path planning perspective the problem is formulated as follows. Given a start and a goal positions, , find a trajectory, , such that i) it is collision free w.r.t to static and dynamic obstacles, i.e. at each moment of time robot is at least units away from the closest static obstacle(s) and at least units away from the closest dynamic obstacle(s); ii) it starts and finishes appropriately, i.e. , and . For planning purposes we assume that robot accelerates/decelerates instantaneously, i.e. each segment of defines a uniform linear or angular motion.
After is constructed by a planner we need to solve a path following problem, i.e. construct a control that will follow the prescribed trajectory. To do so we suppose that a robot model is differentially flat, i.e. it is equivalent to the Brunovsky normal form, given as follows
[TABLE]
where denotes the second time derivative, is a state vector, , are the spatial coordinates, is the yaw angle, is an initial state, is a control that has to be determined. The model has constraints on maximum linear velocity and acceleration given as follows
[TABLE]
where is a spatial coordinates vector. We use a second order of Brunovsky normal form to ensure controllability on acceleration. This type of model is rather common for mechanical systems. We also suppose that a system initial state is defined as .
Although it was assumed during the planning that vehicle accelerates and decelerates instantaneously, this is impossible due to the constraints (4). Therefore, the prescribed trajectory is refined taking into account these constraints. To make the refined trajectory \bm{x}^{*}(t)=\bigl{[}x^{*}(t),y^{*}(t),\theta^{*}(t)\bigr{]} close to the original one, we assume that the spatial movement on each segment of occurs in three stages: a highest possible acceleration to required velocity, a uniform motion with constant speed and a highest possible deceleration to a full stop.
Thus, the problem of path following control is formulated as follows. We need to find an admissible control providing asymptotic stability of the vehicle model (3) around under constraints (4).
3 Method
3.1 Path planning
We plan collision-free trajectories with the any-angle safe interval path planner enhanced to handle rotate-in-place actions. We dub planner AAt-SIPP.
AAt-SIPP relies on heuristic search and its search space consists of states (nodes), , which are identified by tuples , where accounts for robot’s position and heading, - is the contiguous period of time for a configuration, during which there is no collision and it is in collision one time point prior and one time point after the period. Additional data is associated with each state: . is the earliest possible arrival time the configuration can be reached via , is the consistent heuristic estimate of time needed to reach the goal-state from .
On each step AAt-SIPP chooses the node with the lowest value, i.e. -value, to expand. Expansion involves successors generation and updating the set of nodes constituting the fringe of the search-space – . The algorithm stops either when is exhausted or when the goal-state is selected for expansion. In the latter case feasible trajectory is reconstructed using backpointers .
Pseudocode of AAt-SIPP is shown in Alg.1. In case one wants to implement AA-SIPP [16] then the additional terms in lines 14 and 16, accounting for the duration of rotate actions, should be omitted. If lines 8-10 are omitted as well one ends up with the original SIPP algorithm [11].
To efficiently handling rotate actions we modified the OPEN update routine (lines 11-20) to take the durations of rotation actions into account (corresponding code portions are highlighted in blue).
To increase the chance of not colliding with dynamic obstacles when following the constructed path we suggest to add additional safety margins to safe intervals when planning, i.e. when generating the successors. To do so we consider the robot and a dynamic obstacles to be in collision not when the distances between them is less than , but rather when is is less than , where is the user specified parameter.
3.2 Path following
We consider a series of consecutive constrained point-to-point control problems to build a control law that ensures that the system trajectory will asymptotically converges to each path segment of . The point-to-point control problem is the problem of finding a control transfer a vehicle mathematical model from a given initial state to a given final state during a fixed time interval , where and are, accordingly, a start and a finish times of a path segment. Thus, for each segment we have
[TABLE]
The initial state is defined as an actual state of a robot at time (it may deviate from the planned state).
Due to the flatness of (3) we consider the movement along and coordinates separately and solve each of the constrained point-to-point problems in two stages.
-
We build reference (desired) trajectories [, , for , and accordingly so that the boundary conditions (5) at each path segment and the velocity and acceleration constraints (4) are met. The motion law of spatial coordinates consists of three phases: acceleration to the required velocity, uniform motion with constant speed and deceleration to a full stop. The motion law for the coordinate is defined as an unconstrained polynomial time-dependence.
-
We build the control laws in the form of state feedback, that stabilizes the state of the system around the desired trajectories , , .
Let’s consider each of these stages.
We suppose we have a point-to-point problem in the form of (5) for the and coordinates and we have constraints (4). We compute components of acceleration constraint along the and coordinates
[TABLE]
We solve each point-to-point problem similarly, therefore we consider this problem for coordinate only. Let’s suppose that . If this condition
[TABLE]
is met, we compute the velocity of the uniform linear motion as
[TABLE]
If the condition (7) fails to satisfy, we set .
The motion law during the acceleration we find in the space of second-order polynomials such that
[TABLE]
where is the time required for the acceleration or deceleration. We define the uniform linear motion law as the first-order polynomial . The motion law during the deceleration we find in the space of third-order polynomials such that
[TABLE]
Finally, we have the motion law as follows
[TABLE]
If , we set . We chose the control law as the state feedback
[TABLE]
where , are the roots of the characteristic equation for a differential equation for . To ensure the asymptotic stability of a differential equation for , the roots of the characteristic equation must be in the left half-plane of the complex plane. An example of and trajectories is shown in the Fig. 2.
To build the control law for the rotation we find the third-order polynomial such that
[TABLE]
and compute the control law, similar to (12). The order of polynomial is 1 less than the number of initial and final conditions.
4 Empirical Evaluation
Experimental evaluation was conducted in simulation on a grid representing warehouse-like environment. The size of each cell was 1 and the size of the robot and the dynamic obstacles was 0.5. Translation speed was 1 m/s and rotation speed was 180 degrees per second. 128 dynamic obstacles were moving on a grid. 100 different path finding instances were generated randomly.
For the path-following algorithm it’s required to set such parameters as the maximum velocity , maximum acceleration and the values of roots of the characteristic equation , . The value of was set to 1 m/s as the same value was used for the path-planning algorithm. The values of , were chosen empirically and were set to and respectively. Three different values for the acceleration rate were used: : , and .
To evaluate the accuracy of the trajectory execution the root-mean-squared-error (RMSE) was computed. We computed RMSE w.r.t to the planned trajectory, as well as to the reference trajectory at the first stage of trajectory following. We have also counted the number of collisions with dynamic obstacles. The results are presented in Table 1.
Success rate in Table 1 shows the number of tasks that were completed without any collisions. As one can see in case of using the lowest acceleration speed the success rate is only 57%. refers to the error between the planned trajectory and the executed one. shows the error between the reference and the executed trajectory. and differ significantly when is low, while in case when the values of are much closer. This can be explained by the fact the maximum acceleration rate mostly affects the second step, when we get reference trajectories that satisfy the given boundaries of accelerations. In general one can see that executing the trajectory quite often leads to collisions. Increasing the acceleration contributes to decreasing the chance of collision, but they still occur in 27% of cases.
To reduce the number of collisions we have used the method of inflating of collision intervals, that allows to plan trajectories with greater safety. The value of this parameter determines the additional distance that must be between the robot and the dynamic obstacle so that the algorithm considers that there is no conflict between them. There were chosen four values for the evaluation – , , and meters.
The obtained results are presented in Table 2. The values of measures are not presented in this table as they all have the same trends and are almost equal to the ones presented in Table 1.
As one can see, inflating collision intervals leads to notable increase of success rate. In case of using the highest value of even the smallest inflating factor allows to increase the success rate up to 86%. The best value is inflate=0.2, as higher values, i.e. 0.5, do not seem to give any positive effect. The hypothesis, why the further increasing of value of inflating parameter results to slightly worse results, is that it helps to eliminate the collisions only with dynamic obstacles, that intersect the agent’s trajectory (w.r.t to the radii). As a result, the algorithm plans the trajectory in such a way, that it passes further from possibly colliding dynamic obstacles, but closer to the other ones, that were not taken into account.
The trajectory cost columns were normalized by the cost of initially planned trajectories without any inflating. As one can see in terms of trajectory cost the suggested method has a minor negative effect. There is no difference between different values of acceleration as they all performed the same trajectories, planned at the first step.
Overall, the conducted experimental evaluation has shown that suggest path-following method can produce trajectories that are very similar to the ones, obtained by the path-planning algorithm AAt-SIPP. However, in case of using low values of acceleration speed they are not collision-free in almost half of the cases in the tested scenario. To eliminate collisions we used the method of inflating of collisions intervals, that allows to increase the success rate up to 87% while the increase of the solution cost, i.e. time spent for the trajectory following, is almost negligible.
5 Conclusion and Future Work
In this work we combined safe interval path planning and flatness-based constrained path following aimed at safe navigation of the differential drive robot in the environment with both static and dynamic obstacles. We have shown how to increase the chance of accomplishing the mission by a slight modification of the path planner. We have used the model flatness, polynomial approximation approach and pole placement technique to construct admissible control. Appealing direction of future research is developing of the alternatives enhancements for the path planning algorithm, e.g. taking acceleration into account, and evaluating the proposed algorithmic framework on real robots. We are also planning to apply flatness-based approach for real-life vehicle models and to develop our approach to discrete-time systems.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Belinskaya, Y.S., Chetverikov, V.N.: Control of four-rotor helicopter (in russian). Science and education (BMSTU, electr. jour.) 5 , 157 – 171 (2012)
- 2[2] Chetverikov, V.N.: Flatness of dynamically linearizable systems. Differential equations 40, 12 , 1747 – 1756 (2004)
- 3[3] Chetverikov, V.N.: Controllability of flat systems. Differential equations 43, 11 , 1558 – 1568 (2007)
- 4[4] Fliess, M., Levine, J., Martin, P., Rouchon, P.: Flatness and defect of nonlinear systems: introductory theory and examples. International Journal of Control 61 (6) , 1327 – 1361 (1995)
- 5[5] Hart, P.E., Nilsson, N.J., Raphael, B.: A formal basis for the heuristic determination of minimum cost paths. IEEE transactions on Systems Science and Cybernetics 4 (2), 100–107 (1968)
- 6[6] Isidori, A.: Nonlinear control systems. Berlin: Springer (1995)
- 7[7] La Valle, S.M., Kuffner Jr, J.J.: Randomized kinodynamic planning. The international journal of robotics research 20 (5), 378–400 (2001)
- 8[8] Magid, E., Rivlin, E.: Cautiousbug: A competitive algorithm for sensory-based robot navigation. In: 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2004). vol. 3, pp. 2757–2762 (2004)
