Hi everyone, I'm working on my phd thesis in a field related with the active noise control and i'm looking for an algorithm with good tracking capability, to work with a time-varying input signal (non stastionary). I have made several test with FXLMS, N-FXLMS, Leaky-FXLMS without much succes, I'm going in wrong direction with this algorithms? Variable-step-size-LMS could improve that tracking capability? Any advice is welcomed. Thx.
tracking adaptive algorithm
Started by ●April 10, 2008
Reply by ●April 10, 20082008-04-10
On Apr 10, 5:15 pm, "sopapo" <sop...@sopapo.com> wrote:> Hi everyone, > > I'm working on my phd thesis in a field related with the active noise > control and i'm looking for an algorithm with good tracking capability, to > work with a time-varying input signal (non stastionary). > > I have made several test with FXLMS, N-FXLMS, Leaky-FXLMS without much > succes, I'm going in wrong direction with this algorithms? > Variable-step-size-LMS could improve that tracking capability? > > Any advice is welcomed. > Thx.Submit for a Masters. K.
Reply by ●April 10, 20082008-04-10
Hi, if complexity is not an issue you can try the RLS or APA algorithms. Of course everything depend on the degree of non-stationarity of the primary noise. If you wish, send me a representative noise signal to be cancelled and i will check it for you. Moreover, are you working with feedforward or feedback ANC? (m.c.tsakiris@ieee.org) Manolis
Reply by ●April 10, 20082008-04-10
Hi Manolis, Is a feedback system. I read time ago about RLS algorithms, but I remember that it has a very good speed of convergence but a poor tracking capability. About the complexity, well I'm working with a SHARC DSP, so the "resources" are kind of limited in some way, I'm not sure if this DSP could handle an algorithm like RLS. The APA is more similar to RLS or LMS? My work is not directly in the ANC area, is active sound absorption or active impedance control. And the system should be able to track something like a piece of classical music. Thanks for the help. "Manolis C. Tsakiris" <el01070@mail.ntua.gr> wrote in message news:vb-dnWCpau7rI2DanZ2dnUVZ_jSdnZ2d@giganews.com...> Hi, > > if complexity is not an issue you can try the RLS or APA algorithms. > Of course everything depend on the degree of non-stationarity of the > primary noise. If you wish, send me a representative noise signal to be > cancelled and i will check it for you. Moreover, are you working with > feedforward or feedback ANC? > (m.c.tsakiris@ieee.org) > > Manolis
Reply by ●April 10, 20082008-04-10
A piece of classic music is a broadband signal and consequently highly unpredictable. If your ANC configuration is feedback, then the performance of the LMS type algorithms is expected to be poor. The reason is that in the feedback ANC configuration, where the reference signal is synthesized from the error signal, the adaptive filter operates as a predictor of the noise to be cancelled. If the noise to be cancelled is highly random, then the ability of the adaptive filter to predict it will be small. For this reason, i suggest that you consider the feedforward configuration (if it can be applied at your problem), which can work pretty good for highly non-stationary signals. If it cannot be applied, do not expect many things from feedback ANC. At any case, you can experiment in the feedback ANC with more advanced adaptive filters. For example the Affine Projection Algorithm (APA) has better tracking capabilities than the LMS (RLS is often worse than LMS in tracking but not always). APA is something between LMS and RLS. The adaptive Kalman filter, used in highly non-stationary environments, is another possiblity, though very advanced. Finally, the correct order is: 1)Choose a representative signal to be tracked (i.e. of a given degree of non-stationarity). 2)experiment in MATLAB with different adaptive filters. Choose the filter that serves you better. 3)implement it in real time (i have used ADSP 21065L of Analog Devices and i did not have time even to invert a matrix. For heavy stuff consider TMS320). Manolis
Reply by ●April 10, 20082008-04-10
sopapo wrote:> Hi everyone, > > I'm working on my phd thesis in a field related with the active noise > control and i'm looking for an algorithm with good tracking capability, to > work with a time-varying input signal (non stastionary).Excuse me, but what is exactly new in your thesis ? By definition, there is no way to track the non-stationary signal. In order to track the signal, you have to assume that it obeys some stationarity. Then it is down to the classic problem of Wiener/Kalman filter.> I have made several test with FXLMS, N-FXLMS, Leaky-FXLMS without much > succes, I'm going in wrong direction with this algorithms? > Variable-step-size-LMS could improve that tracking capability?*.LMS are inherently bad algorithms. They are not optimal and can't be made optimal by the black magic manipulations. The only justification for the *.LMS is the simplicity. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
Reply by ●April 10, 20082008-04-10
Manolis C. Tsakiris wrote:> A piece of classic music is a broadband signal and consequently highly > unpredictable.I have to disagree. A piece of classic music is quasi stationary and somewhat 90% predictable in the short term.> 1)Choose a representative signal to be tracked (i.e. of a given degree of > non-stationarity). > 2)experiment in MATLAB with different adaptive filters. Choose the filter > that serves you better. > 3)implement it in real time (i have used ADSP 21065L of Analog Devices and > i did not have time even to invert a matrix. For heavy stuff consider > TMS320).Yes, largely it is a computing issue. BTW, a common PC with P-4 beats up the single DSPs easily. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
Reply by ●April 10, 20082008-04-10
> > >Manolis C. Tsakiris wrote: > >> A piece of classic music is a broadband signal and consequently highly >> unpredictable. > >I have to disagree. A piece of classic music is quasi stationary and >somewhat 90% predictable in the short term.You mean that by having let's say M samples of the piece {u(i), u(i-1), ..., u(i-M+1)} i can predict with 90% accuracy the sample at time instant u(i+1)? Is this predictability high because of the absence of impulses(for example drums)? What about a rock piece of music?>> 1)Choose a representative signal to be tracked (i.e. of a given degreeof>> non-stationarity). >> 2)experiment in MATLAB with different adaptive filters. Choose thefilter>> that serves you better. >> 3)implement it in real time (i have used ADSP 21065L of Analog Devicesand>> i did not have time even to invert a matrix. For heavy stuff consider >> TMS320). > >Yes, largely it is a computing issue. BTW, a common PC with P-4 beats up>the single DSPs easily.yes but can you do the processing in real time with a common PC? If yes how? thanx, Manolis
Reply by ●April 10, 20082008-04-10
Manolis C. Tsakiris wrote:>>>A piece of classic music is a broadband signal and consequently highly >>>unpredictable. >> >>I have to disagree. A piece of classic music is quasi stationary and >>somewhat 90% predictable in the short term. > > > You mean that by having let's say M samples of the piece > {u(i), u(i-1), ..., u(i-M+1)} i can predict with 90% accuracy the sample > at time instant u(i+1)?Pretty much so. The prediction gain is about 20dB on the average. That is part of the reason why the lossy audio compression schemes do so well.> Is this predictability high because of the absence > of impulses(for example drums)? What about a rock piece of music?Boom-Boom is not too bad. What knocks the predictor down is the high frequency tchk-tchk, cymbals and such.> >>>i did not have time even to invert a matrix. For heavy stuff consider >>>TMS320). >> >>Yes, largely it is a computing issue. BTW, a common PC with P-4 beats up >>the single DSPs easily. > > yes but can you do the processing in real time with a common PC? If yes > how?Running the software of your own, WDM mode. With Windows XP, it is possible to have the audio in-out processing delay at the order of tens of milliseconds. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
Reply by ●April 10, 20082008-04-10
>Running the software of your own, WDM mode. >With Windows XP, it is possible to have the audio in-out processing >delay at the order of tens of milliseconds.Two questions: 1)is kernel mode achievable with Windows XP? 2)when i process let's say classic music at 44.1kHz, then the distance between two successive samples is 1/44100, approximately 0.02 msec. If the delay of the hardware is say 10 msec then the predictor will operate with a delay of 10/0.02 = 500 samples. I don't think that this can still be considered as real-time processing. thanx, Manolis