DSPRelated.com
Forums

Approximate ARMA process by AR process

Started by Thomas Arildsen July 14, 2008
Is there an optimal, or perhaps just 'standard', method of approximating 
some given ARMA process (the coefficients and order are given and I 
assume zero-mean unit-variance white Gaussian input) by an AR process?
I thought about generating an output sequence from the ARMA process and 
then estimating AR parameters from that data, but I would like to be able 
to determine them directly from the ARMA parameters, if possible.

Thomas Arildsen
-- 
All email to sender address is lost.
My real adress is at es dot aau dot dk for user tha.
On 14 Jul, 10:32, Thomas Arildsen <tha.es-aau...@spamgourmet.com>
wrote:
> Is there an optimal, or perhaps just 'standard', method of approximating > some given ARMA process (the coefficients and order are given and I > assume zero-mean unit-variance white Gaussian input) by an AR process? > I thought about generating an output sequence from the ARMA process and > then estimating AR parameters from that data, but I would like to be able > to determine them directly from the ARMA parameters, if possible.
I would be very surpised if there is. The methods I know of to estimate ARMA parameetrs from data, start out by estimating a set of AR parameters first, generate the impulse response of the inverse filter to the AR filter, and then estimate the MA parameters from those impulse responses. In these methods the MA parameters are merely refinements to a crude AR process. As for starting with a given ARMA model, I would assume the resulting AR model would depend on where the zeros and poles are located. Consider an AR(2) model with poles as (assume complex-valued data), R1 = r1 exp(j phi1) R2 = r2 exp(j phi2) where 0 < r1, r2 < 1. Now add an MA(1) term with a zero at R3 = r3 exp(j theta), 0 < r3 < 1 If the zero is located mid-way between r1 and r2, say R3 = r3 exp(j (phi1+phi2)/2) the zero is located in a 'trough' between two 'hills' in the AR(2) spectrum, and the AR(2) model might be a good approximation to the ARMA(2,1) model. If, on the other hand, the zero is located between one pole and the unit circle. R3 = sqrt(r1) exp(j phi1) then the zero might well 'split' the 'hill' caused by R1 in two, which in turn indicates an AR(3) model is a better approximation for the ARMA process. So all in all, generate the data from the ARMA process and estimate the AR model from the data. Rune

Thomas Arildsen wrote:

> Is there an optimal, or perhaps just 'standard', method of approximating > some given ARMA process (the coefficients and order are given and I > assume zero-mean unit-variance white Gaussian input) by an AR process?
The FDLS algorithm of Greg Berchin can be successfully applied to this problem :-)
> I thought about generating an output sequence from the ARMA process and > then estimating AR parameters from that data, but I would like to be able > to determine them directly from the ARMA parameters, if possible.
The task statement sounds unusial: the ARMA problem is more difficult then the AR problem. What is the goal? Are you looking for the closed form solution for the coefficients? Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
Vladimir Vassilevsky wrote:
> > > Thomas Arildsen wrote: > >> Is there an optimal, or perhaps just 'standard', method of >> approximating some given ARMA process (the coefficients and order are >> given and I assume zero-mean unit-variance white Gaussian input) by an >> AR process? > > The FDLS algorithm of Greg Berchin can be successfully applied to this > problem :-) > >> I thought about generating an output sequence from the ARMA process >> and then estimating AR parameters from that data, but I would like to >> be able >> to determine them directly from the ARMA parameters, if possible. > > The task statement sounds unusial: the ARMA problem is more difficult > then the AR problem. What is the goal? Are you looking for the closed > form solution for the coefficients? > > > Vladimir Vassilevsky > DSP and Mixed Signal Design Consultant > http://www.abvolt.com
Hey Vlad: Clicking on the link http://www.abvolt.com brings up a blank page. A temporary glitch? (I wanted to send private email.) Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;

Jerry Avins wrote:


> Hey Vlad: > > Clicking on the link http://www.abvolt.com brings up a blank page. A > temporary glitch?
Thanks for noticing that. The index file is broken; will fix in no time.
> (I wanted to send private email.)
The email works fine: vlv at the same domain.
> > Jerry
VLV
Rune Allnor skrev:
> On 14 Jul, 10:32, Thomas Arildsen <tha.es-aau...@spamgourmet.com> > wrote: >> Is there an optimal, or perhaps just 'standard', method of approximating >> some given ARMA process (the coefficients and order are given and I >> assume zero-mean unit-variance white Gaussian input) by an AR process? >> I thought about generating an output sequence from the ARMA process and >> then estimating AR parameters from that data, but I would like to be able >> to determine them directly from the ARMA parameters, if possible. > > I would be very surpised if there is. > > The methods I know of to estimate ARMA parameetrs from data, start > out > by estimating a set of AR parameters first, generate the impulse > response > of the inverse filter to the AR filter, and then estimate the MA > parameters > from those impulse responses. In these methods the MA parameters are > merely > refinements to a crude AR process. > > As for starting with a given ARMA model, I would assume the resulting > AR model would depend on where the zeros and poles are located. > Consider > an AR(2) model with poles as (assume complex-valued data), > > R1 = r1 exp(j phi1) > R2 = r2 exp(j phi2) > > where 0 < r1, r2 < 1. Now add an MA(1) term with a zero at > > R3 = r3 exp(j theta), 0 < r3 < 1 > > If the zero is located mid-way between r1 and r2, say > > R3 = r3 exp(j (phi1+phi2)/2) > > the zero is located in a 'trough' between two 'hills' in the > AR(2) spectrum, and the AR(2) model might be a good approximation > to the ARMA(2,1) model. > > If, on the other hand, the zero is located between one pole and > the unit circle. > > R3 = sqrt(r1) exp(j phi1) > > then the zero might well 'split' the 'hill' caused by R1 in > two, which in turn indicates an AR(3) model is a better > approximation for the ARMA process. > > So all in all, generate the data from the ARMA process and > estimate the AR model from the data. > > Rune
Good points with your examples of the spectrum. I will try estimating the parameters from data. If I have an order (m,n) ARMA process, I guess a fair approximation will be an order m+n AR process. Thomas -- All email to sender address is lost. My real adress is at es dot aau dot dk for user tha.
Vladimir Vassilevsky wrote:
> > > Thomas Arildsen wrote: > >> Is there an optimal, or perhaps just 'standard', method of >> approximating some given ARMA process (the coefficients and order are >> given and I assume zero-mean unit-variance white Gaussian input) by an >> AR process? > > The FDLS algorithm of Greg Berchin can be successfully applied to this > problem :-) >
If there's a joke here I don't get it... :o) I'll take a look at this; I suppose this would be the place to look: Precise Filter Design [DSP Tips & Tricks] Berchin, G. This paper appears in: Signal Processing Magazine, IEEE Publication Date: Jan. 2007 Volume: 24, Issue: 1 On page(s): 137-139
>> I thought about generating an output sequence from the ARMA process >> and then estimating AR parameters from that data, but I would like to >> be able >> to determine them directly from the ARMA parameters, if possible. > > The task statement sounds unusial: the ARMA problem is more difficult > then the AR problem. What is the goal? Are you looking for the closed > form solution for the coefficients? >
I agree it sounds unusual. The setup is: I have a system that so far processes signals based on AR models only. I want to investigate how well it performs when processing ARMA-generated signals and so, I need to design an AR model for the signal that will represent the ARMA-generated signal. A closed form solution to the coefficients would be nice, but I don't know if that is realistic. Thomas -- All email to sender address is lost. My real adress is at es dot aau dot dk for user tha.
On 16 Jul, 08:38, Thomas Arildsen <tha.es-aau...@spamgourmet.com>
wrote:
> Rune Allnor skrev: > > > > > > > On 14 Jul, 10:32, Thomas Arildsen <tha.es-aau...@spamgourmet.com> > > wrote: > >> Is there an optimal, or perhaps just 'standard', method of approximating > >> some given ARMA process (the coefficients and order are given and I > >> assume zero-mean unit-variance white Gaussian input) by an AR process? > >> I thought about generating an output sequence from the ARMA process and > >> then estimating AR parameters from that data, but I would like to be able > >> to determine them directly from the ARMA parameters, if possible. > > > I would be very surpised if there is. > > > The methods I know of to estimate ARMA parameetrs from data, start > > out > > by estimating a set of AR parameters first, generate the impulse > > response > > of the inverse filter to the AR filter, and then estimate the MA > > parameters > > from those impulse responses. In these methods the MA parameters are > > merely > > refinements to a crude AR process. > > > As for starting with a given ARMA model, I would assume the resulting > > AR model would depend on where the zeros and poles are located. > > Consider > > an AR(2) model with poles as (assume complex-valued data), > > > R1 = &#4294967295;r1 exp(j phi1) > > R2 = &#4294967295;r2 exp(j phi2) > > > where 0 < r1, r2 < 1. Now add an MA(1) term with a zero at > > > R3 = r3 exp(j theta), &#4294967295; 0 < r3 < 1 > > > If the zero is located mid-way between r1 and r2, say > > > R3 = r3 exp(j (phi1+phi2)/2) > > > the zero is located in a 'trough' between two 'hills' in the > > AR(2) spectrum, and the AR(2) model might be a good approximation > > to the ARMA(2,1) model. > > > If, on the other hand, the zero is located between one pole and > > the unit circle. > > > R3 = sqrt(r1) exp(j phi1) > > > then the zero might well 'split' the 'hill' caused by R1 in > > two, which in turn indicates an AR(3) model is a better > > approximation for the ARMA process. > > > So all in all, generate the data from the ARMA process and > > estimate the AR model from the data. > > > Rune > > Good points with your examples of the spectrum. I will try estimating > the parameters from data. If I have an order (m,n) ARMA process, I guess > a fair approximation will be an order m+n AR process.
Use an order estimator instead. The AIC or MDL estimators are near-trivial addendums to the Levinson recursion. Rune

Thomas Arildsen wrote:

>> Thomas Arildsen wrote: >> >>> Is there an optimal, or perhaps just 'standard', method of >>> approximating some given ARMA process (the coefficients and order are >>> given and I assume zero-mean unit-variance white Gaussian input) by >>> an AR process? >> >> >> The FDLS algorithm of Greg Berchin can be successfully applied to this >> problem :-) >> > > If there's a joke here I don't get it... :o)
FDLS is a pretty universal method, and it can be applied to your problem as well. The joke is because this medicine is been prescribed for all kinds of DSP problems :-)
> I'll take a look at this; I > suppose this would be the place to look: > > Precise Filter Design [DSP Tips & Tricks] > Berchin, G. > This paper appears in: Signal Processing Magazine, IEEE > Publication Date: Jan. 2007 > Volume: 24, Issue: 1 > On page(s): 137-139
>>> I thought about generating an output sequence from the ARMA process >>> and then estimating AR parameters from that data,
This is very straightforward, and it surely works.
>>> but I would like to be able >>> to determine them directly from the ARMA parameters, if possible.
With FDLS, you can find the coefficients of AR model of a given order which make for the best match of the ARMA model in the frequency domain. 1) Select a grid of points in the frequency domain. 2) Compute the response of ARMA model in those points 3) Find the best matching parameters AR model in those points You can have a closed form solution as well. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com