Guía Lab - 4 Tele II 20.11.2021
Guía Lab - 4 Tele II 20.11.2021
Guía Lab - 4 Tele II 20.11.2021
LABORATORIO N.º 4
C o d i f i c a c i ó n de F u e n t e y de C a n a l
1. Objetivos
Los objetivos principales de esta práctica son los siguientes:
Estudiar la cantidad de información media generada por una fuente
discreta o por una fuente continua cuantificada mediante el concepto de
entropía.
Construir códigos de fuente capaces de proporcionar una tasa de salida
cercana a la entropía de la fuente: códigos de Huffman.
Construir códigos de canal capaces de proporcionar una cierta protección
frente a errores: códigos de Hamming.
2. Contenido Teórico
A continuación, se va a realizar una breve descripción de los elementos que van a
ser necesarios para la realización de esta práctica: la codificación de fuente
(códigos de Huffman), y la codificación de canal (códigos de Hamming). Esta
descripción no va a sustituir la información recibida en el curso de Teoría de
Telecomunicaciones II, y se deberá acudir a las referencias bibliográficas de este
tema para comprender todos los aspectos teóricos que se van a tratar en estas
prácticas.
Ejemplo:
Supongamos que se dispone de una fuente continua que discretizamos
empleando un cuantificador uniforme con 8 niveles. A continuación, codificamos
sus salidas, asignándole a cada muestra de entrada un símbolo compuesto por
tres bits. Las probabilidades de cada uno de estos símbolos son: P(000) =0.2,
P(001)=0.01, P(010) =0.4, P(011)=0.04, P(100) =0.1, P(101) =0.02, P(110) =0.07
y P(111) =0.16. En consecuencia, la entropía de esta fuente es:
Una vez que el árbol está completamente construido (es decir, en el momento
en que todos los símbolos se han juntado en uno solo con probabilidad 1), se
recorre el árbol de derecha a izquierda (parte hacia atrás del algoritmo),
asociando con cada bifurcación (esto es, donde se han sumado 2
probabilidades) un 0 y un 1 en cada una de sus ramas (se puede hacer de
manera arbitraria). En la Figura 2 se muestra dicha asignación, donde siempre
se ha situado el 0 en la rama superior.
Por último, se leen los bits de derecha a izquierda hasta llegar al símbolo original,
y dicha cadena de bits es la que se le asigna a cada símbolo de entrada. En la
Figura 3 se muestra la cadena de longitud variable asignada a cada cadena de
tres bits, pudiéndose apreciar que los símbolos más probables tienen asociadas
cadenas más cortas, y las menos probables cadenas asignadas más largas. Este
ejemplo es constructivo en el sentido de que cualquier código de Huffman se
puede obtener de la misma manera. Además, se puede demostrar que para una
asignación no fraccionaria de bits por símbolo dicho código es óptimo. Es decir,
se trata del que más se acerca al límite teórico dado por la entropía de la fuente.
donde ni es el número de bits usados para codificar el símbolo i-ésimo. Ahora, la tasa
de compresión de un código de Huffman se define como la relación de compresión
lograda frente a un código de longitud fija utilizado para codificar dicha fuente:
UNIVERSIDAD NACIONAL DE INGENIERÍA
FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA
ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
Una segunda medida de rendimiento es la eficiencia del código, que mide lo cercana
que se encuentra su longitud media del límite teórico dado por la entropía:
H X
.
L
4.-Cuestionario d e I n f o r m e F i n a l
4.4. Obtenga un código de Huffman para los códigos extendidos de la pregunta 3.3,
y compruebe que mejora el rendimiento del código calculando su tasa de compresión
y su eficiencia en cada caso.
a).- Desarrolle una función que calcule la entropía de una fuente discreta. Esta
función, h = entropia(p), recibirá como entrada un vector p de dimensiones N x 1 o
1 x N con la probabilidad de ocurrencia de cada símbolo de la fuente, comprobará
que se trata efectivamente de un vector de probabilidades válido.
Ing. Víctor Andrés Córdova Bernuy
9
UNIVERSIDAD NACIONAL DE INGENIERÍA
FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA
ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
Por lo que debe devolver un mensaje de error mediante la función error de Matlab
en caso contrario devolverá su entropía: h. Evalúe su rendimiento obteniendo la
entropía de las tres fuentes de la pregunta 4.1 y comprobando que coincide con el
resultado teórico.
b).- Codifique la función px=extension(p,k), que obtiene el vector de probabilidades
px, para una fuente discreta cuyos símbolos siguen el vector de probabilidades p,
cuando se toman símbolos de k en k (esto es, se ha realizado una extensión del
código de orden k). Asuma que los símbolos son independientes. Utilice la función
para obtener una extensión de la primera fuente de la pregunta 3.1 con k=1,...,6.
Calcule la entropía de los alfabetos extendidos y obtenga un código de Huffman
para cada uno de ellos. Compruebe que la entropía, la tasa de compresión y la
eficiencia coinciden con los teóricos (calculados en las preguntas 3.3 y 3.4) cuando
sea posible (esto es, para k = 1, 2 y 3). Dibuje la longitud media por símbolo del
alfabeto original frente a k, y compruebe cómo desciende uniformemente hacia el
límite teórico dado por la entropía de la fuente original
C).- Desarrolle una función que decodifique una secuencia de bits con un código
de Hamming (n = 15 y k = 11), m = decod(s,r). Para ello se dispone de la función c
= encod(m) que realiza la codificación con la matriz generadora,
cuya primera parte es una matriz identidad, de modo que los 11 primeros bits de
c son los de m (este es un ejemplo de un código sistemático), y de una función
que calcula los bits de síndrome s, s = sindrom(c), mediante la matriz H mostrada
a continuación.
1
0
UNIVERSIDAD NACIONAL DE INGENIERÍA
FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA
ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
1
1
UNIVERSIDAD NACIONAL DE INGENIERÍA
FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA
ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
Rellene las tablas 3 y 4 en las que se relaciona el síndrome obtenido con cada uno
de los posibles vectores de error.
1
2
UNIVERSIDAD NACIONAL DE INGENIERÍA
FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA
ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
000
001
010
011
100
101
110
111
Referencias:
1.- B.P. Lathi. Sistemas de Comunicación.
1
3