Title: Hybrid State Estimation
1Hybrid State Estimation
- Overview, demonstration, and design issues
- Stanislav Funiak
2Outline
- Hybrid estimation
- Overview of the problem, example
- Rao-Blackwellised Particle filtering (RBPF) for
PHA - Demonstration
- Base model
- Goals of Base model 1
- New in Base model 1.5
3Problem
- Fault diagnosis
- Extract subtle symptoms from noisy observations
- Potentially complex artifacts
- Assumption the system can be easily modeled by a
set of behaviors and a set of ODEs / algebraic
equations
4Model PHA
ball
5Model CPHA
ball
6Goal
- Compute the posterior distribution over the
hybrid state - p(xc,t, xd,t y1t, u0t)
- p(?1,t, ?2,t, ?1,t, ?2,t, healtht, has-ballt
observed ?20..t
desired torque 0..t)
.
.
7HofbaurWIlliams 02 Hybrid Belief State Update
- Update the posterior distribution in two steps1.
transition expansion2. observation
transition expansion
observation
8Our Approach
- Track a set of mode sequences with a bank of
Kalman Filters
Problem the number of possible mode sequences
increases - exponentially in time -
exponentially in the number of components Each
mode sequence contributes to one Gaussian in the
posterior Claim Might be able to represent the
posterior with a fewer Gaussians
9Selecting relevant mode sequences
- Two methods
- K-best filtering
- Looking for a set of leading sequences
- Obtained efficiently with A search
- Particle filtering
- Selecting trajectories probabilistically approx.
posterior - Rao-Blackwellised particle filtering
10Rao-Blackwellised Particle Filtering
(1) Initialization step
draw samples from the initial distribution over
the modes initialize the corresponding continuous
state estimates
mok,1
mf,0
mf,1
mok,0
mok,0
mok,1
mok,0
mok,1
(2) Importance sampling step
evolve each sample trajectory according to the
transition model and previous continuous estimates
(3) Selection (resampling) step
(4) Exact (Kalman Filtering) step
determine transition observ-ation model for
each sample update continuous estimates
11Demonstration
12Conclusions
- Need several estimation steps
- or n-step filtering
- Need to ensure that discrete transitions (priors)
do not dominate when they should not
13Future work
- Evaluation
- Choosing relative frequences of discrete updates,
continuous updates (predictions), and
observations - k-best vs. sampling
- Implementation
- Discrete inputs
- Model loading
- General clean-up
- UI
14Base Model v. 1.5
15Goals
- Support for hybrid models
- Templated vector-like DynamicArray
- General simplification and clean-up
16Goals of Base model v. 1
class TimedCCAVariable enum Type
State, Control, getName()
getDomain() getType()
class CCAVariable enum Type State,
Control, getName() getDomain()
getType()
class BaseModelVariable enum Type
State, Control, getName()
getDomain() getType()
class HCAVariable enum Type State,
Control, getName() getDomain()
getType()
17Goals of Base model v. 1
- Connecting different components of Titan
Sequencer
Base model
Mode reconfiguration
Mode estimation
18Drawbacks of Base model v. 1
- Assumed overly restrictive C environment
- no templates
- no multiple inheritance
- no exceptions (until later on)
- Legacy
- discrete models (time)
- RRF random requests for features
- ?? cluttered in some places / hard to use
19Why do we care?
DynamicArray 30 kB of C code
BaseModelVariableArray 20 kB of C code
BaseModelDomainArray 20 kB of C code
CCAVariables 20 kB of C code
VectorltTgt
CCADomains 5 kB of C code
20 kB of C code
BaseModelClauseArray 20 kB of C code
HCAAutomatonArray 20 kB of C code
HCAFunctionCallArray 20 kB of C code
CCAAutomata 20 kB of C code
BaseModelValueArray 20 kB of C code
VectorltBmAssignmentgt 20 kB of C code
CCATransitions 10 kB of C code
CCAAssignments 5 kB of C code
HCATransitionArray 20 kB of C code
20Why do we care?
- Multiple inheritance
- example index propertygetName()
- Strong typing
- Example 1 real vs. finite domain variables
- Example 2 PHA mode variables vs. finite domain
variables - Clean interfaces
- will get things done faster
- fewer bugs
21Accomplishments in Base model 1.5
- New BmVector
- Cleaner, more consistent interfaces
- Strong typing of Real vs. discrete variables
- Additional features
22What needs to be done
- Meet the needs of the users
- People working on different parts of the engine
- Modules we interface with OpSAT, etc.
- Maintain cleanliness and consistency of
interfaces without sacrificing efficiency - Deep vs. shallow copying and comparisons
- Exception handling convention
- Goals - avoid memory leaks in constructors -
unified approach to exceptions - Must be a team effort
23Summary
- Implemented basic hybrid estimation using RBPF
- Cleaned up and redesigned parts of Base model
- Next steps
- HE discrete inputs, model loading, comparison
with k-best - Base model finish the redesign of Base model
bring it back to the main CVS
trunk
24Old slides
25K-best Filtering
- A search through space of possible successors
- Evaluated in the order of
Admissible heuristics upperbound on
probabilityfrom nv onward
Probability (cost) of trajectory so far
26Comparison with k-best Filter
Multi-modal particle filter
Gaussian k-best filter (HME)
Same representation (mixture of Gaussians/mode
trajectories) Recursive methods ) online operation
- Samples trajectories according to the posterior
- Trajectory hypotheses spread-out ( according to
posterior)
- Looks for k best trajectories using A
- Focus on trajectories with high posterior
probability
27Current Work
- Mixing k-best and sampling strategy
- Integration into Titan
28Current work Unified Selection Method
- Together, k-best and particle filtering can
perform better than individuallyIndividual
weaknesses - Sampling in discrete domains discards information
- k-best filtering may overly focus on one set of
hypotheses - One strategy periodically exchange hypotheses
between filters - for trajectories in PF, maintain the posterior
probability
29Titan Hybrid-Timed
Hybrid Hierarchical Constraint Automata (HHCA)
Mitch
Greg
Mitch
Model-based Executive
RMPL Program
Control Sequencer
Timed Hierarchical Constraint Automata (THCA)
Control Program
Mode Estimation
Mode Reconfiguration
Plant Model
Timed Concurrent Constraint Automata (TCCA)
Deductive Controller
Stano John L. Michael H.
Concurrent Probabilistic Hybrid Automata (CPHA)
Andreas H.
Michael H.
30Summary
- cPHA modeling formalism for hybrid systems
- Set of efficient techniques for state (mode)
estimation in large systems - K-best filter
- Particle filter
- Understanding of theoretical foundations
approximations - Future work
- More experimental work, evaluate trade-offs of
different strategies - Qualitative guidance, hybrid model decomposition,
hybrid model learning
31References
- Funiak, S., and Williams, B. C. (2003).
Multi-modal particle filtering for hybrid systems
with autonomous mode transitions. In DX-2003,
SafeProcess 2003. - Hofbaur, M. W., and Williams, B. C. (2002). Mode
estimation of probabilistic hybrid systems. In
Hybrid Systems Computation and Control, HSCC
2002. - Murphy, K., and S. Russell (2001).
Rao-Blackwellised particle filtering for dynamic
Bayesian networks. In Sequential Monte Carlo
Methods in Practice. - Crisan, D. (2001). Particle Filters - A
Theoretical Perspective. In Sequential Monte
Carlo Methods in Practice - Dearden, R., and Hutter, F., (2003). Gaussian
Particle Filter for Diagnosis of Non-Linear
Systems. In DX-2003, SafeProcess 2003.
32Equations for Acrobot