Solving an Ordinary Differential Inequality

In his 2008 paper Viability and Predictive Control for Safe Locomotion, Pierre-Brice Wieber discusses what happens when the center-of-mass of a humanoid reaches the boundary of its supporting contact area. Mathematically, this gives rise to the Ordinary Differential Inequality (ODI):

\begin{equation*} \frac{\ddot{x}}{\omega^2} \ \geq \ x + b \end{equation*}

Under the boundary condition:

\begin{equation*} x(t_0) + b \ = \ 0 \end{equation*}

The paper provides an analytical solution to the ODI as follows:

\begin{equation*} x(t) \ \geq \ \frac{\xd(t_0)}{\omega} \sinh\left(\frac{t}{\omega}\right) - b \end{equation*}

Let us now detail how to get there.

Bounding by an ODE solution

The method to derive a lower-bound on ODI solutions relies on a "parallel" solution to the related Ordinary Differential Equation (ODE):

Theorem (Petrovitsch, 1901): let \(\dot{\gamma} \geq f(\gamma, t)\) denote an ODI, and let \(\eta\) denote a solution to the ODE \(\dot{\eta} = f(\eta, t)\) subject to the boundary condition \(\eta(t_0) = \gamma(t_0)\). Then,
\begin{equation*} \begin{array}{r} \forall t < t_0, \ \gamma(t) \leq \eta(t) \\ \forall t > t_0, \ \gamma(t) \geq \eta(t) \end{array} \end{equation*}

In our case, a solution to the ODE associated with our second-order ODI satisfies:

\begin{equation*} \frac{\ydd}{\omega^2} \ = \ y + b \end{equation*}

It is well known that the set of solutions to such second-order differential equations, whose characteristic polynomial has real roots, are linear combinations of hyperbolic functions, plus the non-homogeneous part of the solution:

\begin{equation*} y = \alpha \cosh(\omega (t - t_0)) + \beta \sinh(\omega (t - t_0)) - b \end{equation*}

We now choose the boundary conditions such that \(y(t_0) = x(t_0) = -b\) and \(\yd(t_0) = \xd(t_0)\), resulting in:

\begin{equation*} y \ = \ \frac{\xd(t_0)}{\omega} \sinh\left(\frac{t}{\omega}\right) - b \end{equation*}

We cannot apply Petrovitsch's theorem directly as our variable \(\gamma = (x, \xd)\) is two-dimensional, but the underlying idea is the same. Consider the difference \(\delta\) between \(x\) (ODI solution) and \(y\) (ODE solution). Then:

\begin{equation*} \begin{array}{r} \ddot{\delta} \geq \delta \\ \delta(t_0) = 0 \\ \dot{\delta}(t_0) = 0 \end{array} \end{equation*}

Due to the initial condition, either \(\delta\) is uniformly \(0\) for all \(t \geq t_0\) (in which case the bound is tight), or \(\delta\) is increasing for \(t \geq t_0\) and thus positive. In both cases, this difference ends up being positive, so that \(\forall t \geq t_0, x(t) \geq y(t)\) and \(y\) is indeed an analytical lower-bound to all solutions of the ODI.

Content on this website is under the CC-BY 4.0 license.