DSPRelated.com
Forums

adaptive MISO in matlab

Started by munchkin August 15, 2008
Hello!

I would like to adapt a MISO filter of more than 1000 coefficients. In
matlab, there is adaptfilt.algorithm which works for SISO.

I have 2 Questions:
1) Is there a function in matlab which will adapt a MISO filter?
2) Does anyone know a way to view the matlab code for adaptfilt/filter?

Thanks so much!
-Caryn
On Aug 15, 11:11 am, "munchkin" <munch...@its.caltech.edu> wrote:
> Hello! > > I would like to adapt a MISO filter of more than 1000 coefficients. In > matlab, there is adaptfilt.algorithm which works for SISO. > > I have 2 Questions: > 1) Is there a function in matlab which will adapt a MISO filter?
You're probably better off writing your own function/script. If I understand correctly, the adaptfilt class of functions is not a MATLAB script but rather a compiled function that is called from MATLAB. And hence the answer to your next question ...
> 2) Does anyone know a way to view the matlab code for adaptfilt/filter?
If I am correct for (1), then there's probably no such thing as a MATLAB code for it. It was probably written in a more efficient language and compiled in way such that it can be called from MATLAB. Many toolboxes are developed / implemented in this fashion. As a result, they are probably very efficient for what they are designed for, but not very easy to adapt to something else, such as going from SISO to MISO. Julius
Oh, dear. This will not be easy then. Thanks for your reply :)
-Caryn
Oh, dear. This will not be easy then. Thanks for your reply :)
-Caryn
On Aug 15, 1:06 pm, "munchkin" <munch...@its.caltech.edu> wrote:
> Oh, dear. This will not be easy then. Thanks for your reply :) > -Caryn
If all you want is an adaptive MISO filter, it's not that hard. I think you are capitulating prematurely!
Can you recommend any literature?
On Aug 15, 2:44 pm, "munchkin" <munch...@its.caltech.edu> wrote:
> Can you recommend any literature?
For LMS / RLS I like Munson Hayes' book: M. Hayes, "Digital Signal Processing and Modeling," Wiley 1996. It comes with MATLAB scripts for the basic algorithms, but almost all of then is SISO. Adapting to MISO just to get some functionally correct is not that hard.
On Fri, 15 Aug 2008 13:03:40 -0700 (PDT), julius <juliusk@gmail.com>
wrote:

>On Aug 15, 2:44 pm, "munchkin" <munch...@its.caltech.edu> wrote: >> Can you recommend any literature? > >For LMS / RLS I like Munson Hayes' book: > > M. Hayes, "Digital Signal Processing and Modeling," Wiley 1996. > >It comes with MATLAB scripts for the basic algorithms, but almost >all of then is SISO. Adapting to MISO just to get some functionally >correct is not that hard.
Gotta admit, you guys lost me. I gotta ask, what is the MISO filter doing? Is the idea that the coherent combining is done in this filter? Is it just adapting to each channel independently? Eric Jacobsen Minister of Algorithms Abineau Communications http://www.ericjacobsen.org Blog: http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.php
>Gotta admit, you guys lost me. > >I gotta ask, what is the MISO filter doing? Is the idea that the >coherent combining is done in this filter? Is it just adapting to >each channel independently? > >Eric Jacobsen >Minister of Algorithms >Abineau Communications >http://www.ericjacobsen.org > >Blog: http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.php >
So, I'm new to DSP but I'll try to explain myself. I'm currently MISO wiener filtering a signal y where y is correlated with two or more signals X1,X2,... y~= H1*X1+H2*X2+....+residual (* represents convolution) My understanding is that miso wiener filtering y with X1, X2,... will give me FIR approximations of H1, H2,... However, these FIR filter coefficients need to be updated every few minutes because the environment is not strictly static. Instead of taking the processing time to recalculate the filters H1,H2,... I would like to use adaptive filtering to update H1,H2,... Does that make sense?
On Fri, 15 Aug 2008 16:19:28 -0500, "munchkin"
<munchkin@its.caltech.edu> wrote:

>>Gotta admit, you guys lost me. >> >>I gotta ask, what is the MISO filter doing? Is the idea that the >>coherent combining is done in this filter? Is it just adapting to >>each channel independently? >> >>Eric Jacobsen >>Minister of Algorithms >>Abineau Communications >>http://www.ericjacobsen.org >> >>Blog: http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.php >> > >So, I'm new to DSP but I'll try to explain myself. >I'm currently MISO wiener filtering a signal y where y is correlated with >two or more signals X1,X2,... > y~= H1*X1+H2*X2+....+residual >(* represents convolution) >My understanding is that miso wiener filtering y with X1, X2,... will give >me FIR approximations of H1, H2,... >However, these FIR filter coefficients need to be updated every few >minutes because the environment is not strictly static. >Instead of taking the processing time to recalculate the filters >H1,H2,... >I would like to use adaptive filtering to update H1,H2,... >Does that make sense?
I follow that H1 and H2 are the channel responses to the two input channels, and for a comm application X1 and X2 would both be recovered diversity inputs of the transmitted y (if that holds for what you're doing). Since X1 and X2 have to be combined coherently in order to provide an improved estimate of y (rather than just taking X1 or X2 independently), this suggests that synchronization is done independently on each channel prior to combining. I think my confusion is that since H1*X1 and H2*X2 have to be independently synchronized prior to combining, anyway, is there an advantage to making a single EQ work on both simultaneously (which seems to be what you're suggesting) or just run an independent EQ on each channel (to estimate H1 and H2 independently), and then combine the results? It sounds intriguing and if there's really an advantage to making one big MISO EQ rather than two SISO EQs that's something in which I'd be interested. Eric Jacobsen Minister of Algorithms Abineau Communications http://www.ericjacobsen.org Blog: http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.php