This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Composing Control Barrier Functions for Complex Safety Specifications

Tamas G. Molnar and Aaron D. Ames *This research is supported in part by the National Science Foundation (CPS Award #1932091) and Nodein Inc.T. G. Molnar and A. D. Ames are with the Department of Mechanical and Civil Engineering, California Institute of Technology, Pasadena, CA 91125, USA, tmolnar@caltech.edu, ames@caltech.edu.
Abstract

The increasing complexity of control systems necessitates control laws that guarantee safety w.r.t. complex combinations of constraints. In this letter, we propose a framework to describe compositional safety specifications with control barrier functions (CBFs). The specifications are formulated as Boolean compositions of state constraints, and we propose an algorithmic way to create a single continuously differentiable CBF that captures these constraints and enables safety-critical control. We describe the properties of the proposed CBF, and we demonstrate its efficacy by numerical simulations.

I INTRODUCTION

Control designs with formal safety guarantees have long been of interest in engineering. Safety is often captured as constraints on the system’s states that must be enforced for all time by the controller. To enable the satisfaction of state constraints with formal guarantees of safety, control barrier functions (CBFs) [1] have become a popular tool in nonlinear control design. As the complexity of safety-critical control systems increases, complex combinations of multiple safety constraints tend to arise, which creates a need for controllers incorporating multiple CBFs.

The literature contains an abundance of studies on multiple safety constraints. Some approaches directly used multiple CBFs in control design. For example, [2, 3] directly imposed multiple CBF constraints on the control input in optimization-based controllers; [4] synthesized controllers by switching between multiple CBFs whose superlevel set boundaries do not intersect; [5] investigated the compatibility of CBFs; [6] ensured feasible controllers with multiple CBFs; and [7, 8] addressed multi-objective constraints via barrier Lyapunov functions. These works usually linked safety constraints with AND logic: they maintained safety w.r.t. constraint 1 AND constraint 2, etc. Other approaches combined multiple constraints into a single CBF. These include versatile combinations, such as Boolean logic with both AND, OR and negation operations, which was established in [9, 10] by nonsmooth barrier functions. Similarly, [11] used Boolean logic to create a smooth CBF restricted to a safe set in the state space; [12] combined CBFs with AND logic via parameter adaptation; while [13, 14] used signal temporal logic to combine CBFs in a smooth manner.

In this letter, we propose a framework to capture complex safety specifications by CBFs. We combine multiple safety constraints via Boolean logic, and propose an algorithmic way to establish a single CBF for nontrivial safety specifications. Our method leverages both the Boolean logic from [9] and the smooth combination idea from [13], while merging the benefits of these approaches. We address multiple levels of logical compositions of safety constraints, i.e., arbitrary combinations of AND and OR logic, which was not established in [13], while we create a continuously differentiable CBF to avoid discontinuous systems like in [9]. Meanwhile, as opposed to [11], the stability of the safe set is guaranteed.

In Section II, we introduce CBFs and motivate multiple safety constraints. In Section III, we propose a single CBF candidate to address the compositions of multiple constraints. We also characterize its properties, and we use simulations to demonstrate its ability to address safety-critical control with nontrivial constraints. Section IV closes with conclusions.

II CONTROL BARRIER FUNCTIONS

We consider affine control systems with state xn{x\in\mathbb{R}^{n}}, control input um{u\in\mathbb{R}^{m}}, and dynamics:

x˙=f(x)+g(x)u,\dot{x}=f(x)+g(x)u, (1)

where f:nn{f:\mathbb{R}^{n}\to\mathbb{R}^{n}} and g:nn×m{g:\mathbb{R}^{n}\to\mathbb{R}^{n\times m}} are locally Lipschitz. Our goal is to design a controller k:nm{k:\mathbb{R}^{n}\to\mathbb{R}^{m}}, u=k(x){u=k(x)} such that the closed-loop system:

x˙=f(x)+g(x)k(x),\dot{x}=f(x)+g(x)k(x), (2)

satisfies certain safety specifications.

If kk is locally Lipschitz, then for any initial condition x(0)=x0n{x(0)=x_{0}\in\mathbb{R}^{n}} system (2) has a unique solution x(t){x(t)}, which we assume to exist for all t0{t\geq 0}. We say that the system is safe if the solution x(t)x(t) evolves inside a safe set 𝒞\mathcal{C}. Specifically, we call (2) safe w.r.t. 𝒞\mathcal{C} if x0𝒞x(t)𝒞{x_{0}\in\mathcal{C}\implies x(t)\in\mathcal{C}} t0{\forall t\geq 0}. We define the safe set as the 0-superlevel set of a continuously differentiable function h:n{h:\mathbb{R}^{n}\to\mathbb{R}}:

𝒞={xn:h(x)0},\mathcal{C}=\{x\in\mathbb{R}^{n}:h(x)\geq 0\}, (3)

assuming it is non-empty and has no isolated points. Later we extend this definition to more complex safety specifications.

The input uu affects safety through the derivative of hh:

h˙(x,u)=h(x)f(x)Lfh(x)+h(x)g(x)Lgh(x)u,\dot{h}(x,u)=\underbrace{\nabla h(x)f(x)}_{L_{f}h(x)}+\underbrace{\nabla h(x)g(x)}_{L_{g}h(x)}u, (4)

where LfhL_{f}h and LghL_{g}h are the Lie derivatives of hh along ff and gg. By leveraging this relationship, control barrier functions (CBFs) [1] provide controllers with formal safety guarantees.

Definition 1 ([1]).

Function hh is a control barrier function for (1) on n\mathbb{R}^{n} if there exists α𝒦e{\alpha\!\in\!\mathcal{K}_{\infty}^{\rm e}}111Function α:(b,a){\alpha:(-b,a)\to\mathbb{R}}, a,b>0{a,b>0} is of extended class-𝒦\mathcal{K} (α𝒦e{\alpha\in\mathcal{K}^{\rm e}}) if it is continuous, strictly increasing and α(0)=0{\alpha(0)=0}. Function α:{\alpha:\mathbb{R}\to\mathbb{R}} is of extended class-𝒦\mathcal{K}_{\infty} (α𝒦e{\alpha\in\mathcal{K}_{\infty}^{\rm e}}) if α𝒦e{\alpha\in\mathcal{K}^{\rm e}} and limr±α(r)=±{\lim_{r\to\pm\infty}\alpha(r)=\pm\infty}. such that for all xn{x\!\in\!\mathbb{R}^{n}}:

supumh˙(x,u)α(h(x)).\sup_{u\in\mathbb{R}^{m}}\dot{h}(x,u)\geq-\alpha\big{(}h(x)\big{)}. (5)

Note that the left-hand side of (5) is Lfh(x)L_{f}h(x) if Lgh(x)=0{L_{g}h(x)=0} and it is \infty otherwise. Thus, (5) is equivalent to222In (5)-(6), strict inequality (>>) can also be required rather than non-strict inequality (\geq) to ensure the continuity of the underlying controllers [15].:

Lgh(x)=0Lfh(x)+α(h(x))0.L_{g}h(x)=0\implies L_{f}h(x)+\alpha\big{(}h(x)\big{)}\geq 0. (6)

Given a CBF, [1] established safety-critical control.

Theorem 1 ([1, 16]).

If hh is a CBF for (1) on n\mathbb{R}^{n}, then any locally Lipschitz controller kk that satisfies:

h˙(x,k(x))α(h(x))\dot{h}\big{(}x,k(x)\big{)}\geq-\alpha\big{(}h(x)\big{)} (7)

for all x𝒞{x\in\mathcal{C}} renders (2) safe w.r.t. 𝒞\mathcal{C}. Furthermore, if (7) holds for all xn{x\in\mathbb{R}^{n}}, then 𝒞\mathcal{C} is asymptotically stable.

Accordingly, if the controller kk is synthesized such that (7) holds for all x𝒞{x\in\mathcal{C}}, then the closed-loop system evolves in the safe set: x0𝒞x(t)𝒞{x_{0}\in\mathcal{C}\implies x(t)\in\mathcal{C}} t0{\forall t\geq 0}. Moreover, even if the initial condition is outside 𝒞\mathcal{C}, i.e., x0𝒞{x_{0}\notin\mathcal{C}}, the system converges towards 𝒞\mathcal{C} if (7) is enforced for all xn{x\in\mathbb{R}^{n}} [16].

Condition (7) is often used as constraint in optimization to synthesize safe controllers. For example, a desired but not necessarily safe controller kd:nm{k_{\rm d}:\mathbb{R}^{n}\to\mathbb{R}^{m}} can be modified to a safe controller via the quadratic program (QP):

k(x)=argminumukd(x)2s.t.h˙(x,u)α(h(x)),\displaystyle\begin{split}k(x)=\underset{u\in\mathbb{R}^{m}}{\operatorname{argmin}}&\quad\|u-k_{\rm d}(x)\|^{2}\\[-3.0pt] \text{s.t.}&\quad\dot{h}(x,u)\geq-\alpha\big{(}h(x)\big{)},\end{split} (8)

also known as safety filter, which has explicit solution [17]:

k(x)\displaystyle k(x) ={kd(x)+max{0,η(x)}Lgh(x)Lgh(x)2,ifLgh(x)0,kd(x),ifLgh(x)=0,\displaystyle=\begin{cases}k_{\rm d}(x)+\max\{0,\eta(x)\}\frac{L_{g}h(x)^{\top}}{\|L_{g}h(x)\|^{2}},&{\rm if}\ L_{g}h(x)\neq 0,\\ k_{\rm d}(x),&{\rm if}\ L_{g}h(x)=0,\end{cases}
η(x)\displaystyle\eta(x) =Lfh(x)Lgh(x)kd(x)α(h(x)).\displaystyle=-L_{f}h(x)-L_{g}h(x)k_{\rm d}(x)-\alpha\big{(}h(x)\big{)}. (9)

II-A Motivation: Multiple CBFs

Controller (9) guarantees safety w.r.t. a single safe set 𝒞\mathcal{C}. However, there exist more complex safety specifications in practice that involve compositions of multiple sets. Such general specifications are discussed in the next section. As motivation, we first consider the case of enforcing multiple safety constraints simultaneously, given by the sets:

𝒞i={xn:hi(x)0},\mathcal{C}_{i}=\{x\in\mathbb{R}^{n}:h_{i}(x)\geq 0\}, (10)

and CBF candidates hih_{i}, with iI={1,2,,N}{i\in I=\{1,2,\ldots,N\}}. Our goal is to maintain x(t)𝒞i{x(t)\in\mathcal{C}_{i}} t0{\forall t\geq 0} and iI{\forall i\in I}, that corresponds to rendering the intersection of sets 𝒞i\mathcal{C}_{i} safe.

One may achieve this goal by enforcing multiple constraints on the input simultaneously, for example, by the QP:

k(x)=argminumukd(x)2s.t.h˙i(x,u)αi(hi(x))iI.\displaystyle\begin{split}k(x)=\underset{u\in\mathbb{R}^{m}}{\operatorname{argmin}}&\quad\|u-k_{\rm d}(x)\|^{2}\\[-3.0pt] \text{s.t.}&\quad\dot{h}_{i}(x,u)\geq-\alpha_{i}\big{(}h_{i}(x)\big{)}\quad\forall i\in I.\end{split} (11)

However, (11) may not be feasible (its solution may not exist) for arbitrary number of constraints. Even if each hih_{i} is CBF and consequently each individual constraint in (11) could be satisfied by a control input, the same input may not satisfy all constraints. For the feasibility of (11) we rather require:

supumminiI(h˙i(x,u)+αi(h(x)))0,\sup_{u\in\mathbb{R}^{m}}\min_{i\in I}\Big{(}\dot{h}_{i}(x,u)+\alpha_{i}\big{(}h(x)\big{)}\Big{)}\geq 0, (12)

cf. (5), that can also be stated in a form like (6) as follows.

Theorem 2.

The QP (11) is feasible if and only if:

iIλiLghi(x)=0iIλi(Lfhi(x)+αi(hi(x)))0\!\sum_{i\in I}\!\lambda_{i}L_{g}h_{i}(x)\!=\!0\!\implies\!\!\!\sum_{i\in I}\!\lambda_{i}\Big{(}\!L_{f}h_{i}(x)\!+\!\alpha_{i}\big{(}h_{i}(x)\big{)}\!\Big{)}\!\geq\!0\! (13)

holds for all xn{x\in\mathbb{R}^{n}} and λi0{\lambda_{i}\geq 0}.

The proof is given in the Appendix.

This highlights that multiple CBFs are more challenging to use than a single one. With this as motivation, next we propose to encode all safety specifications into a single CBF.

III COMPLEX SAFETY SPECIFICATIONS

We propose a framework to construct a single CBF candidate that captures complex safety specifications, wherein safety is given by Boolean logical operations between multiple constraints. For example, the motivation above involves logical AND operation: x(t)𝒞1{x(t)\in\mathcal{C}_{1}} AND … AND x(t)𝒞N{x(t)\in\mathcal{C}_{N}} must hold. Next, we discuss arbitrary logical compositions (with AND, OR and negation) of safety constraints.

III-A Operations Between Sets

Consider multiple safety constraints, each given by a set 𝒞i\mathcal{C}_{i} in (10). These may be combined via the following Boolean logical operations to capture complex safety specifications.

III-A1 Identity / class-𝒦e\mathcal{K}^{\rm e} function

The 0-superlevel set 𝒞i\mathcal{C}_{i} of hih_{i} is the same as that of γihi\gamma_{i}\circ h_{i} for any γi𝒦e{\gamma_{i}\in\mathcal{K}^{\rm e}}:

𝒞i={xn:γi(hi(x))0}.\mathcal{C}_{i}=\{x\in\mathbb{R}^{n}:\gamma_{i}\big{(}h_{i}(x)\big{)}\geq 0\}. (14)

III-A2 Complement set / negation

The complement333More precisely, 𝒞i¯\overline{\mathcal{C}_{i}} is the closure of the complement of 𝒞i\mathcal{C}_{i}, i.e., it includes the boundary 𝒞i{\partial\mathcal{C}_{i}} (where hi(x)=0{h_{i}(x)=0}). 𝒞i¯\overline{\mathcal{C}_{i}} of the 0-superlevel set of hih_{i} is the 0-superlevel set of hi-h_{i}:

𝒞i¯={xn:hi(x)0}.\overline{\mathcal{C}_{i}}=\{x\in\mathbb{R}^{n}:-h_{i}(x)\geq 0\}. (15)

III-A3 Union of sets / maximum / OR operation

The union of multiple 0-superlevel sets:

iI𝒞i={xn:iIs.t. hi(x)0}{\textstyle\bigcup_{i\in I}}\mathcal{C}_{i}=\{x\in\mathbb{R}^{n}:\exists i\in I\ \text{s.t. }h_{i}(x)\geq 0\} (16)

can be given by a single inequality with the max\max function [9]:

iI𝒞i={xn:maxiIhi(x)0}.{\textstyle\bigcup_{i\in I}}\mathcal{C}_{i}=\Big{\{}x\in\mathbb{R}^{n}:\max_{i\in I}h_{i}(x)\geq 0\Big{\}}. (17)

The union describes logical OR relation between constraints:

xiI𝒞ix𝒞1OR x𝒞2OR x𝒞N.x\!\in\!{\textstyle\bigcup_{i\in I}}\mathcal{C}_{i}\!\iff\!x\!\in\!\mathcal{C}_{1}\ \text{OR }x\!\in\!\mathcal{C}_{2}\ \ldots\ \text{OR }x\!\in\!\mathcal{C}_{N}. (18)

III-A4 Intersection of sets / minimum / AND operation

The intersection of multiple 0-superlevel sets:

iI𝒞i={xn:hi(x)0iI}{\textstyle\bigcap_{i\in I}}\mathcal{C}_{i}=\{x\in\mathbb{R}^{n}:h_{i}(x)\geq 0\;\;\forall i\in I\} (19)

can be compactly expressed using the min\min function [9]:

iI𝒞i={xn:miniIhi(x)0}.{\textstyle\bigcap_{i\in I}}\mathcal{C}_{i}=\Big{\{}x\in\mathbb{R}^{n}:\min_{i\in I}h_{i}(x)\geq 0\Big{\}}. (20)

As in the motivation above, the intersection of sets captures logical AND relation between multiple safety constraints:

xiI𝒞ix𝒞1AND x𝒞2AND x𝒞N.\!x\!\in\!{\textstyle\bigcap_{i\in I}}\mathcal{C}_{i}\!\iff\!x\!\in\!\mathcal{C}_{1}\ \text{AND }x\!\in\!\mathcal{C}_{2}\ \ldots\ \text{AND }x\!\in\!\mathcal{C}_{N}.\! (21)

Further operations between sets can be decomposed into applications of identity, complement, union and intersection, which are represented equivalently by class-𝒦e\mathcal{K}^{\rm e} functions, negation, max\max and min\min operations, respectively.

Remark 1.

Note that hih_{i} may have various physical meanings and orders of magnitude for different ii. Thus, for numerical conditioning (especially when we use exponentials later on), one may scale hih_{i} to γihi{\gamma_{i}\circ h_{i}} with continuously differentiable γi𝒦e{\gamma_{i}\in\mathcal{K}^{\rm e}}. For example, γi(r)=tanh(r){\gamma_{i}(r)=\tanh(r)} scales to the interval γi(hi(x))[1,1]{\gamma_{i}(h_{i}(x))\in[-1,1]} that may help numerics. Next, we assume that the definitions of hih_{i} already include any necessary scaling and we omit γi\gamma_{i}. Likewise, we do not discuss negation further by assuming that hih_{i} are defined with proper sign.

III-B Smooth Approximations to Construct a Single CBF

While the union and intersection of sets are described by a single function in (17) and (20), the resulting expressions, maxiIhi(x){\max_{i\in I}h_{i}(x)} and miniIhi(x){\min_{i\in I}h_{i}(x)}, may not be continuously differentiable in xx [9], and they are not CBFs. As main result, we propose a CBF candidate by smooth approximations of max\max and min\min, and describe its properties. This enables us to enforce complex safety specifications as a single constraint.

III-B1 Union of Sets

To capture the union of sets in (17), we propose a CBF candidate via a smooth over-approximation of the max\max function using a log-sum-exp expression [13]:

h(x)=1κln(iIeκhi(x))h(x)=\frac{1}{\kappa}\ln\bigg{(}\sum_{i\in I}{\rm e}^{\kappa h_{i}(x)}\bigg{)} (22)

with smoothing parameter κ>0{\kappa>0}. The Lie derivatives are:

Lfh(x)=iIλi(x)Lfhi(x),Lgh(x)=iIλi(x)Lghi(x),\!L_{f}h(x)\!\!=\!\!\!\sum_{i\in I}\!\lambda_{i}(x)\!L_{f}h_{i}(x),\;L_{g}h(x)\!\!=\!\!\!\sum_{i\in I}\!\lambda_{i}(x)\!L_{g}h_{i}(x),\! (23)

with the coefficients:

λi(x)=eκ(hi(x)h(x)),\lambda_{i}(x)={\rm e}^{\kappa(h_{i}(x)-h(x))}, (24)

that satisfy iIλi(x)=1{\sum_{i\in I}\lambda_{i}(x)=1}. The proposed CBF candidate in (22) has the properties below; see proof in the Appendix.

Theorem 3.

Consider sets 𝒞i\mathcal{C}_{i} in (10) given by functions hih_{i}, and the union iI𝒞i{\bigcup_{i\in I}\mathcal{C}_{i}} in (17). Function hh in (22) over-approximates the max\max expression in (17) with bounds:

maxiIhi(x)h(x)maxiIhi(x)+lnNκxn,\max_{i\in I}h_{i}(x)\leq h(x)\leq\max_{i\in I}h_{i}(x)+\frac{\ln N}{\kappa}\quad\forall x\in\mathbb{R}^{n}, (25)

such that limκh(x)=maxiIhi(x){\lim_{\kappa\to\infty}h(x)=\max_{i\in I}h_{i}(x)}. The corresponding set 𝒞\mathcal{C} in (3) encapsulates the union, 𝒞iI𝒞i{\mathcal{C}\supseteq\bigcup_{i\in I}\mathcal{C}_{i}}, such that limκ𝒞=iI𝒞i{\lim_{\kappa\to\infty}\mathcal{C}=\bigcup_{i\in I}\mathcal{C}_{i}}. Moreover, if (13) holds for all xn{x\in\mathbb{R}^{n}} with λi\lambda_{i} in (24), then hh is a CBF for (1) on n\mathbb{R}^{n} with any α𝒦e{\alpha\in\mathcal{K}_{\infty}^{\rm e}} that satisfies α(r)αi(r){\alpha(r)\geq\alpha_{i}(r)} r{\forall r\in\mathbb{R}} and iI{\forall i\in I}.

Remark 2.

A set 𝒞\mathcal{C} that lies inside the union of the individual sets can also be built by using a buffer bb when defining hh:

h(x)=1κln(iIeκhi(x))bκ.h(x)=\frac{1}{\kappa}\ln\bigg{(}\sum_{i\in I}{\rm e}^{\kappa h_{i}(x)}\bigg{)}-\frac{b}{\kappa}. (26)

For example, based on the upper bound in (25), b=lnN{b=\ln N} leads to h(x)maxiIhi(x){h(x)\leq\max_{i\in I}h_{i}(x)} and 𝒞iI𝒞i{\mathcal{C}\subseteq\bigcup_{i\in I}\mathcal{C}_{i}}. Alternatively, buffers from problem-specific bounds that are tighter than (25) can give better inner-approximation 𝒞\mathcal{C} of iI𝒞i{\bigcup_{i\in I}\mathcal{C}_{i}}.

Refer to caption
Figure 1: Numerical results for Example 1, where a reach-avoid task is safely executed. (a) Safe set, (b) 0-superlevel set of the proposed CBF (26), (c)-(e) simulation of safety-critical control by (9).
Example 1.

Consider Fig. 1, where a rectangular agent with planar position x2{x\in\mathbb{R}^{2}}, velocity u2{u\in\mathbb{R}^{2}}, and dynamics:

x˙=u\dot{x}=u (27)

is controlled to reach a desired position xd2{x_{\rm d}\in\mathbb{R}^{2}} while avoiding a rectangular obstacle444Matlab codes for each example are available at: https://github.com/molnartamasg/CBFs-for-complex-safety-specs.. To reach the goal, we use a proportional controller with gain Kp>0{K_{\rm p}>0} and saturation:

kd(x)=sat(Kp(xdx)),k_{\rm d}(x)={\rm sat}\big{(}K_{\rm p}(x_{\rm d}-x)\big{)}, (28)

where sat(u)=min{1,umax/u2}u{{\rm sat}(u)=\min\{1,u_{\rm max}/\|u\|_{2}\}u} with some umax>0{u_{\rm max}>0}. We modify this desired controller to a safe controller using the safety filter (9) and the proposed CBF construction.

To avoid the obstacle, the agent’s center must be outside a rectangle that has the combined size of the obstacle and the agent; see Fig. 1(a). This means N=4{N=4} constraints linked with OR logic: keep the center left to OR above OR right to OR below the rectangle. Accordingly, the safe set is given by the union iI𝒞i{\bigcup_{i\in I}\mathcal{C}_{i}} of four individual sets 𝒞i\mathcal{C}_{i} described by four barriers at location xi2{x_{i}\in\mathbb{R}^{2}} with normal vector ni2{n_{i}\in\mathbb{R}^{2}}:

hi(x)=ni(xxi),h_{i}(x)=n_{i}^{\top}(x-x_{i}), (29)

iI={1,2,3,4}{i\in I=\{1,2,3,4\}}. We combine the four barriers with (26). The resulting safe set 𝒞\mathcal{C} is plotted in Fig. 1(b) for κ=2{\kappa=2} and various buffers bb. Set 𝒞\mathcal{C} encapsulates iI𝒞i{\bigcup_{i\in I}\mathcal{C}_{i}} for b=0{b=0}, whereas set 𝒞\mathcal{C} lies inside iI𝒞i{\bigcup_{i\in I}\mathcal{C}_{i}} for b=lnN{b=\ln N}; cf. Remark 2. For the problem-specific buffer b=ln2{b=\ln 2} (where NN is replaced by 22 since two barriers meet at each corner), the approximation 𝒞\mathcal{C} gets very close to the corners of iI𝒞i{\bigcup_{i\in I}\mathcal{C}_{i}}.

We executed controller (9) with Kp=0.5{K_{\rm p}=0.5}, umax=1{u_{\rm max}=1}, κ=2{\kappa=2}, b=ln2{b=\ln 2} and α(h)=h{\alpha(h)=h}; see solid lines in Fig. 1(c). The reach-avoid task is successfully accomplished by keeping the agent within set 𝒞\mathcal{C}. Fig. 1(d) highlights that safety is maintained w.r.t. a smooth under-approximation hh (red) of the maximum maxiIhi{\max_{i\in I}h_{i}} (black) of the individual barriers hih_{i} (dashed). Fig. 1(e) indicates the underlying control input. We also demonstrate by dashed lines in Fig. 1(c)-(e) the case of increasing the smoothing parameter to κ{\kappa\to\infty}. The sharp corner is recovered and the input becomes discontinuous (u2u_{2} jumps). While discontinuous inputs can be addressed by nontrivial nonsmooth CBF theory [9], they may be difficult to realize accurately by actuators in engineering systems.

III-B2 Intersection of Sets

To capture the intersection of sets in (20), we propose to use a smooth under-approximation of the min\min function as CBF candidate [13], analogously to (22):

h(x)=1κln(iIeκhi(x)).h(x)=-\frac{1}{\kappa}\ln\bigg{(}\sum_{i\in I}{\rm e}^{-\kappa h_{i}(x)}\bigg{)}. (30)

The Lie derivatives of hh are expressed by (23) with:

λi(x)=eκ(hi(x)h(x)),\lambda_{i}(x)={\rm e}^{-\kappa(h_{i}(x)-h(x))}, (31)

that satisfy iIλi(x)=1{\sum_{i\in I}\lambda_{i}(x)=1}. The proposed CBF candidate in (30) has the properties below, as proven in the Appendix.

Theorem 4.

Consider sets 𝒞i\mathcal{C}_{i} in (10) given by functions hih_{i}, and the intersection iI𝒞i{\bigcap_{i\in I}\mathcal{C}_{i}} in (20). Function hh in (30) under-approximates the min\min expression in (20) with bounds:

miniIhi(x)lnNκh(x)miniIhi(x)xn,\min_{i\in I}h_{i}(x)-\frac{\ln N}{\kappa}\leq h(x)\leq\min_{i\in I}h_{i}(x)\quad\forall x\in\mathbb{R}^{n}, (32)

such that limκh(x)=miniIhi(x){\lim_{\kappa\to\infty}h(x)=\min_{i\in I}h_{i}(x)}. The corresponding set 𝒞\mathcal{C} in (3) lies inside the intersection, 𝒞iI𝒞i{\mathcal{C}\subseteq\bigcap_{i\in I}\mathcal{C}_{i}}, such that limκ𝒞=iI𝒞i{\lim_{\kappa\to\infty}\mathcal{C}=\bigcap_{i\in I}\mathcal{C}_{i}}.

III-C Single CBF for Arbitrary Safe Set Compositions

Having discussed the union and intersection of sets, we extend our framework to arbitrary combinations of unions and intersections. These include e.g. two-level or three-level compositions, like i𝒞i{\bigcup\bigcap_{i}\mathcal{C}_{i}} or i𝒞i{\bigcap\bigcup\bigcap_{i}\mathcal{C}_{i}}, etc. We propose an algorithmic way to capture these by a single CBF candidate.

Specifically, consider MM levels of safety specifications that establish a single safe set by composing NN individual sets. The individual sets are 𝒞i\mathcal{C}_{i} in (10), iI={1,,N}{i\in I=\{1,\ldots,N\}}. The specification levels are indexed by L={1,,M}{\ell\in L=\{1,\ldots,M\}}. At each level, the union or intersection of sets is taken, resulting in NN_{\ell} new sets, denoted by 𝒞i\mathcal{C}_{i}^{\ell}, iI={1,,N}{i\in I_{\ell}=\{1,\ldots,N_{\ell}\}}. This is repeated until a single safe set, called 𝒞c\mathcal{C}_{\rm c}, is obtained:

𝒞i0=𝒞i,iI,𝒞i={jJi𝒞j1ifL,jJi𝒞j1ifL,iI,𝒞c=𝒞1M,\displaystyle\begin{split}\mathcal{C}_{i}^{0}&=\mathcal{C}_{i},\quad i\in I,\\ \mathcal{C}_{i}^{\ell}&=\begin{cases}\bigcup_{j\in J_{i}^{\ell}}\mathcal{C}_{j}^{\ell-1}&{\rm if}\ \ell\in L_{\cup},\\ \bigcap_{j\in J_{i}^{\ell}}\mathcal{C}_{j}^{\ell-1}&{\rm if}\ \ell\in L_{\cap},\end{cases}\quad i\in I_{\ell},\\ \mathcal{C}_{\rm c}&=\mathcal{C}_{1}^{M},\end{split} (33)

where JiI1{J_{i}^{\ell}\subseteq I_{\ell-1}} is the indices of sets that combine into CiC_{i}^{\ell}, while LL_{\cup} and LL_{\cap} are the indices of levels with union and intersection (L=LL{L=L_{\cup}\cup L_{\cap}}). Unions and intersections imply the maximum and minimum of the individual barriers hih_{i}, respectively, resulting in the combined CBF candidate hch_{\rm c} [9]:

hi0(x)=hi(x),iI,hi(x)={maxjJihj1(x)ifL,minjJihj1(x)ifL,iI,hc(x)=h1M(x).\displaystyle\begin{split}h_{i}^{0}(x)&=h_{i}(x),\quad i\in I,\\ h_{i}^{\ell}(x)&=\begin{cases}\max_{j\in J_{i}^{\ell}}h_{j}^{\ell-1}(x)&{\rm if}\ \ell\in L_{\cup},\\ \min_{j\in J_{i}^{\ell}}h_{j}^{\ell-1}(x)&{\rm if}\ \ell\in L_{\cap},\end{cases}\quad i\in I_{\ell},\\ h_{\rm c}(x)&=h_{1}^{M}(x).\end{split} (34)

This describes the safe set (that is assumed to be non-empty):

𝒞c={xn:hc(x)0}.\mathcal{C}_{\rm c}=\{x\in\mathbb{R}^{n}:h_{\rm c}(x)\geq 0\}. (35)

While the combined function hch_{\rm c} is nonsmooth [9], we propose a continuously differentiable function hh, by extending the smooth approximations (22) and (30) of min and max:

Hi0(x)=eκhi(x),iI,Hi(x)={jJiHj1(x)ifL,1jJi1Hj1(x)ifL,iI,h(x)=1κlnH1M(x)bκ.\displaystyle\begin{split}H_{i}^{0}(x)&={\rm e}^{\kappa h_{i}(x)},\quad i\in I,\\ H_{i}^{\ell}(x)&=\begin{cases}\sum_{j\in J_{i}^{\ell}}H_{j}^{\ell-1}(x)&{\rm if}\ \ell\in L_{\cup},\\ \frac{1}{\sum_{j\in J_{i}^{\ell}}\frac{1}{H_{j}^{\ell-1}(x)}}&{\rm if}\ \ell\in L_{\cap},\end{cases}\quad i\in I_{\ell},\\ h(x)&=\frac{1}{\kappa}\ln H_{1}^{M}(x)-\frac{b}{\kappa}.\end{split} (36)

Note that we included a buffer bb, according to Remark 2, to be able to adjust whether the resulting set 𝒞\mathcal{C} encapsulates 𝒞c\mathcal{C}_{\rm c} or lies inside it. The derivative of the CBF candidate hh is:

H˙i0(x,u)\displaystyle\dot{H}_{i}^{0}(x,u) =κHi0(x)h˙i(x,u),iI,\displaystyle=\kappa H_{i}^{0}(x)\dot{h}_{i}(x,u),\quad i\in I,
H˙i(x,u)\displaystyle\dot{H}_{i}^{\ell}(x,u) ={jJiH˙j1(x,u)ifL,Hi(x)2jJiH˙j1(x,u)Hj1(x)2ifL,iI,\displaystyle=\begin{cases}\sum_{j\in J_{i}^{\ell}}\dot{H}_{j}^{\ell-1}(x,u)\!&\!{\rm if}\ \ell\in L_{\cup},\\ H_{i}^{\ell}(x)^{2}\sum_{j\in J_{i}^{\ell}}\frac{\dot{H}_{j}^{\ell-1}(x,u)}{H_{j}^{\ell-1}(x)^{2}}\!&\!{\rm if}\ \ell\in L_{\cap},\end{cases}\;i\in I_{\ell},
h˙(x,u)\displaystyle\dot{h}(x,u) =H˙1M(x,u)κH1M(x).\displaystyle=\frac{\dot{H}_{1}^{M}(x,u)}{\kappa H_{1}^{M}(x)}. (37)

The proposed function hh approximates hch_{\rm c} with the following properties that are proven in the Appendix.

Theorem 5.

Consider sets 𝒞i\mathcal{C}_{i} in (10) given by functions hih_{i}, and the composition 𝒞c\mathcal{C}_{\rm c} in (33) given by hch_{\rm c} in (34)-(35). Function hh in (36) approximates hch_{\rm c} with the error bound:

b+bκh(x)hc(x)bbκxn,-\frac{b_{\cap}+b}{\kappa}\leq h(x)-h_{\rm c}(x)\leq\frac{b_{\cup}-b}{\kappa}\quad\forall x\in\mathbb{R}^{n}, (38)

where b=Llnb{b_{\cap}\!=\!\sum_{\ell\in L_{\cap}}\!\ln b_{\ell}}, b=Llnb{b_{\cup}\!=\!\sum_{\ell\in L_{\cup}}\!\ln b_{\ell}}, b=maxiI|Ji|{b_{\ell}\!=\!\max_{i\in I_{\ell}}\!|J_{i}^{\ell}|}, and |Ji||J_{i}^{\ell}| is the number of elements in JiJ_{i}^{\ell}. If bb{b\geq b_{\cup}}, the corresponding set 𝒞\mathcal{C} in (3) lies inside 𝒞c\mathcal{C}_{\rm c}, i.e., 𝒞𝒞c{\mathcal{C}\subseteq\mathcal{C}_{\rm c}}, whereas if bb{b\leq-b_{\cap}}, set 𝒞\mathcal{C} encapsulates 𝒞c\mathcal{C}_{\rm c}, i.e., 𝒞𝒞c{\mathcal{C}\supseteq\mathcal{C}_{\rm c}}. Furthermore, we have limκh(x)=hc(x){\lim_{\kappa\to\infty}h(x)=h_{\rm c}(x)} and limκ𝒞=𝒞c{\lim_{\kappa\to\infty}\mathcal{C}=\mathcal{C}_{\rm c}}.

The proposed approach in (36) captures complex safety specifications algorithmically by a single CBF candidate hh, via the recursive use of (22) and (30) such that exponentials and logarithms are computed only once. Safety is then interpreted w.r.t. set 𝒞\mathcal{C}, which can be tuned to approximate the specified set 𝒞c\mathcal{C}_{\rm c} as desired. Based on the error bound (38), increasing κ\kappa makes the approximation tighter, while bb affects whether 𝒞𝒞c{\mathcal{C}\subseteq\mathcal{C}_{\rm c}} or 𝒞𝒞c{\mathcal{C}\supseteq\mathcal{C}_{\rm c}}. Note that hh is a valid CBF only if it satisfies (5). This is not guaranteed by Theorem 5, and it would require additional conditions like (13) in Theorem 3. If hh is a CBF, formal safety guarantees can be maintained, for example, by QP (8) that has a single constraint and the explicit solution (9). If the constraint is enforced outside set 𝒞\mathcal{C}, then 𝒞\mathcal{C} is asymptotically stable; cf. Theorem 1. We remark that, potentially, the log-sum-exp formulas could be replaced by other smooth approximations of max\max and min\min. Furthermore, note that computing exponentials may cause numerical issues if κ\kappa is too large. These may be alleviated by scaling CBF candidates by class-𝒦e\mathcal{K}^{\rm e} functions; see Remark 1.

Refer to caption
Figure 2: Numerical results for Example 2, where a reach-avoid task with multiple obstacles is executed by controller (9) with the proposed CBF (36).
Example 2.

Consider the reach-avoid task of Example 1, with dynamics (27), desired controller (28), safety filter (9), and multiple obstacles shown in Fig. 2. Like in Example 1, each of the three obstacles yields four safety constraints, leading to N=12{N=12} sets 𝒞i\mathcal{C}_{i} and functions hih_{i}, given by (29). The four constraints of each obstacle are linked with OR logic, like in Example 1, while the constraints of different obstacles are linked with AND: safety is maintained w.r.t. obstacle 1 AND obstacle 2 AND obstacle 3. Thus, the safe set:

𝒞c=(𝒞1𝒞2𝒞3𝒞4)(𝒞5𝒞6𝒞7𝒞8)(𝒞9𝒞10𝒞11𝒞12)\mathcal{C}_{\rm c}\!=\!(\mathcal{C}_{1}\cup\mathcal{C}_{2}\cup\mathcal{C}_{3}\cup\mathcal{C}_{4})\cap(\mathcal{C}_{5}\cup\mathcal{C}_{6}\cup\mathcal{C}_{7}\cup\mathcal{C}_{8})\cap(\mathcal{C}_{9}\cup\mathcal{C}_{10}\cup\mathcal{C}_{11}\cup\mathcal{C}_{12}) (39)

is given by a M=2{M=2} level specification, combining N=12{N=12} sets to N1=3{N_{1}=3} sets (𝒞11\mathcal{C}_{1}^{1} from sets given by J11={1,2,3,4}{J_{1}^{1}=\{1,2,3,4\}}, 𝒞21\mathcal{C}_{2}^{1} from J21={5,6,7,8}{J_{2}^{1}=\{5,6,7,8\}} and 𝒞31\mathcal{C}_{3}^{1} from J31={9,10,11,12}{J_{3}^{1}=\{9,10,11,12\}}), and then to a single set 𝒞c\mathcal{C}_{\rm c} (via sets given by J12={1,2,3}{J_{1}^{2}=\{1,2,3\}}).

The behavior of controller (9) with the proposed CBF candidate (36) is shown in Fig. 2 for Kp=0.5{K_{\rm p}=0.5}, umax=1{u_{\rm max}=1}, κ=10{\kappa=10}, b=ln2{b=\ln 2} and α(h)=h{\alpha(h)=h}. The reach-avoid task is successfully accomplished with formal guarantees of safety. Remarkably, the controller is continuous and explicit, since the control law (9) and CBF formulas (36)-(37) are in closed form. Such explicit controllers are easy to implement and fast to execute. Note that controller (11) could also handle multiple obstacles if each obstacle was given by a single CBF candidate. Yet, (11) cannot address multi-level safety specifications like (39), while the proposed method can.

Refer to caption
Figure 3: Numerical results for Example 3, where an agent is driven safely along a road network via controller (9) with the proposed CBF (36).
Example 3.

Consider the setup of Fig. 3 where a point agent is driven to a desired location while staying on a road network, with dynamics (27), desired controller (28) and safety-critical controller (9). Safety is determined by the road geometry. Each road boundary is related to a set, which is given for straight roads by (29) and for ring roads by:

hi(x)=±(xxiRi).h_{i}(x)=\pm\big{(}\|x-x_{i}\|-R_{i}\big{)}. (40)

Here plus and minus signs stand for the inner and outer circles, respectively, RiR_{i} is their radius, and xix_{i} is their center. Safety must be ensured w.r.t. boundary 1 AND boundary 2 of each road, while the agent must stay on road 1 OR road 2 OR road 3 OR road 4. Thus, the combined safe set becomes:

𝒞c=(𝒞1𝒞2)(𝒞3𝒞4)(𝒞6𝒞5)(𝒞7𝒞8).\mathcal{C}_{\rm c}=(\mathcal{C}_{1}\cap\mathcal{C}_{2})\cup(\mathcal{C}_{3}\cap\mathcal{C}_{4})\cup(\mathcal{C}_{6}\cap\mathcal{C}_{5})\cup(\mathcal{C}_{7}\cap\mathcal{C}_{8}). (41)

That is, we have a M=2{M=2} level specification with N=8{N=8} sets combined first to N1=4{N_{1}=4} sets (as intersections of sets given by J11={1,2}{J_{1}^{1}=\{1,2\}}, J21={3,4}{J_{2}^{1}=\{3,4\}}, J31={5,6}{J_{3}^{1}=\{5,6\}}, J41={7,8}{J_{4}^{1}=\{7,8\}}), and then to a single set (as union via J12={1,2,3,4}{J_{1}^{2}=\{1,2,3,4\}}).

The execution of the reach-avoid task with the proposed CBF candidate (36) and controller (9) is shown in Fig. 3 for Kp=0.5{K_{\rm p}=0.5}, umax=1{u_{\rm max}=1}, κ=10{\kappa=10}, b=0{b=0} and α(h)=h{\alpha(h)=h}. The end result is guaranteed safety (see solid lines). Moreover, the safe set is attractive: in case of an unsafe, off-road initial condition the agent returns to to the safe set on the road and continues to be safe (see thick dashed lines). Remarkably, this property was not provided by earlier works like [11].

IV CONCLUSION

We established a framework to capture complex safety specifications by control barrier functions (CBFs). The specifications are combinations of state constraints by Boolean logic. We proposed an algorithmic way to create a single CBF candidate that encodes these constraints and enables efficient safety-critical controllers. We described the properties of this CBF candidate, and we used simulations to show its ability to tackle nontrivial safety-critical control problems.

APPENDIX

Proof of Theorem 2.

Consider the Lagrangian of the feasibility problem [18] corresponding to the QP (11):

L(x,u,λ)=iIλi(h˙i(x,u)+αi(h(x))),L(x,u,\lambda)=-\sum_{i\in I}\lambda_{i}\Big{(}\dot{h}_{i}(x,u)+\alpha_{i}\big{(}h(x)\big{)}\Big{)}, (42)

with the Lagrange multipliers λ=[λ1λ2λN]{\lambda\!=\!\begin{bmatrix}\lambda_{1}\!\!&\!\!\lambda_{2}\!\!&\!\!\ldots\!\!&\!\!\lambda_{N}\end{bmatrix}^{\top}}, λi0{\lambda_{i}\geq 0} iI{\forall i\in I}. The QP (11) is feasible if and only if um{\exists u\in\mathbb{R}^{m}} such that L(x,u,λ)0{L(x,u,\lambda)\leq 0} λi0{\forall\lambda_{i}\geq 0}. With the Lagrange dual function, gL(x,λ)=infumL(x,u,λ){g_{L}(x,\lambda)\!=\!\inf_{u\in\mathbb{R}^{m}}L(x,u,\lambda)}, this means gL(x,λ)0{g_{L}(x,\lambda)\leq 0} λi0{\forall\lambda_{i}\geq 0}. Since gL(x,λ)=iIλi(Lfhi(x)+αi(hi(x))){g_{L}(x,\lambda)\!=\!-\sum_{i\in I}\!\lambda_{i}\Big{(}\!L_{f}h_{i}(x)\!+\!\alpha_{i}\big{(}h_{i}(x)\big{)}\!\Big{)}} if iIλiLghi(x)=0{\sum_{i\in I}\!\lambda_{i}L_{g}h_{i}(x)\!=\!0} and gL(x,λ)={g_{L}(x,\lambda)\!=\!-\infty} otherwise, (13) is equivalent to gL(x,λ)0{g_{L}(x,\lambda)\leq 0} and provides feasibility. ∎

Proof of Theorem 3.

Since the exponential function is monotonous and gives positive value, we have:

eκmaxiIhi(x)iIeκhi(x)NeκmaxiIhi(x),{\rm e}^{\kappa\max_{i\in I}h_{i}(x)}\leq\sum_{i\in I}{\rm e}^{\kappa h_{i}(x)}\leq N{\rm e}^{\kappa\max_{i\in I}h_{i}(x)}, (43)

that yields (25) via (22) and the monotonicity of ln\ln. The limit on both sides of (25) yields limκh(x)=maxiIhi(x){\lim_{\kappa\to\infty}h(x)=\max_{i\in I}h_{i}(x)}, and consequently limκ𝒞=iI𝒞i{\lim_{\kappa\to\infty}\mathcal{C}=\bigcup_{i\in I}\mathcal{C}_{i}} holds. Due to (25), maxiIhi(x)0h(x)0{\max_{i\in I}h_{i}(x)\geq 0\implies h(x)\geq 0}, therefore xiI𝒞ix𝒞{x\in\bigcup_{i\in I}\mathcal{C}_{i}\implies x\in\mathcal{C}}, and 𝒞iI𝒞i{\mathcal{C}\supseteq\bigcup_{i\in I}\mathcal{C}_{i}} follows.

We prove that hh is a CBF by showing that (6) holds. We achieve this by relating Lgh(x)L_{g}h(x) and Lfh(x)+α(h(x)){L_{f}h(x)+\alpha\big{(}h(x)\big{)}} to Lghi(x)L_{g}h_{i}(x) and Lfhi(x)+αi(hi(x)){L_{f}h_{i}(x)+\alpha_{i}\big{(}h_{i}(x)\big{)}}. The Lie derivatives are related by (23), while the following bound holds for all iI{i\in I}:

α(h(x))α(hi(x))αi(hi(x)),\alpha\big{(}h(x)\big{)}\geq\alpha\big{(}h_{i}(x)\big{)}\geq\alpha_{i}\big{(}h_{i}(x)\big{)}, (44)

where we used (25) and α(r)αi(r){\alpha(r)\geq\alpha_{i}(r)}. Consequently, since iIλi(x)=1{\sum_{i\in I}\lambda_{i}(x)=1} and λi(x)>0{\lambda_{i}(x)>0} hold via (24), we have:

Lfh(x)+α(h(x))iIλi(x)(Lfhi(x)+αi(hi(x))).L_{f}h(x)\!+\!\alpha\big{(}h(x)\big{)}\geq\sum_{i\in I}\lambda_{i}(x)\Big{(}L_{f}h_{i}(x)\!+\!\alpha_{i}\big{(}h_{i}(x)\big{)}\Big{)}. (45)

If Lgh(x)=0{L_{g}h(x)=0}, we get iIλi(x)Lghi(x)=0{\sum_{i\in I}\lambda_{i}(x)L_{g}h_{i}(x)=0} based on (23), and since (13) is assumed to hold, (45) finally yields Lfh(x)+α(h(x))0{L_{f}h(x)+\alpha\big{(}h(x)\big{)}\geq 0}. Thus, (6) holds and hh is a CBF. ∎

Proof of Theorem 4.

The proof follows that of Theorem 3, with the following modifications. We replace (43) by:

eκminiIhi(x)iIeκhi(x)NeκminiIhi(x),{\rm e}^{-\kappa\min_{i\in I}h_{i}(x)}\leq\sum_{i\in I}{\rm e}^{-\kappa h_{i}(x)}\leq N{\rm e}^{-\kappa\min_{i\in I}h_{i}(x)}, (46)

that gives the bound (32) via (30). The remaining properties follow from the limit on both sides of (32) and from h(x)0miniIhi(x)0{h(x)\geq 0\implies\min_{i\in I}h_{i}(x)\geq 0} according to (32). ∎

Proof of Theorem 5.

By leveraging that the exponential function is monotonous, we write (34) equivalently as:

Hc,i0(x)=eκhi(x),iI,Hc,i(x)={maxjJiHc,j1(x)ifL,minjJiHc,j1(x)ifL,iI,hc(x)=1κlnHc,1M(x).\displaystyle\begin{split}H_{{\rm c},i}^{0}(x)&={\rm e}^{\kappa h_{i}(x)},\quad i\in I,\\ H_{{\rm c},i}^{\ell}(x)&=\begin{cases}\max_{j\in J_{i}^{\ell}}H_{{\rm c},j}^{\ell-1}(x)&{\rm if}\ \ell\in L_{\cup},\\ \min_{j\in J_{i}^{\ell}}H_{{\rm c},j}^{\ell-1}(x)&{\rm if}\ \ell\in L_{\cap},\end{cases}\;\;i\in I_{\ell},\\ h_{\rm c}(x)&=\frac{1}{\kappa}\ln H_{{\rm c},1}^{M}(x).\end{split} (47)

We compare this with the definition (36) of hh. First, by using the middle row of (36), we establish that for all xn{x\in\mathbb{R}^{n}}:

Hj1(x)Hi(x)|Ji|maxjJiHj1(x)ifL,1|Ji|minjJiHj1(x)Hi(x)Hj1(x)ifL\displaystyle\begin{split}H_{j}^{\ell-1}(x)\leq H_{i}^{\ell}(x)\leq|J_{i}^{\ell}|\max_{j\in J_{i}^{\ell}}H_{j}^{\ell-1}(x)\quad{\rm if}\ \ell\in L_{\cup},\\ \frac{1}{|J_{i}^{\ell}|}\min_{j\in J_{i}^{\ell}}H_{j}^{\ell-1}(x)\leq H_{i}^{\ell}(x)\leq H_{j}^{\ell-1}(x)\quad{\rm if}\ \ell\in L_{\cap}\end{split} (48)

jJi{\forall j\!\in\!J_{i}^{\ell}} and iI{\forall i\!\in\!I_{\ell}}. Then, we relate Hc,iH_{{\rm c},i}^{\ell} to HiH_{i}^{\ell} by induction. For 1{\ell\!\geq\!1} we assume that there exist c¯1,c¯1>0{\underline{c}_{\ell-1},\overline{c}_{\ell-1}>0} such that:

c¯1Hc,i1(x)Hi1(x)c¯1Hc,i1(x)\underline{c}_{\ell-1}H_{{\rm c},i}^{\ell-1}(x)\leq H_{i}^{\ell-1}(x)\leq\overline{c}_{\ell-1}H_{{\rm c},i}^{\ell-1}(x) (49)

xn{\forall x\in\mathbb{R}^{n}} and iI1{\forall i\in I_{\ell-1}}. This is true for =1{\ell\!=\!1} with c¯0,c¯0=1{\underline{c}_{0},\overline{c}_{0}=1} since Hi0(x)=Hc,i0(x){H_{i}^{0}(x)=H_{{\rm c},i}^{0}(x)}. By substituting (49) into (48), using the middle row of (47) and |Ji|maxiI|Ji|{|J_{i}^{\ell}|\leq\max_{i\in I_{\ell}}|J_{i}^{\ell}|}, we get:

c¯Hc,i(x)Hi(x)c¯Hc,i(x)\underline{c}_{\ell}H_{{\rm c},i}^{\ell}(x)\leq H_{i}^{\ell}(x)\leq\overline{c}_{\ell}H_{{\rm c},i}^{\ell}(x) (50)

with b=maxiI|Ji|{b_{\ell}=\max_{i\in I_{\ell}}|J_{i}^{\ell}|} and:

c¯={c¯1ifL,c¯1bifL,c¯={bc¯1ifL,c¯1ifL.\displaystyle\begin{split}\underline{c}_{\ell}=\begin{cases}\underline{c}_{\ell-1}\!&{\rm if}\ \ell\in L_{\cup},\\ \frac{\underline{c}_{\ell-1}}{b_{\ell}}\!&{\rm if}\ \ell\in L_{\cap},\end{cases}\quad\overline{c}_{\ell}=\begin{cases}b_{\ell}\overline{c}_{\ell-1}\!&{\rm if}\ \ell\in L_{\cup},\\ \overline{c}_{\ell-1}\!&{\rm if}\ \ell\in L_{\cap}.\end{cases}\end{split} (51)

By induction, (50) holds for =M{\ell=M} with c¯M=L1b{\underline{c}_{M}\!=\!\prod_{\ell\in L_{\cap}}\!\frac{1}{b_{\ell}}} and c¯M=Lb{\overline{c}_{M}\!=\!\prod_{\ell\in L_{\cup}}\!b_{\ell}}. Taking the logarithm of (50) with =M{\ell=M} and using the last rows of (36) and (47) result in (38). ∎

References

  • [1] A. D. Ames, X. Xu, J. W. Grizzle, and P. Tabuada, “Control barrier function based quadratic programs for safety critical systems,” IEEE Transactions on Automatic Control, vol. 62, no. 8, pp. 3861–3876, 2017.
  • [2] M. Rauscher, M. Kimmel, and S. Hirche, “Constrained robot control using control barrier functions,” in IEEE/RSJ International Conference on Intelligent Robots and Systems, 2016, pp. 279–285.
  • [3] X. Xu, “Constrained control of input–output linearizable systems using control sharing barrier functions,” Automatica, vol. 87, pp. 195–201, 2018.
  • [4] W. Shaw Cortez, X. Tan, and D. V. Dimarogonas, “A robust, multiple control barrier function framework for input constrained systems,” IEEE Control Systems Letters, vol. 6, pp. 1742–1747, 2022.
  • [5] X. Tan and D. V. Dimarogonas, “Compatibility checking of multiple control barrier functions for input constrained systems,” in 61st IEEE Conference on Decision and Control, 2022, pp. 939–944.
  • [6] J. Breeden and D. Panagou, “Compositions of multiple control barrier functions under input constraints,” in American Control Conference, 2023, pp. 3688–3695.
  • [7] L. Liu, Y.-J. Liu, D. Li, S. Tong, and Z. Wang, “Barrier Lyapunov function-based adaptive fuzzy FTC for switched systems and its applications to resistance–inductance–capacitance circuit system,” IEEE Transactions on Cybernetics, vol. 50, no. 8, pp. 3491–3502, 2020.
  • [8] L. Liu, W. Zhao, Y.-J. Liu, S. Tong, and Y.-Y. Wang, “Adaptive finite-time neural network control of nonlinear systems with multiple objective constraints and application to electromechanical system,” IEEE Transactions on Neural Networks and Learning Systems, vol. 32, no. 12, pp. 5416–5426, 2021.
  • [9] P. Glotfelter, J. Cortés, and M. Egerstedt, “Nonsmooth barrier functions with applications to multi-robot systems,” IEEE Control Systems Letters, vol. 1, no. 2, pp. 310–315, 2017.
  • [10] ——, “A nonsmooth approach to controller synthesis for Boolean specifications,” IEEE Transactions on Automatic Control, vol. 66, no. 11, pp. 5160–5174, 2021.
  • [11] L. Wang, A. D. Ames, and M. Egerstedt, “Multi-objective compositions for collision-free connectivity maintenance in teams of mobile robots,” in 55th IEEE Conference on Decision and Control, 2016, pp. 2659–2664.
  • [12] M. Black and D. Panagou, “Adaptation for validation of a consolidated control barrier function based control synthesis,” arXiv preprint, no. arXiv:2209.08170, 2022.
  • [13] L. Lindemann and D. V. Dimarogonas, “Control barrier functions for signal temporal logic tasks,” IEEE Control Systems Letters, vol. 3, no. 1, pp. 96–101, 2019.
  • [14] ——, “Control barrier functions for multi-agent systems under conflicting local signal temporal logic tasks,” IEEE Control Systems Letters, vol. 3, no. 3, pp. 757–762, 2019.
  • [15] M. Jankovic, “Robust control barrier functions for constrained stabilization of nonlinear systems,” Automatica, vol. 96, pp. 359–367, 2018.
  • [16] X. Xu, P. Tabuada, J. W. Grizzle, and A. D. Ames, “Robustness of control barrier functions for safety critical control,” in IFAC Conference on Analysis and Design of Hybrid Systems, vol. 48, no. 27, 2015, pp. 54–61.
  • [17] A. Alan, A. J. Taylor, C. R. He, A. D. Ames, and G. Orosz, “Control barrier functions and input-to-state safety with application to automated vehicles,” IEEE Transactions on Control Systems Technology, vol. 31, no. 6, pp. 2744–2759, 2023.
  • [18] S. Boyd and L. Vandenberghe, Convex optimization.   Cambridge University Press, 2004.