Path: news.mathworks.com!newsfeed-00.mathworks.com!newsfeed2.dallas1.level3.net!news.level3.com!postnews.google.com!v1g2000pra.googlegroups.com!not-for-mail
From: dsp@myallit.com
Newsgroups: sci.stat.math,comp.soft-sys.matlab,sci.engr.control
Subject: Re: Kalman filtering with multiplicative noise
Date: Mon, 21 Jul 2008 16:49:45 -0700 (PDT)
Organization: http://groups.google.com
Lines: 67
Message-ID: <451b3f72-9ded-49dc-9f51-5a5e9d4e7695@v1g2000pra.googlegroups.com>
References: <1309743c-3d5c-4165-9cdb-1ab51892727d@z16g2000prn.googlegroups.com> 
NNTP-Posting-Host: 202.7.166.174
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1216684186 4822 127.0.0.1 (21 Jul 2008 23:49:46 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Mon, 21 Jul 2008 23:49:46 +0000 (UTC)
Complaints-To: groups-abuse@google.com
Injection-Info: v1g2000pra.googlegroups.com; posting-host=202.7.166.174; 
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.0.1) 
X-HTTP-Via: 1.1 syd-pow-pr11.tpgi.com.au:3128 (squid)
Xref: news.mathworks.com sci.stat.math:83509 comp.soft-sys.matlab:480800 sci.engr.control:50815



On Jul 22, 2:20=A0am, Tim Wescott <t...@seemywebsite.com> wrote:
> On Sun, 20 Jul 2008 19:51:02 -0700, dsp wrote:
> > I'm trying to implement a Kalman filter in MATLAB that will use two
> > types of measurements: volume and in/out flow rate. For the flow rate,
> > the measurement error is additive Gaussian, but for the volume the
> > measurement error is expressed as a percentage of the volume, so that
> > the volume measurement is less accurate when its value is higher. I
> > think the measurement model should therefore be:
>
> > Flow rate measurement model:
> > z1 =3D x1 + v1 where v1 ~ N(0,e1)
>
> > Volume measurement model:
> > z2 =3D x2*v2 where v2 ~ N(1,e2)
>
> > I assumed the volume filtering should be done in the log domain to make
> > the noise additive but how do I deal with a noise mean of one when the
> > Kalman filter assumes a mean of zero? And how can I have a Kalman filte=
r
> > using both the measurements if one is in the log domain and the other
> > one isn't?
>
> > I am also dealing with a system where measurements will usually be
> > missing (they are arriving sequentially) and at an uneven sampling rate=
,
> > any other pointers on these too would be appreciated.
>
> As Ray pointed out these seem to be completely independent measurements,
> unless V1 and V2 are correlated.
>
> With any affine system, such as the log-domain volume system, you can
> subtract out the offset to make the system linear, do your linear
> processing, then add the offset back in. =A0I.O.W., calculate log z2 =3D =
log
> x2 + log v2 + 1, then define dlz2 =3D log z2 - 1, then find your estimate=
d
> dlz2, then back up to your estimated z2. =A0(Note that your estimate of z=
2
> probably won't be strictly optimal in the mean-squared sense, only your
> estimate of dlz2 will be. =A0But you'll certainly be closer than you woul=
d
> by a lot of other means).
>
> --
> Tim Wescott
> Control systems and communications consultinghttp://www.wescottdesign.com
>
> Need to learn how to apply control theory in your embedded system?
> "Applied Control Theory for Embedded Systems" by Tim Wescott
> Elsevier/Newnes,http://www.wescottdesign.com/actfes/actfes.html

My state transition for these two measurements is given by:

F =3D [dt 1
     1  0]

where dt is the time step, so as far as I understand it these
measurements are correlated - if z1 is positive, then z2 will be
increasing and vice versa.

Doing this in the log domain makes sense, but how can I have one
measurement in the log domain and the other not? The state transition
won't make sense.

Equation 2 will actually reach zero quite often, so maybe I need
multiplicative and additive noise in my measurement model for z2, not
too sure about that.