26 views

Original Title: Matrix Exponential

Uploaded by geodinger9316

- oh_seung-min_200712_phd.pdf
- 385AIcor
- 06850072 (1)
- Alacam2008 2 2
- Real-Time Optimization for Large Scale Nonlinear Processes -DIEHL
- 2007 11 kusy b
- Multiple.camera.tracking.of.Interacting.and.Occluded.human.motion
- MATLAB Course - Part 1
- Neural Networks for Robotics.pdf
- Application of the Kalman Filter on Full Tensor Gravity Gradiomet
- Improving Adaptive Kalman Filter In
- 10.1.1.40
- Kalman
- gauss seidel
- D Paper Imagawa
- c2-9.pdf
- Algo 2010 Fall 20
- Final Class
- 10.1.1.132
- Ascii Quick Reference

You are on page 1of 12

James Lebak

Andrea Wadell

Massachusetts Institute of Technology

Lincoln Laboratory

Eighth Annual High-Performance Embedded

Computing Workshop (HPEC 2004)

30 Sep 2004

This w ork is sponsored by the United States Nav y under Air Force Contract F19628-00-C-0002. Opinions,

interpretations, conclusions, and recommendations are those of the authors and are not necessarily endorsed by

the United States Gov ernment.

MatrixExponential-1

JML 9/20/04

Definition

[Moler and Van Loan,2003]

The solution to the differential equation

x = Ax(t)

x(0) = x 0

is given by

x(t)= e At x 0

Where e is!

the matrix exponential function,

At

!

!

2 2

A

t

At

e = I+ At +

+ ...

2!

At

Notice that if A = [aij ],e " [e

!

MatrixExponential-2

JML 9/20/04

a ij t

] in general.

Tracking accomplished using the extended Kalman filter

extended means that system dynamics are non-linear

MatrixExponential-3

JML 9/20/04

Estimate next state based on previous state and new measurement

Measurement

zk

Filter

Gain

Updated

and

x k+ , Pk+ state

covariance

estimates

Measurement

Transformation

Previous

state and

covariance

estimates

x "k , Pk"

!

MatrixExponential-4

JML 9/20/04

and Q(t) is the process noise covariance.

MIT Lincoln Laboratory

Calculation Overview

Preferred method, Pad approximation, is

only valid when ||A|| is small

Use the fact that e A = (e A / m ) m

1.

2.

3.

Use a Pad approximation to calculate E = e

Perform j matrix multiplies to calculate E

A /2 j

2j

!

!

MatrixExponential-5

JML 9/20/04

X = A;

c = 1;

E = I;

D = I;

for(k = 1; k <= q; k++) // q=number of iterations

{

c = c * (q-k+1) / (k*(2*q-k+1));

X = A*X;

// Matrix multiply

E = E + cX;

// Matrix scale and add

if (k is even)

// Matrix add or subtract

D = D + cX;

else

D = D - cX;

}

E = D\E;

// Solve using LU factorization

MatrixExponential-6

JML 9/20/04

Implementation Overview

Step

Operations

Percentage

of op count

Scale the

matrix A

Elementwise

multiply

<2%

scale, add

50-75%

LU and

backsolve

3-6%

Repeated

squaring

Matrix multiply

13-50%

Implementation Features

Single-precision real or

complex float

C++

Uses an object for

storage

Calls VSIPL routines

Uses Altivec-optimized

matrix multiply

Choose accuracy to

match limits of singleprecision calculations

Matrix<T>

void run(

Matrix<T>

Matrix<T>

MatrixExponential-7

JML 9/20/04

&A,

&E);

&A,

&E);

// LU factorization

// Performs computation

MIT Lincoln Laboratory

Performance

1200

30

1000

25

800

20

600

15

400

10

200

0

120

20

40

60

80

100

Efficiency (%)

Throughput

(Mflop/s)

Complex

Real

Matrix Size

Achieves respectable performance for large matrices

For tracking, sizes of interest are small 6x6 matrices

A tuned implementation could be produced for this size

MatrixExponential-8

JML 9/20/04

Performance Breakdown

100%

90%

80%

Percentage

70%

Squaring

60%

LU and backsolve

50%

Pade iteration

40%

Scale

30%

20%

10%

0%

6

24

104

Throughput (Mflop/s)

Matrix size

1600

40

1400

35

1200

30

1000

25

800

20

600

15

400

10

200

Performance breakdown

on PowerPC G4

Steps based on matrix

multiply are more

efficient than other steps

For large matrices, matrix

multiply steps still

consume most of the

execution time

LU/backsolve is a

substantial percentage of

time despite being a low

percentage of the op

count

0

0

20

40

60

80

100

120

Matrix size

Scale

MatrixExponential-9

JML 9/20/04

Pade iteration

LU and backsolve

Squaring

7000

80%

6000

70%

5000

60%

50%

4000

40%

3000

30%

2000

20%

1000

10%

0%

Matrix exponentialOther state update

Percentage of overall

Operations

Use execution time of 6x6 real

matrix exponential

Assume remainder of EKF

has efficiency comparable to

LU factorization (~0.04%)

Vary track rate from 2-10 Hz

Measurement

update

Step

Trackable targets

300

Targets

250

200

150

100

50

0

0

Matrix exponential is a

substantial part of the EKFs

operation count

How many targets could a

single processor track?

potentially track many targets

10

MatrixExponential-10

JML 9/20/04

Conclusions

tracking applications

A large percentage of the operations are matrix

multiply functions

An efficient implementation of this function allows

it to be used in an extended Kalman filter

Many targets can be tracked using even a single

processor

Using multiple processors obviously allows more

targets to be tracked

MatrixExponential-11

JML 9/20/04

References

[1] Michael Athans, Robert H. Whiting, and Michael Gruber. A suboptimal

estimation algorithm with probabilistic editing for false measurements with

applications to target tracking with wake phenomena. IEEE Transactions

on Automatic Control, 22(3):372384, June 1977.

[2] Y. Bar-Shalom, X. Li, and T. Kirubarajan. Estimation with Applications to

Tracking and Navigation. John Wiley and Sons, 2001.

[3] A. Farina, B. Ristic, and D. Benvenuti. Tracking a ballistic target:

comparison of several nonlinear filters. IEEE Transactions on Aerospace

and Electronic Systems, 38(3):854867, July 2002.

[4] Gene H. Golub and Charles F. Van Loan. Matrix Computations. Johns

Hopkins University Press, 3rd edition, 1996.

[5] Cleve Moler and Charles Van Loan. Nineteen dubious ways to compute the

exponential of a matrix, twenty-five years later. SIAM Review,

45(1):349,March 2003.

[6] B. Ristic, A. Farina, D. Benvenuti and M. S. Arulampalam. Performance

bounds and comparison of nonlinear filters for tracking a ballistic object

on re-entry. IEE Proceedings on Radar and Sonar Navigation, 150(2):6570,

April 2003.

MatrixExponential-12

JML 9/20/04

- oh_seung-min_200712_phd.pdfUploaded byDeni Chan
- 385AIcorUploaded byPonciano Jorge Escamilla-Ambrosio
- 06850072 (1)Uploaded byPradeep Kundu
- Alacam2008 2 2Uploaded byJohn Jones
- Real-Time Optimization for Large Scale Nonlinear Processes -DIEHLUploaded bykoponas
- 2007 11 kusy bUploaded bywayne.hanwei
- Multiple.camera.tracking.of.Interacting.and.Occluded.human.motionUploaded byKALFER
- MATLAB Course - Part 1Uploaded byAbdo Ibro
- Neural Networks for Robotics.pdfUploaded byLeonel
- Application of the Kalman Filter on Full Tensor Gravity GradiometUploaded bylizhi2012
- Improving Adaptive Kalman Filter InUploaded bysnbf
- 10.1.1.40Uploaded bymhkondekar8116
- KalmanUploaded byBalaji Angamuthu
- gauss seidelUploaded bySaima Nasir
- D Paper ImagawaUploaded bykentaro1981
- c2-9.pdfUploaded byiwc2008007
- Algo 2010 Fall 20Uploaded byAi Chung
- Final ClassUploaded byMohammad
- 10.1.1.132Uploaded byNenad Vicentijevic
- Ascii Quick ReferenceUploaded bySiladittya Manna
- How Much Mathematics Does an IT Engineer Need to Learn to Get Into Data Science_machine LearningUploaded byhamedfazelm
- sm_12_math_eng_201617Uploaded byBhavesh Desai
- Garch and stochastic volatilityUploaded byVivek Agrawal
- data structure homeworkUploaded byElvin Memmedov
- Comparison of Different Electrocardiogram SignalUploaded bythariqsatria
- C Programs for 1st B.tech1Uploaded byAnup Kumar
- ASEE 2011 Spreadsheet Draft Jan21 2011Uploaded byhaffa
- Maximum Subrectangle ProblemUploaded byzu1234567
- Reactor PolimericUploaded byLacry Coca
- 10[1].1.1.110.383Uploaded byemadnour4444

- Downloading From ScribdUploaded bygeodinger9316
- Downloading From ScribdUploaded bygeodinger9316
- Schrodinger UncertaintyUploaded bygeodinger9316
- Advances DACs ADCs DSP Optical Coherent TransceiversUploaded bygeodinger9316
- Downloading From Scribd AgainUploaded bygeodinger9316
- Dynamic Linewidth Measurement Using Intradyne Coherent RecieversUploaded bygeodinger9316
- Foundations of EM TheoryUploaded bygeodinger9316
- Gamma Function PlotUploaded bygeodinger9316
- HarringtonUploaded bygeodinger9316
- What's Wrong ScribdUploaded bygeodinger9316
- Gemini Fallout On ISO.pptxUploaded bygeodinger9316
- Digital CommunicationsUploaded bygeodinger9316
- Workshop PaperUploaded bygeodinger9316
- Workshop PaperUploaded bygeodinger9316
- Workshop PaperUploaded bygeodinger9316
- Darmon Diamond Taylor Fermats Last TheoremUploaded bygeodinger9316
- Schrodinger UncertaintyUploaded bygeodinger9316
- Default Insertion LossUploaded bygeodinger9316
- Why ScrbidUploaded bygeodinger9316
- Hello ScrbidUploaded bygeodinger9316
- Hello ScrbidUploaded bygeodinger9316
- cir-ds-oc-aeUploaded bygeodinger9316
- Death of ProofUploaded bygeodinger9316
- Vector AnalysisUploaded byjamesjimmyjj

- Weighbridge Indicators EnUploaded byRifi Mohamed
- Aim IMag Issue 55Uploaded byArtisans in Miniature
- Borderless Campus 1-0 Design Guide (1)Uploaded byMark Brown
- Optical CommunicationsUploaded byappuamreddy
- http7Uploaded byRafiaZaman
- Projects R12 New FeaturesUploaded byhemanthp1212
- Canadian Payment - CRA 2.2 rule_h6-1Uploaded byW8
- Brick and PlasteringUploaded byfaroukm91
- loio4475505596b7f30ee10000000a441470_00046973_S4Uploaded byarmindo_pt
- Iata Dgr 2008 ChangesUploaded byAbbas Aidin
- DS CourseIntroUploaded byramesh158
- Protection and SwitchgearUploaded byRifky Zuliansyah
- ABAP Code - Zsd Sminv Pad CheckUploaded bychandra_kumarbr
- BGreen_9_2016.pdfUploaded byMackoi Balares
- GM 8.1L Engine Control Module MEFI4 - revised.pdfUploaded byalexander
- An Initial Description of a Sonographic Sign That VerifiesUploaded byAndri wijaya
- SaeUploaded byhariprasan
- class_3.pdfUploaded bybdezy
- EQUIVALENT LATERAL FORCE PROCEDUREUploaded bymojeebmashal
- Huaweihss9860v900r008c20productiondescription 141219025231 Conversion Gate01Uploaded byChakravarthi Chittajallu
- Flexi MultiRadio Preparation ExerciseUploaded byAtul Sharma
- Sourcing Strategy ChinaUploaded byfdafaf
- Green Roofs Semiarid a Rid WestUploaded byjbonvier
- Resume New MKPasha.pdfUploaded byMKPashaPasha
- Sample QuestionsUploaded byhima
- Vector Users Manual 7010-MANUALUploaded bymarvincorty
- cat_2011_sup02_enUploaded byavallesain
- (CHAPTER 10) GE Smst 2_CV and LetterUploaded byarpah
- ft-11d-indicator-manual-en.pdfUploaded byaswinraveendran
- Wk3A2Branding.displayUploaded byDesign4Life