The picture demonstrates the whole idea behind push recovery, if you push a human being it can recover from that push, but if you push a robot it cannot recover from the push. Effectively modeling this is indeed a big issue.
The example given is that of a thermostat it can be in two states on and off which are discrete in nature, but the fall in temperature is continuous in nature which is given by the differential equation. This is the flow condition. The condition x >= 16 is the invariant condition. And x <= 18 is the guard condition.
Multi Disciplinary Nature of the Approach..
I won’t fall if
you push me ,
but you will fall
if I Push you
A Brief Introduction to Human Gait...
The motion of the COM is sinusoidal in nature both in the vertical and the
The two phases occur alternately, that is when one leg is in swing phase the
other leg is in the stance phase and vice-versa.
The Gait signal is unique to a given person but the phases and their response
time in general are almost common to all persons.
This periodicity in gait signal has to be exploited in order to achieve tangible
The motion signal of the knee is highly non-linear due a double hump which is
noticed in the knee signal. This makes things much more difficult to model. All the
difficulty arises from this non-linear signal.
These points form the region of stable footing,
that is upon impact of a force if the foot is placed
in the region defined by these points then, the
biped will be able to recover from impact and be
able to balance itself.
The Capture region must be within the BoS
(Base of Support) or they must overlap to some
extent as in Fig.2
The BoS (Base of Support) is the area of the
convex hull formed by the feet.
If the Capture region is outside the BoS then the
biped will either fall or it must take a double step
in order to stabilize itself. (Fig.3)
Here the biped is modeled as a flywheel rather
than an inverted pendulum.
1. Ankle Strategy ( COP Balancing)
2. Hip Strategy (CMP Balancing)
3. Stepping ( Change of Support Strategy)
Pioneering work done by Benjamin Stephens, these decision boundaries define
the regions of stable gait. Any motion which lies between these defined set of
regions, is partly immune to the impacts of the external perturbations. The lines
representing stable gait depict closed formed loops , which closely represent the
The trajectories of stable gait are those,
which are originating in the green
region, these trajectories lie inside the
These regions are obtained from the
following equation :
The above equation has been obtained by approximating the biped to
a flywheel and applying the notions of Bang Bang control.
Foot Placement Estimator...
i. These are used to model passive
gait, where the biped is represented
as a compass (i.e. Compass Gait).
ii. Very similar to the capture
points/regions, but instead of
defining the capture regions these
define a set of vertical lines along
which the foot needs to be placed
in order to stabilize the gait.
iii. If the foot placement is either on
or beyond the FPE, then the gait is
stabilized otherwise as is evident
from Fig a. the biped tumbles
Reaction Null Space Transformation...
was initially applied to the space
robots but has been extended to biped
locomotion, using a two link planar
model representing a Linear Inverted
Pendulum. Selective Null Space
transformation has been used here.
The biped has been modeled using a
stable base and an unstable manipulator.
• Push Recovery is a
• Human Gait can only be
modeled using complex
constraint equations of two
link or three link planar
• System Modeling can be
tested for correctness until
it is implemented.
• It can be ported to the
• It can be solved using
Techniques if we have
• Rigorous System Design
incorporates the notion of
BIP- An Overview...
The framework consists of three independent layers these are :
Originally developed for modeling embedded and software
systems, but we have ported it to our domain.
Salient Features of BIP...
• Separation of Concerns: This simply means that the three layers are
independent of each other, each takes care of a particular function/stage of
the system design.
• BIP Space: The three layers can be represented in a three dimensional
space often dubbed as a BIP space. The three layers form the three different
coordinate axes. The system architecture is defined by the interaction and
priorities layer , the system behavior by the behavior layer.
• Expressive Power: The semantics and the syntax of the framework is
clean and unambiguous with a solid foundation on Boolean algebra. Yet it is
expressive enough to model even the most complex of heterogeneous
• Behavior : This is modeled as a set of Finite State Machines.
• Interaction : This is a set of ports joined by the connectors.
• Priority : This is charge of resolving the conflicts and deadlocks which might
occur in the system.
There are two types of ports Trigger and Synchron.
Synchron: Both Components act in complete synchronization.
Trigger : The components may act in sync or independently of each other.
Given below are the types of interactions possible with above mentioned ports.
Next Few Slides Depict the Theoretical
Tools used in Modeling...
1. Almost all real-time systems are examples of timed systems, this require a
very high degree of synchronization with a set of clocks.
Timed as the named suggests is of prime importance in all real – world
critical applications. E.g. Flight Control Systems.
These systems are modeled with the help of a timed automata which is an
extension of the finite state automata.
Its just a fancy name for an automaton with a set of local/global clocks,
where each state implicitly remembers the time of each event or rather its
Human Gait is a highly timed and synchronized system hence, approximating
it by a timed automata will not be wrong on the contrary it will improve the
correctness of the model.
A hybrid automaton is used to model any system which has both discrete and
continuous states. These hybrid systems form the core components of most
embedded systems today hence; ways to model these in an efficient and effective
manner is the real challenge. This automaton fits our purpose because human gait
inherently consists of both discrete (stance) phase and continuous(swing) phase.
These phases are further subdivided into several atomic phases which will form the
basis for our system design.
It is a more generic version of a non deterministic finite automaton, where
we associate with each state transition a probability .Thus, the transition
function transforms into a stochastic matrix whose elements give the
probability of the state transitions
There is also an associated probability of being in an initial state.
These are a special kind of automata which are used for modeling systems
which have a probability associated with each transition phase, almost all the
processes that we model are stochastic in nature (including human gait)
hence, this was the automata of our choice.
Man I am
overwhelmed by all
these classes of
Which one do I
That is where we come in to save the day....
Take them All....
Polynomial Fitting Module...
For a sampling rate of less than or equal to 10, fit a polynomial of the
For sampling rate of greater than 10, fit a polynomial of degree 10 and
This might be counter intuitive because, conventionally a spline
interpolant gives the best fit and it’s the most shape preserving curve.
Well, we want the system to make mistakes and learn from them, that is
the only way a generic gait model can be developed.
This module fits a polynomial for every gait cycle to the ankle, hip and
knee joint angles respectively.
This module is responsible for calculating the least squared error
between the output of the polynomial and the input data for all data
points and all the gait cycles.
This error is stored in a file for further use of the Error Modeling
Stochastic Phase Generation...
This is the place where we bring things all together, the timed hybrid
probabilistic automata is responsible for modeling this phase and all the
The diagram in the following page gives a detailed description of the
automata which is employed.
The probability is also a measure of the error in our case a high probability
implies a high degree of error and vice –versa.
Details of the Implementation...
1. This view of the BIP framework essentially shows how the different atomic
components interact with each other and the atomic states through which they
2. We had to extend the BIP framework to include the inversion operator and a new
phase which is aptly termed as the inversion phase.
3. This has been done to reduce the number of states in the automaton. The use of
this operator makes the Hybrid Automata reduce to an automaton with minimal
number of states.
Details of the Inversion Operator...
Refinement of the Proposed Empirical
Machine Learning Algorithm
The initial algorithm only takes into account the first moment about the mean. So
we decided to try it out with higher moments. Results were not satisfactory the
error handler term was overshooting its range. Hence, the minor changes were
required these are:
This is completely based on our dataset hence, we don’t have
any idea of how this will scale or extrapolate to other datasets,
the other major drawback of this error handling term is that,
the value of the control parameters for the error handler term
are fixed they are not tailor made to the specific gait profiles of
ii. The other major drawback of this approach is that it doesn’t
have a notion of combining the different polynomials used
during the training phase. We just have individual gait profiles
of the person. But we haven’t generated the generic
polynomial to be used in the testing phase.
In order to account for this, we have decided to introduce two new
Details of the Model...
1. It consists of two composite components the left leg and the right leg.
2. These Composite Components in turn consists of the four atomic components
these are :
3. The Interface is formed by three points these are the CMP (Centroidal Moment
Point) , COP (Centre Of Pressure) and the COM (Centre of Mass).
4. The priorities layer consists of the three strategies these include the Ankle, Hip and
Finally- The Road Ahead...
1. Modeling Biped Locomotion Using Petrinets and Verifying it
using the formal methods
2. Using Cellular Automata to Model Human Gait – A Computer
vision based approach
3. Use of Random Restart Hill Climbing coupled with Gaussian
flattening to carry out the regression analysis