Impreso el 20 de octubre de 2003 Reportar errores y...

278
Impreso el 20 de octubre de 2003 Reportar errores y sugerencias a: [email protected]

Transcript of Impreso el 20 de octubre de 2003 Reportar errores y...

Page 1: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Impreso el 20 de octubre de 2003Reportar errores y sugerencias a:

[email protected]

Page 2: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego
Page 3: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Introduccion a las Senales y losSistemas Discretos

Diego H. MiloneHugo L. Rufiner

Editores

Page 4: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego
Page 5: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego
Page 6: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

vi

Page 7: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Indice general

Prefacio XVII

1. Introduccion a senales 11.1. Introduccion . . . . . . . . . . . . . . . . . . . . . 21.2. Clasificacion de las senales . . . . . . . . . . . . . 5

1.2.1. Clasificacion Fenomenologica . . . . . . . 61.2.2. Clasificacion Morfologica . . . . . . . . . 11

1.3. Ruido en senales . . . . . . . . . . . . . . . . . . 141.4. Teorıa de la comunicacion . . . . . . . . . . . . . 17

1.4.1. Teorıa de la senal . . . . . . . . . . . . . . 171.4.2. Teorıa de la informacion y de la codificacion 17

1.5. Procesamiento de senales . . . . . . . . . . . . . 201.5.1. Analisis de Senales . . . . . . . . . . . . . 23

1.6. Operaciones elementales con senales . . . . . . . 271.6.1. Operaciones unarias . . . . . . . . . . . . 271.6.2. Operaciones binarias . . . . . . . . . . . . 30

1.7. Preguntas . . . . . . . . . . . . . . . . . . . . . . 301.8. Trabajos practicos . . . . . . . . . . . . . . . . . 32Bibliografıa . . . . . . . . . . . . . . . . . . . . . . . . 35

2. Espacio de senales 372.1. Introduccion . . . . . . . . . . . . . . . . . . . . . 38

2.1.1. Desarrollo intuitivo . . . . . . . . . . . . . 382.2. Senales, vectores y algebra lineal . . . . . . . . . 41

2.2.1. Normas . . . . . . . . . . . . . . . . . . . 412.2.2. Producto interno . . . . . . . . . . . . . . 45

2.3. Espacios vectoriales y senales . . . . . . . . . . . 472.3.1. Conjunto de senales . . . . . . . . . . . . 47

vii

Page 8: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.3.2. Espacios de senales . . . . . . . . . . . . . 492.3.3. Espacios vectoriales . . . . . . . . . . . . 51

2.4. Bases y transformaciones . . . . . . . . . . . . . 542.4.1. Dependencia lineal y conjuntos generadores 542.4.2. Bases . . . . . . . . . . . . . . . . . . . . 552.4.3. Ortogonalidad y ortonormalidad . . . . . 552.4.4. Aproximacion de senales . . . . . . . . . . 572.4.5. Cambio de base . . . . . . . . . . . . . . . 612.4.6. Transformaciones lineales . . . . . . . . . 67

2.5. Preguntas . . . . . . . . . . . . . . . . . . . . . . 682.6. Trabajos practicos . . . . . . . . . . . . . . . . . 71Bibliografıa . . . . . . . . . . . . . . . . . . . . . . . . 73

3. Transformada discreta de Fourier 753.1. Introduccion . . . . . . . . . . . . . . . . . . . . . 763.2. Familia de bases de Fourier . . . . . . . . . . . . 77

3.2.1. Series seno . . . . . . . . . . . . . . . . . 773.2.2. Series coseno . . . . . . . . . . . . . . . . 783.2.3. Serie exponencial de Fourier . . . . . . . . 793.2.4. Transformada de Fourier de tiempo discreto 813.2.5. Transformada continua de Fourier . . . . 82

3.3. Exponenciales complejas discretas . . . . . . . . 833.4. Transformada discreta de Fourier . . . . . . . . . 873.5. Propiedades de la TDF . . . . . . . . . . . . . . 913.6. Relacion entre la TCF y la TDF . . . . . . . . . 923.7. Utilizacion de ventanas . . . . . . . . . . . . . . . 963.8. Resolucion temporal y frecuencial . . . . . . . . . 993.9. Representacion matricial de la TDF . . . . . . . 1023.10. Transformada rapida de Fourier . . . . . . . . . . 1053.11. Preguntas . . . . . . . . . . . . . . . . . . . . . . 1103.12. Trabajos practicos . . . . . . . . . . . . . . . . . 113Bibliografıa . . . . . . . . . . . . . . . . . . . . . . . . 117

viii

Page 9: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

4. Introduccion a sistemas 1194.1. Introduccion . . . . . . . . . . . . . . . . . . . . . 1204.2. Interconexion de sistemas . . . . . . . . . . . . . 1204.3. Propiedades de los sistemas . . . . . . . . . . . . 1224.4. Ecuaciones en diferencias . . . . . . . . . . . . . 1264.5. Representacion de sistemas LTI discretos . . . . 1284.6. Preguntas . . . . . . . . . . . . . . . . . . . . . . 1304.7. Trabajos practicos . . . . . . . . . . . . . . . . . 130Bibliografıa . . . . . . . . . . . . . . . . . . . . . . . . 133

5. Convolucion discreta 1355.1. Introduccion . . . . . . . . . . . . . . . . . . . . . 1365.2. Convolucion lineal . . . . . . . . . . . . . . . . . 1375.3. Convolucion circular . . . . . . . . . . . . . . . . 1435.4. Relacion entre convolucion lineal y circular . . . 1455.5. Deconvolucion . . . . . . . . . . . . . . . . . . . . 1455.6. Preguntas . . . . . . . . . . . . . . . . . . . . . . 1495.7. Trabajos practicos . . . . . . . . . . . . . . . . . 149Bibliografıa . . . . . . . . . . . . . . . . . . . . . . . . 154

6. Transformada Z 1556.1. Introduccion . . . . . . . . . . . . . . . . . . . . . 1566.2. Definicion de transformada Z . . . . . . . . . . . 156

6.2.1. Convergencia de la transformada Z . . . . 1586.2.2. La transformada Z inversa . . . . . . . . 160

6.3. Propiedades de la transformada Z . . . . . . . . 1636.4. Representacion de sistemas discretos mediante trans-

formada Z . . . . . . . . . . . . . . . . . . . . . . 1646.4.1. Transformacion de Euler . . . . . . . . . . 1686.4.2. Transformacion bilineal . . . . . . . . . . 170

6.5. Trabajos practicos . . . . . . . . . . . . . . . . . 175Bibliografıa . . . . . . . . . . . . . . . . . . . . . . . . 178

ix

Page 10: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7. Identificacion de sistemas 1797.1. Introduccion . . . . . . . . . . . . . . . . . . . . . 180

7.1.1. Tecnicas convencionales . . . . . . . . . . 1817.1.2. Tecnicas no convencionales . . . . . . . . 182

7.2. Analisis de la respuesta para sistema continuos . 1827.3. Metodos de prediccion lineal . . . . . . . . . . . . 185

7.3.1. El modelo ARMA . . . . . . . . . . . . . 1857.3.2. El modelo AR . . . . . . . . . . . . . . . 1867.3.3. Cuadrados mınimos . . . . . . . . . . . . 1877.3.4. Sistema de Wiener-Hopf para senales de-

terminısticas . . . . . . . . . . . . . . . . 1897.3.5. Sistema de Wiener-Hopf para senales alea-

torias . . . . . . . . . . . . . . . . . . . . 1917.3.6. Resolucion del sistema de Wiener-Hopf . 1947.3.7. Determinacion de la constante de ganan-

cia G . . . . . . . . . . . . . . . . . . . . 1977.4. Estimacion del orden . . . . . . . . . . . . . . . . 198

7.4.1. Error de prediccion final . . . . . . . . . . 1997.4.2. Criterio de Akaike . . . . . . . . . . . . . 200

7.5. Preguntas . . . . . . . . . . . . . . . . . . . . . . 2007.6. Trabajos practicos . . . . . . . . . . . . . . . . . 202Bibliografıa . . . . . . . . . . . . . . . . . . . . . . . . 205

8. Algoritmos Geneticos 2078.1. Introduccion . . . . . . . . . . . . . . . . . . . . . 2088.2. Estructura de un AG . . . . . . . . . . . . . . . . 2098.3. Diseno de la solucion de un problema mediante

AGs . . . . . . . . . . . . . . . . . . . . . . . . . 2108.4. Representacion de los individuos . . . . . . . . . 2118.5. Funcion de fitness . . . . . . . . . . . . . . . . . . 2138.6. Seleccion . . . . . . . . . . . . . . . . . . . . . . . 214

8.6.1. Rueda de ruleta . . . . . . . . . . . . . . 2148.6.2. Ventanas . . . . . . . . . . . . . . . . . . 2168.6.3. Competencias . . . . . . . . . . . . . . . . 216

x

Page 11: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

8.7. Reproduccion y operadores de variacion . . . . . 2168.7.1. Mutaciones . . . . . . . . . . . . . . . . . 2178.7.2. Cruzas . . . . . . . . . . . . . . . . . . . . 218

8.8. Caracterısticas principales . . . . . . . . . . . . . 2188.9. Introduccion a los fundamentos matematicos . . 2228.10. Trabajos practicos . . . . . . . . . . . . . . . . . 224Bibliografıa . . . . . . . . . . . . . . . . . . . . . . . . 229

A. Octave (v2.1.36) 231A.1. Generales . . . . . . . . . . . . . . . . . . . . . . 232A.2. Comandos del sistema . . . . . . . . . . . . . . . 232A.3. Matrices y rangos . . . . . . . . . . . . . . . . . . 232A.4. Algunas variables predefinidas . . . . . . . . . . . 232A.5. Operaciones aritmeticas y operadores de incre-

mento . . . . . . . . . . . . . . . . . . . . . . . . 233A.6. Operadores booleanos y de comparacion . . . . . 233A.7. Sentencias . . . . . . . . . . . . . . . . . . . . . . 234A.8. Manipulaciones basicas de matrices . . . . . . . . 234A.9. Funciones trigonometricas . . . . . . . . . . . . . 235A.10.Algebra Lineal . . . . . . . . . . . . . . . . . . . 235A.11.Procesamiento de Senales . . . . . . . . . . . . . 235A.12.Procesamiento de Imagenes . . . . . . . . . . . . 236A.13.Funciones de entrada/salida . . . . . . . . . . . . 236A.14.Miscelaneas . . . . . . . . . . . . . . . . . . . . . 236A.15.Polinomios . . . . . . . . . . . . . . . . . . . . . 237A.16.Estadistica . . . . . . . . . . . . . . . . . . . . . 237A.17.Graficos basicos . . . . . . . . . . . . . . . . . . . 237A.18.Otras funciones de graficacion . . . . . . . . . . . 237

B. Comandos de SciLab (v2.6) 239B.1. Senales . . . . . . . . . . . . . . . . . . . . . . . . 240B.2. Sonido . . . . . . . . . . . . . . . . . . . . . . . . 241B.3. Control . . . . . . . . . . . . . . . . . . . . . . . 241B.4. Funciones elementales . . . . . . . . . . . . . . . 241

xi

Page 12: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

B.5. E/S a archivos . . . . . . . . . . . . . . . . . . . 243B.6. Creacion de funciones . . . . . . . . . . . . . . . 244B.7. Graficos . . . . . . . . . . . . . . . . . . . . . . . 244B.8. Operaciones lineales de matrices . . . . . . . . . 245B.9. No lineal . . . . . . . . . . . . . . . . . . . . . . . 246B.10.Polinomios . . . . . . . . . . . . . . . . . . . . . 246B.11.Programacion . . . . . . . . . . . . . . . . . . . . 246B.12.Cadenas de caracteres . . . . . . . . . . . . . . . 247B.13.Utilidades . . . . . . . . . . . . . . . . . . . . . . 247

C. Comandos de MatLab (v4.2) 249C.1. Comandos de proposito general . . . . . . . . . . 250C.2. Graficos bidimensionales . . . . . . . . . . . . . . 251C.3. Analisis de senales . . . . . . . . . . . . . . . . . 251C.4. Funciones mat. elementales . . . . . . . . . . . . 252C.5. Matrices elementales y manipulacion de matrices 253C.6. Toolbox de procesamiento de senales . . . . . . . 254

xii

Page 13: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Indice de figuras

1.1. Evolucion del ındice argentino MERVAL entre2002 y 2003 . . . . . . . . . . . . . . . . . . . . . 3

1.2. Senales de ECG y presion tal como aparecen enun monitor de cabecera de uso medico. . . . . . . 4

1.3. Senal de voz de una frase del idioma ingles . . . 51.4. Imagen en tonos de grises proveniente de un es-

tudio de resonancia magnetica cerebral . . . . . 61.5. Montaje de varios cortes de un estudio de reso-

nancia magnetica cerebral . . . . . . . . . . . . . 71.6. Clasificacion fenomenologica de las senales . . . . 81.7. Esquema conceptual de un proceso aleatorio . . . 101.8. Conversor A/D y funcion de transferencia del cuan-

tizador . . . . . . . . . . . . . . . . . . . . . . . . 131.9. Senal continua, en tiempo discreto y digital . . . 141.10. Sistemas de comunicacion . . . . . . . . . . . . . 181.11. Esquema de la Teorıa de la Comunicacion . . . . 191.12. Tipos de procesamiento de la senal . . . . . . . . 211.13. Esquema del telescopio reflector de Newton . . . 251.14. Descomposicion de la /A/ como en “father” en

oscilagramas . . . . . . . . . . . . . . . . . . . . . 26

2.1. Una senal de 3 muestras en R3 . . . . . . . . . . 402.2. Representacion grafica de la energıa y amplitud

de la senal . . . . . . . . . . . . . . . . . . . . . . 432.3. Varios ejemplos de la norma-p para senales en R2 442.4. Proyeccion de la senal x en la direccion de y . . 472.5. El producto interno y su significado en teorıa de

senales . . . . . . . . . . . . . . . . . . . . . . . . 48

xiii

Page 14: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.6. Aproximacion de vectores utilizando proyeccionesortogonales . . . . . . . . . . . . . . . . . . . . . 59

2.7. El cambio de base visto desde la perspectiva delprocesamiento de senales . . . . . . . . . . . . . . 64

2.8. Grafica de un cambio de base . . . . . . . . . . . 66

3.1. Funciones de la serie seno . . . . . . . . . . . . . 793.2. Funciones de la serie coseno . . . . . . . . . . . . 803.3. Funciones de la serie exponencial de Fourier . . . 813.4. Funciones coseno con diferentes Ωk . . . . . . . . 853.5. Exponenciales complejas como base en R20 . . . 883.6. Muestreo de una senal continua . . . . . . . . . . 943.7. Fenomeno de alias . . . . . . . . . . . . . . . . . 943.8. Multiplicacion por una ventana cuadrada . . . . 953.9. Muestreo en el dominio de la frecuencia . . . . . 963.10. Par de la transformada discreta de Fourier . . . . 973.11. Ventanas temporales mas utilizadas . . . . . . . . 983.12. Efecto del agregado de ceros en el dominio temporal1033.13. Comparacion del costo computacional de la TDF

y el algoritmo de la TRF . . . . . . . . . . . . . . 1093.14. Espectro de magnitud obtenido mediante la TDF 115

4.1. Representacion de sistemas de tiempo continuo ydiscreto . . . . . . . . . . . . . . . . . . . . . . . 120

4.2. Interconexion de sistemas . . . . . . . . . . . . . 1214.3. Sistema para el calculo de y[n] = (2.x[n]− x[n]2)2 1224.4. Interconexion de realimentacion . . . . . . . . . . 1234.5. Ejemplos de sistema estable e inestable . . . . . . 1244.6. Representacion de operaciones de un sistema LTI

discreto . . . . . . . . . . . . . . . . . . . . . . . 1284.7. Diagrama de bloques del sistema y[n] = 3x[n] −

2y[n− 1] . . . . . . . . . . . . . . . . . . . . . . . 1294.8. Diagrama de bloques del sistema y[n] = 3x[n] +

2x[n− 1] . . . . . . . . . . . . . . . . . . . . . . . 129

xiv

Page 15: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

4.9. Diagrama de bloques del sistema y[n] = 3x[n] +2x[n− 1]− 2y[n− 1] . . . . . . . . . . . . . . . . 130

4.10. Diagrama en bloques para el Ejercicio 5 . . . . . 1324.11. Entrada para el Ejercicio 6 . . . . . . . . . . . . 133

5.1. Descomposicion de una senal de tiempo discreto 1395.2. Obtencion de la salida de un sistema LTI median-

te la convolucion lineal . . . . . . . . . . . . . . . 1415.3. Convolucion lineal de secuencias por el metodo

de espejado . . . . . . . . . . . . . . . . . . . . . 1425.4. Convolucion circular (o periodica) de dos secuencias1445.5. Deconvolucion con ruido aditivo en la entrada . . 1475.6. Deconvolucion con ruido aditivo en la salida . . . 1475.7. Senales de entrada, respuesta al impulso y salida

de un sistema LTI . . . . . . . . . . . . . . . . . 1485.8. Influencia del espectro de frecuencias del ruido en

la deconvolucion . . . . . . . . . . . . . . . . . . 1505.9. Sistemas en cascada . . . . . . . . . . . . . . . . 1525.10. Sistema con ruido aditivo en la entrada y en la

salida . . . . . . . . . . . . . . . . . . . . . . . . 153

6.1. Representacion de X(z) en el plano complejo . . 1616.2. Obtencion de la ecuacion en diferencias mediante

transformacion conforme . . . . . . . . . . . . . . 1666.3. Condiciones de mapeo mediante transformacion

conforme . . . . . . . . . . . . . . . . . . . . . . . 1676.4. Sustitucion de la diferencia hacia atras por la de-

rivada . . . . . . . . . . . . . . . . . . . . . . . . 1696.5. Transformacion de Euler . . . . . . . . . . . . . . 1716.6. Restriccion en θ para que el plano s se mapee en

el cırculo unitario . . . . . . . . . . . . . . . . . . 1726.7. Mapeo de w en Ω por medio de la transforma-

cion bilineal para la respuesta en frecuencia deun filtro rechaza–banda . . . . . . . . . . . . . . 176

xv

Page 16: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6.8. Circuito RC . . . . . . . . . . . . . . . . . . . . . 177

7.1. Respuesta al escalon de dos sistemas lineales . . 1847.2. Superficie de error cuadratico para sistema AR

de orden 2 . . . . . . . . . . . . . . . . . . . . . . 1937.3. Comportamiento de los criterios de estimacion de

orden . . . . . . . . . . . . . . . . . . . . . . . . 2017.4. Esquema del aparato fonador . . . . . . . . . . . 2037.5. Diagrama para el modelo AR del aparato fonador 2047.6. Palabra “hello” separada en fonemas . . . . . . . 205

8.1. Representacion de los individuos . . . . . . . . . 2128.2. Ejemplo de la rueda de ruleta . . . . . . . . . . . 2158.3. Mutacion en un cromosoma de 8 genes . . . . . . 2198.4. Cruza simple a partir de dos cromosomas de 8

genes . . . . . . . . . . . . . . . . . . . . . . . . . 2198.5. Curva de error para un espacio de soluciones de

dimension 2 . . . . . . . . . . . . . . . . . . . . . 2218.6. Curva de error con mesetas . . . . . . . . . . . . 2218.7. Evolucion temporal de la poblacion en sus tres

estadios . . . . . . . . . . . . . . . . . . . . . . . 228

xvi

Page 17: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Prefacio

Se puede decir que los conceptos de senal y sistema permi-ten encarar el estudio de cualquier problema del mundo fısicomediante un “modelo” adecuado de la realidad. Este tipo demodelos se han difundido enormemente en los tiempos actuales,debido principalmente a las bases matematicas de la teorıa dela comunicacion y los avances en el area informatica que hanpermitido llevar las soluciones al campo digital, invadiendo casitodas las actividades de la sociedad moderna.

En este libro se pretende dar una breve introduccion a losfundamentos detras de esta teorıa para “comprender” el mun-do. El mismo es el fruto de unos 10 anos de trabajo impartiendocursos relacionados con el tema, y surgio originalmente comouna necesaria introduccion para un curso de modelizacion desistemas biologicos, en la carrera de grado en Bioingenierıa (oIngenierıa Biomedica), en la Facultad de Ingenierıa de la Uni-versidad Nacional de Entre Rıos, Argentina. Mas recientemente,el material fue ampliado y utilizado como primer bloque de fun-damentos en un curso de procesamiento digital de senales en lacarrera de grado en Ingenierıa Informatica, en la Facultad deIngenierıa y Ciencias Hıdricas de la Universidad Nacional delLitoral.

Se supone que el lector cuenta con algunas nociones basi-cas de fısica, matematica e informatica. Las nociones de fısicapermiten aportar la base conceptual para transcribir la realidadconcreta a una version abstracta y simplificada de la misma.Como requisito, el lector debera tener conocimientos de fısicaelemental para entender la aplicacion de los conceptos mostra-dos mediante algunos ejemplos simples de sistemas mecanicos yelectricos. Las nociones de matematica aportan la base formal

xvii

Page 18: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

para la descripcion de las senales y sistemas discretos. Se pre-supone que el lector conoce los fundamentos de algebra lineal,calculo vectorial, ecuaciones diferenciales y variable compleja.La nociones de informatica permiten la implementacion compu-tacional de practicamente “todo” lo que se ha querido transmitiren este libro. La informatica es la herramienta basica utilizadapara llevar a la practica y terminar de comprender los detallesde cada tema. No se requiere un gran dominio de la computacionsino mas bien algunos conocimientos mınimos de programacioncomo estructuras condicionales y repetitivas, vectores y matri-ces, subprogramas y graficacion basica.

Se ha tratado de conservar parte del enfoque heredado delIng. Luis F. Rocha, que fue el que originalmente nos acerco estasideas como parte introductoria de un curso denominado Bioin-genierıa I. Tambien se ha tratado de rescatar el caracter uni-versal de varias de las ideas planteadas en la teorıa de senales ysistemas. Especialmente, los conceptos vertidos en el Capıtulo 2“Espacio de senales”, forman una vision generica de un conjuntomuy amplio de tecnicas utilizadas en el procesamiento digital desenales. Ver a las senales como vectores, interpretar geometri-camente operaciones basicas como el producto interno en uncambio de base y extender su aplicacion a las transformacioneslineales, constituye un nucleo conceptual que permite visualizaroperaciones complejas desde una perspectiva muy simple pero ala vez generica. Si bien a la fecha todavıa han quedado algunoscapıtulos con un enfoque mas bien clasico, en futuras edicio-nes se completarıa esta tarea, intentando formar un unico hiloconductor, conceptual y didactico, a lo largo de todo el libro.

El libro esta organizado de la siguiente forma. En el Capıtu-lo 1 se presenta una introduccion general al tema de senales, conejemplos de varios campos de aplicacion. Se discuten los concep-tos de senal, sistema, informacion y ruido. En el Capıtulo 2 sepresenta el estudio de las senales, ya no de forma aislada, sinoen el marco de conjuntos de senales que cumplen con determi-

xviii

Page 19: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

nadas propiedades de interes. Como anticipamos, este enfoquedesde los espacios de senales permite sentar las bases para lastransformaciones lineales y provee una perspectiva clave, en loconceptual y didactico, para reinterpretar el resto del materialpresentado en el libro. En el Capıtulo 3, como una continuacionnatural y aplicacion del capıtulo anterior, se presenta la trans-formada discreta de Fourier. Se ha dedicado un capıtulo enteroa esta transformacion debido al papel fundamental que juegaactualmente en las aplicaciones. Se revisa la relacion que existeentre todos los miembros de la familia de bases de Fourier y sepresentan las ideas principales detras de la transformada rapidade Fourier. En el Capıtulo 4 se completan los conceptos sobresistemas presentados en el primer capıtulo, pero orientado prin-cipalmente a las propiedades de los sistemas discretos lineales einvariantes en el tiempo. El Capıtulo 5 discute las ideas detrasde la sumatoria de convolucion, mostrando su conexion natu-ral con los sistemas lineales e invariantes en el tiempo. En elCapıtulo 6 se presentan los fundamentos de la transformada Z,que juega para los sistemas de tiempo discreto un papel analogoal de la transformada de Laplace para el caso de los sistemas detiempo continuo. Los Capıtulos 7 y 8 tratan topicos especialesde aplicacion a la identificacion de sistemas. El Capıtulo 7 pre-senta las nociones basicas de identificacion de sistemas discretoslineales, tanto para el caso de sistemas invariantes como para losvariantes en el tiempo. Finalmente en el Capıtulo 8 se presen-ta la tecnica de algoritmos geneticos, que es un metodo generalpara la optimizacion y busqueda de soluciones. En el contextode este libro se presenta como una alternativa para la identifica-cion de sistemas no lineales. Esto se debe a que, aunque el libroesta orientado principalmente a sistemas lineales, los sistemasno lineales estan apareciendo cada vez mas en las aplicaciones.

Los conceptos se refuerzan en cada capıtulo con una serie depreguntas y ejercicios practicos que estan pensados para desarro-llarse en sesiones adicionales a las clases teoricas, que en nuestro

xix

Page 20: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

esquema docente denominamos: clases de coloquio y practicasde laboratorio. Las clases de coloquio estan ıntimamente relacio-nadas con los temas desarrollados en las clases teoricas, pero lamodalidad de trabajo es mas flexible, participativa y personali-zada. Las preguntas pretenden ser una guıa para la discusion delos aspectos relevantes de cada tema o aquellos que presentanmayor dificultad en el aprendizaje de los alumnos. Las activida-des practicas se centran en la resolucion de problemas medianteun lenguaje de programacion. Si bien no se sugiere ningun len-guaje en particular, los apendices finales proveen una lista decomandos para algunos lenguajes de calculo numerico muy uti-lizados en la actualidad. Los ejercicios practicos que poseen unpoco mas de dificultad dentro de cada capıtulo, o que necesitanun poco mas de tiempo para resolverse, estan marcados con (∗),o con (∗∗), de acuerdo con el grado de dificultad relativo. La bi-bliografıa de consulta para cada tema se provee al final de cadacapıtulo. Se ha tratado de ordenar la misma de acuerdo con laimportancia o peso de cada fuente en el tema considerado.

Queremos agradecer las innumerables sugerencias aporta-das por los alumnos, que podemos decir han sido los primerosrevisores de este material. Tambien debemos destacar el aportesustancial de varias personas que han influido de diversas for-mas en los contenidos actuales de este libro. Entre ellas quere-mos agradecer especialmente a Daniel Zapata, con quien hemosmantenido muchas discusiones conceptuales acerca de varios delos temas incluidos. En la lista de agradecimientos contamostambien al Ing. Carlos Montalvo, que fue responsable de variasde las notas iniciales tomadas de las clases del Ing. Rocha y alos Bioingenieros Carlos Pais y Cesar Martınez, que han reali-zado revisiones de este material. Por ultimo, queremos volvera destacar la fuerte influencia del Ing. Rocha como formador ymaestro de todos nosotros, que modifico nuestra concepcion dela ciencia y la ingenierıa.

Diego H. Milone, Hugo L. Rufiner

xx

Page 21: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Capıtulo 1

Introduccion a senales

Hugo Leonardo Rufiner

Temas a tratar

• Definiciones basicas de senales.

• Clasificacion de las senales.

• Contexto de la teorıa de la senal.

• Descripcion de los procesamientos de senales mas usuales.

• Operaciones elementales sobre y entre senales.

Objetivos

• Operar con senales discretas y reconocer las caracterısticasy propiedades generales de las mismas.

• Aprender a aplicar a ejemplos sencillos las herramientas yconceptos en estudio.

• Generar y manipular senales digitales en forma de vectorespor medio de un lenguaje de programacion.

1

Page 22: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2 Capıtulo 1. Introduccion a senales

1.1. Introduccion

La teorıa de las comunicaciones ha invadido practicamen-te nuestra vida diaria, con aplicaciones tecnologicas en campostan diversos como: el comercio, la medicina, la educacion y lapolıtica, entre muchos otros. Los conceptos de senal, sistema einformacion, soportan esta teorıa y estan ıntimamente relacio-nados. Los mismos poseen un caracter universal que permitedescribir practicamente cualquier problema del mundo real enterminos de estos conceptos, e inmediatamente tener a manotoda la teorıa para intentar resolverlos.

Podemos decir que las senales transportan informacion acer-ca del sistema que las produjo, contenida o codificada en unpatron de variaciones de alguna magnitud fısica. Desde el pun-to de vista matematico las senales son descriptas por medio defunciones, y los sistemas en terminos de transformaciones. Estastransformaciones modifican a las denominadas senales de entra-da para dar lugar a otras senales de salida del sistema. En estecapıtulo nos ocuparemos principalmente de las senales y deja-remos los aspectos especıficos de los sistemas para tratarlos enel Capıtulo 4. La descripcion matematica de la cantidad de in-formacion contenida en una senal no sera explorada de maneradirecta en el presente libro.

Las senales son funciones de una o mas variables inde-pendientes que contienen informacion acerca de la naturalezao comportamiento de algun fenomeno, mientras que los siste-mas responden a senales particulares produciendo otras senales.Aunque las senales se pueden representar de muchas maneras,en todos los casos la informacion dentro de una senal esta con-tenida en un patron de variaciones de alguna forma.1

La palabra senal proviene del latın signale, que significa:marca que se pone o hay en una cosa para darla a conocer odistinguirla de otras. Otras acepciones tradicionales pueden ser:

1Senales y Sistemas, A.V. Oppenheim – A.S. Milsky.

Page 23: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.1. Introduccion 3

Figura 1.1. Evolucion del ındice argentino MERVAL entre 2002 y

2003

signo, imagen o representacion de una cosa. Como hemos vistouna senal es un fenomeno que representa informacion. En ge-neral se consideran senales electricas, pero la teorıa de la senalpuede ser aplicada a cualquier clase de senal (lumınica, sonora,magnetica, etc.), sin importar su naturaleza fısica. Pueden de-finirse infinidad de senales en otros campos como el economico,social, biomedico, etc; por lo tanto las tecnicas aquı desarrolla-das son de aplicacion general.

En la Figura 1.1 se muestra la senal de evolucion del ındi-ce MERVAL en los anos 2002 y 20032. Se puede apreciar unalenta recuperacion del mercado argentino luego de la difıcil si-tuacion economica de fines del ano 2001. En este ejemplo quedaevidenciado como podemos extraer informacion util acerca deun sistema determinado analizando las senales producidas porel mismo.

En el ambito biomedico, las senales provenientes del regis-tro a nivel de la piel de la actividad electrica del corazon (ECG),son de uso diario. Estas senales junto con otras como la de pre-sion, constituyen parametros basicos para analisis y control delestado del sistema cardiovascular. Por ello estan incorporadas

2Tomado de http://ar.finance.yahoo.com

Page 24: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

4 Capıtulo 1. Introduccion a senales

Figura 1.2. Senales de ECG y presion tal como aparecen en un mo-

nitor de cabecera de uso medico.

en los monitores de cabecera y otros instrumentos medicos (VerFigura 1.2).

Otro ejemplo de senal biologica puede ser la senal de voz,que es producida por el aparato fonador humano a traves deun complicado mecanismo en el que intervienen varios organospara modificar las propiedades acusticas del tracto vocal y delos estımulos sonoros implicados. De esta forma se producen lospatrones de variacion de la presion sonora caracterısticos queconstituyen la base de la comunicacion humana. En la Figura 1.3se puede apreciar el sonograma de una senal de voz provenientede una frase del idioma ingles. En la misma pueden apreciar-se marcas verticales correspondientes a los trozos de la senalque representan distintas unidades acustico-foneticas, como losfonemas y las palabras.

Generalmente se toma como variable independiente al tiem-po, aunque puede ser tambien alguna dimension espacial, como

Page 25: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.2. Clasificacion de las senales 5

0 26112 How d id one j o in t hem?

Am

plitu

d

Tiempo [ seg . ]

Figura 1.3. Senal de voz de una frase del idioma ingles (tomada de la

base de datos TIMIT)

en el caso de las imagenes (que constituyen senales bidimensio-nales). Un caso de particular interes son las imagenes medicas,en la Figura 1.4 se puede apreciar una imagen del cerebro pro-ducida por medio de la tecnica de resonancia magnetica (MRI).Si juntamos varios cortes de este tipo —como los que podemosver en la Figura 1.5— tendrıamos en realidad una senal tridi-mensional.

1.2. Clasificacion de las senales

Como en cualquier ambito, una adecuada taxonomıa delos distintos tipos de senales permite el estudio sistematico delas mismas. Las senales se pueden clasificar de acuerdo a lossiguientes criterios:

Dimensional: basado en el numero de variables indepen-dientes del modelo de la senal.

Energetico: de acuerdo a si poseen o no energıa finita.

Page 26: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6 Capıtulo 1. Introduccion a senales

Figura 1.4. Imagen en tonos de grises proveniente de un estudio de

resonancia magnetica cerebral (U.S.A. National Institute of Health)

Espectral: basado en la forma de la distribucion de fre-cuencias del espectro de la senal.

Fenomenologico: basado en el tipo de evolucion de la senal,predefinido o aleatorio.

Morfologico: basado en el caracter continuo o discreto dela amplitud de la senal o de la variable independiente.

Desarrollaremos a continuacion principalmente las dos ulti-mas, debido a la importancia de las mismas, y a que el restoresultan ser de la aplicacion de conceptos sencillos ya conocidoso enunciados.

1.2.1. Clasificacion Fenomenologica

En la Figura 1.6 se muestra en esquema de la clasificacionfenomenologica cuyos elementos describiremos en las siguientessecciones.

Page 27: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.2. Clasificacion de las senales 7

Figura 1.5. Montaje de varios cortes de un estudio de resonancia

magnetica cerebral (U.S.A. National Institute of Health)

Page 28: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

8 Capıtulo 1. Introduccion a senales

Seña le s

Determinís t icas Aleator ias

Per iódicas Aper iód icas

Sinusoidales

Armón icas

P s e u d o -aleator ias

Cuas i -per iódicas

Trans i tor ias

Es tac ionar ias No es tac ionar ias

Ergód icas

No e rgód i ca s

Especia les

Figura 1.6. Clasificacion fenomenologica de las senales

Senales determinısticas

Una senal se puede definir como determinıstica si sus va-lores son conocidos de antemano o pueden ser predichos exac-tamente. Por lo tanto, los proximos valores de una senal puedenser determinados si son conocidas todas las condiciones anterio-res de la senal. Ası, esta puede ser representada completamentepor las ecuaciones que la definen.

A su vez, las senales determinısticas se pueden subdividiren periodicas y aperiodicas. Se dice que una senal continua esperiodica si y solo si x(t + T ) = x(t) para todo t ∈ (−∞,∞). Elvalor positivo mas chico de T para el cual se cumple la ecuacionanterior se llama perıodo de la senal y se nota con el sımbo-lo T . Ademas, esta ecuacion va a seguir siendo cierta si T esreemplazado por kT .

Cualquier senal que no es periodica se dice que es ape-riodica. Algunas senales aperiodicas tienen propiedades unicasy son conocidas como funciones singulares, porque poseen deri-

Page 29: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.2. Clasificacion de las senales 9

vadas discontinuas o son discontinuas ellas mismas. Entre estassenales se encuentra la tipo escalon, delta de Dirac, etc..

Otro tipo de senales que no poseen las propiedades que he-mos nombrado anteriormente son las senales transitorias. Estassenales son aquellas que agotan su energıa dentro del perıodode observacion. Esta clasificacion no depende tanto de la senalen sı, como de la escala temporal desde la cual se observa a lamisma.

Senales estocasticas

Hay senales en las que existe casi siempre alguna incertezaacerca de los valores que puede tomar en los siguientes instantes.Estas senales son llamadas estocasticas o aleatorias y pueden serdescriptas solamente desde un punto de vista estadıstico. Porejemplo, se puede considerar que la senal de tension del tendi-do electrico es determinıstica y hasta periodica, pero por otrolado, si se tienen en cuenta las pequenas perturbaciones electro-magneticas esta misma senal puede ser considerada estocastica.Las senales aleatorias son mas difıciles de manejar que las de-terminısticas, una senal con valores al azar es una muestra deun proceso aleatorio. Una funcion muestra (o realizacion) de unproceso aleatorio difiere de las otras en su descripcion temporal,pero sin embargo poseen las mismas propiedades estadısticas.

Se puede dividir a las senales aleatorias en 2 tipos: estacio-narias y no estacionarias.

Un proceso estacionario es aquel en el cual las propiedadesestadısticas de la senal no varıan con el tiempo. Por ejemplo,para un proceso de este tipo podemos calcular la esperanza pro-mediando los valores de x(t) a lo largo de toda la muestra encualquier momento. Dentro de este tipo de senales aleatoriasse encuentran las de tipo ergodicas: para estas senales, las es-tadısticas (ej.: promedio) a lo largo de la muestra son igualesa las estadısticas temporales a lo largo del eje del tiempo para

Page 30: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

10 Capıtulo 1. Introduccion a senales

cualquier funcion muestra. En la Figura 1.7 se ejemplifica unproceso aleatorio ergodico de n muestras o realizaciones.

La estacionariedad y ergodicidad son propiedades que per-miten el uso de metodos de procesamiento practicos, un procesoque es no estacionario (y por lo tanto no ergodico) es muy difıcilde procesar.

t

t

t

Estacionaried

ad+

=E

rgodicidad

x 1 ( t )

x 2 ( t )

x n ( t )

= E s t a c io n a r ie d a d

X ( t ) = P roceso Alea to r io

.

.

.

.

.

.

fdp(X ( t i)) fdp(X ( t j)) fdp(X ( tk))

fdp(x1 (t))

fdp(x2 (t))

fdp(xn (t))

.

.

.

t i t j tk

Figura 1.7. Esquema conceptual de un proceso aleatorio

Page 31: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.2. Clasificacion de las senales 11

1.2.2. Clasificacion Morfologica

Senales continuas y discretas

Desde el punto de vista morfologico hay dos tipos basicosde senales: senales continuas y senales discretas. En el caso deuna senal continua la variable independiente es continua, porlo tanto estas senales estan definidas para un continuo de va-lores de la variable independiente. Por otro lado, las senalesdiscretas estan definidas unicamente en valores discretos y con-secuentemente para estas senales la variable independiente tieneunicamente un conjunto de valores.

Para distinguir entre senales continuas y discretas normal-mente se utiliza el sımbolo t para denotar una variable continuay n para una variable discreta. Ademas, para senales de tiempocontinuo se encerrara la variable independiente entre parentesis(p.e. y(t) = sen(ωt)), mientras que en el caso de las de tiempodiscreto se encerrara entre corchetes (p.e. y[n] = sen(nT )).

Una senal discreta x[n] puede representar un fenomeno pa-ra el cual la variable independiente es inherentemente discreta.Senales como estas pueden ser la relacion especie-abundancia,o los datos demograficos tomados a determinados intervalos detiempo. Tambien las fotos en los diarios realmente consisten deuna grilla de puntos muy fina y cada uno de estos puntos re-presenta un muestreo del brillo del punto correspondiente de laimagen original. No importa el origen de los datos, de todas for-mas la senal x[n] esta definida unicamente para valores enterosde n.

En el caso en que la amplitud y la variable independientesean continuas, entonces la senal es analogica; en cambio si laamplitud es discreta y la variable independiente tambien la senales digital.

Page 32: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

12 Capıtulo 1. Introduccion a senales

Senales analogicas y digitales

La mayorıa de las senales de interes en la naturaleza sonanalogicas. Sin embargo, es importante analizar las senales di-gitales, ya que la tecnologıa moderna en terminos de software yhardware, hace al procesamiento en tiempo discreto mas venta-joso que el procesamiento en tiempo continuo. Las ventajas sontales que normalmente es conveniente convertir la senal analogi-ca en una digital de forma tal que se pueda llevar a cabo elprocesamiento en tiempo discreto.

La conversion es llevada a cabo por sistemas de conversionanalogica a digital (A/D), que muestrean, retienen cada mues-tra por un instante de tiempo, y cuantizan la senal en valoresdiscretos. Normalmente el muestreo es llevado a cabo en instan-tes de tiempo uniformemente espaciados, sin embargo, tambienpuede ser llevado a cabo un muestreo no-uniforme para tomarventaja de algunas propiedades de la senal.

Las senales digitales son senales de tiempo discreto cuyosvalores en amplitud son cuantizados. La salida de un conversorA/D, que muestrea una senal de entrada continua y genera unasecuencia de numeros binarios de longitud finita es una senaltıpicamente digital. En la parte superior de la Figura 1.8 semuestra un diagrama esquematico de un conversor A/D. Si seutiliza una frecuencia de muestreo determinada (por ejemplo 1MHz, es decir una muestra cada 1 µs.) el cuantizador tiene unarelacion entrada/salida como la de la parte inferior de la Figu-ra 1.8. Si ademas se da una funcion continua x(t) que tiene laforma que se ve en la Figura 1.9 (a), entonces las correspondien-tes senales en tiempo discreto x1(nT ) y la senal digital de salidax(nT ), tomarıan las formas representadas en la figuras (b) y (c).

En terminos estrictos, las computadoras pueden manejarunicamente senales digitales, ya que las senales discretas puedenser discretas en el tiempo pero pueden no serlo en amplitud.Como en una senal digital solo hay un numero finito de niveles,los errores estan presentes en cualquier sistema que opere con

Page 33: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.2. Clasificacion de las senales 13

-2

-4

-6

-8

-8 -6 -4 -2

Entrada

Salida 2 4 6 8

8

6

4

2

Muestreo Cuantización

Conversor de señales analógicas a digitales

)(ˆ tx )(1 nTx )(nTx

Figura 1.8. Conversor A/D y funcion de transferencia del cuantizador.

Arriba: diagrama de bloques de un conversor A/D. Abajo: funcion

de transferencia del cuantizador.

Page 34: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

14 Capıtulo 1. Introduccion a senales

este tipo de senales. Por lo tanto, una de las consideracionesde diseno de cualquier sistema que maneje senales digitales esel numero de bits o el numero de niveles de cuantizacion quese necesita para representar a la senal de una forma fidedigna.Cuanto mas grande sea el numero de bits usados, mayor va aser la precision en la representacion de la senal, y mas costosova a ser el sistema digital.

n n

x1 (n T ) T = 1µs eg . x 1 (n T ) T = 1 µs e g .

t (µ seg . )

1 08642

6

2

-2

4

1 08642

4

6

2

- 2

1 08642

( b )

6

4

- 2

2

x ( t )

( a ) ( c )

Figura 1.9. Senal continua, en tiempo discreto y digital. (a) Onda

continua de entrada al sistema, (b) senal en tiempo discreto y (c)

senal digital.

Ademas de los efectos de la cuantizacion, el hecho de discre-tizar la senal mediante un conversor A/D, tambien puede intro-ducir errores importantes en la senal resultante. Es facil imagi-narse que si muestreamos la senal a una velocidad mas lenta quela de la mayor frecuencia presente en la senal podemos perderinformacion importante. De hecho esto puede producir cambiosmorfologicos significativos en la senal considerada. Este efecto,que conduce a una “confusion” acerca cuales son las frecuenciasque componen la senal y se denomina aliasing, sera tratado condetalle en el Capıtulo 3.

1.3. Ruido en senales

Generalmente las senales estan contaminadas con pertur-baciones no deseadas que dificultan el analisis o proceso de la

Page 35: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.3. Ruido en senales 15

senal de interes, dichas perturbaciones se denominan ruido. Es-trictamente, se denomina ruido a cualquier fenomeno o proceso(interferencia, distorsion aleatoria, etc.) que perturba la percep-cion o interpretacion de una senal. Comparte la misma denomi-nacion que los efectos acusticos analogos y siempre esta presenteen la obtencion de cualquier senal real.

Cuando se esta en presencia de una senal contaminada conruido se define una medida de cuanto una senal esta contami-nada por ruido, dicha medida se denomina relacion senal-ruido(S/R o SNR). Esta se define como la razon ξ entre la potenciade la senal Ps y la potencia del ruido Pr:

ξ =Ps

Pr

Antes de continuar, es conveniente hacer una distincion en-tre el ruido generado por disturbios de la senal puramente alea-torios (y por lo tanto impredecibles) y la interferencia causadapor la recepcion no deseada de otra senal util (como puede serla causada por el acoplamiento de las lıneas de alimentacion).

Las fuentes de ruido pueden clasificarse en dos grandes gru-pos:

Fuentes de ruido colocadas fuera de cualquier sistema deprocesamiento (externas) y actuando en el por susceptibi-lidad.

Fuentes de ruido dentro del sistema (internas) que generanruido independiente a las condiciones externas.

Aunque siempre es posible mejorar el diseno de un siste-ma de procesamiento hasta reducir las interferencias a un nivelaceptable, es absolutamente imposible eliminar la contribucionde las fuentes de ruido internas.

Normalmente un sistema se va a comportar correctamenteunicamente cuando el nivel util de senal es mas alto que el nivel

Page 36: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

16 Capıtulo 1. Introduccion a senales

de ruido. Sin embargo, algunos metodos de procesamiento maselaborados permiten trabajar con pequenas SNR, gracias a lainformacion de propiedades de la senal conocida a priori.

Las fuentes de ruido externas al sistema pueden ser dividi-das en dos grandes grupos: las fuentes de interferencias genera-das por artefactos electricos y fuentes de interferencias del tipoelectromagnetico. Dentro de las primeras se puede agrupar a losmotores electricos, las bobinas (reactancias) de los fluorescentes,transformadores, rectificadores, etc. Dentro de las interferenciaselectromagneticas se pueden citar las ondas electromagneticasde comunicacion, radiocomunicacion, TV, etc..

Las fuentes de ruido interno tambien pueden ser dividi-das en dos grandes grupos: perturbaciones del tipo impulsivasgeneradas por la conmutacion de corrientes y ruido de fondogenerado en los cables y componentes electronicos debidos a lanaturaleza electronica de los mecanismos de conduccion. Esteultimo tiene varios orıgenes, como una generalizacion se puededecir que se produce como consecuencia del movimiento aleato-rio de las partıculas cargadas en equilibrio termico (movimientoBrowniano) o bajo influencia de campos aplicados a los mismos.Bajo condiciones estables pueden ser vistos como procesos es-tacionarios. Sus tres principales constituyentes en componenteselectronicos son: el ruido termico, el ruido tipo disparo y el ruidode aleteo o flicker.

El ruido termico es el encontrado mas frecuentemente, yes causado por la vibracion aleatoria de los portadores de cargaprovocada por la temperatura en los conductores. El ruido ti-po disparo aparece en valvulas, transistores, diodos, fotodiodos,etc; donde existe una barrera de potencial que deben atravesarlos portadores. El ruido de aleteo es atribuible a las propiedadesde la superficie de un material.

Page 37: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.4. Teorıa de la comunicacion 17

1.4. Teorıa de la comunicacion

El estudio de las senales se encuentra contenido en lo quese denomina Teorıa de la Comunicacion. La teorıa de la comu-nicacion se encarga del estudio de los sistemas de comunicacion,tanto artificiales como biologicos o naturales. En la Figura 1.10se pueden ver dos ejemplos de este tipo de sistemas.

Esta teorıa esta compuesta a su vez por 2 grandes ramas: laTeorıa de la Senal y la Teorıa de la Informacion y Codificacion(Ver Figura 1.11).

1.4.1. Teorıa de la senal

La descripcion matematica de las senales es el objetivo fun-damental de la teorıa de la senal. Esta proporciona el modode enfatizar (de forma matematicamente conveniente) las ca-racterısticas fundamentales de una senal, como pueden ser sudistribucion espectral de energıa o su distribucion estadıstica deamplitudes. Tambien provee los metodos para analizar la natu-raleza de las modificaciones impuestas a la senal mientras estapasa por algun bloque del tipo electrico o electronico.

Una de las herramientas basicas y fundamentales de lateorıa de la senal es la expansion en terminos de funciones orto-gonales, siendo la expansion de Fourier el caso mas interesante,y cuya forma generalizada es conocida como la Transformada deFourier. Debido a su importancia dedicaremos un capıtulo com-pleto a revisar las bases de esta transformacion y su aplicacional caso de las senales discretas.

1.4.2. Teorıa de la informacion y de la codifi-cacion

La informacion esta muy ligada al concepto de comunica-cion, es decir, transferencia de mensajes desde una fuente a un

Page 38: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

18 Capıtulo 1. Introduccion a senales

O n d aacús t ica

Formulac ión de l mensa j e

Cod i f i cac ión

Acc iónes neu ro -m u s c u l a r e s

Fuen te de l son ido(c uerdas voca les )

S i s t e m aAcús t i co

( t rac to vocal )

C o m p r e n s i ó n d e l m e n s a j e

T r a n s d u c c i ó nN e u r a l

Cod i f i cac ión

M o v i m i e n t om e m b r a n a

bas i lar

Emisor o fuente Canal o medio Receptor o destino

Es tac ión der a d i o A M

Apara to derad io

Ondas e l ec t romagné t i ca s

(a)

(b)

Figura 1.10. Sistemas de comunicacion: (a) Humano por medio del

habla, (b) Artificial por medio de un sistema de radio de amplitud

modulada (AM)

Page 39: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.4. Teorıa de la comunicacion 19

destinatario. La teorıa de la informacion es una teorıa proba-bilıstica de los mensajes, que tiene en cuenta sus propiedadesestadısticas sin importar su significado. Provee un conjunto deconceptos que permiten la evaluacion del desempeno de los sis-temas de transferencia de informacion, especialmente cuando lasenal esta afectada de ruido.

Teor ía de la Seña l y la Información(o t eor ía de l a Comunicac ión)

Teor ía de l a In formaciónTeor ía de l a Seña l

M o d u l a c i ó n yM u e s t r e o

Anál i s i s Espec t ra l

De tecc ión y Es t imac ión

Reconoc imien to de Pa t rones

Teor ía de l aCodi f i cac ión

Codi f icac ión de la Fuente

Cor recc ión y De tecc iónde Er ro res

Cr ip tograf ía

Figura 1.11. Esquema de la Teorıa de la Comunicacion

Todo esto conduce al estudio de los metodos de codifica-cion de la informacion. Las tecnicas de codificacion poseen tresobjetivos fundamentales: el primero es incrementar la densidadde la senal (compactar la senal lo mas posible) eliminando laredundancia inutil, esto se denomina codificacion de fuente. Elsegundo objetivo es incrementar la confiabilidad de la senal, te-

Page 40: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

20 Capıtulo 1. Introduccion a senales

niendo en cuenta las caracterısticas con respecto al ruido. Estose puede lograr incluyendo alguna redundancia, inteligentemen-te estructurada para permitir la posterior deteccion y correccionde los verdaderos errores, esto se denomina codificacion de canal.Finalmente, el ultimo objetivo de la codificacion de la informa-cion es tratar de asegurar la secreticidad de la comunicacion(criptografıa).

Aunque se ha hecho mencion a la teorıa de la informacion,el enfoque que interesa en este libro es el de la teorıa de la senal.

1.5. Procesamiento de senales

Como ya se ha visto, la descripcion matematica (o mode-lizacion) de la senal es el cometido de la Teorıa de la Senal, yel procesamiento de la senal es la disciplina tecnica que, basadaen los metodos de la teorıa de la informacion y la senal, se en-carga de la elaboracion o interpretacion de senales que acarreaninformacion, con la ayuda de la electronica, la computacion yfısica aplicada.

Podemos ver que las relaciones del hombre con su ambientenatural, o los sistemas que el mismo construye, estan caracte-rizados por grandes niveles de intercambio de informacion. Laobservacion (medicion) de los fenomenos fısicos o el dialogo (co-municacion) entre los hombres, entre los hombres y las maqui-nas o entre maquinas, es hecho mediante senales (funciones deltiempo) o percepciones visuales (imagenes), cuya naturaleza esrealmente compleja y puede ser enmascarada por disturbios in-deseables (ruido de fondo, efectos atmosfericos, interferencias,etc.).

Las personas realizan complicados analisis de senales atraves de los sistemas neurosensoriales y extraen informacionutil acerca de su entorno en forma practicamente “transparen-te” para ellos. El sistema auditivo humano logra descifrar elmensaje “escondido” en los patrones de variacion sonora produ-

Page 41: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.5. Procesamiento de senales 21

cidos por el aparato fonador. Entendemos el mensaje codificadoen el habla de manera asombrosamente “sencilla”, en forma ca-si independiente de factores como la identidad del hablante o elruido de fondo. Por el contrario, los dispositivos artificiales quehan tratado de emular estos aspectos distan mucho de poseeractualmente estas capacidades. A continuacion revisaremos losprocesamientos basicos que debemos perfeccionar para acercar-nos mas a estas capacidades “naturales”.

S í n te s isG e n e r a c i ó nd e la s e ñ a l

E x tr a c c i ón deI n f o r m a c i ó n

In t er p r e t a c i ó n d e las e ñ a l

SS EE Ñ AA LLÑ

F iltr a do

M e d id a s

A n á li s is

M o d u la c ió n

I d e n tif ic a c i ó n

D e t e cci ó n

R e g e n e r a c ió n

C o dific a c ió n

Figura 1.12. Tipos de procesamiento de la senal

El extraer la informacion util que se encuentra en estassenales (mediante analisis, filtrado, regeneracion, medicion, de-teccion, e identificacion) y mostrar los resultados correspondien-tes en la forma apropiada para el hombre o la maquina es unode los objetivos principales del procesamiento de senales. En laFigura 1.12 se muestran los distintos tipos de procesamiento deuna senal.

La generacion de senales debe ser tambien considerada,

Page 42: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

22 Capıtulo 1. Introduccion a senales

permitiendo el estudio del comportamiento fısico del sistema(p. ej., respuesta al impulso), o la transmision y almacenamiento(sıntesis, modulacion y traduccion a frecuencias, y codificacionpara reducir el efecto del ruido o la redundancia de informacion).

Para medir una senal, y especialmente una del tipo aleato-rio, se trata de estimar el valor de una variable caracterıstica,que esta vinculada a la misma con un determinado nivel de con-fianza. Un ejemplo es la medicion de la senal de variacion de latemperatura corporal a nivel cutaneo.

El filtrado es una funcion bien conocida, que consiste en eli-minar o disminuir algunas componentes no deseadas de la senal.Un ejemplo tıpico en el area biomedica es el de la eliminaciondel ruido de lınea de 50 Hz previo a la adquisicion del ECG.

La regeneracion es la operacion mediante la cual tratamosde retornar la senal a su forma inicial, despues que esta hayasoportado algun tipo de distorsion. Por ejemplo la deconvolucionde una imagen “desenfocada”.

Con un metodo de deteccion, tratamos de extraer una senalutil de un ruido de fondo de grandes dimensiones. La obtencionde la senal de los denominados Potenciales Evocados podrıa en-cuadrarse dentro de este tipo de procesamiento. Algunas vecesqueremos recuperar la senal, otras simplemente saber si esta pre-sente o no en el registro considerado. Las tecnicas de correlacionpueden emplearse con este fın. Mediante los denominados filtrosde correlacion es posible detectar eventos de forma optima, co-mo ser los complejos QRS en el ECG o la presencia de un ecoen la senal del radar o del sonar.

Mediante el analisis, se trata de aislar los componentes delsistema que tienen una forma compleja para tratar de entendermejor su naturaleza u origen. Debido a la importancia del anali-sis de senales dedicaremos la siguiente seccion para ampliar estetopico.

La identificacion es frecuentemente un proceso complemen-tario, que permite clasificar la senal observada. Las tecnicas de

Page 43: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.5. Procesamiento de senales 23

correlacion son tambien frecuentemente usadas con este fin. Po-demos comparar el canto de un ruisenor con el de otro ruisenor,debido a que la correlacion es alta. Sin embargo este se corre-laciona debilmente con el de una paloma. Para establecer lascomparaciones se deben “construir” previamente una serie deplantillas adecuadas.

La sıntesis es la operacion opuesta al analisis, consiste encrear una senal con una forma apropiada mediante la combina-cion, por ejemplo, de un numero de senales elementales. Esteproceso es en general menos complejo que el de analisis, ya quepuede verse como el problema directo de “armar” la senal en basea un conjunto de “partes”. Desde este punto de vista el analisisde una senal constituye precisamente el problema inverso quesuele ser mas difıcil de resolver. Como ejemplo se podrıa men-cionar la sıntesis del habla partiendo de modelos parametricoso no parametricos.

El codificar una senal (ademas de su funcion de traduciruna senal analogica a un lenguaje digital) es frecuentemente usa-do para minimizar los efectos del ruido, o tratar de conservarel ancho de banda o el volumen de memoria de una computa-dora, mediante la reduccion de redundancia en una senal. Unejemplo es la compresion del ECG para su almacenamiento enun dispositivo Holter.

La modulacion y traduccion a frecuencias son las formasprincipales de adaptar una senal a las caracterısticas de unalınea de transmision, de un filtro analizador, o de un medio deregistro. Como ejemplo se pueden mencionar las tecnicas clasicaspara transmision de senales de radio por medio de amplitud ofrecuencia modulada (AM o FM).

1.5.1. Analisis de Senales

La palabra analisis proviene de la base griega analyo quesignifica “desatar”. Podemos definirla como: “distincion y se-

Page 44: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

24 Capıtulo 1. Introduccion a senales

paracion de las partes de un todo hasta llegar a conocer losprincipios o elementos de este”3. Como ya dijimos, el analisisde una senal consiste en aislar aquellas componentes que poseenuna forma compleja para tratar de comprender mejor su natu-raleza u origen. En este contexto llamamos ruido a cualquierfenomeno que perturba la percepcion o interpretacion de unasenal. Es decir que analizar una senal consiste en encontrar yaislar aquellas partes caracterısticas o componentes ocultas quemejor permitan describirlas, minimizando los efectos del ruido.

El analisis de fenomenos fısicos posee elementos analogos,debido a que como hemos visto las senales constituyen mani-festaciones del mundo fısico. Su aparicion es bastante anterior aeste siglo, casi con el comienzo de la ciencia, y de hecho sento lasbases para el desarrollo de las teorıas que sustentan el analisisde senales. En este sentido podemos citar como ejemplo cerca-no el analisis de la luz visible mediante un prisma, que permitedescomponerla en sus componentes fundamentales. Estas com-ponentes estan “ocultas” en la luz blanca y se manifiestan en suinteraccion con los objetos del mundo fısico. Este fenomeno fuedescubierto y estudiado por Newton como uno de sus primerosaportes a la optica en 1670. Newton diseno y construyo el pri-mer telescopio reflector (ver Figura 1.13) y concluyo que la luzblanca no era una unica entidad despues de observar la aberra-cion cromatica de su telescopio y de realizar el experimento delprisma en donde pudo observar el espectro (termino que provie-ne de spectrum, o fantasma) de los componentes individuales dela luz blanca y recomponerlo con un segundo prisma.

Aunque Newton no reconocio el concepto de frecuencia elparecido de este espectro con el de Fourier no es casual. Fou-rier conocıa los trabajos de Newton y desarrollo las bases de suanalisis cuando estudiaba la conduccion del calor en los cuerpossolidos. En 1807 Fourier difundio el primer esbozo de su Teorıaanalıtica del calor, en la cual demostro que la conduccion del

3Diccionario General de la Lengua Espanola Vox

Page 45: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.5. Procesamiento de senales 25

Figura 1.13. Esquema del telescopio reflector de Newton (reproducido

de su artıculo original de 1672).

calor en cuerpos solidos se podıa expresar como una suma in-finita de terminos trigonometricos cada vez mas pequenos. Es-tos terminos constituıan las “componentes ocultas” que habıapodido descubrir en este fenomeno. Claramente Fourier habıaencontrado el “prisma” adecuado para analizar a los fenomenosde conduccion del calor y como resultado habıa desarrollado lateorıa del analisis armonico para descomponer funciones periodi-cas arbitrarias en terminos de funciones sinusoidales. A pesar delaporte tremendo que constituirıa su teorıa fue fuertemente cri-ticada por notables matematicos de la epoca como por ejemploLaplace. Por su importancia nosotros dedicaremos un capıtulocompleto al analisis de Fourier.

Como ejemplo de aplicacion de las ideas de analisis a senalespodemos retomar el caso de la senal de voz. Los primeros inten-tos para aplicar el analisis de Fourier a esta fueron realizadoscon dispositivos mecanicos como los basados en cuerdas, reso-nadores o filtros. Estos dispositivos realizaban una descompo-sicion de los sonidos analoga a la propuesta por Fourier peromediante principios mecanicos. De hecho pueden tambien es-tablecerse analogıas con el funcionamiento de la coclea dentronuestro oıdo, donde la membrana basilar constituye un com-plejo “analizador espectral”. Tambien se utilizaron dispositivosde tipo estroboscopico. Con el advenimiento de los medios elec-tronicos “modernos” comenzaron a publicarse algunos trabajos

Page 46: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

26 Capıtulo 1. Introduccion a senales

Figura 1.14. Descomposicion de la /A/ como en “father” en oscilagra-

mas obtenidos por medio de filtros dispuestos en octavas (reproducido

del artıculo original de Trendelenburg de 1935).

que intentaron evidenciar las caracterısticas y componentes fun-damentales de esta senal. Por ejemplo en 1935, con dispositivososcilograficos bastante sencillos y un banco de filtros analogicosdispuestos en octavas, se logro obtener los resultados de la figura1.14 para una vocal del ingles. Por la naturaleza cuasiperiodicade las vocales pronunciadas en forma aislada, eran la que masfacilmente se ajustaban a un analisis de este tipo.

La aparicion de las computadoras y la tecnologıa digitalpermite volver a aplicar el analisis de Fourier a la senal delhabla. La digitalizacion de las senales de sonido permite “intro-ducirlas” en la computadora para realizar calculos con ellas. Un

Page 47: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.6. Operaciones elementales con senales 27

problema inicial era que los calculos para obtener la transforma-da de Discreta de Fourier de una senal como esta demandabanmucho tiempo. En 1965 Cooley y Tukey publican un trabajoacerca de un algoritmo para el calculo rapido de la Transfor-mada Discreta de Fourier mediante una computadora. Esto dalugar al resurgimiento de los estudios basados en espectros paraaprovechar la flexibilidad y potencialidades de esta nueva herra-mienta.

Como vemos el analisis de Fourier ocupa un papel impor-tantısimo dentro de las tecnicas convencionales de analisis desenales, especialmente para aquellas senales derivadas de siste-mas lineales e invariantes en el tiempo, es por ello que dedicare-mos el Capıtulo 3 a su estudio. Recientemente han surgido unaserie de limitaciones de este tipo de analisis, por lo que se handedicado esfuerzos importantes para desarrollar tecnicas alter-nativas. Sin embargo los fundamentos de estas nuevas tecnicasquedan fuera del alcance de la presente obra.

1.6. Operaciones elementales con se-nales

Para la realizacion de los procesamientos antes menciona-dos se requieren diversas operaciones sobre las senales en cues-tion. En esta seccion discutiremos aquellas operaciones elemen-tales que permiten modificar a las senales. Estas operacionespueden clasificarse en unarias y binarias.

1.6.1. Operaciones unarias

Una operacion unaria involucra a una unica senal, mientrasque las binarias requieren dos senales. Algunas de las operacio-nes unarias son las transformaciones de rango, las transforma-ciones de dominio, muestreo e interpolacion.

Page 48: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

28 Capıtulo 1. Introduccion a senales

Transformaciones de rango

Las transformaciones de rango, las cuales modifican el ran-go de las senales, son definidas como:

xnuevo(t) = ρ(xviejo(t)) = (ρ xviejo) (t)

Entre este tipo de transformaciones, se pueden nombrar lasoperaciones de amplificacion, rectificacion y cuantizacion. Unejemplo es la cuantificacion uniforme, la cual se define como:

ρ(x) =

0 x < 0H int(x/H) 0 ≤ x < (N − 1)H(N − 1)H x ≥ (N − 1)H

donde int(·), denota la parte entera del argumento.Otro ejemplo es la rectificacion de onda completa, la cual

se define como:

ρ(x) = |x|

Transformaciones de domino

Las transformaciones de dominio, que modifican la variableindependiente, son definidas como:

xnuevo(t) = xviejo(τ−1(t))

Entre este tipo de transformaciones, se pueden nombrar lasoperaciones de expansion, compresion, reversion, traslacion, lascuales tienen la forma:

τ−1(t) = αt

si:

α > 1⇒ compresion,

Page 49: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.6. Operaciones elementales con senales 29

0 < α < 1⇒ expansion,

α = −1⇒ reversion.

Otro ejemplo de las transformaciones de dominio es la tras-lacion, la cual se define como:

τ−1(t) = t + θ

donde θ es una constante real.

Muestreo

Esta operacion pasa la variable independiente de un do-minio continuo a otro discreto. El muestreo puede ser uniforme(cuando el dominio es discretizado en forma uniforme) o no uni-forme. La siguiente figura esquematiza dicha operacion.

x ( t ) x* ( t )

Interpolacion

La interpolacion consiste en pasar una senal cuya variableindependiente pertenece a un dominio discreto, a una senal cuyavariable independiente pertenece a un dominio continuo. Estapuede ser expresada como:

x(t) =∑

n

x∗(nT )I(t− nT

T)

donde I es la funcion interpolante. Existen varias funciones in-terpolantes posibles, entre las cuales podemos nombrar:

Page 50: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

30 Capıtulo 1. Introduccion a senales

Funcion de interpolacion escalon:

Iescalon(t) =

1 0 ≤ t < 10 en otro caso

Funcion de interpolacion lineal:

Ilineal(t) =

1− |t| |t| < 10 0 en otro caso

Funcion de interpolacion sinc: Isinc(t) = sinc(π.t) donde:

sinc(t) =

sin(t)t

t 6= 0

1 t = 0

1.6.2. Operaciones binarias

Las operaciones binarias se realizan punto a punto entre dossenales. Entre ellas se puede nombrar a la adicion, sustraccion,multiplicacion y a la division.

1.7. Preguntas

1. ¿Como intervienen los criterios practicos y los errores demedicion y computo en la clasificacion fenomenologica desenales reales?

2. Clasifique las siguientes senales segun todos los criteriosque conoce:

a) la velocidad del viento en Mabuji-Maye (Zaire),

b) y(t) = sin(2π100t); t, y ∈ R,

c) la intensidad de luz del pixel (34,178) cuando se pro-yecta la pelıcula “El Nombre de la Rosa” (versioncinematografica del famoso libro de Umberto Eco),

Page 51: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.7. Preguntas 31

d) la corriente que circula por el cable del teclado de sucomputadora,

e) el delta de Dirac, definido como:

δ[n] =

1 si n = 00 ∀ n 6= 0

;n ∈ Z,−∞ < n <∞.

f ) la variacion anual de habitantes de origen asiatico enBuenos Aires,

g) la altura de las aguas en la costa del rıo Genil (Es-pana),

h) el consumo de combustible por minuto que requiereun F1 durante el Gran Premio de Monaco,

i) la suma de todas las emisiones con contenido fut-bolıstico en Radio Mitre,

j ) las ganancias mensuales y la cantidad de fallas en losproductos de Microsoft en los ultimos 10 anos,

k) el tango Adios Nonino (Astor Piazzola), interpretadopor el autor y su Quinteto Tango Nuevo, en Viena(1983),

l) la cantidad de veces que se abre la puerta del aulapor dıa a lo largo de un ano,

m) la cantidad de letras “a” por cada pagina de “ElAleph” (libro de J. L. Borges),

n) el contenido tematico de un canal de television porcable,

n) la cantidad de moleculas 2 Fe(OH)3 que se formanpor dıa,

o) el monto en dolares de la deuda externa de Argentinaen los ultimos 20 anos.

Page 52: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

32 Capıtulo 1. Introduccion a senales

3. Realice un lista de las senales que pueden medirse enel cuerpo humano y clasifıquelas segun los criterios mor-fologico, fenomenologico y dimensional.

4. ¿Por que razon se necesitan muchas realizaciones de unasenal aleatoria para poder comprobar experimentalmentesu estacionariedad?

5. Describa el proceso de verificacion de la ergodicidad de unasenal aleatoria asumiendo que el promedio y la desviacionestandar son medidas suficientes para su caracterizacionestadıstica.

6. Enuncie las hipotesis que se han hecho sobre la senal enel punto anterior y generalice la prueba de ergodicidadmediante el uso de medidas aptas para el caso mas general.

7. ¿Que beneficio practico brinda poder asumir que una de-terminada senal es ergodica?

8. ¿Por que decimos que el random de la computadora es“pseudo” aleatorio? ¿Puede una computadora digital ge-nerar una senal realmente aleatoria?

9. Analice el proceso de discretizacion en tiempo de un perıodode la senal x(t) = cos(2π10t). Incremente el perıodo demuestreo hasta no poder reconstruir la senal continua apartir de la senal de tiempo discreto.

10. Si posee una senal con la forma x(t) = sin(2π100t)+ r(t),donde r(t) es una senal aleatoria con distribucion uniformeen [−0,1 . . . 0,1], ¿como procederıa para calcular la relacionsenal ruido?

1.8. Trabajos practicos

Ejercicio 1: Genere y grafique las siguientes senales:

Page 53: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

1.8. Trabajos practicos 33

1. senoidal

2. sync

3. onda cuadrada

4. onda triangular

5. delta de Dirac

6. ruido aleatorio

Ejercicio 2: Realice las siguientes operaciones basicas so-bre una senal senoidal:

1. expansion

2. compresion

3. inversion

4. rectificacion

5. cuantizacion en 8 niveles

6. traslacion

Ejercicio 3: Discretice una senal senoidal con frecuencia5 Hz. y duracion 1 seg. Utilice las siguientes frecuen-cias de muestreo: 1000, 100, 25, 10, 4, 1 y 0.5 Hz.Grafique y analice el resultado en cada uno de loscasos.

Ejercicio 4: Discretice una senal senoidal con frecuencia4000 Hz. y duracion 2 seg., utilizando una frecuenciade muestreo de 129 Hz. Grafique el resultado y esti-me la frecuencia de la onda sinusoidal que se observaen la figura. Analice y obtenga conclusiones.

Ejercicio 5: Discretice una senal arbitraria con frecuen-cia de muestreo de 10 Hz y sobremuestreela mediantedistintos tipos de interpoladores a 4 veces la frecuen-cia de muestreo.

Page 54: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

34 Capıtulo 1. Introduccion a senales

Ejercicio 6: Genere una senal compleja del tiempo y gra-fıquela en 3 dimensiones.

Ejercicio 7: (∗) Genere una senal aleatoria con distribu-cion gaussiana y verifique su ergodicidad.

Ejercicio 8: Lea dos senales sonoras desde archivos (p.ej., en formato WAV) y luego sumelas4. Guarde elresultado en un archivo del mismo formato y oigalas tres senales.

Ejercicio 9: Utilice una senal sonora conocida y sumeleun ruido aleatorio. Oiga el resultado y compare conla senal original.

Ejercicio 10: Calcule la relacion senal ruido de la mezcladel ejercicio anterior y vuelva a “ensuciar” la senalcon relacion senal ruido de 0 dB y 100 dB. Grafique,oiga y compare los resultados.

Ejercicio 11: Utilice una senal sonora conocida y multi-plique cada uno de sus elementos por una constante.Oiga el resultado y compare con la senal original.

Ejercicio 12: Utilice una senal sonora conocida y mul-tiplique cada uno de sus elementos por una rectadecreciente que tenga valor 1 en el primer elementoy 0 en el ultimo. Oiga el resultado y compare con lasenal original.

4Resultarıa interesante que usted grabara la voz de dos personas pro-nunciando una frase corta. Puede hacerlo con un microfono y la Grabadorade Sonidos (en Windows) o el comando rec en Linux.

Page 55: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Bibliografıa 35

Bibliografıa

[1] A.V. Oppenheim, A.S. Willsky, S. H. Nawab, y G. Ma-ta Hernandez. Senales y sistemas. Prentice-Hall Hispanoa-mericana, Mexico, 2a. edicion (espanol), 1998.

[2] A.V. Oppenheim y R. Shaffer. Digital Signal Processing.Pearson Higher Education, 1986.

[3] J.G. Proakis y D.G. Manolakis. Tratamiento digital desenales. Prentice Hall, 1a. edicion (espanol), 1998.

[4] H. Kwakernaak, R. Sivan, and R.C.W. Strijbos. ModernSignals and Systems. Prentice Hall, New Jersey, 1991.

[5] A. Papoulis. Sistemas y Circuitos Digitales y Analogicos.Marcombo, 1978.

[6] H. Skilling. Circuitos en Ingenierıa Electrica. Cia. Ed.Continental, Mexico, 1987.

[7] N.K. Sinha. Linear systems. John Wiley, New York, 1991.

[8] L.E. Franks. Teorıa de la senal. Reverte, Barcelona, 1975.

[9] R.A. Gabel y R.A. Roberts. Senales y sistemas lineales.Ed. Limusa S.A., Mexico, 1975.

[10] E. Brigham. Fast Fourier Transform and Its Applications.Prentice Hall, 1a. edicion, 1988.

[11] I. Newton. New theory about light and colors. PhilosophicalTransactions of the Royal Society, 80(7):3075–3087, 1672.

[12] F. Trendelenburg. On the physics of speech sounds. JASA,7(1):142–147, 1935.

[13] J. W. Cooley and J. W. Tukey. An algorithm for machi-ne calculation of complex Fourier series. Mathematics ofComputation, 19(90):297–301, April 1965.

Page 56: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

36 Capıtulo 1. Introduccion a senales

Page 57: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Capıtulo 2

Espacio de senales

Diego Milone, Leandro Di Persia

Temas a tratar

• Senales y vectores.

• La relacion entre el algebra lineal y las senales.

• Espacios de senales y espacios vectoriales.

• Bases y transformaciones lineales.

Objetivos

• Ver a las senales como elementos de un espacio vectorial.

• Reinterpretar conceptos basicos del algebra lineal en elcontexto del procesamiento de senales.

• Valorar la importancia del producto interno en el proce-samiento de senales.

• Presentar los fundamentos generales de las transformadaslineales mas usadas.

• Aplicar las herramientas en estudio en problemas sencillos.

37

Page 58: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

38 Capıtulo 2. Espacio de senales

2.1. Introduccion

La mayorıa de las personas estan acostumbradas a extraerinformacion con gran sensibilidad de senales representadas comouna coleccion complicada de puntos en un marco simple, comoes el espacio bidimensional de las imagenes. En esta unidad in-corporaremos a las senales en un marco mas estructurado: elespacio vectorial. Considerando a las senales como vectores deun espacio n-dimensional, podremos aprovechar todas las pro-piedades de la estructura algebraica de los espacios vectorialese interpretar el procesamiento de las senales desde una perspec-tiva conceptual muy sencilla.

2.1.1. Desarrollo intuitivo

Suponga que tomamos mediciones de temperatura a inter-valos de 1 minuto, simplemente con un termometro. Al cabo dedos minutos habremos obtenido dos valores de temperatura, porejemplo, 2 y 3 grados. Estamos acostumbrados a representar es-tos valores en una grafica en donde el eje de las abscisas indicael tiempo y el de las ordenadas la magnitud de la temperatura.

T 2 = 3

n

T

2 1

T 1 = 2

Page 59: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.1. Introduccion 39

Sin embargo, podemos tambien representar estos valorescomo un vector en un espacio de dos dimensiones:

3

T 1

T 2

2

Ası, vemos que esta senal de dos muestras puede ser repre-sentada mediante un vector de dos componentes reales, es decir,un vector en R2.

Un minuto despues habremos obtenido una nueva medi-cion, supongamos 1 grado, por lo que nuestra senal ya ten-dra tres muestras y podemos representarla con un vector entres dimensiones como el de la Figura 2.1.

Siguiendo con esta idea, vemos que al cabo de una horatendremos una senal de 60 muestras, que podrıa ser interpre-tada como un vector en R60 (pero no podremos representarlograficamente).

¿Es posible aplicar estas ideas a senales continuas? ¿Comorepresentarıa la senal s(t) = sin(ωt)? ¿En que dimension estarıael vector?

Al tratarse de una senal continua, en cualquier intervaloque consideremos habra infinitos valores. Ası podemos ver a lassenales continuas como vectores en R∞, es decir, vectores coninfinitos elementos o muestras.

Page 60: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

40 Capıtulo 2. Espacio de senales

3

T 1

T 2

2 1

T 3

Figura 2.1. Una senal de 3 muestras en R3

Page 61: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.2. Senales, vectores y algebra lineal 41

Viendo a las senales como vectores podemos aprovecharmuchas herramientas del algebra lineal para entender el pro-cesamiento de senales. A continuacion haremos un repaso deciertos conceptos de algebra lineal y estudiaremos su aplicaciona la Teorıa de Senales.

2.2. Senales, vectores y algebra lineal

Durante los cursos de algebra acostumbramos tratar convectores. Definıamos a estos objetos como colecciones o arreglosde datos que forman una entidad independiente. Solemos asociarlos vectores con la representacion grafica de puntos en el espa-cio bidimensional y tridimensional. Como vimos anteriormente,estas ideas pueden aplicarse a las senales y esta interpretaciongeometrica nos brindara un enfoque simple para comprenderprocesos complicados en senales.

En forma general, podemos decir que una senal en el espa-cio N -dimensional es un vector [x1, x2, . . . , xN ], definido comouna N -upla ordenada de numeros. Para estos vectores utiliza-mos la notacion:

x = [xn] ; n ∈ N;xn ∈ R;x ∈ RN (2.1)

De forma similar, para el caso de senales continuas utiliza-mos la notacion:

x = [x(t)] ; t ∈ R;x(t) ∈ R;x ∈ R∞ (2.2)

2.2.1. Normas

Generalmente es util tener alguna medida del tamano delas senales. La norma provee este tipo de medida. La norma deun vector x es un numero real positivo que toma el valor 0 solocuando x = 0. Existen muchas normas y cada una define un

Page 62: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

42 Capıtulo 2. Espacio de senales

tipo especial de medida para un vector. De acuerdo al tipo deproblemas que se esten tratando, algunas seran mas apropiadasque otras. Una norma muy utilizada es la norma-p, definidacomo:

‖x‖p =

(

N∑n=1|xn|p

)1/p

, 1 ≤ p <∞

supn∈[1,N ]

|xn| , p =∞

Para el caso de senales continuas se define esta norma segun:

‖x‖p =

(

∞∫−∞|x(t)|p dt

)1/p

, 1 ≤ p <∞

supt∈R|x(t)| , p =∞

Si p = 1, tenemos la norma 1, tambien conocida comoaccion de la senal:

‖x‖1 =N∑

n=1|xn| o ‖x‖1 =

∞∫−∞|x(t)| dt

Si p = 2, tenemos la norma 2:

‖x‖2 =

√(N∑

n=1|xn|2

)o ‖x‖2 =

√√√√( ∞∫−∞|x(t)|2 dt

)

La norma 2 da una idea del tamano del objeto en un sen-tido fısico, especıficamente en el caso de vectores se trata de lalongitud de estos. Esta norma esta directamente relacionada conla energıa de la senal, que se define como:

E(x) = ‖x‖22

Page 63: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.2. Senales, vectores y algebra lineal 43

Si p =∞, tenemos la norma infinito:

‖x‖∞ = supn∈[1,N ]

|xn| o ‖x‖∞ = supt∈R|x(t)|

que en el analisis de senales corresponde a la amplitud de lasenal:

A(x) = ‖x‖∞

En la Figura 2.2 se pueden observar la energıa y la amplitudde una senal en R2.

x 1

x 2

E ( x ) 1/2

A ( x )

Figura 2.2. Representacion grafica de la energıa y amplitud de una

senal.

En la Figura 2.3 se muestra una representacion grafica dela norma-p de senales en R2 para diferentes valores de p.

Existen otras medidas de interes para caracterizar las senalesy, en algunos casos, estas medidas estan directamente relaciona-das con la norma. Cuando la energıa de una senal no es finita,es util definir su potencia o valor cuadratico medio como:

Page 64: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

44 Capıtulo 2. Espacio de senales

norma−10 norma−3

norma−2 norma−1

norma−0.5 norma−0.1

Figura 2.3. Varios ejemplos de la norma-p para senales en R2. En el

centro de cada grafica las senales tienen ambas componentes nulas.

Page 65: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.2. Senales, vectores y algebra lineal 45

P (x) = lımN→∞

12N

N∑n=−N

|xn|2 o P (x) = lımT→∞

12T

T∫−T

|x(t)|2 dt

Otra medida muy util es la raiz del valor cuadratico medio(RMS, del ingles root mean square), definida como:

RMS(x) =√

P (x)

Por ultimo, el valor medio de una senal se define como:

m(x) = lımN→∞

12N

N∑n=−N

xn o m(x) = lımT→∞

12T

T∫−T

x(t)dt

2.2.2. Producto interno

Dados dos vectores x,y ∈ RN , se define su producto interno〈x,y〉 ∈ R como:

〈x,y〉 = x1y∗1 + x2y

∗2 + . . . + xNy∗N =

N∑i=1

xiy∗i

donde el ∗ representa el conjugado en caso de tratarse de va-lores complejos. En la bibliografıa se pueden encontrar otrasnotaciones como x · y o tambien como un producto matricialxyT . Cuando tratamos con senales continuas el producto inter-no queda definido como:

〈x,y〉 =∫ ∞

−∞x(t)y∗(t)dt

De esta ecuacion podemos ver que el producto interno deun vector consigo mismo es igual al cuadrado de su norma 2 (esdecir la energıa de la senal):

‖a‖22 = 〈a,a〉 = a · a

Page 66: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

46 Capıtulo 2. Espacio de senales

El producto interno de vectores tiene una clara interpreta-cion geometrica relacionada con la proyeccion o componente deun vector sobre otro.

Definimos la proyeccion de x sobre y como:

proyy(x) = ‖x‖2 cos(φ)

donde φ es el angulo que forman los vectores. Otra forma decalcular el producto interno es:

〈x,y〉 = ‖x‖2 ‖y‖2 cos(φ)

y ası obtenemos:

proyy(x) =〈x,y〉‖y‖2

Podemos ver que el producto interno nos da una idea delaporte de una senal en otra. Para independizarnos de la energıade la senal con la que estamos comparando, dividimos el pro-ducto interno por la norma 2 de esta (en un espacio euclıdeo).Esta interpretacion del producto interno como proyeccion deuna senal en otra puede verse graficamente en la Figura 2.4.

En el caso particular de que la senal sobre la que estamosproyectando tenga norma 2 unitaria, el producto interno es di-rectamente una medida del “parecido” entre ambas senales. Enla Figura 2.5 se muestran tres casos importantes para vectoresen dos dimensiones y su equivalente en senales continuas.

Una vez aclarados estos conceptos basicos sobre vectoresy su interpretacion en el ambito de las senales, pasaremos aformalizar lo relacionado con espacios vectoriales.

Page 67: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.3. Espacios vectoriales y senales 47

x

y

proy y x

Figura 2.4. Proyeccion de la senal x en la direccion de y.

2.3. Espacios vectoriales y senales

2.3.1. Conjunto de senales

Consideremos un conjunto de senales S. Para determinarsi una senal pertenece al conjunto S utilizamos una propiedad oprueba P . Un elemento x pertenecera a S si cumple con esta pro-piedad, lo que podemos expresar como: S = x/P. La eleccionde P debe necesariamente adaptarse al problema en cuestion. Acontinuacion se daran algunos ejemplos de conjuntos de senalesque se encuentran frecuentemente en los problemas de analisisde la senal.

Senales sinusoidales:

Page 68: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

48 Capıtulo 2. Espacio de senales

Iguales

Ortogonales

Opuestas

Vectores Señales Produto Producto interno

< x , y > > 0

< x , y > = 0

< x , y > < 0

Figura 2.5. El producto interno y su significado en teorıa de senales.

Page 69: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.3. Espacios vectoriales y senales 49

Ss = x/x(t) = A sin(2πft + θ)donde t, A, f, θ ∈ R, t representa al tiempo, A a la amplitud, fa la frecuencia y θ a la fase. De esta forma Ss contiene todaslas posibles sinusoides, contemplando todos los valores posiblesde amplitud, fase y frecuencia.

Senales periodicas:

Sp = x/x(t) = x(t + T )donde t, T ∈ R, t representa al tiempo, y T es el perıodo de lasenal.

Senales acotadas en amplitud :

Sa = x/ ‖x‖∞ ≤ K

donde K ∈ R+ es una constante. Este es el conjunto de senalescuyos valores instantaneos estan acotados en magnitud por K.

Senales de energıa limitada:

Se =x/ ‖x‖22 ≤ K

donde K ∈ R+ es una constante. Este es el conjunto de senalescon energıa menor o igual a K.

2.3.2. Espacios de senales

Habiendo reunido en un conjunto todas las senales que pre-sentan alguna propiedad comun, estamos en condiciones de exa-minar las caracterısticas distintivas de los elementos dentro delconjunto. Una senal en particular solo interesa en relacion conlas demas senales del conjunto. Por ejemplo, podemos preguntaracerca de una senal respecto a las demas: ¿tiene mas energıa?,¿dura mas?, ¿fluctua mas rapidamente?, ¿tiene mas ceros?, ¿tie-ne un valor de pico mayor?, etc. Un metodo general para carac-terizar la diferencia entre dos elementos de un conjunto consiste

Page 70: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

50 Capıtulo 2. Espacio de senales

en asignar a cada par de elementos un numero real positivo. Es-te se interpreta como distancia entre los elementos y el propioconjunto comienza a tomar un caracter geometrico. Para definiruna distancia se necesita un funcional d : x, y → R que se apli-que a todos los pares de elementos del conjunto. Dicho funcionalse denomina metrica si cumple las siguientes propiedades:

i) d(x, y) ≥ 0 ∧ d(x, y) = 0⇔ x = y,

ii) d(x, y) = d(y, x) (simetrıa),

iii) d(x, z) ≤ d(x, y) + d(y, z) (desigualdad del triangulo).

A un conjunto S al que le hemos asociado una metricaparticular d le llamamos espacio metrico. En el caso de que elconjunto S contenga senales, denominamos al par (S, d) espaciode senales. Cabe destacar que estas definiciones no implicanexigirle ninguna propiedad extra a los elementos del conjunto,simplemente se define la manera de medir las distancias entrelos elementos. Por ejemplo, podemos definir el espacio metrico(R, d) a partir del conjunto R de numeros reales y una metricad(x, y) = |x− y| ; x, y ∈ R. Esta es la metrica usual sobre R.

Debe notarse que dos metricas diferentes, definidas sobreel mismo conjunto de senales, forman dos espacios de senalesdiferentes. Si al conjunto Ss de senales sinusoidales, le asociamosla metrica definida por la norma 1:

da(x,y) = ‖x− y‖1

obtenemos el espacio de senales (Ss, da). Si al mismo conjuntoSs le asociamos otra metrica definida por la norma 2:

db(x,y) = ‖x− y‖2

obtenemos otro espacio de senales diferente (Ss, db).

Page 71: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.3. Espacios vectoriales y senales 51

2.3.3. Espacios vectoriales

Una vez que hemos definido un espacio de senales, es decir,un conjunto particular de senales con una metrica asociada, es-tamos interesados en manipularlo, para lo cual necesitamos unaestructura algebraica simple. Dicha estructura la proporcionaun espacio vectorial, el cual se define a continuacion.

Un espacio vectorial S es un cuadruplete (S, K,+, ·) queposee un conjunto de elementos llamados vectores, un espacio deescalares, una operacion de adicion y una operacion de productopor un escalar, que satisfacen las siguientes propiedades:

i. La adicion es cerrada:x + y ∈ S; ∀ x,y ∈ S

ii. La adicion es conmutativa:x + y = y + x; ∀ x,y ∈ S

iii. La adicion es asociativa:x + (y + z) = (x + y) + z; ∀ x,y, z ∈ S

iv. Existe un unico elemento 0 ∈ S que es neutro respecto ala adicion:x + 0 = x; ∀ x ∈ S

v. El producto por un escalar es cerrado:αx ∈ S; ∀ x ∈ S ∧ ∀ α ∈ K

vi. El producto por un escalar es asociativo:α(βx) = (αβ)x; ∀ x ∈ S ∧ ∀ α, β ∈ K

vii. El producto por un escalar es distributivo segun:α(x + y) = αx + αy; ∀ x,y ∈ S ∧ ∀ α ∈ K

viii. El producto por un escalar es distributivo segun:(α + β)x = αx + βx; ∀ x ∈ S ∧ ∀ α, β ∈ K

Page 72: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

52 Capıtulo 2. Espacio de senales

ix. Existe un unico elemento 1 ∈ K que es neutro respecto alproducto por un escalar:1x = x; ∀ x ∈ S

Para que un conjunto de vectores dado constituya un es-pacio vectorial, segun esta definicion deben cumplirse todas laspropiedades anteriores. Basta con que una sola no se cumplapara que el conjunto no constituya un espacio vectorial. Si bienen esta definicion nos referimos a espacios vectoriales como con-juntos de vectores sin importar su naturaleza, en el contextoque nos interesa nos centraremos en los vectores como senalesdiscretas o continuas segun se definieron en las ecuaciones (2.1)y (2.2). En este caso, el espacio de escalares es generalmenteK = C. Ademas, la operacion de adicion se define como:

x + y = [xi + yi]i∈[1,N ]⊂N o x + y = [x(t) + y(t)]t∈R

y el producto por un escalar α ∈ K queda definido segun:

αx = [αxi]i∈[1,N ]⊂N o αx = [αx(t)]t∈R

La ventaja de demostrar que un conjunto de senales es unespacio vectorial radica en la existencia de toda una serie depropiedades que se cumplen para cualquier espacio vectorial,sin importar su naturaleza. Es decir, una vez que demostramosque un conjunto de senales es un espacio vectorial, podemos darpor sentadas muchas propiedades y aplicarlas sin necesidad dedemostrarlas.

Subespacios

Cuando sabemos que un conjunto de senales constituye unespacio vectorial V, podemos demostrar que un subconjunto novacıo de estas tambien constituye un espacio vectorial V0, sim-plemente verificando que este subconjunto sea cerrado ante la

Page 73: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.3. Espacios vectoriales y senales 53

adicion y el producto por un escalar definidos en V. A este sub-conjunto de senales, que a su vez es un espacio vectorial, se lodenomina subespacio vectorial.

Por ejemplo, sea el conjunto de las senales senoidales defrecuencia fija f = 5 Hz:

Ss5 = x/x(t) = A sin(2π5t + θ)

donde t, A, θ ∈ R, t representa al tiempo, A a la amplitud y θ ala fase. Ss5 junto con las operaciones de suma y multiplicacionpor un escalar constituye un espacio vectorial Ss5. Ahora po-demos definir el subconjunto de las senales sinusoidales de faseconstante θ = 2 radianes:

Ss52 = x/x(t) = A sin(2π5t + 2)

el cual claramente es cerrado frente a la adicion y a la multi-plicacion por un escalar, lo que demuestra que es un subespaciovectorial de Ss5.

Espacios normados

Dados un espacio vectorial y una definicion de norma, sedice que este es un espacio normado si la norma es finita paratodos sus elementos. Basandonos en la definicion de norma-p,podemos definir un espacio normado en base al conjunto:

x/‖x‖p < +∞

cuando se trata de senales discretas se utiliza la notacion `p(R)y cuando las senales son continuas Lp(R).

En el caso particular de que utilicemos la norma 1 que-da definido el espacio de las senales absolutamente integrablesL1(R). Cuando se utiliza la norma 2 se define el espacio de lassenales cuadrado integrables o de energıa finita L2(R). De formasimilar, estos ejemplos son aplicables a las senales discretas en`1(R) y `2(R).

Page 74: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

54 Capıtulo 2. Espacio de senales

2.4. Bases y transformaciones

2.4.1. Dependencia lineal y conjuntos genera-dores

Dado un conjunto de N vectores X0 = xi, se llama com-binacion lineal de los vectores xi a una expresion de la forma:

x =N∑

i=1

αixi

donde los αi son escalares.Se dice que un vector x es linealmente dependiente del

conjunto de vectores X0 si y solo si se puede escribir a x comouna combinacion lineal de los vectores xi. En caso contrario sedice que el vector x es linealmente independiente del conjuntode vectores X0.

Al variar los coeficientes αi, es decir, al generar todas lascombinaciones lineales posibles de los xi, el resultado es un con-junto X de nuevos vectores xj que a su vez heredan las propie-dades de los xi que los generaron, es decir, el nuevo conjunto Xconstituye a su vez un espacio vectorial que denominaremos X .Se dice que el conjunto X0 es un conjunto generador del espacioX , si para todo vector x ∈ X existe el conjunto de escalaresA = αi tales que x se pueda expresar como una combinacionlineal de los elementos de X0.

Un conjunto de vectores se dice que es linealmente inde-pendiente si la relacion

N∑i=1

αixi = 0

solo puede satisfacerse siendo nulos todos los escalares αi. Dichode otro modo, un conjunto es linealmente independiente si nin-

Page 75: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.4. Bases y transformaciones 55

guno de sus vectores puede expresarse como combinacion linealde los demas vectores del mismo conjunto.

2.4.2. Bases

Dado un espacio vectorial X , se dice que el conjunto devectores X0 constituyen una base de X si X0 es linealmenteindependiente y genera a X . Es decir, para que X0 sea una basedel espacio vectorial, cualquier vector perteneciente a X debepoder escribirse como una combinacion lineal de los vectoresde X0 y ademas, ninguno de los vectores de X0 debe poderescribirse como una combinacion lineal de los demas.

Se llama dimension D de un espacio vectorial X al numerode vectores que tiene una base de dicho espacio. Se puede de-mostrar que cualquier subconjunto de N > D vectores de X ,sera linealmente dependiente. Cuando hablamos de senales nosinteresa especialmente el espacio RN y un resultado util en estecaso es que todo conjunto de N vectores linealmente indepen-dientes en RN es una base para RN . Dado que todas las basesde un espacio vectorial tienen el mismo numero de vectores, to-das las bases para generar senales arbitrarias de N elementosdeberan tener N senales de N elementos cada una.

2.4.3. Ortogonalidad y ortonormalidad

Se dice que un conjunto X0 es ortogonal si se verifica quepara todos sus elementos:

〈xi,xj〉 = 0 ∀i 6= j y〈xi,xj〉 = k ∀i = j

donde k es una constante escalar distinta de cero. En particular,si la constante k = 1, se dice que el conjunto es ortonormal.

Si X0 es ademas una base para espacio vectorial X , estabase posee la ventaja de que cuando se quiere expresar un vec-

Page 76: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

56 Capıtulo 2. Espacio de senales

tor como una combinacion lineal de los elementos de la base,los coeficientes αi se puede obtener simplemente mediante elproducto interno entre el vector y cada uno de los elementosde la base. Por ejemplo, si queremos expresar x como una decombinacion lineal de la base ortonormal en R3 formada porX0 = x1,x2,x3:

x = α1x1 + α2x2 + α3x3

Si quisieramos obtener α1, se puede hacer el producto in-terno a ambos lados por x1:

〈x,x1〉 = α1 〈x1,x1〉+ α2 〈x2,x1〉+ α3 〈x3,x1〉

Pero por ser una base ortogonal 〈x2,x1〉 = 〈x3,x1〉 = 0 ypor ser ortonormal 〈x1,x1〉 = 1. De esta forma se puede obtenerα1 simplemente mediante la proyeccion α1 = 〈x,x1〉. Es decir,para cualquier i tenemos:

αi = 〈x,xi〉 =∑

n

xnxin (2.3)

Es decir, cada coeficiente es una medida del parecido entreel vector y el elemento correspondiente de la base. Como vimosantes, conceptualmente αi = 〈x,xi〉 es la componente de la senalx en xi.

Para hacer una extension a senales continuas, suponga quese quiere representar la senal x(t) con una combinacion lineal delconjunto ortogonal de senales X0 = x1(t), x2(t), . . . , xN (t):

x(t) ≈ α1x1(t) + α2x2(t) + · · ·+ αNxN (t)

De forma similar al ejemplo anterior, haciendo el productointerno a ambos lados con una de las senales del conjunto:

Page 77: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.4. Bases y transformaciones 57

∫x(t)xi(t)dt = α1

∫x1(t)xi(t)dt + α2

∫x2(t)xi(t)dt + · · ·+

+αi

∫xi(t)xi(t)dt + · · ·+ αN

∫xN (t)xi(t)dt

Por ser X0 un conjunto ortogonal se cumple∫

xi(t)xj(t)dt =0 ∀i 6= j y ası se puede obtener:

αi =∫

x(t)xi(t)dt∫xi(t)xi(t)dt

=〈x,xi〉〈xi,xi〉

Si ademas el conjunto es ortonormal:

αi = 〈x,xi〉 =∫

x(t)xi(t)dt (2.4)

2.4.4. Aproximacion de senales

Queremos aproximar una senal y ∈ RM mediante una com-binacion lineal de los elementos del conjunto ortogonal X0 =x1, . . . ,xk, . . . ,xN. En esta aproximacion se desea encontrarlos αk de forma que el error entre la combinacion lineal y lasenal sea mınimo. Para realizar esta minimizacion es necesariodefinir un criterio para medir el error. Una forma intuitiva demedir ese error es el cuadrado de la longitud del vector dife-rencia entre la senal y su aproximacion. Esta medida del errortambien se conoce como error cuadratico total :

ε = ‖e‖22 = ‖y − y‖22 =

∥∥∥∥∥y −N∑

i=1

αixi

∥∥∥∥∥2

2

=M∑

j=1

(yj −

N∑i=1

αixij

)2

Para encontrar el mınimo es necesario hacer ∇αε = 0:

Page 78: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

58 Capıtulo 2. Espacio de senales

0 =∂ε

∂αk

0 =∂

M∑j=1

(yj −

N∑i=1

αixij

)2

∂αk

0 = 2M∑

j=1

(yj −

N∑i=1

αixij

) ∂

(yj −

N∑i=1

αixij

)∂αk︸ ︷︷ ︸

=0 ∀i 6=k

0 = −2M∑

j=1

(yj −

N∑i=1

αixij

)xkj

0 =M∑

j=1

(yjxkj −

N∑i=1

αixijxkj

)

0 =M∑

j=1

yjxkj −M∑

j=1

N∑i=1

αixijxkj

M∑j=1

N∑i=1

αixijxkj =M∑

j=1

yjxkj

N∑i=1

αi

M∑j=1

xijxkj = 〈y,xk〉

N∑i=1

αi 〈xi,xk〉︸ ︷︷ ︸=0 ∀i 6=k

= 〈y,xk〉

αk 〈xk,xk〉 = 〈y,xk〉

αk =〈y,xk〉〈xk,xk〉

Page 79: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.4. Bases y transformaciones 59

Ademas, si el conjunto X0 es ortonormal obtenemos αk = 〈y,xk〉.Con este resultado se generalizan las ecuaciones (2.3) y (2.4) de-mostrando que el conjunto de coeficientes obtenidos medianteproyecciones ortogonales minimiza el criterio del error en unespacio euclıdeo.

Por ejemplo, suponga que queremos aproximar v1 con v2

en R2, es decir, v1 = αv2. A partir de las ecuaciones anteriorespodemos calcular α como:

α =〈v1,v2〉〈v2,v2〉

=〈v1,v2〉‖v2‖2 ‖v2‖2

=‖v1‖2 cos(θ)‖v2‖2

Es decir, el valor de α es la proyeccion ortogonal de v1 sobrev2 normalizada por la longitud de v2. Esto se puede apreciar enel diagrama de vectores de la Figura 2.6, donde se pueden verv1,v2 y v1, la aproximacion de v1 en la direccion de v2. Tambiense aprecia el error de la aproximacion ortogonal ε = ‖v1 − v1‖y otros errores proyecciones no ortogonales que —como las quese indican en lıneas punteadas— siempre son mayores.

v 1

v 1 ~ v 2

Error de la aproximación mediante proyección ortogonal

Errores de aproximaciones con proyecciones no ortogonales

Figura 2.6. Aproximacion de vectores utilizando proyecciones orto-

gonales. Se puede observar que la proyeccion es la que minimiza el

error en el sentido de la norma euclıdea

Note que que no estamos diciendo que el vector v2 sea elmejor para aproximar v1, sino que la mejor manera de calcularα es a traves de una proyeccion ortogonal.

Page 80: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

60 Capıtulo 2. Espacio de senales

Esto mismo que hemos demostrado para senales discretas,se verifica para senales continuas. Por ejemplo, suponga quequeremos representar una senal continua, definida en el intervalo[−1, 1] segun:

y(t) =−1 ∀t < 0

1 ∀t ≥ 0

Para representar esta senal podemos usar un conjunto defunciones de Legendre, que son ortonormales en el intervalo[−1, 1]. Estas funciones se pueden calcular a partir de las si-guientes ecuaciones:

φ0(t) =1√2

φ1(t) =

√32

t

φ2(t) =

√52

(32t2 − 1

2

)φ3(t) =

√72

(52t3 − 3

2t

)...

φn(t) =

√2n + 1

21

2nn!dn

dtn(t2 − 1)n

Utilizando las cuatro primeras funciones y el producto in-terno se puede encontrar una representacion aproximada de lasenal propuesta:

Page 81: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.4. Bases y transformaciones 61

α0 =∫ 1

−1

√12

y(t)dt = 0

α1 =∫ 1

−1

√32

t y(t)dt =

√32

α2 =∫ 1

−1

√52

(32t2 − 1

2

)y(t)dt = 0

α3 =∫ 1

−1

√72

(52t3 − 3

2t

)y(t)dt = −

√732

La aproximacion utilizando estos αk queda de la forma:

y(t) ≈√

32

(√32t

)+

(−√

732

)(√72

(52t3 − 3

2t)))

=4516

t− 3516

t3

Se puede demostrar que si aumentamos el numero de fun-ciones aproximantes, el error se ira reduciendo. Las senales conti-nuas constituyen un espacio vectorial de dimension infinita, porlo que utilizando infinitas funciones aproximantes linealmenteindependientes el error se hace cero. En el caso de senales mues-treadas, tendremos vectores de RM y la aproximacion sera exac-ta si se usan M vectores linealmente independientes en RM . Co-mo ya se menciono, M vectores linealmente independientes dedimension M generan el espacio RM , y por lo tanto constituyenuna base.

2.4.5. Cambio de base

Para un espacio vectorial dado existen infinitas bases. Detodas estas bases, cuando representamos una senal simplemente

Page 82: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

62 Capıtulo 2. Espacio de senales

mediante x = [4, 8, 9], estamos utilizando implıcitamente la basecanonica:

Xe = e1, e2, e3 =

1

00

010

001

ya que la senal x puede escribirse como:

x = e1α1 + e2α2 + e3α3 = e14 + e28 + e39

Para hacer una referencia explıcita a la base en que se re-presenta la senal usaremos la notacion xXe = [α1, α2, α3]. Sinembargo, tambien podrıamos representar esta misma senal enotra base de R3. Por ejemplo, si utilizaramos la base ortonor-mal :

X1 = x1,x2,x3 =

1/

√2

1/√

20

−1/√

61/√

62/√

6

1/√

3−1/√

31/√

3

podemos expresar la senal x como x = x1β1 + x2β2 + x3β3

donde simplemente βi = 〈x,xi〉 (por ser una base ortonormal).Utilizando este producto interno encontramos la representacionde la senal x en la base X1 como:

xX1 = [β1, β2, β3] = [6√

2,113

√6,

53

√3]

Hay que tener en cuenta que tanto xX1 como xXeson la

misma senal x vista desde diferentes perspectivas. Ambas repre-sentaciones contienen la misma informacion pero se ha efectuadoun cambio de base. Podemos expresar xXe a partir de xX1 como:

xXe = x1β1+x2β2+x3β3 = x16√

2+x2113

√6+x3

53

√3 = [4, 8, 9]

Page 83: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.4. Bases y transformaciones 63

que en forma la matricial nos queda:

α1

α2

α3

=

1/√

21/√

20

−1/√

61/√

62/√

6

1/√

3−1/√

31/√

3

β1

β2

β3

o simplemente xXe = MxX1 , donde la matriz M contiene comocolumnas los vectores de la base X1. Ahora observe que en elcalculo de los coeficientes βi = 〈x,xi〉 tambien podemos expre-sar los productos internos como un producto matricial:

β1

β2

β3

=

[ 1/√

2 1/√

2 0 ][ −1/

√6 1/

√6 2/

√6 ]

[ 1/√

3 −1/√

3 1/√

3 ]

α1

α2

α3

o simplemente xX1 = MT xXe .

Podemos generalizar este ejemplo mediante la definicion decambio de base. Sean X0 = x1, . . . ,xN y Y = y1, . . . ,yNdos bases ordenadas para el mismo espacio vectorial V de di-mension N , para cualquier vector v en V las coordenadas de ven la base X0, vX0 , y las coordenadas de v en la base Y0, vY0 ,se relacionan por:

vX0 = MvY0

vY0 = M−1vX0

donde M es la matriz no singular de N × N cuyos elementosestan dados por:

yi = m1ix1 + . . . + mNixN

es decir, los elementos mki son los coeficientes que permitenexpresar el vector yi de la base Y0, como combinacion lineal delos vectores xk de la base X0.

Page 84: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

64 Capıtulo 2. Espacio de senales

La matriz M se denomina matriz de transicion o matriz decambio de base X0 a Y0. Su inversa sera la matriz de transicionde la base Y0 a la base X0. En el ejemplo anterior debe notarseque en lugar de M−1 hemos usado MT . Esto fue posible porquela base era ortonormal, y en este caso puede demostrarse que lainversa de la matriz de transicion es igual a su transpuesta. Enla Figura 2.7 se resume el proceso del cambio de base desde unaperspectiva mas cercana al procesamiento de senales mediantetransformaciones lineales.

n

n

n

n

n

n

n

n

φ [1 , n ]

n x [ n ]

+8 1/2

- 8 1/2

+8 1/2

- 8 1/2

+8 1/2

- 8 1/2

+8 1/2

- 8 1/2

+8 1/2

- 8 1/2

+8 1/2

- 8 1/2

+8 1/2

- 8 1/2

+8 1/2

- 8 1/2

+8 1/2

- 8 1/2

φ [2 , n ]

φ [3 , n ]

φ [4 , n ]

φ [5 , n ]

φ [6 , n ]

φ [7 , n ]

φ [8 , n ]

k x [ k ]

+2 1/2

- 2 1/2

< x , φ [1] >

< x , φ [8] >

< x , φ [7] >

< x , φ [6] >

< x , φ [5] >

< x , φ [4] >

< x , φ [3] >

< x , φ [3] >

Figura 2.7. El cambio de base visto desde la perspectiva del procesa-

miento de senales

Para extender conceptualmente esta definicion a senales

Page 85: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.4. Bases y transformaciones 65

continuas hay que tener en cuenta que:

1. cada elemento de la base es ahora una senal en R∞, quepuede representarse como xi = [xi(t)],

2. la base debe contar con infinitos elementos para podergenerar el espacio R∞, ahora resultara mas adecuado re-presentar los elementos de esta base como [φ(f, t)], queequivaldrıa a pensar en una matriz de ∞×∞ elementosque se acceden con los “ındices continuos” f y t,

3. en el cambio de base deberemos hacer infinitos productosinternos, cada uno de los cuales se calcula mediante:

y(f) =∫ ∞

−∞x(t)φ(f, t)dt.

Como ya mencionamos, la senal en cualquier base es lamisma, un cambio de base no deberıa modificar su informacion,ya que solo se trata de una proyeccion de esta sobre otra base.En particular podemos verificar que sucede con la energıa de lasenal en ambas bases:

E(xXe) = ‖[4, 8, 9]‖22 = 161

E(xX1) =∥∥[6√2, 11

3

√6, 5

3

√3]∥∥2

2= 161

Generalizando estas ideas se llega a la relacion de Parseval,segun la cual la energıa se conserva ante un cambio entre basesortonormales:

E(x) =n∑

i=1

α2i =

n∑i=1

β2i

Si alguna de las bases es solamente ortogonal, entonces nosiempre se cumple que el producto interno entre dos de sus ele-mentos es 1. Si 〈xi,xi〉 = ki entonces tendrıamos:

Page 86: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

66 Capıtulo 2. Espacio de senales

e 1

e 2

e 3

x 1

x 2

x 3

x

Figura 2.8. Un cambio de base no modifica al vector. Aquı se pueden

observar la base canonica y la base ortonormal del ejemplo desarro-

llado en el texto. En este caso el cambio de base implica simplemente

una rotacion de los ejes coordenados.

Page 87: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.4. Bases y transformaciones 67

E(x) =n∑

i=1

α2i =

n∑i=1

β2i ki

En el caso de que se quieran aprovechar todas las ventajasde la ortonormalidad, existen diferentes metodos que permitenobtener una base ortonormal; entre estos se encuentra el procesode ortonormalizacion de Gram-Schmidt.

2.4.6. Transformaciones lineales

Una transformacion lineal entre dos espacios vectoriales Xy Y es una correspondencia que asigna a cada vector x de X unvector T (x) en Y de manera tal que:

T (a1x1 + a2x2) = a1T (x1) + a2T (x2)

para todos los vectores x1 y x2 de X y los escalares a1 y a2.Notese que una transformacion lineal mapea senales en un

espacio X dentro de otro espacio Y. Notese tambien que X yY pueden ser cualquier espacio vectorial, incluso puede ser queX=Y.

Hay dos resultados que son especialmente interesantes. Enprimer lugar, para que una transformacion lineal sea uno a uno(es decir, a cada vector en X le corresponda un solo vector en Y,y por lo tanto la transformacion sea invertible) basta con verifi-car que al transformar el vector 0 del espacio X , se obtiene unsolo vector, el vector 0 en Y. El otro resultado que nos sera deutilidad es el hecho de que para conocer el efecto de una trans-formacion lineal sobre cualquier vector en X basta con conocerel efecto de la transformacion en los vectores de una base de X .Esto se puede deducir dado que cualquier vector x en X se pue-de escribir como combinacion lineal de los vectores de su basey, por la propiedad de linealidad de la transformacion lineal, el

Page 88: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

68 Capıtulo 2. Espacio de senales

vector transformado sera una combinacion lineal de los vectoresde la base transformados. Esto es:

x = α1x1 + α2x2 + · · ·+ αNxN

T (x) = T (α1x1 + α2x2 + · · ·+ αNxN )y = α1T (x1) + α2T (x2) + · · ·+ αNT (xN )y = α1y1 + α2y2 + · · ·+ αNyN

Este ultimo resultado nos permite asegurar que dada unatransformacion lineal T : RN → RM existe una sola matriz Ade M ×N tal que:

T (v) = Av,

En la seccion anterior, estudiamos los cambios de bases.Notese ahora, que los cambios de base son un tipo especial detransformaciones lineales con caracterısticas muy interesantespara el procesamiento de senales: son uno a uno, son inverti-bles y el espacio vectorial X es igual al espacio vectorial Y.Ademas, al trabajar con senales discretas, encontramos que lastransformaciones siempre tendran una representacion matricialy la matriz de transformacion o de cambio de base sera cuadra-da (N ×N para un espacio RN ). La transformacion inversa seobtendra simplemente a partir de la inversa de dicha matriz.

2.5. Preguntas

1. ¿Como se puede interpretar que las senales digitales de Nmuestras son puntos en un espacio RN?

2. ¿Porque decimos que las senales continuas son puntos enel espacio R∞?

Page 89: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.5. Preguntas 69

3. ¿Cuales son las ventajas de poder ver a las senales comopuntos en un espacio RN?

4. ¿Para que sirven las normas? ¿Por que hay distintas nor-mas?

5. ¿Como se puede definir una norma-p para P = 0? ¿Que uti-lidad tendrıa una norma como esta?

6. ¿Como puede interpretarse graficamente la norma p =∞?

7. ¿Cual es la relacion que existe entre las normas p y lasmedidas fısicas de accion, energıa, potencia, raız del valorcuadratico medio y amplitud?

8. ¿Como se relacionan las definiciones de normas y productointerno en el caso de las senales discretas y las continuas?¿Cual es el equivalente discreto del dt que aparece en elcaso de senales continuas?

9. ¿En que casos es necesario utilizar el conjugado en la de-finicion del producto interno?

10. ¿Por que decimos que el producto interno mide el parecidoentre dos senales? Analıcelo primero para senales en R2 yluego extienda el analisis a senales continuas.

11. ¿Cual es la relacion entre producto interno y proyeccion?

12. ¿Que diferencia hay entre conjunto y espacio de senales?

13. Un mismo conjunto de senales con dos metricas diferentes¿conforma dos espacios de senales diferentes?

14. ¿Que utilidad tiene definir un espacio vectorial en el anali-sis de senales?

15. ¿Como se verifican las propiedades de cerradura en unespacio vectorial?

Page 90: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

70 Capıtulo 2. Espacio de senales

16. ¿Que ventajas tiene el hecho de que una base sea ortonor-mal?

17. ¿Puede una base estar formada por senales linealmentedependientes? ¿y por senales no ortogonales?

18. Demostrar que las proyecciones ortogonales minimizan elcriterio del error cuadratico en la aproximacion de senales.

19. ¿Por que decimos que un cambio de base es un caso par-ticular de transformacion lineal?

20. ¿Bajo que condiciones se puede asegurar que un cambiode base es simplemente una rotacion de las senales de labase canonica?

21. ¿Como se puede interpretar geometricamente el teoremaParseval a partir de considerar a una transformacion conbase ortonormal como un simple cambio de base? ¿Que su-cede si la base es simplemente ortogonal?

22. Exprese la transformacion lineal de una senal discreta ysu correspondiente transformacion inversa mediante pro-ductos matriciales.

23. Indique como se aplica en esta transformacion la idea deparecido entre senales y su medida a traves del productointerno.

24. Escriba las ecuaciones y de ejemplos de una base paratransformaciones lineales en las que:

a) La senal en el domino original y la senal transformadason discretas

b) La senal en el domino original es continua y la senaltransformada discreta

Page 91: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

2.6. Trabajos practicos 71

c) La senal en el domino original es discreta y la senaltransformada continua

d) La senal en el domino original y la senal transformadason continuas

25. En cada uno de los casos anteriores indique en que espacio(R?) estan las senales de la base y en que espacio (R?×?)esta la matriz de la transformacion.

26. Muestre con un ejemplo sencillo que para las transforma-ciones lineales en las que los vectores de la base son or-tonormales, la matriz de inversion es la transpuesta de lamatriz de transformacion.

2.6. Trabajos practicos

Ejercicio 1: Obtener los siguientes valores de una senalsenoidal, una rampa, una onda cuadrada y una senalaleatoria:

1. valor medio,

2. maximo,

3. mınimo,

4. amplitud,

5. energıa,

6. accion,

7. potencia media y

8. raiz del valor cuadratico medio.

Ejercicio 2: Defina matematicamente el espacio de lassenales senoidales y compruebe numericamente si setrata de un espacio vectorial.

Page 92: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

72 Capıtulo 2. Espacio de senales

Ejercicio 3: Compruebe en el espacio del ejercicio ante-rior que el producto interno mide el grado de pare-cido entre dos senales (genere senoidales de distintafrecuencia y realice el producto interno entre ellas).

Ejercicio 4: Defina un espacio vectorial de senales com-plejas (formado por senales no necesariamente pe-riodicas) y verifique que se trata de un espacio vecto-rial. Utilice el producto interno para medir el gradode parecido en este espacio.

Ejercicio 5: (∗) Calcule el error cuadratico total de apro-ximacion en el ejemplo con funciones de Legendre(pagina 60) bajo las siguientes condiciones:

1. con los coeficientes calculados en el ejemplo,

2. con pequenas variaciones en torno a estos coe-ficentes α, construyendo una grafica en 3D conla variacion en los coeficientes en x, y y el errorcuadratico total en z,

3. con mas coeficientes α, para comprobar comose reduce el error cuadratico total al aumentarlos coeficientes.

Ejercicio 6: (∗) Genere una senal como combinacion li-neal del conjunto de senales senoidales con frecuen-cias de 1, 2, 3, 4, 5, 6, 7, 8, 9 y 10 Hz y luego:

1. mida el grado de parecido con dichas senoida-les representando el resultado en un grafico debarras,

2. vuelva a medir el grado de parecido pero conuna combinacion lineal en la que se varıa lafase de las senoidales y

Page 93: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Bibliografıa 73

3. realice el grafico de barras para el caso de unasenal cuadrada de 5.5 Hz.

Ejercicio 7: (∗∗) En el archivo te.txt se encuentra lasenal registrada al discar un numero telefonico enuna lınea ruidosa y se requiere determinar el nume-ro que se ha discado. La senal se digitalizo con unafrecuencia de muestreo de 11025 Hz y se sabe que ca-da numero del telefono esta codificado mediante lasuma de dos senales senoidales cuya frecuencia indi-ca la posicion en el teclado. De arriba hacia abajo lasfrecuencias son 697, 770, 852 y 941 Hz; de izquierdaa derecha son 1209, 1336 y 1477 Hz. Por ejemplo: elnumero 2 se codifica con la suma de dos senos confrecuencias 697 y 1336 Hz; el numero 7 se codificacon 852 y 1209 Hz. Se necesita determinar el nume-ro que se ha discado. (Sugerencia: utilice el productointerno).

Bibliografıa

[1] L.E. Franks. Teorıa de la senal. Reverte, Barcelona, 1975.

[2] H. Kwakernaak, R. Sivan, and R.C.W. Strijbos. ModernSignals and Systems. Prentice Hall, New Jersey, 1991.

[3] B. Lathi. Modern Digital and Analog Communication Sys-tems. Holt, Rinehart & Winston, 1983.

[4] R.A. Gabel y R.A. Roberts. Senales y sistemas lineales. Ed.Limusa S.A., Mexico, 1975.

[5] B.Noble y J. Daniel. Algebra lineal aplicada. Prentice-Hall,1989.

Page 94: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

74 Capıtulo 2. Espacio de senales

[6] S. Grossman. Algebra lineal. Grupo Ed. Iberoamericana,1988.

Page 95: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Capıtulo 3

Transformada discreta deFourier

Leandro Di Persia, Diego Milone

Temas a tratar

• Series y transformadas de Fourier

• Teorema del muestreo y fenomeno de alias

• Ventanas temporales y resolucion en tiempo–frecuencia

• Transformada rapida de Fourier

Objetivos

• Aplicar los conceptos de producto interno y transformacio-nes lineales al caso de la transformada discreta de Fourier(TDF).

• Reinterpretar el fenomeno de alias desde la perspectiva delanalisis frecuencial.

• Aplicar la TDF a ejemplos sencillos y aplicaciones consenales reales.

75

Page 96: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

76 Capıtulo 3. Transformada discreta de Fourier

3.1. Introduccion

La serie y la transformada de Fourier desempenan un rolimportante en la representacion de senales y en el analisis desistemas lineales en el mundo analogico. Con el advenimientode la computadora digital y las facilidades que esta proporcionapara el diseno de algoritmos, fue deseable y necesario extender eluso de este tipo de herramientas matematicas al mundo discreto.Como resultado de esto se desarrollo lo que se conoce como laTransformada Discreta de Fourier (TDF). A continuacion vamosa analizar como surge esta transformacion a partir de conceptospreviamente estudiados.

Supongamos que se desea analizar una senal de N muestrasx[n], pero no podemos extraer la informacion que nos interesaen la base que esta representada. Entonces nos planteamos laposibilidad de realizar un cambio de base de manera tal que lainformacion se represente de otra forma. Como se establecio enel capıtulo anterior, un cambio de base es un caso particular detransformacion lineal uno a uno, invertible. Tambien se pudoapreciar que, desde un punto de vista conceptual, este tipo detransformaciones funciona esencialmente como una rotacion delos ejes de coordenadas (vectores de la base). Vimos que un con-junto de vectores, para constituir una base, debe ser linealmenteindependiente (es decir, que ninguno de ellos debe poder escri-birse como combinacion lineal de los restantes). Tambien vimosque debe ser un conjunto generador (o sea que cualquier vectordel espacio vectorial pueda escribirse como combinacion linealde ellos).

La senal x[n] esta en RN , y ya sabemos que en dicho espaciopuede ser generado por N vectores linealmente independientes.Entonces, lo que nos esta faltando para poder formar una basepara el cambio de base es hallar N senales linealmente indepen-dientes en RN . Una propiedad interesante de la independencialineal es que si un conjunto de senales es ortogonal, entonces

Page 97: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.2. Familia de bases de Fourier 77

puede demostrarse que tambien es linealmente independiente.

El interes que tenemos al hacer esta transformacion es lo-grar representar la informacion que contiene la senal x[n], de talmanera que resulte mas sencillo analizarla, extraer datos de ella,o incluso procesarla de manera de eliminar informacion que nonos interesa (por ejemplo, ruido). O sea que las senales que cons-tituyan nuestra base no pueden ser cualquiera, sino que debenpermitirnos representar nuestra senal en una forma mas util.

3.2. Familia de bases de Fourier

El analisis de Fourier abarca diversas formas de transfor-maciones que son aplicables a senales de diferente tipo, tantocontinuas como discretas, ya sea en dominio temporal o fre-cuencial, y para senales periodicas y no periodicas. Todas ellasconsisten en la representacion de la senal original en funcion deuna base sinusoidal compleja completa. Vamos a hacer un breverepaso de las diversas transformaciones existentes.

3.2.1. Series seno

Mediante las series seno es posible descomponer (transfor-mar) senales continuas, reales, periodicas y con simetrıa impar.La base para la expansion esta dada por:

φ[k](t) = sin (2πkf0t)

y las ecuaciones de transformacion y reconstruccion son:

Page 98: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

78 Capıtulo 3. Transformada discreta de Fourier

X[k] =2T0

T0/2∫−T0/2

x(t) sin (2πkf0t) dt

x(t) =∞∑

k=0

x[k] sin (2πkf0t)

donde T0 es el perıodo de la senal y f0 = 1/T0 es su frecuencia.De las ecuaciones se ve que en el dominio frecuencial se

trata de una representacion discreta ya que solo tienen defini-dos sus valores a intervalos multiplos enteros de la frecuenciafundamental f0 (ver Figura 3.1).

3.2.2. Series coseno

Mediante esta serie se pueden descomponer senales con-tinuas, reales, periodicas y con simetrıa par. La base para laexpansion esta dada por:

φ[k](t) = cos (2πkf0t)

y las ecuaciones de transformacion y reconstruccion son:

X[k] =2T0

T0/2∫−T0/2

x(t) cos (2πkf0t) dt

x(t) =∞∑

k=0

x[k] cos (2πkf0t)

donde T0 es el perıodo de la senal y f0 = 1/T0 es su frecuencia.Al igual que la serie seno, se trata de una representacion

discreta en el dominio frecuencial (ver Figura 3.2).

Page 99: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.2. Familia de bases de Fourier 79

k=1...7, f0=10Hz

−0.1 0 0.1−1

0

1

tiempo

Figura 3.1. Algunos elementos de la base para la serie seno.

3.2.3. Serie exponencial de Fourier

La serie exponencial de Fourier permite descomponer senalescontinuas y periodicas en general, sin importar su paridad. Labase para la expansion esta dada por:

φ[k](t) = ej2πkf0t

y las ecuaciones de transformacion y reconstruccion son:

Page 100: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

80 Capıtulo 3. Transformada discreta de Fourier

k=1...7, f0=10Hz

−0.1 0 0.1−1

0

1

tiempo

Figura 3.2. Algunos elementos de la base para la serie coseno.

X[k] =1T0

T0/2∫−T0/2

x(t)e−j2πkf0t dt

x(t) =∞∑

k=−∞

x[k]ej2πkf0t

donde T0 es el perıodo de la senal y f0 = 1/T0 es su frecuenciafundamental.

Page 101: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.2. Familia de bases de Fourier 81

Al igual que las series seno y coseno, se trata de una repre-sentacion discreta en el dominio frecuencial (ver Figura 3.3).

−10

1

−1

0

10

0.1

0.2

0.3

k=1, f0=5 Hz

−10

1

−1

0

10

0.1

0.2

0.3

k=2, f0=5 Hz

−10

1

−1

0

10

0.1

0.2

0.3

k=3, f0=5 Hz

−10

1

−1

0

10

0.1

0.2

0.3

k=4, f0=5 Hz

Figura 3.3. Cuatro elementos de la base para la serie exponencial

Fourier.

3.2.4. Transformada de Fourier de tiempo dis-creto

La transformada de Fourier de tiempo discreto (TFTD) seaplica a senales muestreadas en el tiempo, no periodicas y deduracion infinita.

La base para la TFTD es:

φ[n](f) = ej2πfn

Page 102: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

82 Capıtulo 3. Transformada discreta de Fourier

Suponiendo que la senal x[n] ha sido muestreada a inter-valos regulares de tiempo T , las ecuaciones de transformacion yreconstruccion son, respectivamente:

X(f) =∞∑

n=−∞x[n]e−j2πfn

x[n] =

12T∫

− 12T

X(f)ej2πfn df

Vemos claramente que en el dominio temporal la senal esdiscreta. Por otro lado, en el dominio frecuencial X(f) es conti-nua y periodica (notese que la integral se hace sobre un perıodo).

3.2.5. Transformada continua de Fourier

La transformada continua de Fourier (TCF) se aplica asenales continuas no periodicas, aunque puede extenderse a senalesperiodicas utilizando funciones generalizadas como el δ(t). Labase para esta transformacion es:

φ(f, t) = ej2πft

Las ecuaciones de transformacion y reconstruccion son, res-pectivamente:

X(f) =

∞∫−∞

x(t)e−j2πft dt

x(t) =

∞∫−∞

X(f)ej2πft df

Page 103: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.3. Exponenciales complejas discretas 83

En este caso, se ve claramente que las senales, tanto en eldominio temporal como en dominio frecuencial, son continuas.

3.3. Exponenciales complejas discretas

En vista de las transformaciones presentadas en la seccionanterior, serıa deseable contar con una base generada a partirde exponenciales complejas que permita trabajar con senales di-gitales. Para esto, es necesario que dicha base sea discreta tantoen el dominio temporal como en el frecuencial. Como estamostrabajando con senales en RN nuestra base debe consistir enN vectores de N muestras cada uno. Una exponencial complejacontinua esta dada por:

φ(ω, t) = ejωt

donde ω es la frecuencia angular. En este caso, para cada valorde ω la exponencial generada es diferente de las demas.

Para una exponencial compleja discreta tenemos la siguien-te ecuacion:

φ[k, n] = ejΩkn

donde Ωk es la frecuencia angular discreta. A diferencia de lasexponenciales continuas, no siempre una exponencial discreta deN muestras resulta periodica. Esto es debido a que, para unafrecuencia de muestreo dada, no necesariamente habra coinci-dencia con la frecuencia de la exponencial y el muestreo no re-tomara desde la misma parte de la exponencial antes de las Nmuestras. Si analizamos la condicion de periodicidad para laexponencial discreta obtenemos:

ejΩk(n+N) = ejΩknejΩkN = ejΩkn

lo que implica que:

Page 104: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

84 Capıtulo 3. Transformada discreta de Fourier

ejΩkN = 1

Para que esta ultima ecuacion sea correcta, debe verificarse queΩkN sea un multiplo entero de 2π, es decir ΩkN = 2πk, o bien:

Ωk =2πk

Ncon k ∈ Z

Para ejemplificar esto, analicemos lo que sucede con la par-te real de la exponencial. A partir de la relacion de Euler pode-mos escribir:

real(ejΩkn) = cos (Ωkn)

Veamos que pasa para valores especıficos de Ωk. En la Figu-ra 3.4 se puede ver claramente que si Ωk = 2π se obetine unasenal periodica, pero si se tiene Ωk = 2,15π la senal no resul-ta periodica. Dado que la parte real de la exponencial de esteejemplo no resulta periodica, tampoco lo sera la exponencial.

Hemos obtenido ası exponenciales complejas con perıodoN , cuyas frecuencias solo pueden tomar valores determinadospor el entero k. La forma general es entonces:

φ[k, n] = ej 2πkN n

Pero ¿cuantos exponenciales diferentes pueden encontrarseal variar k? Si hacemos:

φ[0, n] = ej 2π0N n = 1

φ[1, n] = ej 2π1N n = ej 2π

N n

...φ[N − 1, n] = ej

2π(N−1)N n

φ[N,n] = ej 2πNN n = ej2πn = 1

φ[N + 1, n] = ej2π(N+1)

N n = ej 2πNN nej 2π

N n = ej 2πN n

Page 105: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.3. Exponenciales complejas discretas 85

10 20 30 40 50 60 70 80 90 100−1

−0.5

0

0.5

1cos(2 π t)

muestras

10 20 30 40 50 60 70 80 90 100

−0.5

0

0.5

1cos(2.15 π t)

muestras

Figura 3.4. Funciones coseno para una base en R100 con: (arriba)

Ωk = 2π (arriba), lo que resulta en una senal periodica y (abajo)

Ωk = 2,15π, dando como resultado una senal no periodica.

Page 106: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

86 Capıtulo 3. Transformada discreta de Fourier

podemos ver que:

φ[N,n] = φ[0, n]φ[N + 1, n] = φ[1, n]

...φ[k, n] = φ[(k mod N), n]

es decir, que solo existen N exponenciales periodicas diferentes,por lo que tomamos 0 ≤ k ≤ N − 1.

Ahora bien, encontramos N exponenciales complejas en RN

y, si pretendemos usarlas como base, serıa conveniente que fue-ran ortogonales. Si hacemos el producto interno de dos de ellas,〈φ[k1],φ[k2]〉, acotadas a N muestras, tenemos:

〈φ[k1],φ[k2]〉 =N−1∑n=0

ej2πk1

N ne−j2πk2

N n

=N−1∑n=0

ej2π(k1−k2)

N n

=

0 ∀ k1 6= k2

N ∀ k1 = k2

Esta ultima ecuacion resulta ası porque, si k1 = k2, laexponencial vale 1 y se suma N veces este 1. Por otro lado, sik1 6= k2 entonces k1 − k2 resulta en un numero entero m, yhaciendo un cambio de variables:

〈φ[k1],φ[k2]〉 =N−1∑n=0

ej 2πmN n = 0

la cual es una sumatoria sobre una cantidad entera de perıodos,de una exponencial compleja.

Page 107: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.4. Transformada discreta de Fourier 87

Resumiendo, hemos encontrado un conjunto de N senalesen RN que son ortogonales y por tanto linealmente independien-tes. Estas propiedades hacen que tambien estas exponencialescomplejas periodicas constituyan un conjunto generador paraRN . Esta base para el espacio vectorial de las senales en RN

puede expresarse de la siguiente forma:

F =

φ / φ[k, n] = ej 2πknN , 0 ≤ k ≤ N − 1, 0 ≤ n ≤ N − 1

En la Figura 3.5 se han representado cuatro exponenciales

complejas que forman parte de una base para senales en R20. Eneste ejemplo se han tomado las exponenciales correspondientesa k = 1, k = 2, k = 3 y k = 4.

3.4. Transformada discreta de Fourier

Habiendo determinado una base para nuestra transforma-cion, nos queda ahora establecer como realizarla. Esto es sencilloutilizando la perspectiva de las transformaciones lineales. Unasenal se puede representar en otra base ortogonal mediante:

x =N−1∑k=0

X[k]φ[k]

donde

X[k] =〈x,φ[k]〉〈φ[k],φ[k]〉

(3.1)

Utilizando esta ecuaciones y la expresion para la base deexponenciales complejas discretas se llega a la definicion de laTDF de la siguiente manera:

Page 108: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

88 Capıtulo 3. Transformada discreta de Fourier

−10

1

−1

0

10

10

20

k=1

−10

1

−1

0

10

10

20

k=2

−10

1

−1

0

10

10

20

k=3

−10

1

−1

0

10

10

20

k=4

Figura 3.5. Cuatro elementos de la base para la transformada discreta

de Fourier en R20. Los valores discretos se representan con cırculos, y

si bien se han unido con lıneas punteadas, recuerdese que las muestras

de las senales de la base son solamente los valores de los cırculos

marcados.

Page 109: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.4. Transformada discreta de Fourier 89

X[k] = 〈x,φ[k]〉

=N−1∑n=0

x[n]φ∗[k, n]

X[k] =N−1∑n=0

x[n]e−j 2πknN

(3.2)

Esta es la definicion mas utilizada para la TDF y en ellasolo se considera el numerador de (3.1), sin normalizar por elproducto interno de las funciones de la base. Sin embargo, estono es un problema dado que esos productos internos son todosiguales a N y este factor puede incluirse directamente en laformula de reconstruccion:

x[n] =N−1∑k=0

X[k]〈φ[k],φ[k]〉

φ[k]

=N−1∑k=0

X[k]N

φ[k]

x[n] = 1N

N−1∑k=0

X[k]ej 2πknN

(3.3)

Page 110: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

90 Capıtulo 3. Transformada discreta de Fourier

Debe tenerse mucho cuidado en no confundir la TDF conla TFTD. La diferencia mas importante radica en el hecho deque la TDF se aplica a senales discretas periodicas de duracioninfinita o a extensiones periodicas de senales de duracion finita.Ademas, tanto el dominio como la imagen de la TDF son discre-tos mientras que en el caso de la TFTD la imagen es continua.

Es interesante analizar que es lo que realmente esta suce-diendo al aplicar esta transformacion. Ya que el producto in-terno conceptualmente mide el grado de parecido de una senalcon respecto a la otra, lo que estamos haciendo entonces al im-plementar la TDF es comparar la senal de interes con las Nexponenciales complejas que forman la base de RN . Intentamosdeterminar que tanto de dicha exponencial debe usarse en unacombinacion lineal para sintetizar la senal original o que tanto dedicha exponencial hay en la senal original. Dicho de otra forma,descomponemos la senal en una serie de N componentes con di-ferentes frecuencias, lo que nos permite estudiar caracterısticasfrecuenciales de la senal o el sistema que la genero.

Notese que, si bien solo hemos considerado N muestras delas exponenciales complejas, estos valores se repiten en las Nmuestras siguientes, lo que implica que al hacer una combina-cion lineal de ellas el resultante sera una funcion de perıodoN . Cuando trabajamos con senales discretas de longitud finitausualmente no es este el caso, sino que se trata de una secuenciade valores muestreados a partir de una senal continua. Fuera delintervalo de muestreo, dicha senal continua habra tenido valo-res que en realidad desconocemos y estamos suponiendo que soniguales a los N elementos que conocemos. Es por esto que nuncahay que olvidar que cuando vemos el espectro obtenido por laTDF, en realidad vemos el espectro de la extension periodica delas N muestras.

Page 111: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.5. Propiedades de la TDF 91

3.5. Propiedades de la TDF

La TDF presenta varias propiedades muy utiles e intere-santes, similares a las propiedades de su analoga continua. Paraanalizar dichas propiedades vamos a utilizar la siguiente nota-cion:

x[n] F⇐⇒ X[k]

donde F representa el operador de transformacion, para indicarel par formado por una senal x[n] y su TDF X[k]. Tambienexpresamos:

X[k] = F x[n]

para indicar que X[k] es la TDF de x[n], y

x[n] = F−1 X[k]

para indicar que x[n] es la TDFI de X[k].Para los siguientes pares: x[n] F⇐⇒ X[k] y y[n] F⇐⇒ Y [k]

se verifican las siguientes propiedades (el sımbolo ~ representael operador de Convolucion periodica (o circular) que se aplicacuando ambas senales son periodicas de perıodo N):

1. Linealidad:

x[n] + y[n] F⇐⇒ X[k] + Y [k]

2. Simetrıa:

1NF x[n] [k] F⇐⇒ F−1 X[k] [−n]

3. Desplazamiento temporal (retardo):

x[n− i] F⇐⇒ X[k]e−j2πki

N

Page 112: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

92 Capıtulo 3. Transformada discreta de Fourier

4. Desplazamiento frecuencial (modulacion):

x[n]ej2πin

NF⇐⇒ X[k − i]

5. Convolucion en el tiempo:

x[n] ~ y[n] F⇐⇒ X[k]Y [k]

6. Convolucion en frecuencia:

x[n]y[n] F⇐⇒ X[k] ~ Y [k]

7. Teorema de correlacion cruzada:

N∑i=0

x[i]y[n + i] = X[k]Y [k]∗

8. Teorema de Parseval (conservacion de la energıa):

N−1∑n=0

x[n]2 =1N

N−1∑k=0

|X[k]|2

En la Tabla 3.1 se muestran algunas propiedades relacio-nadas con la simetrıa de los pares transformados en ambos do-minios. Muchas veces es posible aprovechar esas simetrıas paraaumentar la eficiencia computacional en los algoritmos para elcalculo de las transformadas, ası como para interpretar la infor-macion que se obtiene.

3.6. Relacion entre la TCF y la TDF

En esta seccion desarrollaremos un procedimiento graficopara interpretar la obtencion de la TDF a partir de una senal

Page 113: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.6. Relacion entre la TCF y la TDF 93

Tiempo Frecuenciax[n] real X[−k] = X[k]∗ (sim. conjugada)x[n] imaginaria X[−k] = −X[k]∗

x[n] par X[−k] = X[k] (sim. par)x[n] impar X[−k] = −X[k] (sim. impar)x[n] real y par X[k] real y parx[n] real e impar X[k] imag. e imparx[n] imag. y par X[k] imag. y parx[n] imag. e impar X[k] real e impar

Tabla 3.1. Correspondencias entre las simetrıas en el dominio tempo-

ral y frecuencial.

muestreada, su relacion con la TCF y los artefactos como el aliasy el rizado que pueden presentar por este proceso.

Supongamos que tenemos una senal x(t) continua de du-racion infinita y cuya TCF esta limitada en banda, es decir,que por encima de cierta frecuencia fmax no contiene energıa.Queremos muestrear dicha senal continua, para lo cual la multi-plicamos por un tren de impulsos ∆(t) espaciados por un valorT . En el dominio frecuencial, el efecto de multiplicar en el tiem-po es equivalente a una convolucion entre la TCF de x(t) y ladel tren de impulsos. Pero la TCF de un tren de impulsos espa-ciados por T es otro tren de impulsos espaciados por 1/T (verFigura 3.6).

Al convolucionar x(f) con la TCF del tren de impulsos,∆(f), el resultado es una funcion periodica con perıodo 1/T yla forma de x(f).

Observese que si la frecuencia de muestreo 1/T no es supe-rior al doble de la frecuencia maxima de la senal fmax, entonceshabra un solapamiento entre las versiones desplazadas de x(f).En estas zonas se suman los aportes de ambas imagenes de x(f).Esto se conoce como fenomenos de alias o aliasing y puede evi-tarse respetando el teorema de muestreo de Nyquist que puede

Page 114: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

94 Capıtulo 3. Transformada discreta de Fourier

∆ ( f )

1/ T

. . . . . .

T

x ( t ) | x ( f )|

t f

multiplicación convolución

∆ ( t )

t f -1/ T

Figura 3.6. Muestreo de una senal continua

resumirse en (Figura 3.7):

Si la frecuencia de muestreo es mayor al doble de lafrecuencia maxima de la senal, entonces la senal con-tinua puede reconstruirse exactamente a partir de suversion discreta utilizando el interpolador sincronico.

f 1/ (2 T ) -1/ (2 T )

| x ( f )|* ∆ ( f )

Figura 3.7. Fenomeno de alias

Notese que en el dominio temporal tenemos una senal con-tinua muestreada y de duracion infinita, mientras que en el do-minio frecuencial se trata de una senal continua y periodica. Lo

Page 115: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.6. Relacion entre la TCF y la TDF 95

que tenemos en frecuencias es la TFTD que se menciono en laseccion anterior (ver Figura 3.8).

El siguiente paso es multiplicar x(t)∆(t) por una ventanacuadrada s(t) para acotarla en el tiempo. En el dominio fre-cuencial esto se corresponde a una convolucion la TCF de laventana, s(f), que es una funcion sinc. El efecto de dicha convo-lucion sera generar un rizado o ripple en el dominio frecuencial.

t T

t f

multiplicación convolución

f 1/ (2 T ) -1/ (2 T )

| x ( f )* ∆ ( f )| x ( t ) ∆ ( t )

s ( t ) s ( f )

1/ T 1 -1/ T 1 -T 1 /2 T 1 /2

Figura 3.8. Multiplicacion por una ventana cuadrada.

Ahora necesitamos muestrear en el dominio frecuencial, demanera de obtener un espectro discreto. Para ello multiplicamospor un tren de impulsos ∆2(f) separados por 1/T2 lo que en eldominio temporal se traduce como una convolucion con un trende impulsos espaciados en T2. El resultado es una senal periodicade perıodo T1 (ver Figura 3.9). Notese que se eligio el valor T2

igual al ancho T1 de la ventana temporal aplicada en el pasoanterior, de manera que al hacer la convolucion no se solapenlas imagenes de la senal en el tiempo (“alias temporal”).

Finalmente, solo nos resta tomar N muestras en el dominiotemporal y N en el dominio frecuencial. Ası, hemos obtenido la

Page 116: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

96 Capıtulo 3. Transformada discreta de Fourier

t f

t f

. . . . . .

convolución multiplicación

-T 1 /2 T 1 /2 1/ (2 T ) -1/ (2 T )

x ( t ) ∆ ( t ) s ( t ) | x ( f )* ∆ ( f )* s ( f )|

∆ 2 ( t ) ∆ 2 ( f )

-T 2 T 2 1/ T 2

Figura 3.9. Muestreo en el dominio de la frecuencia

TDF de una senal discreta muestreada. Notese que se asumeque ambas senales son periodicas y se trabaja con un perıodocompleto de ambas (ver Figura 3.10).

3.7. Utilizacion de ventanas

En la seccion anterior analizamos la TDF como una con-secuencia del proceso de muestreo y limitacion en la duracionde la senal. Uno de los pasos crıticos en dicho desarrollo se daal utilizar una ventana cuadrada en el dominio temporal paralimitar la duracion de la senal. Como se vio, esto en frecuenciaes equivalente a la convolucion con una funcion sinc, lo que ge-nera la aparicion de cierto “rizado” en el espectro. Para evitareste efecto no deseado, existe la alternativa de utilizar ventanasdiferentes de la cuadrada, de manera que su espectro frecuencialpresente lobulos laterales de menor amplitud. Se han desarro-llado diversas ventanas que cumplen con este requisito y anali-zaremos algunas de ellas (ver Figura 3.11). Las mas utilizadas

Page 117: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.7. Utilizacion de ventanas 97

N N n k

N N

Señal discreta Transformada discreta de Fourier

x [ n ] | x [ k ]|

Figura 3.10. Par de la transformada discreta de Fourier.

se definen para 0 < n ≤ N segun:

i) Ventana rectangular:

ωR[n] = 1

ii) Ventana de Hanning:

ωh[n] =12− 1

2cos(2πn/N)

iii) Ventana de Hamming:

ωH [n] =2750− 23

50cos(2πn/N)

iv) Ventana de Bartlett:

ωB [n] =

2n/N si 0 < n ≤ N/22− 2n/N si N/2 < n ≤ N

Page 118: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

98 Capıtulo 3. Transformada discreta de Fourier

v) Ventana de Blackman:

ωK [n] =2150− 1

2cos(2πn/N) +

225

cos(4πn/N)

−0.6 −0.4 −0.2 0 0.2 0.40

0.5

1Ventana cuadrada

−0.2 0.2

−80−60−40−20

0−0.6 −0.4 −0.2 0 0.2 0.40

0.20.40.60.8

Ventana de Hamming

−0.2 0.2−80

−60

−40

−20

0

−0.6 −0.4 −0.2 0 0.2 0.40

0.20.40.60.8

Ventana de Bartlett

−0.2 0 0.2

−80−60−40−20

0−0.6 −0.4 −0.2 0 0.2 0.40

0.20.40.60.8

Ventana de Blackman

−0.2 0 0.2

−80

−60

−40

−20

0

Figura 3.11. Las ventanas temporales mas utilizadas y sus respectivos

espectros en frecuencia.

Estas ventanas pueden ser caracterizadas por el tamanode los lobulos de la magnitud de su espectro de frecuencias. Laventana rectangular posee el lobulo central con menor anchode banda pero la magnitud de los lobulos laterales decae muylentamente. La ventana de Blackman posee la mınima amplituden sus lobulos laterales pero su lobulo principal tiene un anchode banda tres veces mayor al de la rectangular.

Page 119: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.8. Resolucion temporal y frecuencial 99

3.8. Resolucion temporal y frecuencial

Nos referimos a resolucion cuando tratamos de especificarcon que tanta precision podemos determinar un valor. Resolu-cion es sinonimo de separacion, es decir, la maxima resolucion esla separacion que nos permitira reconocer dos eventos o sucesoscomo diferentes, e identificar individualmente las informacionesque transportan. Esta definicion es general y las unidades enlas que medimos dicha separacion dependeran de los fenome-nos particulares que originan los sucesos. Por ejemplo, en opticase denomina resolucion a la menor separacion entre dos puntosque, a cierta distancia, permite distinguirlos como puntos in-dependientes. En el caso de senales que varıan en el tiempo, setratara del mınimo tiempo entre dos eventos de los que podemosconocer con exactitud sus caracterısticas. Cuando se muestreauna senal con una frecuencia de muestreo fm, automaticamentequeda limitada la resolucion temporal, ya que no podemos darinformacion de lo que sucede entre dos muestras. Por lo tanto,la resolucion temporal resulta ser:

∆t = T =1

fm

Por otra parte, al muestrear ademas nos limitamos a unnumero finito N de muestras, que abarcaran un tiempo NT .Al usar la TDF, en ambos dominios la senal resulta discreta yperiodica, con perıodo N muestras. Ademas, del analisis anteriorsabemos que el perıodo en el dominio frecuencial sera igual a lafrecuencia de muestreo fm. Por lo tanto, podemos establecerque la resolucion frecuencial estara dada por el perıodo en eldominio frecuencial dividido por N :

∆f =fm

N=

1NT

=1T0

donde T0 es la duracion total en tiempo de la senal muestreadafinita (o lo que es lo mismo, el perıodo de su extension periodica).

Page 120: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

100 Capıtulo 3. Transformada discreta de Fourier

Un concepto fundamental en el analisis es el principio deincertidumbre de Heisenberg, que podemos expresar en este con-texto como sigue:

∆f∆t =1T0

T =1

NTT

∆f∆t =1N

Esta ecuacion establece que, dado un numero N de mues-tras a procesar (por ejemplo, nuestro algoritmo procesa bloquesde 128 muestras), no podemos aumentar independientementela resolucion temporal y la frecuencial, ya que si aumentamosuna la otra tiene que disminuir necesariamente para mantenerla igualdad.

Podemos analizar lo que sucede al jugar con estos tresparametros:

Para una fm fija:

• Si ↑ N entonces ↑ T0 y ↓ ∆f es decir, aumenta laresolucion frecuencial

• Si ↓ N entonces ↓ T0 y ↑ ∆f es decir, disminuye laresolucion frecuencial

Para una N fija:

• Si ↑ fm entonces ↓ T0 y ↑ ∆f es decir, disminuye laresolucion frecuencial

• Si ↓ fm entonces ↑ T0 y ↓ ∆f es decir, aumenta laresolucion frecuencial

Page 121: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.8. Resolucion temporal y frecuencial 101

Muchas veces nos encontramos con la necesidad de mejorarla resolucion frecuencial de la TDF. Es comun pensar que bastaaumentar fm para lograr una mayor resolucion frecuencial. Sinembargo, si se aumenta fm, para un mismo T0 aumentara pro-porcionalmente N y la resolucion frecuencial ∆f no cambiara.¿Que podemos hacer para disminuir ∆f?

Disminuir la frecuencia de muestreo fm para un N cons-tante.

Aumentar el numero de puntos N si tenemos fijada fm.

Estas dos opciones involucran remuestrear la senal, lo cualno siempre es posible. Se podrıa pensar en “aumentar” la du-racion de la senal, agregando ceros al final, como si realmentehubieramos medido esos valores:

x′ = [x[0], x[1], . . . , x[N − 1], 0, 0, . . . , 0]

De esta forma, para una misma frecuencia de muestreo setienen mas muestras y ası se reduce ∆f . Por ejemplo, si a unasenal de N muestras la completamos con ceros hasta lograr 2Nmuestras y nos queda:

∆f ′ =1T ′0

=1

2NT=

12

1NT

=∆f

2

Hay que recalcar que esto aumenta la resolucion por elaumento de N , pero no agrega mas informacion de la senal encuestion, es decir que en realidad implementa una interpolacionen el dominio de la frecuencia. Si la senal original de la que fuetomada la secuencia de N muestras en verdad hubiera tomadovalores iguales a ceros desde la muestra N a la 2N − 1, la TDFserıa la correcta, y efectivamente se habrıa realizado un aumentode resolucion. Pero recuerdese que al tratar con senales mues-treadas a partir de una senal continua, realmente desconocemos

Page 122: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

102 Capıtulo 3. Transformada discreta de Fourier

los valores de las muestras posteriores a las N consideradas.Por lo tanto, el aumento de resolucion es aparente dado que lasnuevas muestras del espectro son aproximaciones a las que seobtendrıan si en vez de cero se tuvieran los 2N valores de lasenal temporal.

Ejemplo: sea

x[n] = sin(2π0,5n/fm) + sin(2π1n/fm) + sin(2π1,5n/fm)

donde N = 50 y fm = 4. Tambien se define:

y[n] =

x[n] para 0 6 n 6 500 para 50 < n 6 100

En la Figura 3.12 se pueden observar los efectos de rellenarcon ceros.

3.9. Representacion matricial de la TDF

Como ya se menciono, la TDF constituye una transforma-cion lineal que genera un cambio de base sobre los vectores deRN . Sabemos que tal transformacion siempre admite una repre-sentacion matricial de la forma y = Ax. Estamos interesados,entonces, en determinar que forma tiene la matriz de transfor-macion para el caso de la TDF:

X = Wx

Sabemos que la transformacion mapea senales en RN ensenales en RN , por lo tanto la matriz W debe ser cuadrada.La ecuacion (3.2) se puede reescribir como el producto internoentre un vector fila con las exponenciales y el vector columna x:

Page 123: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.9. Representacion matricial de la TDF 103

0 10 20 30 40 50−3

−2

−1

0

1

2

3

n

Am

plitu

d d

e x

0 0.5 1 1.5 20

5

10

15

20

25

f(Hz)

|X|

0 20 40 60 80 100−3

−2

−1

0

1

2

3

n

Am

plitu

d de

y

0 0.5 1 1.5 20

5

10

15

20

25

30

f(Hz)

|Y|

Figura 3.12. Efecto del agregado de ceros en el dominio temporal.

Page 124: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

104 Capıtulo 3. Transformada discreta de Fourier

X[k] =[e−

j2π(k)(0)N e−

j2π(k)(1)N · · · e−

j2π(k)(N−1)N

]x[0]x[1]

...x[N − 1]

Si disponemos los vectores de la exponencial como filas de

una matriz, obtenemos la W deseada:X[0]X[1]

...X[N − 1]

=

e−j2π(0)(0)

N e−j2π(0)(1)

N · · · e−j2π(0)(N−1)

N

e−j2π(1)(0)

N e−j2π(1)(1)

N · · · e−j2π(1)(N−1)

N

......

. . ....

e−j2π(N−1)(0)

N e−j2π(N−1)(1)

N · · · e−j2π(N−1)(N−1)

N

x[0]x[1]

...x[N − 1]

Si utilizamos la notacion E = e−j2π/N podemos escribir elproducto de forma mas compacta:

W =

E(0)(0) E(0)(1) · · · E(0)(N−1)

E(1)(0) E(1)(1) · · · E(1)(N−1)

......

. . ....

E(N−1)(0) E(N−1)(1) · · · E(N−1)(N−1)

Ahora podemos hallar la matriz que invierte la transfor-

macion. A partir de (3.3) tenemos:

Page 125: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.10. Transformada rapida de Fourier 105

x[0]x[1]

...x[N − 1]

=

1N

E−(0)0 E−(0)1 · · · E−0(N−1)

E−(1)0 E−(1)1 · · · E−1(N−1)

......

. . ....

E−(N−1)0 E−(N−1)1 · · · E−(N−1)(N−1)

X[0]X[1]

...X[N − 1]

3.10. Transformada rapida de Fourier

Supongamos que la senal x[n] posee N = 4 muestras. SuTDF se puede escribir utilizando la notacion matricial como:

X[0]X[1]X[2]X[3]

=

E0 E0 E0 E0

E0 E1 E2 E3

E0 E2 E4 E6

E0 E3 E6 E9

x[0]x[1]x[2]x[3]

Para implementar esta ecuacion, se requieren N2 multipli-

caciones complejas y N(N − 1) sumas complejas. Pero teniendoen cuenta que E0 = 1 se puede reescribir la ecuacion como:

X[0]X[1]X[2]X[3]

=

1 1 1 11 E1 E2 E3

1 E2 E4 E6

1 E3 E6 E9

x[0]x[1]x[2]x[3]

Como segunda simplificacion, observemos que Enk = E((nk) mod N),

donde (nk) mod N es el resto de la division de nk por N . Porejemplo, si n = 2 y k = 3, tenemos:

Page 126: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

106 Capıtulo 3. Transformada discreta de Fourier

Enk = E6

= e−j 2π4 6 = e−jπ3 = e−jπ = e−j 2π

4 2

= E2 = E6 mod 4

= E(nk) mod N

Utilizando este hecho, la ecuacion queda:X[0]X[1]X[2]X[3]

=

1 1 1 11 E1 E2 E3

1 E2 E0 E2

1 E3 E2 E1

x[0]x[1]x[2]x[3]

El elemento E0 no se ha reemplazado por 1 para generalizar elalgoritmo en pasos posteriores.

Realizando un reordenamiento de las filas de las matricesy reescribiendo la matriz como un producto de dos matrices,tenemos:

X[0]X[2]X[1]X[3]

=

1 E0 0 01 E2 0 00 0 1 E1

0 0 1 E3

1 0 E0 00 1 0 E0

1 0 E2 00 1 0 E2

x[0]x[1]x[2]x[3]

Esta factorizacion es la base del algoritmo de transformada

rapida de Fourier (TRF, que en ingles se conoce como Fast Fou-rier Transform, FFT). Notese que se han intercambiado las filas1 y 2 de X[k]. Podemos separar esta operacion en dos etapas,realizando primero el producto de x y la matriz de la derecha,obteniendose un resultado intermedio x1:

x1[0]x1[1]x1[2]x1[3]

=

1 0 E0 00 1 0 E0

1 0 E2 00 1 0 E2

x[0]x[1]x[2]x[3]

Page 127: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.10. Transformada rapida de Fourier 107

Desarrollando esta ecuacion, tenemos:

x1[0] = x[0] + E0x[2]x1[1] = x[1] + E0x[3]x1[2] = x[0] + E2x[2]x1[3] = x[1] + E2x[3]

Ahora bien, como una simplificacion mas E2 = −E0, loque es facil de verificar reemplazando por la exponencial y cal-culando. Por lo tanto, las ecuaciones quedan:

x1[0] = x[0] + E0x[2]x1[1] = x[1] + E0x[3]x1[2] = x[0]− E0x[2]x1[3] = x[1]− E0x[3]

Aquı podemos ver que los segundos terminos en la primera ytercera ecuacion son iguales (excepto por el signo negativo) y lomismo para los segundos terminos en la segunda y cuarta ecua-cion. Por lo tanto, para el calculo del resultado intermedio x1

solo se necesitan 4 sumas y dos multiplicaciones entre numeroscomplejos.

Analicemos ahora el segundo producto matricial:x2[0]x2[1]x2[2]x2[3]

=

1 E0 0 01 E2 0 00 0 1 E1

0 0 1 E3

x1[0]x1[1]x1[2]x1[3]

que desarrollado queda:

Page 128: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

108 Capıtulo 3. Transformada discreta de Fourier

x2[0] = x1[0] + E0x1[1]x2[1] = x1[0] + E2x1[1]x2[2] = x1[2] + E1x1[3]x2[3] = x1[2] + E3x1[3]

Con el mismo razonamiento de antes, E2 = −E0 y E3 =−E1 y por lo tanto para el calculo de esta ecuacion tambiense han usado cuatro sumas y dos multiplicaciones entre nume-ros complejos. En total se requirieron 8 sumas y 4 productoscomplejos ya que:

X[0]X[2]X[1]X[3]

=

x2[0]x2[1]x2[2]x2[3]

Para obtener el X[k] solo tenemos que intercambiar la segunday la tercera filas.

En este ejemplo con N = 4 y r = 2 ha quedado claro que seha reducido la cantidad de operaciones, de 16 multiplicacionescomplejas y 12 sumas complejas, a solo 4 productos complejosy 8 sumas complejas. El algoritmo que se ha ejemplificado esconocido como TRF de base 2, es decir con N = 2r, que consis-te en factorizar la matriz de transformacion en r matrices massencillas con la propiedad de minimizar el numero de productosy sumas necesarios. Para este algoritmo, se consigue una reduc-cion importante del numero de operaciones: en el caso generalse requieren rN/2 multiplicaciones complejas y rN sumas com-plejas. El costo computacional es practicamente proporcional ala cantidad de multiplicaciones. En este caso se puede estimarun factor reduccion relativa del costo computacional como:

Page 129: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.10. Transformada rapida de Fourier 109

N2

rN/2=

2N

r

Por ejemplo si N = 1024 = 210, el tiempo de calculosera 2 × 1024/10 = 204,8 veces menor si se usa el algoritmode la TRF en lugar de el calculo directo de la TDF a partir desu definicion. Esta relacion se ilustra en la Figura 3.13.

N =1024 N =512 N =0

512 K

1 M

FFT

DFT

Figura 3.13. Comparacion del costo computacional de la TDF y el

algoritmo de la TRF.

Existen otras variaciones del algoritmo en las que en vez deusar N = 2r se toma N = br, dando origen a los denominadosalgoritmos de base 4, 8, 16, etc. La Tabla 3.2 muestra la can-tidad de operaciones requeridas por varios de estos algoritmospara N = 4096. Las bases diferentes de las de 2 no son muy uti-lizadas en la practica ya que limitan cada vez mas la cantidadde muestras de la senal a transformar.

Page 130: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

110 Capıtulo 3. Transformada discreta de Fourier

Algoritmo No de productos No de sumasTDF directa 16.777.216 16.773.120TRF base 2 81.924 139.266TRF base 4 57.348 126.978TRF base 8 49.156 126.978TRF base 16 48.132 125.442

Tabla 3.2. Operaciones requeridas para la el calculo de la TDF direc-

tamente a partir de su definicion y utilizando el algoritmo de la TRF

con diferentes bases.

3.11. Preguntas

1. ¿Que unidades tiene la transformada Fourier?

2. ¿Es siempre util realizar el analisis de una senal mediantela transformada de Fourier?

3. ¿Se puede utilizar una base que no sea ortogonal pararealizar el analisis de una senal?¿Cual es la ventaja de laortogonalidad?

4. ¿Existe la transformada de Fourier de una senal senoidal?

5. ¿Por que no se puede analizar cualquier senal con una baseconstituıda solo por funciones sinusoidales?

6. ¿Que relacion tiene la propiedad de desplazamiento fre-cuencial de la TF con la modulacion de senales?

7. ¿Que inconvenientes aparecen cuando pasamos de las senalesanalogicas a las digitales?

8. ¿Como se manifiesta el aliasing en una senal del tiempodesde el punto de vista temporal y frecuencial? ¿Y en unaimagen?

Page 131: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.11. Preguntas 111

9. ¿Como se pueden disminuir los efectos del aliasing?

10. ¿Cual es el resultado mas evidente de muestrear una senal(desde el punto de vista frecuencial)?

11. ¿Por que se dice que la funcion sincronica constituye elinterpolador ideal?

12. ¿Cual es la diferencia entre la transformada de Fourier deuna senal muestreada y la TDF?

13. ¿Que distorsiones incorpora el uso de ventanas rectangula-res en el espectro de la senales resultantes? ¿Como puedeminimizarse este efecto?

14. ¿Que ventajas puede tener plantear a la TDF como unproducto de vectores y matrices? ¿Que significa que unatransformacion sea unitaria y como se logra?

15. ¿Que diferencia existe entre la TDF y la TRF?

16. ¿En que ideas se basa la TRF para lograr su objetivo?

17. ¿Que es la resolucion frecuencial y como puedo aumentar-la?

18. ¿Que significa relleno de ceros (zero-padding)?

19. Cuando se utiliza la TRF, ¿donde se “guardan” las “fre-cuencias negativas”?

20. ¿Que es la autocorrelacion y la correlacion cruzada? ¿Paraque sirven?

21. ¿Como se puede utilizar la TRF para acelerar el calculode la convolucion y de la correlacion?

22. ¿Como se estima el espectro de una senal aleatoria?

Page 132: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

112 Capıtulo 3. Transformada discreta de Fourier

23. ¿Que es el ruido blanco?

24. ¿Que diferencias existen entre el espectro de un delta Diracy un ruido blanco?

25. ¿Como construirıa un analizador de respuesta en frecuen-cia mediante un osciloscopio y oscilador controlado portension?

26. ¿Y con un banco de filtros?

27. ¿Por que decimos que la coclea realiza un “analisis espec-tral”?

28. ¿Que ventajas posee realizar un filtrado directamente enel dominio frecuencial?

29. Suponga que tenemos una senal de banda angosta pero defrecuencia central desconocida y que la energıa del ruido sedistribuye uniformemente en todas las frecuencias. ¿Comoimplementarıa un filtro para “limpiar” esta senal?

30. Suponga que tiene que implementar un sistema digital quetraduzca la senal analogica generada por el “discado” te-lefonico. ¿Como lo harıa usando la TDR?

31. ¿De que manera podrıa implementar un sistema de encrip-tacion digital mediante la TDF?

32. ¿Por que la transformada de Fourier no es adecuada parael analisis de senales no estacionarias? ¿Como se puedeadecuar esta herramienta a este caso particular?

33. Describa como serıa la base de la TDF bidimensional em-pleada para el analisis de las imagenes.

Page 133: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.12. Trabajos practicos 113

3.12. Trabajos practicos

Ejercicio 1: Genere una senal s(t) = sin(2πf1t)+4sin(2πf2t),con f1 = 10 y f2 = 20 Hz, y obtenga su version dis-creta s[n] con perıodo de muestreo Tm = 0,001 seg.en el intervalo de tiempo t = [0 . . . 1] seg. A conti-nuacion:

1. Calcule la TDF S[k] de la senal s[n] y grafiqueel espectro de magnitud de S[k].

2. Verifique la relacion de Parseval para la TDF:

Es =N∑

n=1

s[n]2 =1N

N∑k=1

|S[k]|2

donde N es la cantidad de muestras de s[n].

Realice los siguiente cambios y analice los resultadosobtenidos:

1. Modifique s[n] de forma tal que:

s(t) = sin(2πf1t) + 4sin(2πf2t) + 4

y observe los cambios en el espectro de magni-tud de S[k].

2. Modifique las frecuencias de las senales seno deforma tal que f1 = 10 Hz y f2 = 11 Hz y obser-ve los cambios en el espectro de magnitud deS[k].

3. Modifique nuevamente las frecuencias de las senalesseno de forma tal que f1 = 10 Hz y f2 = 10,5Hz. ¿Que ocurre en el espectro de magnitud deS[k]?.

Page 134: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

114 Capıtulo 3. Transformada discreta de Fourier

4. Modifique el intervalo de tiempo de analisis dela siguiente manera t = [0 . . . 0,72] seg. y obser-ve los cambios en la TDF.

Ejercicio 2: Utilizando el programa didactico SigTeachrealice los siguientes ejercicios:

Genere las siguientes senales:

1. Seno real de perıodo T .2. Cuadrada real de perıodo T .3. Armonica compleja de perıodo T .4. Seno de perıodo 3 o 4 veces menor que T .5. Armonica compleja de perıodo 3 o 4veces

menor que T .6. Suma de la primera (1) y la cuarta (4).

Determine si son ortogonales los pares de senales1 y 4, 1 y 2, 3 y 5, 1 y 6.

Obtenga las TDF de todas las senales y repitael punto anterior para las transformadas de lassenales 1 y 4, 3 y 5, 1 y 6. Discuta los resultadosobtenidos.

Utilice las animaciones didacticas de la TDFpara varias senales sencillas con 128 muestras.

Ejercicio 3: En los archivos de datos ecg.txt, eeg.txt,emg.txt, presion.txt y respiracion.txt se en-cuentran almacenados registros homonimos. Carguelos archivos mencionados y calcule las respectivasTDF. Luego grafique en una ventana los registrosy en otra los espectros de magnitud de cada TDFordenados de forma tal que el ancho de banda vayaaumentando.

Page 135: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

3.12. Trabajos practicos 115

Ejercicio 4: (∗) En la Figura 1 se observa el espectro demagnitud obtenido aplicando la TDF a una senalgenerada mediante la funcion g(t) = sin(2πf1t) +4 sin(2πf2t) y luego digitalizada.

1 29 51 79 101

Muestras

0

64

256

128

Figura 3.14. Espectro de magnitud obtenido mediante la TDF.

Siendo T la duracion total de la senal adquirida yfm la frecuencia de muestreo, indique cuales de lossiguientes conjuntos de parametros puede ser correc-to:

1. T = 249 ms, fm = 512, f1 = 112, f2 = 200 Hz.

2. T = 498 ms, fm = 128, f1 = 56, f2 = 200 Hz.

3. T = 993 ms, fm = 128, f1 = 100, f2 = 50 Hz.

4. T = 498 ms, fm = 256, f1 = 56, f2 = 868 Hz.

5. T = 993 ms, fm = 128, f1 = 100, f2 = 78 Hz.

Page 136: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

116 Capıtulo 3. Transformada discreta de Fourier

6. T = 124,5 ms, fm = 1024, f1 = 3872, f2 =5520 Hz.

Ejercicio 5: (∗) Un metodo simple de interpolacion con-siste en agregar ceros en la TDF de la senal en cues-tion y luego utilizar la TDF inversa. Investigue losdetalles de implementacion de este metodo para elcaso de la senal merval1.txt, correspondientes alIndice MERVAL del ultimo dıa de cada mes. El pri-mer valor corresponde al ındice del 30 de enero de2001, el segundo al 28 de febrero de 2001 y ası suce-sivamente. Suponiendo que los valores se encuentranseparados uniformemente a un mes, obtenga una es-timacion para los valores a mediados de cada mes.En el archivo merval2.txt se encuentran los valorestomados tanto a fin como a mediados de mes parapoder comparar y obtener conclusiones.

Ejercicio 6: (∗) La senal que se encuentra en el archi-vo necg.txt corresponde al registro de la actividadelectrica del corazon de un paciente. Esta senal seha digitalizado a razon de 360 muestras por segun-do. Se sabe que el registro ha sido contaminado conun ruido en la banda de 40 a 180 Hz y se necesitaeliminarlo para poder realizar un diagnostico ade-cuado. Utilice la TDF para filtrar la senal (*).

Ejercicio 7: (∗) Se desea detectar en que intervalos detiempo el instrumento grabado en el archivo nshima.txtha ejecutado la nota LA. La frecuencia de muestreocon que se tomo el registro es de 11025 Hz.

Page 137: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Bibliografıa 117

Bibliografıa

[1] A.V. Oppenheim, A.S. Willsky, S. H. Nawab, y G. Ma-ta Hernandez. Senales y sistemas. Prentice-Hall Hispanoa-mericana, Mexico, 2a. edicion (espanol) , 1998.

[2] A.V. Oppenheim and R. Shaffer. Digital Signal Processing.Pearson Higher Education, 1986.

[3] E. Brigham. Fast Fourier Transform and Its Applications.Prentice Hall, 1st. edition, 1988.

[4] J.G. Proakis y D.G. Manolakis. Tratamiento digital desenales. Prentice Hall, 1a. edicion (espanol), 1998.

[5] H. Kwakernaak, R. Sivan, and R.C.W. Strijbos. ModernSignals and Systems. Prentice Hall, New Jersey, 1991.

[6] A. Papoulis. Sistemas y Circuitos Digitales y Analogicos.Marcombo, 1978.

[7] H. Skilling. Circuitos en Ingenierıa Electrica. Cia. Ed.Continental, Mexico, 1987.

[8] N.K. Sinha. Linear systems. John Wiley, New York, 1991.

[9] L.E. Franks. Teorıa de la senal. Reverte, Barcelona, 1975.

[10] R.A. Gabel y R.A. Roberts. Senales y sistemas lineales.Ed. Limusa S.A., Mexico, 1975.

[11] T. Aljama, M. Cadena, S. Charleston, y O. Yanez. Proce-samiento digital de senales. Universidad Autonoma Metro-politana. Unidad Iztapalapa, Mexico, 1992.

[12] J. Deller, J. Proakis, and J. Hansen. Discrete Time Proces-sing of Speech Signals. Macmillan Publishing, New York,1993.

Page 138: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

118 Capıtulo 3. Transformada discreta de Fourier

[13] S.G. Mallat. A Wavelet Tour of signal Processing. Acade-mic Press, second edition, 1999.

[14] J. W. Cooley and J. W. Tukey. An algorithm for machi-ne calculation of complex Fourier series. Mathematics ofComputation, 19(90):297–301, April 1965.

Page 139: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Capıtulo 4

Introduccion a sistemas

Ruben Acevedo

Temas a tratar

• Definicion de sistema.

• Propiedades de sistemas.

• Sistemas lineales e invariantes en el tiempo (LTI).

• Ecuaciones en diferencias.

• Diagramas de bloques.

Objetivos

• Comprender el concepto de sistema.

• Interpretar correctamente las propiedades de un sistema.

• Comprender la importancia de los sistemas LTI.

• Manejar el concepto de ecuaciones en diferencias.

119

Page 140: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

120 Capıtulo 4. Introduccion a sistemas

4.1. Introduccion

Un sistema se puede ver como cualquier proceso que pro-duce una transformacion de senales, por lo tanto tiene una senalde entrada (entrada de ahora en adelante) y una senal de salida(salida de ahora en adelante) que estan relacionadas entre sı atraves de la funcion del transferencia del sistema.

Los sistemas se pueden dividir en sistemas de tiempo con-tinuo y sistemas de tiempo discreto. Un sistema de tiempo con-tinuo es aquel en que las entradas de tiempo continuo son trans-formadas en salidas de tiempo continuo. La relacion de entraday salida se representa con la siguiente notacion: x(t) → y(t),donde x(t) es la entrada y y(t) la salida.

Un sistema de tiempo discreto es aquel que transforma lasentradas de tiempo discreto en salidas de tiempo discreto, larepresentacion de estos es de la siguiente forma: x[n]→ y[n].

Sistema de tiempo continuo

Sistema de tiempo discreto

x ( t ) y ( t )

x [ n ] y [ n ]

Figura 4.1. Representacion de sistemas de tiempo continuo y discreto.

4.2. Interconexion de sistemas

Una idea muy importante es la de interconectar sistemas,ya sea en serie (tambien llamada en cascada) o en paralelo. Enla Figura 4.2 se representan los dos tipos de interconexiones, aeste tipo de diagramas se los denomina diagramas de bloques.

Page 141: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

4.2. Interconexion de sistemas 121

Sistema 1 Sistema 2

Entrada Salida

(a)

Si stema 1

Sistema 2

Entrada Salida

(b)

Sistema 1 Sistema 2

Sistema 3

Entrada Salida

(c)

Figura 4.2. Interconexion de sistemas: (a) en serie, (b) en paralelo,

(c) en serie/paralelo.

Page 142: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

122 Capıtulo 4. Introduccion a sistemas

Las interconexiones se utilizan para construir sistemas apartir de otros ya existentes; por ejemplo se pueden disenar sis-temas para resolver expresiones matematicas complicadas comoel caso de y[n] = (2.x[n] − x[n]2)2. El diagrama mostrado enla Figura 4.3 corresponde a dicho sistema, aquı los signos “+”y “-” indican que la senal x[n]2 sera restada de la senal 2x[n];en caso que estos signos no esten presentes se asumira que lascorrespondientes senales seran sumadas.

Multiplicar x 2

Cuadrado

Cuadrado

+

-

y [ n ] x [ n ]

Figura 4.3. Sistema para el calculo de y[n] = (2.x[n]− x[n]2)2

Otro tipo importante de interconexion de sistemas es lainterconexion de realimentacion que se muestra en la Figura 4.4.La salida del sistema 1 es la entrada al sistema 2, mientras quela salida de este se realimenta y se suma a la entrada externadel sistema 1 para producir la senal de entrada al mismo.

4.3. Propiedades de los sistemas

Los sistemas presentan propiedades que pueden ser toma-das como criterio para realizar una clasificacion. Estas son vali-das tanto para sistemas de tiempo continuo como de tiempodiscreto, sin embargo se enfatizara el caso de estos ultimos.

Page 143: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

4.3. Propiedades de los sistemas 123

Entrada Salida Sistema 1

Sistema 2

Figura 4.4. Interconexion de realimentacion.

Sistemas con y sin memoria: un sistema es sin memoria sisu salida en cada instante de tiempo depende solo de la entradaen ese mismo instante. En el caso que la salida dependa delvalor actual y de valores anteriores de la entrada el sistema escon memoria.

Un ejemplo de sistema sin memoria es el definido por lasiguiente ecuacion y(t) = Rx(t) (o su equivalente discreto y[n] =Rx[n] ), donde y(t) representa la diferencia de potencial en losextremos de una resistencia R y x(t) la corriente a traves deesta. El sistema y[n] =

∑3k=0 x[n − k] + y[n − 2] en cambio es

un ejemplo de sistema con memoria.

Sistemas invertibles: un sistema es invertible si distintasentradas producen distintas salidas, es decir, dada la salida delsistema es posible determinar la entrada.

Ejemplos:y[n] = 2x[n] sistema invertibley[n] = 2x[n]2 sistema no invertible

Sistemas causales: un sistema es causal si su salida en cual-quier instante de tiempo depende solo de los valores de la entra-da en el instante actual y en instantes anteriores. A menudo este

Page 144: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

124 Capıtulo 4. Introduccion a sistemas

tipo de sistemas es llamado no anticipativos, ya que la salida noanticipa valores futuros de la entrada.

El sistema y[n] =∑3

k=0 x[n− k] es un ejemplo de sistemacausal, a diferencia del sistema y[n] = x[n]− x[n + 1].

Sistemas estables: un sistema estable es aquel en el que en-tradas pequenas o perturbaciones conducen a respuestas que nodivergen.

x ( t )

y ( t ) y ( t )

x ( t )

Figura 4.5. Ejemplos de sistema estable e inestable.

La definicion precedente es intuitiva, estrictamente un sis-tema es estable si para una entrada limitada (su magnitud esta aco-tada) su salida tambien lo es, y por lo tanto no puede divergir.

Los sistemas de la Figura 4.5 representan ambos tipos desistemas, donde x(t) es una aceleracion horizontal aplicada a lapelota y y(t) es la posicion vertical de la misma.

Sistemas invariantes en el tiempo: un sistema es invarian-te en el tiempo si un desplazamiento en la entrada produce elmismo desplazamiento en la salida. Esto es equivalente a decirque si los coeficientes (parametros del sistema) de la ecuacionque define la dinamica del sistema son constantes. En caso con-trario el sistema es variante en el tiempo.

Ejemplos:y[n] = 5x[n] + 2.y[n− 1] sistema invariante en el tiempo.y[n] = sin(ωn)x[n− 1] sistema variante en el tiempo.

Page 145: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

4.3. Propiedades de los sistemas 125

Sistemas lineales: un sistema es lineal si posee la propiedadde superposicion. Es decir, si una entrada consiste en la sumaponderada de varias senales entonces la salida del sistema es lasuperposicion (la suma ponderada) de las respuestas del sistemapara cada una de estas senales.

Matematicamente, un sistema lineal se define a traves delas siguientes propiedades: sean y1(t) y y2(t) las salidas del sis-tema a las entradas x1(t) y x2(t) respectivamente, entonces:

la respuesta a x1(t) + x2(t) es y1(t) + y2(t) (aditividad)

la respuesta a ax1(t) es ay1(t), donde a es un escalar cual-quiera (escalamiento u homogeneidad)

Estas propiedades que definen un sistema lineal se puedencombinar en un solo enunciado, el cual se describe a continua-cion:

ax1(t) + bx2(t)→ ay1(t) + by2(t)

donde a y b son escalares complejos cualquiera.Generalizando se puede demostrar que si:

x[n] =∑

k

akxk[n] = a1x1[n] + a2x2[n] + . . .

es la entrada del sistema entonces:

y[n] =∑

k

akyk[n] = a1y1[n] + a2y2[n] + . . .

es la salida del sistema. Este hecho se conoce como el principiode superposicion, el cual se cumple en sistemas lineales de tiempocontinuo y discretos.

Page 146: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

126 Capıtulo 4. Introduccion a sistemas

4.4. Ecuaciones en diferencias

La dinamica de los sistemas de tiempo continuo se repre-senta mediante una ecuacion diferencial, en el caso que estasea lineal y de coeficientes constantes el sistema se denomina li-neal e invariante en el tiempo (LTI). Estos sistemas representanuna amplia variedad de sistemas y fenomenos fısicos; ejemplo deestos son los circuitos pasivos RLC, sistemas mecanicos masa-resorte y cinetica de reacciones quımicas entre otros.

La representacion de los sistemas LTI en tiempo discre-to se realiza a traves de ecuaciones en diferencias lineales decoeficientes constantes; estas ecuaciones describen procesos se-cuenciales como por ejemplo la obtencion de la respuesta queproduce el tracto vocal (senal de voz) a la excitacion de lascuerdas vocales.

Una ecuacion diferencial de orden N y coeficientes cons-tantes esta dada por:

N∑k=0

αkdky(t)dtk

=M∑

k=0

βkdkx(t)

dtk

la contraparte discreta es la ecuacion en diferencias lineal decoeficientes constantes:

N∑k=0

aky[n− k] =M∑

k=0

bkx[n− k].

Esta ultima ecuacion puede acomodarse de la siguiente for-ma:

y[n] =1a0

[M∑

k=0

bkx[n− k]−N∑

k=1

aky[n− k]

]y expresar la salida en el instante n en funcion de los valores pre-vios de la entrada y la salida; esta ecuacion es llamada ecuacion

Page 147: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

4.4. Ecuaciones en diferencias 127

recursiva, ya que implica un procedimiento de esta naturalezapara determinar la salida. La ecuacion no recursiva esta dadapor la expresion:

y[n] =M∑

k=0

bk

a0x[n− k]

donde la salida es funcion de los valores previos de la entrada.Los sistemas representados por esta ultima ecuacion se denomi-nan de respuesta finita al impulso (FIR, finite impulse response)debido a que esta respuesta tiene una duracion finita, en el casode los sistemas representados por ecuaciones recursivas se de-nominan derespuesta infinita al impulso (IIR, infinite impulseresponse).

Los sistemas FIR son llamados de promedios moviles o mo-ving average (MA), ya que realizan un promedio de la entradaen sucesivos instantes de tiempo. Los sistemas IIR se dividen en2 tipos:

los sistemas autoregresivos (AR) son aquellos en que la sa-lida en el instante n depende solo de los valores anterioresde esta y del valor actual de la entrada, y la ecuacion querige sus dinamicas tiene la siguiente forma:

y[n] = −N∑

k=1

ak

a0y[n− k] + x[n],

los sistemas ARMA son aquellos donde la salida depen-de de valores anteriores de la salida y de la entrada, laecuacion que rige su dinamica se presento anteriormente1.

1Existen casos especiales en que un sistema ARMA puede comportarsecomo FIR ¿puede encontrar un ejemplo de este tipo?

Page 148: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

128 Capıtulo 4. Introduccion a sistemas

4.5. Representacion de sistemas LTIdiscretos

Una forma de representar sistemas LTI discretos es me-diante diagramas de bloques; para esto es necesario definir 3operaciones basicas: suma, multiplicacion por un escalar y re-tardo. La representacion de cada una de estas operaciones semuestra en la Figura 4.6.

x1[n]

x1[n]

x1[n] + x2[n]

x[n] a.x[n] a

R

x[n] x[n-1]

Figura 4.6. Representacion de operaciones de un sistema LTI discreto.

De arriba hacia abajo: sumador, multiplicacion por un escalar, retraso

unitario.

Considere el sistema dado por la siguiente ecuacion en di-ferencias y[n] = 3x[n] − 2y[n − 1], la representacion utilizandodiagrama de bloques se muestra en la Figura 4.7.

En el diagrama de la Figura 4.7 se observa una realimen-tacion de la salida, esto es consecuencia directa de la naturaleza

Page 149: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

4.5. Representacion de sistemas LTI discretos 129

R

x[n] 3 3x[n] y[n]

y[n-1] -2

-2y[n-1]

Figura 4.7. Diagrama de bloques del sistema y[n] = 3x[n]− 2y[n− 1]

recursiva de la ecuacion. Esta situacion no se observa en el dia-grama del sistema y[n] = 3x[n] + 2x[n− 1] que se muestra en laFigura 4.8. Aquı los valores previos de la salida no se utilizan.

R

x[n] 3 3x[n] y[n]

2

2x[n-1]

Figura 4.8. Diagrama de bloques del sistema y[n] = 3x[n] + 2x[n− 1]

Considere ahora el sistema y[n] = 3x[n]+2x[n−1]−2y[n−1], este se puede representar como la conexion en cascada de los2 sistemas anteriores. En la Figura 4.9 se muestra el diagramade bloques de dicho sistema, donde w[n] = 3x[n] + 2x[n− 1].

Page 150: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

130 Capıtulo 4. Introduccion a sistemas

R R

x[n] 3 3x[n]

2

2x[n-1] -2y[n-1]

-2

y[n] w[n]

Figura 4.9. Diagrama de bloques del sistema y[n] = 3x[n] + 2x[n −1]− 2y[n− 1]

4.6. Preguntas

1. ¿Que formas pueden tomar las reglas de comportamientode un sistema? Ejemplifique.

2. ¿Que relacion conceptual existe entre las ecuaciones dife-renciales y las ecuaciones en diferencias?

3. ¿Todos los sistemas MA son FIR? Justifique.

4. ¿Todos los sistemas AR son IIR? Justifique.

5. ¿Todos los sistemas ARMA son IIR? Justifique.

4.7. Trabajos practicos

Ejercicio 1: Para cada uno de los siguientes sistemas de-termine si son causales, lineales, invariantes en eltiempo y si poseen memoria. En cada caso grafiquela salida del sistema y[n] para una entrada dada.

Page 151: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

4.7. Trabajos practicos 131

1. y[n] = g[n]x[n] donde g[n] = A sin(ωnT ) sien-do A constante, ω = 2πf y T el perıodo demuestreo.

2. y[n] =n∑

k=no

x[k]

3. y[n] =n+no∑

k=n−no

x[k]

4. y[n] = x[n− no]

5. y[n] = ex[n]

6. y[n] = x[n] + 2

7. y[n] = nx[n]

Ejercicio 2: Los sistemas con la forma y[n] = ax[n] + bson una caso particular de sistemas NO lineales queha sido denominados sistemas incrementalmente li-neales. Estos sistemas poseen la propiedad de res-ponder en forma lineal a cambios en la entrada, esdecir, la diferencia entre las respuestas de un sistemaincremental lineal a dos entradas cualquiera es unafuncion lineal de la diferencia de las dos entradas.Verifique matematicamente la propiedad menciona-da para el sistema y[n] = 2x[n] + 3.

Ejercicio 3: Considere un sistema representado por laecuacion en diferencias y[n]− ay[n− 1] = x[n] y concondicion inicial y[0] = 1. Responda y justifique:

¿Es el sistema invariante en el tiempo?

¿Es el sistema lineal?

Suponga que la condicion inicial cambia a y[0] =0, ¿modifica esto las respuestas de los puntosanteriores?

Page 152: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

132 Capıtulo 4. Introduccion a sistemas

Ejercicio 4: Los sistemas LTI poseen 2 interesantes pro-piedades:

la salida es cero cuando la entrada es cero (y elsistema esta inicialmente en reposo)

no agregan componentes armonicas al espectrode frecuencias de la senal de entrada.

Proponga 2 sistemas, uno lineal y otro no lineal, yverifique estas propiedades.

Ejercicio 5: Considere el diagrama en bloques de la Fi-gura 4.10 y encuentre la expresion explıcita de lasenal de salida y[n] en funcion de la senal de entradax[n].

D

-2

^2

^2

x [ n ] y [ n ]

Figura 4.10. Diagrama en bloques para el Ejercicio 5.

Ejercicio 6: Considere el sistema LTI y[n]−0,5y[n−1]+0, 25y[n− 2] = x[n] inicialmente en reposo. Encuen-tre el diagrama en bloques que lo representa y en-cuentre la salida del mismo para la entrada mostradaen la Figura 4.11.

Ejercicio 7: (∗) Encuentre la respuesta al impulso de lossistemas LTI causales descriptos por las siguientes

Page 153: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Bibliografıa 133

3

x [ n ]

n 0 1 2 3 . . . . . . . -2 -1

2 2 2

1 1

Figura 4.11. Entrada para Ejercicio 6.

ecuaciones en diferencias y clasifıquelos en funcionde esta2.

1. y[n]− y[n− 2] = x[n]

2. y[n] = x[n] + 0,5x[n− 1]

3. y[n]− y[n− 1] = x[n] + 2x[n− 1]

4. y[n]− 0,5y[n− 1] + 0,25y[n− 2] = x[n]

5. y[n] = x[n] + x[n− 1]− y[n− 1]

Ejercicio 8: (∗) Represente a los sistemas del ejercicio an-terior mediante diagramas en bloque y encuentre susrespuestas al escalon unitario.

Bibliografıa

[1] A.V. Oppenheim, A.S. Willsky, S. H. Nawab, y G. Ma-ta Hernandez. Senales y sistemas. Prentice-Hall Hispanoa-mericana, Mexico, 2a. edicion (espanol), 1998.

2Utilice condiciones iniciales nulas.

Page 154: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

134 Capıtulo 4. Introduccion a sistemas

[2] H. Kwakernaak, R. Sivan, and R.C.W. Strijbos. ModernSignals and Systems. Prentice Hall, New Jersey, 1991.

[3] H. Skilling. Circuitos en Ingenierıa Electrica. Cia. Ed. Con-tinental, Mexico, 1987.

[4] A. Papoulis. Sistemas y Circuitos Digitales y Analogicos.Marcombo, 1978.

[5] N.K. Sinha. Linear systems. John Wiley, New York, 1991.

[6] L.E. Franks. Teorıa de la senal. Reverte, Barcelona, 1975.

[7] R.A. Gabel y R.A. Roberts. Senales y sistemas lineales. Ed.Limusa S.A., Mexico, 1975.

Page 155: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Capıtulo 5

Convolucion discreta

Ruben Acevedo

Temas a tratar

• Convolucion lineal: sumatoria de convolucion.

• Propiedades de la sumatoria de convolucion.

• Convolucion circular.

• Deconvolucion.

Objetivos

• Entender el concepto de la convolucion lineal en tiempodiscreto.

• Relacion entre la convolucion circular y la TransformadaDiscreta de Fourier.

135

Page 156: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

136 Capıtulo 5. Convolucion discreta

5.1. Introduccion

La superposicion es una de las propiedades mas importan-tes de los sistemas lineales e invariantes en el tiempo (LTI).Esto significa que se puede representar la senal de entrada a unsistema LTI en terminos de un conjunto de senales basicas yutilizar este principio para determinar la salida del sistema enterminos de sus respuestas a estas senales basicas.

El impulso unitario, tanto en tiempo continuo como dis-creto, se puede utilizar como bloque elemental para construirmuchas senales de tipo general. Este hecho, junto con las propie-dades de invarianza temporal y superposicion permiten desarro-llar una caracterizacion completa de sistemas LTI en terminosde su respuesta al impulso. Esta representacion conocida comola integral de convolucion en tiempo continuo, y la sumatoriade convolucion en tiempo discreto, proporciona una considera-ble ventaja en el analisis de sistemas LTI. Las propiedades dela esta ultima son de interes debido a su aplicacion en procesa-miento digital de senales.

La convolucion es uno de los procesos mas importantes yeficaces en el analisis de sistemas LTI, ya que permite estableceruna relacion entre la entrada y la salida en el dominio del tiem-po y el de la frecuencia. Una multiplicacion en el dominio deltiempo implica una convolucion en la frecuencia o a la inversa,una multiplicacion en el dominio de la frecuencia implica unaconvolucion en el tiempo.

Para el caso bidimensional, que es una extension directadel unidimensional, existen numerosas aplicaciones relacionadascon el procesamiento y filtrado de imagenes donde la variableindependiente pasa a ser el espacio y no el tiempo.

Page 157: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

5.2. Convolucion lineal 137

5.2. Convolucion lineal

Para entender el concepto de la convolucion lineal es apro-piado comenzar con la representacion de una senal de tiempodiscreto en terminos de funciones impulso unitarios δ[n], equi-valentes a las tipo Delta de Dirac para el caso continuo. Enla Figura 5.1 se representan cinco secuencias, cada una con unimpulso escalado y desplazado en tiempo. El escalamiento decada impulso es igual al valor de x[n] en el instante de tiem-po en el que se encuentra dicha muestra unitaria. Por ejemplo,x[−1]δ[n + 1] = x[−1] para n = −1 y 0 (cero) para n 6= −1; deigual manera x[0]δ[n] = x[0] para n = 0 y 0 (cero) para n 6= 0 yası sucesivamente.

De acuerdo a esto, la suma de las cinco secuencias es iguala x[n] para −2 ≤ n ≤ 2 y tiene la siguiente expresion:

x[−2]δ[n+2]+x[−1]δ[n+1]+x[0]δ[n]+x[1]δ[n−1]+x[2]δ[n−2]

Es decir, al incluir impulsos adicionales escalados y desplazados,se puede escribir

x[n] = . . . +x[−3]δ[n + 3] + x[−2]δ[n + 2] ++x[−1]δ[n + 1] + x[0]δ[n] + x[1]δ[n− 1] ++x[2]δ[n− 2] + x[3]δ[n− 3] + . . .

Es importante notar que para un valor dado de n solo unode los terminos del lado derecho de la ecuacion anterior es dife-rente de cero, y el escalamiento de ese termino es x[n].

En forma compacta se puede escribir la ecuacion anteriorde la siguiente manera:

x[n] =+∞∑

k=−∞

x[k]δ[n− k]

Page 158: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

138 Capıtulo 5. Convolucion discreta

Esta corresponde a la representacion de una secuencia ar-bitraria como una combinacion lineal de secuencias de impulsosunitarios desplazados δ[n − k], donde los pesos de esta combi-nacion son x[k].

Considere un sistema LTI, con una entrada arbitraria dadapor:

x[n] =+∞∑

i=−∞x[i]δ[n− i]

y h[n] como la respuesta al impulso del sistema. Debido a lacaracterıstica de invarianza temporal del sistema, si h[n] es larespuesta a δ[n] entonces h[n −m] es la respuesta a δ[n −m].Ademas considerando que el sistema es lineal se puede aplicarel principio de superposicion, de forma tal de obtener la saliday[n] como una combinacion lineal de las respuestas del sistemaa impulsos desplazados. Entonces la respuesta del sistema a unaentrada arbitraria x[n] se puede expresar como:

y[n] =+∞∑

k=−∞

x[k]h[n− k]

Este resultado se conoce como sumatoria de convolucion, y laoperacion del lado derecho de la ecuacion se conoce como laconvolucion lineal de las secuencias x[n] y h[n] y se representaen forma simbolica como y[n] = x[n] ∗ h[n].

En la Figura 5.2 se muestra el proceso de obtencion de lasalida y[n], de un sistema LTI, a la entrada representada porla secuencia x[n] = [1, 2, 2] y respuesta impulsional dada por lasecuencia h[n] = [2, 1, 0,5]. La entrada puede expresarse comouna sumatoria de secuencias impulsos desplazados y escalados,de forma tal que x[n] = x0[n]+x1[n]+x2[n]. En la Figura 5.2 (b)se muestra la respuesta del sistema a cada una de las xi[n], lascuales consisten en respuestas al impulso desplazadas y escala-

Page 159: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

5.2. Convolucion lineal 139

n -4 -3 -2 0 1 3 4

x[n]

n

n

x[-2].δ[n+2]

x[-1].δ[n+1]

x[1].δ[n-1]

n

n

Figura 5.1. Descomposicion de una senal de tiempo discreto en una

suma de secuencia de impulsos ponderados y desplazados.

Page 160: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

140 Capıtulo 5. Convolucion discreta

das adecuadamente; finalmente la salida del sistema se expresacomo y[n] =

∑2i=0 x[i]h[n− i].

Este procedimiento se puede implementar como una mul-tiplicacion termino a termino similar a la que se utiliza paraoperar con polinomios. Considere las secuencias x[n] y h[n] defi-nidas en el parrafo anterior, la multiplicacion termino a terminoresulta:

h[n] 2 1 0,5x[n] 1 2 2y0[n] 2 1 0,5 → x[0].h[n]y1[n] 4 2 1 → x[1].h[n− 1]y2[n] 4 2 1 → x[2].h[n− 2]y[n] 2 5 6,5 3 1 → y0[n] + y1[n] + y2[n]

Desarrollando la sumatoria de convolucion se observa quela salida para cada instante de tiempo tiene la forma:

y[0] = h[0]x[0]y[1] = h[1]x[0] + h[0]x[1]y[2] = h[2]x[0] + h[1]x[1] + h[0]x[2]

...

y[N ] = h[N ]x[0] +N−1∑i=0

h[i]x[N − i]

Este proceso se muestra en la Figura 5.3, y sera utilizadopara describir mas adelante el procedimiento para calcular laconvolucion circular entre dos secuencias.

Finalmente la operacion de convolucion se puede represen-tar de forma matricial y = Hx, donde x e y son vectores deN muestras y H una matriz de N × N . A modo de ejemplosuponga N = 4, entonces:

Page 161: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

5.2. Convolucion lineal 141

1

3

6.5 5

2

2

1

2

4

1

2

4 2

0.5 1

2

1

1

2

0.5 1

2

h[n] x[n] y[n]

-1 0 1 2 3

h[n]

-1 0 1 2 3 4

x[n]

n n

x [0].δ[n]

-1 0 1 2 3 4 n

-1 0 1 2 3 4 n

-1 0 1 2 3 4 n

-1 0 1 2 3

h0[n] = h[n].x[0]

n

0 1 2 3 4

h1[n] = h[n-1].x[1]

n

0 1 2 3 4 5

h2[n] = h[n-2].x[2]

n

x [1].δ[n-1]

x[2].δ[n-2]

y[n] = h0[n] + h1[n] + h2[n]

-1 0 1 2 3 4 5 5

n

Figura 5.2. Obtencion de la salida de un sistema LTI mediante la

convolucion lineal.

Page 162: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

142 Capıtulo 5. Convolucion discreta

-1 0 1 2 3

h[n]

-4 -3 -2 -1 0 1

x[-n]

-3 -2 -1 0 1 2

-2 -1 0 1 2 3

n

n

x[1-n]

x[2-n]

x[3-n]

x[4-n]

n

y[-2] = x[-n-2] . h[n] = 0 y[-1] = x[-n-1] . h[n] = 0 y[0] = x[-n] . h[n] = 2 y[1] = x[1-n] . h[n] = 5 y[2] = x[2-n] . h[n] = 6.5 y[3] = x[3-n] . h[n] = 3 y[4] = x[4-n] . h[n] = 1 y[5] = x[5-n] . h[n] = 0 y[6] = x[6-n] . h[n] = 0

n

-1 0 1 2 3 4

0 1 2 3 4 5 n

Figura 5.3. Convolucion lineal de dos secuencias por el metodo de

espejado.

Page 163: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

5.3. Convolucion circular 143

y[0]y[1]y[2]y[3]

=

h[0] 0 0 0h[1] h[0] 0 0h[2] h[1] h[0] 0h[3] h[2] h[1] h[0]

·

x[0]x[1]x[2]x[3]

Como se observa de la expresion, solo se obtienen las pri-

meras N muestras correspondientes a la operacion y = x ∗ h.De todas maneras esta forma de calculo es util debido a que sepuede operar facilmente para realizar la deconvolucion, como severa mas delante, y obtener la entrada x[n] o la respuesta alimpulso h[n].

5.3. Convolucion circular

Considere 2 secuencias x1[n] y x2[n], con una longitud deN muestras cada una, y X1[k] y X2[k] sus respectivas Transfor-madas Discretas de Fourier (TDF), multiplicando estas ultimasentre si se obtiene una secuencia de N muestras.

En tiempo continuo se cumple que x(t)∗y(t) TF←→ X(f)Y (f),donde TF significa Transformada de Fourier. Sin embargo entiempo discreto la relacion equivalente x[n] ∗ y[n] TDF←→ X[k]Y [k]no se cumple. Del analisis de esta relacion se desprende que nocoincide la cantidad de muestras de un lado y otro, debido a quepor un lado x1[n] ∗ x2[n] posee 2N − 1 muestras mientras queX1[k]X2[k] tiene N muestras.

Las ecuaciones correctas para el caso de tiempo discretoson:

x1[n] ~ x2[n] TDF←→ X1[k]X2[k]

y

x1[n]x2[n] TDF←→ X1[k] ~ X2[k]

Page 164: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

144 Capıtulo 5. Convolucion discreta

-1 0 1 2 3

h[n]

-7 -6 -5 -4 -3 -2 -1 0 1 2 3 n n

xp[-n]

-6 -5 -4 -3 -2 -1 0 1 2 3 4 n

xp[1-n]

-5 -4 -3 -2 -1 0 1 2 3 4 5 n

xp[2-n]

-4 -3 -2 -1 0 1 2 3 4 5 6 n

xp[3-n]

y[-2] = xp[-n-2] . h[n] = 6.5 y[-1] = xp[-n-1] . h[n] = 3 y[0] = xp[-n] . h[n] = 3 y[1] = xp[1-n] . h[n] = 5 y[2] = xp[2-n] . h[n] = 6.5 y[3] = xp[3-n] . h[n] = 3 y[4] = xp[4-n] . h[n] = 3 y[5] = xp[5-n] . h[n] = 5 y[6] = xp[6-n] . h[n] = 6.5

Figura 5.4. Convolucion circular (o periodica) de dos secuencias.

Page 165: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

5.4. Relacion entre convolucion lineal y circular 145

El nombre de convolucion circular surge del hecho que esposible interpretar la operacion como una convolucion de dossecuencias en la cual, en vez de desplazar una secuencia en formalineal sobre la otra, ambas se disponen en cırculos concentricosy los desplazamientos relativos se convierten en rotaciones.

5.4. Relacion entre convolucion linealy circular

Es posible obtener la convolucion lineal de dos secuenciasutilizando la convolucion circular. A continuacion se resume lasecuencia de pasos necesarios para llevar a cabo esta operacion:

x1[n] → x1m[n] → X1m[k]↓X1m[k]X2m[k] → x1m[n] ~ x2m[n] → x1[n] ∗ x2[n]

x2[n] → x2m[n] → X2m[k]

Se asume que tanto x1[n] como x2[n] poseen N muestras,entonces el primer paso consiste en modificar cada una de lassecuencias agregandoles N − 1 ceros, de forma tal de formarlas secuencias x1m[n] y x2m[n] de 2N − 1 muestras de longitud.Luego se calcula la TDF de cada secuencia, se las multiplicaentre sı y se calcula la TDFI. El resultado es la convolucioncircular x1m[n] y x2m[n] que a su vez es la convolucion linealentre x1[n] y x2[n].

5.5. Deconvolucion

La deconvolucion es la operacion inversa de la convolucion,esto es si un sistema LTI produjo una salida correspondiente auna senal de entrada o excitacion a la cual no tenemos acceso,

Page 166: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

146 Capıtulo 5. Convolucion discreta

podremos recuperarla mediante la deconvolucion y de ahı suimportancia.

Una de las formas para obtener la deconvolucion de dossecuencias es la division termino a termino, que es la operacionrecıproca de la multiplicacion termino a termino. Considere lasecuencias de la Figura 5.2 y suponga que se quiere determinarla secuencia h[n] a partir de la deconvolucion de y[n] y x[n]. Laforma de operar es analoga a la division entre polinomios. Porejemplo, la division termino a termino de izquierda a derechaes:

y[n]→ 2 5 6,5 3 1 ) 1 2 2 ← x[n]2 4 4 2 1 0,5← h[n]0 1 2,5 3

1 2 20 0,5 1 1

0,5 1 10 0 0

y de derecha a izquierda:

y[n]→ 2 5 6,5 3 1 ) 1 2 2 ← x[n]0,5 1 1 2 1 0,5← h[n]

5 6 2 01 2 2

2 4 4 02 4 40 0 0

En caso de que la convolucion se hubiera hecho de la formay = H.x, entonces se puede hacer la deconvolucion de la si-guiente manera: H−1.y = x, donde H−1 es la matriz inversa deH, lo que suele llamarse el caso de “control”. De forma analogasi planteamos ahora y = X.h entonces X−1.y = h , lo que suelellamarse el caso de “identificacion”.

Page 167: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

5.5. Deconvolucion 147

Como la deconvolucion corresponde a lo que suele denomi-narse como un problema inverso presenta algunas particularida-des comunes a este tipo de problemas. Un aspecto a consideraral momento de realizar la deconvolucion es la presencia de unasenal de ruido r[n]. Esta puede aparecer en la entrada del sistema(Figura 5.5) o en la salida del mismo (Figura 5.6), dependiendode en donde aparezca afectara mas o menos a la deconvolucion.

h -1 x d [ n ]

h x [ n ]

r [ n ]

y [ n ]

Figura 5.5. Deconvolucion con ruido aditivo en la entrada.

h x [ n ]

r [ n ]

y [ n ] h -1

x d [ n ]

Figura 5.6. Deconvolucion con ruido aditivo en la salida.

En la Figura 5.7 (a) se muestra la respuesta al impulsoh[n] de un sistema, la entrada x[n] y la salida y[n] obtenida dela forma y = x ∗ h; en la Figura 5.7 (b) se muestra el espectrode frecuencia de la entrada X[k], la respuesta en frecuencia delsistema H[k] y la del sistema inverso H−1[k].

En la Figura 5.8 se muestra como influye el ruido en lasalida del sistema al realizar la deconvolucion de esta con larespuesta al impulso del mismo. En la Figura 5.8 (a) se muestrala senal resultante de la deconvolucion cuando en la salida delsistema se adiciona ruido de 2, 5 y 10 Hz. En la Figura 5.8 (b) se

Page 168: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

148 Capıtulo 5. Convolucion discreta

0 50 100 150 200 250 300-0.1

0

0.1

h[n]

0 50 100 150 200 250 300-1

0

1

x[n]

0 100 200 300 400 500 600-0.5

0

0.5

y[n]

=x[

n]*h

[n]

(a)

0 2 4 6 8 10 12 140

50

100

X[k]

[Hz]

0 2 4 6 8 10 12 140

0.5

1

1.5

H[k

]

[Hz]

0 2 4 6 8 10 12 140

50

100

150

Hin

v[k]

[Hz]

(b)Figura 5.7. Senales de entrada, respuesta al impulso y salida de un

sistema LTI.

Page 169: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

5.6. Preguntas 149

muestran los espectros de frecuencia de las senales resultantes.

5.6. Preguntas

1. Demuestre las siguientes propiedades de la convolucion li-neal de dos senales continuas:

Si y(t) = x(t) ∗ h(T ) entonces Y (w) = X(w)H(w).

Si y(t) = x(t)h(t) entonces Y (w) = X(w) ∗H(w).

donde Y (w), X(t) y H(w) son las trasformadas de Fourierde y(t), x(t) y h(t) respectivamente.

2. Suponga que un sistema posee una respuesta impulsionalh[n] que varıa en el tiempo de acuerdo a una ley conocida.Considerando esto, ¿es posible encontrar la salida del sis-tema mediante la convolucion lineal de la entrada x[n] conh[n]?. Proponga un ejemplo para responder la pregunta.

5.7. Trabajos practicos

Ejercicio 1: Realice las tres operaciones siguientes y co-mente los resultados.

1. multiplique 121 por 311.

2. multiplique los polinomios 1+2x+x2 y 3+x+x2

3. calcule la convolucion de las senales [1, 2, 1] y[3, 1, 1].

Ejercicio 2: Dado el sistema 6y[n]−4y[n−1]+5y[n−2] =x[n] − 2x[n − 1] + x[n − 2], inicialmente en reposo,obtenga la respuesta al escalon unitario mediante laecuacion en diferencias y luego comparela con la cal-culada mediante la sumatoria de convolucion, para

Page 170: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

150 Capıtulo 5. Convolucion discreta

0 50 100 150 200 250 300-2

0

2xd

1[n]

0 50 100 150 200 250 300-2

0

2

xd5[

n]

0 50 100 150 200 250 300-5

0

5

xd10

[n]

(a)

0 2 4 6 8 10 12 140

50

100

Xd1[

k]

[Hz]

0 2 4 6 8 10 12 140

50

100

150

Xd5[

k]

[Hz]

0 2 4 6 8 10 12 140

100

200

300

Xd10

[k]

[Hz]

(b)Figura 5.8. Influencia del espectro de frecuencias del ruido en la de-

convolucion.

Page 171: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

5.7. Trabajos practicos 151

lo que debera encontrar previamente su respuesta alimpulso.

Ejercicio 3: Considere un sistema LTI con respuesta alimpulso h[n] y muestre que cuando la entrada x[n]es una secuencia periodica con perıodo N , la saliday[n] tambien es periodica con el mismo perıodo.

Ejercicio 4: (∗) Defina tres senales cualquiera y muestrenumericamente las siguientes propiedades de la con-volucion:

1. conmutativa: y ∗ x = x ∗ y2. asociativa: x ∗ (y ∗w) = (x ∗ y) ∗w3. distributiva con respecto a la suma: x ∗ (y +

w) = x ∗ y + x ∗w

Ejercicio 5: Verifique las condiciones de aplicabilidad pa-ra la propiedad:

x ∗ y = F−1FxFy

utilizando senales de N muestras y comparando losresultados de la convolucion calculada mediante:

1. la sumatoria de convolucion con ciclos for,

2. la funcion conv,

3. la funcion filter,

4. las funciones fft y ifft utilizadas directamen-te como lo indica la propiedad,

5. las funciones fft e ifft pero agregando N − 1ceros tanto a x como a y.

Page 172: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

152 Capıtulo 5. Convolucion discreta

Ejercicio 6: Considere dos sistemas LTI conectados encascada (Figura 5.9), con respuestas al impulso da-das por hA[n] = sin(8n) y hB [n] = anu[n], don-de a ∈ R, |a| < 1 y u[n] es la funcion escalonunitario. Determine la salida y[n] para una entradax[n] = δ[n]− aδ[n− 1].

h A h B

x [ n ] w [ n ] y [ n ]

Figura 5.9. Sistemas en cascada.

Ejercicio 7: (∗) La relacion entrada–salida de dos siste-mas LTI conectados en cascada no depende del or-den en el que estan conectados. Este hecho, conoci-do como propiedad conmutativa, depende tanto dela linealidad como de la invariancia en el tiempode ambos sistemas. Considere dos sistemas A y Bconectados como muestra la Figura 5.9. El sistemaA es LTI con una respuesta impulsional dada porhA[n] =

(12

)nu[n]. El sistema B es lineal pero va-

riante en el tiempo y da como salida y[n] = nw[n]para una entrada w[n].

1. Muestre que la propiedad conmutativa no secumple si los dos sistemas no son LTI (supongauna entrada sencilla).

2. Muestre que la propiedad conmutativa se cum-ple redefiniendo el sistema B como LTI.

3. Redefina el sistema B segun y[n] = w[n] + 2 yvuelva a verificar la propiedad.

Ejercicio 8: (∗) En el archivo pb100.txt se encuentra larespuesta al impulso h[n] de un sistema con frecuen-

Page 173: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

5.7. Trabajos practicos 153

cia de muestreo 1000 Hz. Este sistema se comportacomo un filtro pasa bajos con frecuencia de corte 100Hz.

1. Utilice la convolucion para filtrar la senal x[n]consistente en la suma de 5 senales senoidalescon frecuencias entre 50 y 150 Hz.

2. Utilice la deconvolucion para obtener nueva-mente la entrada x[n] a partir de la salida y[n]y la respuesta al impulso h[n].

3. Evalue el efecto del ruido en el proceso de de-convolucion para las dos situaciones que se mues-tran en la Figura 5.10. En ambos casos analicelo que ocurre cuando:

el ancho de banda de r[n] es inferior a 100Hz.r[n] tiene componentes frecuenciales entre100 y 300 Hz.

a)h

x [ n ]

r [ n ]

y [ n ]

b)h

x [ n ]

r [ n ]

y [ n ]

Figura 5.10. Sistema con ruido aditivo a) en la entrada y b) en la

salida.

Page 174: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

154 Capıtulo 5. Convolucion discreta

Bibliografıa

[1] A.V. Oppenheim, A.S. Willsky, S. H. Nawab, y G. Ma-ta Hernandez. Senales y sistemas. Prentice-Hall Hispanoa-mericana, Mexico, 2a. edicion (espanol), 1998.

[2] N.K. Sinha. Linear systems. John Wiley, New York, 1991.

[3] A.V. Oppenheim and R. Shaffer. Digital Signal Processing.Pearson Higher Education, 1986.

[4] J.G. Proakis y D.G. Manolakis. Tratamiento digital desenales. Prentice Hall, 1a. edicion (espanol) , 1998.

[5] H. Kwakernaak, R. Sivan, and R.C.W. Strijbos. ModernSignals and Systems. Prentice Hall, New Jersey, 1991.

Page 175: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Capıtulo 6

Transformada Z

Humberto Torres, Ruben Acevedo

Temas a tratar

• Representacion de sistemas de tiempo discreto.

• Mapeos s− z.

• Funcion de transferencia en z.

• Respuesta en frecuencia de sistemas de tiempo discreto.

Objetivos

• Utilizar la transformada Z como herramienta para obtenerla expresion de tiempo discreto de un sistema a partir dela ecuacion diferencial que rige su dinamica.

• Obtener la respuesta en frecuencia de sistemas de tiempodiscreto.

• Analizar las limitaciones de las transformaciones confor-mes utilizadas.

155

Page 176: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

156 Capıtulo 6. Transformada Z

6.1. Introduccion

En muchos casos se desea transformar un sistema de tiem-po continuo en un sistema de tiempo discreto, en esta situa-cion existe el problema de la conversion adecuada del sistemade tiempo continuo deseado en un sistema de tiempo discretoapropiado.

Este tipo de transformaciones se ha visto favorecida porel advenimiento de la tecnologıa digital de alta densidad y altavelocidad, especialmente en sistemas de filtrado y procesamien-to de senales que antes eran esencialmente de tiempo continuo.La flexibilidad que proveen estos dispositivos es una ventaja im-portante con respecto a la implementacion tradicional. Este esel caso de los sistemas basados en los Procesadores de SenalesDigitales o DSP. Sin embargo, en aplicaciones de muy alta fre-cuencia los sistemas analogicos son todavıa irreemplazables.

Mediante el empleo de transformaciones conformes, comolas que seran mencionadas en este texto, los disenos de sistemasde tiempo continuo pueden ser transformados en sistemas detiempo discreto con las especificaciones correspondientes.

6.2. Definicion de transformada Z

La transformada Z de una secuencia de tiempo discretox[n] se define como:

X(z) =+∞∑

n=−∞x[n]z−n

donde z es una variable compleja de la forma z = rejΩ, r esla magnitud de z y Ω es el angulo. La relacion entre x[n] y sutransformada Z se indica como:

x[n] Z←→ X(z).

Page 177: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6.2. Definicion de transformada Z 157

La transformada X(z) es en realidad la transformada deLaplace de x[n], y por consiguiente la generalizacion correspon-diente de la transformada de Fourier. Si x[n] es el resultado demuestrear la senal continua x(t), es decir, la modulacion de x(t)con un tren de pulsos tipo delta de Dirac:

x[n] = x(t)+∞∑

n=−∞δ (t− nT ) =

+∞∑n=−∞

x (nT ) δ (t− nT )

entonces la transformada de Laplace de x[n] esta dada por:

X(s) =

+∞∫−∞

[+∞∑

n=−∞x (nT ) δ (t− nT )

]e−st dt

Intercambiando el orden de la sumatoria y la integral:

X(s) =+∞∑

n=−∞x (nT )

+∞∫−∞

δ (t− nT ) e−st dt

integrando se obtiene:

X(s) =+∞∑

n=−∞x (nT ) e−snT

Si comparamos esta ecuacion con la definicion de la transforma-da Z encontramos que:

z = esT

Page 178: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

158 Capıtulo 6. Transformada Z

que es una igualdad clave para encontrar la relacion entre latransformada Z muchos otras transformaciones lineales de in-teres. Utilizando la notacion xδ[n] = x(nT ) obtenemos final-mente:

X(z) =+∞∑

n=−∞xδ[n]z−n

Si ahora sustituimos z por su expresion en forma polar se puedeinterpretar X(z) en terminos de la transformada de Fourier:

X(z)|z=rejw =+∞∑

n=−∞xδ[n]

(rejw

)−n=

+∞∑n=−∞

xδ[n]r−ne−jwn

cuando r = 1 se obtiene

X (z)|z=rejw =+∞∑

n=−∞x [n] e−jwn

De esta ultima ecuacion se observa que la Transformada deFourier de una secuencia discreta es en realidad la transformadaZ de la secuencia evaluada sobre el cırculo unitario. Si esta eva-luacion se realiza sobre una unica vuelta del cırculo unitario ya intervalos discretos determinados, entonces estamos en el casode la transformada discreta de Fourier.

6.2.1. Convergencia de la transformada Z

La transformada Z no converge para todas las secuencias,ni para todos los valores de z. Para una determinada secuen-cia, el conjunto de valores de z para los cuales la TransformadaZ converge, se denomina region de convergencia. Para que latransformada Z de una secuencia sea convergente es necesarioque la serie sea absolutamente sumable, es decir:

Page 179: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6.2. Definicion de transformada Z 159

+∞∑n=−∞

|x [n] z−n| < M

+∞∑n=−∞

∣∣x [n] r−ne−jθn∣∣ < M

+∞∑n=−∞

|x [n]| r−n < M

Luego, la convergencia o no de la transformada Z viene de-terminada por los coeficientes x[n]. Por ejemplo, sea la secuenciax[n] = anu[n]; entonces:

X(z) =+∞∑

n=−∞anu (n) z−n =

+∞∑n=0

anz−n

y entonces:

+∞∑n=0

∣∣anz−n∣∣ =

+∞∑n=0

∣∣anr−ne−jθn∣∣

=+∞∑n=0

∣∣ar−1e−jθ∣∣n

=+∞∑n=0

∣∣∣ar

∣∣∣n < M

La transformada Z es convergente solo si r > a entonces|z| > a y converge a:

Page 180: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

160 Capıtulo 6. Transformada Z

X(z) =+∞∑

n=−∞anu(n)z−n

=+∞∑n=0

anz−n

=+∞∑n=0

(az−1

)n= 1 + az−1 + a2z−2 + ....

=1

1− az−1

=z

z − a

Ya que la transformada Z es funcion de una variable com-pleja, es conveniente describirla e interpretarla usando el planocomplejo, tal como se indica en la Figura 6.1.

Un grupo importante de transformadas Z esta constitui-do por aquellas funciones X(z) que son racionales, es decir uncociente de polinomios en z. En ellas, las raıces del numerador(valores de z tales que X(z) = 0), se denominan ceros de X(z).Analogamente, a las raıces del denominador (valores de z quehacen que X(z)→∞) se les denomina polos de X(z). No puedehaber polos en la region de convergencia, estos se encuentran enel lımite de la region de convergencia, como se ve en el ejemplode la Figura 6.1.

6.2.2. La transformada Z inversa

Una de las aplicaciones mas importantes de la transforma-da Z es el analisis de sistemas discretos lineales e invariantes

Page 181: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6.2. Definicion de transformada Z 161

Cero

Polo

Im( z )

Re( z )

Convergente

Plano z

Figura 6.1. Representacion de X(z) en el plano complejo

Page 182: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

162 Capıtulo 6. Transformada Z

en el tiempo (LTI). Este analisis suele requerir calcular la trans-formada Z inversa.

La transformada Z inversa esta formalmente definida co-mo:

x[n] =1

2πj

∮C

X(z)zn−1 dz

donde la integral es una integral de contorno sobre el caminocerrado C que encierra al origen y se encuentra en la region deconvergencia de X(z) en el plano z.

Existen tres metodos, frecuentemente utilizados en la practi-ca, para recuperar la secuencia original a partir de su transfor-mada Z:

Calculo directo de la integral.

Expansion en serie de terminos z y z−1

Expansion en fracciones simples y busqueda en tabla.

El metodo del calculo de la integral rara vez se utiliza, eimplica la utilizacion del teorema del residuo de Cauchy.

Si la transformada Z es una funcion racional, la expresionen forma de serie de potencias puede obtenerse facilmente me-diante division de polinomios. Podremos observar como precisa-mente los coeficientes asociados a cada uno de los terminos z−n

de la serie son los valores de la secuencia , ya que por definicionla transformada Z es:

X(z) =+∞∑

n=−∞x[n]z−n

Un procedimiento mas general consiste en realizar una Des-composicion en Fracciones Simples e identificar las transforma-das simples de los terminos ası obtenidos.

Page 183: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6.3. Propiedades de la transformada Z 163

Sea

X(z) =P (z)Q (z)

siendo M el orden de P (z) y N el orden de Q(z).Si M < N y solo existen polos de primer orden

X(z) =P (z)Q (z)

=N∑

k=1

Ak

z − zksiendo Ak =

(z − pk)X (z)z

∣∣∣∣z=pk

Si M ≥ N :

X(z) = BM−nzM−n + BM−n−1zM−n−1 + · · ·

· · ·+ B1z + B0 +N∑

k=1

Ak

z − zk

siendo los Bi los coeficientes obtenidos mediante division hastaque el resto sea de un orden igual al del denominador menos 1.Con este resto se procede a descomponer en fracciones simplesy el resultado se anade al de la division.

6.3. Propiedades de la transformada Z

Al igual que otras transformadas, la transformada Z po-see propiedades que la hacen una herramienta muy util para elestudio de senales y sistemas de tiempo discreto.

1. Linealidad

Page 184: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

164 Capıtulo 6. Transformada Z

Si x1[n] Z←→ X1(z) y x2[n] Z←→ X2(z) entonces

ax1[n] + bx2[n] Z←→ aX1(z) + bX2(z).

2. Desplazamiento en el tiempo

Si x[n] Z←→ X(z) entonces x[n− no]Z←→ X(z)z−no .

3. Desplazamiento en la frecuencia

Si x[n] Z←→ X(z) entonces ejΩonx[n] Z←→ X(e−jΩoz).

4. Inversion en el tiempo

Si x[n] Z←→ X(z) entonces x[−n] Z←→ X( 1z ).

5. Propiedad de convolucion

Si x1[n] Z←→ X1(z) y x2[n] Z←→ X2(z) entonces

x1[n] ∗ x2[n] Z←→ X1(z)X2(z).

6. Diferenciacion en el dominio Z

Si x[n] Z←→ X(z) entonces nx[n] Z←→ −z dX(z)dz

6.4. Representacion de sistemas dis-cretos mediante transformada Z

En el caso de los sistemas LTI definidos por ecuacionesen diferencias, las propiedades de la transformada Z proveenun procedimiento muy conveniente para obtener la funcion detransferencia, la respuesta en frecuencia o la respuesta temporaldel sistema.

Si se considera el sistema definido por la ecuacion

Page 185: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6.4. Representacion de sistemas discretos mediantetransformada Z 165

y[n]− 12y[n− 1] = x[n] +

13x[n− 1]

aplicando la definicion de transformada Z a ambos lados de laecuacion y utilizando las propiedades de linealidad y desplaza-miento se obtiene

Y (z)− 12Y (z)z−1 = X(z) +

13X(z)z−1.

Realizando algunos pasos algebraicos se obtiene la funcionde transferencia del sistema de la forma

H(z) =Y (z)X(z)

=1 + 1

3z−1

1− 12z−1

este proceso se puede generalizar para cualquier ecuacion endiferencias lineal y con coeficientes constantes.

En el caso expuesto se dispone de la ecuacion en diferenciasy a partir de esta se obtiene la funcion de transferencia delsistema; pero el caso de mayor interes es obtener la ecuacionen diferencias a partir de la ecuacion diferencial que define ladinamica del sistema en tiempo continuo.

Un metodo para obtener la ecuacion en diferencias del sis-tema de tiempo discreto es utilizando transformaciones confor-mes que mapean el plano S en el plano Z como lo resume laFigura 6.2.

Los pasos involucrados en el proceso son los siguientes :

Obtencion de la funcion de transferencia del sistema encuestion.

Aplicacion de una transformacion conforme para mapearel plano s en el plano z y obtener de esta manera la ex-presion de la funcion de transferencia del sistema en eldominio de Z.

Page 186: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

166 Capıtulo 6. Transformada Z

Ecuaciones diferenciales

Razón de polinomios en s

Transformada de Laplace

Transformación conforme

Razón de polinomios en z

Ecuaciones en diferencias

Transformada Z

y ( m ) ( t ) = f ( y ( t ), y ' ( t ),..., y ( m -1 ) ( t ), x ( t ), x '( t ),..., x ( m ) ( t ) )

y [ n ] = g ( y [ n -1] ,..., y [ n - m ],..., x [ n ], x [ n -1],..., x [ n - m ] )

Y ( s )

Y ( z )

Figura 6.2. Proceso de obtencion de la ecuacion en diferencias me-

diante transformacion conforme.

Finalmente aplicacion de la propiedad de desplazamientopara obtener la ecuacion en diferencias del sistema. Es-ta ultima propiedad se puede representar de la siguientemanera : Z(x[n−m])⇔ X(z)z−m.

Las transformaciones conformes deben cumplir ciertas con-diciones impuestas por la relacion z = esT , estas se mencionana continuacion y se representan en la Figura 6.3:

Condicion 1 : el eje imaginario del plano s debe ser mapeadoen el cırculo unitario del plano z, esta condicion es necesariapara preservar las caracterısticas de respuesta en frecuencia delsistema continuo.Condicion 2 : el semiplano izquierdo del plano s (Re[s] < 0) de-be ser mapeado en el interior del cırculo unitario del plano z.

Las condiciones son impuestas a toda transformacion queintente mapear sistemas de tiempo continuo estables (polos y ce-ros en el semiplano izquierdo del plano s) en sistemas de tiempodiscreto estables (polos en el interior del circulo unitario concentro en el origen del plano z).

Page 187: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6.4. Representacion de sistemas discretos mediantetransformada Z 167

Plano z Plano s Im

g[s]

Re[s]

Img [z]

Re [z]

Figura 6.3. Condiciones de mapeo mediante transformacion confor-

me.

Page 188: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

168 Capıtulo 6. Transformada Z

Hay varias transformaciones conformes que permiten rea-lizar el mapeo mencionado anteriormente, dos de ellas son lastransformacion de Euler y la transformacion bilineal, las cualesse describen a continuacion.

6.4.1. Transformacion de Euler

La transformacion de Euler aproxima el cociente diferencialque define la derivada por un cociente incremental de la forma

dy

dt≈ ∆y

∆t

La derivada dydt en el tiempo t = nT , la substituimos por la

diferencia hacia atras (Figura 6.4)

dy (t)dt

∣∣∣∣t=nT

=y (nT )− y (nT − T )

T

dy (t)dt

∣∣∣∣t=nT

=y (n)− y (n− 1)

T

Donde T representa el perıodo de muestreo, e y(n) = y(nT ).El diferenciador analogico con salida dy

dt tiene la funcion detransferencia H(s) = s, mientras el sistema digital que pro-duce la salida y(nT )−y(nT−T )

T tiene la funcion de transferenciaH(z) = 1−z−1

T . Consecuentemente, el equivalente en el dominiode la frecuencia es:

s =1− z−1

T

La segunda derivada d2ydt2 se reemplaza por la segunda dife-

rencia, que se deriva como sigue:

Page 189: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6.4. Representacion de sistemas discretos mediantetransformada Z 169

H(s)=s y(t) dy(t) / dt

H(z)=(1-z-1)/T y(n) ( y(n) - y(n-1) ) / T

Figura 6.4. La sustitucion de la diferencia hacia atras por la derivada.

d2y (t)dt2

∣∣∣∣t=nT

=d

dt

[dy (t)

dt

]t=nT

d2y (t)dt2

∣∣∣∣t=nT

=y(nT )−y(nT−T )

T − y(nT−7)−y(nT−2T )T

T

d2y (t)dt2

∣∣∣∣t=nT

=y (n)− 2.y (n− 1) + y (n− 2)

T 2

En el dominio de la frecuencia se tiene:

s2 =1− 2z−1 + z−2

T 2=(

1− z−1

T

)2

De este razonamiento se induce facilmente que la k-esimaderivada de y(t) resulta en la relacion equivalente en el dominiode la frecuencia:

sk =(

1− z−1

T

)k

Consecuentemente, la funcion de transferencia obtenida co-mo el resultado de la aproximacion de las derivadas mediantediferencias finitas es:

H(z) = Ha(s)|s=(1−z−1)/T

Page 190: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

170 Capıtulo 6. Transformada Z

donde Ha(s) es la funcion de transferencia analogica.A continuacion se analizan las implicaciones de la corres-

pondencia del plano s al plano z. Haciendo s = jΩ se tieneque:

z =1

1− sT

z =1

1− jΩT

z =1

1 + Ω2T 2+ j

ΩT

1 + Ω2T 2

Como −∞ < Ω < +∞, el correspondiente lugar de puntosen el plano z es un circulo de radio z = 1/2 y con centro enz = 1/2, como se muestra en la 6.5.

Esta transformacion puede ser utilizada sin problemas uni-camente en el mapeo de sistemas del tipo pasa bajos y pasa-banda (cuya frecuencia de corte sea menor a fm/12), ya que nocumple perfectamente con las dos condiciones de mapeo men-cionadas. En la Figura 6.6 se muestra que la condicion de queel eje imaginario del plano s se mapee en el circulo unitario, seaproxima aceptablemente hasta θ < π/6 radianes.

Supongamos que se dispone de una secuencia x[n], con unperıodo de muestreo T = 1/fm. Por el teorema del muestreo,se tiene que fm > 2fM , con fM frecuencia maxima presente enx[n]. Ademas, como θ = 2πf , y teniendo en cuenta la restriccionθ < π/6 rad., se tendra que fM < fm/12 para ası cumplir conla condicion de que el eje imaginario del plano s se mapee sobrela circunferencia unidad en el plano z.

6.4.2. Transformacion bilineal

La transformacion bilineal transforma el eje jΩ en la cir-cunferencia unidad en el plano z solo una vez, evitando el so-

Page 191: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6.4. Representacion de sistemas discretos mediantetransformada Z 171

Plano z

1/2

Plano s

σ

Figura 6.5. Transformacion de Euler.

Page 192: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

172 Capıtulo 6. Transformada Z

Plano z

1/2

π/6

Figura 6.6. Restriccion en θ para que el plano s se mapee en el cırculo

unitario.

lapamiento de componentes de frecuencia. Ademas, todos lospuntos del semiplano izquierdo de s se corresponden con el inte-rior de la circunferencia unidad en el plano z y todos los puntosdel semi plano derecho de s se corresponden con puntos fuerade la circunferencia unidad del plano z.

La transformacion bilineal se puede ligar a la forma trape-zoidal para integracion numerica. Por ejemplo consideremos lafuncion

H(s) =b

a + s

Este sistema tambien esta caracterizado por la ecuacion diferen-cial

dy(t)dt

+ a.y(t) = b.x(t)

Que evaluada en t = nT nos da:

Page 193: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6.4. Representacion de sistemas discretos mediantetransformada Z 173

y′[nT ] = −a.y[nT ] + b.x[nT ]

En lugar de sustituir una diferencia finita por la deriva-da, supongamos que integramos la derivada y aproximamos laintegral mediante la formula trapezoidal. Ası

y(t) =

t∫t0

y′(τ)dτ + y(t0)

donde y′ denota la derivada de y. Para t = nT y t0 = nT − Tproduce:

y[nT ] =T

2(y′ [nT ] + y′ [nT − T ]) + y [nT − T ]

sustituyendo la derivada

y[nT ] =T

2((−ay[nT ] + bx[nT ) +

+(−ay[nT − T ] + bx[nT − T ])) + y[nT − T ]

haciendo n = nT , y agrupando terminos

(1 +

aT

2

)y [n]−

(1− aT

2

)y [n− 1] =

bT

2(x [n] + x [n− 1])

la transformada z de esta ecuacion en diferencias es

(1 +

aT

2

)Y (z)−

(1− aT

2

)z−1Y (z) =

bT

2[1 + z−1

]X(z)

y la funcion de transferencias queda

Page 194: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

174 Capıtulo 6. Transformada Z

H(z) =b

2T

[1−z−1

1+z−1

]+ a

claramente, la correspondencia del plano s al plano z es:

s =2T

[1− z−1

1 + z−1

]y es la ecuacion que define la transformacion bilineal.

Aunque la anterior derivacion fue para una ecuacion dife-rencial de primer orden, se mantiene en general para una ecua-cion diferencial de N -esimo orden.

De la misma manera que para la transformacion de Euler sepueden analizar las caracterısticas de la transformacion bilineal.Sean

z = rejw

s = σ + jΩ

entonces

s =2T

[1− z

z + 1

]s =

2T

[rejw − 1rejw + 1

]s =

2T

[r2 − 1

1 + r2 + 2r cos (w)+ j

2r sin (w)1 + r2 + 2r cos (w)

]σ =

2T

r2 − 11 + r2 + 2r cos (w)

Ω =2T

2r sin (w)1 + r2 + 2r cos (w)

Page 195: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6.5. Trabajos practicos 175

Primero, hay que notar que si r < 1, entonces σ < 0, ysi r > 1, entonces σ > 0. De aquı que el semiplano izquierdoen s se corresponda con el interior de la circunferencia unidaden el plano z y el semiplano derecho de s se corresponde conel exterior de la circunferencia unidad. Cuando r = 1, entoncesσ = 0 y

Ω =2T

2 sin (w)1 + 2 cos (w)

Ω =2T

tan(w

2

)

De aquı que el rango completo en Ω se corresponde unıvo-camente con el rango −π ≤ w ≤ π. Sin embargo, la correspon-dencia es altamente no lineal (Ver Figura 6.7).

6.5. Trabajos practicos

Ejercicio 1: Determine la funcion de transferencia de lossiguientes sistemas LTI causales :

1. y[n]− 12y[n− 1] + 1

4y[n− 2] = x[n]

2. y[n] = y[n− 1] + y[n− 2] + x[n− 1]

3. y[n] = 7x[n] + 2y[n− 1]− 6y[n− 2]

4. y[n] =∑7

k=0 2−kx[n− k]

Ejercicio 2: Encuentre la repuesta en frecuencia de lossistemas anteriores suponiendo una frecuencia de mues-treo de 10KHz.

Ejercicio 3: Considere el sistema H(z) = 1−2z−1+2z−2−z−3

(1−z−1)(1−0,5z−1)(1−0,2z−1)

Page 196: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

176 Capıtulo 6. Transformada Z

ω=2 a t an (ΩT /2 )

|H (Ω)|

Ω

Ω

ω

π

|H (ω)|

Figura 6.7. Mapeo de w en Ω por medio de la transformacion bilineal

para la respuesta en frecuencia de un filtro rechaza–banda

Page 197: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

6.5. Trabajos practicos 177

1. Dibuje el diagrama de polos y ceros. ¿Es estableel sistema?

2. Determine la respuesta al impulso del sistema.

Ejercicio 4: (∗) El circuito de la Figura 6.8 representa elmodelo fısico de un sistema en observacion.

1. Encuentre la ecuacion de prediccion de la ten-sion en la resistencia Eo[n] en funcion de la ten-sion de entrada Ei[n] utilizando las transforma-ciones de Euler y bilineal.

2. Utilice distintas senales que representen la en-trada Ei[n] y obtenga la salida Eo[n] para cadauna de ellas.

3. Analice la respuesta en frecuencia de los siste-mas discretos obtenidos con las dos transforma-ciones conformes y comparelas con la del siste-ma continuo1.

E i ( t )

1.1K 2.2K 2 µ

1K 1 µ E o ( t )

Figura 6.8. Circuito RC.

1Uitilice para ambas transformaciones conformes una frecuencia demuestreo 4 veces superior a la frecuencia de corte del sistema continuo.

Page 198: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

178 Capıtulo 6. Transformada Z

Bibliografıa

[1] A.V. Oppenheim, A.S. Willsky, S. H. Nawab, y G. Ma-ta Hernandez. Senales y sistemas. Prentice-Hall Hispanoa-mericana, Mexico, 2a. edicion (espanol), 1998.

[2] H. Kwakernaak, R. Sivan, and R.C.W. Strijbos. ModernSignals and Systems. Prentice Hall, New Jersey, 1991.

[3] H. Skilling. Circuitos en Ingenierıa Electrica. Cia. Ed.Continental, Mexico, 1987.

[4] A. Papoulis. Sistemas y Circuitos Digitales y Analogicos.Marcombo, 1978.

[5] N.K. Sinha. Linear systems. John Wiley, New York, 1991.

[6] A.V. Oppenheim and R. Shaffer. Digital Signal Processing.Pearson Higher Education, 1986.

[7] J.G. Proakis y D.G. Manolakis. Tratamiento digital desenales. Prentice Hall, 1a. edicion (espanol), 1998.

[8] L.E. Franks. Teorıa de la senal. Reverte, Barcelona, 1975.

[9] R.A. Gabel y R.A. Roberts. Senales y sistemas lineales.Ed. Limusa S.A., Mexico, 1975.

[10] T. Aljama, M. Cadena, S. Charleston, y O. Yanez. Proce-samiento digital de senales. Universidad Autonoma Metro-politana. Unidad Iztapalapa, Mexico, 1992.

Page 199: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Capıtulo 7

Identificacion de sistemas

Diego Milone

Temas a tratar

• Identificacion de sistemas mediante prediccion lineal.

• Identificacion de sistemas por metodos estaticos y adap-tativos.

• Determinacion del numero optimo de parametros.

Objetivos

• Aprender los conceptos teoricos relacionados con la iden-tificacion de sistemas.

• Conocer las tecnicas mas utilizadas de prediccion lineal.

• Obtener una vision general sobre los problemas relaciona-dos con la identificacion de sistemas.

• Implementar algunas tecnicas sencillas para identificacionde sistemas.

• Reconocer las ventajas, desventajas y posibilidades de apli-cacion de los distintos metodos.

179

Page 200: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

180 Capıtulo 7. Identificacion de sistemas

7.1. Introduccion

Muchas veces nos encontramos frente a un sistema del quepodemos obtener datos en forma de senales analogicas comomovimientos, ondas de presion, ondas electricas o magneticas,concentraciones, etc. En realidad desconocemos los mecanismosque dentro del sistema generan estas senales. Podemos ver alsistema como una caja negra, cuyas caracterısticas intrınsecasdesconocemos y queremos averiguar.

Identificar un sistema consiste encontrar un conjunto de re-glas y parametros asociados que describan un modelo aceptablepara el proceso que en el se esta llevando a cabo.

Los datos obtenibles del sistema son su senal de salida y, enalgunos casos, su senal de entrada. Por ejemplo, en el aparato fo-nador sabemos que las ondas de presion que entran a la traqueatienen forma de pulsos similares a deltas de Dirac en el caso delas vocales. La salida del sistema son las ondas de presion delsonido que sale por la boca. Estas ondas estan caracterizadaspor ser periodicas y con ancho de banda limitado.

Los resultados de la identificacion son la estructura y elconjunto de parametros caracterısticos del modelo. En algunoscasos la estructura del sistema puede ser conocida o supues-ta a priori y la identificacion se reduce a la busqueda de losparametros. En el caso mas general, tanto la estructura comolos parametros deben ser encontrados minimizando algun cri-terio de error. Para el ejemplo del aparato fonador podemossuponer que el sistema es lineal y que la salida del sistema solodepende de la entrada actual y de un numero p de valores an-teriores de la salida. De esta forma hemos fijado la estructuradel sistema1. Solo resta encontrar los coeficientes de la ecuacionque describe este tipo de sistemas.

La identificacion de sistemas se basa fundamentalmente enla teorıa de sistemas, tecnicas de procesamiento de senales y

1Sistema tipo AR de orden p.

Page 201: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7.1. Introduccion 181

algoritmos de busqueda y optimizacion. Estas tecnicas son apli-cadas en una gran variedad de campos como en el procesamientode senales biomedicas, sismografıa, comunicaciones, inteligenciaartificial, etc. Estos procedimientos son atractivos, por ejemplo,para la compresion de datos. En vez de manipular todos los valo-res del vector de muestras, se usa solamente un reducido nume-ro de parametros con lo que se simplifica el almacenamiento otransmision de la senal. La compresion de la senal mediante unmodelo parametrico es tambien atractiva desde el punto de vis-ta de la clasificacion. Hay disponibles algoritmos efectivos parala clasificacion automatica de senales de electrocardiografıa, querepresentan varios estados patologicos y son muy utiles para eldiagnostico. Tambien existen algoritmos para el reconocimientode patrones de voz y caracterısticas del aparato fonador.

Podemos hacer una clasificacion de las tecnicas para laidentificacion de sistemas para ayudarnos en el aprendizaje. Estaclasificacion separa dos grandes grupos: las tecnicas convencio-nales y las no convencionales. Veamos las caracterısticas gene-rales de cada uno.

7.1.1. Tecnicas convencionales

Llamaremos tecnicas convencionales a las que se basan enla teorıa de sistemas lineales y senales estacionarias o cuasi es-tacionarias2. Mediante la extraccion de informacion de un con-junto de senales estacionarias obtendremos un modelo del sis-tema. En este caso el proceso de modelado se realiza en base aun modelo parametrico, lineal y causal, descripto por una ecua-cion generalmente en el dominio de la frecuencia compleja (s oz). Esta ecuacion es la denominada funcion de transferencia delsistema y el modelo mas general es el de tipo ARMA.

2En el caso de senales cuasi estacionarias podemos dividir la senal entrozos localmente estacionarios y aplicar las tecnicas a cada uno por sepa-rado.

Page 202: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

182 Capıtulo 7. Identificacion de sistemas

Dadas estas hipotesis, hemos fijado una parte importantede la estructura del sistema y la identificacion consistira en-tonces en encontrar el orden y los parametros de la funcion detransferencia.

Existen muchas formas de encarar la identificacion bajoestas hipotesis. Analizaremos en esta revision teorica tres meto-dos para la determinacion de parametros: el analisis de la res-puesta; el metodo de prediccion lineal y el metodo adaptativo deWidrow. Estudiaremos tambien dos metodos para la estimacionde orden: prediccion del error final (FPE) y criterio de Akaike.

7.1.2. Tecnicas no convencionales

Estas tecnicas no se encuentran enmarcadas en la teorıade sistemas lineales y ası eliminan una de las mas importantesrestricciones de aplicabilidad que poseen las anteriores. Su apli-cabilidad se ve restringida solo por los costos computacionalesde sus implementaciones.

En general estas tecnicas pertenecen al campo de la busque-da y optimizacion de soluciones. Como la identificacion de sis-temas es realmente un problema de busqueda y optimizacion desoluciones, podemos aplicarlas con mucho exito y pocas restric-ciones sobre las caracterısticas de los sistemas y senales intervi-nientes.

Entre las tecnicas no convencionales podemos citar a los al-goritmos geneticos, las redes neuronales, la programacion dinami-ca, las busquedas aleatorias y muchas otras.

7.2. Analisis de la respuesta para sis-tema continuos

Como introduccion a la identificacion de sistemas revisare-mos algunos metodos utilizados en sistemas continuos, princi-

Page 203: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7.2. Analisis de la respuesta para sistema continuos 183

palmente en el ambito del control de sistemas.Podemos distinguir entre metodos de analisis de la respues-

ta transitoria del sistema y metodos de analisis de la respuestaen frecuencia. Todos se basan en la hipotesis de que trabajamoscon sistemas continuos, lineales e invariantes en el tiempo, y queson conocidos y elementales los estımulos con que se los prueba.

Los metodos de analisis de la respuesta transitoria consis-ten en estimular al sistema con alguna forma de onda conociday estudiar su respuesta temporal. Las funciones de estimulacionmas empleadas son el delta de Dirac y el escalon3.

Mediante la transformada de Laplace podemos escribir:

Y (s) = H(s)X(s)

siendo Y la respuesta, X la excitacion o entrada y H la trans-ferencia.

Sabemos que la transformada de Laplace de un delta deDirac es 1. Si estimulamos al sistema con un delta de Diractendremos X(s) = 1 y ası:

Y (s) = H(s)

donde haciendo la transformada inversa de la salida obtenemospor simple inspeccion la transferencia del sistema.

Para sistemas de primer o segundo orden es simple obte-ner sus parametros estimulandolos con un escalon y analizan-do graficamente ciertos patrones identificables en su respuesta.Consideremos las respuestas al escalon de la Figura 7.1.

En el caso de un sistema de primer orden sabemos que suconstante de tiempo T es igual al tiempo que tarda la salida delsistema en alcanzar el 63 % de su valor final. De manera similar,

3Debemos conocer de antemano la velocidad de respuesta del sistemapara determinar que tan agudo debe ser el impulso de excitacion o la pen-diente del escalon en la experimentacion practica.

Page 204: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

184 Capıtulo 7. Identificacion de sistemas

0 2 4 6 80

0.2

0.4

0.6

0.8

1

Tiempo

Am

plitu

d

Figura 7.1. Respuesta al escalon de dos sistemas lineales. En lınea de

trazos para un sistema de primer orden y en lınea continua para un

sistema de segundo orden.

para el sistema de segundo orden podemos encontrar la frecuen-cia natural no amortiguada ωn y la relacion de amortiguamientoζ. En ambos casos resta determinar la constante de amplifica-cion a partir de la relacion entre el valor final que alcanza lasalida del sistema y la amplitud del escalon. Ası, los sistemashan sido identificados.

En caso de no conocer el orden del sistema podemos utilizarmetodos mas completos para determinarlo junto a los parame-tros caracterısticos. Entre estos encontramos los metodos deStrejc y Sten.

El analisis grafico de la respuesta en frecuencia del sistematambien permite estimar facilmente los parametros caracterısti-cos de sistemas lineales de orden 3 o menor. Consiste en estimu-lar al sistema con senales senoidales de frecuencias variables en

Page 205: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7.3. Metodos de prediccion lineal 185

el rango de interes y registrar la atenuacion que este produce encada caso. De esta manera se puede aproximar una grafica derespuesta en frecuencia para el sistema y de su analisis obtenerlos parametros caracterısticos.

De todas formas, aunque existe una baterıa de metodos deanalisis de la espuesta para sistema continuos, resulta muy difi-cultosa la aplicacion de los metodos antes descriptos a sistemasde orden 20, 50 o mayor.

En las siguientes secciones detalleremos la identificacion desistemas discretos de orden superior.

7.3. Metodos de prediccion lineal

La denominacion prediccion lineal proviene del modelo quese utiliza en la aproximacion del sistema real a identificar. De-cimos que la salida es predecible a partir de una combinacionlineal de las entradas y salidas pasadas.

7.3.1. El modelo ARMA

Consideremos la salida sn de un sistema puede ser deter-minada a partir de su entrada un mediante la ecuacion de re-currencia:

sn = −p∑

k=1

aksn−k + G

q∑`=0

b`un−` (7.1)

donde 1 ≤ k ≤ p, 1 ≤ ` ≤ q con b0 = 1 y G una constante real.Mediante la utilizacion de la transformada Z podemos describirel sistema de la ecuacion (7.1) en el dominio de la frecuenciacompleja:

Page 206: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

186 Capıtulo 7. Identificacion de sistemas

H(z) = G

1 +q∑=1

b`z−`

1 +p∑

k=1

akz−k

(7.2)

7.3.2. El modelo AR

Este modelo de sistemas digitales es muy usado debido asu simplicidad. Debemos notar que cualquier sistema ARMApuede ser aproximado mediante de un modelo AR. Si el sistemaARMA esta dado por la funcion de transferencia (7.2) entoncesmediante division larga podemos obtener la siguiente igualdad:

H(z) = GB(z)A(z)

≈ G

C(z)

Sin embargo, el polinomio C(z) sera de orden infinito. Po-demos aproximar con bastante exactitud el sistema ARMA (7.2)haciendo que C(z) sea del mismo orden que el polinomio A(z).Utilizamos las siguiente expresion para la transferencia del mo-delo AR:

H(z) =G

1 +p∑

k=1

akz−k

(7.3)

que podemos expresar mediante ecuaciones de recurrencia como:

sn = −p∑

k=1

aksn−k + Gun (7.4)

Page 207: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7.3. Metodos de prediccion lineal 187

Supondremos por ahora que conocemos el orden p optimopara nuestra aproximacion y utilizaremos la siguiente expresion:

sn = −p∑

k=1

aksn−k (7.5)

donde estamos eliminando intencionadamente la entrada del sis-tema. Este modelo es el mas utilizado debido a que en la mayorıade las aplicaciones la entrada del sistema es totalmente descono-cida. De esta manera, decimos que la salida puede ser predecidasolamente como una combinacion lineal de las salidas anteriores.Mas adelante resolveremos tanto el problema del orden p comoel de la ganancia G. Ahora nos encargaremos de los coeficientesdel modelo.

7.3.3. Cuadrados mınimos

Supongamos ahora que utilizamos el sistema ARMA delas ecuaciones (7.1) y (7.2) para modelar4 a otro sistema des-conocido con salida sn y entrada un. El error cometido en laaproximacion del valor de la n-esima muestra de la salida sera:

en = sn − sn

Una mejor estimacion del error es utilizar la medida delerror cuadratico:

e2n = (sn − sn)2 =

(sn + sT

na−GuTnb)2

(7.6)

donde:4Notacion: el circunflejoˆsobre una variable indica que se trata de una

variable estimada.

Page 208: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

188 Capıtulo 7. Identificacion de sistemas

a =

a1

a2

...ak

...ap

sn =

sn−1

sn−2

...sn−k

...sn−p

b

b0

b1

...b`

...bq

un =

un

un−1

...un−`

...un−q+1

con b0 = 1 y 1 ≤ k ≤ p y 0 ≤ ` ≤ q.

El objetivo del metodo es minimizar el error cuadratico apartir de la optimizacion de los vectores a y b. Para un problemaen particular tanto la entrada como la salida de sistema estarandadas y tendremos que considerar que debemos minimizar lafuncion:

e2n (a,b)

Para cada instante de tiempo n nos encontramos buscandoel mınimo en una superficie de error en el hiperespacio de solu-ciones con dimension p + q. Otra forma de resolver el problemade minimizacion del error es considerar el error cuadratico total(ECT) sobre el proceso y optimizar los vectores a y b para todoel proceso. En cualquier caso el mınimo constituye la solucionde nuestro problema.

La particular utilizacion de esta medida del error da origena un amplio grupo de tecnicas para encontrar el mınimo globalde esta funcion cuadratica. De aquı que se ha denominado a estecomo el metodo de cuadrados mınimos.

Page 209: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7.3. Metodos de prediccion lineal 189

Supongamos que ε2 (a,b) es una expresion valida para lamedida del error. Deberemos encontrar:

∇a,b ε2 = 0 (7.7)

Esta condicion puede cumplirse en cualquier mınimo lo-cal de la superficie de error. Por lo tanto agregaremos que losvectores optimos a∗ y b∗ son los que dan el valor menor paraε2 (a∗,b∗) entre todos los que satisfacen (7.7). Los vectores a∗

y b∗ son el mınimo global de la superficie de error.La ecuacion (7.7) aplicada a un modelo en particular y con

las hipotesis necesarias sobre las senales que se tratan, nos llevaa sistemas de ecuaciones lineales simultaneas de cuya resolucionse obtiene el conjunto de parametros para el modelo lineal. Estesistema de ecuaciones es conocido como sistema de Wiener-Hopfy a continuacion vamos a ver como llegar hasta el y algunas delas formas posibles de encontrar sus soluciones

7.3.4. Sistema de Wiener-Hopf para senalesdeterminısticas

En el caso de las senales determinısticas podemos trabajarcon la siguiente definicion para el error cuadratico total (ECT):

ξ2 =∑

n

e2n (7.8)

Supongamos que se utiliza un modelo AR5. De la combi-nacion de las ecuaciones (7.6), (7.7) y (7.8) obtenemos:

5Existe una considerable simplificacion de las expresiones para mode-los AR. Dado el alcance previsto para esta guıa de estudio en adelanteutilizaremos solo este tipo de modelos.

Page 210: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

190 Capıtulo 7. Identificacion de sistemas

(∑n

snsTn

)a = −

∑n

snsn (7.9)

Debemos aun especificar el rango de sumacion para la va-riable n. Esto da origen a dos metodos: autocorrelacion y cova-riancia.

Autocorrelacion

Una vision general del proceso nos llevarıa a considerar(−∞,∞) como intervalo para la sumacion de n en (7.9). Eneste caso tenemos en el miembro derecho la autocorrelacion rpara la senal sn. Ahora la ecuacion (7.9) se convierte en:

Ra = −r (7.10)

donde la matriz Ri,j = ri−j , con 1 ≤ i, j ≤ p, es la matrizde autocorrelacion para sn. La matriz R es simetrica y poseetodas sus diagonales con elementos iguales. Estas matrices sedenominan matrices de Toeplitz.

Este sistema de ecuaciones al que hemos arribado se deno-mina sistema de Wiener-Hopf y su solucion constituye la solu-cion de nuestro problema de identificacion.

En las aplicaciones practicas nunca podemos realizar laautocorrelacion en el intervalo (-∞, ∞). Por esta razon debere-mos limitar mediante ventanas el soporte de la senal. El anchode las ventanas es muy dependiente de la aplicacion. En el casode senales de voz se pueden utilizar ventanas de 10 a 30 ms.Las ventanas deben tener variaciones suaves para no malcondi-cionar el sistema de ecuaciones. Se recomienda la utilizacion deventanas como las de Hamming, Hanning o Blackman.

Page 211: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7.3. Metodos de prediccion lineal 191

Covariancia

Como veıamos en el caso anterior, no es posible practica-mente utilizar un rango infinito para la sumatoria en el ECT.Podemos recurrir a la covariancia para acotar el intervalo a unnumero finito de muestras N . En este caso la ecuacion (7.9) seconvierte en:

Φa = −ϕ

donde ϕi = Φ0,i, con 0 ≤ i ≤ N − 1 y Φ es la matriz de cova-riancia para sn en el intervalo finito 0 ≤ n ≤ N−1. En este casotambien obtenemos una matriz simetrica pero los elementos enla diagonal ya no son necesariamente iguales. A pesar de quela matriz configura un sistema bien condicionado el error quese obtiene para distintas selecciones de N es dependiente de lasenal de entrada. Nuevamente, en el ejemplo del aparato fona-dor, lo ideal serıa que N coincidiera con el perıodo de ocurrenciapara el impulso glotico. Sin embargo, incluir un N variable nosolo implicarıa un calculo constante de la frecuencia glotica si-no una adaptacion en el algoritmo de resolucion del sistema deecuaciones.

7.3.5. Sistema de Wiener-Hopf para senalesaleatorias

En el caso de senales aleatorias solo podemos hablar devalores esperados para las medidas de error. De esta forma es-cribimos para un sistema AR:

ξ2 = E[e2n

]= E

[s2

n

]+ aT 2E [snsn] + aTE

[snsT

n

]a (7.11)

De igual forma que en la ecuacion (7.7) estamos buscando:

Page 212: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

192 Capıtulo 7. Identificacion de sistemas

∇ξ2 = 0

en el mınimo global en la superficie de error. Este gradiente es:

∇ξ2 =

∂E[e2n]

∂a1∂E[e2

n]∂a2...

∂E[e2n]

∂ap

= 2E [snsn] + E

[snsT

n

]a

Ası, obtenemos nuevamente el sistema de ecuaciones deWiener-Hopf :

E[snsT

n

]a = −E [snsn] (7.12)

Sin embargo aun no hemos definido que sucede con el ope-rador esperanza que debemos resolver en funcion de las carac-terısticas de la senal aleatoria. Vamos a diferenciar entre senalesestacionarias y senales no estacionarias.

Senales estacionarias

Para senales estacionarias se cumple que:

E[snsT

n

]= R

De esta forma el sistema de la ecuacion (7.12) se reduce alde la ecuacion (7.10).

Para el caso en que nos encontremos ante un proceso de estanaturaleza, podemos observar que la ecuacion (7.11) se convierteen:

Page 213: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7.3. Metodos de prediccion lineal 193

Figura 7.2. Superficie de error cuadratico para un sistema AR de

orden 2.

ξ2 = E[s2

n

]+ 2ra + aT Ra (7.13)

Si suponemos que estamos ante un sistema de orden 2,donde las variables independientes del modelo AR son a1 y a2,podemos ver al problema de identificacion como la busquedadel mınimo en de la superficie ξ2(a1, a2). En esta ecuacion elerror cuadratico (7.13) es un polinomio de segundo orden en lavariable a. Por lo tanto la superficie de busqueda se vera comola siguiente Figura 7.2.

Sin embargo, en las aplicaciones practicas las hipotesis he-chas sobre las senales no se cumplen y el problema no es tansencillo como deslizarse sobre una superficie tan suave comoesta y con un solo mınimo, que por lo tanto es global.

Page 214: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

194 Capıtulo 7. Identificacion de sistemas

Senales no estacionarias

En el caso de procesos no estacionarios debemos contarcon la autocorrelacion no estacionaria para la senal. Sin embar-go, existen algunos procesos no estacionarios conocidos comoprocesos localmente estacionarios que pueden ser segmentadosen procesos estacionarios. Ejemplos de este tipo de procesos sonlas senales de voz y electrocardiografıa.

7.3.6. Resolucion del sistema de Wiener-Hopf

Encontrar los coeficientes del modelo AR para la identifi-cacion de nuestro sistema incognita requiere que resolvamos elsistema de ecuaciones simultaneas de Wiener-Hopf en cualquie-ra de sus versiones. Para esto vamos a describir dos grandesgrupos de metodos: los metodos estaticos y metodos adaptati-vos. En el primer caso la funcion objetivo es una estimacion delECT y en el segundo se optimiza instante a instante segun elerror cuadratico instantaneo (ECI) o una estimacion de este.

Metodos estaticos

Los metodos estaticos atacan directamente la resolucion deun sistema de ecuaciones lineales mediante metodos numericos.

En primer lugar debemos tener en cuenta los metodos tra-dicionales de resolucion de sistemas de ecuaciones lineales. Entreellos podemos mencionar: inversion de matrices, metodo de eli-minacion de Gauss, descomposicion LU, pivoteo, metodos deJacobi y Gauss-Seidel, etc.

Sin embargo, en algunos casos es posible aprovechar mejorlas propiedades de la matriz R. Dijimos que en el caso de senalesdeterminısticas con el metodo de autocorrelacion y para senalesaleatorias estacionarias la matriz R era una matriz de Toeplitz.Para estos casos existe un metodo iterativo que soluciona eficien-temente el problema. Este es el metodo de Levinson-Durbin, que

Page 215: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7.3. Metodos de prediccion lineal 195

a partir de E0 = r0 sigue la recurrencia:

Para1 ≤ i ≤ p→

ki = − 1

Ei−1

[ri +

i−1∑j=1

aj,i−1ri−j

]ai,i = ki

aj,i = aj,i−1 + kiai−j,i−1, 1 ≤ j ≤ i− 1Ei = Ei−1(1− k2

i )

donde Ep es el ECT para la estimacion de orden p y la solucionfinal son los aj,p con 1 ≤ j ≤ p.

Este metodo posee la ventaja de que arroja resultados par-ciales que, como veremos mas adelante, pueden ser utilizadospara estimar el orden apropiado del modelo mientras se lleva acabo la iteracion.

Otra caracterıstica particular es que cuando el metodo esutilizado para calcular el modelo AR del ejemplo del aparatofonador, se encuentra una vinculacion directa entre las constan-tes ki y la relacion de diametros en el tubo resonante. Se puededemostrar que si modelamos el tracto vocal mediante un tubocon p secciones Si diferentes, se cumple la relacion:

ki + 11− ki

=Si

Si+1

Metodos adaptativos

En los metodos adaptativos se busca minimizar el error cua-dratico instantaneo mediante una adaptacion permanente de losvectores que en este caso podemos denominar an y bn.

Estos metodos se basan en la formula de Newton para labusqueda de raıces en ecuaciones no lineales. Basicamente, con-sisten en realizar sucesivas aproximaciones a la raız en el sentidodel gradiente negativo de la funcion. Para nuestro caso, la fun-cion es el error cuadratico o la esperanza de este para un tiempo

Page 216: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

196 Capıtulo 7. Identificacion de sistemas

n dado. Volviendo a la ecuacion de error para sistemas AR, sepropone la adaptacion de los coeficientes mediante:

an+1 = an + µ(−∇ξ2) (7.14)

donde µ es una constante positiva que mas adelante acotaremos.Este denominado metodo de Newton da origen a varios otrosmetodos que utilizan una diferente estimacion para el gradientedel error cuadratico esperado. Veremos de entre ellos al metodode Widrow.

Metodo adaptativo de Widrow: en este metodo se utilizael error cuadratico instantaneo como una aproximacion validapara el error cuadratico esperado. Por lo tanto tendremos:

∇ξ2n =

∂ e2n

∂ an=

∂e2n

∂a1,n

∂e2n

∂a2,n

...∂e2

n

∂ap,n

= 2en

∂(sn + aT

nsn

)∂an

(7.15)

Ahora la ecuacion para la adaptacion de los coeficientes laobtenemos reemplazando en (7.14) la aproximacion de Widrow(7.15):

an+1 = an − 2µensn

donde el vector de coeficientes an es inicializado con valoresaleatorios en el rango [-0.5, 0.5]. El parametro µ determina lavelocidad y estabilidad de la convergencia del metodo. Cuandomenor es µ mayor es el numero de iteraciones pero nos asegura

Page 217: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7.3. Metodos de prediccion lineal 197

la estabilidad. En cambio un µ mas grande hace que el metodoconverja mas rapidamente pero pueden existir problemas de in-estabilidad y divergencia. Puede demostrarse que en este casoaseguramos la convergencia en la media a la solucion optima delsistema de Wiener-Hopf con:

0 < µ <1

T (R)

siendo T (R) la traza de la matriz de autocorrelacion R.

7.3.7. Determinacion de la constante de ga-nancia G

Consideremos nuevamente las ecuaciones (7.4) y (7.5) ysupongamos que el error entre la salida real del sistema y nuestraestimacion AR esta dado por:

en = sn − sn = Gun

y de esta forma tenemos un metodo sencillo para determinar laganancia G en la entrada. Lo que debemos asegurar es que laenergıa total de la senal de entrada sea igual a la energıa totalde la senal de error.

Hay dos tipos particulares de entradas que nos interesanen nuestro analisis: la entrada impulsiva y la de ruido blanco.Para el caso de la entrada impulsiva:

hn = −p∑

k=1

akhn−k + G δn

A partir de (7.10) podemos escribir:

rT a = −r0 + G2

de lo que concluimos:

Page 218: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

198 Capıtulo 7. Identificacion de sistemas

G2 = rT a + r0 = Ep

Puede demostrarse que para una entrada de ruido blancola expresion es la misma.

7.4. Estimacion del orden

En las secciones anteriores hemos asumido como conocidauna de las caracterısticas mas importantes de los modelos queutilizamos para la identificacion: su orden.

La estimacion del orden usualmente se realiza mediantetecnicas de optimizacion. Es decir, se busca el orden optimosegun algun criterio. En este criterio deberan incorporarse todaslas variables que puedan influenciar la decision acerca del ordendel sistema. En primer lugar esta la correcta representacion delproceso que estamos identificando. Es decir, alguna medida delerror total ocurrido en la optimizacion. Sin embargo, en la mayorparte de las aplicaciones el modelo siempre mejora cuando seincrementa el orden. Ası, el problema que se plantea es cuandodetener el aumento del orden, ya que es claro que cuanto menorsea el orden que satisfaga los requerimientos de la aplicacion encuanto a error, mejor sera el modelo resultante. Con menoresordenes es posible reducir la cantidad de calculos, volumen deinformacion a almacenar y otros problemas relacionados con laimplementacion.

Actualmente existen muchos metodos aplicables para elegirel orden de los modelos AR. Sin embargo, en algunas aplicacio-nes, ninguno de ellos es lo suficientemente preciso por lo quesiempre debe hacerse hincapie en el ingenio del modelizador ylos conocimientos previos del sistema. Vamos a ver a continua-cion dos de los metodos mas utilizados para la determinaciondel orden apropiado para nuestro modelo: el error de prediccionfinal (FPE) y el criterio de Akaike.

Page 219: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7.4. Estimacion del orden 199

7.4.1. Error de prediccion final

Este metodo utiliza la medicion de los errores residuales enla resolucion de las ecuaciones de Wiener-Hopf. Como vimos,estos errores son una estimacion de la secuencia de entrada queasumimos no correlacionada y con espectro plano. Consideremosel modelo AR de orden p y repasemos la forma que toma esteerror. A partir de la ecuacion (7.10) podemos obtener el mınimoerror promedio para el sistema de orden p segun:

Ep = r0 + rT a

A partir de esta expresion definimos el error normalizadocomo:

Vp =Ep

r0

En base a las tecnicas de estimacion de parametros que vi-mos es posible demostrar que Vp es monotonicamente decrecien-te con p y esta acotado. En el caso que la senal este generada porun sistema AR de orden p0 tambien se demuestra que Vp = Vp0

cuando p ≥ p0. Sin embargo, debido a que no utilizamos secuen-cias infinitas en las aplicaciones practicas, la pendiente de Vp enfuncion del orden no se hace exactamente cero. Consideremos lautilizacion de un umbral para estimar el orden optimo:

1− Vp+1

Vp< γ (7.16)

Ası detendremos el proceso de incremento del orden cuandose cumpla la inecuacion (7.16).

Page 220: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

200 Capıtulo 7. Identificacion de sistemas

7.4.2. Criterio de Akaike

Akaike critico el metodo anterior y propuso un nuevo cri-terio basado en la teorıa de la informacion. Para el problema detodos polos y asumiendo una distribucion gaussiana en la senalmedimos el error segun:

Ip = log Ep +2p

Ne

donde Ne es el numero efectivo de muestras en la senal. Conefectivo nos referimos a los posibles efectos del ventaneo en lasenal. El ancho efectivo de una ventana puede ser calculadomediante la relacion entre la energıa de la ventana utilizada yla energıa de un ventana cuadrada. Para el caso de una ventanade Hamming Ne = 0.4 N , siendo N el ancho real de la ventanaen muestras.

Si graficamos Vp e Ip en funcion del orden p, podemos en-contrarnos con una curva como la que se muestra en la Figu-ra 7.3. Se puede observar que, para este sistema de orden p0 =10 el Vp se mantiene constante a partir de este orden. En con-traste vemos que Ip muestra un mınimo en p = 10. Este mınimopermite detectar mas facilmente el orden optimo.

7.5. Preguntas

1. Enumere las simplificaciones mas importantes que se rea-lizan para llegar a la ecuacion de Wiener-Hopf.

2. Detalle todos los pasos algebraicos necesarios para obtenerla ecuacion 7.9 a partir de (7.6), (7.7) y (7.8).

3. Muestre que se cumple Ri,j = ri−j en (7.10) para un p = 2y n = 1 . . . 3.

4. ¿Por que ciertos sistemas requieren la aplicacion de meto-dos adaptativos de identificacion?

Page 221: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7.5. Preguntas 201

0 5 10 15 20

Am

plitu

d re

lativ

a

Orden

Vp

Ip

Figura 7.3. Comportamiento tıpico de los criterios de estimacion de

orden.

5. Explique la diferencia conceptual entre la utilizacion delerror cuadratico medio y la del error cuadratico instantaneo.

6. Demuestre que en el caso de senales aleatorias estacio-narias existe un unico mınimo en la superficie del errorcuadratico esperado.

7. ¿Como puede aplicarse el metodo de Levinson-Durbin asenales no estacionarias?

8. Detalle todos los pasos algebraicos necesarios para obtenerla ecuacion de la ganancia G, para una entrada de ruidoblanco y para un tren de pulsos.

9. Explique conceptualmente porque el metodo de Akaike ge-neralmente ofrece un mınimo en el orden correcto.

Page 222: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

202 Capıtulo 7. Identificacion de sistemas

7.6. Trabajos practicos

Ejercicio 1: Considere el sistema y[n] = 0,3y[n − 1] −0,4y[n−2]+0,2y[n−3]+x[n] y genere una secuenciade salida a una entrada de tipo aleatoria con distri-bucion uniforme y valor medio cero. Utilizando estasenal de salida implemente el metodo de prediccionlineal y verifique el comportamiento de los criteriospara estimacion del orden.

Ejercicio 2: (∗) La senal de electroencefalograma se pue-de modelar mediante un sistema AR de orden 4 a8. Identifique el sistema que genero la senal almace-nada en el archivo eeg.txt y compare la respuestaen frecuencia de este sistema con el espectro de lasenal.

Ejercicio 3: (∗∗) En la Figura 7.4 se puede apreciar un es-quema simplificado del aparato fonador humano. Lazona comprendida entre la laringe (glotis) y los la-bios constituye el tracto vocal. Los sonidos del hablason el resultado de la excitacion acustica del tractovocal por la accion de una o mas fuentes. En es-te proceso los organos fonatorios desarrollan distin-tos tipos de actividades, tales como: movimiento depiston que inician una corriente de aire; movimien-to o posiciones de valvula que regulan el flujo deaire, y al hacerlo generan sonidos o en algunos casossimplemente modulan las ondas generadas por otrosmovimientos. El sistema respiratorio constituye laprincipal fuente de energıa para producir sonidos enel aparato fonador humano. La energıa es proporcio-nada en forma de flujo o corriente de aire y presionesque, a partir de las distintas perturbaciones, generanlos diferentes sonidos.

Page 223: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

7.6. Trabajos practicos 203

Cavidad Faríngea

Cavidad Bucal

Cavidad Nasal

Salida (nariz)

Salida (boca)

Velo del paladar

Tubo laríngeo

Volumen pulmonar

Tráquea y bronquios

Cuerdas vocales

Fuerza muscular

Figura 7.4. Esquema del aparato fonador.

Page 224: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

204 Capıtulo 7. Identificacion de sistemas

El tracto vocal se puede modelar con relativa exac-titud mediante un sistema AR. En la Figura 7.5 seaprecia el diagrama del modelo correspondiente. Es-te modelo permite la construccion de sintetizadoresdigitales de voz.

G +

PredictorLineal

Parámetros an

Entonación

Generadorde

pulsos

Generadorde

ruido blanco

Emisiónsonora o sorda

nsnu

Figura 7.5. Diagrama para el modelo AR del aparato fonador.

Para el presente ejercicio se quiere sintetizar unaemision de voz y se cuenta con las muestras digitali-zadas de la palabra inglesa “hello” que se encuentramuestreada a 16 KHz en el archivo hello.txt. Seprovee tambien una lista de etiquetas hello.phn quepermiten la separacion de la emision en fonemas (verFigura 7.6).

Acerca de la implementacion: para encontrarlos parametros de cada fonema se sugiere utilizar elmetodo de autocorrelacion con ventaneo. Encuentrela solucion al sistema de Wiener-Hopf mediante el al-goritmo iterativo de Levinson-Durbin. Suponga queel sistema es siempre de orden 14, con condiciones

Page 225: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Bibliografıa 205

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4

-5000

0

5000

Tiempo

Am

plitu

d

/ hh / / eh / / l / / ow /

Figura 7.6. Palabra “hello” separada en fonemas.

iniciales nulas y una frecuencia de entonacion cons-tante de 100 Hz. Calcule el valor de G para que seigualen las energıas de los fonemas sonoros y en elcaso de los sordos considere la energıa como 1/10 dela de los sonoros.

Bibliografıa

[1] J. Makhoul. Linear prediction: A tuturial review. In Procee-dings of the IEEE, volume 63, pages 561–580, April 1975.

[2] J. Deller, J. Proakis, and J. Hansen. Discrete Time Proces-sing of Speech Signals. Macmillan Publishing, New York,1993.

[3] H. Morikawa. Adaptative estimation of time-varying modelorder in the arma speech analisis. IEEE Trans. on Acoust.Speech, Signal Processing, 38:1073–1083, July 1990.

[4] A. Cohen. Biomedical Signal Procesing. CRC Press, 1986.

[5] S. M. Kay and S. L. Marple. Spectrum analisis. In Procee-dings of the IEEE, volume 69, pages 1380–1419, November1981.

Page 226: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

206 Capıtulo 7. Identificacion de sistemas

[6] A. Papoulis. Maximun entropy and spectral estimation: Areview. IEEE Trans. on Acoust. Speech, Signal Processing,29:1176–1186, December 1981.

[7] L. R. Rabiner and B. Gold. Theory and Application ofDigital Signal Processing. Prentice Hall, 1975.

[8] V. U. Reddy, B. Egardt B., and T. Kailath. Least squa-res algorithm for adaptative implementation of pisarenko´sharmonic retrieval method. IEEE Trans. on Acoust. Spee-ch, Signal Processing, 30:399–405, June 1982.

[9] L. F. Rocha. Prediccion lineal aplicada a senales de voz.Revista Telegrafica Electronica, Septiembre 1979.

[10] M. R. Schroeder. Linear prediction, entropy and signalanalysis. IEEE Trans. on Acoust. Speech, Signal Proces-sing, July 1984.

[11] B. Widrow and M. A. Lehr. 30 years of adaptative neuralnetworks: Perceptron madaline and backpropagation. Pro-ceedings of the IEEE, 78(9):1415–1440, 1990.

[12] Ogata K. Ingenierıa de control moderna. Prentice-Hall,Mexico, 3a. edicion, 1998.

[13] R. A. Pepe y G. G. Pantaleo. Metodo de determinacion deparametros de sistemas lineales. Revista Telegrafica Elec-tronica, Dic. 1983.

Page 227: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Capıtulo 8

Algoritmos Geneticos

Diego Milone

Temas a tratar

• Generalidades de los algoritmos de computacion evolutiva.

• Diseno de la solucion de un problema mediante algoritmosgeneticos.

• Aplicacion de la tecnica de algoritmos geneticos para laidentificacion de sistemas.

Objetivos

• Aprender los fundamentos de la tecnica.

• Aplicar los algoritmos geneticos a la busqueda de solucio-nes.

• Comprender la potencialidad de la tecnica y sus limitacio-nes mas importantes.

• Implementar algunas tecnicas sencillas para identificacionde sistemas.

207

Page 228: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

208 Capıtulo 8. Algoritmos Geneticos

8.1. Introduccion

Los algoritmos geneticos (AGs) junto con las estrategiasevolutivas y la programacion evolutiva constituyen un nuevo en-foque a la solucion de numerosos problemas de optimizacion ybusqueda. Esta tecnica esta en el contexto de una nueva cienciadenominada computacion evolutiva. El campo de las aplicacio-nes de la computacion evolutiva no reconoce fronteras. Es posi-ble resolver problemas de las caracterısticas mas diversas y entreestos vamos a ver la aplicacion muy particular de la identifica-cion de sistemas mediante algoritmos geneticos. Es importantedejar en claro que los AGs no son una tecnica de identificacionde sistemas sino mas bien la identificacion de sistemas es unaposible aplicacion de los AGs.

La analogıa en que se basan los AGs estriba en reconocerel mecanismo esencial del proceso evolutivo en la naturaleza.Los componentes fundamentales de este mecanismo son los cro-mosomas, el material genetico de un individuo biologico, quedeterminan sus caracterısticas unicas. Los cambios en el mate-rial genetico de las especies permiten el proceso de adaptacion.

Las fuerzas que subyacen al proceso evolutivo son: la se-leccion natural, la recombinacion de material genetico y la mu-tacion, fenomenos que se presentan durante la reproduccion delas especies. La competencia entre los individuos por los recur-sos naturales limitados y por la posibilidad de procreacion oreproduccion permite que solo los mas fuertes o mas adaptadossobrevivan. Esto significa que el material genetico de los mejo-res individuos sobrevive y se reproduce, mientras que los genesde los individuos mas debiles o menos adaptados, mueren o seextinguen. Y de esta forma la naturaleza optimiza la solucion alproblema de la vida.

Se propone a los AGs como una tecnica computacional queintenta imitar el proceso evolutivo de la naturaleza, para el di-seno de sistemas artificiales adaptativos.

Page 229: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

8.2. Estructura de un AG 209

8.2. Estructura de un AG

Los AGs clasicos, manipulan una poblacion de solucionespotenciales codificadas en cadenas binarias que las representan.Este conjunto de cadenas representan el material genetico deuna poblacion de individuos. Los operadores artificiales de se-leccion, cruza y mutacion son aplicados para buscar los mejo-res individuos –mejores soluciones– a traves de la simulaciondel proceso evolutivo natural. Cada solucion potencial se asociacon un valor de fitness1, que mide que tan buena es comparadacon las otras soluciones de la poblacion. Este valor de fitness esla simulacion del papel que juega el ambiente en la evolucionnatural darwiniana.

El paradigma de los algoritmos geneticos puede esquema-tizarse como sigue:

Inicializar(Poblacion)MejorFitness=Evaluar(Poblacion)Mientras (MejorFitness<FitnessRequerido)

Seleccion=Seleccionar(Poblacion)Poblacion=CruzarYMutar(Seleccion)MejorFitness=Evaluar(Poblacion)

FinMientras

Para comenzar, se inicializa la poblacion completamente alazar. En la inicializacion hay que tener en cuenta que la distribu-cion de valores debe ser uniforme para cada rango representadopor los cromosomas. A continuacion se decodifica el genotipo enfenotipo de esta poblacion inicial y evalua el fitness para cadaindividuo. Es decir, se le asigna un valor numerico a su “capa-cidad de supervivencia”; en el espacio de soluciones de nuestroproblema medimos que tan bien resuelve el problema cada indi-viduo.

1Suele utilizarse la traduccion aptitud pero no es totalmente apropiadaen el campo de la teorıa darwiniana. Por lo tanto usaremos este terminodesde su ingles original.

Page 230: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

210 Capıtulo 8. Algoritmos Geneticos

Luego entramos en el bucle de optimizacion o busqueda.Este ciclo termina cuando nuestro AG ha encontrado una solu-cion adecuada para el problema. Es decir, deberemos valernosdel fitness para el mejor individuo y de un umbral para evaluaresta condicion de finalizacion.

Durante el proceso evolutivo artificial, se aplican variosoperadores. Mediante un proceso fuertemente estocastico se ge-nera una nueva poblacion de individuos tomando en cuenta sufitness. Basicamente durante la seleccion se decide cuales indi-viduos seran padres de la nueva generacion. La nueva poblacionpuede remplazar completamente a la poblacion anterior o sola-mente a los peores individuos, las peores soluciones.

Con los cromosomas candidatos a ser padres de la nuevapoblacion se efectuan cruzas y mutaciones. Las cruzas son inter-cambios de genes: el proceso consiste en intercambiar segmentosde los cromosomas de las parejas seleccionadas en forma aleato-ria. Cuando un cromosoma sufre una mutacion, el alelo de unode sus genes cambia en forma aleatoria. Las mutaciones ocurrensegun una probabilidad de mutacion, esta probabilidad es unosde los parametros que gobierna la evolucion.

Finalmente la poblacion nace y se decodifica el genotipo enfenotipo para evaluar su fitness. Al volver al principio del cicloevolutivo verificamos nuevamente si nuestro mejor individuo su-pera los requisitos de la busqueda, en caso contrario volvemos arepetir todo el proceso para obtener una nueva generacion.

8.3. Diseno de la solucion de un pro-blema mediante AGs

Cuando queremos resolver un problema mediante AGs de-bemos determinar un conjunto de especificaciones clave:

Page 231: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

8.4. Representacion de los individuos 211

Representacion de los individuos: ¿como representamosuna solucion de nuestro problema mediante cromosomas?, ¿apartir de un conjunto de cromosomas dado, como obtenemosuna solucion? Deberemos determinar en que forma se traduceel fenotipo en genotipo y viceversa.

Funcion de fitness: ¿como medimos la capacidad de supervi-vencia de un individuo, sus posibilidades de procrear y transferirla informacion de sus genes a la proxima generacion? En el do-minio de las soluciones debemos poder medir que tan buena escada solucion en relacion a las demas.

Mecanismo de seleccion: tenemos toda una poblacion eva-luada segun el fitness y debemos elegir a los individuos que seranpadres de la proxima generacion. No es tan sencillo como elegirlos M mejores. Veremos algunas formas de realizar una seleccionque, si bien premia a los mejores, no deja de dar la posibilidadazarosa de que uno de los peores individuos sea padre, comosucede en la naturaleza.

Operadores de variacion y reproduccion: los operadoresbasicos son las cruzas y mutaciones. Sin embargo, a pesar deque limitemos el estudio solo a estos operadores, veremos variasformas de aplicarlos. A partir de los operadores podemos re-producir y obtener la nueva poblacion. Durante la reproducciontambien tenemos que considerar algunas opciones.

8.4. Representacion de los individuos

El primer aspecto a resolver es la codificacion del problemaen un alfabeto finito. Tradicionalmente se han empleado cadenasbinarias, pero recientemente se estan empleando esquemas mas

Page 232: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

212 Capıtulo 8. Algoritmos Geneticos

flexibles. Deberemos encontrar la forma de pasar desde el espaciodel genotipo al espacio del fenotipo como muestra la Figura 8.1.

Espacio delfenotipo

4.56

556

1.253456Espacio delgenotipo

1101

1001

01010011

Codificación

Decodificación

Figura 8.1. Representacion de los individuos. Buscamos la forma de

codificar soluciones en cromosomas y viceversa.

Para los AGs utilizamos la base canonica 0, 1 en cadenasde longitud fija y finita para representar soluciones de nuestroproblema. Lo que representamos en estas cadenas depende dela aplicacion. Podemos representar las conexiones, componentesy valores de estos para un circuito electronico; las lıneas delcodigo de un programa; los pesos y conexiones estructurales deuna red neuronal y una infinidad de ejemplos mas. Entre estostambien encontramos a los coeficientes de un filtro ARMA o deun sistema no lineal.

Vamos a utilizar el caso mas sencillo que consiste en re-presentar una serie de coeficientes que describen algun sistema.Podemos utilizar un cromosoma para cada coeficiente. El cromo-soma codificara en forma binaria el valor del coeficiente. Existenmuchos metodos para codificar en forma binaria un valor real oentero, solo veremos el caso mas sencillo.

Deberemos decidir con que resolucion queremos represen-tar a cada coeficiente. Cuando mas bits tenga nuestra cadenamas amplio sera el espacio de busqueda. Es decir, deberemos

Page 233: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

8.5. Funcion de fitness 213

establecer un compromiso entre la resolucion de la codificaciony la cantidad de dimensiones del espacio de busqueda.

Suponga que necesitamos codificar un coeficiente x en elrango [a, b] mediante un cromosoma de n bits (genes). Debemosseguir dos pasos:

1. Aplicar un factor de escala y truncamiento para convertiral real x en un entero X perteneciente al rango [0, 2n − 1]

2. Convertir el entero X en un numero binario.

Para decodificar y transformar el genotipo en fenotipo apli-camos los pasos inversos:

1. Convertimos el numero binario de la cadena del cromoso-ma en entero X.

2. Aplicar un factor de escala para convertir el entero X per-teneciente al rango [0, 2n − 1] en el real x en [a, b].

8.5. Funcion de fitness

Debemos obtener ahora una medida de que tan buena es lasolucion de cada individuo. Esta funcion trabaja en el dominiodel problema, sobre el fenotipo de cada individuo. Por lo tantopara obtener el valor de fitness para un individuo deberemospreviamente hacerlo nacer, y en algunos casos crecer, a partirde su genotipo para luego evaluar objetivamente que tan buenoes en relacion a los otros.

Hay un aspecto fundamental a resolver, el valor de fitnessdebe ser monotonicamente creciente con la bondad de la solu-cion que un individuo representa. Si esta dependiera de variosfactores, de la forma en que estos sean pesados en la funcion defitness dependera la optimizacion que realice el AG.

Page 234: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

214 Capıtulo 8. Algoritmos Geneticos

El “como” nace y crece un individuo es completamentedependiente de la aplicacion. En el caso de que estemos opti-mizando la trayectoria de un movil robot deberemos tener unrobot real para cada fenotipo necesario o, como generalmente seresuelve, utilizar una buena simulacion de su comportamiento.En el otro extremo, la sencillez esta representada por la simpleevaluacion de una ecuacion que es directamente una mediada delfitness. En el caso de la identificacion de un sistema deberemosutilizar las ecuaciones en recurrencia que lo caracterizan paraobtener su respuesta y compararla con la deseada. En este casoel error cuadratico medio puede considerarse como una medidainversa del fitness del individuo.

8.6. Seleccion

Existen varias formas de realizar la seleccion de los proge-nitores. Recordemos que, al igual que en la naturaleza, no seselecciona simplemente los mejores. La seleccion no esta relacio-nada directamente con el fitness de un individuo sino a traves deoperadores probabilısticos. Veamos algunos metodos sencillos.

8.6.1. Rueda de ruleta

Tambien denominado seleccion basada en rangos, consis-te en asignar a cada individuo una porcion de la ruleta que esproporcional a su fitness. Luego, hacemos rodar la ruleta y elfavorecido es seleccionado para ser padre en la proxima gene-racion. A continuacion mostramos el algoritmo del metodo derueda de ruleta y en la Figura 8.2 un ejemplo grafico.

Page 235: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

8.6. Seleccion 215

sumF = suma de todos los fitnesssumR = rand(0, 1)sumFsumP = 0, j = 0Repetir

j = j + 1sumP = sumP + fitnessj

Hasta (sumP ≥ sumR)Seleccionado= j

4 5

6

7 1

2 3

Figura 8.2. En este ejemplo de la rueda de ruleta el individuo numero

4 es el que mas probabilidades tiene de ser seleccionado. Sin embargo

cualquiera puede ser padre.

En poblaciones grandes es comun que unos pocos indivi-duos extraordinarios se encuentren sumergidos en un mar decolegas mediocres. Es por esta razon que la seleccion de la rue-da de ruleta suele generar una convergencia lenta para el AG.Las areas asignadas para los individuos buenos son proporcio-nalmente mayores pero hay tantos individuos mediocres que suarea total es muy significativa. La seleccion no favorece suficien-temente a los buenos individuos. Existe una tecnica denomina-da escalamiento de fitness que ataca este problema justamente

Page 236: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

216 Capıtulo 8. Algoritmos Geneticos

redefiniendo las distancias en fitness entre los mejores y los me-diocres y peores. Sin embargo vamos a ver otras tecnicas deseleccion en la que este problema no es tan marcado y aseguranuna convergencia mas rapida para el algoritmo.

8.6.2. Ventanas

En este metodo es necesario que primero ordenemos porfitness descendiente a los individuos. Hacemos N ventanas orangos de seleccion [0, qi]. El lımite superior qi va creciendo hastallegar al total de la poblacion. De cada ventana se elige al azarun individuo que queda seleccionado para ser padre.

En este metodo la mayor probabilidad de ser padre se asig-na a los primeros individuos en la ordenacion ya que estan entodas las ventanas de seleccion. Los ultimos individuos (menorfitness) solo se encontraran en condiciones de ser elegidos cuan-do se seleccione en la ventana [0, qN ].

8.6.3. Competencias

En este caso se eligen, completamente al azar, k > 1 in-dividuos; se los hace competir por fitness y queda seleccionadoel ganador. Generalmente se utilizan valores de k entre 2 y 5dependiendo del tamano de la poblacion. Este metodo es unode los mas utilizados debido a lo simple de su implementacion.

8.7. Reproduccion y operadores de va-riacion

La reproduccion es el proceso mediante el cual se obtienela nueva poblacion a partir de los individuos seleccionados y losoperadores de variacion. Existen varias alternativas para realizarla reproduccion, en el caso mas sencillo se obtienen todos los

Page 237: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

8.7. Reproduccion y operadores de variacion 217

individuos de la nueva poblacion a partir de variaciones (cruzasy mutaciones) de los progenitores.

Es posible tambien transferir directamente a la poblacionnueva los padres seleccionados en la poblacion anterior y comple-tar los individuos faltantes mediante variaciones. En este casointerviene un parametro denominado brecha generacional quedetermina cuantos padres son copiados directamente desde lapoblacion anterior a la nueva. Este parametro es un numero Greal que esta entre 0 y 1. Multiplicandolo por la cantidad totalde individuos de la poblacion permite encontrar la cantidad depadres que seran copiados.

Otra alternativa algo menos biologica pero que es utilizadacon muy buenos resultados es el elitismo. En esta estrategia sebusca el mejor individuo de la poblacion anterior e independien-temente de la seleccion y variacion se lo copia exactamente enla nueva poblacion. De esta manera nos aseguramos de no per-der la mejor solucion generacion tras generacion. Como veremosesta estrategia permite elevar el ındice de mutaciones y aumen-tar ası la dispersion de las soluciones en el espacio de busqueda.Vamos a ver a continuacion los dos operadores de variacion masutilizados.

8.7.1. Mutaciones

La mutacion trabaja invirtiendo alelos de genes con unaprobabilidad pm muy baja, por ejemplo pm = 0,001 (ver Fi-gura 8.3). Las mutaciones son tıpicamente realizadas con unaprobabilidad uniforme en toda la poblacion y el numero de mu-taciones por individuo puede ser fijado de acuerdo a esta pro-babilidad y la cantidad de individuos. En los casos mas simplesse da la posibilidad de mutar solo un alelo por individuo o sedistribuye uniformemente sobre todo el cromosoma.

El papel fundamental de las mutaciones es no dejar quetodos los individuos de la poblacion se conviertan en mediocres

Page 238: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

218 Capıtulo 8. Algoritmos Geneticos

(caigan en mınimos locales) permitiendo que constantemente seredistribuya la poblacion sobre el espacio de busqueda. Sin em-bargo una probabilidad de mutaciones demasiado elevada podrıahacer que perdamos buenas soluciones impidiendo o retardandola convergencia. Cuando utilizamos elitismo nos aseguramos deno perder la mejor solucion en probabilidades altas de mutacion.

8.7.2. Cruzas

La cruza es un operador que, en el caso mas sencillo, actuasobre dos cromosomas para obtener otros dos. Existen dos ti-pos de cruzas: cruzas simples y cruzas multiples. En las cruzassimples se elige un punto de cruza al azar y se intercambia elmaterial genetico correspondiente (ver Figura 8.4). En la cruzamultiple puede cortarse el cromosoma en mas de dos partes pararealizar el intercambio. En ambos casos el o los puntos de cruzason elegidos al azar. Veamos a continuacion el algoritmo para lacruza simple.

cruza = rand(1, LongCromo− 1)Para j de 1 a cruza

Hijo1j = Mutar(Padre1j)Hijo2j = Mutar(Padre2j)

FinParaPara j de cruza a LongCromo

Hijo1j = Mutar(Padre2j)Hijo2j = Mutar(Padre1j)

FinPara

8.8. Caracterısticas principales

Concebidos como una arquitectura generica, como una tecni-ca de busqueda fuerte; cuando se aplican a problemas particu-lares los algoritmos geneticos deben sufrir modificaciones, para

Page 239: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

8.8. Caracterısticas principales 219

Punto de mutación

Cromosoma original Cromosoma mutado

1 0 1 1 1011 1 0 1 1 1010

Figura 8.3. Mutacion en un cromosoma de 8 genes.

Punto de cruza

Cromosomas padres Cromosomas hijos

1 1 1 0 1100

1 0 1 1 1011

1 1 1 0 1010

1 0 1 1 1101

Figura 8.4. Cruza simple a partir de dos cromosomas de 8 genes.

Page 240: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

220 Capıtulo 8. Algoritmos Geneticos

que presenten un buen desempeno y eficiencia. Ası, a pesar deque tradicionalmente han empleado cromosomas binarios paracodificar las soluciones, recientemente se esta generalizando elempleo de estructuras mas complejas de representacion, comovectores de numeros reales, arboles, etc. Los operadores geneti-cos tambien sufren adecuaciones cuando se modifica la represen-tacion de las soluciones, en general, los nuevos operadores estanen funcion del problema particular. Sin embargo, a diferencia deotras tecnicas de computacion evolutiva, el aspecto central delos algoritmos geneticos es la importancia que cumple el opera-dor de cruzamiento y su relacion con el operador de mutacion.Mientras el operador cruza tiene una tasa o probabilidad ele-vada en todo algoritmo genetico, el parametro probabilidad demutacion tiene generalmente valores menos significativos.

Consideremos algunos ejemplos practicos para hacer unacomparacion entre los algoritmos geneticos y los metodos debusqueda por gradientes que vimos anteriormente.

Tomemos el ejemplo de la optimizacion para el sistemaAR de segundo orden cuya superficie de error (fitness invertido)esta dada por la suma de cuatro funciones gaussianas invertidascomo muestra la Figura 8.5. Agregue ademas la particularidadde que uno de los valles del error esta solo 10−5 veces mas cercadel cero que los otros tres. Encontrar el mınimo global implicaencontrar el mınimo del valle que llega mas abajo. Mientras unAG distribuye la poblacion uniformemente sobre la superficiey analiza en paralelo todo el espacio de soluciones, el metodode gradientes se encuentra limitado a la baja probabilidad deque dadas las condiciones iniciales el vector de coeficientes seencuentre en el valle apropiado. El AG busca simultaneamentees todo el espacio de soluciones, analiza toda la superficie antesde tomar una decision. En contraste el metodo de gradienteanaliza solo un punto de la superficie y un entorno pequeno deeste.

Otro caso donde el AG se ve favorecido es cuando la curva

Page 241: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

8.8. Caracterısticas principales 221

Figura 8.5. Curva de error o fitness invertido para un espacio de

soluciones de dimension 2. Uno de los picos llega 10−5 veces mas

abajo que los otros tres.

Figura 8.6. Curva de error o fitness invertido para un espacio de so-

luciones de dimension 2. Los metodos basados en el gradiente pueden

quedarse fijos en cualquiera de los escalones de la superficie.

Page 242: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

222 Capıtulo 8. Algoritmos Geneticos

de error posee mesetas o escalones como se muestra en la Figu-ra 8.6. ¿Que pasa ahora con el metodo del gradiente del erroren los escalones? Como el gradiente da cero si estamos en unescalon, el metodo no puede determinar la direccion que hayque seguir para caer en la superficie. Nuevamente el AG se vefavorecido por analizar simultaneamente mucho puntos unifor-memente distribuidos en la superficie.

A pesar de estas grandes ventajas del metodo no podemosdejar de mencionar que generalmente los algoritmos geneticosrequieren un tiempo de calculo y capacidad de almacenamientomucho mayor que otros metodos mas convencionales. Este es elcosto de la versatilidad y amplio espectro de aplicaciones queofrecen los algoritmos geneticos.

Resumiremos en la siguiente lista las principales diferenciasentre los algoritmos geneticos y otros metodos mas tradicionalesen la optimizacion y busqueda:

1. Los AGs trabajan con una codificacion del conjunto deparametros de nuestro problema y no con los parametrosen si mismos.

2. Los AGs buscan en una poblacion de puntos en el espaciode soluciones, no en un punto en particular.

3. Los AGs utilizan la informacion de la funcion objetivosolamente y no sus derivadas o conocimiento auxiliar.

4. Los AGs utilizan reglas probabilısticas para las transicio-nes, no reglas determinısticas.

8.9. Introduccion a los fundamentos ma-tematicos

Las caracterısticas descriptas de un algoritmo genetico, res-ponden a un cuerpo teorico solido que los soporta. Este se puede

Page 243: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

8.9. Introduccion a los fundamentos matematicos 223

sintetizar en la teorıa de esquemas. Un esquema es una cadenade caracteres definida sobre un alfabeto finito.

La teorıa de esquemas predice el comportamiento de un es-quema describiendo un subconjunto de cadenas con similarida-des en ciertas posiciones. De acuerdo a esto, la solucion optimade un problema, se encuentra, debido a que el teorema funda-mental de los algoritmos geneticos garantiza que el crecimientode una instancia de un esquema determinado es aproximada-mente proporcional al fitnesss relativo observado de tal esque-ma, dado que los esquemas con longitud definida pequena, bajoorden y fitness superior al promedio de la poblacion, son in-crementados exponencialmente en la poblacion, a traves de lasgeneraciones, mientras que los esquemas con valores de fitnessinferiores al promedio, longitud definida grande y alto orden,desaparecen.

La hipotesis de los bloques constructores plantea que losesquemas con alto valor de fitness (mayor que el promedio dela poblacion), y longitud definida pequena, donde longitud es ladistancia entre la primera y la ultima posicion fija en toda lacadena, constituyen los bloques constructores, los cuales permi-ten localizar las cadenas de mayor valor de fitness (las mejoressoluciones o soluciones optimas), mediante muestras de estosbloques con valor de fitness alto (seleccion) y tambien por com-binacion de bloques constructores (cruzamiento). La busquedaaltamente eficiente de los algoritmos geneticos, es explicada porlo que se a denominado paralelismo implıcito, un aspecto fun-damental de los mismos. Esto significa que a pesar de que unalgoritmo genetico procesa solamente N cromosomas o solucio-nes en forma directa, se ha demostrado, que implıcitamente seevaluan o exploran N3 esquemas, dado que en el caso de unarepresentacion binaria un cromosoma representa 2d esquemasdiferentes, donde d es la longitud del cromosoma.

Page 244: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

224 Capıtulo 8. Algoritmos Geneticos

8.10. Trabajos practicos

Ejercicio 1: Implemente las estructuras de datos y algoritmosbasicos para la solucion de un problema mediante algoritmosgeneticos. Pruebe estas rutinas buscando el mınimo global delas siguientes funciones:

f(x) = x2

con x ∈ [−5,12 . . . 5,12],

f(x) = −x sin(√|x|)

con x ∈ [−512 . . . 512],

f(x, y) = (x2 + y2)0,25[sin2

(50(x2 + y2)0,1

)+ 1]

con x, y ∈ [−100 . . . 100].

Ejercicio 2: (∗∗) Poblacion de escarabajos TriboliumSe ha utilizado un modelo demografico para predecir la

dinamica de una poblacion de escarabajos de harina Triboliumbajo condiciones de laboratorio. Este modelo consiste de tresecuaciones diferenciales acopladas, no lineales y estocasticas quebajo ciertas condiciones muestran un comportamiento caotico.

El modelo no ha sido completamente ajustado a los re-sultados obtenidos en experiencias de laboratorio y, si bien seconocen los rangos en los que pueden estar sus parametros, nose conoce una buena aproximacion de sus valores.

El objetivo principal de este trabajo es encontrar el conjun-to de parametros para los que el modelo se comporta de acuer-do a las mediciones experimentales realizadas en el laboratorio.Para lograr esto contamos con las mediciones experimentales,las ecuaciones en diferencia del modelo y los rangos biologica-mente validos en los que pueden encontrarse los valores de susparametros. Deberemos minimizar el error entre las medicionesde laboratorio y la salida del modelo mediante alguna tecnicade identificacion de sistemas.

Page 245: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

8.10. Trabajos practicos 225

Las caracterısticas no lineales, el caos y las variables alea-torias presentes en el modelo dificultan la utilizacion de tecnicasconvencionales para la identificacion de parametros, y se propo-ne en este ejercicio aplicar la tecnica de algoritmos geneticos alproblema de identificacion de parametros.

El modelo. El modelo describe la relacion entre las poblacio-nes de escarabajos Tribolium de tres distintos estados de ma-durez. Las ecuaciones en diferencias de este modelo estocasticosson las siguientes:

Ln+1 = bAne−celLn−ceaAn+E1n

Pn+1 = (1− µl)LneE2n

An+1 =[Pne−cpaAn + (1− µa)An

]eE3n

donde notamos como:

n: tiempo discreto cuya unidad en el modelo es de 2 se-manas.

Ln: cantidad de larvas que sirven de alimento, para el tiem-po n.

Pn: cantidad de larvas que no sirven de alimento, pupas yadultos jovenes, para el tiempo n.

An: cantidad de adultos sexualmente maduros, para eltiempo n.

b: numero de larvas reclutadas por adulto y por unidad detiempo en ausencia de canibalismo.

µl: tasa de mortalidad de larvas en una unidad de tiempo.

Page 246: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

226 Capıtulo 8. Algoritmos Geneticos

µa: tasa de mortalidad de adultos en una unidad de tiem-po.

e−celLn : probabilidad de que un huevo no sea comido enla presencia de Ln larvas, por unidad de tiempo (caniba-lismo).

e−ceaAn probabilidad de que un huevo no sea comido enla presencia de An adultos, por unidad de tiempo (cani-balismo).

e−cpaAn probabilidad de supervivencia de pupas en pre-sencia de An adultos, por unidad de tiempo.

ENn variables de ruido aleatorio de una distribucion nor-mal multivariable acoplada con un vector de valor medionulo y una matriz de varianza-covarianza Σ.

Las nolinealidades exponenciales presentes en el modelo re-presentan el canibalismo sobre los huevos que realizan larvas yadultos y sobre las larvas que realizan pupas y adultos. Lasvariables aleatorias representan desviaciones impredecibles delas observaciones realizadas sobre la estructura determinıstica(Σ = 0) del modelo, provocadas por cambios ambientales entreotras causas.

Datos experimentales. A partir de una poblacion inicial de250 larvas pequenas, 5 pupas y 100 adultos, se realizaron losrecuentos de la cantidad de escarabajos en cada etapa durante80 semanas con una periodicidad de 2 semanas. Los resultadosse guardaron en un archivo de texto que contiene tres colum-nas y 40 filas. En cada fila se encuentran los recuentos corres-pondientes a un perıodo de 2 semanas que segun las columnascorresponden a Ln, Pn y An.

De acuerdo a las condiciones de laboratorio en la que evolu-ciono la poblacion podemos estimar cierto rango par los valores

Page 247: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

8.10. Trabajos practicos 227

de los parametros. Ademas en relacion al papel que desempenanen el modelo sabemos que todos deben ser mayores que cero.Todas estas consideraciones nos permitiran reducir el espaciode busqueda:

b < 101

µl < 100

µa < 100

cel < 10−1

cea < 10−1

cpa < 100

A continuacion vemos tres graficas que muestran la evo-lucion de la poblacion bajo condiciones de laboratorio en unperıodo de 80 semanas.

Acerca de la implementacion. Se recomienda utilizar lassiguientes pautas para la implementacion:

Codificacion binaria de 16 bits de resolucion ajustada arango de variacion de cada parametro.

Cruzas simples.

Bajas probabilidades de mutacion (< 0,1 no elitista, < 0,4elitista).

Una estructura determinıstica del modelo para simplificareste trabajo practico.

No menos de 100 individuos por generacion.

Page 248: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

228 Capıtulo 8. Algoritmos Geneticos

0 10 20 30 40 50 60 70 800

100

200

300

Lar

vas

0 10 20 30 40 50 60 70 800

100

200

Pup

as

0 10 20 30 40 50 60 70 800

50

100

Adu

ltos

Semanas

Figura 8.7. Evolucion temporal de la poblacion en sus tres estadios.

Page 249: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Bibliografıa 229

Bibliografıa

[1] D. E. Goldberg. Genetic Algorithms in Search, Optimizationand Machine Learning. Addison-Wesley, 1997.

[2] Z. Michalewicz. Genetic Algorithms + Data Structures =Evolution Programs. Springer-Verlag, 1992.

[3] T. Back, U. Hammel, and H-F. Schewfel. Evolutionary com-putation: Comments on history and current state. IEEETrans. on Evolutionary Computation, 1(1):3–17, 1997.

[4] D. J. Montana. Neural networks weight selection using ge-netic algorithms. In Itelligent Hybrid Systems, chapter 5. J.Wiley Sons, 1995.

[5] V. Maniezzo. Genetic evolution of the topology and weightdistribution of neural networks. IEEE Trans. on Neural Net-works, 5(1), January 1994.

[6] H. Morikawa. Adaptative estimation of time-varying modelorder in the arma speech analisis. IEEE Trans. on Acoust.Speech, Signal Processing, 38:1073–1083, July 1990.

[7] Constantino R. F., Desharnais R. A., Cushing J. M., andDennis B. Chaotic dynamics in an insect population. Scien-ce, 275:389–391, Jan. 1997.

[8] Park L. J., Park C. H., Park C., and Lee T. Application ofgenetic algorithms to parameter estimation of bioprocesses.Medical & Biological Engineering & Computing, Jan. 1997.

Page 250: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

230 Capıtulo 8. Algoritmos Geneticos

Page 251: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Apendice A

Octave (v2.1.36)

231

Page 252: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

232 Apendice A. Octave (v2.1.36)

A.1. Generalesoctave - Inicia una sesion deoctave.

octave --traditional - Ini-cia una sesion de octave enformato compatible con Ma-tLab.

quit o exit - Termina la se-sion de Octave.

INTERRUPT (o sea C-c) Termi-na el comando actual y de-vuelve el prompt.

help - Lista todos los coman-dos y variables integradas.

help comando - Describe bre-vemente el comando.

help -i - Usa Info para na-vegar el manual de ayuda deOctave.

help -i comando - Busca co-mando en el manual de Octa-ve usando la interface de Info.

A.2. Comandos delsistema

cd dir - Cambia el directoriode trabajo a dir.

pwd - Muestra el directorio detrabajo actual.

ls [opciones] - Muestra un lis-tado de archivos y directoriosdel directorio actual.

getenv cadena - Devuelve elvalor de una variable de en-torno.

system cmd- Ejecuta un co-mando del sistema operativo.

A.3. Matrices y ran-gos

Las matrices se delimitan concorchetes. Los elementos de una fi-la se separan con comas. Las filas seseparan con punto y coma (;). Lascomas se pueden reemplazar por es-pacios y los punto y coma por unoo mas enter. Los elementos de unamatriz pueden ser expresiones arbi-trarias, siempre que las dimensionesconcuerden.

[ x, y, ... ] - Ingresar unvector fila

[ x; y; ... ] - Ingresar unvector columnar

[ w, x; y, z ] - Ingresar unamatrix de 2×2.

base : limite

base : incremento : limite

Especifican un rango de valores em-pezando desde base con elementosno mayores de limite. Si no se poneun incremento, el valor por defectoes 1. Se pueden usar incrementos ne-gativos.

A.4. Algunas varia-bles predefi-nidas

EDITOR - Especifica el editora usar con el comando edit.

Inf, NaN - Infinito, indeter-minacion (Not-a-Number).

Page 253: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

A.6. Operadores booleanos y de comparacion 233

LOADPATH - Define el caminode busqueda para los archivosde funciones.

ans - Devuelve el ultimo re-sultado que no haya sido ex-plıcitamente asignado.

eps - Presicion de la maqui-na.

pi - π

realmax -Valor maximo repre-sentable.

realmin - Valor mınimo re-presentable.

A.5. Operaciones a-ritmeticas yoperadores deincremento

x + y - Suma de matrices.

x - y - Resta de matrices.

x * y - Multiplicacion Ma-tricial.

x .* y - Multiplicacion ele-mento a elemento.

x / y - Division matricial porla derecha, equivalente concep-tualmente a (inv(y’)*x’)’.

x ./ y - Division por la de-recha elemento a elemento.

x \ y - Division matricialpor la derecha, equivalente con-ceptualmente a inv(x)*y

x .\ y - Division elementoa elemento por la izquierda.

x ^ y - Operador de poten-cias matricial.

x .^ y - Operador de po-tencias elemento a elemento.

- x - Negacion.

x ’ - Transpuesta complejaconjugada.

x .’ - Transpuesta.

++ x (-- x) - Incremen-ta (decrementa) x, devuelveel nuevo valor.

x ++ ( x --) - Incremen-ta (decrementa) x, devuelveel valor anterior.

A.6. Operadores boo-leanos y de com-paracion

x < y - Verdadero si x es me-nor que y.

x <= y - Verdadero si x esmenor o igual que y.

x >y - Verdadero si x es ma-yor que y.

x >= y - Verdadero si x esmayor o igual que y.

x == y - Verdadero si x esigual a y.

x != y - Verdadero si x no esigual a y.

x & y - Verdadero si ambos,xy y son verdaderos.

x | y - Verdadero si al me-nos uno de x o y es verdadero.

! bool - Verdadero si bool esfalso.

Page 254: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

234 Apendice A. Octave (v2.1.36)

A.7. Sentenciasfor identificador = expr

lista

endfor

Ejecutar la lista de comandoslista una vez por cada colum-na de expr. La variable iden-tificador se setea al valor dela columna actual para cadaiteracion.

while (condicion)

lista

endwhile

Ejecuta la lista de comandoslista mientras la condicion seaverdadera.

break - Sale del bucle masinterno.

continue - Vuelve al ini-cio del bucle mas interno.

return - Sale de una fun-cion y devuelve el control alproceso que la habıa llamado.

if (condicion)

lista-if

[else

lista-else]

endif

Ejecutar la lista de comandoslista-if si la condicion es ver-dadera, de otra forma ejecutala lista lista-else.

if (condicion)

lista-if

[elseif (condicion2)

lista-elseif][else

lista-else]

endif

Ejecutar la lista de comandos

lista-if si la condicion es ver-dadera, de otra forma ejecu-tar la lista lista-elseif corres-pondiente a la primer condi-cion elseif que sea verdade-ra, de otra forma ejecutar lista-else.Cualquier numero de clausu-las elseif puede aparecer enuna sentencia if.

A.8. Manipulacionesbasicas de ma-trices

rows(a) - Devuelve el numerode filas de a

columns(a) - Devuelve el nume-ro de columnas de a

all(a) - chequea si todos loselementos de a son distintosde cero.

any(a) - chequea si cualquierelemento de a es distinto de.

find(a) - Devuelve los ındi-ces de los elementos distintosde cero.

sort(a) - Ordena los elemen-tos de cada columna de a.

sum(a) - Suma los elementosen cada columna de a.

prod(a) - Producto de los ele-mentos en cada columna de a.

min(args) - Encuentra el mıni-mo.

max(args) - Encuentra el maxi-mo.

Page 255: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

A.10. Algebra Lineal 235

rem(x, y) - Calcula el restode x/y.

reshape(a, m, n) - Reforma-tea la matriz a para que seade m por n.

diag(v, k) - Crea una ma-triz diagonal.

linspace(b, l, n) - Crea unvector de elementos espacia-dos linealmente.

logspace(b, l, n) - Crea unvector con espaciamiento lo-garıtmico.

eye(n, m) - Crea una matrizidentidad de n por m.

ones(n, m) - Crea una ma-triz de unos de n por m.

zeros(n, m) - Crea una ma-triz de ceros de n por m.

rand(n, m) - Crea una ma-triz de n por m con valoresaleatorios con distribucion uni-forme entre 0 y 1.

randn(n, m) - Crea una ma-triz de n por m con valoresaleatorios con distribucion nor-mal de varianza 1 y media 0.

A.9. Funciones tri-gonometricas

sin(a) cos(a) tan(a) - Fun-ciones trigonometricas.

asin(a) acos(a) atan(a) - Fun-ciones trigonometricas inver-sas.

sinh(a) cosh(a) tanh(a) - Fun-ciones trigonometricas hiperboli-cas.

asinh(a) acosh(a) atanh(a)

- Funciones trigonometricas hi-perbolicas inversas.

A.10. Algebra Li-neal

det(a) - Calcula el determi-nante de una matriz.

eig(a) - Autovalores y auto-vectores de una matriz.

expm(a) - Calcula la exponen-cial de una matriz.

inverse(a) - Inversa de unamatriz cuadrada.

norm(a, p) - Calcula la nor-ma p de una matriz.

pinv(a) - Calcula la pseusoin-versa de la matriz a.

rank(a) - Rango de una ma-triz.

A.11. Procesamientode Senales

fft(a) - Transformada Rapi-da de Fourier.

ifft(a) - Transformada rapi-da de Fourier Inversa.

freqz(args) - Respuesta enfrecuencia de filtros digitales.

sinc(x) - Funcion Sinc (sin(π x)/(π x))

Page 256: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

236 Apendice A. Octave (v2.1.36)

A.12. Procesamientode Imagenes

colormap(map) - Fija el mapade colores actual.

image(img, zoom) - Muestrauna matriz de imagen de Oc-tave.

imagesc(img, zoom) - Mues-tra una matriz escalada comouna imagen.

A.13. Funciones deentrada/salida

fopen(nombre, modo) - Abreel archivo name en modo mo-do.

fclose(arch) - Cierra el ar-chivo arch

fprintf(arch, fmt, ...) - Sa-lida formateada a arch.

sprintf(fmt, ...) - Salida for-mateada a una cadena.

fscanf(arch, fmt) - Entradaformateada desde arch

sscanf(str, fmt) - Entradaformateada desde la cadenastr

fgets(arch, len) - Lee lencaracteres del archivo arch

ftell(arch) - Fija la posiciondel puntero de lectura en unarchivo binario.

frewind(arch) - Mueve el pun-tero de un archivo al princi-pio.

fread(arch, size, prec) - Leedatos binarios de un archivo.

fwrite(arch, size, prec) -Escribe datos binarios en unarchivo.

feof(arch) - Determina si elpuntero de un archivo esta alfinal del archivo.

save arch var ... - Grabarvariables en arch

load arch - Cargar variablesdesde arch

disp(var) - Mostrar el valorde var en la pantalla.

A.14. Miscelaneas

eval(str) - Evaluar la cade-na str como un comando.

feval(str, ...) - Evaluar lafuncion de nombre str, pasan-do los demas argumentos a lafuncion.

error(message) - Imprimir unmensaje y retornar al nivel deejecucion superior.

clear pattern - Borrar las va-riables concordantes con el pa-tron pattern.

exist(str) - Chequea la exis-tencia de una variable o fun-cion.

who - Muestra las variables ac-tuales (formato corto).

whos - Muestra las variablesactuales (formato largo).

Page 257: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

A.18. Otras funciones de graficacion 237

A.15. Polinomiosconv(a, b) - Convolucion yproducto de polinomios.

deconv(a, b) - Deconvoluciony division de polinomios.

poly(a) - Crear un polinomioa partir de una matriz.

polyval(p, x) - Valor de unpolinomio p en x

roots(p) - Encontrar las raıcesde un polinomio.

A.16. Estadisticacorrcoef(x, y) - Coeficientede correlacion.

cov(x, y) - Covarianza.

mean(a) - Valor medio.

median(a) - Mediana.

std(a) - Desvıo estandar.

var(a) - Varianza.

A.17. Graficos basi-cos

gplot [ranges] expr [using][title]

[style] - Graficos en 2D.

gsplot [ranges] expr [using][title]

[style] - Graficos en 3D.

ranges - Especifican elrango de los datos.

expr - Expresion a gra-ficar.

using - Especifica las co-lumnas a graficar.

title - Especifica un tıtu-lo para la grafica.

style - Especifica el es-tilo de lınea para la grafi-ca

Si los rangos ranges se espe-cifican, deben star antes de laexpresion a graficar. Las op-ciones using, title, y style pue-den aparecer en cualquier or-den despues de la expresionexpr. Se pueden graficar multi-ples expresiones en un solo grafi-co, separandolas por comas.

setoptions - Fijar las opcio-nes de graficacion.

showoptions - Mostrar las op-ciones de graficacion.

replot - Redibujar el graficoactual.

closeplot - Cerrar la corrien-te a los procesos de gnuplot.

purge tmp files - Borrar losarchivos de dibujo tempora-les.

A.18. Otras funcio-nes de gra-ficacion

plot(args) - Grafico en 2Dcon ejes lineales.

semilogx(args) - Grafico en2D con eje x logarıtmico.

Page 258: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

238 Apendice A. Octave (v2.1.36)

semilogy(args) - Grafico en2D con eje y logarıtmico.

loglog(args) - Grafico en 2Dlogarıtmico en ambos ejes.

bar(args) - Grafico de barras.

stairs(x, y) - Grafico de es-caleras.

hist(y, x) - Histograma.

title(string) - Fija el tıtulode un grafico.

axis(limits) - Fija los ran-gos de un grafico.

xlabel(string) - Fija una eti-queta para el eje x.

ylabel(string) - Fija una eti-queta para el eje y.

grid [on|off] - Setea el esta-do de la grilla.

hold [on|off] - Setea el esta-do de retencion de un grafico.

mesh(x, y, z) - Grafico de unasuperficie en 3D.

meshgrid(x, y) - Crea matri-ces de coordenadas para el mesh.

Page 259: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Apendice B

Comandos de SciLab(v2.6)

239

Page 260: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

240 Apendice B. Comandos de SciLab (v2.6)

B.1. SenalesSignal - Descripcion manualde una senal.

analpf - Crear un filtro analogi-co pasabajos.

buttmag - Respuesta de un fil-tro Butterworth.

casc - Realizacion de filtrosen cascada a partir de los co-eficientes.

cepstrum - Calculo del Ceps-tro.

cheb1mag - Respuesta de unfiltro de Chebyshev tipo 1.

cheb2mag - Respuesta de unfiltro de Chebyshev tipo 2.

chepol - Polinomio de Chebys-hev.

convol - Convolucion.

corr - Correlacion, Covarian-za.

cspect - Estimacion espectralpor el metodo de correlacion.

dft - Transformada Discretade Fourier.

ell1mag - Magnitud de un fil-tro Elıptico.

eqfir - Aproximacion mini-max para un filtro FIR.

eqiir - Diseno de filtros IIR.

ffilt - Coeficientes de un fil-tro FIR pasabajos.

fft - Transformada Rapida deFourier.

filter - Aplicacion de un fil-tro.

frmag - Magnitud de FiltrosFIR e IIR.

fsfirlin - Diseno de filtrosFIR de fase lineal por la tecni-ca de muestreo en frecuencias.

group - Retardo de grupo deun filtro digital.

hilb - Transformada de Hil-bert.

iir - Filtro Digital IIR.

iirgroup - Optimizacion delretardo de grupo de filtros pa-sabajos IIR.

iirlp - Optimizacion de fil-tros IIR pasabajos.

intdec - Interpolacion/decimacionde una senal (cambio de fre-cuencia de muestreo).

lev - Equaciones de Yule-Walker(algoritmo de Levinson)

levin - Resolucion de siste-mas de Toeplitz por el algo-ritmo de Levinson (multidi-mensional)

mese - Estimacion espectral pormaximizacion de entropıa.

mfft - Transformada rapidade Fourier Multidimensional

pspect - Estimacion espectralcruzada entre dos series.

remez - Algoritmo de Remez.

remezb - Aproximacion Mini-max de la respuesta de mag-nitud.

sinc - Funcion Sinc (Sen(x)/x).

trans - Transformacion de fil-tros pasabajos a otros.

Page 261: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

B.3. Control 241

wfir - Filtros FIR de fase li-neal.

wigner - Distribucion de Wigner-Ville.

window - Ventana simetrica.

yulewalk - Diseno de Filtrospor mınimos cuadrados.

zpbutt - Prototipo analogicode filtro Butterworth.

zpch1 - Prototipo analogicode filtro Chebyshev tipo 1.

zpch2 - Prototipo analogicode filtro Chebyshev tipo 2.

zpell - Prototipo analogicode filtro Elıptico.

B.2. Sonidoanalyze - Grafico de frecuen-cias de una senal sonora.

auread - Cargar un archivo desonido .au.

auwrite - Escribir un archivode sonido .au.

lin2mu - Codificacion mu-lawde una senal lineal.

loadwave - Cargar un archivode sonido .wav.

mapsound - Graficar un mapade sonido.

mu2lin - Codificacion lineal deun sonido en mu-law.

playsnd - Reproducir un so-nido.

savewave - Grabar datos enun archivo .wav.

sound - Reproducir un soni-do.

wavread - Leer un archivo .wav.

wavwrite - Grabar un archivo.wav.

B.3. Controlbilin - Transformacion bili-neal general.

calfrq - Discretizacion de larespuesta en frecuencia.

cls2dls - Transformacion bi-lineal.

dbphi - Transformacion de larespuesta en frecuencia a larepresentacion de magnitud yfase.

dscr - Discretizacion de siste-mas lineales.

flts - Respuesta temporal desistemas discretos.

frep2tf - Transformacion dela respuesta en frecuencia aFuncion de Transferencia.

freq - Respuesta en frecuen-cia.

B.4. Funciones ele-mentales

abs - Valor absoluto, magni-tud.

acos - Arco Coseno.

acosh - Arco Coseno Hiperboli-co.

Page 262: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

242 Apendice B. Comandos de SciLab (v2.6)

and (&) - And (Y) logico.

asin - Arco Seno.

asinh - Arco Seno Hiperboli-co.

atan - Arco Tangente.

atanh - Arco Tangente Hiperboli-ca.

ceil - Redondear hacia +∞.

conj - Complejo Conjugado.

cos - Funcion Coseno

cosh - Coseno Hiperbolico.

cotg - Cotangente

coth - Cotangente Hiperboli-ca.

diag - Extraccion de matrizdiagonal.

erf - Funcion de Error.

eye - Matriz Identidad.

fix - Redondear hacia cero.

floor - Redondear hacia−∞.

imag - Parte Imaginaria.

int - Parte Entera.

interp - Interpolacion

interpln - Interpolacion Li-neal.

isdef - Verdadero si la varia-ble existe.

isinf - Verdadero para los va-lores infinitos.

isnan - Verdadero para las in-determinaciones (Not-a-Number).

isreal - Verdadero para va-riables reales.

kron - Producto de Kronecker(externo).

linspace - Vector espaciadolinealmente.

log - Logaritmo Natural.

log10 - Logaritmo base 10.

log2 - Logaritmo base 2.

logspace - Vector espaciadologarıtmicamente.

max - Maximo.

mean - Valor medio de un vec-tor o matriz.

median - Mediana de un vec-tor o matriz.

min - Mınimo.

modulo - Resto de la divisionentera.

not (~) - Not (NO) Logico.

ones - Matriz de unos.

or — - Or (O) logico.

prod - Productoria.

rand - Generador de numerosaleatorios.

real - Parte Real.

round - Redondeo al enteromas cercano.

sign - Funcion Signo.

sin - Funcion Seno.

sinh - Seno Hiperbolico.

size - Tamano de una matriz.

smooth - Suavizado (interpo-lado) por splines.

sort - Ordenar en orden de-creciente.

Page 263: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

B.5. E/S a archivos 243

sqrt - Raız Cuadrada.

squarewave - Forma de ondaCuadrada de perıodo 2 ∗ π

st_deviation - Desvıo Estandar.

sum - Sumatoria.

tan - Tangente.

tanh - Tangente Hiperbolica.

trfmod - Grafico de ceros ypolos.

tril - Submatriz triangularinferior.

triu - Submatriz TriangularSuperior.

zeros - Matriz de Ceros.

B.5. E/S a archi-vos

diary - Grabar la sesion deScilab en un archivo.

disp - Mostrar variables o men-sajes.

dispfile - Mostrar las pro-piedades de los archivos abier-tos.

file - Manejo de archivos.

fileinfo - Informacion sobreun archivo.

fprintf - Emulacion de la fun-cion de C fprintf (escritura enarchivos de datos con forma-to).

fprintfMat - Grabar una ma-triz en un archivo.

fscanf - Lectura de datos conformato desde un archivo.

fscanfMat - Lee una matrizdesde un archivo de texto.

input - Espera una entradapor teclado del usuario.

lines - Define las filas y co-lumnas usadas para el display.

load - Cargar variables gra-badas.

mclose - Cerrar un archivo abier-to.

meof - Chequea el fin de unarchivo.

mfprintf - Convierte, forma-tea y escribe datos a un ar-chivo.

mget - Lee un byte o word enun formato binario dado y loconvierte a double.

mgeti - Lee un byte o worden un formato binario dado ylo convierte a entero.

mgetl - Lee lıneas de un ar-chivo de texto.

mgetstr - Lee una cadena decaracteres de un archivo.

mopen - Abre un archivo.

mprintf - Convierte, forma-tea e imprime datos en la pan-talla de SciLab.

mput - Escribe un byte o worden un formato binario dado.

mputl - Escribe cadenas en unarchivo ASCII.

mseek - Fija la posicion actualen un archivo binario.

Page 264: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

244 Apendice B. Comandos de SciLab (v2.6)

msprintf - Convierte, forma-tea y escribe datos a una ca-dena.

read - Lee matrices.

save - Graba variables en ar-chivos binarios.

B.6. Creacion de fun-ciones

argn - Numero de argumen-tos de una funcion.

comp - Precompilacion de unafuncion.

edit - Edicion de funciones.

endfunction - Cierra la defi-nicion de una funcion.

function - Abre la definicionde una funcion.

genlib - Compila una librerıaa partir de todas las funcionesde un directorio.

getd - Carga todas las funcio-nes definidas en un directorio.

getf - Carga una funcion de-finida en un archivo.

newfun - Agrega un nombreen la tabla de funciones.

varargin - Numero variablede argumentos en una lista deargumentos de entrada.

varargout - Numero variablede argumentos en una lista deargumentos de salida.

B.7. GraficosMatplot - Grafico en 2D deuna matriz usando colores.

Matplot1 - Grafico en 2D deuna matriz usando colores.

bode - Grafico de Bode.

champ - Campo vectorial 2D.

champ1 - Campo vectorial 2Dcon flechas de colores.

colormap - Selecciona un ma-pa de colores.

contour - Curvas de nivel deuna superficie en 3D.

contour2d - Curvas de nivelde una superficie en un grafi-co de 2D.

contourf - Curvas de nivel re-llenas de una superficie en ungrafico de 2D.

drawaxis - Dibujar un eje.

errbar - Agregar barras deerror verticales a un grafico2D.

eval3d - Valores de una fun-cion sobre una grilla.

evans - Lugar de raıces de Evans.

gainplot - Grafico de magni-tud.

getlinestyle - Dialogo paraseleccionar el estilo de lınea.

getmark - Dialogo para selec-cionar las marcas del grafico.

getsymbol - Dialogo para se-leccionar los sımbolos y sustamanos para graficos.

Page 265: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

B.8. Operaciones lineales de matrices 245

graduate - Graduacion de losejes.

graycolormap - Mapa de co-lores gris lineal.

hist3d - Histograma 3D.

histplot - Histograma.

hotcolormap - Mapa de colo-res rojo a amarillo.

legends - Leyendas del grafi-co.

nyquist - Grafico de Nyquist.

param3d - Grafico 3D de unacurva (parametrica).

plot - Grafico simple.

plot2d - Grafico 2D.

plot2d1 - Grafico 2D (con ejeslogarıtmicos)

plot2d2 - Grafico 2D (de es-calera)

plot2d3 - Grafico 2D (con barrasverticales)

plot2d4 - Grafico 2D (Con fle-chas verticales)

plot3d - Grafico 3D de unasuperficie.

plzr - Grafico de polos y ce-ros.

polarplot - Grafico en coor-denadas polares.

replot - Redibuja la ventanade dibujo actual con nuevoslımites.

sgrid - Grilla de lıneas en elplano s.

subplot - Divide una ventanagrafica en una matriz de subventanas.

titlepage - Agrega un tıtuloa la ventana de dibujo.

winsid - Devuelve una listade las ventanas de dibujo.

xaxis - Dibuja un eje.

xbasc - Limpia una ventanagrafica y borra los graficos aso-ciados.

xbasimp - Envıa graficos a unaimpresora Postscript o a unarchivo.

xbasr - Redibuja una ventanagrafica

xclear - Borra una ventanagrafica.

xgrid - Agrega una grilla aun grafico 2D.

xload - Carga un grafico gra-bado.

xsave - Graba graficos a unarchivo.

B.8. Operaciones li-neales de ma-trices

det - Determinante.

exp - Exponencial elemento aelemento.

expm - Exponencial de una ma-triz cuadrada.

inv - Inversa de una matriz.

linsolve - Resolucion de ecua-ciones lineales.

orth - Base ortogonal.

Page 266: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

246 Apendice B. Comandos de SciLab (v2.6)

pinv - Pseudoinversa.

rank - Rango de una matriz.

svd - Descomposicion en va-lores singulares.

B.9. No linealderivative - Derivada apro-ximada.

intc - Integral de Cauchy.

intg - Integral definida.

linpro - Resolucion de pro-blemas de programacion lineal.

ode - Resolucion de ecuacio-nes diferenciales ordinarias.

ode_discrete - Resolucion deecuaciones diferenciales ordi-narias, simulacion discreta.

ode_root - Resolucion de ecua-ciones diferenciales ordinariascon deteccion de raıces.

optim - Rutina de optimiza-cion no lineal.

quapro - Resolucion de pro-blemas de programacion linealcuadratica.

B.10. Polinomiosclean - Limpiar matrices (re-dondea a cero los valores pe-quenos).

coeff - Coeficientes del po-linomio caracterıstico de unamatriz.

denom - Denominador.

determ - Determinante de unamatriz polinomica.

numer - Numerador.

pdiv - Division de polinomios.

roots - Raıces de un polino-mio.

B.11. Programacionabort - Interrumpir la ejecu-cion.

ans - Ultima respuesta.

apropos - Busca palabras cla-ve en la ayuda de SCiLab.

backslash (\\) - Division porla izquierda de matrices (pre-multiplicacion por inversa).

break - Comando para interrum-pir bucles.

call - Llamada a subrutinas.

case - Comando para selec-cionar entre varias opciones.

clear - Elimina variables.

clearglobal - Elimina varia-bles globales.

colon (:) - Operador de Ran-go.

comments - Comentarios.

else - Palabra clave de lassentencia if-then-else.

elseif - Palabra clave de lasentencia if-then-else.

end - Palabra clave de fin.

exec - Ejecucion de un archi-vo de script.

Page 267: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

B.13. Utilidades 247

exit - Termina la sesion deSciLab.

for - Palabra clave para bu-cles.

global - Definir una varia-ble global.

hat (^) - Exponenciacion

if then else - Ejecucion con-dicional.

mtlb_mode - Cambia a opera-ciones compatibles con Mat-Lab.

pause - Detiene la ejecucionhasta apretar una tecla.

percent (%) - Comentarios.

pwd - Muestra el directorio ac-tual de trabajo.

quote (’) - Transpuesta o de-limitador de cadenas.

select - Comando select (si-milar a switch).

then - Palabra clave de la sen-tencia if-then-else

while - Bucles condicionales.

who - Listado de variables.

whos - Listado de variables enformato largo.

B.12. Cadenas decaracteres

convstr - Conversion de mayuscu-las/minusculas.

emptystr - Cadena de longi-tud cero.

length - Tamano de un obje-to.

part - Extraccion de subca-denas.

strcat - Concatenar cadenasd caracteres.

strindex - Buscar la posicionde una cadena dentro de otra.

stripblanks - Eliminar los es-pacios en blanco al inicio y alfinal de una cadena.

strsubst - Sustituir una ca-dena de caracteres por otradentro de una cadena.

B.13. Utilidadeschdir - Cambiar el directorioactual.

dec2hex - Conversion de de-cimal a hexadecimal.

help - Ayuda en lınea.

hex2dec - Conversion de he-xadecimal a decimal.

man - Ayuda en lınea en for-mato manpages.

timer - Tiempo del CPU.

Page 268: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

248 Apendice B. Comandos de SciLab (v2.6)

Page 269: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Apendice C

Comandos de MatLab(v4.2)

249

Page 270: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

250 Apendice C. Comandos de MatLab (v4.2)

C.1. Comandos deusogeneral

Comandos basicoshelp - Documentacion On-line.

doc - Carga la documentacionHipertextual.

what - Listado de directoriosde los archivos .M, .MAT y.MEX.

type - Mostrar un archivo .M.

lookfor - Busqueda por pala-bra clave en la base de datosde ayuda.

which - Localiza funciones yarchivos.

demo - Ejecuta demos.

path - Control del arbol de di-rectorios de busqueda de Ma-tLab.

Manejo de variables ydel espacio de trabajo

who - Listado de variables enuso.

whos - Listado de variables enuso, formato largo.

load - Recuperar variables des-de disco.

save - Guardar variables delespacio de trabajo a disco.

clear - Eliminar variables yfunciones de la memoria.

pack - Compactar la memoriadel espacio de trabajo.

size - Tamano de una matriz.

length - Longitud de un vec-tor.

disp - Mostrar un texto porpantalla.

Trabajo con archivos ycon el sistema operati-vo

cd - Cambiar el directorio detrabajo actual.

dir - Listado de directorios.

delete - Borrar un archivo.

getenv - Obtener el valor deuna variable de entorno.

! - Ejecutar un comando delsistema operativo.

unix - Ejecutar comando delsistema operativo y devolverel resultado.

diary - Guardar el texto deuna sesion de MatLab.

Control de la ventanade comandos

cedit - Cambiar la configura-cion de la edicion/historial dela linea de comandos.

clc - Borrar la ventana de co-mandos.

home - Enviar el cursor al ini-cio.

Page 271: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

C.3. Analisis de senales 251

format - Setear el formato numeri-co de salida.

echo - Activar/desactivar eleco de comandos dentro de Scripts.

more - Control de salida porpaginas en la ventana de co-mandos.

Iniciando y terminan-do MatLab

quit - Terminar la sesion deMATLAB.

startup - Archivo .M que seejecuta al inicio de MatLab.

matlabrc - Archivo .M maes-tro de configuracion inicial delMatLab.

C.2. Graficos bidi-mensionales

Graficos X-Y elemen-tales

plot - Grafico Lineal.

loglog - Grafico logarıtmicoen ambos ejes.

semilogx - Grafico semilogarıtmi-co en el eje X.

semilogy - Grafico semilogarıtmi-co en el eje Y.

Graficos X-Y especiali-zados

polar - Grafico en Coordena-das Polares.

bar - Grafico de Barras.

stem - Grafico de secuenciasdiscretas.

stairs - Grafico de Escalera.

errorbar - Grafico con barrasde error.

hist - Histograma.

fplot - Graficacion de Fun-ciones implıcitas.

Referenciacion de grafi-cos

title - Tıtulo del grafico.

xlabel - Etiqueta de eje X.

ylabel - Etiqueta del eje Y.

text - Anotacion de Texto den-tro del grafico.

gtext - Anotacion de textoen posicion seleccionada porel mouse.

grid - Rejilla.

C.3. Analisis de senales

Operaciones basicasmax - Mayor componente.

min - Menor componente.

mean - Valor medio o prome-dio.

median - Mediana.

std - Desvıo Estandar.

sort - Ordenar en orden as-cendente.

sum - Suma de elementos.

prod - Producto de elemen-tos.

Page 272: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

252 Apendice C. Comandos de MatLab (v4.2)

Operaciones con vecto-res

cross - Producto cruz de vec-tores.

dot - Producto punto de vec-tores.

Correlacioncorrcoef - Coeficientes de Corre-lacion.

cov - Matriz de Covarianza.

subspace - Angulo entre sub-espacios.

Filtrado y convolucionfilter - Filtrado digital uni-dimensional.

filter2 - Filtrado digital bi-dimensional.

conv - Convolucion y multi-plicacion de polinomios.

conv2 - Convolucion bidimen-sional.

deconv - Deconvolucion y di-vision de polinomios.

Transformadas de Fou-rier

fft - Transformada discretade Fourier unidimensional.

fft2 - Transformada discretade Fourier bidimensional.

ifft - Transformada discretade Fourier Inversa unidimen-sional.

ifft2 - Transformada discre-ta de Fourier Inversa bidimen-sional.

abs - Magnitud (modulo).

angle - Angulo de Fase.

unwrap - Remover los saltosde angulo de fase a traves delos lımites de 360 grados.

fftshift - Mover la frecuen-cia cero al centro del espec-tro.

C.4. Funciones mat.elementales

Trigonometricassin - Seno.

sinh - Seno Hiperbolico.

asin - Arco Seno.

asinh - Arco Seno Hiperboli-co.

cos - Coseno.

cosh - Coseno Hiperbolico.

acos - Arco Coseno.

acosh - Arco Coseno Hiperboli-co.

tan - Tangente.

tanh - Tangente Hiperbolica.

atan - Arco Tangente.

atan2 - Arco tangente corre-gida para los 4 cuadrantes.

atanh - Arco Tangente Hiperboli-ca.

Page 273: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

C.5. Matrices elementales y manipulacion de matrices 253

sec - Secante.

sech - Secante Hiperbolica.

asec - Arco Secante.

asech - Arco Secante Hiperboli-ca.

csc - Cosecante.

csch - Cosecante Hiperbolica.

acsc - Cosecante Inversa.

acsch - Cosecante Hiperboli-ca Inversa.

cot - Cotangente.

coth - Cotangente Hiperboli-ca.

acot - Cotangente Inversa.

acoth - Cotangente Inversa Hi-perbolica.

Exponenciales

exp - Exponencial.

log - Logaritmo Natural.

log10 - Logaritmo base 10.

sqrt - Raız Cuadrada.

Complejos

abs - Modulo (valor absolutopara reales).

angle - Angulo de Fase.

conj - Complejo conjugado.

imag - Parte Imaginaria.

real - Parte Real.

Numericasfix - Redondear hacia cero.

floor - Redondear hacia−∞.

ceil - Redondear hacia +∞.

round - Redondear hacia el en-tero mas cercano.

rem - Residuo luego de la di-vision entera.

sign - Funcion signo.

C.5. Matrices ele-mentales y ma-nipulacion dematrices

Matrices elementaleszeros - Matriz de ceros.

ones - Matriz de unos.

eye - Matriz Identidad.

rand - Matriz de numeros alea-torios uniformemente distribui-dos.

randn - Matriz de numeros alea-torios con distribucion Nor-mal.

linspace - Vector linealmen-te espaciado.

logspace - Vector espaciadologaritmicamente.

meshgrid - Genera matricesX e Y para graficos 3-D.

: - Vector con espaciado re-gular.

Page 274: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

254 Apendice C. Comandos de MatLab (v4.2)

Constantes y variablesespeciales

ans - Ultima respuesta.

eps - Precision de punto flo-tante.

realmax - Mayor numero depunto flotante.

realmin - Menor numero po-sitivo de punto flotante.

pi - 3.1415926535897....

i, j - Unidad imaginaria.

inf - Infinito.

NaN - Constante utilizada cuan-do de encuentra una indeter-minacion (Not-a-Number).

flops - Numero de operacio-nes de punto flotante.

nargin - Numero de argumen-tos de entrada de una funcion.

nargout - Numero de argu-mentos de salida de una fun-cion.

version - Numero de Versionde MatLab.

Horas y fechasclock - Hora.

cputime - Tiempo de CPU pa-sado.

date - Fecha.

etime - Tiempo pasado desdeel inicio.

tic, toc - Iniciar o parar lasfunciones de timer.

Manipulacion de matri-ces

diag - Crear o extraer diago-nales.

fliplr - Invertir el orden delos elementos de una matrizde izquierda a derecha.

flipud - Invertir el orden delos elementos de una matrizde arriba hacia abajo.

reshape - Cambiar el tamanode una matriz.

rot90 - Rotar una matriz 90grados.

tril - Submatriz triangularinferior.

triu - Submatriz triangularsuperior.

: - Indice generico de rangode matrices.

C.6. Toolbox de pro-cesamiento desenales

Generacion de formasde onda

diric - Funcion de Dirichlet(Sinc Periodico).

sawtooth - Funcion diente desierra.

sinc - Funcion Sinc ( sin(pi*x)/(pi*x)).

square - Funcion rectangularperiodica.

Page 275: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

C.6. Toolbox de procesamiento de senales 255

Analisis e implementa-cion de filtros

abs - Magnitud.

angle - Angulo de Fase.

conv - Convolucion.

fftfilt - Filtrado en domi-nio frecuencial.

filter - Filtrado unidimen-sional.

filtfilt - Filtrado con un fil-tro de fase cero.

filtic - Determinar Condi-ciones Iniciales de un filtro.

freqs - Respuesta en frecuen-cia a partir de la transforma-da de Laplace.

freqspace - Espaciado en fre-cuencias para la respuesta enfrecuencias.

freqz - Respuesta en frecuen-cia a partir de la transforma-da Z.

grpdelay - Retardo de Gru-po.

impz - Respuesta al impulsodiscreta.

zplane - Grafico de polos yceros discreto.

Diseno de filtros digi-tales IIR

besself - Diseno de filtro analogi-co de Bessel.

butter - Diseno de filtro deButterworth.

cheby1 - Diseno de filtro deChebyshev tipo I.

cheby2 - Diseno de filtro deChebyshev tipo II.

ellip - Diseno de filtro Elıpti-co.

yulewalk - Diseno de filtro porel metodo de Yule-Walker.

Seleccion del orden defiltros IIR

buttord - Seleccion del ordende filtros de Butterworth.

cheb1ord - Seleccion del or-den de filtros de Chebyshevtipo I.

cheb2ord - Seleccion del or-den de filtros de Chebyshevtipo II.

ellipord - Seleccion del or-den de filtros Elipticos.

Diseno de filtros FIR

fir1 - Diseno de filtros FIRpor ventanas — - pasabajos,pasaaltos, pasabanda, recha-zabanda.

fir2 - Diseno de filtros FIRpor ventanas — - RespuestaArbitraria.

firls - Diseno de filtros FIR— - Respuesta arbitraria conbandas de transicion.

intfilt - Diseno de filtros in-terpoladores.

Page 276: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

256 Apendice C. Comandos de MatLab (v4.2)

remez - Diseno de filtros FIRoptimos por metodo de Parks-McClellan.

remezord - Seleccion del or-den de filtros FIR de Parks-McClellan.

Transformadasdct - Transformada Coseno Dis-creta.

dftmtx - Matriz de la Trans-formada Discreta de Fourier.

fft - Transformada rapida deFourier.

fftshift - Centrar la frecuen-cia cero.

hilbert - Transformada de Hil-bert.

idct - Transformada CosenoDiscreta Inversa.

ifft - Transformada Rapidade Fourier Inversa.

Procesamiento estadısti-co de senales

corrcoef - Coeficientes de Corre-lacion.

cov - Matriz de Covarianza.

csd - Densidad Espectral Cru-zada.

psd - Densidad Espectral dePotencia.

xcorr - Funcion de Correla-cion Cruzada.

xcov - Funcion Covarianza.

Ventanasbartlett - Ventana de Bart-lett.

blackman - Ventana de Black-man.

boxcar - Ventana Rectangu-lar.

chebwin - Ventana de Chebys-hev.

hamming - Ventana de Ham-ming.

hanning - Ventana de Han-ning.

kaiser - Ventana de Kaiser.

triang - Ventana Triangular.

Modelado parametricolevinson - Metodo recursivode Levinson-Durbin.

lpc - Coeficientes de Predic-cion Lineal usando el metodode autocorrelacion.

Operaciones especializa-das

cceps - Cepstro Complejo.

decimate - Remuestreo a unafrecuencia menor.

deconv - Deconvolucion.

demod - Demodulacion para si-mulacion de comunicaciones.

interp - Remuestreo a unafrecuencia mayor.

interp1 - Interpolacion gene-ral unidimensional.

Page 277: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

C.6. Toolbox de procesamiento de senales 257

medfilt1 - Filtro de Media-na.

modulate - Modulacion parasimulacion de comunicaciones.

rceps - Cepstro Real y recons-truccion de fase mınima.

resample - Remuestreo con unanueva frecuencia de muestreo.

specgram - Espectrograma.

spline - Interpolacion cubicacon Splines.

Prototipos de filtros analogi-cos pasabajo

besselap - Prototipo de filtrode Bessel.

buttap - Prototipo de filtrode Butterworth.

cheb1ap - Prototipo de filtrode Chebyshev tipo I.

cheb2ap - Prototipo de filtrode Chebyshev tipo II.

ellipap - Prototipo de filtroElıptico.

Traslaciones en frecuen-cia

lp2bp - Pasabajos a Pasaban-da.

lp2bs - Pasabajos a Rechaza-Banda.

lp2hp - Pasabajos a Pasaal-tos.

lp2lp - Pasabajos a Pasaba-jos.

Discretizacion de filtrosbilinear - Transformacion li-neal con compensacion de fa-se opcional.

impinvar - Transformacion in-variante al impulso.

Page 278: Impreso el 20 de octubre de 2003 Reportar errores y ...bioingenieria1.wdfiles.com/local--files/descargas/sibook2003.pdf · Introduccion a las Sena˜ les y los Sistemas Discretos Diego

Este documento fue escrito en LATEX, compilado con MiKTEX y edi-tado en TEXnicCenter.

258