This article may be too technical for most readers to understand.(September 2018) |
A barrier certificate [1] or barrier function is used to prove that a given region is forward invariant for a given ordinary differential equation or hybrid dynamical system. [2] That is, a barrier function can be used to show that if a solution starts in a given set, then it cannot leave that set.
Showing that a set is forward invariant is an aspect of safety, which is the property where a system is guaranteed to avoid obstacles specified as an unsafe set.
Barrier certificates map the system state (for example, its position) to a scalar value for which certain ranges must correspond to either the safe or unsafe set, the specifics of this vary by the type of barrier function used. Assuming a function of zeroing type, the question of safety becomes that of determining whether is non-negative for any state where . As the unsafe set corresponds to all negative values of , its inability to reach a value below 0 implies the system is unable to cross the safe set boundary outwards.
Barrier certificates play the analogical role for safety to the role of Lyapunov functions for stability. For every ordinary differential equation that robustly fulfills a safety property of a certain type there is a corresponding barrier certificate. [3]
The first result in the field of barrier certificates was the Nagumo theorem by Mitio Nagumo in 1942. [4] [5] The term "barrier certificate" was introduced later based on similar concept in convex optimization called barrier functions. [4]
Barrier certificates were generalized to hybrid systems in 2004 by Stephen Prajna and Ali Jadbabaie. [6]
There are several different types of barrier functions. One distinguishing factor is the behavior of the barrier function at the boundary of the forward invariant set . A barrier function that goes to zero as the input approaches the boundary of is called a zeroing barrier function. [7] A barrier function that goes to infinity as the input approaches the boundary is called a reciprocal barrier functions. Zeroing barrier functions may be preferred in embedded applications as they do not create unbounded values close to the set boundary. [7] Here, "reciprocal" refers to the fact that a reciprocal barrier functions can be defined as the multiplicative inverse of a zeroing barrier function.