Viability Kernels for Non-Linear Systems
This extends Viability Kernels for Linear Systems to non-linear systems . Same boundary-sampling scaffolding; what changes is how we compute the per-step reachable set when is not linear.
Setting
Reformulate the dynamics as a differential inclusion . Assuming is and convex in for each , with non-empty, compact, and convex, the set-valued map has non-empty, compact, convex images and is Lipschitz. That is enough to guarantee a solution to the Cauchy problem , so the per-step reachable set always exists.
Approach
At each propagation step:
- Linearize around a point near the centre of the predicted reachable set, getting , where is the Lagrangian remainder.
- Bound the remainder componentwise via the Hessian over the convex hull of the current and predicted reachable sets, where depends on the zonotope generators and the choice of .
- Split the initial zonotope along its longest generator and recurse if the remainder exceeds a user-set tolerance . Otherwise propagate as in the linear case.
The constraint set is eroded by the remainder bound, so the linear-system overlap test still produces a sound under-approximation.
Why it works
The boundary-sampling scheme only yields a valid under-approximation if the kernel itself is convex — otherwise the convex hull of feasible boundary points might leak outside it. This holds under the assumptions above:
Proof sketch. The associated set-valued map inherits non-empty, compact, convex images and Lipschitz continuity from the assumptions on and . The kernel can be built recursively as , where the backward reachable set is the forward reachable set of the dynamics . By Wolenski's exponential formula, that reachable set is the Kuratowski limit of — a sequence of set-valued maps with convex images, since affine maps and compositions preserve convexity here. The Kuratowski limit of a nested sequence of convex sets is convex, so each is convex, and so is .
Result
Sanity-checked on the inverted-pendulum-on-cart, where the algorithm's output sits strictly inside Saint-Pierre's grid-based kernel — as expected from the piecewise-constant input restriction. For loose tolerances on the per-direction cost stays sub-cubic, beating griding methods in moderate dimension; tight tolerances make splitting dominate.
Context
From my MSc thesis — published at ICINCO 2018. Builds directly on Viability Kernels for Linear Systems.