← Paper Digest

Control Barrier Functions: Theory and Applications

Aaron D. Ames, Samuel Coogan, Magnus Egerstedt, Gennaro Notomista, Koushil Sreenath, Paulo Tabuada

★ Must read March 2019

TL;DR A tutorial overview of control barrier functions, a Lyapunov-like condition that keeps a system inside a safe set and that a quadratic program can enforce by changing a nominal controller as little as possible. Applications include walking on stepping stones in simulation, lane keeping on small robots, multi-robot coverage, and a Segway safety filter that runs onboard in 0.4 ms on average.

What they do

An overview of control barrier functions (CBFs), the safety counterpart of control Lyapunov functions (CLFs). Safety means a set C = {x : h(x) ≥ 0} is forward invariant: a system that starts in C never leaves it. The paper reviews the main theory and summarizes four robot applications.

How it works

  • CBF condition. Some input must make ḣ ≥ −α(h) at every state, where α is an extended class-K∞ function. Any Lipschitz controller that meets it keeps C invariant and also drives the system back into C after noise. For compact sets the condition is necessary and sufficient.
  • Safety filter. The condition is affine in u, so a quadratic program (QP) finds the smallest change to a desired input. Adding a relaxed CLF constraint lets one QP give up stability to stay safe.
  • Input limits and higher relative degree. CBFs that respect input limits can be built from a nominal evasive maneuver or found with sums-of-squares programs. Exponential CBFs handle constraints such as positions, with gains set by pole placement.

Results

  • DURUS biped (simulation): exponential CBFs on the swing-foot position land each step on a stepping stone.
  • Khepera robots: lane keeping and adaptive cruise control hold together, and the barrier values stay non-negative.
  • Segway: a CBF from Hamilton-Jacobi reachability runs onboard in 0.4 ms on average. Only with the filter on does the Segway stay within its π/12 tilt limit under a command that exceeds it, and stay upright after a kick.
  • Robotarium: six robots cover an area for longer than their simulated battery life, avoiding two obstacle robots and recharging.

Limitations

The applications summarize earlier papers, and CBFs are not compared with other safety methods. Finding a valid CBF under input limits is hard: the trajectory-based construction needs numerical gradients that get expensive in high dimensions, and the sums-of-squares search must be iterated. On the Segway, simple angle barriers missed some physical limits, so the safe set was computed offline on a grid. The stepping-stone results are simulation only.

Videos

Full video (YouTube)
Full video (YouTube)

Figures

From Figure 1: A biped walking over stepping stones (a). The foot placement constraint (b): keeping the swing foot in...
From Figure 1: A biped walking over stepping stones (a). The foot placement constraint (b): keeping the swing foot inside an outer circle and outside an inner circle makes it land on the stepping stone (red line).
From Figure 3: Lane-keeping and adaptive speed regulation barrier values on the Khepera robot and in simulation. They...
From Figure 3: Lane-keeping and adaptive speed regulation barrier values on the Khepera robot and in simulation. They stay non-negative, so both constraints are enforced.
From Figure 5: The Segway is kicked, first with the PD controller alone (top) and then with the CBF safety filter (bo...
From Figure 5: The Segway is kicked, first with the PD controller alone (top) and then with the CBF safety filter (bottom). Without the CBF, the Segway falls over.
From Figure 6: Six Robotarium robots cover a rectangular domain (Voronoi boundaries in black). They avoid two obstacl...
From Figure 6: Six Robotarium robots cover a rectangular domain (Voronoi boundaries in black). They avoid two obstacle robots (circled in red) and recharge at the stations on the left.
Abstract

This paper provides an introduction and overview of recent work on control barrier functions and their use to verify and enforce safety properties in the context of (optimization based) safety-critical controllers. We survey the main technical results and discuss applications to several domains including robotic systems.

Summaries are written automatically from each paper's text. Figures and videos come from the paper and its project page; all credit goes to the authors.