Embed Size (px)
DESCRIPTIONModeling of the age old problem of bipedal locomotion using a hybrid automaton and integrating it with the BIP (Behavior,Interaction,Priority) framework
Modeling Biped Locomotion Using Hybrid Automata
Multi Disciplinary Nature of the Approach..
Software Engineering Rigorous
I won’t fall if you push me ,
but you will fall if I Push you
A Brief Introduction to Human Gait...
Salient Features of Human Gait... The motion of the COM is sinusoidal in nature both in the vertical and the horizontal plane.
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 results.
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.
Classical Approaches to Push Recovery
Foot Placement Estimators
Reaction Null Space Transform
Capture Points... 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.
Different Strategies for Push Recovery1. Ankle Strategy ( COP Balancing)
2. Hip Strategy (CMP Balancing) 3. Stepping ( Change of Support Strategy)
Decision Boundaries...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 lyapunov exponents.
Continued... The trajectories of stable gait are those, which are originating in the green region, these trajectories lie inside the decision boundary. 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 down.
Reaction Null Space Transformation... This 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.
The Next Few Slides ElucidateHow Our Work Is a Paradigm Shift
From the Existing Work...
Traditional Approach• Push Recovery is a
hardware problem. • Human Gait can only be
modeled using complex constraint equations of two link or three link planar models
• System Modeling can be tested for correctness until it is implemented.
Our Approach• It can be ported to the
software domain. • It can be solved using
Machine Learning Techniques if we have enough data.
• Rigorous System Design incorporates the notion of “Correctness by Construction” [BIP]
Behold the BIP framework...
BIP- An Overview...
The framework consists of three independent layers these are : 1. Behavior
2. Interaction 3. Priority
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 systems. • 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.
BIP Interactions... 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...
Timed Systems...1. Almost all real-time systems are examples of timed systems, this require a
very high degree of synchronization with a set of clocks.2. Timed as the named suggests is of prime importance in all real – world
critical applications. E.g. Flight Control Systems.3. These systems are modeled with the help of a timed automata which is an
extension of the finite state automata.4. 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 timestamp.
5. 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.
Hybrid Automata...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.
Phew... That’s a lot of Automata for a day
Man I am overwhelmed by all
these classes of automata.
Which one do I choose......??
That is where we come in to save the day....
Timed Hybrid Probabilistic
Take them All....
Modular View of the System...
Machine learning Algorithm...
Error Modeling Module
Stochastic Phase generation and
Polynomial Fitting Module...
For a sampling rate of less than or equal to 10, fit a polynomial of the same degree.
For sampling rate of greater than 10, fit a polynomial of degree 10 and no more.
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.
Error Calculation Module...
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 module.
Error Modeling Module...
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 associated things.
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.
Implementation of BIP
Granular View of BIP Model...
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 pass.
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
i. 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:
ii. 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 an individual.
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 concepts.
Penalty Depends on Error...
We are learning the Coefficients...
Weight Correction Function
The Final Algorithm
And Now Lets Have a Look at the Results...
Does the Error Converge...
The Last Leg - Modeling Push Into BIP...
Abstract View of the BIP Model...
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 :
Ankle Knee Hip Foot
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 Stepping.
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
So that’s All Folks...
Do you have any questions...??