SlideShare una empresa de Scribd logo
1 de 18
Descargar para leer sin conexión
Aplicaci´on de secuencias ca´oticas a la identificaci´on del canal
de comunicaci´on
David Arroyo Guarde˜no
´Indice
´Indice 1
1. Introducci´on 2
2. Filtros de Wiener 2
3. Identificaci´on del canal de comunicaci´on v´ıa algoritmo LMS 3
3.1. Algoritmo LMS: formulaci´on y an´alisis de su estabilidad y convergencia . . . . . . 3
3.2. Aplicaci´on del algoritmo LMS al problema de la identificaci´on del canal de comuni-
caci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3. Codificaci´on ca´otica de se˜nales de voz . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.4. Identificaci´on ciega del canal de comunicaci´on: algoritmo DBD (Dynamic Based
Deconvolution) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4. Simulaciones y conclusiones 10
4.1. Test del algoritmo LMS con codificaci´on ca´otica para diferentes valores del par´ametro
µ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.1.1. Verificaci´on de las prestaciones de la codificaci´on ca´otica . . . . . . . . . . . 11
4.1.2. Decisi´on valor de µ ´optimo para el caso de se˜nales de voz codificadas mediante
se˜nales ca´oticas de media cero: µ constante . . . . . . . . . . . . . . . . . . 11
4.1.3. Decisi´on valor de µ ´optimo para el caso de se˜nales de voz codificadas mediante
se˜nales ca´oticas de media cero: esquema estoc´astico de iteraci´on . . . . . . . 12
4.1.4. Decisi´on valor de µ ´optimo para el caso de se˜nales de voz codificadas mediante
se˜nales ca´oticas de media cero: esquema b´usqueda-convergencia . . . . . . . 12
4.1.5. Decisi´on entre los tres valores ´optimos obtenidos . . . . . . . . . . . . . . . 13
4.2. Test del algoritmo DBD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.2.1. Tasa de aprendizaje constante . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.3. Esquema estoc´astico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.4. Esquema b´usqueda-convergencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.5. Decisi´on entre los tres valores ´optimos . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.6. Test de los algoritmos LMS y DBD en presencia de ruido . . . . . . . . . . . . . . 16
Referencias 18
1
1. Introducci´on
El objetivo ser´a desarrollar un m´etodo para codificar mediante caos las se˜nales de voz, con el
objeto de mejorar las prestaciones del algoritmo LMS (Least Mean Square) a la hora de llevar a
cabo una identificaci´on del canal de comunicaci´on([1]). Asimismo se presenta tambi´en un segundo
m´etodo basado en el algoritmo DBD -Dynamic Based Deconvolution- ([2],[3]), con el que se lle-
var´a a cabo una identificaci´on ciega del canal. Se comenzar´a presentando someramente los filtros
de Wiener, tanto en cuanto el algoritmo LMS trata de aproximar tal filtro con el prop´osito de
implementar una realizaci´on on-line. Hecha tal presentaci´on, se desarrolla la teor´ıa vinculada con
el algoritmo LMS, especialmente aquellos aspectos de la misma relacionados con la estabilidad y
convergencia del m´etodo, ya que son estos factores los que justifican la utilizaci´on de la codifi-
caci´on ca´otica de se˜nales de voz. Por ´ultimo, se desarrolla un m´etodo que en lugar de partir del
conocimiento de la se˜nal enviada, aprovecha el conocimiento que se tiene respecto de la din´ami-
ca de aquella. Tal m´etodo es el DBD, el cual permite llevar a cabo la labor que aqu´ı nos ocupa
sin necesidad de conocer la se˜nal que se env´ıo originalmente y, por ello, se dice que realiza una
identificaci´on ciega del canal.
2. Filtros de Wiener
Esta secci´on pretende mostrar aquellos aspectos de los filtros de Wiener de inter´es para el
posterior trabajo. Es decir, la descripci´on aqu´ı propuesta no es m´as que una introducci´on, siendo
recomendable consultar [4] en caso de desear un mayor grado de detalle. Hecha esta primera
puntualizaci´on, el an´alisis comienza presentando el esquema a seguir (Figura 1).
e(n)
d(n)
x(n) Filtro de Wiener
W(z)
Figura 1: Esquema dise˜no de un filtro de Wiener
El objetivo es minimizar el ´ındice J = E [e(n)e∗
(n)], donde e(n) representa la diferencia entre la
se˜nal deseada -d(n)- y la se˜nal estimada por el filtro de Wiener -dest(n)-. Aquel filtro que minimiza
tal ´ındice se dice que es un filtro ´optimo de Wiener. Para lograr el m´ınimo valor posible de J
habr´ıa que trabajar con un filtro IIR no causal, lo cual es muy complejo en la pr´actica. Es decir,
la soluci´on te´orica del problema no es satisfactoria para nuestros intereses, por lo que es preferible
imponer restricciones al filtro a dise˜nar, de modo que finalmente se desarrollar´a un m´etodo que
lleva a cabo la implementaci´on del filtro de Wiener como un filtro FIR causal (1),
W(z) =
M−1
n=0
wnz−n
, (1)
con lo que la se˜nal estimada por el filtro vendr´a dada por (2), mientras que (3) define el ´ındice a
minimizar.
dest(n) =
M−1
i=0
wix(n − i), (2)
J = E | e(n) |2
= E | d(n) − dest(n) |2
. (3)
Dado que se desea minimizar (3), la siguiente operaci´on ser´a diferenciar (3) con respecto a los
coeficientes del filtro a dise˜nar e igualar a cero. Este proceso lleva a (4), que concreta el principio
de ortogonalidad o teorema de la proyecci´on sobre el cual se construye el filtro de Wiener.
∂J
∂wk
= E 2e(n)
∂e(n)
∂wk
= 0 ⇒ E [e(n)x(n − k)]
e(n) = d(n) −
M−1
i=0
wix(n − i) ⇒
∂e(n)
∂wk
= −x(n − k). (4)
2
En efecto, si expresamos el error e(n) como la diferencia entre la se˜nal deseada y la se˜nal estimada
por el filtro, (4) desemboca en (5):
E d(n) −
M−1
i=0
wix(n − i) x(n − k) = E [d(n)x(n − k)] −
M−1
i=0
wiE [x(n − i)x(n − k)] = 0
rdx(k) −
M−1
i=0
wirx(k − i) = 0, (5)
expresi´on que, asumiendo d(n) y x(n) son procesos estacionarios en sentido amplio, lleva finalmente
a la conocida como ecuaci´on de Wiener-Hopf (6).
M−1
i=0
wirx(k − i) = rdx(k). (6)
Esta ecuaci´on puede ser expresada matricialmente (7) de forma muy simple asumiendo que x(n)
es un proceso real, lo cual implica que la funci´on de auto-correlaci´on (rx(k) = E [x(n)x(n − k)])
para x(n) es sim´etrica par respecto del origen (rx(k) = rx(−k)).








rx(0) rx(1) rx(2) · · · rx(M − 1)
rx(1) rx(0) rx(1) · · · rx(M − 2)
...
...
...
...
...
rx(M − 2)
...
...
... rx(1)
rx(M − 1) · · · rx(2) rx(1) rx(0)








⇓
Rx







w0
w1
w2
...
wM−1







⇓
W
=







rdx(0)
rdx(1)
rdx(2)
...
rdx(M − 1)







⇓
rdx
(7)
Es decir, los coeficientes del filtro de Wiener vendr´an dados por:
W = R−1
x rdx. (8)
3. Identificaci´on del canal de comunicaci´on v´ıa algoritmo
LMS
3.1. Algoritmo LMS: formulaci´on y an´alisis de su estabilidad y conver-
gencia
Dado que la soluci´on aportada en el apartado anterior constituye aquella para la cual el ´ındice
J es el m´ınimo posible, cuando el filtro es FIR y causal, parece l´ogico pensar que el dise˜no o
b´usqueda de un m´etodo alternativo no tiene sentido. Sin embargo, la obtenci´on de los coeficientes
del filtro a partir de la ecuaci´on de Wiener-Hopf lleva asociada una gran carga computacional,
tanto en cuanto implica la inversi´on de la matrix Rx, operaci´on que, desde el punto de vista
computacional, es compleja y cada vez m´as compleja a medida que crece el n´umero de coeficientes
del filtro a dise˜nar, ya que dicha matriz suele estar mal condicionada. Por otro lado, a la hora
de obtener la ecuaci´on de Wiener-Hopf se asumi´o que los procesos aleatorios involucrados eran de
car´acter estacionario en sentido amplio. Ahora bien, a la hora de tratar con se˜nales pr´acticas reales,
como las se˜nales de voz, nos encontramos con que tal hip´otesis no es aplicable. En el caso de las
se˜nales de voz se puede pensar en la posibilidad de segmentar la se˜nal de voz, de modo que cada
uno de los segmentos resultantes permitan ser considerados como procesos aleatorios estacionarios
en sentido amplio. No obstante, tal segmentaci´on no es recomendable en general, ya que puede
que los estad´ısticos asociados a la se˜nal original cambien muy r´apidamente, factor que obligar´ıa
a disminuir el tama˜no de los distintos segmentos (con lo que aumenta el n´umero de segmentos),
circunstancia que puede alterar considerablemente las caracter´ısticas espectrales del proceso. En
definitiva, parece m´as conveniente plantear un esquema alternativo al sintetizado en la ecuaci´on de
Wiener-Hopf (6), de modo que se llegue a un nuevo m´etodo que nos lleva a una soluci´on aceptable
(pero no ´optima), y haga posible trabajar con procesos de car´acter no estacionario, determinando
los coeficientes del filtro a dise˜nar on-line y evitando posibles dificultades algebraicas semejantes a
las previamente citadas. El m´etodo a desarrollar va a implementar un filtro adaptativo, es decir,
los par´ametros libres del filtro se van a adaptar a las variaciones que experimentan los estad´ısticos
3
de las se˜nales que constituyen el medio con el que se va a trabajar. En el caso particular que nos
ocupa, el esquema a seguir aparece en la siguiente figura (Figura 2).
x(n)
e(n)
d(n)
Filtro transversal
Wn
Mecanismo de control
adaptativo de los pesos del filtro
Figura 2: Esquema del algoritmo LMS
El algoritmo LMS se construye a partir de los valores instant´aneos de la funci´on de coste o de
penalizaci´on:
J(n) = 1/2e2
(n). (9)
La derivada de dicho ´ındice con respecto a los pesos del filtro adaptativo a crear es
∂J(n)
∂W
= e(n)
∂e(n)
∂W
. (10)
El error en cada instante viene dado por
e(n) = d(n) − xT
(n)W(n), (11)
donde (x)(n) = [x(n) x(n − 1) . . . x(n − M + 1)]T
y W(n) = [w0(n)w1(n) . . . wM−1(n)]T
. En
consecuencia, se tiene que
∂J(n)
∂W
= −x(n)e(n), (12)
expresi´on que constituye una estimaci´on del gradiente de la funci´on de coste. Dicho gradiente deter-
mina un vector cuya direcci´on indica la direcci´on en la que J(n) experimenta un mayor crecimiento.
Dado que nuestro objetivo es minimizar J(n), el algoritmo LMS va a actualizar los valores de los
coeficientes del filtro haciendo que en cada instante estos se desplacen una cierta cantidad en la
direcci´on opuesta a la indicada por (12). De forma anal´ıtica esta idea queda concretada en
W(n + 1) = W(n) + µx(n)e(n), (13)
donde µ es la tasa de aprendizaje. Dado que se lleva a cabo una realimentaci´on de los pesos
(es decir, para calcular los pesos en el instante n + 1 se precisan los pesos en el instante n), el
algoritmo LMS sintetiza un filtro paso bajo en el sentido que tiende a atenuar las componentes
de alta frecuencia del error dejando pasar las de baja frecuencia. Con el objeto de resaltar tal
comportamiento se presenta en la figura 3 el diagrama de flujo asociado al algoritmo LMS, el cual
se obtiene expresando (13) como
W(n + 1) = W(n) + µx(n)[d(n) − xT
(n)W(n)] = [I − µx(n)xT
(n)]WT
(n) + µx(n)d(n), (14)
siendo I la matriz identidad, y teniendo en cuenta que
W(n) = z−1
[W(n + 1)], (15)
donde z−1
es el operador retraso unidad, que lleva ´ımplicito el almacenamiento de valores previos
de pesos.
A la vista del diagrama de flujo, se concluye que µ representa la inversa de la constante de
tiempo asociada al filtrado previamente rese˜nado, es decir, peque˜nos valores de µ implican un
proceso adaptativo lento, lo cual implica que una mayor cantidad de la informaci´on pasada es
“recordada” por el algoritmo LMS, efecto que en ´ultima instancia se traduce en un filtrado de
4
µx(n)d(n)
µx(n)xT
(n)
W(n)
W(n+1)
z-1
I
Figura 3: Actualizaci´on de pesos seg´un el algoritmo LMS
mayor precisi´on. En otras palabras, la inversa de la tasa de aprendizaje es una medida de la
memoria del algoritmo LMS.
La siguiente labor consiste en analizar la convergencia, as´ı como la estabilidad del algoritmo
LMS. Sin embargo, antes de emprender tal tarea es necesario realizar una serie de aclaraciones
respecto del modo en que se actualizan los pesos del filtro objeto de dise˜no. Dicha actualizaci´on
qued´o plasmada en (13) y provoca que el vector de pesos W(n) no siga una trayectoria definida en
el espacio de pesos, sino que dicha trayectoria es aleatoria, por lo que se dice que la aproximaci´on
que aqu´ı se realiza del gradiente es de car´acter estoc´astico. A medida que el n´umero de iteraciones
se aproxima al infinito, el algoritmo LMS hace que los pesos calculados mediante (13) definan
una trayectoria aleatoria entorno a la soluci´on de Wiener (Wopt). Pero lo m´as importante aqu´ı es
que esta aproximaci´on a la soluci´on ´optima del problema se realiza sin necesidad de conocer los
estad´ısticos asociados a las se˜nales involucradas. Hechas las oportunas aclaraciones, se emprende
el an´alisis de la convergencia del algoritmo LMS. De teor´ıa de control se sabe que la estabilidad
de un sistema realimentado est´a determinada por los par´ametros involucrados en el bucle de real-
imentaci´on. Si observamos la figura 3, se comprueba que es el bucle de realimentaci´on inferior el
que permite controlar la convergencia del sistema, tanto en cuanto el bucle superior no presenta
par´ametro ajustable alguno. Dos son los elementos que participan en el bucle de realimentaci´on
inferior y que, por consiguiente, definen la transmitancia de dicho bucle: la tasa de aprendizaje µ y
el vector de entradas x(n). Es decir, la convergencia del algoritmo LMS vendr´a condicionada tanto
por caracter´ısticas estad´ısticas de la entrada como por el par´ametro µ, siendo este ´ultimo el ´unico
factor controlable para un entorno de trabajo dado. En consecuencia, el objetivo es determinar
aquellos valores de µ que aseguran una buena convergencia. Ahora bien, para hallar tales valores
se ha de decidir cual ha de ser el criterio de convergencia a exigir. Dos son las posibilidades:
Convergencia en media: E[W(n)] → Wopt cuando n → ∞. Este criterio de convergencia no
es de car´acter pr´actico tanto en cuanto cualquier secuencia aleatoria de vectores de media
cero converge en este sentido.
Convergencia en media cuadr´atica: E[e2
(n)] → valor constante cuando n → ∞. Este es el
verdadero criterio de car´acter pr´actico. El problema es que un an´alisis en profundidad de la
convergencia del algoritmo LMS en este sentido, encierra una gran complejidad, con lo que
nos vemos abocados a realizar las siguientes hip´otesis (teor´ıa de la independencia: Widrow y
otros,1976):
• Las sucesivos vectores de entradas x(1), x(2) . . . son estad´ısticamente independientes.
• Para el instante de tiempo n el vector de entradas x(n) es independiente de todas las
muestras anteriores de respuesta deseada del sistema, esto es, d(1), d(2) . . . , d(n − 1).
• Para el instante de tiempo n la respuesta deseada d(n) es estad´ısticamente independiente
respecto x(n) y respecto de los valores anteriores de la respuesta deseada.
• El vector de entradas x(n) y la respuesta deseada d(n) presentan una funci´on de dis-
tribuci´on gaussiana.
Estas hip´otesis permiten expresar la matriz de correlaciones de entradas como Rx = x(n)xT
(n) y
el vector de correlaciones entre entradas y respuestas deseadas como rdx = x(n)d(n). Asimismo
aquellas hip´otesis implican que, cuando n tiende a infinito, la soluci´on dada por el algoritmo LMS
5
tiende a la ´optima, es decir, la soluci´on dada por Wiener (Wopt). Por tanto, (13) ahora queda como
Wn+1 = (I − µRx)Wn + µrdx, (16)
expresi´on que, restando en ambos lados la soluci´on ´optima de Wiener y con el cambio de variable
Dn = Wn − Wopt, da lugar a
Dn+1 = (I − µRx)Dn. (17)
Por otro lado, la matriz de correlaciones de entradas puede ser descompuesta mediante una
descomposici´on SVD de modo que
Rx = V Λ V T
, (18)
donde los autovectores que constituyen la matriz V forma una base ortonormal (es decir, V V T
=
I). Como resultado de esto obtenemos
Dn+1 = V (I − µΛ)V T
Dn, (19)
que multiplicando por la izquierda a ambos lados de la igualdad, y haciendo vn = V T
Dn, permite
expresar
vn+1 = (I − µΛ)vn. (20)
Dado que la matriz Λ es diagonal (con elementos iguales a los autovalores de la matriz de correla-
ciones de las entradas), podemos decir que
vn(k) = (1 − µλk)vn(k). (21)
Tras n iteraciones a partir de un cierto valor inicial v0(k), nos queda
vn(k) = (1 − µλk)n
v0(k). (22)
Por tanto el sistema converge siempre que para todo k se cumpla que
| 1 − µλk | < 1. (23)
De este modo, la convergencia del sistema exige la siguiente condici´on con respecto a la tasa o
par´ametro de aprendizaje:
0 < µ <
2
λmax
, (24)
siendo λmax el mayor autovalor de la matriz de correlaciones Rx. Ahora bien, dicho autovalor no
siempre se puede determinar, por lo que, teniendo en cuenta que λmax ≤
M−1
k=0 λk = tr(Rx) =
Traza de la matriz Rx= Suma de los elementos diagonales de Rx=M · rx(0)=suma de los valores
cuadr´aticos del vector de entradas xn, una condici´on equivalente, aunque m´as restrictiva ser´ıa
0 < µ <
2
M · rx(0)
(25)
Por tanto si elegimos µ tal que se cumple (25), el algoritmo presenta convergencia cuadr´atica y con-
vergencia en media, ya que la primera convergencia implica la segunda, si bien no se da la relaci´on
rec´ıproca. Es decir, un sistema que converge en media puede que no converga cuadr´aticamente.
Hasta punto se han rese˜nado las circunstancias que determinan la convergencia del algoritmo LMS,
lo que queda, pues, es determinar la rapidez de tal convergencia. Precisamente este es el principal
problema del algoritmo LMS, ya que, por lo general, se requiere un n´umero de iteraciones cercano
a 10 veces la dimensi´on del espacio de entradas para alcanzar un r´egimen estable. El problema se
hace mayor a medida que aumenta la dimensi´on del vector de entradas (es decir, el n´umero de
coeficientes del filtro adaptativo) y a medida que el n´umero de condici´on de la matriz Rx aumenta,
siendo el n´umero de condici´on el cociente entre el autovalor mayor y el autovalor menor de dicha
matriz. Adem´as, la tasa de convergencia del algoritmo LMS es especialmente sensible a los cambios
que el entorno de trabajo provoca en el citado n´umero de condici´on. Un an´alisis detallado de la
transcendencia del n´umero de condici´on de la matriz Rx puede verse en [4],[5].
6
3.2. Aplicaci´on del algoritmo LMS al problema de la identificaci´on del
canal de comunicaci´on
En este punto se pretende establecer un mecanismo de identificaci´on del canal de comunicaci´on
basado en el algoritmo LMS. Para ello se transmite una cierta se˜nal conocida a trav´es del canal de
comunicaci´on, de modo que el receptor recibir´a el resultado de la convoluci´on de la se˜nal original
con la respuesta impulsiva del canal, es decir, se asume que el canal es lineal e invariante con
el tiempo. Pues bien, la identificaci´on del canal de comunicaci´on se efectuar´a dise˜nando un filtro
adaptativo FIR mediante el algoritmo LMS, de modo que la respuesta de dicho filtro, cuando la
entrada es la se˜nal original enviada a trav´es del canal, sea la se˜nal recibida. Por tanto el modelo a
aplicar ser´a el que aparece en la figura , donde v(n) es un ruido aditivo gaussiano de media cero
(AWGN).
x(n)
v(n)
H(z)
Función transferencia
canal de comunicación
Wn
Adaptación
coeficientes
filtro
Figura 4: Modelo transmisi´on para identificaci´on del canal de comunicaci´on
De forma gen´erica tenemos
H(z) =
∞
i=0 aiz−i
1 −
∞
j=1 bjz−j
=
∞
k=0
hkz−k
, (26)
es decir, se asume que el canal es causal. El filtro adaptativo a construir es de orden M − 1, es
decir, hay que determinar M coeficientes, con lo que el esquema propuesto aproxima s´olo los M
primeros coeficientes de la respuesta impulsiva del canal. Teniendo en cuenta que la se˜nal deseada
d(n) = hT
x(n) + v(n), donde h = [h0 h1 . . . h∞]T
, y expresando b = [h0 h1 . . . hM−1]T
, tenemos
d(n) = bT
x(n) + ξ(n) + v(n). (27)
De este modo el vector de correlaciones cruzadas entra la se˜nal de entrada y la deseada , teniendo
en cuenta que la se˜nal de entrada y el ruido est´an incorrelados, vendr´a dado por
rdx =





rdx(0)
rdx(1)
...
rdx(M − 1)





=





E xT
(n)h(n) + v(n) x(n)
E xT
(n)h(n) + v(n) x(n − 1)
...
E xT
h(n) + v(n) x(n − M + 1)





=
=





E xT
(n)b(n) + ξ(n) x(n)
E xT
(n)b(n) + ξ(n) x(n − 1)
...
E xT
(n)b(n) + ξ(n) x(n − M + 1)





rdx = Rxb + E [ξ(n)x(n)] . (28)
Expresi´on que, considerando que M es lo suficientemente grande como para despreciar el efecto
de la correlaci´on entre el t´ermino residual ξ(n) y el vector de entradas, queda reducida al primer
sumando, es decir
Wopt ≈ b. (29)
Por su parte la din´amica del algoritmo LMS vendr´a determinada por la ecuaci´on (13), donde
e(n) = (WT
(n) − b)x(n) + ξ(n) + v(n) ≈ (WT
(n) − b)x(n) + v(n) (30)
7
3.3. Codificaci´on ca´otica de se˜nales de voz
En esta secci´on se presenta un m´etodo de codificaci´on de las se˜nales de voz de modo que
la se˜nal resultante posea un espectro plano, ya que, seg´un recoge [5], los autovalores asociados
a la matriz de correlaciones Rx, construida a partir de la se˜nal codificada, est´an limitados por
los valores m´aximo y m´ınimo del espectro de potencia de dicha se˜nal. Dicho de otro modo, un
n´umero de condici´on unitario para la matriz Rx significa un espectro plano para la se˜nal x(n).
Una de las principales caracter´ısticas de las se˜nales ca´oticas es el “car´acter plano” de su espectro
de potencia. Esta circunstancia sugiere que un buen veh´ıculo para lograr una secuencia adecuada
para la identificaci´on del canal de comunicaci´on, es alg´un tipo de codificaci´on de la se˜nal original
de voz mediante caos. El esquema aqu´ı propuesto codifica la se˜nal de voz escal´andola, en primer
lugar, de modo que est´e dentro del intervalo [-1,1] y, a continuaci´on, modifica en funci´on de la se˜nal
de voz escalada, el valor del par´ametro que controla la din´amica de la secuencia ca´otica concreta
considerada.
En lo que sigue se trabajar´a con el mapa log´ıstico. La din´amica del sistema viene dada por
xk+1 = rkxk(1 − xk), (31)
de modo que rk se escoge
rk = r0 + ∆Ik. (32)
Es decir, se busca un valor del par´ametro din´amico r0 de modo que el comportamiento del sistema
definido por 31 sea ca´otico para todo valor de k. Tal y como se comento m´as arriba, la se˜nal de
informaci´on ha de estar normalizada (| Ik |≤ 1 ∀k). Los valores de los par´ametros considerados son
r0 = 3.9757 y ∆r = 0.029. A la vista de la figura 5 se concluye que, en efecto, la codificaci´on ca´otica
esparce el espectro de la se˜nal original de voz, de modo que la diferencia entre el valor m´aximo y
el m´ınimo del espectro de potencia se ve reducida. Sin embargo, tal y como se observa en la figura
5, la se˜nal codificada ca´oticamente posee una alta componente de baja frecuencia, debido a que
posee un cierto valor medio. Por tanto, un mecanismo para reducir a´un m´as el esparcimiento de
los autovalores de Rx, consiste en restar a la anterior se˜nal su valor medio. La disminuci´on del
esparcimiento de los autovalores, fruto de la codificaci´on y de la posterior sustracci´on del valor
medio, se refleja en la tabla 3.3, la cual ha sido obtenida trabajando con la se˜nal de voz de la figura
5.
λmax/λmin
Se˜nal Original 5270
Se˜nal codificada 987.84
Se˜nal cod. media 0 5.1
Tabla 1: Relaci´on entre autovalor m´aximo y m´ınimo
8
Figura 5: Ensanchamiento de espectro mediante codificaci´on ca´otica
3.4. Identificaci´on ciega del canal de comunicaci´on: algoritmo DBD (Dy-
namic Based Deconvolution)
El m´etodo de identificaci´on del canal de comunicaci´on propuesto en la secci´on 3.2 part´ıa del
conocimiento de la se˜nal enviada a trav´es del canal. Ahora lo que se trata es de plantear un nuevo
esquema que evite la necesidad de saber qu´e se˜nal fue enviada a trav´es del canal de comunicaci´on,
motivo por el cual este nuevo m´etodo se dice que lleva a cabo la identificaci´on de forma ciega. El
m´etodo que se va a utilizar se basa en el conocimiento de la din´amica de la se˜nal transmitida. Por
otro lado, el procedimiento es cuesti´on va a tratar de hallar la inversa de la funci´on de transferencia
del canal de comunicaci´on. Por estas dos circunstancias, tal esquema de identificaci´on se dice es
un m´etodo de deconvoluci´on basado en la din´amica de las se˜nales transmitidas (en ingl´es dinamic-
based deconvolution o, abreviadamente, DBD).
xk
vk
reck
sk Codificación
caótica
Canal de
comunicación Deconvolución
canal
z-1 Generación
mapa caótico
Figura 6: Esquema de funcionamiento del algoritmo DBD
El esquema a seguir es el presentado en la figura 6. La se˜nal de voz a transmitir es codificada
siguiendo el esquema planteado en el apartado anterior. El canal de comunicaci´on se asume causal,
lineal e invariante en el tiempo y viene representado mediante un modelo AR tal que
H(z) =
1
1 −
p
i=1 biz−i
. (33)
Pues bien, el bloque de deconvoluci´on del canal viene caracterizado por una funci´on de transferencia
G(z), que es un filtro FIR de orden M (es decir, M + 1 coeficientes), siendo M mayor o igual que
p. Se pretende que G(z) sea la inversa de la funci´on de transferencia del canal de comunicaci´on.
Es decir, se desea que
[G(z) ◦ H(z)] = 1, (34)
9
lo cual exige que a0 = 1, ai = −bi i = 1, 2, . . . , p y ai = 0 para i > p, siendo aj los coeficientes que
definen el filtro G(z), esto es
G(z) =
M
i=0
aiz−i
. (35)
Si denominamos xest
k a la salida del filtro en el instante k tenemos que
xest
k − xk = (a0reck − reck) +
p
i=1
(ai + bi)reck−i +
M
i=p+1
aireck−i. (36)
Suponiendo que G(z) realiza de forma adecuada la deconvoluci´on, cabr´ıa esperar que la trayectoria
descrita por la secuencia a la salida de este filtro, sea la misma que describe la secuencia original
xk. Asumiendo que el mapa log´ıstico se utiliz´o en la codificaci´on, la funci´on de error a emplear en
la b´usqueda de los coeficientes de G(z) es
ek = xest
k − rest
xest
k−1(1 − xest
k−1), (37)
donde rest
es una estimaci´on del par´ametro de control de la din´amica del mapa ca´otico o un cierto
valor medio. Dado que dicho par´ametro va a estar fluctuando en torno a r0, se considerar´a que
rest
= r0 = 3.9757. Al igual que se procedi´o con el algoritmo LMS, las sucesivas actualizaciones de
los pesos del filtro a construir, vienen dadas por desplazamientos en la direcci´on contraria a la del
gradiente del error cuadr´atico respecto de los coeficientes del filtro, siendo ´este
ak
e2
k = 2ek(reck − rest
reck−1(1 − 2xest
k−1)). (38)
La ley de actualizaci´on de pesos ser´a
ak+1 = ak − µek(reck − rest
reck−1(1 − 2xest
k−1)), (39)
siendo µ el par´ametro que determina la convergencia del algoritmo: si µ es demasiado peque˜no
la convergencia del algoritmo DBD se lleva a cabo de forma lenta, mientras que si es demasiado
grande el sistema se desestabiliza. Para analizar las prestaciones del m´etodo propuesto previamente
es preciso establecer cu´ales son los pesos ´optimos del filtro objeto de dise˜no, es decir, debemos
determinar la soluci´on ´optima de Wiener aopt. Haciendo uso de la ecuaci´on de Wiener-Hopf en
forma matricial (7), teniendo en cuenta que la entrada del sistema xk ahora es reck + vk y que la
se˜nal deseada es dk = xk queda
Rentrada = E (reck + vk)T
(reck + vk) = Rrec + Rv,
rdx(k) = E [xn(recn−k + vn−k)] = E [xnrecn−k] = E recn−krecT
n bext ,
a opt = [R rec + R v]
−1
R rec b ext. (40)
En el an´alisis pr´actico se supondr´a Rv = 0 (caso ideal sin ruido), con lo que
a opt ≈ b ext, (41)
siendo b ext = [1 − b1 − b2 . . . − bp]
T
.
4. Simulaciones y conclusiones
4.1. Test del algoritmo LMS con codificaci´on ca´otica para diferentes
valores del par´ametro µ
El objetivo de este apartado es el de verificar el comportamiento del algoritmo LMS utilizando
diversos valores para la tasa de convergencia µ. Asimismo se comprobar´a la mejora experimenta-
da al utilizar codificaci´on ca´otica. El primer paso consistir´a en definir una cierta figura que nos
permita juzgar la precisi´on del modelo. Una buena figura es la denominada desajuste del modelo
(Model Misadjustment - MM-) respecto a la soluci´on ´optima de Wiener . A continuaci´on se anal-
izan diversas situaciones (en todas ellas se considera ausencia de ruido) present´andose las gr´aficas
que concretan los resultados obtenidos. En dichas gr´aficas se representa en decibelios la figura
MM normalizada respecto al desajuste del modelo inicial. La respuesta impulsiva del canal de
comunicaci´on viene dada por
hn =
1
2 1 + cos(2π
3 (n − 2)) , n = 1, 2, 3
0 , e.o.c.
,
mientras que el filtro a dise˜nar presenta 128 coeficientes (M = 128).
10
4.1.1. Verificaci´on de las prestaciones de la codificaci´on ca´otica
Se pretende mostrar la conveniencia de emplear la codificaci´on ca´otica como herramienta para
aumentar la tasa de convergencia del algoritmo LMS aplicado a la identificaci´on del canal de
comunicaci´on. Esta circunstancia se aprecia sin m´as que observar la figura 8. A la vista de dicha
gr´afica se concluye que la forma m´as conveniente de llevar a cabo la identificaci´on del canal es
por medio de codificaci´on ca´otica con se˜nales de media cero, es decir, antes de enviar la se˜nal a
trav´es del canal conviene substraerle su valor medio, pues de este modo el espectro de la se˜nal
resultante no presenta una delta en el origen, lo que se traduce en un espectro de potencia plano
y, en consecuencia, un n´umero de condici´on bajo para la matriz Rx.
Amplitud normalizada
N´umero de muestra
Figura 7: Se˜nal empleada en los experimentos
MM (dBs)
N´umero de iteraciones
Figura 8: Test LMS para µ = 0.02 sin ruido
4.1.2. Decisi´on valor de µ ´optimo para el caso de se˜nales de voz codificadas mediante
se˜nales ca´oticas de media cero: µ constante
Se pretende determinar un valor adecuado de µ para el caso de codificaci´on ca´otica con se˜nales
de media cero y siendo µ constante en las sucesivas iteraciones del algoritmo LMS. Los resultados
obtenidos aparecen en la figura 9, a la vista de la cual se concluye que 0.07 es un valor adecuado
para µ.
11
MM (dBs)
N´umero de iteraciones
Figura 9: B´usqueda de valor ´optimo para la tasa de aprendizaje
4.1.3. Decisi´on valor de µ ´optimo para el caso de se˜nales de voz codificadas mediante
se˜nales ca´oticas de media cero: esquema estoc´astico de iteraci´on
El par´ametro µ en cada iteraci´on n viene descrito por
µ(n) =
µ(0)
n
n = 1, 2, . . . (42)
La elecci´on de µ(0) determina la convergencia del algoritmo siendo crucial la elecci´on de un valor
para el mismo no muy peque˜no (convergencia lenta) ni demasiado grande (inestabilizaci´on del
sistema), tal y como refiere [6]. En el caso que nos ocupa, los resultados m´as satisfactorios se ob-
tuvieron para µ(0) = 10 (mirar figura 10).
MM (dBs)
N´umero de iteraciones
Figura 10: Resultados para esquema estoc´astico de iteraci´on
4.1.4. Decisi´on valor de µ ´optimo para el caso de se˜nales de voz codificadas mediante
se˜nales ca´oticas de media cero: esquema b´usqueda-convergencia
En este caso µ es
µ(n) =
µ(0)
1 + (n/τ)
n = 1, 2 . . . , (43)
12
seg´un recoge [6]. A la vista de (43) se concluye que para valores de n peque˜nos respecto de la
constante de tiempo τ, µ es aproximadamente igual a µ(0). Por consiguiente, eligiendo un valor
elevado para µ(0) hacemos que los pesos del filtro se actualicen de forma que se sit´uen cerca de
su valor ´optimo, es decir, en esta fase se lleva a cabo una b´usqueda del ´area entorno a la soluci´on
´optima. Cuando el n´umero de iteraciones es considerablemente elevado, µ(n) es aproximadamente
igual a τµ(0)/n . Es en esta fase cuando los pesos del filtro convergen hacia su valor ´optimo, de
ah´ı que se hable de fase de convergencia. Para nuestro caso particular los resultados obtenidos para
diversos valores de los par´ametros involucrados en (43) aparecen en la figura 11, concluy´endose
que la mejor elecci´on es µ(0) = 0.09 y τ = 4000.
MM (dBs)
N´umero de iteraciones
Figura 11: B´usqueda del valor ´optimo de µ mediante esquema b´usqueda-convergencia
4.1.5. Decisi´on entre los tres valores ´optimos obtenidos
Ahora es tiempo de decidir que esquema es el m´as adecuado a la hora de realizar una iden-
tificaci´on del canal de comunicaci´on v´ıa algoritmo LMS. Para ello representamos conjuntamente
las soluciones ´optimas obtenidas m´as arriba (figura 12), concluyendo que los mejores resulta-
dos se obtienen aplicando codificaci´on ca´otica son se˜nales de media cero y un esquema de
b´usqueda-convergencia para el par´ametro µ, ya que, si bien para un n´umero peque˜no de itera-
ciones la b´usqueda estoc´astica proporciona los mejores resultados, a medida que crece el n´umero de
iteraciones las prestaciones del m´etodo de b´usqueda-convergencia supera a las de los otros m´eto-
dos, siendo especialmente rese˜nable el caso de la b´usqueda estoc´astica, ya que para n´umero de
iteraciones superior a 1000 la mejora experimentada al seguir iterando es muy peque˜na. Es decir,
el algoritmo se “estanca”, increment´andose cada vez m´as la diferencia entre el MM de este m´etodo
y el aportado por el mecanismo de b´usqueda-convergencia.
4.2. Test del algoritmo DBD
Se considerar´a que el canal viene descrito mediante
H(z) =
1
1 − 0.1106z−1 + 0.2309z−2 + 0.5839z−3
(44)
La figura ha utilizar ser´a de nuevo MM y se considera que no hay ruido en el canal. Los valores
iniciales de los pesos del filtro vienen dados por el resultado de aplicar, para un n´umero peque˜no de
iteraciones, el algoritmo de identificaci´on del canal basado en el m´etodo LMS a una se˜nal ca´otica
pura generada a partir del mapa log´ıstico para r = 3.9757. De nuevo todos los resultados obtenidos,
que aparecen sintetizados en las siguientes gr´aficas, se encuentran normalizados respecto al MM
determinado por los pesos iniciales anteriormente citados. Adem´as, el resultado de tal normalizaci´on
se expresa en decibelios. El ´ultimo punto a aclarar antes de mostrar las gr´aficas es el referido a la
elecci´on del orden del filtro a dise˜nar. Es decir, en el receptor se ha de suponer un cierto orden
para el filtro a construir, teniendo que ser dicho orden igual o superior al orden del filtro AR que
13
MM (dBs)
N´umero de iteraciones
Figura 12: Comparaci´on entre valores ´optimos de µ
modela el canal. Hechas todas las aclaraciones oportunas, pasamos a analizar el comportamiento
del algoritmo DBD para las 3 implementaciones del par´ametro µ presentadas en la secci´on anterior.
4.2.1. Tasa de aprendizaje constante
Suponiendo que conocemos a ciencia cierta el orden del filtro AR que modela el canal, y que
en este caso es 3 (esto es, el canal tiene 4 coeficientes), se analiza la calidad del m´etodo DBD
para diversos valores de µ, siendo ´este constante a lo largo de las diversas iteraciones. La primera
consecuencia destacable tras analizar la figura 13, son las oscilaciones que los coeficientes del filtro
construido presentan una vez se ha alcanzado la adaptaci´on. Esto es resultado de que se intenta
aproximar la din´amica de un sistema c´aotico, de modo que peque˜nos cambios en los pesos del
filtro se traducen en “grandes” diferencias entre las trayectorias predichas para dos instantes de
tiempo diferentes (recordar que una de los rasgos principales de un comportamiento ca´otico era que
trayectorias inicialmente pr´oximas tienden a separarse exponencialmente con el tiempo). Es decir,
en r´egimen permanente los cambios en los pesos del filtro generado mediante el algoritmo DBD
se ven amplificados. La siguiente conclusi´on es relativa al valor del par´ametro de convergencia. Se
observa que para valores de µ inferiores a 0.01 el sistema es excesivamente lento, mientras que a
medida que µ crece por encima de 0.01 y se acerca a 0.06 las oscilaciones en r´egimen permanente
son mayores, de modo que para µ mayor que 0.06 el sistema se inestabiliza. En definitiva, parece
que µ = 0.01 da lugar a un comportamiento aceptable.
14
MM (dBs)
N´umero de iteraciones
Figura 13: B´usqueda de valor ´optimo de µ para DBD y esquema de iteraci´on constante
4.3. Esquema estoc´astico
El valor que da mejores resultados es, teniendo en cuenta la figura 14, µ = 0.3. De dicha gr´afi-
ca se desprende, adem´as, que el esquema estoc´astico para µ hace que en r´egimen permanente el
sistema no oscile, debido a que para n suficientemente grande µ presenta valores peque˜nos que
casi no amplifican los cambios experimentados en los pesos del filtro. Por el contrario, la robustez
en cuanto a estabilidad que se gana se traduce en una convergencia m´as lenta, es decir, existe un
compromiso entre precisi´on y rapidez.
MM (dBs)
N´umero de iteraciones
Figura 14: B´usqueda de valor ´optimo de µ para DBD y esquema de iteraci´on estoc´astico
4.4. Esquema b´usqueda-convergencia
En los diversos experimentos realizados, algunos de los cuales aparecen representados en la
figura 15, se observ´o que para un valor de µ(0) superior a 0.08 los pesos del filtro crecen demasiado
para las primeras iteraciones del algoritmo, lo cual no conviene, pues empeora la tasa de con-
vergencia. Por ello se asumi´o µ(0) = 0.08 como un valor adecuado. A continuaci´on se realizaron
diversos experimentos con µ(0) = 0.08 y τ variable, concluy´endose que, para µ(0) fijo, a medida
que τ aumenta las oscilaciones en r´egimen permanente se acent´uan, debido a que µ(n) mantiene
un valor elevado para un mayor n´umero de iteraciones. Por esta circunstancia se elige τ = 100 y
µ(0) = 0.05 como un conjunto de valores que determinan un comportamiento satisfactorio.
15
MM (dBs)
N´umero de iteraciones
Figura 15: B´usqueda de valor ´optimo de µ para DBD y esquema de iteraci´on b´usqueda-convergencia
4.5. Decisi´on entre los tres valores ´optimos
Si representamos las soluciones ´optimas obtenidas para cada uno de los esquemas de generaci´on
del par´ametro de aprendizaje del algoritmo DBD (figura 16), hemos de elegir como mejor opci´on
la representada por un dise˜no de µ seg´un el modelo de b´usqueda-convergencia de Moody y Darken,
ya que es para esta situaci´on cuando se alcanza una r´apida convergencia y,adem´as, en r´egimen
permanente las oscilaciones de los pesos del filtro implementado casi no son apreciables.
MM (dBs)
N´umero de iteraciones
Figura 16: Comparaci´on entre los diversos esquemas iterativos para el algoritmo DBD
4.6. Test de los algoritmos LMS y DBD en presencia de ruido
El canal de comunicaci´on ser´a modelada seg´un (44). Al igual que se hizo en el apartado 4.1, se
supone que el filtro a dise˜nar mediante el algoritmo LMS posee 128 coeficientes. Las simulaciones
obtenidas aparecen en la figura 17 y la figura 18, habi´endose obtenido ambas seg´un los dise˜nos
“´optimos” para cada algoritmo. La primera gr´afica (figura 17) nos lleva a concluir que el algoritmo
DBD presenta un comportamiento aceptable cuando la relaci´on se˜nal a ruido (SNR) es cercana o
superior a 20 dB. Adem´as el comportamiento del algoritmo, en el caso de trabajar en las condiciones
reci´en rese˜nadas, es aceptable a´un cuando el orden del filtro a dise˜nar no coincide con el orden de la
16
funci´on de transferencia que modela al canal. Es m´as, la tasa de convergencia del algoritmo DBD
- tabla 2- para SNR = 20dB es mayor que la presenta el algoritmo LMS - tabla 3 - con se˜nales
ca´oticas de media cero, si bien se observ´o que para ´ordenes del filtro a implementar superiores
o iguales a 8 durante las primeras iteraciones del algoritmo DBD no existe convergencia alguna,
esto es, los pesos del filtro se alejan de la soluci´on ´optima, aunque este comportamiento s´olo existe
durante un r´egimen transitorio. Para concluir, es necesario rese˜nar la importancia de seleccionar
un valor no excesivamente elevado para la tasa de aprendizaje inicial en el caso del algoritmo DBD,
pues a dicha tasa amplifica los efectos perjudiciales del ruido. De este modo, experimentalmente
se comprob´o que conven´ıa
µ(0) ≤ 10−7
, τ = 10 para 0 ≤ SNR < 10 dBs (45)
µ(0) ≤ 10−4
, τ = 100 para 10 ≤ SNR ≤ 15 dBs (46)
µ(0) ≤ 0.02, τ = 200 para 15 < SNR ≤ 25 dBs (47)
Tasa de convergencia aproximadas para el algoritmo DBD
orden del filtro 3 4 6 8
SNR<20 dBs 0.11dB/100 iter. 0.09 dB/100 iter. 0.37 dB/100 iter. 0.27dB/100 iter.
SNR≥20 dBs 13 dB/100 iter. 13 dB /100 iter. 6 dB/100 iter. 3 dB/100 iter.
Tabla 2: Convergencia para DBD
MM (dBs)
N´umero de iteraciones
(a) Orden filtro=3
N´umero de iteraciones
(b) Orden filtro=4
MM (dBs)
N´umero de iteraciones
(c) Orden filtro=6
N´umero de iteraciones
(d) Orden filtro=8
Figura 17: Simulaciones para el algoritmo DBD en presencia de ruido
17
MM (dBs)
N´umero de iteraciones
Figura 18: An´alisis algoritmo LMS en presencia de ruido
Tasa de convergencia aproximada para el algoritmo LMS
SNR < 20 dBs 2 dB/100 iter.
SNR ≥ 20 dBs 4 dB /100 iter.
Tabla 3: Convergencia LMS en presencia de ruido
Referencias
[1] J.M.H. Elmirghani, S.H. Milner, R.A. Cryan, Experimental evaluation of echo path modelling
with chaotic coded speech, IEEE Trans. Signal Processing, vol. 45, pp. 2600-2604, Oct. 1997.
[2] A.M¨uller, J.M.H. Elmirghani, Blind channel estimation and echo cancellation using chaotic
coded signals, IEEE Communications Letters, vol 3, No. 3, pp. 72-74, Mar. 1999.
[3] A.M¨uller, J.M.H. Elmirgani, A chaotic spreading code and its application to blind channel es-
timation, Proc. IEEE Global Telecommunications Conference, GLOBECOM’01, San Antonio,
pp. 186-190, Nov. 2001.
[4] S. Haykin, Adaptive Filter Theory, Third Edition, Englewood Cliffs, NJ: Prentice-Hall, Signal
Processing Series, 1985.
[5] B. Widrow, S.D. Stearns, Adaptive signal Processing, Englewood Cliffs, NJ: Prentice-Hall,
Signal Processing Series, 1985.
[6] C. Darken, J. Moody, Towards faster stochastic gradient search, Advances in Neural Informa-
tion Processing Systems, vol. 4, pp. 1009-1016, San Mateo, CA: Morgan Kauffman, 1992.
[7] Miguel Romera, T´ecnica de los sistemas din´amicos discretos, Consejo Superior de Investiga-
ciones Cient´ıficas, 1997.
[8] C. Fern´andez P´erez, F.J. V´azquez Hern´andez, J.M. Vegas Montaner, Ecuaciones diferenciales
y en Diferencias. Sistemas Din´amicos, Thomson, Madrid 2003.
18

Más contenido relacionado

La actualidad más candente

Interfaz grafica del metodo de biseccion en matlab
Interfaz grafica del metodo  de biseccion en matlabInterfaz grafica del metodo  de biseccion en matlab
Interfaz grafica del metodo de biseccion en matlabRaul Cabanillas Corso
 
Optimizacion De Redes
Optimizacion De RedesOptimizacion De Redes
Optimizacion De RedesHero Valrey
 
(Diagrama de bode y diagrama polar) Angel Lunar
(Diagrama de bode y diagrama polar) Angel Lunar(Diagrama de bode y diagrama polar) Angel Lunar
(Diagrama de bode y diagrama polar) Angel LunarAngel Lunar
 
Electrónica digital: Funciones canónicas y mapa de Karnaugh
Electrónica digital: Funciones canónicas y mapa de KarnaughElectrónica digital: Funciones canónicas y mapa de Karnaugh
Electrónica digital: Funciones canónicas y mapa de KarnaughSANTIAGO PABLO ALBERTO
 
Ejemplo diagrama-de-bode
Ejemplo diagrama-de-bodeEjemplo diagrama-de-bode
Ejemplo diagrama-de-bodeGega Li
 
Algoritmo de Dijkstra
Algoritmo de DijkstraAlgoritmo de Dijkstra
Algoritmo de DijkstraPedro Miranda
 
Problemas de flujos
Problemas de flujosProblemas de flujos
Problemas de flujosiecacyol
 
Diagrama de bode camilo castro duarte
Diagrama de bode camilo castro duarteDiagrama de bode camilo castro duarte
Diagrama de bode camilo castro duarteCamilo Castro Duarte
 
Lecture 12 representación espacial de señales
Lecture 12 representación espacial de señalesLecture 12 representación espacial de señales
Lecture 12 representación espacial de señalesnica2009
 
Metodos numericos basicos_para_ingen
Metodos numericos basicos_para_ingenMetodos numericos basicos_para_ingen
Metodos numericos basicos_para_ingenedamcar
 
2. tecnicas de integración
2. tecnicas de integración2. tecnicas de integración
2. tecnicas de integraciónIdelfonso bello
 
Preparatorio 1 final instru (1)
Preparatorio 1 final instru (1)Preparatorio 1 final instru (1)
Preparatorio 1 final instru (1)pablo ambato
 
Conmutación de circuitos ópticos
Conmutación de circuitos ópticosConmutación de circuitos ópticos
Conmutación de circuitos ópticosFrancisco Apablaza
 

La actualidad más candente (20)

Interfaz grafica del metodo de biseccion en matlab
Interfaz grafica del metodo  de biseccion en matlabInterfaz grafica del metodo  de biseccion en matlab
Interfaz grafica del metodo de biseccion en matlab
 
Optimizacion De Redes
Optimizacion De RedesOptimizacion De Redes
Optimizacion De Redes
 
(Diagrama de bode y diagrama polar) Angel Lunar
(Diagrama de bode y diagrama polar) Angel Lunar(Diagrama de bode y diagrama polar) Angel Lunar
(Diagrama de bode y diagrama polar) Angel Lunar
 
Electrónica digital: Funciones canónicas y mapa de Karnaugh
Electrónica digital: Funciones canónicas y mapa de KarnaughElectrónica digital: Funciones canónicas y mapa de Karnaugh
Electrónica digital: Funciones canónicas y mapa de Karnaugh
 
Ejemplo diagrama-de-bode
Ejemplo diagrama-de-bodeEjemplo diagrama-de-bode
Ejemplo diagrama-de-bode
 
Teoria colas pp
Teoria colas ppTeoria colas pp
Teoria colas pp
 
Taller 1 de estructuras
Taller 1 de estructurasTaller 1 de estructuras
Taller 1 de estructuras
 
Algoritmo de Dijkstra
Algoritmo de DijkstraAlgoritmo de Dijkstra
Algoritmo de Dijkstra
 
Greedy
GreedyGreedy
Greedy
 
Tema ii integrales uts
Tema ii integrales utsTema ii integrales uts
Tema ii integrales uts
 
Problemas de flujos
Problemas de flujosProblemas de flujos
Problemas de flujos
 
Inter
InterInter
Inter
 
Algoritmo De Dijkstra
Algoritmo De DijkstraAlgoritmo De Dijkstra
Algoritmo De Dijkstra
 
Diagrama de bode camilo castro duarte
Diagrama de bode camilo castro duarteDiagrama de bode camilo castro duarte
Diagrama de bode camilo castro duarte
 
Lecture 12 representación espacial de señales
Lecture 12 representación espacial de señalesLecture 12 representación espacial de señales
Lecture 12 representación espacial de señales
 
Metodos numericos basicos_para_ingen
Metodos numericos basicos_para_ingenMetodos numericos basicos_para_ingen
Metodos numericos basicos_para_ingen
 
2. tecnicas de integración
2. tecnicas de integración2. tecnicas de integración
2. tecnicas de integración
 
1. la integral
1. la integral1. la integral
1. la integral
 
Preparatorio 1 final instru (1)
Preparatorio 1 final instru (1)Preparatorio 1 final instru (1)
Preparatorio 1 final instru (1)
 
Conmutación de circuitos ópticos
Conmutación de circuitos ópticosConmutación de circuitos ópticos
Conmutación de circuitos ópticos
 

Similar a Canal de comunicación y caos

Simulación en Ing. Eléctrica - Aproximación de funciones
Simulación en Ing. Eléctrica - Aproximación de funcionesSimulación en Ing. Eléctrica - Aproximación de funciones
Simulación en Ing. Eléctrica - Aproximación de funcionesCarlos Vergara Branje
 
Taller2 lab stats_matlab
Taller2 lab stats_matlabTaller2 lab stats_matlab
Taller2 lab stats_matlabNar Dy
 
T7 Alg Mult Matr
T7 Alg Mult MatrT7 Alg Mult Matr
T7 Alg Mult MatrFcoKraken
 
Marco Teorico
Marco  TeoricoMarco  Teorico
Marco TeoricoArcanoks
 
k vector search technique (spanish)
k vector search technique (spanish)k vector search technique (spanish)
k vector search technique (spanish)El Suizo
 
Paper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra FmanciaPaper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra FmanciaFcoKraken
 
Paper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra FmanciaPaper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra FmanciaFcoKraken
 
Mas_de_400_ejercicios_de_programacion_en (2).pdf
Mas_de_400_ejercicios_de_programacion_en (2).pdfMas_de_400_ejercicios_de_programacion_en (2).pdf
Mas_de_400_ejercicios_de_programacion_en (2).pdfmargothingrithllanca
 
Mas_de_400_ejercicios_de_programacion_en (1).pdf
Mas_de_400_ejercicios_de_programacion_en (1).pdfMas_de_400_ejercicios_de_programacion_en (1).pdf
Mas_de_400_ejercicios_de_programacion_en (1).pdfmargothingrithllanca
 
Jaime salazar presentacion saia
Jaime salazar presentacion saiaJaime salazar presentacion saia
Jaime salazar presentacion saiajaime_19
 
Compresión De Archivos con y sin Pérdida
Compresión De Archivos con y sin PérdidaCompresión De Archivos con y sin Pérdida
Compresión De Archivos con y sin PérdidaCarlos Criollo
 
Lenguaje de simulacion
Lenguaje de simulacionLenguaje de simulacion
Lenguaje de simulacionlilijessica
 
Metodos de programcion no lineal
Metodos de programcion no linealMetodos de programcion no lineal
Metodos de programcion no linealAngel Jhoan
 
Cuantización de Coeficientes de Canal Basados en Teoría de Números Algebraicos
Cuantización de Coeficientes de Canal Basados en Teoría de Números AlgebraicosCuantización de Coeficientes de Canal Basados en Teoría de Números Algebraicos
Cuantización de Coeficientes de Canal Basados en Teoría de Números AlgebraicosTELCON UNI
 
Estructura de datos avanzada
Estructura de datos avanzadaEstructura de datos avanzada
Estructura de datos avanzadaMaestros Online
 
Instrumentación electrónica virtual - BOOLE
Instrumentación electrónica virtual - BOOLEInstrumentación electrónica virtual - BOOLE
Instrumentación electrónica virtual - BOOLEFrancesc Perez
 

Similar a Canal de comunicación y caos (20)

Examen Parcial 2
Examen Parcial 2Examen Parcial 2
Examen Parcial 2
 
Simulación en Ing. Eléctrica - Aproximación de funciones
Simulación en Ing. Eléctrica - Aproximación de funcionesSimulación en Ing. Eléctrica - Aproximación de funciones
Simulación en Ing. Eléctrica - Aproximación de funciones
 
Taller2 lab stats_matlab
Taller2 lab stats_matlabTaller2 lab stats_matlab
Taller2 lab stats_matlab
 
T7 Alg Mult Matr
T7 Alg Mult MatrT7 Alg Mult Matr
T7 Alg Mult Matr
 
TiT_Guia3.pdf
TiT_Guia3.pdfTiT_Guia3.pdf
TiT_Guia3.pdf
 
Marco Teorico
Marco  TeoricoMarco  Teorico
Marco Teorico
 
k vector search technique (spanish)
k vector search technique (spanish)k vector search technique (spanish)
k vector search technique (spanish)
 
Paper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra FmanciaPaper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra Fmancia
 
Paper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra FmanciaPaper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra Fmancia
 
numerosAleatorios.pptx
numerosAleatorios.pptxnumerosAleatorios.pptx
numerosAleatorios.pptx
 
Mas_de_400_ejercicios_de_programacion_en (2).pdf
Mas_de_400_ejercicios_de_programacion_en (2).pdfMas_de_400_ejercicios_de_programacion_en (2).pdf
Mas_de_400_ejercicios_de_programacion_en (2).pdf
 
Mas_de_400_ejercicios_de_programacion_en (1).pdf
Mas_de_400_ejercicios_de_programacion_en (1).pdfMas_de_400_ejercicios_de_programacion_en (1).pdf
Mas_de_400_ejercicios_de_programacion_en (1).pdf
 
Jaime salazar presentacion saia
Jaime salazar presentacion saiaJaime salazar presentacion saia
Jaime salazar presentacion saia
 
Compresión De Archivos con y sin Pérdida
Compresión De Archivos con y sin PérdidaCompresión De Archivos con y sin Pérdida
Compresión De Archivos con y sin Pérdida
 
Lenguaje de simulacion
Lenguaje de simulacionLenguaje de simulacion
Lenguaje de simulacion
 
Metodos de programcion no lineal
Metodos de programcion no linealMetodos de programcion no lineal
Metodos de programcion no lineal
 
Cuantización de Coeficientes de Canal Basados en Teoría de Números Algebraicos
Cuantización de Coeficientes de Canal Basados en Teoría de Números AlgebraicosCuantización de Coeficientes de Canal Basados en Teoría de Números Algebraicos
Cuantización de Coeficientes de Canal Basados en Teoría de Números Algebraicos
 
Estructura de datos avanzada
Estructura de datos avanzadaEstructura de datos avanzada
Estructura de datos avanzada
 
Instrumentación electrónica virtual - BOOLE
Instrumentación electrónica virtual - BOOLEInstrumentación electrónica virtual - BOOLE
Instrumentación electrónica virtual - BOOLE
 
Economía
EconomíaEconomía
Economía
 

Más de darg0001

hybrid_threats.pdf
hybrid_threats.pdfhybrid_threats.pdf
hybrid_threats.pdfdarg0001
 
Cuerpos finitos y aplicaciones
Cuerpos finitos y aplicacionesCuerpos finitos y aplicaciones
Cuerpos finitos y aplicacionesdarg0001
 
Fundamentos del criptoanálisis diferencial
Fundamentos del criptoanálisis diferencialFundamentos del criptoanálisis diferencial
Fundamentos del criptoanálisis diferencialdarg0001
 
David arroyo2009 en
David arroyo2009 enDavid arroyo2009 en
David arroyo2009 endarg0001
 
Symbolic dynamics of unimodal maps
Symbolic dynamics of unimodal mapsSymbolic dynamics of unimodal maps
Symbolic dynamics of unimodal mapsdarg0001
 
Caos y Wavelets
Caos y WaveletsCaos y Wavelets
Caos y Waveletsdarg0001
 
Redes Caos
Redes CaosRedes Caos
Redes Caosdarg0001
 
Framework for the analysis and design of encryption strategies based on d...
Framework for the analysis and design of encryption strategies     based on d...Framework for the analysis and design of encryption strategies     based on d...
Framework for the analysis and design of encryption strategies based on d...darg0001
 

Más de darg0001 (8)

hybrid_threats.pdf
hybrid_threats.pdfhybrid_threats.pdf
hybrid_threats.pdf
 
Cuerpos finitos y aplicaciones
Cuerpos finitos y aplicacionesCuerpos finitos y aplicaciones
Cuerpos finitos y aplicaciones
 
Fundamentos del criptoanálisis diferencial
Fundamentos del criptoanálisis diferencialFundamentos del criptoanálisis diferencial
Fundamentos del criptoanálisis diferencial
 
David arroyo2009 en
David arroyo2009 enDavid arroyo2009 en
David arroyo2009 en
 
Symbolic dynamics of unimodal maps
Symbolic dynamics of unimodal mapsSymbolic dynamics of unimodal maps
Symbolic dynamics of unimodal maps
 
Caos y Wavelets
Caos y WaveletsCaos y Wavelets
Caos y Wavelets
 
Redes Caos
Redes CaosRedes Caos
Redes Caos
 
Framework for the analysis and design of encryption strategies based on d...
Framework for the analysis and design of encryption strategies     based on d...Framework for the analysis and design of encryption strategies     based on d...
Framework for the analysis and design of encryption strategies based on d...
 

Último

Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosJhonJairoRodriguezCe
 

Último (10)

Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 

Canal de comunicación y caos

  • 1. Aplicaci´on de secuencias ca´oticas a la identificaci´on del canal de comunicaci´on David Arroyo Guarde˜no ´Indice ´Indice 1 1. Introducci´on 2 2. Filtros de Wiener 2 3. Identificaci´on del canal de comunicaci´on v´ıa algoritmo LMS 3 3.1. Algoritmo LMS: formulaci´on y an´alisis de su estabilidad y convergencia . . . . . . 3 3.2. Aplicaci´on del algoritmo LMS al problema de la identificaci´on del canal de comuni- caci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.3. Codificaci´on ca´otica de se˜nales de voz . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.4. Identificaci´on ciega del canal de comunicaci´on: algoritmo DBD (Dynamic Based Deconvolution) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 4. Simulaciones y conclusiones 10 4.1. Test del algoritmo LMS con codificaci´on ca´otica para diferentes valores del par´ametro µ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 4.1.1. Verificaci´on de las prestaciones de la codificaci´on ca´otica . . . . . . . . . . . 11 4.1.2. Decisi´on valor de µ ´optimo para el caso de se˜nales de voz codificadas mediante se˜nales ca´oticas de media cero: µ constante . . . . . . . . . . . . . . . . . . 11 4.1.3. Decisi´on valor de µ ´optimo para el caso de se˜nales de voz codificadas mediante se˜nales ca´oticas de media cero: esquema estoc´astico de iteraci´on . . . . . . . 12 4.1.4. Decisi´on valor de µ ´optimo para el caso de se˜nales de voz codificadas mediante se˜nales ca´oticas de media cero: esquema b´usqueda-convergencia . . . . . . . 12 4.1.5. Decisi´on entre los tres valores ´optimos obtenidos . . . . . . . . . . . . . . . 13 4.2. Test del algoritmo DBD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 4.2.1. Tasa de aprendizaje constante . . . . . . . . . . . . . . . . . . . . . . . . . . 14 4.3. Esquema estoc´astico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.4. Esquema b´usqueda-convergencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.5. Decisi´on entre los tres valores ´optimos . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.6. Test de los algoritmos LMS y DBD en presencia de ruido . . . . . . . . . . . . . . 16 Referencias 18 1
  • 2. 1. Introducci´on El objetivo ser´a desarrollar un m´etodo para codificar mediante caos las se˜nales de voz, con el objeto de mejorar las prestaciones del algoritmo LMS (Least Mean Square) a la hora de llevar a cabo una identificaci´on del canal de comunicaci´on([1]). Asimismo se presenta tambi´en un segundo m´etodo basado en el algoritmo DBD -Dynamic Based Deconvolution- ([2],[3]), con el que se lle- var´a a cabo una identificaci´on ciega del canal. Se comenzar´a presentando someramente los filtros de Wiener, tanto en cuanto el algoritmo LMS trata de aproximar tal filtro con el prop´osito de implementar una realizaci´on on-line. Hecha tal presentaci´on, se desarrolla la teor´ıa vinculada con el algoritmo LMS, especialmente aquellos aspectos de la misma relacionados con la estabilidad y convergencia del m´etodo, ya que son estos factores los que justifican la utilizaci´on de la codifi- caci´on ca´otica de se˜nales de voz. Por ´ultimo, se desarrolla un m´etodo que en lugar de partir del conocimiento de la se˜nal enviada, aprovecha el conocimiento que se tiene respecto de la din´ami- ca de aquella. Tal m´etodo es el DBD, el cual permite llevar a cabo la labor que aqu´ı nos ocupa sin necesidad de conocer la se˜nal que se env´ıo originalmente y, por ello, se dice que realiza una identificaci´on ciega del canal. 2. Filtros de Wiener Esta secci´on pretende mostrar aquellos aspectos de los filtros de Wiener de inter´es para el posterior trabajo. Es decir, la descripci´on aqu´ı propuesta no es m´as que una introducci´on, siendo recomendable consultar [4] en caso de desear un mayor grado de detalle. Hecha esta primera puntualizaci´on, el an´alisis comienza presentando el esquema a seguir (Figura 1). e(n) d(n) x(n) Filtro de Wiener W(z) Figura 1: Esquema dise˜no de un filtro de Wiener El objetivo es minimizar el ´ındice J = E [e(n)e∗ (n)], donde e(n) representa la diferencia entre la se˜nal deseada -d(n)- y la se˜nal estimada por el filtro de Wiener -dest(n)-. Aquel filtro que minimiza tal ´ındice se dice que es un filtro ´optimo de Wiener. Para lograr el m´ınimo valor posible de J habr´ıa que trabajar con un filtro IIR no causal, lo cual es muy complejo en la pr´actica. Es decir, la soluci´on te´orica del problema no es satisfactoria para nuestros intereses, por lo que es preferible imponer restricciones al filtro a dise˜nar, de modo que finalmente se desarrollar´a un m´etodo que lleva a cabo la implementaci´on del filtro de Wiener como un filtro FIR causal (1), W(z) = M−1 n=0 wnz−n , (1) con lo que la se˜nal estimada por el filtro vendr´a dada por (2), mientras que (3) define el ´ındice a minimizar. dest(n) = M−1 i=0 wix(n − i), (2) J = E | e(n) |2 = E | d(n) − dest(n) |2 . (3) Dado que se desea minimizar (3), la siguiente operaci´on ser´a diferenciar (3) con respecto a los coeficientes del filtro a dise˜nar e igualar a cero. Este proceso lleva a (4), que concreta el principio de ortogonalidad o teorema de la proyecci´on sobre el cual se construye el filtro de Wiener. ∂J ∂wk = E 2e(n) ∂e(n) ∂wk = 0 ⇒ E [e(n)x(n − k)] e(n) = d(n) − M−1 i=0 wix(n − i) ⇒ ∂e(n) ∂wk = −x(n − k). (4) 2
  • 3. En efecto, si expresamos el error e(n) como la diferencia entre la se˜nal deseada y la se˜nal estimada por el filtro, (4) desemboca en (5): E d(n) − M−1 i=0 wix(n − i) x(n − k) = E [d(n)x(n − k)] − M−1 i=0 wiE [x(n − i)x(n − k)] = 0 rdx(k) − M−1 i=0 wirx(k − i) = 0, (5) expresi´on que, asumiendo d(n) y x(n) son procesos estacionarios en sentido amplio, lleva finalmente a la conocida como ecuaci´on de Wiener-Hopf (6). M−1 i=0 wirx(k − i) = rdx(k). (6) Esta ecuaci´on puede ser expresada matricialmente (7) de forma muy simple asumiendo que x(n) es un proceso real, lo cual implica que la funci´on de auto-correlaci´on (rx(k) = E [x(n)x(n − k)]) para x(n) es sim´etrica par respecto del origen (rx(k) = rx(−k)).         rx(0) rx(1) rx(2) · · · rx(M − 1) rx(1) rx(0) rx(1) · · · rx(M − 2) ... ... ... ... ... rx(M − 2) ... ... ... rx(1) rx(M − 1) · · · rx(2) rx(1) rx(0)         ⇓ Rx        w0 w1 w2 ... wM−1        ⇓ W =        rdx(0) rdx(1) rdx(2) ... rdx(M − 1)        ⇓ rdx (7) Es decir, los coeficientes del filtro de Wiener vendr´an dados por: W = R−1 x rdx. (8) 3. Identificaci´on del canal de comunicaci´on v´ıa algoritmo LMS 3.1. Algoritmo LMS: formulaci´on y an´alisis de su estabilidad y conver- gencia Dado que la soluci´on aportada en el apartado anterior constituye aquella para la cual el ´ındice J es el m´ınimo posible, cuando el filtro es FIR y causal, parece l´ogico pensar que el dise˜no o b´usqueda de un m´etodo alternativo no tiene sentido. Sin embargo, la obtenci´on de los coeficientes del filtro a partir de la ecuaci´on de Wiener-Hopf lleva asociada una gran carga computacional, tanto en cuanto implica la inversi´on de la matrix Rx, operaci´on que, desde el punto de vista computacional, es compleja y cada vez m´as compleja a medida que crece el n´umero de coeficientes del filtro a dise˜nar, ya que dicha matriz suele estar mal condicionada. Por otro lado, a la hora de obtener la ecuaci´on de Wiener-Hopf se asumi´o que los procesos aleatorios involucrados eran de car´acter estacionario en sentido amplio. Ahora bien, a la hora de tratar con se˜nales pr´acticas reales, como las se˜nales de voz, nos encontramos con que tal hip´otesis no es aplicable. En el caso de las se˜nales de voz se puede pensar en la posibilidad de segmentar la se˜nal de voz, de modo que cada uno de los segmentos resultantes permitan ser considerados como procesos aleatorios estacionarios en sentido amplio. No obstante, tal segmentaci´on no es recomendable en general, ya que puede que los estad´ısticos asociados a la se˜nal original cambien muy r´apidamente, factor que obligar´ıa a disminuir el tama˜no de los distintos segmentos (con lo que aumenta el n´umero de segmentos), circunstancia que puede alterar considerablemente las caracter´ısticas espectrales del proceso. En definitiva, parece m´as conveniente plantear un esquema alternativo al sintetizado en la ecuaci´on de Wiener-Hopf (6), de modo que se llegue a un nuevo m´etodo que nos lleva a una soluci´on aceptable (pero no ´optima), y haga posible trabajar con procesos de car´acter no estacionario, determinando los coeficientes del filtro a dise˜nar on-line y evitando posibles dificultades algebraicas semejantes a las previamente citadas. El m´etodo a desarrollar va a implementar un filtro adaptativo, es decir, los par´ametros libres del filtro se van a adaptar a las variaciones que experimentan los estad´ısticos 3
  • 4. de las se˜nales que constituyen el medio con el que se va a trabajar. En el caso particular que nos ocupa, el esquema a seguir aparece en la siguiente figura (Figura 2). x(n) e(n) d(n) Filtro transversal Wn Mecanismo de control adaptativo de los pesos del filtro Figura 2: Esquema del algoritmo LMS El algoritmo LMS se construye a partir de los valores instant´aneos de la funci´on de coste o de penalizaci´on: J(n) = 1/2e2 (n). (9) La derivada de dicho ´ındice con respecto a los pesos del filtro adaptativo a crear es ∂J(n) ∂W = e(n) ∂e(n) ∂W . (10) El error en cada instante viene dado por e(n) = d(n) − xT (n)W(n), (11) donde (x)(n) = [x(n) x(n − 1) . . . x(n − M + 1)]T y W(n) = [w0(n)w1(n) . . . wM−1(n)]T . En consecuencia, se tiene que ∂J(n) ∂W = −x(n)e(n), (12) expresi´on que constituye una estimaci´on del gradiente de la funci´on de coste. Dicho gradiente deter- mina un vector cuya direcci´on indica la direcci´on en la que J(n) experimenta un mayor crecimiento. Dado que nuestro objetivo es minimizar J(n), el algoritmo LMS va a actualizar los valores de los coeficientes del filtro haciendo que en cada instante estos se desplacen una cierta cantidad en la direcci´on opuesta a la indicada por (12). De forma anal´ıtica esta idea queda concretada en W(n + 1) = W(n) + µx(n)e(n), (13) donde µ es la tasa de aprendizaje. Dado que se lleva a cabo una realimentaci´on de los pesos (es decir, para calcular los pesos en el instante n + 1 se precisan los pesos en el instante n), el algoritmo LMS sintetiza un filtro paso bajo en el sentido que tiende a atenuar las componentes de alta frecuencia del error dejando pasar las de baja frecuencia. Con el objeto de resaltar tal comportamiento se presenta en la figura 3 el diagrama de flujo asociado al algoritmo LMS, el cual se obtiene expresando (13) como W(n + 1) = W(n) + µx(n)[d(n) − xT (n)W(n)] = [I − µx(n)xT (n)]WT (n) + µx(n)d(n), (14) siendo I la matriz identidad, y teniendo en cuenta que W(n) = z−1 [W(n + 1)], (15) donde z−1 es el operador retraso unidad, que lleva ´ımplicito el almacenamiento de valores previos de pesos. A la vista del diagrama de flujo, se concluye que µ representa la inversa de la constante de tiempo asociada al filtrado previamente rese˜nado, es decir, peque˜nos valores de µ implican un proceso adaptativo lento, lo cual implica que una mayor cantidad de la informaci´on pasada es “recordada” por el algoritmo LMS, efecto que en ´ultima instancia se traduce en un filtrado de 4
  • 5. µx(n)d(n) µx(n)xT (n) W(n) W(n+1) z-1 I Figura 3: Actualizaci´on de pesos seg´un el algoritmo LMS mayor precisi´on. En otras palabras, la inversa de la tasa de aprendizaje es una medida de la memoria del algoritmo LMS. La siguiente labor consiste en analizar la convergencia, as´ı como la estabilidad del algoritmo LMS. Sin embargo, antes de emprender tal tarea es necesario realizar una serie de aclaraciones respecto del modo en que se actualizan los pesos del filtro objeto de dise˜no. Dicha actualizaci´on qued´o plasmada en (13) y provoca que el vector de pesos W(n) no siga una trayectoria definida en el espacio de pesos, sino que dicha trayectoria es aleatoria, por lo que se dice que la aproximaci´on que aqu´ı se realiza del gradiente es de car´acter estoc´astico. A medida que el n´umero de iteraciones se aproxima al infinito, el algoritmo LMS hace que los pesos calculados mediante (13) definan una trayectoria aleatoria entorno a la soluci´on de Wiener (Wopt). Pero lo m´as importante aqu´ı es que esta aproximaci´on a la soluci´on ´optima del problema se realiza sin necesidad de conocer los estad´ısticos asociados a las se˜nales involucradas. Hechas las oportunas aclaraciones, se emprende el an´alisis de la convergencia del algoritmo LMS. De teor´ıa de control se sabe que la estabilidad de un sistema realimentado est´a determinada por los par´ametros involucrados en el bucle de real- imentaci´on. Si observamos la figura 3, se comprueba que es el bucle de realimentaci´on inferior el que permite controlar la convergencia del sistema, tanto en cuanto el bucle superior no presenta par´ametro ajustable alguno. Dos son los elementos que participan en el bucle de realimentaci´on inferior y que, por consiguiente, definen la transmitancia de dicho bucle: la tasa de aprendizaje µ y el vector de entradas x(n). Es decir, la convergencia del algoritmo LMS vendr´a condicionada tanto por caracter´ısticas estad´ısticas de la entrada como por el par´ametro µ, siendo este ´ultimo el ´unico factor controlable para un entorno de trabajo dado. En consecuencia, el objetivo es determinar aquellos valores de µ que aseguran una buena convergencia. Ahora bien, para hallar tales valores se ha de decidir cual ha de ser el criterio de convergencia a exigir. Dos son las posibilidades: Convergencia en media: E[W(n)] → Wopt cuando n → ∞. Este criterio de convergencia no es de car´acter pr´actico tanto en cuanto cualquier secuencia aleatoria de vectores de media cero converge en este sentido. Convergencia en media cuadr´atica: E[e2 (n)] → valor constante cuando n → ∞. Este es el verdadero criterio de car´acter pr´actico. El problema es que un an´alisis en profundidad de la convergencia del algoritmo LMS en este sentido, encierra una gran complejidad, con lo que nos vemos abocados a realizar las siguientes hip´otesis (teor´ıa de la independencia: Widrow y otros,1976): • Las sucesivos vectores de entradas x(1), x(2) . . . son estad´ısticamente independientes. • Para el instante de tiempo n el vector de entradas x(n) es independiente de todas las muestras anteriores de respuesta deseada del sistema, esto es, d(1), d(2) . . . , d(n − 1). • Para el instante de tiempo n la respuesta deseada d(n) es estad´ısticamente independiente respecto x(n) y respecto de los valores anteriores de la respuesta deseada. • El vector de entradas x(n) y la respuesta deseada d(n) presentan una funci´on de dis- tribuci´on gaussiana. Estas hip´otesis permiten expresar la matriz de correlaciones de entradas como Rx = x(n)xT (n) y el vector de correlaciones entre entradas y respuestas deseadas como rdx = x(n)d(n). Asimismo aquellas hip´otesis implican que, cuando n tiende a infinito, la soluci´on dada por el algoritmo LMS 5
  • 6. tiende a la ´optima, es decir, la soluci´on dada por Wiener (Wopt). Por tanto, (13) ahora queda como Wn+1 = (I − µRx)Wn + µrdx, (16) expresi´on que, restando en ambos lados la soluci´on ´optima de Wiener y con el cambio de variable Dn = Wn − Wopt, da lugar a Dn+1 = (I − µRx)Dn. (17) Por otro lado, la matriz de correlaciones de entradas puede ser descompuesta mediante una descomposici´on SVD de modo que Rx = V Λ V T , (18) donde los autovectores que constituyen la matriz V forma una base ortonormal (es decir, V V T = I). Como resultado de esto obtenemos Dn+1 = V (I − µΛ)V T Dn, (19) que multiplicando por la izquierda a ambos lados de la igualdad, y haciendo vn = V T Dn, permite expresar vn+1 = (I − µΛ)vn. (20) Dado que la matriz Λ es diagonal (con elementos iguales a los autovalores de la matriz de correla- ciones de las entradas), podemos decir que vn(k) = (1 − µλk)vn(k). (21) Tras n iteraciones a partir de un cierto valor inicial v0(k), nos queda vn(k) = (1 − µλk)n v0(k). (22) Por tanto el sistema converge siempre que para todo k se cumpla que | 1 − µλk | < 1. (23) De este modo, la convergencia del sistema exige la siguiente condici´on con respecto a la tasa o par´ametro de aprendizaje: 0 < µ < 2 λmax , (24) siendo λmax el mayor autovalor de la matriz de correlaciones Rx. Ahora bien, dicho autovalor no siempre se puede determinar, por lo que, teniendo en cuenta que λmax ≤ M−1 k=0 λk = tr(Rx) = Traza de la matriz Rx= Suma de los elementos diagonales de Rx=M · rx(0)=suma de los valores cuadr´aticos del vector de entradas xn, una condici´on equivalente, aunque m´as restrictiva ser´ıa 0 < µ < 2 M · rx(0) (25) Por tanto si elegimos µ tal que se cumple (25), el algoritmo presenta convergencia cuadr´atica y con- vergencia en media, ya que la primera convergencia implica la segunda, si bien no se da la relaci´on rec´ıproca. Es decir, un sistema que converge en media puede que no converga cuadr´aticamente. Hasta punto se han rese˜nado las circunstancias que determinan la convergencia del algoritmo LMS, lo que queda, pues, es determinar la rapidez de tal convergencia. Precisamente este es el principal problema del algoritmo LMS, ya que, por lo general, se requiere un n´umero de iteraciones cercano a 10 veces la dimensi´on del espacio de entradas para alcanzar un r´egimen estable. El problema se hace mayor a medida que aumenta la dimensi´on del vector de entradas (es decir, el n´umero de coeficientes del filtro adaptativo) y a medida que el n´umero de condici´on de la matriz Rx aumenta, siendo el n´umero de condici´on el cociente entre el autovalor mayor y el autovalor menor de dicha matriz. Adem´as, la tasa de convergencia del algoritmo LMS es especialmente sensible a los cambios que el entorno de trabajo provoca en el citado n´umero de condici´on. Un an´alisis detallado de la transcendencia del n´umero de condici´on de la matriz Rx puede verse en [4],[5]. 6
  • 7. 3.2. Aplicaci´on del algoritmo LMS al problema de la identificaci´on del canal de comunicaci´on En este punto se pretende establecer un mecanismo de identificaci´on del canal de comunicaci´on basado en el algoritmo LMS. Para ello se transmite una cierta se˜nal conocida a trav´es del canal de comunicaci´on, de modo que el receptor recibir´a el resultado de la convoluci´on de la se˜nal original con la respuesta impulsiva del canal, es decir, se asume que el canal es lineal e invariante con el tiempo. Pues bien, la identificaci´on del canal de comunicaci´on se efectuar´a dise˜nando un filtro adaptativo FIR mediante el algoritmo LMS, de modo que la respuesta de dicho filtro, cuando la entrada es la se˜nal original enviada a trav´es del canal, sea la se˜nal recibida. Por tanto el modelo a aplicar ser´a el que aparece en la figura , donde v(n) es un ruido aditivo gaussiano de media cero (AWGN). x(n) v(n) H(z) Función transferencia canal de comunicación Wn Adaptación coeficientes filtro Figura 4: Modelo transmisi´on para identificaci´on del canal de comunicaci´on De forma gen´erica tenemos H(z) = ∞ i=0 aiz−i 1 − ∞ j=1 bjz−j = ∞ k=0 hkz−k , (26) es decir, se asume que el canal es causal. El filtro adaptativo a construir es de orden M − 1, es decir, hay que determinar M coeficientes, con lo que el esquema propuesto aproxima s´olo los M primeros coeficientes de la respuesta impulsiva del canal. Teniendo en cuenta que la se˜nal deseada d(n) = hT x(n) + v(n), donde h = [h0 h1 . . . h∞]T , y expresando b = [h0 h1 . . . hM−1]T , tenemos d(n) = bT x(n) + ξ(n) + v(n). (27) De este modo el vector de correlaciones cruzadas entra la se˜nal de entrada y la deseada , teniendo en cuenta que la se˜nal de entrada y el ruido est´an incorrelados, vendr´a dado por rdx =      rdx(0) rdx(1) ... rdx(M − 1)      =      E xT (n)h(n) + v(n) x(n) E xT (n)h(n) + v(n) x(n − 1) ... E xT h(n) + v(n) x(n − M + 1)      = =      E xT (n)b(n) + ξ(n) x(n) E xT (n)b(n) + ξ(n) x(n − 1) ... E xT (n)b(n) + ξ(n) x(n − M + 1)      rdx = Rxb + E [ξ(n)x(n)] . (28) Expresi´on que, considerando que M es lo suficientemente grande como para despreciar el efecto de la correlaci´on entre el t´ermino residual ξ(n) y el vector de entradas, queda reducida al primer sumando, es decir Wopt ≈ b. (29) Por su parte la din´amica del algoritmo LMS vendr´a determinada por la ecuaci´on (13), donde e(n) = (WT (n) − b)x(n) + ξ(n) + v(n) ≈ (WT (n) − b)x(n) + v(n) (30) 7
  • 8. 3.3. Codificaci´on ca´otica de se˜nales de voz En esta secci´on se presenta un m´etodo de codificaci´on de las se˜nales de voz de modo que la se˜nal resultante posea un espectro plano, ya que, seg´un recoge [5], los autovalores asociados a la matriz de correlaciones Rx, construida a partir de la se˜nal codificada, est´an limitados por los valores m´aximo y m´ınimo del espectro de potencia de dicha se˜nal. Dicho de otro modo, un n´umero de condici´on unitario para la matriz Rx significa un espectro plano para la se˜nal x(n). Una de las principales caracter´ısticas de las se˜nales ca´oticas es el “car´acter plano” de su espectro de potencia. Esta circunstancia sugiere que un buen veh´ıculo para lograr una secuencia adecuada para la identificaci´on del canal de comunicaci´on, es alg´un tipo de codificaci´on de la se˜nal original de voz mediante caos. El esquema aqu´ı propuesto codifica la se˜nal de voz escal´andola, en primer lugar, de modo que est´e dentro del intervalo [-1,1] y, a continuaci´on, modifica en funci´on de la se˜nal de voz escalada, el valor del par´ametro que controla la din´amica de la secuencia ca´otica concreta considerada. En lo que sigue se trabajar´a con el mapa log´ıstico. La din´amica del sistema viene dada por xk+1 = rkxk(1 − xk), (31) de modo que rk se escoge rk = r0 + ∆Ik. (32) Es decir, se busca un valor del par´ametro din´amico r0 de modo que el comportamiento del sistema definido por 31 sea ca´otico para todo valor de k. Tal y como se comento m´as arriba, la se˜nal de informaci´on ha de estar normalizada (| Ik |≤ 1 ∀k). Los valores de los par´ametros considerados son r0 = 3.9757 y ∆r = 0.029. A la vista de la figura 5 se concluye que, en efecto, la codificaci´on ca´otica esparce el espectro de la se˜nal original de voz, de modo que la diferencia entre el valor m´aximo y el m´ınimo del espectro de potencia se ve reducida. Sin embargo, tal y como se observa en la figura 5, la se˜nal codificada ca´oticamente posee una alta componente de baja frecuencia, debido a que posee un cierto valor medio. Por tanto, un mecanismo para reducir a´un m´as el esparcimiento de los autovalores de Rx, consiste en restar a la anterior se˜nal su valor medio. La disminuci´on del esparcimiento de los autovalores, fruto de la codificaci´on y de la posterior sustracci´on del valor medio, se refleja en la tabla 3.3, la cual ha sido obtenida trabajando con la se˜nal de voz de la figura 5. λmax/λmin Se˜nal Original 5270 Se˜nal codificada 987.84 Se˜nal cod. media 0 5.1 Tabla 1: Relaci´on entre autovalor m´aximo y m´ınimo 8
  • 9. Figura 5: Ensanchamiento de espectro mediante codificaci´on ca´otica 3.4. Identificaci´on ciega del canal de comunicaci´on: algoritmo DBD (Dy- namic Based Deconvolution) El m´etodo de identificaci´on del canal de comunicaci´on propuesto en la secci´on 3.2 part´ıa del conocimiento de la se˜nal enviada a trav´es del canal. Ahora lo que se trata es de plantear un nuevo esquema que evite la necesidad de saber qu´e se˜nal fue enviada a trav´es del canal de comunicaci´on, motivo por el cual este nuevo m´etodo se dice que lleva a cabo la identificaci´on de forma ciega. El m´etodo que se va a utilizar se basa en el conocimiento de la din´amica de la se˜nal transmitida. Por otro lado, el procedimiento es cuesti´on va a tratar de hallar la inversa de la funci´on de transferencia del canal de comunicaci´on. Por estas dos circunstancias, tal esquema de identificaci´on se dice es un m´etodo de deconvoluci´on basado en la din´amica de las se˜nales transmitidas (en ingl´es dinamic- based deconvolution o, abreviadamente, DBD). xk vk reck sk Codificación caótica Canal de comunicación Deconvolución canal z-1 Generación mapa caótico Figura 6: Esquema de funcionamiento del algoritmo DBD El esquema a seguir es el presentado en la figura 6. La se˜nal de voz a transmitir es codificada siguiendo el esquema planteado en el apartado anterior. El canal de comunicaci´on se asume causal, lineal e invariante en el tiempo y viene representado mediante un modelo AR tal que H(z) = 1 1 − p i=1 biz−i . (33) Pues bien, el bloque de deconvoluci´on del canal viene caracterizado por una funci´on de transferencia G(z), que es un filtro FIR de orden M (es decir, M + 1 coeficientes), siendo M mayor o igual que p. Se pretende que G(z) sea la inversa de la funci´on de transferencia del canal de comunicaci´on. Es decir, se desea que [G(z) ◦ H(z)] = 1, (34) 9
  • 10. lo cual exige que a0 = 1, ai = −bi i = 1, 2, . . . , p y ai = 0 para i > p, siendo aj los coeficientes que definen el filtro G(z), esto es G(z) = M i=0 aiz−i . (35) Si denominamos xest k a la salida del filtro en el instante k tenemos que xest k − xk = (a0reck − reck) + p i=1 (ai + bi)reck−i + M i=p+1 aireck−i. (36) Suponiendo que G(z) realiza de forma adecuada la deconvoluci´on, cabr´ıa esperar que la trayectoria descrita por la secuencia a la salida de este filtro, sea la misma que describe la secuencia original xk. Asumiendo que el mapa log´ıstico se utiliz´o en la codificaci´on, la funci´on de error a emplear en la b´usqueda de los coeficientes de G(z) es ek = xest k − rest xest k−1(1 − xest k−1), (37) donde rest es una estimaci´on del par´ametro de control de la din´amica del mapa ca´otico o un cierto valor medio. Dado que dicho par´ametro va a estar fluctuando en torno a r0, se considerar´a que rest = r0 = 3.9757. Al igual que se procedi´o con el algoritmo LMS, las sucesivas actualizaciones de los pesos del filtro a construir, vienen dadas por desplazamientos en la direcci´on contraria a la del gradiente del error cuadr´atico respecto de los coeficientes del filtro, siendo ´este ak e2 k = 2ek(reck − rest reck−1(1 − 2xest k−1)). (38) La ley de actualizaci´on de pesos ser´a ak+1 = ak − µek(reck − rest reck−1(1 − 2xest k−1)), (39) siendo µ el par´ametro que determina la convergencia del algoritmo: si µ es demasiado peque˜no la convergencia del algoritmo DBD se lleva a cabo de forma lenta, mientras que si es demasiado grande el sistema se desestabiliza. Para analizar las prestaciones del m´etodo propuesto previamente es preciso establecer cu´ales son los pesos ´optimos del filtro objeto de dise˜no, es decir, debemos determinar la soluci´on ´optima de Wiener aopt. Haciendo uso de la ecuaci´on de Wiener-Hopf en forma matricial (7), teniendo en cuenta que la entrada del sistema xk ahora es reck + vk y que la se˜nal deseada es dk = xk queda Rentrada = E (reck + vk)T (reck + vk) = Rrec + Rv, rdx(k) = E [xn(recn−k + vn−k)] = E [xnrecn−k] = E recn−krecT n bext , a opt = [R rec + R v] −1 R rec b ext. (40) En el an´alisis pr´actico se supondr´a Rv = 0 (caso ideal sin ruido), con lo que a opt ≈ b ext, (41) siendo b ext = [1 − b1 − b2 . . . − bp] T . 4. Simulaciones y conclusiones 4.1. Test del algoritmo LMS con codificaci´on ca´otica para diferentes valores del par´ametro µ El objetivo de este apartado es el de verificar el comportamiento del algoritmo LMS utilizando diversos valores para la tasa de convergencia µ. Asimismo se comprobar´a la mejora experimenta- da al utilizar codificaci´on ca´otica. El primer paso consistir´a en definir una cierta figura que nos permita juzgar la precisi´on del modelo. Una buena figura es la denominada desajuste del modelo (Model Misadjustment - MM-) respecto a la soluci´on ´optima de Wiener . A continuaci´on se anal- izan diversas situaciones (en todas ellas se considera ausencia de ruido) present´andose las gr´aficas que concretan los resultados obtenidos. En dichas gr´aficas se representa en decibelios la figura MM normalizada respecto al desajuste del modelo inicial. La respuesta impulsiva del canal de comunicaci´on viene dada por hn = 1 2 1 + cos(2π 3 (n − 2)) , n = 1, 2, 3 0 , e.o.c. , mientras que el filtro a dise˜nar presenta 128 coeficientes (M = 128). 10
  • 11. 4.1.1. Verificaci´on de las prestaciones de la codificaci´on ca´otica Se pretende mostrar la conveniencia de emplear la codificaci´on ca´otica como herramienta para aumentar la tasa de convergencia del algoritmo LMS aplicado a la identificaci´on del canal de comunicaci´on. Esta circunstancia se aprecia sin m´as que observar la figura 8. A la vista de dicha gr´afica se concluye que la forma m´as conveniente de llevar a cabo la identificaci´on del canal es por medio de codificaci´on ca´otica con se˜nales de media cero, es decir, antes de enviar la se˜nal a trav´es del canal conviene substraerle su valor medio, pues de este modo el espectro de la se˜nal resultante no presenta una delta en el origen, lo que se traduce en un espectro de potencia plano y, en consecuencia, un n´umero de condici´on bajo para la matriz Rx. Amplitud normalizada N´umero de muestra Figura 7: Se˜nal empleada en los experimentos MM (dBs) N´umero de iteraciones Figura 8: Test LMS para µ = 0.02 sin ruido 4.1.2. Decisi´on valor de µ ´optimo para el caso de se˜nales de voz codificadas mediante se˜nales ca´oticas de media cero: µ constante Se pretende determinar un valor adecuado de µ para el caso de codificaci´on ca´otica con se˜nales de media cero y siendo µ constante en las sucesivas iteraciones del algoritmo LMS. Los resultados obtenidos aparecen en la figura 9, a la vista de la cual se concluye que 0.07 es un valor adecuado para µ. 11
  • 12. MM (dBs) N´umero de iteraciones Figura 9: B´usqueda de valor ´optimo para la tasa de aprendizaje 4.1.3. Decisi´on valor de µ ´optimo para el caso de se˜nales de voz codificadas mediante se˜nales ca´oticas de media cero: esquema estoc´astico de iteraci´on El par´ametro µ en cada iteraci´on n viene descrito por µ(n) = µ(0) n n = 1, 2, . . . (42) La elecci´on de µ(0) determina la convergencia del algoritmo siendo crucial la elecci´on de un valor para el mismo no muy peque˜no (convergencia lenta) ni demasiado grande (inestabilizaci´on del sistema), tal y como refiere [6]. En el caso que nos ocupa, los resultados m´as satisfactorios se ob- tuvieron para µ(0) = 10 (mirar figura 10). MM (dBs) N´umero de iteraciones Figura 10: Resultados para esquema estoc´astico de iteraci´on 4.1.4. Decisi´on valor de µ ´optimo para el caso de se˜nales de voz codificadas mediante se˜nales ca´oticas de media cero: esquema b´usqueda-convergencia En este caso µ es µ(n) = µ(0) 1 + (n/τ) n = 1, 2 . . . , (43) 12
  • 13. seg´un recoge [6]. A la vista de (43) se concluye que para valores de n peque˜nos respecto de la constante de tiempo τ, µ es aproximadamente igual a µ(0). Por consiguiente, eligiendo un valor elevado para µ(0) hacemos que los pesos del filtro se actualicen de forma que se sit´uen cerca de su valor ´optimo, es decir, en esta fase se lleva a cabo una b´usqueda del ´area entorno a la soluci´on ´optima. Cuando el n´umero de iteraciones es considerablemente elevado, µ(n) es aproximadamente igual a τµ(0)/n . Es en esta fase cuando los pesos del filtro convergen hacia su valor ´optimo, de ah´ı que se hable de fase de convergencia. Para nuestro caso particular los resultados obtenidos para diversos valores de los par´ametros involucrados en (43) aparecen en la figura 11, concluy´endose que la mejor elecci´on es µ(0) = 0.09 y τ = 4000. MM (dBs) N´umero de iteraciones Figura 11: B´usqueda del valor ´optimo de µ mediante esquema b´usqueda-convergencia 4.1.5. Decisi´on entre los tres valores ´optimos obtenidos Ahora es tiempo de decidir que esquema es el m´as adecuado a la hora de realizar una iden- tificaci´on del canal de comunicaci´on v´ıa algoritmo LMS. Para ello representamos conjuntamente las soluciones ´optimas obtenidas m´as arriba (figura 12), concluyendo que los mejores resulta- dos se obtienen aplicando codificaci´on ca´otica son se˜nales de media cero y un esquema de b´usqueda-convergencia para el par´ametro µ, ya que, si bien para un n´umero peque˜no de itera- ciones la b´usqueda estoc´astica proporciona los mejores resultados, a medida que crece el n´umero de iteraciones las prestaciones del m´etodo de b´usqueda-convergencia supera a las de los otros m´eto- dos, siendo especialmente rese˜nable el caso de la b´usqueda estoc´astica, ya que para n´umero de iteraciones superior a 1000 la mejora experimentada al seguir iterando es muy peque˜na. Es decir, el algoritmo se “estanca”, increment´andose cada vez m´as la diferencia entre el MM de este m´etodo y el aportado por el mecanismo de b´usqueda-convergencia. 4.2. Test del algoritmo DBD Se considerar´a que el canal viene descrito mediante H(z) = 1 1 − 0.1106z−1 + 0.2309z−2 + 0.5839z−3 (44) La figura ha utilizar ser´a de nuevo MM y se considera que no hay ruido en el canal. Los valores iniciales de los pesos del filtro vienen dados por el resultado de aplicar, para un n´umero peque˜no de iteraciones, el algoritmo de identificaci´on del canal basado en el m´etodo LMS a una se˜nal ca´otica pura generada a partir del mapa log´ıstico para r = 3.9757. De nuevo todos los resultados obtenidos, que aparecen sintetizados en las siguientes gr´aficas, se encuentran normalizados respecto al MM determinado por los pesos iniciales anteriormente citados. Adem´as, el resultado de tal normalizaci´on se expresa en decibelios. El ´ultimo punto a aclarar antes de mostrar las gr´aficas es el referido a la elecci´on del orden del filtro a dise˜nar. Es decir, en el receptor se ha de suponer un cierto orden para el filtro a construir, teniendo que ser dicho orden igual o superior al orden del filtro AR que 13
  • 14. MM (dBs) N´umero de iteraciones Figura 12: Comparaci´on entre valores ´optimos de µ modela el canal. Hechas todas las aclaraciones oportunas, pasamos a analizar el comportamiento del algoritmo DBD para las 3 implementaciones del par´ametro µ presentadas en la secci´on anterior. 4.2.1. Tasa de aprendizaje constante Suponiendo que conocemos a ciencia cierta el orden del filtro AR que modela el canal, y que en este caso es 3 (esto es, el canal tiene 4 coeficientes), se analiza la calidad del m´etodo DBD para diversos valores de µ, siendo ´este constante a lo largo de las diversas iteraciones. La primera consecuencia destacable tras analizar la figura 13, son las oscilaciones que los coeficientes del filtro construido presentan una vez se ha alcanzado la adaptaci´on. Esto es resultado de que se intenta aproximar la din´amica de un sistema c´aotico, de modo que peque˜nos cambios en los pesos del filtro se traducen en “grandes” diferencias entre las trayectorias predichas para dos instantes de tiempo diferentes (recordar que una de los rasgos principales de un comportamiento ca´otico era que trayectorias inicialmente pr´oximas tienden a separarse exponencialmente con el tiempo). Es decir, en r´egimen permanente los cambios en los pesos del filtro generado mediante el algoritmo DBD se ven amplificados. La siguiente conclusi´on es relativa al valor del par´ametro de convergencia. Se observa que para valores de µ inferiores a 0.01 el sistema es excesivamente lento, mientras que a medida que µ crece por encima de 0.01 y se acerca a 0.06 las oscilaciones en r´egimen permanente son mayores, de modo que para µ mayor que 0.06 el sistema se inestabiliza. En definitiva, parece que µ = 0.01 da lugar a un comportamiento aceptable. 14
  • 15. MM (dBs) N´umero de iteraciones Figura 13: B´usqueda de valor ´optimo de µ para DBD y esquema de iteraci´on constante 4.3. Esquema estoc´astico El valor que da mejores resultados es, teniendo en cuenta la figura 14, µ = 0.3. De dicha gr´afi- ca se desprende, adem´as, que el esquema estoc´astico para µ hace que en r´egimen permanente el sistema no oscile, debido a que para n suficientemente grande µ presenta valores peque˜nos que casi no amplifican los cambios experimentados en los pesos del filtro. Por el contrario, la robustez en cuanto a estabilidad que se gana se traduce en una convergencia m´as lenta, es decir, existe un compromiso entre precisi´on y rapidez. MM (dBs) N´umero de iteraciones Figura 14: B´usqueda de valor ´optimo de µ para DBD y esquema de iteraci´on estoc´astico 4.4. Esquema b´usqueda-convergencia En los diversos experimentos realizados, algunos de los cuales aparecen representados en la figura 15, se observ´o que para un valor de µ(0) superior a 0.08 los pesos del filtro crecen demasiado para las primeras iteraciones del algoritmo, lo cual no conviene, pues empeora la tasa de con- vergencia. Por ello se asumi´o µ(0) = 0.08 como un valor adecuado. A continuaci´on se realizaron diversos experimentos con µ(0) = 0.08 y τ variable, concluy´endose que, para µ(0) fijo, a medida que τ aumenta las oscilaciones en r´egimen permanente se acent´uan, debido a que µ(n) mantiene un valor elevado para un mayor n´umero de iteraciones. Por esta circunstancia se elige τ = 100 y µ(0) = 0.05 como un conjunto de valores que determinan un comportamiento satisfactorio. 15
  • 16. MM (dBs) N´umero de iteraciones Figura 15: B´usqueda de valor ´optimo de µ para DBD y esquema de iteraci´on b´usqueda-convergencia 4.5. Decisi´on entre los tres valores ´optimos Si representamos las soluciones ´optimas obtenidas para cada uno de los esquemas de generaci´on del par´ametro de aprendizaje del algoritmo DBD (figura 16), hemos de elegir como mejor opci´on la representada por un dise˜no de µ seg´un el modelo de b´usqueda-convergencia de Moody y Darken, ya que es para esta situaci´on cuando se alcanza una r´apida convergencia y,adem´as, en r´egimen permanente las oscilaciones de los pesos del filtro implementado casi no son apreciables. MM (dBs) N´umero de iteraciones Figura 16: Comparaci´on entre los diversos esquemas iterativos para el algoritmo DBD 4.6. Test de los algoritmos LMS y DBD en presencia de ruido El canal de comunicaci´on ser´a modelada seg´un (44). Al igual que se hizo en el apartado 4.1, se supone que el filtro a dise˜nar mediante el algoritmo LMS posee 128 coeficientes. Las simulaciones obtenidas aparecen en la figura 17 y la figura 18, habi´endose obtenido ambas seg´un los dise˜nos “´optimos” para cada algoritmo. La primera gr´afica (figura 17) nos lleva a concluir que el algoritmo DBD presenta un comportamiento aceptable cuando la relaci´on se˜nal a ruido (SNR) es cercana o superior a 20 dB. Adem´as el comportamiento del algoritmo, en el caso de trabajar en las condiciones reci´en rese˜nadas, es aceptable a´un cuando el orden del filtro a dise˜nar no coincide con el orden de la 16
  • 17. funci´on de transferencia que modela al canal. Es m´as, la tasa de convergencia del algoritmo DBD - tabla 2- para SNR = 20dB es mayor que la presenta el algoritmo LMS - tabla 3 - con se˜nales ca´oticas de media cero, si bien se observ´o que para ´ordenes del filtro a implementar superiores o iguales a 8 durante las primeras iteraciones del algoritmo DBD no existe convergencia alguna, esto es, los pesos del filtro se alejan de la soluci´on ´optima, aunque este comportamiento s´olo existe durante un r´egimen transitorio. Para concluir, es necesario rese˜nar la importancia de seleccionar un valor no excesivamente elevado para la tasa de aprendizaje inicial en el caso del algoritmo DBD, pues a dicha tasa amplifica los efectos perjudiciales del ruido. De este modo, experimentalmente se comprob´o que conven´ıa µ(0) ≤ 10−7 , τ = 10 para 0 ≤ SNR < 10 dBs (45) µ(0) ≤ 10−4 , τ = 100 para 10 ≤ SNR ≤ 15 dBs (46) µ(0) ≤ 0.02, τ = 200 para 15 < SNR ≤ 25 dBs (47) Tasa de convergencia aproximadas para el algoritmo DBD orden del filtro 3 4 6 8 SNR<20 dBs 0.11dB/100 iter. 0.09 dB/100 iter. 0.37 dB/100 iter. 0.27dB/100 iter. SNR≥20 dBs 13 dB/100 iter. 13 dB /100 iter. 6 dB/100 iter. 3 dB/100 iter. Tabla 2: Convergencia para DBD MM (dBs) N´umero de iteraciones (a) Orden filtro=3 N´umero de iteraciones (b) Orden filtro=4 MM (dBs) N´umero de iteraciones (c) Orden filtro=6 N´umero de iteraciones (d) Orden filtro=8 Figura 17: Simulaciones para el algoritmo DBD en presencia de ruido 17
  • 18. MM (dBs) N´umero de iteraciones Figura 18: An´alisis algoritmo LMS en presencia de ruido Tasa de convergencia aproximada para el algoritmo LMS SNR < 20 dBs 2 dB/100 iter. SNR ≥ 20 dBs 4 dB /100 iter. Tabla 3: Convergencia LMS en presencia de ruido Referencias [1] J.M.H. Elmirghani, S.H. Milner, R.A. Cryan, Experimental evaluation of echo path modelling with chaotic coded speech, IEEE Trans. Signal Processing, vol. 45, pp. 2600-2604, Oct. 1997. [2] A.M¨uller, J.M.H. Elmirghani, Blind channel estimation and echo cancellation using chaotic coded signals, IEEE Communications Letters, vol 3, No. 3, pp. 72-74, Mar. 1999. [3] A.M¨uller, J.M.H. Elmirgani, A chaotic spreading code and its application to blind channel es- timation, Proc. IEEE Global Telecommunications Conference, GLOBECOM’01, San Antonio, pp. 186-190, Nov. 2001. [4] S. Haykin, Adaptive Filter Theory, Third Edition, Englewood Cliffs, NJ: Prentice-Hall, Signal Processing Series, 1985. [5] B. Widrow, S.D. Stearns, Adaptive signal Processing, Englewood Cliffs, NJ: Prentice-Hall, Signal Processing Series, 1985. [6] C. Darken, J. Moody, Towards faster stochastic gradient search, Advances in Neural Informa- tion Processing Systems, vol. 4, pp. 1009-1016, San Mateo, CA: Morgan Kauffman, 1992. [7] Miguel Romera, T´ecnica de los sistemas din´amicos discretos, Consejo Superior de Investiga- ciones Cient´ıficas, 1997. [8] C. Fern´andez P´erez, F.J. V´azquez Hern´andez, J.M. Vegas Montaner, Ecuaciones diferenciales y en Diferencias. Sistemas Din´amicos, Thomson, Madrid 2003. 18