automatic design of navigation systems a dream or near ... · automatic design of navigation...
TRANSCRIPT
Automatic Design of Navigation Systems –
A Dream or Near-term Future
Zeev Berman
http://www.bermanconsult.com
ETH, Zurich , June 2015
Design of Navigation Systems
How to select the architecture for Kalman filter (measurement model and state
selection) and select the proper parameters (tuning process ) for Kalman filter ?
Real time implementation Testing
Automatic Design
Automatic design: How the designer can get easily (by pushing a button) the proper design? Customer adapted system Self- design : how the customer can get design adapted for its application and requirement ?
Lecture overview
Introduction #1 Kalman filter
Introduction #2 Classical systematic methodology for Kalman filter design
Improved procedure for Kalman filter design
Implementation and testing to support flexible design
Customer-level adaptation
Summary and discussion
Introduction #1 – Kalman filter
Rudolf (Rudy) Emil Kalman , born in 1932 in Hungary, educated in USA, published in 1960, “A New Approach to Linear Filtering and Prediction Problems” - provided efficient, recursive solution for linear, Gaussian optimal estimation problem. Starting in 1973, he also held the chair of Mathematical System Theory at the Swiss Federal Institute of Technology in Zürich, Switzerland.
Define dynamics (propagation) equations for state vector Define measurement equation Set some statistics parameters
Get procedure for optimal state vector estimations
6
Kalman filter assumptions
State vector propagation equation
The process noise should be zero mean, white (uncorrelated with respect to time) with known variance
( 1) ( ) ( ) ( )x k A k x k w k
( )w k( )Q k
Information about the system is conveyed in measurement equation which is modeled as follows:
( ) ( ) ( ) ( )z k H k x k v k
The measurement noise should be zero mean, white (uncorrelated with respect to time) with known variance
( )v k
( )R k
The process noise and measurement noise are uncorrelated (independent) processes.
7
The recursive process to update state vector estimation
Problem solved by Rudolf Kalman
ˆ ˆ ˆ( ) ( ) ( ) ( ) ( ) ( )x k x k K k z k H k x k
1( ) ( ) ( ) ( ) ( ) ( ) ( )TK k P k H k H k P k H k R k
With
Is the optimal estimator with respect to minimal quadratic estimation error criteria.
• P(k)- The covariance of the estimation error • P(0) – initial value for covariance of state error is required
8
Summary of Introduction #1 – Kalman filter
The “deal” proposed by Rudolf Kalman is as follows: Provide the system model : Fulfill some orthogonality properties of process and measurement noise You will get optimal estimator for your state vector
0 , ( ), ( ), ( ), ( )P A k Q k H k R k
Bad news; no deal !!! We do not know the system model , if we know it, it is too complicated for Kalman filter implementation
9
Introduction #2 – Why it works so well ?
Since 1960’s, Kalman filter is widely used in many applications: navigation, radar, communication etc.
Rudolf Kalman has received the 2008 National Medal of Science, the highest honor the United States gives for scientific achievement.
10
Introduction #2 – The first application
Stanley F. Schmidt , chief of Dynamic Analysis Branch at NASA (Mountain View), led the first implementation of Kalman filter for on board trajectory estimation in Apollo 11 Moon landing mission.
Reasons for selection: • Low computational complexity
(implementation was on 15 bits fixed point arithmetic's, 4Kb memory). Recursive estimation scheme designed for time variant systems.
• Satisfactory performance, achieved due to robustness with respect to modelling errors.
11
Model (true) with state vector
Initial Conditions
Random disturbance
Random noise
Known: measurement value
Assume: system model, statistics for initial conditions, random disturbances, and random noise
Use Kalman filter equations, to provide “good” approximation for state vector
Introduction #2 – Engineering estimation problem
Measurement
12
Introduction #2 – One model approach
Assume model for Kalman filter , implement the underlying Kalman filter, test real-life system.
After spending some time improving the system, decide that the system operates properly
Problem : we do not know what kind of performance to expect from the system, namely we do not know if the system works properly .
13
Model (true) with state vector
Initial Conditions
Random disturbance
Random noise
Known: measurement value
Assume: system model, statistics for initial conditions, random disturbances, and random noise
Use Kalman filter equations, provide “good” approximation for state vector
Introduction #2 – Engineering estimation problem
Measurement
14
Introduction #2 two models approach
Assume a model for the system (complete, truth) error model, assume model for Kalman filter, analyze performance, implement , test.
The expected performance is known before real-life test, so the decision about accepting the system or updating the error model the is based on engineering analysis
Introduction - Systematic Design Procedure
15
(1) Develop a “truth” model (2) Generate the Kalman filter based upon the “truth” model as a
“benchmark” for performance. (3) Propose simplified, reduced order system by removing and
combining states. (4) Conduct a covariance performance analysis of each proposed
Kalman filter being driven by measurements derived from the truth model, “tune” each filter.
(5) Conduct a performance/computer loading tradeoff analysis and select a design.
(6) Implement the chosen design on the online computer (7) Perform checkout, final tuning, and operational test of the filter
Peter S. Maybeck, Stochastic models, estimation and control, Academic Press 1979.
Introduction - Systematic Design Procedure
16
(1) Develop a “truth” model (2) Generate the Kalman filter based upon the “truth” model as a
“benchmark” for performance. (3) Propose simplified, reduced order system by removing and
combining states. (4) Conduct a covariance performance analysis of each proposed
Kalman filter being driven by measurements derived from the truth model, “tune” each filter.
(5) Conduct a performance/computer loading tradeoff analysis and select a design.
(6) Implement the chosen design on the online computer (7) Perform checkout, final tuning, and operational test of the filter
Peter S. Maybeck, Stochastic models, estimation and control, Academic Press 1979.
17
Introduction #2 – Systemic design procedure
Large, well known navigation systems producers know and apply this procedure, or its modification. Navigation system development cycle used to take many months or even years.
Many developers abandoned this systematic design procedure because of its complexity and work effort required.
In the past, the space for reduced order KF design was very limited due to computer complexity constraints.
Part 1 : Improved procedure for Kalman filter
design
18
Expert monitored process , with partial automation, already implemented, with very
short navigation system design cycle.
Personal point of view
The scope and quantity of navigation systems is growing rapidly, mainly
because of two reasons:
o Low cost of sensors (MEM`S IMU, camera, GPS and other RF devices,
lasers, etc.)
o Low cost of computer resources
Design options
• IMU – constant drift and constant bias are well accepted, what about
drift instability, bias instability, scale factor, non-orthogonality,
vibration and acoustic noise bias shifts
• GPS – position and velocity error – white or white + Markov
• Camera data – boresight, calibration errors
• Time synchronization error
Design tasks
• Select IMU and other sensors for a required performance
• Computer complexity trade-off: measurement size and rate versus state
vector size.
• State vector size – the full model has 40-60 states, the reasonable
(today) Kalman filter may have 15-30 states. What kind of states to
include in the reduced order Kalman filter : instability, scale factor,
Markov components for GPS, boresight for camera , etc
True Covariance Analysis
TCA Truth Covariance Analysis
Estimation error covariance
Systems models (truth and filter)
,t fm mS S
1
0 0 1, ( ), ( ) ( ), ( )
K K
m k kS P A k Q k H k R k
22
23
Set preliminary truth model, Analyze the best achievable
performance.
Design reduced order KF with minor degradation with respect to the best achievable performance. Solve two problems: state vector selection and tuning.
Predict the expected performance, test , analyze actual performance , update error model (if requested)
Striving for performance
Striving for quality:
The truth model is validated by
tests
The Proposed Design Procedure
The Proposed design framework
24
Error budget Sensitivity Study Needed for better analyzing the truth model.
KF design with different tuning policy: no additional, optimal , sub-optimal
Carried out by inputs manipulations, automated easily.
Instead of “blind” search for the best tuning , we use the truth model to reduce the search procedure
Candidate KF design Carried out by inputs manipulations, automated easily.
System model parameterization
TCA Truth Covariance analysis
Estimation error covariance
Systems models (truth and filter)
,t fm mS S
1
0 0 1, ( ), ( ) ( ), ( )
K K
m k kS P A k Q k H k R k
Better parameterization is needed: error model , trajectory and scenario
For optimization a scalar output is needed: performance index.
25
26
Error model describes all error sources of sensors participating in the integration by three main attributes: sigma, tau, and type (name).
The core Kalman filter states consists of position, velocity and attitude errors. Consequently propagation and measurement equation must be related to those errors.
System model parameterization
27
Trajectory describes all dynamic data required to define transition matrix in propagation equation.
Scenario describes data required to define measurement matrices, measurements types, logics and timing and type of errors contributing to measurement noise.
System model parameterization
28
1
( )pN
mi
E i
1
0( )
K
kA k
1
0( )
K
kQ k
1
( )K
kH k
1
( )K
kR k
Covariance matrices
0P
1
1
( ) ,
( )
p
p
N
mi
Ntype
mi
E i
E i
Model matrices
E2S (from error model to
system model)
Scenario
Trajectory
mEError model
System model parameterization
Implementation – the software structure
Filter system model
Performance Index
tmS
29
TCA Truth Covariance Analysis
E2S
fmS
Truth system model
Scenario, Trajectory
E2S
fmE
tmE
Error model
1. Normal 2. Error budget 3. Sensitivity study 4. Normal
Modes:
1. Normal 2. Normal 3. Normal 4. KF design
mE
30
The resulting system is equivalent to the reduced order system model obtained by removing corresponding rows and columns.
Lets Ω be the set of selected states for the reduced order KF
By setting ( ) 0fmE i i
KF design – no additional tuning
The remaining entries represents the truth system model , which is not necessary the optimal “tuning” for the reduced order model.
KF design - no additional tuning
Performance Index
tmS
31
TCA Truth Covariance Analysis
E2S
fmS
Scenario, Trajectory
E2S
fmE
tmE
Error model
tm mE E
0( )
f type typem m
fm m
fm
m
E E
E E
iE i
E i i
Selected states
mE
Performance Index
tmS
32
TCA Truth Covariance Analysis
E2S
fmS
Scenario, Trajectory
E2S
fmE
tmE
Error model
tm mE E
0( )
1
fm m
zero
E E
iK i
i
.*zeroK K K
zeroK
mE
Selected states
KF design – optimal tuning
33
2
( )
Tf f f f f
dyn
tdyn zero
Ttdyn dyn dyn
P A P A Q Q
A A diag Q
Q A P A
1( )
0
tzero
t
iQ i
i
t
Lets Ω be the set of selected states for the reduced order KF
Lets be the set of states to be used for dynamic tuning t
Modified propagation equation
KF design – sub-optimal tuning
Implementation – the software structure
Filter system model
Performance Index
tmS
34
E2S
fmS
Truth system model
Scenario, Trajectory
E2S
fmE
tmE
Error model
Modes:
1. Normal 2. Normal 3. Normal 4. KF design
mE
, ,zero zeroK Q
Modified Truth Covariance analysis
1. Normal 2. Error budget 3. Sensitivity study 4. Normal
Tuning: no additional, optimal, sub-optimal
Implementation – Automated KF design
Filter system model
Performance Index
tmS
35
E2S
fmS
Truth system model
Scenario, Trajectory
E2S
fmE
tmE
Error model
Modes:
mE
, ,zero zeroK Q
Modified Truth Covariance analysis Manager
, ,t
* * *, ,t
36
Automatic Kalman filter design – summary so far
Scenario
Trajectory
mEError model Automatic reduced- order Kalman filter
design + performance evaluation
The design product is abstract, it needs to be implemented and
tested.
* * *, ,t
The outcome of the design process is set of states and tuning parameters
Part 2 : Implementation and testing
44
Flexible navigation systems that may be re-configurated
Next challenge – how to implement flexible navigation system
How to implement real-time software that can accept different Kalman filter architectures: • States – parametric configuration • Sensors - parametric configuration • Tuning- parametric configuration
We need to prepare a framework, that inside its borders can be flexible.
Next challenge – how to implement flexible navigation system
Basic assumptions: The system core is inertial navigation Kalman filter is based on errors, therefore measurements
are calculated as differences between data based on inertial navigation and sensors
The implementation is based on optimal-reset principle , all known errors are immediately used to correct inertial navigation and to correct sensors
47
Navigation system structure
Navigation
Algorithm
Senor 2
Measurement
preparation
(synchronization,
transformation to
error level
description,
measurement
compensation)
Error reset
IMUIMU errors
compensation
Senor K
Sensor 2 error
compensation
Sensor K errors
compensation
Sensor 2 data
processing
Sensor K data
processing
Kalman filter
propagation and update
Initial data
... ... ...
Pos,Vel,Att
( )eX k
( )z k
( ) ( ) ( )eX k K k z k
( )K k
,B Ba ,c cB Ba , ,P V
, , , ,B BP V a
Design = Kalman filter design = state selections and tuning equations
48
Navigation system flexible implementation
1. Inertial navigation algorithm is a general one.
2. Prepare sensor layer as many as needed.
3. Prepare the error reset as general as possible.
4. Kalman filter equations (propagation, update) should be
reconfigurable. Matrices defined as maximal sizes , calculations
optimized for actual size. The models are the same as
developed for TCA scheme.
5. Extensive testing: should cover many possible configurations.
49
Implementation and testing phase 1
50
Implementation and testing phase 2
54
The process of navigation system development
Define development envelope (trajectory, scenario, performance index).
Define the full error model
TCA analysis: Error budget, Sensitivity study,
Reduced order Kalman filter design
Implementation Testing
Update the error model from test data
Part 3 : Customer –level adaptation
56
Self-design systems are the ultimate goal of this approach
57
Customer – level adaptation
The design methodology is based on trajectory, scenario, performance index and error model. There are strongly related to customer operational cycle and requirements.
We propose to consider three different levels of customer adaptation.
1. Data from customer 2. Test by customer 3. Self-design system
58
Customer level adaptation - Data from customer
Customer fulfill a questionnaire about its requirements and operational cycle. Designer makes the necessary design updates.
The software version update is straightforward. This type of customization may lead to hardware updates as well, for example additional or alternative sensors.
59
Customer level adaptation – Test by customer
Customer fulfill a questionnaire about its requirements and operational cycle. Customer rents a reference units and carries out tests of its system. Customer sends the recorded raw data to the designer. Designer makes the necessary design updates.
The software version update is straightforward. This type of customization may lead to hardware updates as well, for example additional or alternative sensors.
60
Customer level adaptation – Self-design at customer level
Customer rents a reference units and carries out tests of its system. There is a software (internet server) that analyzes this test and makes the design updates.
The software version update is straightforward. This type of customization may lead to hardware updates as well, for example additional or alternative sensors.
Summary
61
Systematic , effective, automatic design of Kalman filter was presented. What next ?
perhaps a great retirement ?
Summary
62
Or to get into the next challenge : Automatic design leads to flexible, reconfigurable navigation system. Flexible, reconfigurable navigation system leads to customer –level adaptation All of this is feasible today (with some engineering effort)
Summary
63
Then the next challenge will appear as necessary: Self-design (at customer level) navigation system still need some technical and marketing progress.