Learning Reachability-Based Safety Representations for Real-Time Robot Navigation in Unknown and Dynamic Environments
Organizations: Faculty IV – Electrical Engineering and Computer Science of Technische Universität Berlin
Abstract
Safe robot navigation in unknown, dynamic environments requires more than geometric collision checking: a robot still far from an obstacle may be unable to avoid it because of its speed, orientation, or the obstacle's motion. Hamilton--Jacobi (HJ) reachability analysis captures this in a value function whose sign separates states that admit a safe continuation from those where collision is unavoidable, but computing it online for every newly observed environment is too expensive. This dissertation trains neural implicit representations offline on reachability solutions to give optimization-based controllers this information in real time. Since the value function never exceeds the constraint, it equals a directly computed constraint, such as a signed distance, minus a nonnegative dynamics correction. Learning only this correction keeps represented obstacles outside the predicted safe set despite approximation errors. The first two of five methods use the learned function as a terminal constraint in model predictive control, for static local environments and predicted obstacle motion. The next two use it as a barrier candidate in control barrier function safety filters, for static environments and, through pairwise barriers in relative coordinates, for a varying number of moving obstacles. Simulations and hardware experiments on ground and aerial robots show better collision avoidance than geometric and hand-designed baselines, especially for short horizons and moving obstacles. The fifth method replaces the grid-based offline solver, which limits the first four to low-dimensional models. For control-affine dynamics with polytopic inputs, the HJ Hamiltonian is maximized at a vertex, so a parallelizable tree search over vertex inputs can generate training labels. With a loss from the HJ variational inequality, these labels yield barrier candidates for systems with up to 13 states.
Figures & tables
| Observation (SDF) size | cells, |
|---|---|
| Dataset size (train/val) | SDFs (80%/20%) |
| Hypernetwork | CNN backbone with fully connected head |
| Hypernetwork parameters | |
| Main network hidden layers | , sine + SELU |
| Main network output | 1 (value function) |
| Loss | RWMSE, , |
| Dubins car | Dynamic unicycle | |
| State-space grid | ||
| Main network inputs | 3 | 5 |
| Main network parameters | ||
| Epochs / batch size | 150 / 32 | 100 / 16 |
| Training time (RTX 3090) |
| Success rate [%] | Mean computation time [ ] | |||||||
| [steps] | 5 | 10 | 20 | 30 | 5 | 10 | 20 | 30 |
| SDF-MPC | 0 | 0 | 30 | 70 | 2.65 | 4.55 | 6.26 | 6.54 |
| DCBF-MPC | 0 | 10 | 70 | 80 | 4.06 | 5.61 | 5.91 | 7.76 |
| NTC-MPC (ours) | 80 | 90 | 90 | 90 | 4.93 | 5.26 | 6.54 | 6.31 |
| Robot model | kinematic unicycle Equation 14 |
|---|---|
| Sensing window | , cells |
| Obstacles per scene | up to 4, speeds 1\text{,}\mathrm{m}\text{,}{\mathrm{s}}^{-1}$$ , constant velocity |
| Condition (SDF snapshots) | , lags , apart |
| Dataset size | SDF-sequence/value-function pairs |
| State-space grid | over |
| Hypernetwork | CNN backbone with fully connected head |
| Method | Success rate [%] | [ ] | [ ] | Opt. time [ ] | Travel time [ ] |
|---|---|---|---|---|---|
| SDF-MPC | 40.0 | 0.03 0.01 | 0.08 0.01 | 2.93 0.25 | 13.03 1.73 |
| DCBF-MPC | 70.0 | 0.11 0.06 | 0.36 0.22 | 3.09 0.38 | 13.98 0.93 |
| VO-MPC | 70.0 | 0.19 0.13 | 0.53 0.33 | 6.94 2.61 | 14.67 1.55 |
| RNTC-MPC (ours) | 100.0 | 0.04 0.02 | 0.10 0.08 | 4.20 0.56 | 12.76 0.89 |
| Dubins car | Planar double integrator | |
|---|---|---|
| Training environment | warehouse | forest-like |
| Observations collected | ||
| After augmentation ( ) | ||
| Sensing window | , res. | , res. |
| HJ state-space grid | ||
| HJ computation (RTX 3090) |
| Hypernetwork | CNN backbone with fully connected head |
|---|---|
| Main network hidden layers | , sinusoidal |
| Main network output | softplus (nonnegative residual) |
| Loss | RWMSE ( Section 3 ) |
| Optimizer / epochs / batch | Adam / 100 / 16 |
| Learning rate | , reduced at epochs 85 and 95 |
| Dubins car | Planar double integrator | |
|---|---|---|
| Main network inputs | 3 | 4 |
| Main network parameters | ||
| Training time (RTX 3090) |
| Method | Success rate [%] |
|---|---|
| SDF-MPC | 20 |
| DCBF-MPC | 40 |
| NTC-MPC | 70 |
| ORN-CBF (ours) | 100 |
| ON-CBF | 100 |
| Residual network | MLP, hidden layers , sinusoidal |
|---|---|
| Output activation | softplus (nonnegative residual) |
| Trainable parameters | |
| Optimizer / epochs | Adam / |
| Training time (RTX 3090) |
| Ground robot | Quadrotor | |
| Robot model | kinematic unicycle | planar double integrator |
| Obstacle model | unicycle, bounded turn rate | double integrator |
| Relative state | Equation 22 | Equation 23 |
| HJ grid over | ||
| HJ computation (RTX 3090) |
| System ( , ) | (%) | (%) | |||||||
|---|---|---|---|---|---|---|---|---|---|
| ND | FCD | VRCD (ours) | ND | FCD | VRCD (ours) | ND | FCD | VRCD (ours) | |
| Inverted Pendulum (2, 1) | 100.00 | 0.00 0.00 | 0.00 0.00 | 0.00 0.00 | 15.96 0.53 | 1.11 0.30 | 0.00 0.00 | 0.08 0.00 | 0.22 0.00 |
| 1D Double Integrator (2, 1) | 0.00 0.00 | 0.00 0.00 | 0.00 0.00 | 0.95 0.56 | 4.01 0.42 | 1.18 0.31 | 0.41 0.00 | 0.39 0.00 | 0.41 0.00 |
| 2D Vertical Drone (2, 1) | 36.80 5.39 | – | 0.00 0.00 | 4.73 6.81 | 4.72 6.81 | 1.88 0.46 | 0.35 0.20 | 0.00 0.00 | 0.58 0.01 |
| Dubins Car (3, 1) | 0.06 0.04 | 0.01 0.01 | 0.04 0.01 | 4.75 1.28 | 4.33 0.31 | 2.25 0.28 | 0.92 0.00 | 0.92 0.00 | 0.93 0.00 |
| 2D Double Integrator (4, 2) | 0.03 0.01 | 0.00 0.00 | 0.03 0.01 | 4.68 0.25 | 6.84 0.30 | 3.42 0.22 | 0.93 0.00 | 0.92 0.00 | 0.93 0.00 |
| System | ND | FCD | VRCD (ours) |
|---|---|---|---|
| Inverted Pendulum | 1.54 3.07 | 33.53 0.61 | 96.39 1.16 |
| 1D Double Integrator | 98.37 0.72 | 94.02 0.43 | 98.10 0.35 |
| 2D Vertical Drone | 64.09 32.05 | 0.00 0.00 | 98.48 0.20 |
| Dubins Car | 99.56 0.15 | 99.66 0.04 | 99.80 0.03 |
| 2D Double Integrator | 99.52 0.03 | 99.39 0.02 | 99.64 0.02 |
| Kinematic Bicycle | 97.71 0.24 | 99.65 0.00 | 99.59 0.00 |
| [ ] | (%) | (%) | |
|---|---|---|---|
| 0.02 | 3.94 0.24 | 2.88 0.03 | 0.340 0.001 |
| 0.05 | 0.63 0.03 | 3.12 0.02 | 0.354 0.000 |
| 0.1 | 1.15 0.06 | 2.16 0.02 | 0.356 0.000 |
| 0.2 | 1.18 0.13 | 3.22 0.06 | 0.348 0.000 |
| 0.4 | 0.51 0.13 | 7.02 0.14 | 0.317 0.000 |
| System ( , ) | (%) | (%) | |||||||
|---|---|---|---|---|---|---|---|---|---|
| ND | FCD | VRCD (ours) | ND | FCD | VRCD (ours) | ND | FCD | VRCD (ours) | |
| Inverted Pendulum (2, 1) | – | 1.06 0.19 | 6.49 3.23 | 0.00 0.01 | 14.91 0.76 | 0.29 0.17 | 0.00 0.00 | 0.08 0.00 | 0.21 0.01 |
| 1D Double Integrator (2, 1) | – | 0.16 0.07 | 0.15 0.07 | 26.15 15.13 | 4.35 0.28 | 1.20 0.10 | 0.00 0.00 | 0.39 0.00 | 0.41 0.00 |
| 2D Vertical Drone (2, 1) | – | – | 0.14 0.06 | 3.95 6.12 | 4.06 7.96 | 1.80 0.14 | 0.00 0.00 | 0.00 0.00 | 0.58 0.00 |
| Dubins Car (3, 1) | – | 0.08 0.04 | 0.18 0.07 | 81.06 4.98 | 4.78 1.16 | 2.51 0.49 | 0.00 0.00 | 0.92 0.00 | 0.92 0.00 |
| 2D Double Integrator (4, 2) | – | 1.60 0.55 | 1.58 0.83 | 67.67 10.10 | 3.69 0.39 | 3.87 0.43 | 0.00 0.00 | 0.91 0.01 | 0.91 0.01 |
| Method | Interface and setting | Learned representation | Offline supervision | Online operation |
|---|---|---|---|---|
| NTC-MPC ( Chapter 2 ) | MPC terminal constraint for a static environment observed locally | Value function regressed directly by a hypernetwork-generated field conditioned on the observed SDF | One stationary grid-based HJ solution per training observation | One hypernetwork pass per planning cycle, then value and gradient queries of the compact field inside the NLP |
| RNTC-MPC ( Chapter 3 ) | MPC terminal constraint for moving obstacles under a nominal motion prediction | Predicted terminal SDF minus a nonnegative residual, conditioned on snapshots of the predicted SDF sequence | One time-varying grid-based HJ solution per training scene | Motion prediction and SDF sequence, one hypernetwork pass per cycle, then queries of the compact field inside the NLP |
| ORN-CBF ( Chapter 4 ) | CBF-QP safety filter for a static environment observed locally | Observed SDF minus a nonnegative residual generated by a hypernetwork conditioned on the observed SDF | One stationary grid-based HJ solution per training observation, cropped to a central positional patch | One hypernetwork pass per observation update, then value and gradient at the current state and one QP per control step |
| CN-CBF ( Chapter 5 ) | CBF-QP safety filter for a varying number of moving obstacles with bounded inputs | Relative obstacle distance minus a nonnegative residual for one robot–obstacle pair, shared over obstacles and combined by a smooth minimum | One robust stationary grid-based HJ solution per robot–obstacle class | One batched pass over the obstacle list and one QP with a single composite constraint per control step |
| VertexCBF ( Chapter 6 ) | CBF-QP safety filter for a fixed known constraint function | Constraint function minus a nonnegative residual, represented by a single fixed network | Finite-horizon search over input vertices at sampled states, combined with a physics-informed loss | Value and gradient at the current state and one QP per control step, composed over obstacles as in CN-CBF when deployed |
Appendix figures & tables6 assets
Supplementary material from the paper’s appendix.
Appendix
| System | State box | Input box , parameters | |
|---|---|---|---|
| Inverted Pendulum | (2, 1) | , | ; , , |
| 1D Double Integrator | (2, 1) | , | |
| 2D Vertical Drone | (2, 1) | , | ; , |
| Dubins Car | (3, 1) | , | ; |
| 2D Double Integrator | (4, 2) | , | |
| Kinematic Bicycle | (4, 2) | , , | , ; |
| System | Constraint function | Parameters |
|---|---|---|
| Inverted Pendulum | (pole-angle bound) | |
| 1D Double Integrator | (position band) | , |
| 2D Vertical Drone | (altitude band) | , |
| Dubins Car | (circular obstacle) | |
| 2D Double Integrator | ||
| Kinematic Bicycle |
| System | Search variant | [ ] | [ ] | Extra | ||||
|---|---|---|---|---|---|---|---|---|
| Inverted Pendulum | Beam | ( ) | 20 | 0.10 | 2.0 | — | ||
| 1D Double Integrator | Stochastic beam | ( ) | 40 | 0.10 | 4.0 | softmax, | ||
| 2D Vertical Drone | Branch and bound | ( ) | 60 | 0.05 | 3.0 | 2 passes | ||
| Dubins Car | Beam | 150 | 0.05 | 7.5 | — | |||
| 2D Double Integrator | Branch and bound | 100 | 0.05 | 5.0 | 3 passes | |||
| Kinematic Bicycle | Beam | 80 | 0.10 | 8.0 | — |
| System | Hidden | LR drop | ||||
|---|---|---|---|---|---|---|
| Inverted Pendulum | 10 | 0.20 | ||||
| 1D Double Integrator | 1 | 0.90 | ||||
| 2D Vertical Drone | 10 | 0.55 | ||||
| Dubins Car | 10 | 0.80 | ||||
| 2D Double Integrator | 10 | norm. | ||||
| Kinematic Bicycle | 10 | 0.15 |
| System | [ ] | [ ] | Wall-clock | |
|---|---|---|---|---|
| Inverted Pendulum | 5.0 | 0.010 | ||
| 1D Double Integrator | 4.0 | 0.010 | ||
| 2D Vertical Drone | 5.0 | 0.010 | ||
| Dubins Car | 5.0 | 0.010 | ||
| 2D Double Integrator | 5.0 | 0.010 | ||
| Kinematic Bicycle | 5.0 | 0.010 |
Safe Robot Navigation
Safe robot navigation develops methods for reaching goals while avoiding collisions and managing uncertainty, dynamic obstacles, and environmental hazards.
See all 139 papers