FPGA Central - World's 1st FPGA / CPLD Portal

FPGA Central

World's 1st FPGA Portal

 

Go Back   FPGA Groups > NewsGroup > DSP

DSP comp.dsp newsgroup, mailing list

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 01-17-2007, 01:35 PM
Greg Berchin
Guest
 
Posts: n/a
Default Blind System Identification

Okay, so I'm trying to work my way through "Blind System Identification
and Channel Equalization of IIR Systems without Statistical
Information", by Bai and Fu; specifically "Algorithm 4.1". Though the
nomenclature seems to be standard for multirate systems, it is
cumbersome. But I think I've got a good handle on the technique, up to
the point just beyond equation (4.6), where it says:

.. "... as far as equalization is concerned, either G0(z) or G1(z) is
.. sufficient to recover the input because
.. -1 -1
.. U0(z^(n+1)) = G0 (z)Y0(z) = G1 (z)Y1(z)"

In equation (4.6) they stated that:

.. beta0(z) beta1(z)
.. G0(z) = --------, G1(z) = --------
.. alpha(z) alpha(z)

And in the neighborhood of equation (4.5) they stated that:

alpha(z) = 1 - a1z^(-1) - ... - anz^(-n)
beta0(z) = B01z^(-1) + B02z^(-2) + ... + B0nz^(-n)
beta1(z) = B11 + B12z^(-1) + ... + B1nz^(-(n-1))

Since it doesn't matter whether we use G0 or G1 to solve for U0, I
tried using G0:
.. -1
.. U0(z^(n+1)) = G0 (z)Y0(z)

or:
.. alpha(z)
.. U0(z^(n+1)) = -------- Y0(z)
.. beta0(z)

For simplicity, define:
U(z) = U0(z^(n+1))

then:
U(z)·beta0(z) = Y0(z)·alpha(z)

U(z)·[B01z^(-1)+B02z^(-2)+...+B0nz^(-n)]=Y0(z)·[1-a1z^(-1)-...-anz^(-n)]

so:

U(z)·B01z^(-1)=Y0(z)·[1-a1z^(-1)-...-anz^(-n)]-U(z)·[B02z^(-2)+...+B0nz^(-n)]

Assuming causality, the time domain difference equation can be written
by inspection:

(B01)u(k-1)=y0(k)-(a1)y0(k-1)-...-(an)y0(k-n)-(B02)u(k-2)-...-(B0n)u(k-n)

And this is causing me consternation: the system is anticipatory. The
output value at PREVIOUS time "u(k-1)" is dependent upon the input
value at CURRENT time "y0(k)". Also, if the same analysis is performed
using G1 instead of G0, a causal system results. So either there is an
error in the paper or there is an error in my analysis of it; I'm not
certain which.

I suspect that the problem is in the definition of beta0:
beta0(z) = B01z^(-1) + B02z^(-2) + ... + B0nz^(-n)

I think that it should be:
beta0(z) = B01 + B02z^(-1) + ... + B0nz^(-(n-1))

Can anybody provide some insight into this for me?

Thanks,
Greg Berchin

Reply With Quote
  #2 (permalink)  
Old 01-22-2007, 01:48 AM
Setanta
Guest
 
Posts: n/a
Default Re: Blind System Identification


"Greg Berchin" <[email protected]> wrote in message
news:[email protected] ups.com...
Okay, so I'm trying to work my way through "Blind System Identification
and Channel Equalization of IIR Systems without Statistical
Information", by Bai and Fu; specifically "Algorithm 4.1". Though the
nomenclature seems to be standard for multirate systems, it is
cumbersome. But I think I've got a good handle on the technique, up to
the point just beyond equation (4.6), where it says:

.. "... as far as equalization is concerned, either G0(z) or G1(z) is
.. sufficient to recover the input because
.. -1 -1
.. U0(z^(n+1)) = G0 (z)Y0(z) = G1 (z)Y1(z)"

In equation (4.6) they stated that:

.. beta0(z) beta1(z)
.. G0(z) = --------, G1(z) = --------
.. alpha(z) alpha(z)

And in the neighborhood of equation (4.5) they stated that:

alpha(z) = 1 - a1z^(-1) - ... - anz^(-n)
beta0(z) = B01z^(-1) + B02z^(-2) + ... + B0nz^(-n)
beta1(z) = B11 + B12z^(-1) + ... + B1nz^(-(n-1))

Since it doesn't matter whether we use G0 or G1 to solve for U0, I
tried using G0:
.. -1
.. U0(z^(n+1)) = G0 (z)Y0(z)

or:
.. alpha(z)
.. U0(z^(n+1)) = -------- Y0(z)
.. beta0(z)

For simplicity, define:
U(z) = U0(z^(n+1))

then:
U(z)·beta0(z) = Y0(z)·alpha(z)

U(z)·[B01z^(-1)+B02z^(-2)+...+B0nz^(-n)]=Y0(z)·[1-a1z^(-1)-...-anz^(-n)]

so:

U(z)·B01z^(-1)=Y0(z)·[1-a1z^(-1)-...-anz^(-n)]-U(z)·[B02z^(-2)+...+B0nz^(-n)
]

Assuming causality, the time domain difference equation can be written
by inspection:

(B01)u(k-1)=y0(k)-(a1)y0(k-1)-...-(an)y0(k-n)-(B02)u(k-2)-...-(B0n)u(k-n)

Would have thought you can view this as:

y is your output for a control signal at a previous time

control action dosn't appear instantly at the output

And this is causing me consternation: the system is anticipatory. The
output value at PREVIOUS time "u(k-1)" is dependent upon the input
value at CURRENT time "y0(k)". Also, if the same analysis is performed
using G1 instead of G0, a causal system results. So either there is an
error in the paper or there is an error in my analysis of it; I'm not
certain which.

I suspect that the problem is in the definition of beta0:
beta0(z) = B01z^(-1) + B02z^(-2) + ... + B0nz^(-n)

I think that it should be:
beta0(z) = B01 + B02z^(-1) + ... + B0nz^(-(n-1))

Can anybody provide some insight into this for me?

Thanks,
Greg Berchin



Reply With Quote
  #3 (permalink)  
Old 01-22-2007, 02:15 AM
Greg Berchin
Guest
 
Posts: n/a
Default Re: Blind System Identification

On Mon, 22 Jan 2007 00:48:37 GMT, "Setanta" <[email protected]> wrote:

>Would have thought you can view this as:
>
>y is your output for a control signal at a previous time
>
>control action dosn't appear instantly at the output


This is an inverse system, so y0() is the input and I'm solving for u().

Greg
Reply With Quote
  #4 (permalink)  
Old 01-22-2007, 03:33 AM
Setanta
Guest
 
Posts: n/a
Default Re: Blind System Identification


"Greg Berchin" <[email protected]> wrote in message
news:[email protected]..
> On Mon, 22 Jan 2007 00:48:37 GMT, "Setanta" <[email protected]> wrote:
>
> >Would have thought you can view this as:
> >
> >y is your output for a control signal at a previous time
> >
> >control action dosn't appear instantly at the output

>
> This is an inverse system, so y0() is the input and I'm solving for u().
>
> Greg



This gives a good view of what the MA paramaters should look like

http://darbelofflab.mit.edu/Progress...ort3-2/Report%
202.pdf


Would be interested in looking at the data

Setanta


Reply With Quote
  #5 (permalink)  
Old 10-19-2007, 02:48 AM
coderanger
Guest
 
Posts: n/a
Default Re: Blind System Identification

Hello Greg,

I have this in a nonlinear analysis book for a control function, but i
your context think of a fft, run the inverse.
Reply With Quote
  #6 (permalink)  
Old 10-19-2007, 02:08 PM
Rune Allnor
Guest
 
Posts: n/a
Default Re: Blind System Identification

On 19 Okt, 02:48, "coderanger" <godd...@inbox.com> wrote:
> Hello Greg,
>
> I have this in a nonlinear analysis book for a control function, but in
> your context think of a fft, run the inverse.


I would have paid meticulous attention to the details of the
notatiopnal simplification introducing U(z) instead of
U(z^(n+1)). If that change is not accounted for correctly,
you might just end up with one or two anticausal terms.

Rune

Reply With Quote
  #7 (permalink)  
Old 10-19-2007, 02:47 PM
Greg Berchin
Guest
 
Posts: n/a
Default Re: Blind System Identification

On Oct 19, 8:08 am, Rune Allnor <all...@tele.ntnu.no> wrote:

> I would have paid meticulous attention to the details of the
> notatiopnal simplification introducing U(z) instead of
> U(z^(n+1)). If that change is not accounted for correctly,
> you might just end up with one or two anticausal terms.


It's been quite a while since I looked at this, but I recall
experimenting with several formulations containing varying amounts of
causal and anticausal delay (where causality is referenced to the
inverse system). Basically, I found that any formulation that
differed from the one in the original paper either led to a matrix
that was not of full-rank, and therefore could not be inverted, or to
an inverse system in which one or more of the leading coefficients
(corresponding to anticausal terms) was zero. The project ended
before I could sort through all of the mathematics behind this, but my
conclusion was that the authors used the specific formulation
described in their paper because it was the only one that actually
worked.

Greg

Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Am I blind or? (Virtex-4 issues) Antti FPGA 6 10-12-2006 05:42 PM
Blind Source and (static) Channel Identification Edberg DSP 4 09-27-2006 04:15 PM
Phase-Blind Carlos.br DSP 1 06-27-2006 12:39 AM
blind deconvolution - speech - psk Daniele Ticchiarelli DSP 2 04-27-2004 07:25 PM
Linear Time-Varying System Identification Randy Yates DSP 4 11-27-2003 05:42 PM


All times are GMT +1. The time now is 01:53 AM.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright 2008 @ FPGA Central. All rights reserved