Constructive Safety-Critical Control: Synthesizing Control Barrier Functions for Partially Feedback Linearizable Systems (2024)

Max H. Cohen, Ryan K. Cosner, and Aaron D. AmesThis research was supported by BPand NSF CPS Award #1932091.The authors are with the Department of Mechanical and Civil Engineering, California Institute of Technology, Pasadena, CA {maxcohen,rkcosner,ames}@caltech.edu.

Abstract

Certifying the safety of nonlinear systems, through the lens of set invariance and control barrier functions (CBFs), offers a powerful method for controller synthesis, provided a CBF can be constructed.This paper draws connections between partial feedback linearization and CBF synthesis.We illustrate that when a control affine system is input-output linearizable with respect to a smooth output function, then, under mild regularity conditions, one mayextend any safety constraint defined on the output to a CBF for the full-order dynamics.These more general results are specialized to robotic systems where the conditions required to synthesize CBFs simplify. The CBFs constructed from our approach are applied and verified in simulation and hardware experiments on a quadrotor.

I Introduction

Safety has emerged as a fundamental requirement for modern control systems. With safety framed as set invariance, control barrier functions (CBFs) have become a popular tool for designing controllers that endow systems with safety guarantees [1].Given a CBF, one mayconstruct a controller enforcing set invariance using convex optimization [1] or smooth universal formulas [2, 3]. Synthesizing a CBF-based controller, however, first requires constructing a valid CBF – a task often cited as the greatest challenge of CBF-based approaches. For low-dimensional systems, computational techniques such as sum-of-squares programming [4, 5] and Hamilton-Jacobi reachability [6, 7] often provide a viable pathway to address such challenges. Alternatively, one may construct hand-crafted CBFs for specific systems [8]. Yet each of these approaches tends to scale poorly with the dimension and complexity of the system.

A popular approach to constructing CBFs for complex high-dimensional systems is via backstepping [9, 10, 11]. This approach effectively extends a safety constraint that is not controlled invariant to a CBF defining a control invariant set (the zero superlevel set) contained within the original safety constraint. This is accomplished by imposing a particular layered structure on the dynamics, defining smooth virtual CBF-based controllers [2] at each layer, and then “backstepping” through such controllers to compute a CBF for the overall system. The main limitations of this approach are the structural requirements of the dynamics and the controllability assumptions imposed on each layer, which precludes the direct application of such ideas to underactuated systems.

Constructive Safety-Critical Control: Synthesizing Control Barrier Functions for Partially Feedback Linearizable Systems (1)

Similar to backstepping, high order CBFs (HOCBFs) [12, 13, 14, 15] extend a safety constraint to a barrier-like function that may be used to enforce forward invariance of a safe set contained within the constraint set.In contrast to backstepping, HOCBFs place no structural requirements on the dynamics other than that they are control affine. Inspired by input-output linearization [16], such approaches treat the safety constraint as an output, differentiate this output until the input appears, and then impose CBF-like conditions on the highest derivative of the output. However, by treating the safety constraint as an output, these approaches implicitly require such a constraint to have a uniform relative degree on the safe set, which is restrictive in the context of CBFs [17]. As noted in [10, 15, 18], even simple safety constraints may not have a uniform relative degree and, in such a situation, the functions constructed following the approaches in [12, 13, 14, 15] may not meet the criteria of a HOCBF. Similar limitations arise when using such a methodology to construct CBFs, rather than HOCBFs, from a high relative degree safety constraint [19].

In this paper, we demonstrate how techniques from feedback linearization [16] facilitate the construction of CBFs, with an emphasis on the application of such ideas to underactuated robotic systems.Instead of treating safety constraints directly as outputs, as in prior works such as [11, 12, 13, 14, 19], we define the states relevant to the safety constraint as outputs. Leveraging the structural properties of the resulting output dynamics, we employ methods from [9, 10] to construct CBFs for the full-order dynamics, thereby relaxing the restrictive uniform relative degree requirements found in existing high relative degree CBF frameworks.Specifically, we establish that when a nonlinear control system is input-output linearizable with respect to a smooth output function, then, under mild regularity conditions, one may extend any smooth inequality constraint on the output to a CBF for the full-order system(Sec. III). We illustrate the utility of these results by specializing them to robotic systems where the conditions required to construct CBFs simplify (Sec. IV). The benefits of our approach are highlighted through both simulations and hardware demonstrations (Sec. V).

To summarize, the contributions of this paper are twofold:

  • We present a framework for constructing CBFs for high-dimensional and underactuated systems inspired by the methods developed in [9]. In contrast to [9], we establish the existence of a smooth controller required for the initial step in the CBF backstepping procedure. Furthermore, we formally characterize the properties required of the system output, safety constraint, and candidate CBF to ensure the applicability of the techniques described in [9] to general control affine systems.

  • We present extensive numerical examples illustrating the design of CBFs for various underactuated robotic systems and apply the developed theory on a quadrotor, which constitutes the first demonstration of CBF backstepping on hardware.

Notation.Define 𝒮𝒮\partial\mathcal{S}∂ caligraphic_S and Int(𝒮)Int𝒮\operatorname{Int}(\mathcal{S})roman_Int ( caligraphic_S ) as the boundary and interior of a set 𝒮𝒮\mathcal{S}caligraphic_S. A continuous function α::𝛼\alpha\,:\,\mathbb{R}\rightarrow\mathbb{R}italic_α : blackboard_R → blackboard_R is said to be an extended class 𝒦subscript𝒦\mathcal{K}_{\infty}caligraphic_K start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT function (α𝒦e𝛼superscriptsubscript𝒦𝑒\alpha\in\mathcal{K}_{\infty}^{e}italic_α ∈ caligraphic_K start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT) if i) α(0)=0𝛼00\alpha(0)=0italic_α ( 0 ) = 0, ii) α𝛼\alphaitalic_α is strictly increasing, iii) limr±α(r)=±subscript𝑟plus-or-minus𝛼𝑟plus-or-minus\lim_{r\rightarrow\pm\infty}\alpha(r)=\pm\inftyroman_lim start_POSTSUBSCRIPT italic_r → ± ∞ end_POSTSUBSCRIPT italic_α ( italic_r ) = ± ∞. For smooth functions𝐲:nm:𝐲superscript𝑛superscript𝑚\mathbf{y}\,:\,\mathbb{R}^{n}\rightarrow\mathbb{R}^{m}bold_y : blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT → blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT and𝐠:nn×m:𝐠superscript𝑛superscript𝑛𝑚\mathbf{g}\,:\,\mathbb{R}^{n}\rightarrow\mathbb{R}^{n\times m}bold_g : blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT → blackboard_R start_POSTSUPERSCRIPT italic_n × italic_m end_POSTSUPERSCRIPT, we defineL𝐠𝐲(𝐱)\pdv𝐲𝐱(𝐱)𝐠(𝐱)subscript𝐿𝐠𝐲𝐱\pdv𝐲𝐱𝐱𝐠𝐱L_{\mathbf{g}}\mathbf{y}(\mathbf{x})\coloneqq\pdv{\mathbf{y}}{\mathbf{x}}(%\mathbf{x})\mathbf{g}(\mathbf{x})italic_L start_POSTSUBSCRIPT bold_g end_POSTSUBSCRIPT bold_y ( bold_x ) ≔ bold_yx ( bold_x ) bold_g ( bold_x ) as the Lie derivative of 𝐲𝐲\mathbf{y}bold_y along𝐠𝐠\mathbf{g}bold_gwith higher order Lie derivatives defined as in [16].

II Preliminaries and Problem Formulation

Consider a nonlinear control affine system:

𝐱˙=𝐟(𝐱)+𝐠(𝐱)𝐮,˙𝐱𝐟𝐱𝐠𝐱𝐮\dot{\mathbf{x}}=\mathbf{f}(\mathbf{x})+\mathbf{g}(\mathbf{x})\mathbf{u},over˙ start_ARG bold_x end_ARG = bold_f ( bold_x ) + bold_g ( bold_x ) bold_u ,(1)

with state 𝐱𝒳n𝐱𝒳superscript𝑛\mathbf{x}\in\mathcal{X}\subseteq\mathbb{R}^{n}bold_x ∈ caligraphic_X ⊆ blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT and control input 𝐮m𝐮superscript𝑚\mathbf{u}\in\mathbb{R}^{m}bold_u ∈ blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT, where 𝐟:𝒳n:𝐟𝒳superscript𝑛\mathbf{f}\,:\,\mathcal{X}\rightarrow\mathbb{R}^{n}bold_f : caligraphic_X → blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPTand 𝐠:𝒳n×m:𝐠𝒳superscript𝑛𝑚\mathbf{g}\,:\,\mathcal{X}\rightarrow\mathbb{R}^{n\times m}bold_g : caligraphic_X → blackboard_R start_POSTSUPERSCRIPT italic_n × italic_m end_POSTSUPERSCRIPTare smooth (differentiable as many times as necessary) on the open and connected set 𝒳𝒳\mathcal{X}caligraphic_X. By taking 𝐮=𝐤(𝐱)𝐮𝐤𝐱\mathbf{u}=\mathbf{k}(\mathbf{x})bold_u = bold_k ( bold_x ) with 𝐤:𝒳m:𝐤𝒳superscript𝑚\mathbf{k}\,:\,\mathcal{X}\rightarrow\mathbb{R}^{m}bold_k : caligraphic_X → blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT locally Lipschitzwe obtain the closed-loop system 𝐱˙=𝐟(𝐱)+𝐠(𝐱)𝐤(𝐱)˙𝐱𝐟𝐱𝐠𝐱𝐤𝐱\dot{\mathbf{x}}=\mathbf{f}(\mathbf{x})+\mathbf{g}(\mathbf{x})\mathbf{k}(%\mathbf{x})over˙ start_ARG bold_x end_ARG = bold_f ( bold_x ) + bold_g ( bold_x ) bold_k ( bold_x ),which, for each initial condition 𝐱0𝒳subscript𝐱0𝒳\mathbf{x}_{0}\in\mathcal{X}bold_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ∈ caligraphic_X, produces a continuously differentiable trajectory 𝐱:I(𝐱0)𝒳:𝐱𝐼subscript𝐱0𝒳\mathbf{x}\,:\,I(\mathbf{x}_{0})\rightarrow\mathcal{X}bold_x : italic_I ( bold_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ) → caligraphic_X defined on a maximal interval of existence I(𝐱0)0𝐼subscript𝐱0subscriptabsent0I(\mathbf{x}_{0})\subseteq\mathbb{R}_{\geq 0}italic_I ( bold_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ) ⊆ blackboard_R start_POSTSUBSCRIPT ≥ 0 end_POSTSUBSCRIPT. A set 𝒮𝒳𝒮𝒳\mathcal{S}\subset\mathcal{X}caligraphic_S ⊂ caligraphic_X is said to be forward invariant for the closed-loop system if, for each 𝐱0𝒮subscript𝐱0𝒮\mathbf{x}_{0}\in\mathcal{S}bold_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ∈ caligraphic_S, the resulting trajectory satisfies 𝐱(t)𝒮𝐱𝑡𝒮\mathbf{x}(t)\in\mathcal{S}bold_x ( italic_t ) ∈ caligraphic_S for all tI(𝐱0)𝑡𝐼subscript𝐱0t\in I(\mathbf{x}_{0})italic_t ∈ italic_I ( bold_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ).A popular approach to designing controllers enforcingforward invarianceis through CBFs.

Definition 1 ([1]).

A continuously differentiable function h:𝒳:𝒳h\,:\,\mathcal{X}\rightarrow\mathbb{R}italic_h : caligraphic_X → blackboard_R defining a set 𝒮𝒳𝒮𝒳\mathcal{S}\subset\mathcal{X}caligraphic_S ⊂ caligraphic_X as:

𝒮=𝒮absent\displaystyle\mathcal{S}=caligraphic_S ={𝐱𝒳:h(𝐱)0},conditional-set𝐱𝒳𝐱0\displaystyle\{\mathbf{x}\in\mathcal{X}\,:\,h(\mathbf{x})\geq 0\},{ bold_x ∈ caligraphic_X : italic_h ( bold_x ) ≥ 0 } ,(2)

is said to be a CBF for (1) on 𝒮𝒮\mathcal{S}caligraphic_S if there exists α𝒦e𝛼superscriptsubscript𝒦𝑒\alpha\in\mathcal{K}_{\infty}^{e}italic_α ∈ caligraphic_K start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT and an open set 𝒳𝒳\mathcal{E}\subseteq\mathcal{X}caligraphic_E ⊆ caligraphic_X satisfying 𝒮𝒮\mathcal{S}\subset\mathcal{E}caligraphic_S ⊂ caligraphic_E such that for all 𝐱𝐱\mathbf{x}\in\mathcal{E}bold_x ∈ caligraphic_E:

sup𝐮mh˙(𝐱,𝐮)=sup𝐮m{L𝐟h(𝐱)+L𝐠h(𝐱)𝐮}>α(h(𝐱)).subscriptsupremum𝐮superscript𝑚˙𝐱𝐮subscriptsupremum𝐮superscript𝑚subscript𝐿𝐟𝐱subscript𝐿𝐠𝐱𝐮𝛼𝐱\sup_{\mathbf{u}\in\mathbb{R}^{m}}\dot{h}(\mathbf{x},\mathbf{u})=\sup_{\mathbf%{u}\in\mathbb{R}^{m}}\left\{L_{\mathbf{f}}h(\mathbf{x})+L_{\mathbf{g}}h(%\mathbf{x})\mathbf{u}\right\}>-\alpha(h(\mathbf{x})).roman_sup start_POSTSUBSCRIPT bold_u ∈ blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT end_POSTSUBSCRIPT over˙ start_ARG italic_h end_ARG ( bold_x , bold_u ) = roman_sup start_POSTSUBSCRIPT bold_u ∈ blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT end_POSTSUBSCRIPT { italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT italic_h ( bold_x ) + italic_L start_POSTSUBSCRIPT bold_g end_POSTSUBSCRIPT italic_h ( bold_x ) bold_u } > - italic_α ( italic_h ( bold_x ) ) .(3)

When hhitalic_h is a CBF, we say that 𝒮𝒮\mathcal{S}caligraphic_S as in (2) is a safe set.

The existence of a CBFimplies the existence of a locally Lipschitz feedback controller 𝐤:m:𝐤superscript𝑚\mathbf{k}\,:\,\mathcal{E}\rightarrow\mathbb{R}^{m}bold_k : caligraphic_E → blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT enforcing the forward invariance of 𝒮𝒮\mathcal{S}caligraphic_S [1, 17]. One example of such a controller is the optimization-based safety filter:

𝐤(𝐱)=𝐤𝐱absent\displaystyle\mathbf{k}(\mathbf{x})=bold_k ( bold_x ) =argmin𝐮msubscriptargmin𝐮superscript𝑚\displaystyle\operatornamewithlimits{arg\,min}_{\mathbf{u}\in\mathbb{R}^{m}}start_OPERATOR roman_arg roman_min end_OPERATOR start_POSTSUBSCRIPT bold_u ∈ blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT end_POSTSUBSCRIPT12𝐮𝐤d(𝐱)212superscriptnorm𝐮subscript𝐤d𝐱2\displaystyle\tfrac{1}{2}\|\mathbf{u}-\mathbf{k}_{\rm{d}}(\mathbf{x})\|^{2}divide start_ARG 1 end_ARG start_ARG 2 end_ARG ∥ bold_u - bold_k start_POSTSUBSCRIPT roman_d end_POSTSUBSCRIPT ( bold_x ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT(4)
s.t.formulae-sequencest\displaystyle\rm{s.t.}roman_s . roman_t .L𝐟h(𝐱)+L𝐠h(𝐱)𝐮α(h(𝐱)),subscript𝐿𝐟𝐱subscript𝐿𝐠𝐱𝐮𝛼𝐱\displaystyle L_{\mathbf{f}}h(\mathbf{x})+L_{\mathbf{g}}h(\mathbf{x})\mathbf{u%}\geq-\alpha(h(\mathbf{x})),italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT italic_h ( bold_x ) + italic_L start_POSTSUBSCRIPT bold_g end_POSTSUBSCRIPT italic_h ( bold_x ) bold_u ≥ - italic_α ( italic_h ( bold_x ) ) ,

where 𝐤d:𝒳m:subscript𝐤d𝒳superscript𝑚\mathbf{k}_{\rm{d}}\,:\,\mathcal{X}\rightarrow\mathbb{R}^{m}bold_k start_POSTSUBSCRIPT roman_d end_POSTSUBSCRIPT : caligraphic_X → blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT is a desired controller. The main objective of this paper is to systematically construct CBFs using methodsfromfeedback linearization [16]. Central to our approach is the notion of relative degree.

Definition 2 ([16]).

A smooth function 𝐲:𝒳p:𝐲𝒳superscript𝑝\mathbf{y}\,:\,\mathcal{X}\rightarrow\mathbb{R}^{p}bold_y : caligraphic_X → blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT is said to have relative degree111A vector-valued output may have different relative degrees for each of its components. For simplicity of notation, we focus on outputs whose components share the same relative degree. γ𝛾\gamma\in\mathbb{N}italic_γ ∈ blackboard_N with respect to (1) on an open set 𝒳𝒳\mathcal{E}\subseteq\mathcal{X}caligraphic_E ⊆ caligraphic_X if for all 𝐱𝐱\mathbf{x}\in\mathcal{E}bold_x ∈ caligraphic_E:

i)L𝐠L𝐟i𝐲(𝐱)=𝟎,i{0,,γ2},formulae-sequencesubscript𝐿𝐠superscriptsubscript𝐿𝐟𝑖𝐲𝐱0for-all𝑖0𝛾2\displaystyle L_{\mathbf{g}}L_{\mathbf{f}}^{i}\mathbf{y}(\mathbf{x})=\mathbf{0%},\quad\forall i\in\{0,\dots,\gamma-2\},italic_L start_POSTSUBSCRIPT bold_g end_POSTSUBSCRIPT italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT bold_y ( bold_x ) = bold_0 , ∀ italic_i ∈ { 0 , … , italic_γ - 2 } ,(5)
ii)rank(L𝐠L𝐟γ1𝐲(𝐱))=p.ranksubscript𝐿𝐠superscriptsubscript𝐿𝐟𝛾1𝐲𝐱𝑝\displaystyle\operatorname{rank}(L_{\mathbf{g}}L_{\mathbf{f}}^{\gamma-1}%\mathbf{y}(\mathbf{x}))=p.roman_rank ( italic_L start_POSTSUBSCRIPT bold_g end_POSTSUBSCRIPT italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_γ - 1 end_POSTSUPERSCRIPT bold_y ( bold_x ) ) = italic_p .

Let 𝐲𝐲\mathbf{y}bold_y have relative degree γ𝛾\gammaitalic_γ on 𝒳𝒳\mathcal{E}\subseteq\mathcal{X}caligraphic_E ⊆ caligraphic_X and define:

𝜼=[𝜼1𝜼γ][𝐲(𝐱)L𝐟γ1𝐲(𝐱)]pγ,𝜼matrixsubscript𝜼1subscript𝜼𝛾matrix𝐲𝐱superscriptsubscript𝐿𝐟𝛾1𝐲𝐱superscript𝑝𝛾\bm{\eta}=\begin{bmatrix}\bm{\eta}_{1}\\\vdots\\\bm{\eta}_{\gamma}\end{bmatrix}\coloneqq\begin{bmatrix}\mathbf{y}(\mathbf{x})%\\\vdots\\L_{\mathbf{f}}^{\gamma-1}\mathbf{y}(\mathbf{x})\end{bmatrix}\in\mathbb{R}^{p%\gamma},bold_italic_η = [ start_ARG start_ROW start_CELL bold_italic_η start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL bold_italic_η start_POSTSUBSCRIPT italic_γ end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] ≔ [ start_ARG start_ROW start_CELL bold_y ( bold_x ) end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_γ - 1 end_POSTSUPERSCRIPT bold_y ( bold_x ) end_CELL end_ROW end_ARG ] ∈ blackboard_R start_POSTSUPERSCRIPT italic_p italic_γ end_POSTSUPERSCRIPT ,(6)

noting that the output dynamics are given by:

𝜼˙=[𝜼˙1𝜼˙γ1𝜼˙γ]=[𝜼2L𝐟γ1𝐲(𝐱)L𝐟γ𝐲(𝐱)+L𝐠L𝐟γ1𝐲(𝐱)𝐮].˙𝜼matrixsubscript˙𝜼1subscript˙𝜼𝛾1subscript˙𝜼𝛾matrixsubscript𝜼2superscriptsubscript𝐿𝐟𝛾1𝐲𝐱superscriptsubscript𝐿𝐟𝛾𝐲𝐱subscript𝐿𝐠superscriptsubscript𝐿𝐟𝛾1𝐲𝐱𝐮\dot{\bm{\eta}}=\begin{bmatrix}\dot{\bm{\eta}}_{1}\\\vdots\\\dot{\bm{\eta}}_{\gamma-1}\\\dot{\bm{\eta}}_{\gamma}\end{bmatrix}=\begin{bmatrix}\bm{\eta}_{2}\\\vdots\\L_{\mathbf{f}}^{\gamma-1}\mathbf{y}(\mathbf{x})\\L_{\mathbf{f}}^{\gamma}\mathbf{y}(\mathbf{x})+L_{\mathbf{g}}L_{\mathbf{f}}^{%\gamma-1}\mathbf{y}(\mathbf{x})\mathbf{u}\end{bmatrix}.over˙ start_ARG bold_italic_η end_ARG = [ start_ARG start_ROW start_CELL over˙ start_ARG bold_italic_η end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL over˙ start_ARG bold_italic_η end_ARG start_POSTSUBSCRIPT italic_γ - 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL over˙ start_ARG bold_italic_η end_ARG start_POSTSUBSCRIPT italic_γ end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] = [ start_ARG start_ROW start_CELL bold_italic_η start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_γ - 1 end_POSTSUPERSCRIPT bold_y ( bold_x ) end_CELL end_ROW start_ROW start_CELL italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_γ end_POSTSUPERSCRIPT bold_y ( bold_x ) + italic_L start_POSTSUBSCRIPT bold_g end_POSTSUBSCRIPT italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_γ - 1 end_POSTSUPERSCRIPT bold_y ( bold_x ) bold_u end_CELL end_ROW end_ARG ] .(7)

Given a smooth output 𝐲:𝒳p:𝐲𝒳superscript𝑝\mathbf{y}\,:\,\mathcal{X}\rightarrow\mathbb{R}^{p}bold_y : caligraphic_X → blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT and a smooth inequality constraint ψ:p:𝜓superscript𝑝\psi\,:\,\mathbb{R}^{p}\rightarrow\mathbb{R}italic_ψ : blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT → blackboard_R on 𝐲𝐲\mathbf{y}bold_y defining a constraint set:

𝒞{𝐱𝒳:ψ(𝐲(𝐱))0},𝒞conditional-set𝐱𝒳𝜓𝐲𝐱0\mathcal{C}\coloneqq\{\mathbf{x}\in\mathcal{X}\,:\,\psi(\mathbf{y}(\mathbf{x})%)\geq 0\},caligraphic_C ≔ { bold_x ∈ caligraphic_X : italic_ψ ( bold_y ( bold_x ) ) ≥ 0 } ,(8)

that is not necessarily controlled invariant, our goal is to construct a CBF and corresponding safe set 𝒮𝒞𝒮𝒞\mathcal{S}\subset\mathcal{C}caligraphic_S ⊂ caligraphic_C so that enforcing forward invariance of 𝒮𝒮\mathcal{S}caligraphic_S leads to satisfaction of the output constraint.

III CBFs for Feedback Linearizable Systems

In this section, we establish that when (1) ispartially feedback linearizable with respect to a smooth output function then, under mild regularity conditions, one may construct a CBF and corresponding safe set whose forward invariance implies satisfaction of the output constraint.The following lemma is the starting point of our approach and outlines the regularity conditions that ψ𝜓\psiitalic_ψ must satisfy.

Lemma 1.

Let ψ:p:𝜓superscript𝑝\psi\,:\,\mathbb{R}^{p}\rightarrow\mathbb{R}italic_ψ : blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT → blackboard_R be a smooth function defining a set𝒞1psubscript𝒞1superscript𝑝\mathcal{C}_{1}\subset\mathbb{R}^{p}caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊂ blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT as:

𝒞1{𝐲p:ψ(𝐲)0}.subscript𝒞1conditional-set𝐲superscript𝑝𝜓𝐲0\mathcal{C}_{1}\coloneqq\{\mathbf{y}\in\mathbb{R}^{p}\,:\,\psi(\mathbf{y})\geq0\}.caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ≔ { bold_y ∈ blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT : italic_ψ ( bold_y ) ≥ 0 } .(9)

Let 𝒟1𝒞1subscript𝒞1subscript𝒟1\mathcal{D}_{1}\supset\mathcal{C}_{1}caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊃ caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT be an open set and suppose that:

\pdv[stylefrac=]ψ𝐲(𝐲)𝟎,𝐲𝒟1Int(𝒞1).\pdv[style-frac=\tfrac{]}{\psi}{\mathbf{y}}(\mathbf{y})\neq\mathbf{0},\quad%\forall\mathbf{y}\in\mathcal{D}_{1}\setminus\operatorname{Int}(\mathcal{C}_{1}).[ italic_s italic_t italic_y italic_l italic_e - italic_f italic_r italic_a italic_c = divide start_ARG ] end_ARG start_ARG italic_ψ end_ARG bold_y ( bold_y ) ≠ bold_0 , ∀ bold_y ∈ caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∖ roman_Int ( caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) .(10)

Then, for any smooth α𝒦e𝛼superscriptsubscript𝒦𝑒\alpha\in\mathcal{K}_{\infty}^{e}italic_α ∈ caligraphic_K start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT there exists a smooth 𝐤1:𝒟1p:subscript𝐤1subscript𝒟1superscript𝑝\mathbf{k}_{1}\,:\,\mathcal{D}_{1}\rightarrow\mathbb{R}^{p}bold_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT : caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT → blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT such that for all 𝐲𝒟1𝐲subscript𝒟1\mathbf{y}\in\mathcal{D}_{1}bold_y ∈ caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT:

\pdv[stylefrac=]ψ𝐲(𝐲)𝐤1(𝐲)>α(ψ(𝐲)).\pdv[style-frac=\tfrac{]}{\psi}{\mathbf{y}}(\mathbf{y})\mathbf{k}_{1}(\mathbf{%y})>-\alpha(\psi(\mathbf{y})).[ italic_s italic_t italic_y italic_l italic_e - italic_f italic_r italic_a italic_c = divide start_ARG ] end_ARG start_ARG italic_ψ end_ARG bold_y ( bold_y ) bold_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( bold_y ) > - italic_α ( italic_ψ ( bold_y ) ) .(11)

For any σ>0𝜎0\sigma>0italic_σ > 0, one example of such a function is given by:

𝐤1(𝐲)=subscript𝐤1𝐲absent\displaystyle\mathbf{k}_{1}(\mathbf{y})=bold_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( bold_y ) =ϕ(α(ψ(𝐲)),\pdv[stylefrac=]ψ𝐲(𝐲)2)\pdv[stylefrac=]ψ𝐲(𝐲),\displaystyle\phi\big{(}\alpha(\psi(\mathbf{y})),\big{\|}\pdv[style-frac=%\tfrac{]}{\psi}{\mathbf{y}}(\mathbf{y})\big{\|}^{2}\big{)}\pdv[style-frac=%\tfrac{]}{\psi}{\mathbf{y}}(\mathbf{y})^{\top},italic_ϕ ( italic_α ( italic_ψ ( bold_y ) ) , ∥ [ italic_s italic_t italic_y italic_l italic_e - italic_f italic_r italic_a italic_c = divide start_ARG ] end_ARG start_ARG italic_ψ end_ARG bold_y ( bold_y ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) [ italic_s italic_t italic_y italic_l italic_e - italic_f italic_r italic_a italic_c = divide start_ARG ] end_ARG start_ARG italic_ψ end_ARG bold_y ( bold_y ) start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT ,(12)
ϕ(a,b)=italic-ϕ𝑎𝑏absent\displaystyle\phi(a,b)=italic_ϕ ( italic_a , italic_b ) ={0b=0a+a2+σb22bb0.cases0𝑏0𝑎superscript𝑎2𝜎superscript𝑏22𝑏𝑏0\displaystyle\begin{cases}0&b=0\\\frac{-a+\sqrt{a^{2}+\sigma b^{2}}}{2b}&b\neq 0.\\\end{cases}{ start_ROW start_CELL 0 end_CELL start_CELL italic_b = 0 end_CELL end_ROW start_ROW start_CELL divide start_ARG - italic_a + square-root start_ARG italic_a start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_σ italic_b start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG end_ARG start_ARG 2 italic_b end_ARG end_CELL start_CELL italic_b ≠ 0 . end_CELL end_ROW
Proof.

Define a(𝐲)α(ψ(𝐲))𝑎𝐲𝛼𝜓𝐲a(\mathbf{y})\coloneqq\alpha(\psi(\mathbf{y}))italic_a ( bold_y ) ≔ italic_α ( italic_ψ ( bold_y ) ), b(𝐲)\pdvψ𝐲(𝐲)2𝑏𝐲superscriptnorm\pdv𝜓𝐲𝐲2b(\mathbf{y})\coloneqq\|\pdv{\psi}{\mathbf{y}}(\mathbf{y})\|^{2}italic_b ( bold_y ) ≔ ∥ italic_ψ bold_y ( bold_y ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT, and 𝒲{(a,b)2:a>0orb>0}𝒲conditional-set𝑎𝑏superscript2𝑎0or𝑏0\mathcal{W}\coloneqq\{(a,b)\in\mathbb{R}^{2}\,:\,a>0\;\text{or}\;b>0\}caligraphic_W ≔ { ( italic_a , italic_b ) ∈ blackboard_R start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT : italic_a > 0 or italic_b > 0 }.Using a similar argument to those in [20, 2, 10], one can show that (a,b)ϕ(a,b)maps-to𝑎𝑏italic-ϕ𝑎𝑏(a,b)\mapsto\phi(a,b)( italic_a , italic_b ) ↦ italic_ϕ ( italic_a , italic_b ) from (12) is smooth on 𝒲𝒲\mathcal{W}caligraphic_W. It follows from (10) that, for 𝐲𝒟1𝐲subscript𝒟1\mathbf{y}\in\mathcal{D}_{1}bold_y ∈ caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, b(𝐲)=0𝑏𝐲0b(\mathbf{y})=0italic_b ( bold_y ) = 0 only if 𝐲Int(𝒞1)𝐲Intsubscript𝒞1\mathbf{y}\in\operatorname{Int}(\mathcal{C}_{1})bold_y ∈ roman_Int ( caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ), which implies that, for 𝐲𝒟1𝐲subscript𝒟1\mathbf{y}\in\mathcal{D}_{1}bold_y ∈ caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, b(𝐲)=0𝑏𝐲0b(\mathbf{y})=0italic_b ( bold_y ) = 0 only if a(𝐲)>0𝑎𝐲0a(\mathbf{y})>0italic_a ( bold_y ) > 0. Hence, for each 𝐲𝒟1𝐲subscript𝒟1\mathbf{y}\in\mathcal{D}_{1}bold_y ∈ caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, we have (a(𝐲),b(𝐲))𝒲𝑎𝐲𝑏𝐲𝒲(a(\mathbf{y}),b(\mathbf{y}))\in\mathcal{W}( italic_a ( bold_y ) , italic_b ( bold_y ) ) ∈ caligraphic_W. Since (a,b)ϕ(a,b)maps-to𝑎𝑏italic-ϕ𝑎𝑏(a,b)\mapsto\phi(a,b)( italic_a , italic_b ) ↦ italic_ϕ ( italic_a , italic_b ) is smooth on 𝒲𝒲\mathcal{W}caligraphic_W, 𝐲a(𝐲),b(𝐲)maps-to𝐲𝑎𝐲𝑏𝐲\mathbf{y}\mapsto a(\mathbf{y}),b(\mathbf{y})bold_y ↦ italic_a ( bold_y ) , italic_b ( bold_y ) are smooth on 𝒟1subscript𝒟1\mathcal{D}_{1}caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, and (a(𝐲),b(𝐲))𝒲𝑎𝐲𝑏𝐲𝒲(a(\mathbf{y}),b(\mathbf{y}))\in\mathcal{W}( italic_a ( bold_y ) , italic_b ( bold_y ) ) ∈ caligraphic_W for each 𝐲𝒟1𝐲subscript𝒟1\mathbf{y}\in\mathcal{D}_{1}bold_y ∈ caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, 𝐲ϕ(a(𝐲),b(𝐲))maps-to𝐲italic-ϕ𝑎𝐲𝑏𝐲\mathbf{y}\mapsto\phi(a(\mathbf{y}),b(\mathbf{y}))bold_y ↦ italic_ϕ ( italic_a ( bold_y ) , italic_b ( bold_y ) ) is smooth on 𝒟1subscript𝒟1\mathcal{D}_{1}caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, implying that 𝐲𝐤1(𝐲)maps-to𝐲subscript𝐤1𝐲\mathbf{y}\mapsto\mathbf{k}_{1}(\mathbf{y})bold_y ↦ bold_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( bold_y ) from (12) is smooth on 𝒟1subscript𝒟1\mathcal{D}_{1}caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. To show (11) we compute:

\pdv[stylefrac=]ψ𝐲(𝐲)𝐤1(𝐲)=\displaystyle\pdv[style-frac=\tfrac{]}{\psi}{\mathbf{y}}(\mathbf{y})\mathbf{k}%_{1}(\mathbf{y})=[ italic_s italic_t italic_y italic_l italic_e - italic_f italic_r italic_a italic_c = divide start_ARG ] end_ARG start_ARG italic_ψ end_ARG bold_y ( bold_y ) bold_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( bold_y ) =ϕ(a(𝐲),b(𝐲))\pdv[stylefrac=]ψ𝐲(𝐲)2\displaystyle\phi(a(\mathbf{y}),b(\mathbf{y}))\big{\|}\pdv[style-frac=\tfrac{]%}{\psi}{\mathbf{y}}(\mathbf{y})\big{\|}^{2}italic_ϕ ( italic_a ( bold_y ) , italic_b ( bold_y ) ) ∥ [ italic_s italic_t italic_y italic_l italic_e - italic_f italic_r italic_a italic_c = divide start_ARG ] end_ARG start_ARG italic_ψ end_ARG bold_y ( bold_y ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT(13)
=\displaystyle=={0b(𝐲)=0a(𝐲)+a(𝐲)2+σb(𝐲)22b(𝐲)0.cases0𝑏𝐲0𝑎𝐲𝑎superscript𝐲2𝜎𝑏superscript𝐲22𝑏𝐲0\displaystyle\begin{cases}0&b(\mathbf{y})=0\\\frac{-a(\mathbf{y})+\sqrt{a(\mathbf{y})^{2}+\sigma b(\mathbf{y})^{2}}}{2}&b(%\mathbf{y})\neq 0.\end{cases}{ start_ROW start_CELL 0 end_CELL start_CELL italic_b ( bold_y ) = 0 end_CELL end_ROW start_ROW start_CELL divide start_ARG - italic_a ( bold_y ) + square-root start_ARG italic_a ( bold_y ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_σ italic_b ( bold_y ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG end_ARG start_ARG 2 end_ARG end_CELL start_CELL italic_b ( bold_y ) ≠ 0 . end_CELL end_ROW

Recall from (10) that when b(𝐲)=0𝑏𝐲0b(\mathbf{y})=0italic_b ( bold_y ) = 0 and 𝐲𝒟1𝐲subscript𝒟1\mathbf{y}\in\mathcal{D}_{1}bold_y ∈ caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, we have a(𝐲)>0𝑎𝐲0a(\mathbf{y})>0italic_a ( bold_y ) > 0, implying that 0>a(𝐲)0𝑎𝐲0>-a(\mathbf{y})0 > - italic_a ( bold_y ). Moreover, when b(𝐲)0𝑏𝐲0b(\mathbf{y})\neq 0italic_b ( bold_y ) ≠ 0, one can verify that a(𝐲)+a(𝐲)2+σb(𝐲)22>a(𝐲)𝑎𝐲𝑎superscript𝐲2𝜎𝑏superscript𝐲22𝑎𝐲\tfrac{-a(\mathbf{y})+\sqrt{a(\mathbf{y})^{2}+\sigma b(\mathbf{y})^{2}}}{2}>-a%(\mathbf{y})divide start_ARG - italic_a ( bold_y ) + square-root start_ARG italic_a ( bold_y ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_σ italic_b ( bold_y ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG end_ARG start_ARG 2 end_ARG > - italic_a ( bold_y ) for any σ>0𝜎0\sigma>0italic_σ > 0.Using these observations to lower bound (13) implies that (11) holds, as desired.∎

The conditions in Lemma 1 are equivalent to the statement that ψ𝜓\psiitalic_ψ is a CBF for a single integrator 𝐲˙=𝐮˙𝐲𝐮\dot{\mathbf{y}}=\mathbf{u}over˙ start_ARG bold_y end_ARG = bold_u, an arguably mild requirement.This does not require 𝐱ψ(𝐲(𝐱))maps-to𝐱𝜓𝐲𝐱\mathbf{x}\mapsto\psi(\mathbf{y}(\mathbf{x}))bold_x ↦ italic_ψ ( bold_y ( bold_x ) ) to have a uniform relative degree on 𝒞𝒞\mathcal{C}caligraphic_C, which would be overly restrictive. Indeed, the gradient of relevant safety constraints may vanish at points on Int(𝒞)Int𝒞\operatorname{Int}(\mathcal{C})roman_Int ( caligraphic_C ) [15, 18, 10]. Instead, we will require the output 𝐲𝐲\mathbf{y}bold_y to have a relative degree, which is less restrictive222That is, 𝐲𝐲\mathbf{y}bold_y may have a relative degree even when ψ𝜓\psiitalic_ψ does not. A simple example illustrating this point is the double integrator with state 𝐱=(x1,x2)2𝐱subscript𝑥1subscript𝑥2superscript2\mathbf{x}=(x_{1},x_{2})\in\mathbb{R}^{2}bold_x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ∈ blackboard_R start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT, output 𝐲(𝐱)=x1𝐲𝐱subscript𝑥1\mathbf{y}(\mathbf{x})=x_{1}bold_y ( bold_x ) = italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, and constraint ψ(𝐲(𝐱))=1x12𝜓𝐲𝐱1superscriptsubscript𝑥12\psi(\mathbf{y}(\mathbf{x}))=1-x_{1}^{2}italic_ψ ( bold_y ( bold_x ) ) = 1 - italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT. This phenomenon is also present in the examples considered in Sec. V and may arise when 𝒞1subscript𝒞1\mathcal{C}_{1}caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT from (9) is a compact set (cf. [10, Footnote 4])..To this end, let 𝐲𝐲\mathbf{y}bold_y have relative degree γ𝛾\gamma\in\mathbb{N}italic_γ ∈ blackboard_N on 𝒳𝒳\mathcal{E}\subseteq\mathcal{X}caligraphic_E ⊆ caligraphic_X and consider the output dynamics (7) of system (1). The output dynamics in (7) are in strict feedback form and are thus amenable to backstepping [9, 10]. We will thus leverage backstepping for (7) to construct a CBF, which may be used to enforce satisfaction of the original output constraint on (1).Following[9], we propose the CBF candidate:

h(𝐱)𝐱absent\displaystyle h(\mathbf{x})\coloneqqitalic_h ( bold_x ) ≔ψ(𝐲(𝐱))i=1γ112μiL𝐟i𝐲(𝐱)𝐤i(𝜻i(𝐱))2𝜓𝐲𝐱superscriptsubscript𝑖1𝛾112subscript𝜇𝑖superscriptnormsuperscriptsubscript𝐿𝐟𝑖𝐲𝐱subscript𝐤𝑖subscript𝜻𝑖𝐱2\displaystyle\psi(\mathbf{y}(\mathbf{x}))-\sum_{i=1}^{\gamma-1}\tfrac{1}{2\mu_%{i}}\|L_{\mathbf{f}}^{i}\mathbf{y}(\mathbf{x})-\mathbf{k}_{i}(\bm{\zeta}_{i}(%\mathbf{x}))\|^{2}italic_ψ ( bold_y ( bold_x ) ) - ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_γ - 1 end_POSTSUPERSCRIPT divide start_ARG 1 end_ARG start_ARG 2 italic_μ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG ∥ italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT bold_y ( bold_x ) - bold_k start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( bold_italic_ζ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( bold_x ) ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT(14)
=\displaystyle==ψ(𝜼1)i=1γ112μi𝜼i+1𝐤i(𝜻i)2,𝜓subscript𝜼1superscriptsubscript𝑖1𝛾112subscript𝜇𝑖superscriptnormsubscript𝜼𝑖1subscript𝐤𝑖subscript𝜻𝑖2\displaystyle\psi(\bm{\eta}_{1})-\sum_{i=1}^{\gamma-1}\tfrac{1}{2\mu_{i}}\|\bm%{\eta}_{i+1}-\mathbf{k}_{i}(\bm{\zeta}_{i})\|^{2},italic_ψ ( bold_italic_η start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_γ - 1 end_POSTSUPERSCRIPT divide start_ARG 1 end_ARG start_ARG 2 italic_μ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG ∥ bold_italic_η start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT - bold_k start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( bold_italic_ζ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ,

where ψ𝜓\psiitalic_ψ defines 𝒞1psubscript𝒞1superscript𝑝\mathcal{C}_{1}\subset\mathbb{R}^{p}caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊂ blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT as in (9), μi>0subscript𝜇𝑖0\mu_{i}>0italic_μ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT > 0 for i{1,,γ1}𝑖1𝛾1i\in\{1,\dots,\gamma-1\}italic_i ∈ { 1 , … , italic_γ - 1 }, 𝜻j(𝜼1,𝜼2,,𝜼j)pjsubscript𝜻𝑗subscript𝜼1subscript𝜼2subscript𝜼𝑗superscript𝑝𝑗\bm{\zeta}_{j}\coloneqq(\bm{\eta}_{1},\bm{\eta}_{2},\dots,\bm{\eta}_{j})\in%\mathbb{R}^{pj}bold_italic_ζ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ≔ ( bold_italic_η start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , bold_italic_η start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , … , bold_italic_η start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ∈ blackboard_R start_POSTSUPERSCRIPT italic_p italic_j end_POSTSUPERSCRIPT,𝐤1:𝒟1p:subscript𝐤1subscript𝒟1superscript𝑝\mathbf{k}_{1}\,:\,\mathcal{D}_{1}\rightarrow\mathbb{R}^{p}bold_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT : caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT → blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT is any smooth function satisfying (11) for all 𝜼1𝒟1𝒞1subscript𝜼1subscript𝒟1superset-ofsubscript𝒞1\bm{\eta}_{1}\in\mathcal{D}_{1}\supset\mathcal{C}_{1}bold_italic_η start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊃ caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT for a smooth globally Lipschitz α𝒦e𝛼superscriptsubscript𝒦𝑒\alpha\in\mathcal{K}_{\infty}^{e}italic_α ∈ caligraphic_K start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT and:

𝐤2(𝜻2)subscript𝐤2subscript𝜻2absent\displaystyle\mathbf{k}_{2}(\bm{\zeta}_{2})\coloneqqbold_k start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( bold_italic_ζ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ≔𝐤˙1(𝜻2)+μ1\pdvψ𝜼1(𝜼1)λ12(𝜼2𝐤1(𝜼1))subscript˙𝐤1subscript𝜻2subscript𝜇1\pdv𝜓subscript𝜼1superscriptsubscript𝜼1topsubscript𝜆12subscript𝜼2subscript𝐤1subscript𝜼1\displaystyle\dot{\mathbf{k}}_{1}(\bm{\zeta}_{2})+\mu_{1}\pdv{\psi}{\bm{\eta}_%{1}}(\bm{\eta}_{1})^{\top}-\frac{\lambda_{1}}{2}(\bm{\eta}_{2}-\mathbf{k}_{1}(%\bm{\eta}_{1}))over˙ start_ARG bold_k end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( bold_italic_ζ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) + italic_μ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_ψ bold_italic_η start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( bold_italic_η start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT - divide start_ARG italic_λ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG start_ARG 2 end_ARG ( bold_italic_η start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT - bold_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( bold_italic_η start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) )(15)
𝐤i+1(𝜻i+1)subscript𝐤𝑖1subscript𝜻𝑖1absent\displaystyle\mathbf{k}_{i+1}(\bm{\zeta}_{i+1})\coloneqqbold_k start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT ( bold_italic_ζ start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT ) ≔𝐤˙i(𝜻i+1)μi(𝜼i𝐤i1(𝜻i1))subscript˙𝐤𝑖subscript𝜻𝑖1subscript𝜇𝑖subscript𝜼𝑖subscript𝐤𝑖1subscript𝜻𝑖1\displaystyle\dot{\mathbf{k}}_{i}(\bm{\zeta}_{i+1})-\mu_{i}(\bm{\eta}_{i}-%\mathbf{k}_{i-1}(\bm{\zeta}_{i-1}))over˙ start_ARG bold_k end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( bold_italic_ζ start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT ) - italic_μ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( bold_italic_η start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - bold_k start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT ( bold_italic_ζ start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT ) )
λi2(𝜼i+1𝐤i(𝜻i)),i{2,,γ2},subscript𝜆𝑖2subscript𝜼𝑖1subscript𝐤𝑖subscript𝜻𝑖for-all𝑖2𝛾2\displaystyle-\frac{\lambda_{i}}{2}(\bm{\eta}_{i+1}-\mathbf{k}_{i}(\bm{\zeta}_%{i})),\;\forall i\in\{2,\dots,\gamma-2\},- divide start_ARG italic_λ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG start_ARG 2 end_ARG ( bold_italic_η start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT - bold_k start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( bold_italic_ζ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) ) , ∀ italic_i ∈ { 2 , … , italic_γ - 2 } ,

where λi>0subscript𝜆𝑖0\lambda_{i}>0italic_λ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT > 0 for each i{1,,γ2}𝑖1𝛾2i\in\{1,\dots,\gamma-2\}italic_i ∈ { 1 , … , italic_γ - 2 }. The CBF candidate in (14) defines a set 𝒮𝒮\mathcal{S}caligraphic_S as in (2), which satisfies 𝒮𝒞𝒮𝒞\mathcal{S}\subset\mathcal{C}caligraphic_S ⊂ caligraphic_C.Before proceeding, it will be useful to define 𝒟{𝐱𝒳:𝐲(𝐱)𝒟1}𝒟conditional-set𝐱𝒳𝐲𝐱subscript𝒟1\mathcal{D}\coloneqq\{\mathbf{x}\in\mathcal{X}\,:\,\mathbf{y}(\mathbf{x})\in%\mathcal{D}_{1}\}caligraphic_D ≔ { bold_x ∈ caligraphic_X : bold_y ( bold_x ) ∈ caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT }, where 𝒟1psubscript𝒟1superscript𝑝\mathcal{D}_{1}\subset\mathbb{R}^{p}caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊂ blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT is defined as in Lemma 1. We now illustrate that when 𝐲𝐲\mathbf{y}bold_y has arelative degree on 𝒮𝒮\mathcal{S}caligraphic_S and ψ𝜓\psiitalic_ψ satisfies (10), then (14) is a CBF for (1).

Theorem 1.

Consider system (1) with smooth output 𝐲:𝒳p:𝐲𝒳superscript𝑝\mathbf{y}\,:\,\mathcal{X}\rightarrow\mathbb{R}^{p}bold_y : caligraphic_X → blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT, the output constraint ψ:p:𝜓superscript𝑝\psi\,:\,\mathbb{R}^{p}\rightarrow\mathbb{R}italic_ψ : blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT → blackboard_R defining a constraint set 𝒞𝒳𝒞𝒳\mathcal{C}\subset\mathcal{X}caligraphic_C ⊂ caligraphic_X as in (8), and the CBF candidate h:𝒳:𝒳h\,:\,\mathcal{X}\rightarrow\mathbb{R}italic_h : caligraphic_X → blackboard_R from (14) defining a set 𝒮𝒞𝒮𝒞\mathcal{S}\subset\mathcal{C}caligraphic_S ⊂ caligraphic_C as in (2). Provided that ψ𝜓\psiitalic_ψ satisfies (10) on a set 𝒟1𝒞1subscript𝒞1subscript𝒟1\mathcal{D}_{1}\supset\mathcal{C}_{1}caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊃ caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, with 𝒞1psubscript𝒞1superscript𝑝\mathcal{C}_{1}\subset\mathbb{R}^{p}caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊂ blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT as in (9), 𝐲𝐲\mathbf{y}bold_y has relative degree γ𝛾\gammaitalic_γ on a set 𝒮𝒮\mathcal{E}\supset\mathcal{S}caligraphic_E ⊃ caligraphic_S satisfying 𝒟𝒟\mathcal{E}\subseteq\mathcal{D}caligraphic_E ⊆ caligraphic_D, and λiαsubscript𝜆𝑖subscript𝛼\lambda_{i}\geq\ell_{\alpha}italic_λ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≥ roman_ℓ start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT for each i{1,,γ2}𝑖1𝛾2i\in\{1,\dots,\gamma-2\}italic_i ∈ { 1 , … , italic_γ - 2 }, where αsubscript𝛼\ell_{\alpha}roman_ℓ start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT is a Lipschitz constant of α𝒦e𝛼superscriptsubscript𝒦𝑒\alpha\in\mathcal{K}_{\infty}^{e}italic_α ∈ caligraphic_K start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT from (11), then hhitalic_h is a CBF for (1) on 𝒮𝒮\mathcal{S}caligraphic_S. Moreover, any locally Lipschitz controller 𝐤:m:𝐤superscript𝑚\mathbf{k}\,:\,\mathcal{E}\rightarrow\mathbb{R}^{m}bold_k : caligraphic_E → blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT that renders 𝒮𝒮\mathcal{S}caligraphic_S forward invariant for the closed-loop system (1) ensures that 𝐱(t)𝒞𝐱𝑡𝒞\mathbf{x}(t)\in\mathcal{C}bold_x ( italic_t ) ∈ caligraphic_C for all tI(𝐱0)𝑡𝐼subscript𝐱0t\in I(\mathbf{x}_{0})italic_t ∈ italic_I ( bold_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ).

Proof.

The proof follows a similar argument to that of [9, Thm. 5]. Since 𝐲𝐲\mathbf{y}bold_y has relative degree γ𝛾\gammaitalic_γ on \mathcal{E}caligraphic_E, the matrix L𝐠L𝐟γ1𝐲(𝐱)p×msubscript𝐿𝐠superscriptsubscript𝐿𝐟𝛾1𝐲𝐱superscript𝑝𝑚L_{\mathbf{g}}L_{\mathbf{f}}^{\gamma-1}\mathbf{y}(\mathbf{x})\in\mathbb{R}^{p%\times m}italic_L start_POSTSUBSCRIPT bold_g end_POSTSUBSCRIPT italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_γ - 1 end_POSTSUPERSCRIPT bold_y ( bold_x ) ∈ blackboard_R start_POSTSUPERSCRIPT italic_p × italic_m end_POSTSUPERSCRIPT has rank p𝑝pitalic_p and is thus right pseudo-invertible for each 𝐱𝐱\mathbf{x}\in\mathcal{E}bold_x ∈ caligraphic_E.Now, note that since 𝒮𝒟𝒮𝒟\mathcal{S}\subset\mathcal{E}\subseteq\mathcal{D}caligraphic_S ⊂ caligraphic_E ⊆ caligraphic_D and 𝜼1𝐤1(𝜼1)maps-tosubscript𝜼1subscript𝐤1subscript𝜼1\bm{\eta}_{1}\mapsto\mathbf{k}_{1}(\bm{\eta}_{1})bold_italic_η start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ↦ bold_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( bold_italic_η start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) satisfies (11) for all 𝜼1𝒟1subscript𝜼1subscript𝒟1\bm{\eta}_{1}\in\mathcal{D}_{1}bold_italic_η start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, 𝐱𝐤1(𝐲(𝐱))maps-to𝐱subscript𝐤1𝐲𝐱\mathbf{x}\mapsto\mathbf{k}_{1}(\mathbf{y}(\mathbf{x}))bold_x ↦ bold_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( bold_y ( bold_x ) ) satisfies (11) for all 𝐱𝒟𝐱𝒟\mathbf{x}\in\mathcal{E}\subseteq\mathcal{D}bold_x ∈ caligraphic_E ⊆ caligraphic_D, where 𝐤1subscript𝐤1\mathbf{k}_{1}bold_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT exists since ψ𝜓\psiitalic_ψ satisfies the conditions of Lemma 1. It then follows that since λiαsubscript𝜆𝑖subscript𝛼\lambda_{i}\geq\ell_{\alpha}italic_λ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≥ roman_ℓ start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT for each i{1,,γ2}𝑖1𝛾2i\in\{1,\dots,\gamma-2\}italic_i ∈ { 1 , … , italic_γ - 2 }, each 𝐤isubscript𝐤𝑖\mathbf{k}_{i}bold_k start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT satisfies the same conditions as those in the proof of [9, Thm. 5], which implies that the CBF candidate hhitalic_h in (14) satisfies the same conditions as those in [9, Sec. IV]. Hence, by following the same steps as in the proof of [9, Thm. 5], one may show that the smooth feedback controller:

𝐤(𝐱)L𝐠L𝐟γ1𝐲(𝐱)[𝐤˙γ1(𝜼(𝐱))L𝐟γ𝐲(𝐱)\displaystyle\mathbf{k}(\mathbf{x})\coloneqq L_{\mathbf{g}}L_{\mathbf{f}}^{%\gamma-1}\mathbf{y}(\mathbf{x})^{\dagger}\bigg{[}\dot{\mathbf{k}}_{\gamma-1}(%\bm{\eta}(\mathbf{x}))-L_{\mathbf{f}}^{\gamma}\mathbf{y}(\mathbf{x})bold_k ( bold_x ) ≔ italic_L start_POSTSUBSCRIPT bold_g end_POSTSUBSCRIPT italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_γ - 1 end_POSTSUPERSCRIPT bold_y ( bold_x ) start_POSTSUPERSCRIPT † end_POSTSUPERSCRIPT [ over˙ start_ARG bold_k end_ARG start_POSTSUBSCRIPT italic_γ - 1 end_POSTSUBSCRIPT ( bold_italic_η ( bold_x ) ) - italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_γ end_POSTSUPERSCRIPT bold_y ( bold_x )
μγ1(𝜼γ1(𝐱)𝐤γ2(𝜻γ2(𝐱)))subscript𝜇𝛾1subscript𝜼𝛾1𝐱subscript𝐤𝛾2subscript𝜻𝛾2𝐱\displaystyle-\mu_{\gamma-1}\Big{(}\bm{\eta}_{\gamma-1}(\mathbf{x})-\mathbf{k}%_{\gamma-2}(\bm{\zeta}_{\gamma-2}(\mathbf{x}))\Big{)}- italic_μ start_POSTSUBSCRIPT italic_γ - 1 end_POSTSUBSCRIPT ( bold_italic_η start_POSTSUBSCRIPT italic_γ - 1 end_POSTSUBSCRIPT ( bold_x ) - bold_k start_POSTSUBSCRIPT italic_γ - 2 end_POSTSUBSCRIPT ( bold_italic_ζ start_POSTSUBSCRIPT italic_γ - 2 end_POSTSUBSCRIPT ( bold_x ) ) )
λγ12(𝜼γ(𝐱)𝐤γ1(𝜻γ1(𝐱)))],\displaystyle-\frac{\lambda_{\gamma-1}}{2}\Big{(}\bm{\eta}_{\gamma}(\mathbf{x}%)-\mathbf{k}_{\gamma-1}(\bm{\zeta}_{\gamma-1}(\mathbf{x}))\Big{)}\bigg{]},- divide start_ARG italic_λ start_POSTSUBSCRIPT italic_γ - 1 end_POSTSUBSCRIPT end_ARG start_ARG 2 end_ARG ( bold_italic_η start_POSTSUBSCRIPT italic_γ end_POSTSUBSCRIPT ( bold_x ) - bold_k start_POSTSUBSCRIPT italic_γ - 1 end_POSTSUBSCRIPT ( bold_italic_ζ start_POSTSUBSCRIPT italic_γ - 1 end_POSTSUBSCRIPT ( bold_x ) ) ) ] ,

where ()superscript(\cdot)^{\dagger}( ⋅ ) start_POSTSUPERSCRIPT † end_POSTSUPERSCRIPT denotes the right psuedo-inverse and λγ1αsubscript𝜆𝛾1subscript𝛼\lambda_{\gamma-1}\geq\ell_{\alpha}italic_λ start_POSTSUBSCRIPT italic_γ - 1 end_POSTSUBSCRIPT ≥ roman_ℓ start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT, satisfies h˙(𝐱,𝐤(𝐱))>α(h(𝐱))˙𝐱𝐤𝐱𝛼𝐱\dot{h}(\mathbf{x},\mathbf{k}(\mathbf{x}))>-\alpha(h(\mathbf{x}))over˙ start_ARG italic_h end_ARG ( bold_x , bold_k ( bold_x ) ) > - italic_α ( italic_h ( bold_x ) ) for all 𝐱𝐱\mathbf{x}\in\mathcal{E}bold_x ∈ caligraphic_E, where α𝛼\alphaitalic_α is from (11). Thus, for all 𝐱𝐱\mathbf{x}\in\mathcal{E}bold_x ∈ caligraphic_E, we have:

sup𝐮mh˙(𝐱,𝐮)h˙(𝐱,𝐤(𝐱))>α(h(𝐱)),subscriptsupremum𝐮superscript𝑚˙𝐱𝐮˙𝐱𝐤𝐱𝛼𝐱\sup_{\mathbf{u}\in\mathbb{R}^{m}}\dot{h}(\mathbf{x},\mathbf{u})\geq\dot{h}(%\mathbf{x},\mathbf{k}(\mathbf{x}))>-\alpha(h(\mathbf{x})),roman_sup start_POSTSUBSCRIPT bold_u ∈ blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT end_POSTSUBSCRIPT over˙ start_ARG italic_h end_ARG ( bold_x , bold_u ) ≥ over˙ start_ARG italic_h end_ARG ( bold_x , bold_k ( bold_x ) ) > - italic_α ( italic_h ( bold_x ) ) ,

which implies that hhitalic_h is a CBF for (1) on 𝒮𝒮\mathcal{S}\subset\mathcal{E}caligraphic_S ⊂ caligraphic_E.Since 𝒮𝒞𝒮𝒞\mathcal{S}\subset\mathcal{C}caligraphic_S ⊂ caligraphic_C any locally Lipschitz controller enforcing the forward invariance of 𝒮𝒮\mathcal{S}caligraphic_S ensures that 𝐱(t)𝒞𝐱𝑡𝒞\mathbf{x}(t)\in\mathcal{C}bold_x ( italic_t ) ∈ caligraphic_C for all tI(𝐱0)𝑡𝐼subscript𝐱0t\in I(\mathbf{x}_{0})italic_t ∈ italic_I ( bold_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ).∎

Theorem 1 highlights the interplay between the output 𝐲𝐲\mathbf{y}bold_y, the safety constraint ψ𝜓\psiitalic_ψ, the system’s actuation capabilities, and the ability to construct CBFs.By ensuring that 𝐲𝐲\mathbf{y}bold_y has a relative degree on 𝒮𝒮\mathcal{E}\supset\mathcal{S}caligraphic_E ⊃ caligraphic_S, (1) may be partially transformed into a strict feedback system (7)on \mathcal{E}caligraphic_E, enabling the application of backstepping [9] to construct a CBF.Theorem 1 characterizes the requirements on ψ𝜓\psiitalic_ψ, 𝒮𝒮\mathcal{S}caligraphic_S, and 𝐲𝐲\mathbf{y}bold_y for such techniques to be applicable to general control affine systems (1), complimenting the ideas introduced in [9], which focused on systems already in strict feedback form.While using outputs to transform a system into strict feedback form is well-established in the backstepping literature [21], and has been exploited in the context of CBFs [11] by viewing ψ𝜓\psiitalic_ψ as an output, Theorem 1 is, to our knowledge, the first to make the explicit connection between more general outputs and the constructions of CBFs.As demonstrated in Sec. V, this connection has important practical implications as itenables the application of such ideas to a broader class of systems than those originally considered in [9, 10].Moreover, by not treating ψ𝜓\psiitalic_ψ as an output – a common approach in works such as [11, 12, 13, 14, 15, 19] – this construction overcomes the restrictive uniform relative degree requirements on ψ𝜓\psiitalic_ψ present in most high relative degree CBF techniques.

IV CBFs for Underactuated Robotic Systems

We now specialize the previous results torobotic systems with generalized coordinates 𝐪𝒬n𝐪𝒬superscript𝑛\mathbf{q}\in\mathcal{Q}\subseteq\mathbb{R}^{n}bold_q ∈ caligraphic_Q ⊆ blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPTand dynamics:

𝐃(𝐪)𝐪¨+𝐂(𝐪,𝐪˙)𝐪˙+𝐆(𝐪)=𝐁(𝐪)𝐮.𝐃𝐪¨𝐪𝐂𝐪˙𝐪˙𝐪𝐆𝐪𝐁𝐪𝐮\mathbf{D}(\mathbf{q})\ddot{\mathbf{q}}+\mathbf{C}(\mathbf{q},\dot{\mathbf{q}}%)\dot{\mathbf{q}}+\mathbf{G}(\mathbf{q})=\mathbf{B}(\mathbf{q})\mathbf{u}.bold_D ( bold_q ) over¨ start_ARG bold_q end_ARG + bold_C ( bold_q , over˙ start_ARG bold_q end_ARG ) over˙ start_ARG bold_q end_ARG + bold_G ( bold_q ) = bold_B ( bold_q ) bold_u .(16)

Here, 𝐪˙n˙𝐪superscript𝑛\dot{\mathbf{q}}\in\mathbb{R}^{n}over˙ start_ARG bold_q end_ARG ∈ blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT is the generalized velocity, 𝐃(𝐪)n×n𝐃𝐪superscript𝑛𝑛\mathbf{D}(\mathbf{q})\in\mathbb{R}^{n\times n}bold_D ( bold_q ) ∈ blackboard_R start_POSTSUPERSCRIPT italic_n × italic_n end_POSTSUPERSCRIPT denotes the positive definite and symmetric inertia matrix, 𝐂(𝐪,𝐪˙)n×n𝐂𝐪˙𝐪superscript𝑛𝑛\mathbf{C}(\mathbf{q},\dot{\mathbf{q}})\in\mathbb{R}^{n\times n}bold_C ( bold_q , over˙ start_ARG bold_q end_ARG ) ∈ blackboard_R start_POSTSUPERSCRIPT italic_n × italic_n end_POSTSUPERSCRIPT denotes the Coriolis matrix, 𝐆(𝐪)n𝐆𝐪superscript𝑛\mathbf{G}(\mathbf{q})\in\mathbb{R}^{n}bold_G ( bold_q ) ∈ blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT represents gravitational and other potential effects, 𝐁(𝐪)n×m𝐁𝐪superscript𝑛𝑚\mathbf{B}(\mathbf{q})\in\mathbb{R}^{n\times m}bold_B ( bold_q ) ∈ blackboard_R start_POSTSUPERSCRIPT italic_n × italic_m end_POSTSUPERSCRIPT is the actuation matrix, and 𝐮m𝐮superscript𝑚\mathbf{u}\in\mathbb{R}^{m}bold_u ∈ blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT is the control input.Note that by defining 𝐱(𝐪,𝐪˙)𝒳=𝒬×n𝐱𝐪˙𝐪𝒳𝒬superscript𝑛\mathbf{x}\coloneqq(\mathbf{q},\dot{\mathbf{q}})\in\mathcal{X}=\mathcal{Q}%\times\mathbb{R}^{n}bold_x ≔ ( bold_q , over˙ start_ARG bold_q end_ARG ) ∈ caligraphic_X = caligraphic_Q × blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPTwe may represent (16) as in (1) withdynamics:

[𝐪˙𝐃(𝐪)1[𝐂(𝐪,𝐪˙)𝐪˙+𝐆(𝐪)]]𝐟(𝐱),[𝟎n×m𝐃(𝐪)1𝐁(𝐪)]𝐠(𝐱).subscriptmatrix˙𝐪𝐃superscript𝐪1delimited-[]𝐂𝐪˙𝐪˙𝐪𝐆𝐪𝐟𝐱subscriptmatrixsubscript0𝑛𝑚𝐃superscript𝐪1𝐁𝐪𝐠𝐱\underbrace{\begin{bmatrix}\dot{\mathbf{q}}\\-\mathbf{D}(\mathbf{q})^{-1}\left[\mathbf{C}(\mathbf{q},\dot{\mathbf{q}})\dot{%\mathbf{q}}+\mathbf{G}(\mathbf{q})\right]\end{bmatrix}}_{\mathbf{f}(\mathbf{x}%)},\quad\underbrace{\begin{bmatrix}\mathbf{0}_{n\times m}\\\mathbf{D}(\mathbf{q})^{-1}\mathbf{B}(\mathbf{q})\end{bmatrix}}_{\mathbf{g}(%\mathbf{x})}.under⏟ start_ARG [ start_ARG start_ROW start_CELL over˙ start_ARG bold_q end_ARG end_CELL end_ROW start_ROW start_CELL - bold_D ( bold_q ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT [ bold_C ( bold_q , over˙ start_ARG bold_q end_ARG ) over˙ start_ARG bold_q end_ARG + bold_G ( bold_q ) ] end_CELL end_ROW end_ARG ] end_ARG start_POSTSUBSCRIPT bold_f ( bold_x ) end_POSTSUBSCRIPT , under⏟ start_ARG [ start_ARG start_ROW start_CELL bold_0 start_POSTSUBSCRIPT italic_n × italic_m end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL bold_D ( bold_q ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT bold_B ( bold_q ) end_CELL end_ROW end_ARG ] end_ARG start_POSTSUBSCRIPT bold_g ( bold_x ) end_POSTSUBSCRIPT .(17)

Now, consider a twice continuously differentiable output 𝐲:𝒬p:𝐲𝒬superscript𝑝\mathbf{y}\,:\,\mathcal{Q}\rightarrow\mathbb{R}^{p}bold_y : caligraphic_Q → blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT,which is used to define an output constraint ψ:p:𝜓superscript𝑝\psi\,:\,\mathbb{R}^{p}\rightarrow\mathbb{R}italic_ψ : blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT → blackboard_R and associated output constraint set:

𝒞{𝐪𝒬:ψ(𝐲(𝐪))0},𝒞conditional-set𝐪𝒬𝜓𝐲𝐪0\mathcal{C}\coloneqq\{\mathbf{q}\in\mathcal{Q}\,:\,\psi(\mathbf{y}(\mathbf{q})%)\geq 0\},caligraphic_C ≔ { bold_q ∈ caligraphic_Q : italic_ψ ( bold_y ( bold_q ) ) ≥ 0 } ,(18)

defined in the configuration space 𝒬𝒬\mathcal{Q}caligraphic_Q of (16).Differentiating the output 𝐲𝐲\mathbf{y}bold_y twice along the vector fields in (17) leads to 𝐲¨=L𝐟2𝐲(𝐪,𝐪˙)+\pdv[stylefrac=]𝐲𝐪(𝐪)𝐃(𝐪)1𝐁(𝐪)𝐮\ddot{\mathbf{y}}=L_{\mathbf{f}}^{2}\mathbf{y}(\mathbf{q},\dot{\mathbf{q}})+%\pdv[style-frac=\tfrac{]}{\mathbf{y}}{\mathbf{q}}(\mathbf{q})\mathbf{D}(%\mathbf{q})^{-1}\mathbf{B}(\mathbf{q})\mathbf{u}over¨ start_ARG bold_y end_ARG = italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT bold_y ( bold_q , over˙ start_ARG bold_q end_ARG ) + [ italic_s italic_t italic_y italic_l italic_e - italic_f italic_r italic_a italic_c = divide start_ARG ] end_ARG start_ARG bold_y end_ARG bold_q ( bold_q ) bold_D ( bold_q ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT bold_B ( bold_q ) bold_u. Importantly, we see that the the p×m𝑝𝑚p\times mitalic_p × italic_m “decoupling” matrix:

𝐀(𝐪)L𝐠L𝐟𝐲(𝐪)=\pdv[stylefrac=]𝐲𝐪(𝐪)𝐃(𝐪)1𝐁(𝐪),\mathbf{A}(\mathbf{q})\coloneqq L_{\mathbf{g}}L_{\mathbf{f}}\mathbf{y}(\mathbf%{q})=\pdv[style-frac=\tfrac{]}{\mathbf{y}}{\mathbf{q}}(\mathbf{q})\mathbf{D}(%\mathbf{q})^{-1}\mathbf{B}(\mathbf{q}),bold_A ( bold_q ) ≔ italic_L start_POSTSUBSCRIPT bold_g end_POSTSUBSCRIPT italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT bold_y ( bold_q ) = [ italic_s italic_t italic_y italic_l italic_e - italic_f italic_r italic_a italic_c = divide start_ARG ] end_ARG start_ARG bold_y end_ARG bold_q ( bold_q ) bold_D ( bold_q ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT bold_B ( bold_q ) ,(19)

depends only on the configuration, implying that the relative degreedepends only on the configuration. Note that when 𝐁(𝐪)𝐁n×m𝐁𝐪𝐁superscript𝑛𝑚\mathbf{B}(\mathbf{q})\equiv\mathbf{B}\in\mathbb{R}^{n\times m}bold_B ( bold_q ) ≡ bold_B ∈ blackboard_R start_POSTSUPERSCRIPT italic_n × italic_m end_POSTSUPERSCRIPT is constant, mn𝑚𝑛m\leq nitalic_m ≤ italic_n, and rank(𝐁)=mrank𝐁𝑚\operatorname{rank}(\mathbf{B})=mroman_rank ( bold_B ) = italic_m, the output 𝐲(𝐪)=𝐁𝐪𝐲𝐪superscript𝐁top𝐪\mathbf{y}(\mathbf{q})=\mathbf{B}^{\top}\mathbf{q}bold_y ( bold_q ) = bold_B start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT bold_q always has relative degree 2 as one can check that rank(𝐀(𝐪))=mrank𝐀𝐪𝑚\operatorname{rank}(\mathbf{A}(\mathbf{q}))=mroman_rank ( bold_A ( bold_q ) ) = italic_m for all 𝐪𝒬𝐪𝒬\mathbf{q}\in\mathcal{Q}bold_q ∈ caligraphic_Q.When 𝐲𝐲\mathbf{y}bold_y has relative degree 2, the CBF candidate from (14) simplifies to:

h(𝐱)=ψ(𝐲(𝐪))12μ\pdv[stylefrac=]𝐲𝐪(𝐪)𝐪˙𝐤ψ(𝐲(𝐪))2,h(\mathbf{x})=\psi(\mathbf{y}(\mathbf{q}))-\tfrac{1}{2\mu}\|\pdv[style-frac=%\tfrac{]}{\mathbf{y}}{\mathbf{q}}(\mathbf{q})\dot{\mathbf{q}}-\mathbf{k}_{\psi%}(\mathbf{y}(\mathbf{q}))\|^{2},italic_h ( bold_x ) = italic_ψ ( bold_y ( bold_q ) ) - divide start_ARG 1 end_ARG start_ARG 2 italic_μ end_ARG ∥ [ italic_s italic_t italic_y italic_l italic_e - italic_f italic_r italic_a italic_c = divide start_ARG ] end_ARG start_ARG bold_y end_ARG bold_q ( bold_q ) over˙ start_ARG bold_q end_ARG - bold_k start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT ( bold_y ( bold_q ) ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ,(20)

where μ>0𝜇0\mu>0italic_μ > 0 and 𝐤ψ:𝒟1p:subscript𝐤𝜓subscript𝒟1superscript𝑝\mathbf{k}_{\psi}\,:\,\mathcal{D}_{1}\rightarrow\mathbb{R}^{p}bold_k start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT : caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT → blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT is any continuously differentiable function satisfying (11) for all 𝐲(𝐪)𝒟1𝒞1𝐲𝐪subscript𝒟1superset-ofsubscript𝒞1\mathbf{y}(\mathbf{q})\in\mathcal{D}_{1}\supset\mathcal{C}_{1}bold_y ( bold_q ) ∈ caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊃ caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. The following corollary illustrates that (20) is a CBF for (17) provided ψ𝜓\psiitalic_ψ satisfies (10) and (19) has full row rank on a set containing 𝒞𝒞\mathcal{C}caligraphic_C.

Corollary 1.

Consider system (17) with twice continuously differentiable output 𝐲:𝒬p:𝐲𝒬superscript𝑝\mathbf{y}\,:\,\mathcal{Q}\rightarrow\mathbb{R}^{p}bold_y : caligraphic_Q → blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT, the configuration constraint ψ:p:𝜓superscript𝑝\psi\,:\,\mathbb{R}^{p}\rightarrow\mathbb{R}italic_ψ : blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT → blackboard_R defining a set 𝒞𝒬𝒞𝒬\mathcal{C}\subset\mathcal{Q}caligraphic_C ⊂ caligraphic_Q as in (18), and the CBF candidate h:𝒳:𝒳h\,:\,\mathcal{X}\rightarrow\mathbb{R}italic_h : caligraphic_X → blackboard_R as in (20) defining a set 𝒮𝒞×n𝒮𝒞superscript𝑛\mathcal{S}\subset\mathcal{C}\times\mathbb{R}^{n}caligraphic_S ⊂ caligraphic_C × blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT as in (2). Provided that ψ𝜓\psiitalic_ψ satisfies (10) on a set 𝒟1𝒞1subscript𝒞1subscript𝒟1\mathcal{D}_{1}\supset\mathcal{C}_{1}caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊃ caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, with 𝒞1psubscript𝒞1superscript𝑝\mathcal{C}_{1}\subset\mathbb{R}^{p}caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊂ blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT as in (9), rank(𝐀(𝐪))=prank𝐀𝐪𝑝\operatorname{rank}(\mathbf{A}(\mathbf{q}))=proman_rank ( bold_A ( bold_q ) ) = italic_p for all 𝐪1𝒞𝐪subscript1superset-of𝒞\mathbf{q}\in\mathcal{E}_{1}\supset\mathcal{C}bold_q ∈ caligraphic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊃ caligraphic_C with 1×n𝒟subscript1superscript𝑛𝒟\mathcal{E}\coloneqq\mathcal{E}_{1}\times\mathbb{R}^{n}\subseteq\mathcal{D}caligraphic_E ≔ caligraphic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT × blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ⊆ caligraphic_D, then hhitalic_h is a CBF for (17). Moreover, any locally Lipschitz controller 𝐤:m:𝐤superscript𝑚\mathbf{k}\,:\,\mathcal{E}\rightarrow\mathbb{R}^{m}bold_k : caligraphic_E → blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT that renders 𝒮𝒮\mathcal{S}caligraphic_S forward invariant for the closed-loop system (17) ensures that 𝐪(t)𝒞𝐪𝑡𝒞\mathbf{q}(t)\in\mathcal{C}bold_q ( italic_t ) ∈ caligraphic_C for all tI(𝐱0)𝑡𝐼subscript𝐱0t\in I(\mathbf{x}_{0})italic_t ∈ italic_I ( bold_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ).

Proof.

As rank(𝐀(𝐪))=prank𝐀𝐪𝑝\operatorname{rank}(\mathbf{A}(\mathbf{q}))=proman_rank ( bold_A ( bold_q ) ) = italic_p for all 𝐪1𝐪subscript1\mathbf{q}\in\mathcal{E}_{1}bold_q ∈ caligraphic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, 𝐲𝐲\mathbf{y}bold_y has relative degree 2 on \mathcal{E}caligraphic_E and since 𝒮𝒞×n𝒮𝒞superscript𝑛\mathcal{S}\subset\mathcal{C}\times\mathbb{R}^{n}caligraphic_S ⊂ caligraphic_C × blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT and 𝒞1𝒞subscript1\mathcal{C}\subset\mathcal{E}_{1}caligraphic_C ⊂ caligraphic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, we have 𝒮𝒮\mathcal{S}\subset\mathcal{E}caligraphic_S ⊂ caligraphic_E. Finally, since 𝒟𝒟\mathcal{E}\subseteq\mathcal{D}caligraphic_E ⊆ caligraphic_D the conditions of Theorem 1 hold, implying that hhitalic_h as in (20) is a CBF for (17) on 𝒮𝒮\mathcal{S}caligraphic_S.∎

Focusing on robotic systems (16), rather than general control affine systems (1), offers various benefits due to the structural properties of (16). In particular, the relative degree of 𝐲𝐲\mathbf{y}bold_y depends only on 𝐪𝐪\mathbf{q}bold_q, implying that the relative degree can be verified over a lower-dimensional space.This often allows one to restrict the constraint set so that 𝐲𝐲\mathbf{y}bold_y has relative degree 2 on 𝒞𝒞\mathcal{C}caligraphic_C by construction – a procedure exemplified in Sec. V-B.Moreover, when 𝐲𝐲\mathbf{y}bold_y has relative degree 2, the resulting CBF (20) may be defined with a general α𝒦e𝛼superscriptsubscript𝒦𝑒\alpha\in\mathcal{K}_{\infty}^{e}italic_α ∈ caligraphic_K start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT, rather than a smooth globally Lipschitz one as in (14). This formulation also does not require defining the λisubscript𝜆𝑖\lambda_{i}italic_λ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT parameters in (14).

V Simulations and Hardware Experiments

Constructive Safety-Critical Control: Synthesizing Control Barrier Functions for Partially Feedback Linearizable Systems (2)

Constructive Safety-Critical Control: Synthesizing Control Barrier Functions for Partially Feedback Linearizable Systems (3)

Constructive Safety-Critical Control: Synthesizing Control Barrier Functions for Partially Feedback Linearizable Systems (4)

Constructive Safety-Critical Control: Synthesizing Control Barrier Functions for Partially Feedback Linearizable Systems (5)

V-A Pendulum on a Cart

We illustrate333Code and further details of our implementation available at https://github.com/maxhcohen/ReducedOrderModelCBFs.jl the ideas presented herein using a canonical example of an underactuated robotic system, the pendulum on a cart. The configuration 𝐪=(x,θ)×𝕊1𝒬𝐪𝑥𝜃superscript𝕊1𝒬\mathbf{q}=(x,\theta)\in\mathbb{R}\times\mathbb{S}^{1}\eqqcolon\mathcal{Q}bold_q = ( italic_x , italic_θ ) ∈ blackboard_R × blackboard_S start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT ≕ caligraphic_Q consists of the planar position of the cart x𝑥x\in\mathbb{R}italic_x ∈ blackboard_R and the angle of a pendulum mounted on the cart θ𝕊1𝜃superscript𝕊1\theta\in\mathbb{S}^{1}italic_θ ∈ blackboard_S start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT with dynamics:

𝐃(𝐪)=𝐃𝐪absent\displaystyle\mathbf{D}(\mathbf{q})=bold_D ( bold_q ) =[mc+mpmplcosθmplcosθmpl2],matrixsubscript𝑚𝑐subscript𝑚𝑝subscript𝑚𝑝𝑙𝜃subscript𝑚𝑝𝑙𝜃subscript𝑚𝑝superscript𝑙2\displaystyle\begin{bmatrix}m_{c}+m_{p}&m_{p}l\cos\theta\\m_{p}l\cos\theta&m_{p}l^{2}\end{bmatrix},[ start_ARG start_ROW start_CELL italic_m start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT + italic_m start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT end_CELL start_CELL italic_m start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT italic_l roman_cos italic_θ end_CELL end_ROW start_ROW start_CELL italic_m start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT italic_l roman_cos italic_θ end_CELL start_CELL italic_m start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT italic_l start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_CELL end_ROW end_ARG ] ,𝐆(𝐪)=𝐆𝐪absent\displaystyle\mathbf{G}(\mathbf{q})=bold_G ( bold_q ) =[0mpglsinθ],matrix0subscript𝑚𝑝𝑔𝑙𝜃\displaystyle\begin{bmatrix}0\\m_{p}gl\sin\theta\end{bmatrix},[ start_ARG start_ROW start_CELL 0 end_CELL end_ROW start_ROW start_CELL italic_m start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT italic_g italic_l roman_sin italic_θ end_CELL end_ROW end_ARG ] ,
𝐂(𝐪,𝐪˙)=𝐂𝐪˙𝐪absent\displaystyle\mathbf{C}(\mathbf{q},\dot{\mathbf{q}})=bold_C ( bold_q , over˙ start_ARG bold_q end_ARG ) =[0mplθ˙sinθ00],matrix0subscript𝑚𝑝𝑙˙𝜃𝜃00\displaystyle\begin{bmatrix}0&-m_{p}l\dot{\theta}\sin\theta\\0&0\end{bmatrix},[ start_ARG start_ROW start_CELL 0 end_CELL start_CELL - italic_m start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT italic_l over˙ start_ARG italic_θ end_ARG roman_sin italic_θ end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL 0 end_CELL end_ROW end_ARG ] ,𝐁(𝐪)=𝐁𝐪absent\displaystyle\mathbf{B}(\mathbf{q})=bold_B ( bold_q ) =[10],matrix10\displaystyle\begin{bmatrix}1\\0\end{bmatrix},[ start_ARG start_ROW start_CELL 1 end_CELL end_ROW start_ROW start_CELL 0 end_CELL end_ROW end_ARG ] ,

where mc,mp>0subscript𝑚𝑐subscript𝑚𝑝subscriptabsent0m_{c},m_{p}\in\mathbb{R}_{>0}italic_m start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT , italic_m start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUBSCRIPT > 0 end_POSTSUBSCRIPT denote the mass of the cart and pendulum, respectively, l>0𝑙subscriptabsent0l\in\mathbb{R}_{>0}italic_l ∈ blackboard_R start_POSTSUBSCRIPT > 0 end_POSTSUBSCRIPT denotes the length of the pendulum, and g>0𝑔subscriptabsent0g\in\mathbb{R}_{>0}italic_g ∈ blackboard_R start_POSTSUBSCRIPT > 0 end_POSTSUBSCRIPT denotes the acceleration due to gravity. We now demonstrate how the choice of output affects the ability to construct CBFs. Let 𝐲(𝐪)=x𝐲𝐪𝑥\mathbf{y}(\mathbf{q})=xbold_y ( bold_q ) = italic_x so that our safety constraint depends only on the position of the cart. In this case, the decoupling matrix is 𝐀(𝐪)=mpl2det𝐃(𝐪)𝐀𝐪subscript𝑚𝑝superscript𝑙2𝐃𝐪\mathbf{A}(\mathbf{q})=\frac{m_{p}l^{2}}{\det\mathbf{D}(\mathbf{q})}bold_A ( bold_q ) = divide start_ARG italic_m start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT italic_l start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG start_ARG roman_det bold_D ( bold_q ) end_ARG, which has rank 1 for all 𝐪𝒬𝐪𝒬\mathbf{q}\in\mathcal{Q}bold_q ∈ caligraphic_Q implying that any function of the form (20) with 𝐲(𝐪)=x𝐲𝐪𝑥\mathbf{y}(\mathbf{q})=xbold_y ( bold_q ) = italic_x and ψ𝜓\psiitalic_ψ satisfying (10) is a CBF for this system. On the other hand, when 𝐲(𝐪)=θ𝐲𝐪𝜃\mathbf{y}(\mathbf{q})=\thetabold_y ( bold_q ) = italic_θ, we have 𝐀(𝐪)=mplcosθdet𝐃(𝐪),𝐀𝐪subscript𝑚𝑝𝑙𝜃𝐃𝐪\mathbf{A}(\mathbf{q})=\frac{-m_{p}l\cos\theta}{\det\mathbf{D}(\mathbf{q})},bold_A ( bold_q ) = divide start_ARG - italic_m start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT italic_l roman_cos italic_θ end_ARG start_ARG roman_det bold_D ( bold_q ) end_ARG , which has rank 1 so long as cosθ0𝜃0\cos\theta\neq 0roman_cos italic_θ ≠ 0. Hence, any function of the form (20) with ψ𝜓\psiitalic_ψ satisfying (10) is a CBF for this system provided that the constraint set 𝒞𝒞\mathcal{C}caligraphic_C does not contain points such that cosθ=0𝜃0\cos\theta=0roman_cos italic_θ = 0. Using these observations, we construct two CBFs for the two different outputs using the configuration constraints ψ(𝐲(𝐪))=xmaxx𝜓𝐲𝐪subscript𝑥𝑥\psi(\mathbf{y}(\mathbf{q}))=x_{\max}-xitalic_ψ ( bold_y ( bold_q ) ) = italic_x start_POSTSUBSCRIPT roman_max end_POSTSUBSCRIPT - italic_x and ψ(𝐲(𝐪))=θmax2(θdθ)2𝜓𝐲𝐪superscriptsubscript𝜃2superscriptsubscript𝜃d𝜃2\psi(\mathbf{y}(\mathbf{q}))=\theta_{\max}^{2}-(\theta_{\mathrm{d}}-\theta)^{2}italic_ψ ( bold_y ( bold_q ) ) = italic_θ start_POSTSUBSCRIPT roman_max end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT - ( italic_θ start_POSTSUBSCRIPT roman_d end_POSTSUBSCRIPT - italic_θ ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT, respectively, which require the position of the cart to remain less than xmaxsubscript𝑥x_{\max}italic_x start_POSTSUBSCRIPT roman_max end_POSTSUBSCRIPT and requires the angle of the pendulum to satisfy |θθd|θmax𝜃subscript𝜃dsubscript𝜃|\theta-\theta_{\mathrm{d}}|\leq\theta_{\max}| italic_θ - italic_θ start_POSTSUBSCRIPT roman_d end_POSTSUBSCRIPT | ≤ italic_θ start_POSTSUBSCRIPT roman_max end_POSTSUBSCRIPT with θd𝕊1subscript𝜃𝑑superscript𝕊1\theta_{d}\in\mathbb{S}^{1}italic_θ start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ∈ blackboard_S start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT a desired angle of the pendulum. The gradients of each constraint are given by \pdvψ𝐲(x)=1\pdv𝜓𝐲𝑥1\pdv{\psi}{\mathbf{y}}(x)=-1italic_ψ bold_y ( italic_x ) = - 1 and \pdvψ𝐲(θ)=2(θdθ)\pdv𝜓𝐲𝜃2subscript𝜃d𝜃\pdv{\psi}{\mathbf{y}}(\theta)=-2(\theta_{\mathrm{d}}-\theta)italic_ψ bold_y ( italic_θ ) = - 2 ( italic_θ start_POSTSUBSCRIPT roman_d end_POSTSUBSCRIPT - italic_θ ), respectively, which satisfy (10) for 𝒟1=subscript𝒟1\mathcal{D}_{1}=\mathbb{R}caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = blackboard_R. These constraints are used to construct 𝐤ψsubscript𝐤𝜓\mathbf{k}_{\psi}bold_k start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT satisfying (11) using (12) and then used to construct CBFs as in (20) whose corresponding safe sets are illustrated in Fig. 2. These CBFs are subsequently used to construct controllers as in (4) that filter a nominal controller that attempts to drive the cart to a position beyond xmaxsubscript𝑥x_{\max}italic_x start_POSTSUBSCRIPT roman_max end_POSTSUBSCRIPT and a nominal controller that applies no input, respectively. The results of applying such controllers are illustrated in Fig. 2. As guaranteed by Corollary 1, such a controller ensures forward invariance of 𝒮𝒮\mathcal{S}caligraphic_S and satisfaction of each constraint.

V-B Planar Quadrotor

We now apply our approach to a planar quadrotor with configuration 𝐪=(x,z,θ)𝒬=2×𝕊1𝐪𝑥𝑧𝜃𝒬superscript2superscript𝕊1\mathbf{q}=(x,z,\theta)\in\mathcal{Q}=\mathbb{R}^{2}\times\mathbb{S}^{1}bold_q = ( italic_x , italic_z , italic_θ ) ∈ caligraphic_Q = blackboard_R start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT × blackboard_S start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT consisting of the horizontal x𝑥xitalic_x and vertical z𝑧zitalic_z position of the quadrotor and the orientation θ𝜃\thetaitalic_θ of the quadrotor with respect to the horizontal plane.The dynamics are in the form of (16) with[8]:

[m000m000I]𝐃(𝐪)[x¨z¨θ¨]𝐪¨+[0mg0]𝐆(𝐪)=[sinθ0cosθ001]𝐁(𝐪)[FM]𝐮,subscriptmatrix𝑚000𝑚000𝐼𝐃𝐪subscriptmatrix¨𝑥¨𝑧¨𝜃¨𝐪subscriptmatrix0𝑚𝑔0𝐆𝐪subscriptmatrix𝜃0𝜃001𝐁𝐪subscriptmatrix𝐹𝑀𝐮\underbrace{\begin{bmatrix}m&0&0\\0&m&0\\0&0&I\end{bmatrix}}_{\mathbf{D}(\mathbf{q})}\underbrace{\begin{bmatrix}\ddot{x%}\\\ddot{z}\\\ddot{\theta}\end{bmatrix}}_{\ddot{\mathbf{q}}}+\underbrace{\begin{bmatrix}0\\mg\\0\end{bmatrix}}_{\mathbf{G}(\mathbf{q})}=\underbrace{\begin{bmatrix}\sin\theta%&0\\\cos\theta&0\\0&-1\end{bmatrix}}_{\mathbf{B}(\mathbf{q})}\underbrace{\begin{bmatrix}F\\M\end{bmatrix}}_{\mathbf{u}},under⏟ start_ARG [ start_ARG start_ROW start_CELL italic_m end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL italic_m end_CELL start_CELL 0 end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL italic_I end_CELL end_ROW end_ARG ] end_ARG start_POSTSUBSCRIPT bold_D ( bold_q ) end_POSTSUBSCRIPT under⏟ start_ARG [ start_ARG start_ROW start_CELL over¨ start_ARG italic_x end_ARG end_CELL end_ROW start_ROW start_CELL over¨ start_ARG italic_z end_ARG end_CELL end_ROW start_ROW start_CELL over¨ start_ARG italic_θ end_ARG end_CELL end_ROW end_ARG ] end_ARG start_POSTSUBSCRIPT over¨ start_ARG bold_q end_ARG end_POSTSUBSCRIPT + under⏟ start_ARG [ start_ARG start_ROW start_CELL 0 end_CELL end_ROW start_ROW start_CELL italic_m italic_g end_CELL end_ROW start_ROW start_CELL 0 end_CELL end_ROW end_ARG ] end_ARG start_POSTSUBSCRIPT bold_G ( bold_q ) end_POSTSUBSCRIPT = under⏟ start_ARG [ start_ARG start_ROW start_CELL roman_sin italic_θ end_CELL start_CELL 0 end_CELL end_ROW start_ROW start_CELL roman_cos italic_θ end_CELL start_CELL 0 end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL - 1 end_CELL end_ROW end_ARG ] end_ARG start_POSTSUBSCRIPT bold_B ( bold_q ) end_POSTSUBSCRIPT under⏟ start_ARG [ start_ARG start_ROW start_CELL italic_F end_CELL end_ROW start_ROW start_CELL italic_M end_CELL end_ROW end_ARG ] end_ARG start_POSTSUBSCRIPT bold_u end_POSTSUBSCRIPT ,

where 𝐂(𝐪,𝐪˙)=𝟎𝐂𝐪˙𝐪0\mathbf{C}(\mathbf{q},\dot{\mathbf{q}})=\mathbf{0}bold_C ( bold_q , over˙ start_ARG bold_q end_ARG ) = bold_0, m,I>0𝑚𝐼subscriptabsent0m,I\in\mathbb{R}_{>0}italic_m , italic_I ∈ blackboard_R start_POSTSUBSCRIPT > 0 end_POSTSUBSCRIPT are the mass and inertia, g>0𝑔subscriptabsent0g\in\mathbb{R}_{>0}italic_g ∈ blackboard_R start_POSTSUBSCRIPT > 0 end_POSTSUBSCRIPT is the acceleration due to gravity, and F𝐹F\in\mathbb{R}italic_F ∈ blackboard_R and M𝑀M\in\mathbb{R}italic_M ∈ blackboard_R are the thrust and moment applied by the propellers. Our objective is to design a controller that keeps the quadrotor’s height above a specified value, which is captured by the output 𝐲(𝐪)=z𝐲𝐪𝑧\mathbf{y}(\mathbf{q})=zbold_y ( bold_q ) = italic_z and the safety constraint ψ(𝐲(𝐪))=zzmin𝜓𝐲𝐪𝑧subscript𝑧\psi(\mathbf{y}(\mathbf{q}))=z-z_{\min}italic_ψ ( bold_y ( bold_q ) ) = italic_z - italic_z start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT. To check if this constraint leads to a CBF via Corollary 1, we first compute \pdvψ𝐲(z)=1\pdv𝜓𝐲𝑧1\pdv{\psi}{\mathbf{y}}(z)=1italic_ψ bold_y ( italic_z ) = 1 to find that our safety constraint ψ𝜓\psiitalic_ψ satisfies (10) for 𝒟1=subscript𝒟1\mathcal{D}_{1}=\mathbb{R}caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = blackboard_R. We then compute (19) to find that 𝐀(𝐪)=cosθm𝐀𝐪𝜃𝑚\mathbf{A}(\mathbf{q})=\frac{\cos\theta}{m}bold_A ( bold_q ) = divide start_ARG roman_cos italic_θ end_ARG start_ARG italic_m end_ARG has rank 1 provided cosθ0𝜃0\cos\theta\neq 0roman_cos italic_θ ≠ 0. However, since the configuration constraint places no limits on θ𝜃\thetaitalic_θ, such points are contained in 𝒞𝒞\mathcal{C}caligraphic_C and, consequently, this ψ𝜓\psiitalic_ψ does not lead to a valid CBF. That 𝐀𝐀\mathbf{A}bold_A drops rank on 𝒞𝒞\mathcal{C}caligraphic_C indicates that these particular choices of 𝐲𝐲\mathbf{y}bold_y and ψ𝜓\psiitalic_ψ are not compatible with the system’s actuation capabilities, and must be refined so that 𝐀𝐀\mathbf{A}bold_A has full rank on 𝒞𝒞\mathcal{C}caligraphic_C.To this end, we modify our output function to 𝐲(𝐪)=(z,θ)𝐲𝐪𝑧𝜃\mathbf{y}(\mathbf{q})=(z,\theta)bold_y ( bold_q ) = ( italic_z , italic_θ ) and our constraint function to ψ(𝐲(𝐪))=1(zzc)2(zczmin)2θ2θmax2,𝜓𝐲𝐪1superscript𝑧subscript𝑧𝑐2superscriptsubscript𝑧𝑐subscript𝑧2superscript𝜃2superscriptsubscript𝜃2\psi(\mathbf{y}(\mathbf{q}))=1-\tfrac{(z-z_{c})^{2}}{(z_{c}-z_{\min})^{2}}-%\tfrac{\theta^{2}}{\theta_{\max}^{2}},italic_ψ ( bold_y ( bold_q ) ) = 1 - divide start_ARG ( italic_z - italic_z start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG start_ARG ( italic_z start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT - italic_z start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG - divide start_ARG italic_θ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG start_ARG italic_θ start_POSTSUBSCRIPT roman_max end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG , which defines an ellipse in the (z,θ)𝑧𝜃(z,\theta)( italic_z , italic_θ ) space with center (zc,0)subscript𝑧𝑐0(z_{c},0)( italic_z start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT , 0 ), width 2(zczmin)2subscript𝑧𝑐subscript𝑧2(z_{c}-z_{\min})2 ( italic_z start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT - italic_z start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT ), and height 2θmax2subscript𝜃2\theta_{\max}2 italic_θ start_POSTSUBSCRIPT roman_max end_POSTSUBSCRIPT. This constraint ensures that zzmin𝑧subscript𝑧z\geq z_{\min}italic_z ≥ italic_z start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT and |θ|θmax𝜃subscript𝜃|\theta|\leq\theta_{\max}| italic_θ | ≤ italic_θ start_POSTSUBSCRIPT roman_max end_POSTSUBSCRIPT whenever ψ(𝐲(𝐪))0𝜓𝐲𝐪0\psi(\mathbf{y}(\mathbf{q}))\geq 0italic_ψ ( bold_y ( bold_q ) ) ≥ 0.To check if ψ𝜓\psiitalic_ψ yields a CBF, we compute \pdvψ𝐲(z,θ)=[2(zzc)(zczmin)22θ]\pdv𝜓𝐲𝑧𝜃delimited-[]2𝑧subscript𝑧𝑐superscriptsubscript𝑧𝑐subscript𝑧22𝜃\pdv{\psi}{\mathbf{y}}(z,\theta)=[\tfrac{-2(z-z_{c})}{(z_{c}-z_{\min})^{2}}\;-%2\theta]italic_ψ bold_y ( italic_z , italic_θ ) = [ divide start_ARG - 2 ( italic_z - italic_z start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ) end_ARG start_ARG ( italic_z start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT - italic_z start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG - 2 italic_θ ], which satisfies (10) for 𝒟1=2subscript𝒟1superscript2\mathcal{D}_{1}=\mathbb{R}^{2}caligraphic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = blackboard_R start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT, and 𝐀(𝐪)=diag(cosθm,1I)𝐀𝐪diag𝜃𝑚1𝐼\mathbf{A}(\mathbf{q})=\operatorname{diag}(\tfrac{\cos\theta}{m},-\tfrac{1}{I})bold_A ( bold_q ) = roman_diag ( divide start_ARG roman_cos italic_θ end_ARG start_ARG italic_m end_ARG , - divide start_ARG 1 end_ARG start_ARG italic_I end_ARG ), where diag()diag\operatorname{diag}(\cdot)roman_diag ( ⋅ ) creates a diagonal matrix, which has rank 2 provided cosθ0𝜃0\cos\theta\neq 0roman_cos italic_θ ≠ 0. By taking θmax<π2subscript𝜃𝜋2\theta_{\max}<\tfrac{\pi}{2}italic_θ start_POSTSUBSCRIPT roman_max end_POSTSUBSCRIPT < divide start_ARG italic_π end_ARG start_ARG 2 end_ARG we have the existence of a set 1𝒞𝒞subscript1\mathcal{E}_{1}\supset\mathcal{C}caligraphic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊃ caligraphic_C such that rank(𝐀(𝐪))=2rank𝐀𝐪2\operatorname{rank}(\mathbf{A}(\mathbf{q}))=2roman_rank ( bold_A ( bold_q ) ) = 2 for all 𝐪1𝐪subscript1\mathbf{q}\in\mathcal{E}_{1}bold_q ∈ caligraphic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, implying that this choice of 𝐲𝐲\mathbf{y}bold_y and ψ𝜓\psiitalic_ψ leads to a CBF by Corollary 1. Constructing a CBF using this constraint in (20), where 𝐤ψsubscript𝐤𝜓\mathbf{k}_{\psi}bold_k start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT is from (12), and applying the resulting controller (4) to the system, where 𝐤dsubscript𝐤d\mathbf{k}_{\rm{d}}bold_k start_POSTSUBSCRIPT roman_d end_POSTSUBSCRIPT attempts to stabilize the system to x=0𝑥0x=0italic_x = 0, leads to the results in Fig. 3 and Fig. 4, where the quadrotor falls from its initial state to a height of zminsubscript𝑧z_{\min}italic_z start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT and maintains its height there for all time.The process outlined above emphasizes that designing a CBF requires carefully selecting the output 𝐲𝐲\mathbf{y}bold_y and constraint ψ𝜓\psiitalic_ψ to ensure compatibility with the system’s actuation capabilities. Importantly, the results in Sec. III and IV guide this selection by providing verifiable conditions on 𝐲𝐲\mathbf{y}bold_y and ψ𝜓\psiitalic_ψ, which enables the automatic construction of a CBF when satisfied.

Constructive Safety-Critical Control: Synthesizing Control Barrier Functions for Partially Feedback Linearizable Systems (6)
Constructive Safety-Critical Control: Synthesizing Control Barrier Functions for Partially Feedback Linearizable Systems (7)

V-C Quadrotor Hardware Experiments

We now extend the preceding example to a 3D quadrotor and illustrate the efficacy of our approach on hardware. The hardware platform is described in [22] and is modeled asa control affine system (1)with state 𝐱=(𝐩,𝐪,𝐯)3×SO(3)×3𝐱𝐩𝐪𝐯superscript3SO3superscript3\mathbf{x}=(\mathbf{p},\mathbf{q},\mathbf{v})\in\mathbb{R}^{3}\times\rm{SO}(3)%\times\mathbb{R}^{3}bold_x = ( bold_p , bold_q , bold_v ) ∈ blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT × roman_SO ( 3 ) × blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT representing the position 𝐩𝐩\mathbf{p}bold_p, orientation 𝐪𝐪\mathbf{q}bold_q (represented as a quaternion), and velocity 𝐯𝐯\mathbf{v}bold_v, and control input 𝐮=(𝝎,τ)𝔰𝔬(3)×𝐮𝝎𝜏𝔰𝔬3\mathbf{u}=(\bm{\omega},\tau)\in\mathfrak{so}(3)\times\mathbb{R}bold_u = ( bold_italic_ω , italic_τ ) ∈ fraktur_s fraktur_o ( 3 ) × blackboard_R, where 𝝎𝝎\bm{\omega}bold_italic_ω is the angular rate and τ𝜏\tauitalic_τ is the thrust. A full expression of the dynamics can be found in [22]. Our control objective is to keep the quadrotor’s height above zminsubscript𝑧z_{\min}italic_z start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT, where 𝐩=(x,y,z)𝐩𝑥𝑦𝑧\mathbf{p}=(x,y,z)bold_p = ( italic_x , italic_y , italic_z ) and z𝑧zitalic_z denotes the quadrotor’s height. To this end, we choose our output444For the model described in [22], the first component of 𝐲𝐲\mathbf{y}bold_y has relative degree two whereas the second and third have relative degree one. The theory developed in Sec. III can be modified to account for such a situation at the expense of additional notation by transforming the output dynamics into a mixed relative degree cascaded system (cf. [9, 10]), but a formal presentation of such results is omitted here in the interest of space. as 𝐲(𝐱)=(z,qx,qy)𝐲𝐱𝑧subscript𝑞𝑥subscript𝑞𝑦\mathbf{y}(\mathbf{x})=(z,q_{x},q_{y})bold_y ( bold_x ) = ( italic_z , italic_q start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT , italic_q start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT ), where qxsubscript𝑞𝑥q_{x}italic_q start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT and qysubscript𝑞𝑦q_{y}italic_q start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT are components of the quaternion such that 𝐪=qw+qxi+qyj+qzk𝐪subscript𝑞𝑤subscript𝑞𝑥𝑖subscript𝑞𝑦𝑗subscript𝑞𝑧𝑘\mathbf{q}=q_{w}+q_{x}i+q_{y}j+q_{z}kbold_q = italic_q start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT + italic_q start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT italic_i + italic_q start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT italic_j + italic_q start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT italic_k. Given this output,we define ψ(𝐲(𝐱))=zzminλ(2qx2+2qy2)𝜓𝐲𝐱𝑧subscript𝑧𝜆2superscriptsubscript𝑞𝑥22superscriptsubscript𝑞𝑦2\psi(\mathbf{y}(\mathbf{x}))=z-z_{\min}-\lambda(2q_{x}^{2}+2q_{y}^{2})italic_ψ ( bold_y ( bold_x ) ) = italic_z - italic_z start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT - italic_λ ( 2 italic_q start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + 2 italic_q start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) where λ>0𝜆0\lambda>0italic_λ > 0. This constraint ensures that ψ(𝐲(𝐱))0zzmin𝜓𝐲𝐱0𝑧subscript𝑧\psi(\mathbf{y}(\mathbf{x}))\geq 0\implies z\geq z_{\min}italic_ψ ( bold_y ( bold_x ) ) ≥ 0 ⟹ italic_z ≥ italic_z start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT and requires the quadrotor’s orientation to remain level when z=zmin𝑧subscript𝑧z=z_{\min}italic_z = italic_z start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT.Leveraging the constructions in Sec. III, this leads to the CBF candidate:

h(𝐱)=ψ(𝐲(𝐱))12L𝐟𝐲(𝐱)𝐤1(𝐲(𝐱))2,𝐱𝜓𝐲𝐱12superscriptnormsubscript𝐿𝐟𝐲𝐱subscript𝐤1𝐲𝐱2h(\mathbf{x})=\psi(\mathbf{y}(\mathbf{x}))-\tfrac{1}{2}\|L_{\mathbf{f}}\mathbf%{y}(\mathbf{x})-\mathbf{k}_{1}(\mathbf{y}(\mathbf{x}))\|^{2},italic_h ( bold_x ) = italic_ψ ( bold_y ( bold_x ) ) - divide start_ARG 1 end_ARG start_ARG 2 end_ARG ∥ italic_L start_POSTSUBSCRIPT bold_f end_POSTSUBSCRIPT bold_y ( bold_x ) - bold_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( bold_y ( bold_x ) ) ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ,

where 𝐤1:33:subscript𝐤1superscript3superscript3\mathbf{k}_{1}\,:\,\mathbb{R}^{3}\rightarrow\mathbb{R}^{3}bold_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT : blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT → blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT is defined as in (12).This CBF is used to construct a safety filter as in (4), where 𝐤dsubscript𝐤d\mathbf{k}_{\mathrm{d}}bold_k start_POSTSUBSCRIPT roman_d end_POSTSUBSCRIPT corresponds to commands given via joystick that lift the quadrotor up before lowering it to the ground. Applying this safety filter to the system produces the results in Fig. 1 and Fig. 5, where z𝑧zitalic_z remains above zminsubscript𝑧z_{\min}italic_z start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT and hhitalic_h remains positive for all time.

Constructive Safety-Critical Control: Synthesizing Control Barrier Functions for Partially Feedback Linearizable Systems (8)

VI Conclusions

We presented a framework for synthesizing CBFs using ideas from feedback linearization, which were demonstrated both numerically and experimentally on underactuated robotic systems. Future research directions include characterizing the zero dynamics under CBF-based controllers.

References

  • [1]A.D. Ames, X.Xu, J.W. Grizzle, and P.Tabuada, “Control barrier function based quadratic programs for safety critical systems,” IEEE Trans. Autom. Control, vol.62, no.8, pp.3861–3876, 2017.
  • [2]M.H. Cohen, P.Ong, G.Bahati, and A.D. Ames, “Characterizing smooth safety filters via the implicit function theorem,” IEEE Contr. Syst. Lett., vol.7, pp.3890–3895, 2023.
  • [3]M.Krstic, “Inverse optimal safety filters,” IEEE Trans. Autom. Control, vol.69, no.1, pp.16–31, 2024.
  • [4]X.Xu, J.W. Grizzle, P.Tabuada, and A.D. Ames, “Correctness guarantees for the composition of lane keeping and adaptive cruise control,” IEEE Trans. Autom. Sci. Eng., vol.15, no.3, pp.1216–1229, 2017.
  • [5]P.Zhao, R.Ghabcheloo, Y.Cheng, H.Abdi, and N.Hovakimyan, “Convex synthesis of control barrier functions under input constraints,” IEEE Contr. Syst. Lett., vol.7, pp.3102–3107, 2023.
  • [6]J.J. Choi, D.Lee, K.Sreenath, C.J. Tomlin, and S.L. Herbert, “Robust control barrier–value functions for safety-critical control,” in Proc. Conf. Decis. Control, pp.6814–6821, 2021.
  • [7]K.P. Wabersich, A.J. Taylor, J.J. Choi, K.Sreenath, C.J. Tomlin, A.D. Ames, and M.N. Zeilinger, “Data-driven safety filters: Hamilton-jacobi reachability, control barrier functions, and predictive methods for uncertain systems,” IEEE Control Syst. Mag., vol.43, no.5, pp.137–177, 2023.
  • [8]G.Wu and K.Sreenath, “Safety-critical control of a planar quadrotor,” in Proc. Amer. Control Conf., pp.2252–2258, 2016.
  • [9]A.J. Taylor, P.Ong, T.G. Molnar, and A.D. Ames, “Safe backstepping with control barrier functions,” in Proc. Conf. Decis. Control, pp.5775–5782, 2022.
  • [10]M.H. Cohen, T.G. Molnar, and A.D. Ames, “Safety-critical control for autonomous systems: Control barrier functions via reduced order models,” Annual Reviews in Control, vol.57, p.100947, 2024.
  • [11]I.Abel, D.Steeves, M.Krstić, and M.Janković, “Prescribed-time safety design for strict-feedback nonlinear systems,” IEEE Trans. Autom. Control, vol.69, no.3, pp.1464–1479, 2024.
  • [12]Q.Nguyen and K.Sreenath, “Exponential control barrier functions for enforcing high relative-degree safety-critical constraints,” in Proc. Amer. Control Conf., pp.322–328, 2016.
  • [13]X.Xu, “Constrained control of input–output linearizable systems using control sharing barrier functions,” Automatica, vol.87, pp.195–201, 2018.
  • [14]W.Xiao and C.Belta, “High order control barrier functions,” IEEE Trans. Autom. Control, vol.67, no.7, pp.3655–3662, 2022.
  • [15]X.Tan, W.S. Cortez, and D.V. Dimarogonas, “High-order barrier functions: robustness, safety and performance-critical control,” IEEE Trans. Autom. Control, vol.67, no.6, pp.3021–3028, 2022.
  • [16]A.Isidori, Nonlinear Control Systems.Springer, thirded., 1995.
  • [17]M.Jankovic, “Robust control barrier functions for constrained stabilization of nonlinear systems,” Automatica, vol.96, pp.359–367, 2018.
  • [18]M.H. Cohen and C.Belta, Adaptive and Learning-based Control of Safety-Critical Systems.Springer Nature, 2023.
  • [19]J.Breeden and D.Panagou, “Robust control barrier functions under high relative degree and input constraints for satellite trajectories,” Automatica, vol.155, 2023.
  • [20]E.D. Sontag, “A universal construction of Artstein’s theorem on nonlinear stabilization,” Syst. Control Lett., vol.13, pp.117–123, 1989.
  • [21]M.Krstić, I.Kanellakopoulus, and P.Kokotović, Nonlinear and Adaptive Control Design.Wiley, 1995.
  • [22]R.K. Cosner, I.Sadalski, J.K. Woo, P.Culbertson, and A.D. Ames, “Generative modeling of residuals for real-time risk-sensitive safety with discrete-time control barrier functions,” arXiv preprint arXiv:2311.05802, 2023.
Constructive Safety-Critical Control: Synthesizing Control Barrier Functions for Partially Feedback Linearizable Systems (2024)
Top Articles
Latest Posts
Article information

Author: Catherine Tremblay

Last Updated:

Views: 6690

Rating: 4.7 / 5 (67 voted)

Reviews: 82% of readers found this page helpful

Author information

Name: Catherine Tremblay

Birthday: 1999-09-23

Address: Suite 461 73643 Sherril Loaf, Dickinsonland, AZ 47941-2379

Phone: +2678139151039

Job: International Administration Supervisor

Hobby: Dowsing, Snowboarding, Rowing, Beekeeping, Calligraphy, Shooting, Air sports

Introduction: My name is Catherine Tremblay, I am a precious, perfect, tasty, enthusiastic, inexpensive, vast, kind person who loves writing and wants to share my knowledge and understanding with you.