Introduction
Safe control for autonomous systems is a challenging task, particularly for dynamic systems navigating through a priori unknown environments. For computational efficiency, many algorithms use a simplified (often kinematic) model of the system to generate a path around obstacles to a goal. A more complex model representing the true robot is then used to track this path. Popular path planning algorithms include Dijkstra’s [3], A
Since planning is typically done with a simplified model of the system, the path might not be feasible and safe for the actual robot to track. To address this issue, [15], [16] directly adds a CBF and CLF as a constraint in the path planning algorithm. Reference [17] uses a reference governor control design wherein a robot with a specific form of dynamics can safely stabilize to a moving equilibrium point. Integrated planning and control (IPC) uses the notion of a safe flight corridor (SFC) as a safety constraint in nonlinear MPC to guarantee safe navigation [18], [19], and shows empirical robustness to sudden disturbances.
Fast and Safe Tracking (FaSTrack) [2] is a modular framework that separates the navigation task into independent planning and tracking tasks (with corresponding planner and tracker models of the autonomous system). Offline, HJ reachability is used to precompute a tracking error bound (TEB) on the maximum deviation that the true tracker model may take from the planner model (Fig. 1). This is paired with an optimal tracking controller that maintains this error bound regardless of the planning algorithm used by the planner. Online, the obstacles are augmented with TEB and the planning algorithm provides a path in the low-dimensional planning space around the augmented obstacles. The tracking controller guarantees the distance between the tracker and the path is contained in the TEB, preserving safety.
Comparison of the relative trajectory using the original FaSTrack framework (left) and our proposed SR-F (right). The red dotted line denotes an unexpected disturbance that causes the relative state to leave the minimum tracking error bound (TEB). FaSTrack can only guarantee the relative state stays in the larger error bound, while the SR-F can stabilize the relative state back to the TEB.
While several of the above approaches can handle predefined disturbance bounds, they are not designed to maintain safety when experiencing a sudden disturbance beyond the expected bounds. In this letter, we modify the FaSTrack framework and propose the novel Safe Returning FaSTrack (SR-F) framework. The main contributions are as follows:
We introduce the SR-F, where a CLF-like function in the relative space between the tracker and planner is computed offline, and a new safe returning mechanism is used to accommodate unexpected disturbances. We prove (under mild assumptions) that the SR-F can maintain safety under unexpected disturbances.
We take advantage of this robustness to sudden disturbances by methodically introducing an artificial sudden disturbance by “jumping” the planner towards the goal, forcing the autonomous system to speed up in open environments while maintaining safety.
We compare SR-F with existing work [19], [20] on 8D and 10D quadrotor navigation tasks that are subjected to sudden high wind gusts. We show the SR-F can maintain safety when unexpected disturbance happens, and outperforms existing methods on navigation speed.
Background
We consider three models: (1) a tracker model that represents the true robot, (2) a planner model that is designed by the user for path planning, and (3) a relative model used to guarantee safety.
1) Tracker Model: The tracker model is given by the following nonlinear ordinary differential equation:\begin{equation*} \frac {d x}{d s} = \dot x = f\left ({{x,u,d}}\right ), x(t) = x_{0}, s\in \left [{{t,0}}\right ], \tag {1}\end{equation*}
\begin{align*} u(\cdot ) \in \mathbb {U}_{s}\mathrel {\mathrel {\mathop :}\hspace {-0.0672em}=}& \{ u~:~\left [{{t,0}}\right ] \mapsto {\mathcal{U}}_{s}, u(\cdot )~\text {is measurable}\}, \\ d(\cdot ) \in \mathbb {D}\mathrel {\mathrel {\mathop :}\hspace {-0.0672em}=}& \{ d~:~\left [{{t,0}}\right ] \mapsto {\mathcal{D}}, d(\cdot )~\text {is measurable}\},\end{align*}
2) Planner Model: The planner model is given by:\begin{equation*} \frac {d p}{d s} = \dot p = h\left ({{p, u_{p}}}\right ), p(t) = p_{0},\end{equation*}
The goal and constraint sets in the planner space are denoted as
3) Relative Dynamics: Define the relative state \begin{equation*} r= \Phi \left ({{x,p}}\right ) \left ({{x- Qp }}\right ), \tag {2}\end{equation*}
\begin{equation*} \dot r = g\left ({{r,u,u_{p},d}}\right ). \tag {3}\end{equation*}
A. HJ Reachability and Fastrack
The FaSTrack framework contains two parts: offline computation and online execution. The offline part uses the HJ reachability to generate the TEB, which is a robust control invariant set. Online, it senses the environment, augments the obstacles with the TEB, and then plans and tracks a path around the augmented obstacles.
1) HJ Reachability (Offline):
HJ reachability can be formulated and solved as an optimal control problem. Specifically, the cost function \begin{align*}V\left ({{r, t}}\right )=& \max _{\lambda _{p} \in \Lambda _{p}, \lambda _{d} \in \Lambda _{d}} \min _{u\in \mathbb {U}_{s}} \left \{{{\vphantom {\max _{s\in \left [{{t, 0}}\right ]} \ell \left ({{ \xi ( s; t, r, u(\cdot ), \lambda _{p}(\cdot ),\lambda _{d}(\cdot )) }}\right )} }}\right. \\& \left. {{\max _{s\in \left [{{t, 0}}\right ]} \ell \left ({{ \xi ( s; t, r, u(\cdot ), \lambda _{p}(\cdot ),\lambda _{d}(\cdot )) }}\right ) }}\right \}.\end{align*}
\begin{equation*} V^{\infty } (r) = \lim _{t\rightarrow -\infty } V\left ({{r, t}}\right ). \tag {4}\end{equation*}
\begin{equation*} {\mathcal{B}}_{e}\mathrel {\mathrel {\mathop :}\hspace {-0.0672em}=}\{e~:~\exists \eta \text {s.t.}~V^{\infty }\left ({{e,\eta }}\right ) \leq \underline {V}^{\infty }\}.\end{equation*}
2) Online Execution:
The FaSTrack augments sensed obstacles by
Remark 1:
The value function is computed with a pre-specified disturbance bound
B. R-CLVF
Recently, [1] proposed the robust control Lyapunov value function (R-CLVF), defined as:
Definition 1 (R-CLVF$V_{\gamma } ^{\infty } $
):
\begin{equation*} V_{\gamma }^{\infty }(r) = \lim _{t\rightarrow -\infty } \max _{\lambda _{p} \in \Lambda _{p}, \lambda _{d} \in \Lambda _{d}} \min _{u_{s}\in \mathbb {U}_{s} } \{ \max _{s\in \left [{{t, 0}}\right ]} e^{\gamma (s-t)} \ell \left ({{ \xi (s)~}}\right ) \}.\end{equation*}
When
The R-CLVF value of r captures the largest exponentially amplified deviation of a trajectory starting from r to the TEB, under worst-case disturbance. If this value is finite, it means r can be exponentially stabilized to the TEB ([1, Lemma 7]).
Theorem 1:
The relative state can be exponentially stabilized to the TEB from \begin{equation*} \min _ {a \in \partial {\mathcal{B}}}||\xi (s)-a|| \leq ke^{-\gamma (s-t)} \min _ {a \in \partial {\mathcal{B}}}||r-a||, \tag {5}\end{equation*}
The R-CLVF can be computed by solving the following R-CLVF-VI until convergence \begin{align*} 0=& \max \Biggl\{ \ell (r) - V_{\gamma }^{\infty }(r), \\& \min _{u\in {\mathcal{U}}_{s}} \max _{u_{p}\in {\mathcal{U}}_{p},d\in {\mathcal{D}}} \frac { dV_{\gamma }^{\infty }}{d r} \cdot g \left ({{r,u,u_{p},d}}\right ) + \gamma V_{\gamma }^{\infty }\Biggr\}.\end{align*}
\begin{equation*} u^{*} = \mathrm {arg\,min}_{u\in {\mathcal{U}}_{s}}\max _{u_{p}\in {\mathcal{U}}_{p},d\in {\mathcal{D}}} \frac {d V_{\gamma }^{\infty }}{ d r} \cdot g \left ({{r,u,u_{p},d}}\right ). \tag {6}\end{equation*}
Safe Returning With Unexpected Disturbance
FaSTrack is robust to bounded pre-specified disturbances. However, unexpected and infrequent short-duration disturbances can happen because of communication delays, sudden external forces (e.g., a strong wind), or model mismatch. After a sudden unexpected disturbance event that causes the tracker to leave the TEB, the FaSTrack framework only guarantees that the tracker will not exit the current level set of the relative value function. This is visualized in Fig. 1, left. The corresponding error bound that must be used to augment obstacles is shown in blue, resulting in conservative plans.
We propose using the R-CLVF to guarantee that the relative states stabilize back to the TEB at the desired rate
After an unexpected disturbance event, the relative state will converge back to the TEB at an exponential rate
.$\gamma $ We can take advantage of this convergence property by introducing an artificial disturbance that “jumps” the planner forward towards the goal when safe to do so, speeding up navigation process.
A. SR-F Algorithm
The overall algorithm is shown in Alg. 1, with a flowchart shown in Fig. 2. We begin by explaining this algorithm at a high level. First the “sensing block” senses the environment and any unexpected disturbances, then augments obstacles by the maximum safe resetting region (sTEB).
Online flowchart for SR-F. The online algorithm contains three main blocks: the sensing block, the planning block, and the tracking block. The sensing block senses the environment, determines the sTEB and augments the obstacle, and checks if unexpected disturbances happen. The planning block checks if the sensed environment is free of obstacles, and use the safe returning function to determine the next plan state
Next the “planning block” by default employs a planning algorithm to generate a path through the sensed environment that obeys the dynamics of the planner model. This planning block has modifications for two scenarios: 1) if a sudden disturbance has occurred, the planner may be moved in a way to ensure that the tracker will not hit an obstacle as it converges back to the TEB, 2) if there is an opportunity to do so safely, the planner will “jump” ahead towards the goal, forcing the tracker to converge back towards it at the rate
Finally, there is a “tracking block,” which updates the current relative state between the tracker and planner, and applies the pre-computed optimal controller to the tracker that minimizes the distance between itself and the planner.
B. Sensing Block
Initialization: Every iteration starts with checking if the tracker has experienced an unexpected disturbance, which we assume does not cause failure immediately.
Environment Sensing: The robot senses the environment, updates the constraint \begin{align*} dst\left ({{ x; \mathcal C_{\text {sensed}} }}\right ) = \begin{cases} \mathcal R & \quad \text {no obstacle} \\ \min _{a\in \partial \mathcal C_{\text {sensed}}} ||x-a|| & \quad \text {otherwise}. \end{cases} \tag {7}\end{align*}
Computation of the Max Safe Resetting Region, sTEB: Since the planner model is a virtual model with no physical realization, the framework can reset the planner state arbitrarily if needed to ensure that the tracker does not collide with obstacles as it converges back to the planner. We provide a method to find the sTEB, which is denoted as \begin{align*} {\mathcal{S}}= \begin{cases} {\mathcal{B}}& \quad {\mathcal{B}} \nsubseteq B(0,dst/2) \\ \text {largest sub-level set} & \quad {\mathcal{B}} \subseteq B(0,dst/2). \end{cases} \tag {8}\end{align*}
\begin{equation*} {\mathcal{S}}_{e}\mathrel {\mathrel {\mathop :}\hspace {-0.0672em}=} \{e~:~\exists \eta \text {s.t.}~ \left [{{e,\eta }}\right ] \in {\mathcal{S}} \}. \tag {9}\end{equation*}
Augmentation of Obstacles:
Remark 2:
To guarantee safety, the consideration of the hyperball
C. Planning Block and the Safe Returning Function
Jump Evaluation: The planning block begins by evaluating whether the planner should “jump” from its current state. This occurs under two conditions. The first condition occurs when the relative state indicates that it is outside of the TEB (i.e.,
Safe Returning Function: If the JF
Replan: If the ReplanFlag has been activated, either from a jump or a new obstacle detected, the path planning algorithm is used to generate a new path for the planner. This path is processed by the function nextPlan, which converts the path into a trajectory that obeys the dynamics and control bounds of the planner. We then reset the RF to 0.
D. Tracking Block
We update the planner state using
Algorithm 1 SR-FaSTrack
Initialization:
while Goal not reached do
Sensing Block
If unexpected disturbance happens
Sense environment, update
RF
Find safe resetting region
Planning Block
if
else if
if
else if Not obstacle free then JF
end if
end if
JF, RF,
Tracking Block
Update tracker state:
end while
Theorem 2:
Safety is guaranteed using SR-F if the disturbance does not push the tracker in its inevitable backward reachable tube of
Proof: Assume the JF=0 for some time step, the SR-F works just like the FaSTrack, and safety is guaranteed [2].
Assume JF
Algorithm 2 Safe Returning Function
x,
Output: Next plan state
if JF
RF
else if JF
if RF
end if
remove
RF
end if
JF
Return
Remark 3:
We provide two benefits compared with the FaSTrack. 1) SR-F is robust to unexpected disturbances, 2) in the obstacle-free region, we mimic a “beneficial disturbance” to make the planner jump, accelerating the navigation.
Experiments
We demonstrate that SR-F can provide safety guarantees given unexpected disturbances, and accelerate the navigation process. We consider two examples: 1) an 8D quadrotor model tracking a 2D integrator planner model with the A* planner and 2) a 10D near-hover quadrotor tracking a 3D integrator planner model with the RRT planner. We compare our method with FaSTrack, Meta-FaSTrack (M-F) [20], and IPC [19]. All simulations are conducted in MATLAB. Code can be found at https://github.com/UCSD-SASLab/Safe-Returning-FThttps://github.com/UCSD-SASLab/Safe-Returning-FT.
A. Offline Computation
The relative dynamics can be obtained as \begin{align*} \dot {x}_{r}=& v_{x} - \hat {v}_{x} + d_{x}, \dot {v}_{x} = g\tan {\theta _{x}}, \dot {\theta }_{x} = -d_{1}\theta _{x} + \omega _{x}, \\ \dot {\omega }_{x}=& -d_{0}\theta _{x} + n_{0}u_{x}, \dot {y}_{r} = v_{y} - \hat {v}_{y} + d_{y}, \dot {v}_{y} = g\tan {\theta _{y}}, \\ \dot {\theta }_{y}=& -d_{1}\theta _{y} + \omega _{y}, \dot {\omega }_{y} = -d_{0}\theta _{y} + n_{0}u_{y}, \\ \dot {z}_{r}=& v_{z}- \hat {v}_{z} + d_{z}, \dot {v}_{z} = k_{T}u_{z} - g.\end{align*}
B. Online Planning and Navigation
10D-3D simulation using SR-F. The tracker tracks a RRT path when not obstacle-free (blue), and jumps ahead on the path (cyan) when obstacle-free. The planner’s position is the green star in the translucent blue box (representing sTEB). Both systems start on the left and navigate to a goal on the right. The three light grey rectangles are obstacles, and once sensed by the quadrotor they turn red. When the quadrotor is passing near an obstacle, it experiences an unexpected disturbance to its position (black dashed line), mimicking a sudden wind gust. The green dashed line shows the change of the planner’s position after replanning.
We highlight that SR-F guarantees safety under unexpected disturbances, though it takes more time to reach the goal. This is because FaSTrack and M-F do not consider the unexpected disturbance, and do not spend time to replan. However, it is preferable to sacrifice the navigation speed for the safety guarantee in most real-world applications. Also, note that the navigation speed is affected by the planning algorithm used and the environment.
Online simulations for an 8D quadrotor tracking a 2D planning model paired with an A* planner. Results using SR-F (ours) and IPC are shown. Left: the entire trajectory using SR-F. The quadrotor starts at (4, 4) and navigates to the goal at (16, 16) (red star). The obstacle (red) is augmented by the TEB. The system’s trajectory is shown in cyan (when jumping) and blue (when tracking). A position disturbance (labeled “Real Dstb”) is applied to the quadrotor, pushing it (blue dashed line) close to the obstacle. Right: the trajectory (blue) using IPC, with the same start and goal as SR-F. The SFC is shown as the light green region, and the path given by A* is shown in green.
Conclusion
In this letter, we introduced the SR-FaSTrack framework, which can be used to reject unexpected disturbances during navigation in a priori unknown environments. It also accelerates navigation by intentionally making the planner “jump” as a virtual disturbance in open environments.
Future work includes extending to multi-agent systems and dealing with moving obstacles, modifying the R-CLVF to get differently shaped TEBs, combining with deep neural networks to better accommodate different environments, and implementing hardware demonstrations.