Você está na página 1de 40

Teoria da Informao

Ementa
Conceitos e Medidas da Informao
Modelo Fonte-Canal
Codificao da Fonte
Compresso de dados
Bases algbricas para deteco e correo de erros
Cdigos de Bloco e Polinomiais
Criptografia

Bibliografia

Livro Texto
WELLS, RICHARD. Applied Coding and Information Theory for Engineers

Livros Complementares
GALLAGER. Information theory and reliable communication
CSISZAR, ELIAS. Topics on Information Theory
LATHI. Random Signal and Information Theory
HAMMING. Coding and Information Theory
BLAHUT. Principles and Practice of Information Theory
Provas
09 de Outubro
02 de Dezembro

A nota final ser dada de acordo com a frmula abaixo

5
2 2
2 1
MT P P
NF
+ +
=

Onde NF = Nota Final
P
x
= Prova x
MT = Mdia dos Trabalhos

Homepage :www.ene.unb.br/juliana/cursos/teoriainf
Material elaborado por Eduardo Wolsky e digitado por Rafael Oliveira em 03/07/2003
Primeira Aula
26/08/03

Imaginando uma moeda "desonesta" que tem uma probabilidade de
1/4 de cair como cara. Para um milho de lanamentos quantos bits so
necessrios para transmitir os resultados?
primeira vista acreditamos que sejam necessrios 1.000.000 bits
mas apenas 811.300 bits podem transmitir esta informao.
Pensando numa moeda mais viciada, com probabilidade de 1/1000
para cair cara, podemos enviar estas informaes de vrias maneiras
possveis. Eis algumas idias:

a) Enviar somente o nmero do lanamento onde deu cara
20 bits por nmero x 1000 = 20.000 bits

b) Enviar o nmero relativo do lanamento onde deu cara
12 bits por nmero x 1000 = 12.000 bits

"Quanto menor a incerteza menor a quantidade de
informao"

Imaginemos agora um dado com oito faces (D8) com as seguintes
probabilidades:

p
A
= 1/2
p
B
= 1/4
p
C
= 1/8
p
D
= 1/16
p
E
= 1/32
p
F
= 1/64
p
G
= 1/128
p
H
= 1/128

Para representar cada lanamento, como temos oito resultados,
seriam necessrios trs bits. Mas o nmero mdio de bits por lanamento pode
ser diminudo. Imagine a seguinte representao:

Evento Representao
A 0
B 10
C 110
D 1110
E 11110
F 111110
G 1111110
H 1111111

Em mdia, por lanamento, iramos precisar de:

bits
o representa na bits de nmero p
H
A n
n
98 , 1 7
128
1
7
128
1
16
64
1
5
32
1
4
16
1
3
8
1
2
4
1
1
2
1
= + + + + + + + =

=


Sendo que esta apenas uma representao. Outras podem ser
criadas com resultados melhores.

Imagine agora como outro exemplo um dado de cinco lados (D5)
com suas respectivas probabilidades e trs representaes diferentes
representados na tabela abaixo

Resultado Probab. Repres. A Repres. B Repres. C
A 1/8 1111 11 110
B 1/8 1110 10 111
C 1/4 110 011 10
D 1/4 10 010 01
E 1/4 0 001 00

Para transmitir os resultados de um D5 seriam necessrios 03 bits.
Vejamos quantos bits podemos "economizar" utilizando as representaes A, B
e C.

Representao A

bits 5 , 2 1
4
1
2
4
1
3
4
1
4
8
1
4
8
1
= + + + +

Representao B

bits 75 , 2 3
4
1
3
4
1
3
4
1
2
8
1
2
8
1
= + + + +

Representao C

bits 25 , 2 2
4
1
2
4
1
2
4
1
3
8
1
3
8
1
= + + + +

Conseguimos alcanar vrios valores, mas como saber se o valor
o menor possvel? O nmero mnimo de bits necessrios para representar os
resultados pode ser obtido atravs da frmula

=
=
j
i n
x x
i i
p p X H
2
log ) (

Esta frmula representa o valor da incerteza, s precisamos enviar
os dados que nos so incertos e a esta incerteza damos o nome de entropia
cujo smbolo H(X). Se o valor obtido for prximo ao encontrado utilizando-se
a frmula pode-se saber que a representao boa.

Assim, no exemplo do D5 acima temos que sua entropia de:

bits
p p X H
n
x x
i i
984375 , 1 0546875 , 0 0546875 , 0 09375 , 0 15625 , 0 25 , 0 375 , 0 5 , 0 5 , 0
7
128
1
7
128
1
6
64
1
5
32
1
4
16
1
3
8
1
2
4
1
1
2
1
128 log
128
1
128 log
128
1
64 log
64
1
32 log
32
1
16 log
16
1
8 log
8
1
4 log
4
1
2 log
2
1
log ) (
2 2 2 2 2 2 2 2
5
1
2
= + + + + + + + =
+ + + + + + + =
+ + + + + + + =
=

=

Vejamos agora um outro exemplo. Imagine um dado comum (D6)
honesto, ou seja, as probabilidades de cair em qualquer face so iguais e tem
valor p
n
=1/6. O mnimo de bits necessrio :

bits p p X H
n
x x
i i
584962501 , 2 6 log
6
1
6 log ) (
2
6
1
2
= = =

=


Uma representao seria a seguinte:

Face Repres.
1 000
2 001
3 010
4 011
5 10
6 11

Que j uma representao simplificada da bvia. O nmero de bits
mdio pode ser obtido simplesmente somando-se o valor de todos os bits e
dividindo pelo nmero de possibilidades, isto :

6 6 , 2
6
2 2 3 3 3 3
=
+ + + + +


O valor bastante aproximado do nmero mnimo de bits
necessrios.
Agora que obtivemos um pouco de experincia, podemos retomar o
problema da moeda cujas probabilidades esto ilustradas abaixo, assumindo
que Cara = H (Head) e Coroa = T (Tail) teremos:

p
H
=1/4
p
T
=3/4

A entropia do evento :

81127814 , 0 4 log
4
1
3
4
log
4
3
) (
2 2
= + = X H

No podemos simplificar mais a representao de cada resultado
pois para cada um deles foi indicado um bit, 0 ou 1. Porm, podemos nos
utilizar de uma outra artimanha. Agruparemos os resultados em grupos de
quatro (valor escolhido arbitrariamente) e para cada um desses grupos
daremos uma representao. Sabe-se que cada grupo tem uma probabilidade
de ocorrer, logo, logicamente, os grupos com maior probabilidade sero
representados por um menor nmero de bits.

Result. Probabilidade Valor Repres. A Repres. B
TTTT p
T
p
T
p
T
p
T
81/256=0,316 0 0
TTTH 1000 101
TTHT 1001 100
THTT 1010 1101
HTTT
p
T
p
T
p
T
p
H
27/256=0,105
1011 1100
TTHH 110000 111000
THTH 110001 111001
HTTH 110010 111010
THHT 110011 111011
HTHT 11010 111111
HHTT
p
T
p
T
p
H
p
H
9/256=0,035
11011 1111001
THHH 111000 1111010
HTHH 111001 1111011
HHTH 111010 1111100
HHHT
p
T
p
H
p
H
p
H
3/256=0,0117
111011 1111101
HHHH p
H
p
H
p
H
p
H
1/256=0,004 1111 1111000


A representao A nos d:

bits
bits quatro cada a
874023437 , 0
49609375 , 3
256
1 4
256
3 6 4
256
9 5 2
256
9 6 4
256
27 4 4
256
81 1
=
=

+

+

+

+

+



A representao B nos d:

bits
bits quatro cada a
862304687 , 0
44921875 , 3
256
1 4
256
3 4 7
256
9 7
256
9 6 5
256
27 2 4
256
27 2 3
256
81 1
=
=

+

+

+

+

+

+


Segunda Aula 28/08/03
Modelo Fonte/Canal



Dados x Informao x Conhecimento

Os dados so qualquer fluxo entre fonte e destino
A Informao est associada ao processo da informao
O Conhecimento est associado ao processamento da informao
Tipos de Fontes
Fonte Contnua: Associada ao sinal analgico
Fonte Discreta: Associada ao sinal digital, transmite smbolos de um alfabeto
fonte.
Alfabeto
Uma fonte discreta possui um nmero finito de smbolos nicos. O
conjunto de smbolos chamado de alfabeto-fonte.

Exemplo 1
O conjunto das letras maisculas

A = {A, B, C, D,... Z}

Exemplo 2
O conjunto das letras maisculas, minsculas e numerais.

A = {A, B, C,... X, Y, Z, a, b, c,... x, y, z, 0, 1, 2,... 7, 8, 9}

O nmero de elementos de um alfabeto A chamado de
cardinalidade e designado por |A|. Um alfabeto de n letras sobre A chamado
um n-grama sobre A. A partir de um alfabeto podemos gerar um novo alfabeto
pela construo de n-gramas sobre o alfabeto original obtendo um alfabeto
extenso.

Seja A={a
0
, a
1
, a
2
,... a
m-1
} onde |A| = m. Podemos gerar A
2
contendo
m
2
2-gramas tal que A
2
={a
0
a
0
, a
0
a
1
, a
0
a
2
,... a
m-1
a
m-1
}. Generalizando,
concatenando-se n letras de A obtemos o alfabeto A
n
contendo m
n
n-gramas de
A.

Exemplo

Considere o alfabeto A = {A, B, C,... Z}

Podemos dizer que CARRUAGEM um 9-grama sobre o alfabeto A.

Considerando o alfabeto A
3
= {AAA, AAB, AAC,... ZZZ}

Podemos dizer que CAR RUA GEM um 3-grama sobre o alfabeto A
3
.

Considerando o alfabeto conjunto dos meios de transporte

Podemos dizer que CARRUAGEM um 1-grama
Associaes
Z A 6

O Alfabeto A foi associado ao conjunto dos inteiros

A B C ... X Y Z
0 1 2 ... 24 25 26
Quantidade de Informao
Hartley escreveu em 1923 o arquivo que inaugurou a Teoria da
Informao
Shannon em 1948 descobriu que a funo log pode medir a
quantidade de Informao.

Suponha E
1
e E
2
dois eventos com probabilidades de ocorrncia p
1
e
p
2
. de se esperar que a quantidade de informao obtida pelo conhecimento
da ocorrncia de ambos os eventos possa se relacionar ao conhecimento
individual da ocorrncia de cada evento I(E
1
E
2
) = I(E
1
) + I(E
2
), caso E
1
e E
2

sejam independentes.

) ( log ) (
2
E p E I =

A equao acima nos d a medida de informao resultante da
ocorrncia de um determinado evento E com probabilidade p(E).
Entropia
Dada uma varivel aleatria x, a qual pode assumir um nmero finito
de valores possveis x
i
, 1 i n, com probabilidades p
i
associadas a cada um
destes valores, e

= 1
i
p , denominamos de entropia, designada por H(x), a
esperana matemtica para a quantidade de informao contida em um evento
possvel qualquer.

=
i
i
i
p
p x H
1
log ) (
2


"Quanto maior a probabilidade menor a incerteza!!!"

Propriedades
(1) H(p
1
, p
2
,... p
n
) mxima quando p
1
= p
2
= ... = p
n
=
n
1
(probabilidades
equiprovveis);
(2) Seja uma permutao qualquer sobre {1, 2,... n}, H(p
1
, p
2
,... p
n
) =
H(p
(1)
, p
(2)
,... p
(n)
);
(3) H(p
1
, p
2
, ... p
n
) 0 (Ser igual a zero quando p
i
= 1 quando no houver
incerteza);
(4) H(p
1
, p
2
,... p
n
) = H(p
1
, p
2
,... p
n
, 0);
(5)
|
.
|

\
|
+ + +
<
|
.
|

\
|
1
1
1
1
1
1 1 1 1
n
,...
n
,
n
H
n
,...
n
,
n
H (Ao acrescentar-se um valor, a
incerteza aumenta);
(6) H(p
1
, p
2
,... p
n
) deve ser funo contnua dos argumentos;
(7)
|
.
|

\
|
+
|
.
|

\
|
=
|
.
|

\
|
n
,...
n
,
n
H
m
,...
m
,
m
H
mn
,...
mn
,
mn
H
1 1 1 1 1 1 1 1 1
;
(8) Seja p = p
1
+ p
2
+ ... p
n
e q = q
1
+ q
2
+ ... q
n
e p + q = 1 temos que H(p
1
,
p
2
,... p
n
, q
1
, q
2
,... q
n
) = H(p, q) + pH(p
1
, p
2
,... p
n
) + qH(q
1
, q
2
,... q
n
).

Exemplo
Considere o lanamento de uma moeda tal que p
cara
=p e p
coroa
=1-p
(Neste caso representamos a entropia por h(p) ao invs de H(p, 1-p)).
Segue que h(p) = -plog
2
p - (1-p)log
2
(1-p)
Assumindo que h(0)=h(1)=0
Trace o grfico de h(p), para p variando de 0 a 1.
Sabemos que o grfico atingir seu valor mximo quando p=0,5
(Propriedade 1), assim h(0,5) = 0,5 log
2
2 + 0,5 log
2
2=1, j temos o valor de h(p)
em trs pontos. O suficiente para construirmos o seguinte grfico:



Exemplo 2
Qual a entropia de uma fonte de 4 smbolos com distribuio de
probabilidade P
A
= {0,5; 0,3; 0,15; 0,05} ?

bits
H
647596 , 1
216 , 0 4105 , 0 521 , 0 5 , 0
05 , 0
1
log 05 , 0
15 , 0
1
log 15 , 0
3 , 0
1
log 3 , 0 2 log 5 , 0 ) 05 , 0 ; 15 , 0 ; 3 , 0 ; 5 , 0 (
2 2 2 2
=
+ + + =
+ + + =

Terceira Aula
02/09/03

Teorema
Para inteiro positivo n de distribuio de probabilidade P={p
1
, p
2
,
p
3
, ... p
n
}, temos que H(p
1
, p
2
, p
3
, ... p
n
) log
2
n, prevalecendo a igualdade se e
somente se n i
n
p
i
= 1
1
.
Entropia Conjunta
Seja X um vetor aleatrio, X=[A, B], onde A e B so variveis
aleatrias, assumindo um nmero finito de valores possveis a
i
e b
j
,
respectivamente. Ento, a entropia para o vetor X pode ser escrita como:

= = = = = =
j i
j i j i
b B a A p b B a A p B A H X H
,
2
) , ( log ) , ( ) , ( ) (
Generalizando, se X = [X
1
, X
2
, X
3
,... X
n
] ento podemos escrever:

= =
k j i
k j i k j i n
x x x p x x x p X X X X H X H
... ,
2 3 2 1
) ,... , ( log ) ,... , ( ) ... , , ( ) (
Teorema
Se x e y so duas variveis aleatrias que assumem um nmero
finito de valores, ento H(x,y) H(x) + H(y) com a igualdade prevalecendo se e
somente se x e y forem independentes.

Entropia Condicional
A incerteza acerca de X dado que Y=y pode ser definida como:

= = = = = =
i
i i
y Y x x p y Y x x p y Y X H ) | ( log ) | ( ) | (
2

A entropia condicional H(X|Y) chamada equivocao de X em
relao a Y, ser o valor mdio esperado ponderado para todas as possveis
ocorrncias de Y:

=
=
j i
j i j i
j i
j i j i j
y x p y x p
y x p y x p y p Y X H
,
2
,
2
) | ( log ) , (
) | ( log ) | ( ) ( ) | (

Teorema
) | ( ) ( ) | ( ) ( ) , ( Y X H Y H X Y H X H Y X H + = + = (1)
) | ( ) ( ) | ( ) ( ) , ( a b p a p b a p b p b a p = = (2)

Para provar (1) sabendo de (2)

) | ( ) (
) | ( ) ( log ) (
) | ( log ) , ( ) ( log ) , (
) | ( ) ( log ) , (
) , ( log ) , ( ) , (
2
, ,
2 2
,
2
,
2
X Y H X H
X Y H x p x p
y x p y x p x p y x p
y x p x p y x p
y x p y x p Y X H
i
i i
j i j i
j i j i i j i
j i
j i i j i
j i
j i j i
+ =
+ =
=
=
=



Basta lembrar que se somarmos todas as probabilidades conjuntas
para um dos elementos teremos a probabilidade do outro. Ento, para todos os
valores de j possveis:


=
i
i i
j i
i j i
x p x p x p y x p ) ( log ) ( ) ( log ) , (
2
,
2


De forma anloga pode-se provar que H(Y,X)=H (Y)-H(Y|X).

Exemplo
Seja A uma fonte de informao com alfabeto A = {0, 1, 2, 3}. Seja
cada smbolo a
n
igualmente provvel e seja B = {0,1} um gerador de paridade
com funo

= =
= =
2 ou 1 se , 1
3 ou 0 se , 0
a a
a a
b
j


bits bit B A H B H A B H
bits A H A B H A H B A H
bit B H
bits A H
2 2 log 5 , 0 2 1 ) | ( ) ( ) , (
2 ) ( ) | ( ) ( ) , (
1 2 2 log 50 , 0 ) (
2 4 4 log 25 , 0 ) (
2
2
2
= + = + =
= = + =
= =
= =


H(B | A) = 0 Uma vez que a incerteza de B dado A obviamente
zero, que pode ser comprovado matematicamente:

0 log 0 25 , 0 4 1 log 1 25 , 0 4 ) | ( log ) | ( ) ( ) | (
2 2
,
2
+ = =

j i
j i j i j
y x p y x p y p Y X H

Entropia de n-gramas e a Regra da Cadeia
Suponha um n-grama (s
0
, s
1
,... s
n-1
) produzido pela fonte A. A
entropia do n-grama dada por H(a
0
, a
1
,... a
n-1
), onde os argumentos a
t
indicam
que o smbolo de ndice t uma letra de A.

H(a
0
, a
1
,... a
n-1
) = H(a
0
) + H(a
1
, a
2
,... a
n-1
| a
0
)

Repetindo o argumento teremos

H(a
0
, a
1
,... a
n-1
) = H(a
0
) + H(a
1
| a
0
) + H(a
2
| a
0
, a
1
) + ... + H(a
n-1
| a
0
,... a
n-2
)

Este resultado conhecido como a regra da cadeia para a entropia.


1
0
1 1 0
) ( ) ,... , (
n
i
i n
a H a a a H

Com a igualdade valendo se e somente se todos os smbolos na
seqncia so independentes, neste caso, fonte dita ser sem memria.
Caso contrrio a fonte dita ser com memria ou makroviana.

Exemplo
Suponha uma fonte sem memria com A = {0,1} tendo smbolos
equiprovveis emitindo 6 smbolos. Seguindo o sexto smbolo, suponha que um
stimo smbolo, soma mdulo 2 (XOR) dos outros seis smbolos, seja
transmitido. Qual a entropia do 7-grama?

Sabemos que:

) ... | ( ) ... | ( ) ... | ( ) , , | ( ) , | ( ) | ( ) (
) ... , , (
5 0 6 4 0 5 3 0 4 2 1 0 3 1 0 2 0 1 0
6 2 1 0
a a a H a a a H a a a H a a a a H a a a H a a H a H
a a a a H
+ + + + + + =

Como a fonte sem memria, os primeiros seis smbolos da seqncia so
independentes, portanto:

) ... | ( ) ( ) ( ) ( ) ( ) ( ) ( ) ... , , (
5 0 6 5 4 3 2 1 0 6 2 1 0
a a a H a H a H a H a H a H a H a a a a H + + + + + + =

Como todos os eventos so equiprovveis H mxima e, neste caso,
necessita de um bit para ser transmitida. O ltimo termo zero pois no h incerteza
por este ser em funo dos seis primeiros que, neste caso, foram dados. Assim:

bits a a a a H 6 0 1 1 1 1 1 1 ) ... , , (
6 2 1 0
= + + + + + + =
Quarta Aula
04/09/03

Codificao da Fonte
Um codificador de fonte um elemento de processamento de dados
que toma como entrada um n-grama de um alfabeto-fonte A e produz como
sada um m-grama do alfabeto cdigo B. Estes m-gramas so chamados
palavras-cdigo.

B A C :

O codificador tem como objetivos processar a entrada de tal forma
que a informao mdia transmitida (ou armazenada) por uso do canal
aproxime-se de H(A), encontrar cdigos decodificveis univocamente, isto ,
para todo elemento de A haja apenas um B e vice-versa.

a b C b a C 6 6 ) ( ) (
1


Um codificador tambm deve encontrar cdigos que possam ser
decodificados instantaneamente.

Exemplo
Seja uma fonte de quatro smbolos A={a
0
, a
1
, a
2
, a
3
} que possuem
probabilidades P
A
={0,5; 0,3; 0,15; 0,05}. Seja C um codificador que mapeia os
smbolos de A em strings de dgitos binrios {0, 10, 110, 111} respectivamente.
Qual o nmero mdio de palavras por smbolo? Qual a eficincia do
codificador?

Com a codificao C teramos um nmero mdio de palavras por smbolos

bits n 7 , 1 05 , 0 3 15 , 0 3 3 , 0 2 5 , 0 1 = + + + =

A entropia (incerteza) da fonte original dada por:

bits A H 6477 , 1
05 , 0
1
log 05 , 0
15 , 0
1
log 15 , 0
3 , 0
1
log 3 , 0
5 , 0
1
log 5 , 0 ) (
2 2 2 2
= + + + =

Dado que a eficincia dada pela entropia dividida pelo nmero mdio
de bits temos que:
% 97
7 , 1
6477 , 1 ) (
= = =
n
A H


Somente a ttulo de curiosidade vamos repetir o exemplo acima no caso de
uma codificao {00, 01, 10, 11}, teramos obviamente um nmero mdio de palavras
por smbolo de 2 bits e a eficincia seria, neste caso:

% 4 , 82
2
6477 , 1 ) (
= = =
n
A H

Informao Mtua
A quantidade de informao que a ocorrncia de um evento Y=y
fornece a respeito da ocorrncia de um evento X=x dada por:

) , (
) | (
) (
log
) , (
) ( ) (
log
) | (
) (
log
)] | ( log [ ) ( log
) | ( ) ( ) , (
2
2
2
2 2
X Y I
X Y p
Y p
Y X p
Y p X p
Y X p
X p
Y X p X p
Y X I X I Y X I
=
(

=
(

=
(

=
=
=


O valor esperado para I(X,Y) = I(Y,X).

Teorema
Dadas duas variveis aleatrias X e Y, podemos escrever que a
informao mtua ligando as duas variveis ser dada por:

) | ( ) (
) | ( ) (
) , ( ) ( ) ( ) , (
X Y H Y H
Y X H X H
Y X H Y H X H Y X I
=
=
+ =


Cdigos de Comprimento Fixo
Seja a seqncia S
L
=
1
,
2
, ...
L
, com
i
A, 1 i L e |A| = n
podemos, portanto, ter n
L
L-gramas diferentes.
Se quisssemos codificar estas seqncias usando palavras-cdigo
de comprimento sobre um alfabeto B de m smbolos,

n
L
n m
m
L
log



Exemplo
Considere |A| = 10. Codificando cada letra da fonte em um cdigo
binrio |B| = 2 qual ser o valor de , considerando L = 1?

3219 , 3
10 log
1
log
2

n
L
m


Como o comprimento de uma palavra cdigo deve ser um nmero inteiro
(obviamente) temos que = 4 bits.

Se escolhermos usar menos que log
m
n letras-cdigo por letra-fonte,
ento precisaramos relaxar na nossa insistncia em sempre sermos capazes
de decodificar a seqncia fonte a partir da palavra-cdigo.

Considere a varivel aleatria X com espao amostral X = {x
1
, x
2
},
p(x
1
) = p
1
= 1/3 e p(x
2
) = p
2
= 2/3. A entropia de X dada por

bits X H 918 , 0
3
2
log
3
2
3
1
log
3
1
) (
2 2
= =

Vamos repetir o experimento L vezes para obter uma seqncia de L
variveis aleatrias independentes, distribudas identicamente. Portanto,
existem 2
L
seqncias possveis. Se o nmero de ocorrncias de x
1
em um
determinada seqncia k, a probabilidade da seqncia
k k
p p

1
1 1
) 1 ( uma
vez que existem
)! ( !
!
K L K
L
K
L

=
|
|
.
|

\
|
tais seqncias, suas probabilidades totais
so
K L k
p p
K
L

|
|
.
|

\
|
) 1 (
1 1

importante observar que a probabilidade de uma ocorrncia para
qual k significativamente diferente de Lp
1
muito pequena. Todas as
seqncias tpicas so mais ou menos equiprovveis a 2
-LH(X)
e o nmero total
de seqncias tpicas de 2
LH(X)
.

Podemos observar que

I(X
L
) LH(X), a medida que L cresce
P(X
L
) 2
-LH(X)

O nmero total de tais seqncias M
T
2
LH(X)
LH(X) bits por palavra cdigo
Quinta Aula
09/09/03

Teorema
Seja S uma fonte sem memria de entropia H(S) e seja B um cdigo
de comprimento sobre um alfabeto de m smbolos. Se p
e
a probabilidade de
ocorrncia de uma seqncia de comprimento L da fonte no coberta pelo
cdigo ento para qualquer > 0, se

m
s H
L
2
log
) (



p
e
pode ser feito to pequena quanto se queira.

I(B

)=I(S
L
)=LH(S)
Cdigos de Comprimento Varivel
Seja uma fonte discreta sem memria A={a
1
, a
2
, ... a
n
} com p(a
i
) = p
i
,
1 i n. Queremos codificar cada letra da fonte usando uma seqncia de
letras de um alfabeto-cdigo B={b
1
, b
2
,... b
m
} com |B|=m. Seja o comprimento
da palavra-cdigo utilizada para codificar a i-sima letra de A, o comprimento
mdio das palavras-cdigo ser

=
=
n
i
i i
p
1


Considere, por exemplo, um alfabeto-fonte de 4 smbolos com as
probabilidades mostradas na tabela abaixo, bem como quatro exemplos de
codificao.

Letra p(a
i
) Cd. I Cd. II Cd. III Cd. IV
a
1
0,5 0 0 0 0
a
2
0,25 0 1 10 01
a
3
0,125 1 00 110 011
a
4
0,125 10 10 111 0111

importante ressaltar que os cdigos I e II no so univocamente
decodificveis. Com os dados da tabela possvel calcular o comprimento
mdio das palavras-cdigo:

Cdigo I
bits 125 , 1 25 , 0 125 , 0 25 , 0 5 , 0 2 125 , 0 1 125 , 0 1 25 , 0 1 5 , 0 = + + + = + + + =


Cdigo II
bits 25 , 1 25 , 0 25 , 0 25 , 0 5 , 0 2 125 , 0 2 125 , 0 1 25 , 0 1 5 , 0 = + + + = + + + =


Cdigo III
bits 75 , 1 375 , 0 375 , 0 5 , 0 5 , 0 3 125 , 0 3 125 , 0 2 25 , 0 1 5 , 0 = + + + = + + + =


Cdigo IV
bits 75 , 1 375 , 0 375 , 0 5 , 0 5 , 0 3 125 , 0 3 125 , 0 2 25 , 0 1 5 , 0 = + + + = + + + =

Cdigo de Condio Prefixa ou Instantnea
Este o nome dado a um cdigo quando se sabe
instantaneamente qual a letra do alfabeto imediatamente aps a chegada do
ltimo bit referente a esta letra, no necessrio esperar pelo prximo bit.
Para quaisquer duas palavras c
i
e c
j
do cdigo, c
i
no prefixo de c
j
.
A decodificao de um cdigo de condio prefixa pode ser realizado por meio
de uma rvore de deciso.
Abaixo temos o exemplo de uma rvore de deciso e sua respectiva
tabela de codificao.

Palavra Cdigo
a
1
0
a
2
10
a
3
110
a
4
111


Teorema da Codificao da Fonte
Dada uma fonte S com entropia H(S) e um alfabeto cdigo B com m
smbolos. Ento qualquer cdigo univocamente decodificvel para esta fonte
usando B ter comprimento mdio cujo limite inferior dado por:

m
s H
2
log
) (


Alm disso, existe um cdigo instantneo tendo comprimento mdio
satisfazendo:

1
log
) (
2
+
m
s H


Construo de Cdigos de Condio Prefixa
Codificao de Blocos Encurtados
Seja um alfabeto fonte de n smbolos e um alfabeto-cdigo de m
smbolos.
Escolha r tal que m
r


n, de forma a podermos construir um cdigo de
blocos de comprimento r capaz de representar todos os smbolos da fonte.
Construa a rvore total (m
1
r). Elimine (m
r
-n) dos ns terminais
originais e encurte os ns correspondentes a estes ns, atendendo condio
prefixa.

Exemplo
Construa um cdigo univocamente decodificvel de condio prefixa
supondo que n=5 e m=2 e todos os smbolos so equiprovveis.

Primeiramente temos que definir o comprimento r do cdigo. Como m
r
n
assumimos que r = 3. Ento construmos a rvore total conforme ilustrado abaixo.

Agora devemos eliminar m
r
-n dos ns que corresponde a 2
3
-5 = 3 ns,
lembrando que os ns que levam a apenas um ramo podem ser eliminados, assim
temos:


Na figura acima os ns marcados com vermelho foram os trs ns
escolhidos para serem eliminados. O n marcado de rosa pode ser eliminado porque
no levava a lugar algum. E os ns marcados de verde foram eliminados porque o n
de origem levava apenas a um ramo (j se sabia que a informao era 011 quando
recebemos o 0 pois nenhum outro cdigo inicia-se com 0).
Assim podemos finalmente desenhar a rvore indicando seus smbolos e
seus respectivos cdigos:

Assim criamos um cdigo univocamente decodificvel e de condio pr-
fixa. Mas no h garantias que este cdigo seja o ideal, por exemplo, se calcularmos o
nmero mdio de bits do cdigo chegaremos ao valor de 2,6 bits (para eventos
equiprovveis). Tomando aleatoriamente outros trs ns para serem encurtados no
incio do processo podemos obter outros nmeros mdios, por exemplo:

Desta maneira teremos um nmero mdio de bits de 2,4, o que significa
que, para um evento equiprovvel este exemplo melhor que o primeiro.

Codificao de Huffman
Vamos supor que S uma fonte discreta, sem memria, sobre um
alfabeto de n smbolos e que C um cdigo C = {w
i
} sobre um alfabeto binrio
B={0,1}, 1 < i < n, cujas palavras-cdigo tem comprimento mdio (w
i
)= (i)

Lema
Para um alfabeto fonte com pelo menos dois smbolos, existe um
cdigo compacto onde existem pelo menos duas palavras-cdigo que tem
comprimento mximo
n
=
n-1
, cuja codificao idntica, exceto pelo ltimo bit,
que vale 1 para w
n
e 0 para w
n-1
.

Exemplo
Considere uma fonte de 5 smbolos distintos com as probabilidades
associadas A={a
1
, a
2
, a
3
, a
4
, a
5
}, P={0,3; 0,25; 0,25; 0,1; 0,1}.

Comeamos pelas duas palavras com menor probabilidade e a cada uma
associamos um bit (que ser o ltimo bit da representao). Para esse par de palavras
somamos suas probabilidades e repetimos o primeiro passo, sendo as duas palavras
agora representadas como uma nica palavra. Assim temos a codificao de Huffman.

a
1
(0,3)

0


(0,55) 0
a
2
(0,25)

1


(1,00)
a
3
(0,25) 0
(0,45) 1
a
4
(0,1) 0
(0,20) 1
a
5
(0,1) 1

A codificao final deve ser lida de trs para frente, assim temos:

Palavra Cdigo
a
1
0
a
2
01
a
3
10
a
4
110
a
5
111

Sexta Aula
11/09/03

Codificao Adaptativa
Nem sempre a probabilidade dos smbolos da fonte so
estacionrias. Por exemplo, algoritmos de compresso de imagens so
freqentemente utilizados para comprimir tanto texto quanto imagens. Estas
duas fontes de dados tem probabilidades de smbolos diferentes e estas
probabilidades podem ser difceis ou mesmo impossveis de se obter
antecipadamente. Para lidar com estes aspectos, modelos e mtodos
adaptativos de fonte foram desenvolvidos.
Parte-se de uma distribuio de probabilidades inicial, conforme se
vai obtendo mais smbolos da fonte, vai-se atualizando a distribuio de
probabilidades e a tabela de codificao. Aos smbolos com maiores contagens
de ocorrncias so atribudas palavras-cdigo curtas.
Um exemplo codificao adaptativa de Huffman MNP5, utilizada
em modems.
Codificao Preditiva
Assume-se dispor de um processo para prever o prximo smbolo
a ser emitido pela fonte. Considere o caso binrio, em que temos uma fonte S
que emite smbolos pertencentes ao alfabeto A={0,1}



A fonte emite smbolos p
n
. Espera-se que, na maioria das vezes, o
preditor seja capaz de acertar os smbolos emitidos pela fonte. A sada ser um
sinal de erro e
n
=(
n
-p
n
) o qual ser 0 se
n
= p
n
e 1 caso contrrio. Na
decodificao utiliza-se o mesmo preditor utilizado na codificao que ir
reproduzir as predies p
n
geradas na codificao, e a sada do codificador
ser p
n
+ e
n
=
n
, reproduzindo a seqncia original da fonte.
O preditor pode ser fixo ou adaptativo. A sada de um bom preditor
uma seqncia altamente redundante (baixa entropia).

Cdigos de Compresso
Codificao Run-Lenght (Comprimento de Cadeia)
Substitui-se ocorrncias sucessivas de um mesmo smbolo por uma
codificao especial que indique o nmero de ocorrncias daquele smbolo
naquele ponto da mensagem.

Exemplo
ACBXXXXXXDEF pode ser codificado como ABC@X5DEF,
considerando @ como caractere de escape. Observe como o nmero indica o
nmero de vezes que o caractere foi repetido, isto , no nosso caso ele
apareceu uma vez e foi repetido cinco, totalizando seis vezes.
O caractere de escape deve ser escolhido com cuidado, ele deve ter
uma probabilidade pequena, ou at mesmo nula, no alfabeto.

Codificao MNP Classe 5
Inicialmente, o fluxo de dados submetido codificao de
comprimento de cadeia. As seqncias de trs ou mais caracteres repetidos
so comprimidos pela insero, aps o terceiro caractere, do nmero de
contagem de caracteres idnticos que se seguem. A contagem mxima aceita
de 255.
Em seguida usado um procedimento adaptativo. Cada smbolo
codificado em duas partes:

O cabealho de 3 bits, que indica o tamanho do corpo;
O corpo do cdigo.

Para cada caractere h um contador. Se esse caractere aparece
mais vezes que um outro com codificao menor ele promovido trocando
sua codificao (como o mtodo da bolha). Este um timo exemplo de
cdigos adaptativos. Funciona melhor para mensagens longas.

Codificao para Fac-Smile (Fax)
Cadeias de bits so codificadas em run-lenght e depois num
segundo nvel de codificao (um cdigo de Huffman modificado criado a partir
da anlise estatstica de onze documentos). Este cdigo representa cadeias de
comprimentos na base 64, divididos em duas tabelas: cdigos de terminao
(cdigos individuais que representam cadeias de comprimento at 63) e
cdigos de construo (representa valores mltiplos de 64).
A primeira cadeia de cada linha sempre de brancos. utilizado um
cdigo especial de fim de linha (EOL: End Of Line).

Exemplo
Imagine a seguinte linha (onde 0 representa branco e 1 representa
preto)
NNNN
638 1043 37 10
1 ... 1 0 ... 0 1 ... 1 0 ... 0
Como as cadeias tem comprimento na base 64 temos que
representar cada cadeia como mltiplos de 64 + resto, isto :

10 b = 0x64 + 10
37 p = 0x64 + 37
1043 b = 16x64 + 19
638 p = 9x64 + 62

Consultando as tabelas de cdigos de terminao e construo,
obtemos que:

10 b = 00111
37 p = 000011010101
1043 b = 011010101 0001100
638 p = 01101000 000001100110

Acrescentando-se ao final o cdigo de EOL (00000000001) temos:

[00111][000011010101][011010101][0001100][01101000][000001100110][000000000
01]

A recomendao T4 tambm especifica outro tipo de codificao
padro para equipamentos de fax do grupo 3 implementado na forma de
codificao bidimensional. Aps uma linha ter sido codificada normalmente,
codifica-se as k 1 linhas subseqentes apenas com as diferenas em relao
linha de referncia. k estabelecido como 2 para resoluo vertical normal e
4 para alta resoluo.
Stima Aula
16/09/03
Codificao Baseada em Dicionrio
Suponha um cdigo de comprimento fixo baseado na segunda
edio do dicionrio Aurlio.

1809 pginas 11 bits
3 colunas 2 bits
At 32 palavras por coluna 5 bits

Apenas 18 bits so necessrios para representar qualquer palavra!

Exemplo
Vamos utilizar a codificao baseada em dicionrio para codificar a
seguinte frase:

Um exemplo simples ilustrar melhor

Basta procurar por estas palavras no dicionrio e dizer em qual
pgina, qual coluna e em qual palavra desta coluna a palavra aparece:

1735/3/3 740/1/19 1587/1/16 917/2/17 1207/1/1
Construo Dinmica do Dicionrio
Repita
Palavra=L_Palavra(Entrada) // L a palavra da entrada
ndice=Busca_Palavra(Dicionrio) // Verifica no dicionrio
Se ndice=0 // Se no existir
Escreve(Palavra,Sada) // Escreve palavra na sada
Inclui(Palavra,Dicionrio) // Inclui no dicionrio
Se no // Se existir
Escreve(ndice,Sada) // Coloca o ndice na sada
At Fim_Mensagem
Codificao de Lempel-Ziv
Os algoritmos Lempel-Ziv comprimem pela construo de um
dicionrio de seqncias previamente encontradas. Dada uma posio em um
arquivo, olhe para a parte precedente do arquivo para encontrar a coincidncia
mais longa para a seqncia que comea na posio corrente, e gere algum
cdigo que se refira a esta coincidncia.
As duas maiores variantes do algoritmo so descritas por ZIV e
Lempel em dos artigos separados em 1977 e 1978 e so conhecidos por LZ77
e LZ78. O algoritmo LZ77 a base dos formatos GZIP, ZIP, ARJ, LHA e ZOO,
por exemplo, e baseia-se a idia de janelas deslizantes. O algoritmo s procura
por coincidncias numa janela de distncia fixa para trs da posio corrente.

Exemplo
No exemplo abaixo, a seqncia janela da janela futura
codificada como 07f, significando que a seqncia inicia na posio 0 da janela
de texto, tem comprimento 7 e a primeira letra aps a mesma, na janela futura,
f.



J o LZ78 a base dos formatos Compress e GIF. A variante mais
utilizada a LZW.
LZW
A cada entrada do dicionrio dado um endereo m. Cada entrada
consiste num par ordenado <n, a
j
>, onde n um endereo para outra entrada
do dicionrio (um ponteiro, que tambm funciona como a palavra-cdigo a ser
transmitida) e a
j
um smbolo do alfabeto fonte A.
Inicialmente, para |A|=M, o algoritmo inicia pela construo das
primeiras M+1 entradas no dicionrio.

Endereo Entrada
0 0, null

1 0, a
0
2 0, a
1
... ...
M 0, a
M-1

Criada a tabela, as seguintes instrues so interativamente
executadas pelo codificador:

Procure o prximo smbolo a da fonte;

Se o par ordenado <n,a> j est no dicionrio ento
n = endereo do dicionrio da entrada <n,a>
Se no
Transmita n
Crie uma nova entrada <n,a> no endereo m do dicionrio
m=m+1
n=endereo da entrada <0,a> do dicionrio;
Retorna ao incio.

Exemplo
Uma fonte binria de informao emite a seqncia de smbolos 110
001 011 001 011 100 011 11 etc. Construa o dicionrio de codificao e
determine a seqncia de smbolos-cdigo transmitidos.
Uma vez que a fonte binria, o cdigo original dever conter somente a
entrada nula e as entradas <0,0> e <0,1> nos endereos 0, 1 e 2 respectivamente. As
operaes do codificador esto descritas na tabela abaixo.

Smb. n m TX Prximo n Entrada
1 0 3 - 2 -
1 2 3 2 2 2, 1
0 2 4 2 1 2, 0
0 1 5 1 1 1, 0
0 1 6 - 5 -
1 5 6 5 2 5, 1
0 2 7 - 4 -
1 4 7 4 2 4, 1
1 2 8 - 3 -
0 3 8 3 1 3, 0
0 1 9 - 5 -
1 5 9 - 6 -
0 6 9 6 1 6, 0
1 1 10 1 2 1, 1
1 2 11 - 3 -
1 3 11 3 2 3, 1
0 2 12 - 4 -
0 4 12 4 1 4, 0
0 1 13 - 5 -
1 5 13 - 6 -
1 6 13 6 2 6, 1
1 2 14 - 3 -
1 3 14 - 11 -

O Dicionrio do Codificador LZW apresentado na tabela abaixo.

End. Entrada
0 0, null
1 0, 0
2 0, 1
3 2, 1
4 2, 0
5 1, 0
6 5, 1
7 4, 1
8 3, 0
9 6, 0
10 1, 1
11 3, 1
12 4, 0
13 6, 1
14 ...

O decodificador, no receptor, tambm precisa construir um dicionrio
idntico quele do transmissor e precisa decodificar os smbolos de cdigo recebidos. A
operao do decodificador governada pelas seguintes observaes:

1. A recepo de alguma palavra-cdigo significa que uma nova entrada de
dicionrio deve ser construda;
2. O ponteiro n para esta nova entrada o mesmo que a palavra-cdigo
recebida;
3. O smbolo-fonte a para esta entrada ainda no conhecido, uma vez que
ele o smbolo raiz da prxima seqncia.

Se o endereo desta entrada no dicionrio m, o decodificador s pode
construir um entrada parcial <n,?>, j que ele precisa esperar a prxima palavra-
cdigo recebida para encontrar o smbolo raiz a para esta entrada. Ele pode,
entretanto, preencher o smbolo que falta a na entrada de dicionrio anterior no
endereo m 1. Ele tambm pode decodificar a seqncia de smbolos-fonte associada
com a palavra cdigo recebida n.
1


1

1
Digitado em 19/04/2003 por Rafael Oliveira
Oitava Aula
18/09/03
Codificao Aritmtica
O objetivo obter efeito de codificao de bit fracionado. A
codificao aritmtica comea pela atribuio, a cada elemento de A, de um
subintervalo dos nmeros reais 0 e 1. O comprimento do intervalo igual s
probabilidades dos smbolos.
O processo consiste em construir um intervalo de cdigo que
descreve unicamente um bloco de smbolos sucessivos da fonte.
Assuma que a A a
i
foi atribudo um intervalo I
i
=[S
li
, S
hi
]. Execute
os seguintes passos:

j = 0
L
j
= 0
H
j
= 1
Repita
= H
j
- L
j
Leia o prximo a
i

L
j+1
= L
j
+ S
li
H
j+1
= L
j
+ S
hi
j = j + 1
at que a
i
tenha sido codificado

Exemplo
Utilizando a codificao aritmtica vamos codificar a palavra
Compresso. Utilizamos nos smbolos, a ttulo de exemplo, somente as letras
da palavra em questo, primeiro as vogais, depois as consoantes, em ordem
alfabtica. Poder-se-ia utilizar qualquer outra ordem, por exemplo, todas as
letras do alfabeto e sua probabilidade de apario na Lngua Portuguesa.

Smb. Prob. Intervalo
A 0,1 [0,0; 0,1)
E 0,1 [0,1; 0,2)
O 0,2 [0,2; 0,4)
C 0,1 [0,4; 0,5)
M 0,1 [0,5; 0,6)
P 0,1 [0,6; 0,7)
R 0,1 [0,7; 0,8)
S 0,2 [0,8; 1,0)



Smbolo Limite Inferior (L
j
) Limite Superior (Hj) Delta ()
C 0,4 0,5 0,1
O 0,42 0,44 0,02
M 0,430 0,432 0,002
P 0,4312 0,4314 0,0002
R 0,43134 0,43136 0,00002
E 0,431342 0,431344 0,000002
S 0,4313436 0,4313440 0,0000004
S 0,43134392 0,43134400 0,00000008
A 0,431343920 0,431343928 0,000000008
O 0,4313439216 0,4313439232 0,0000000016

transmitido o ltimo valor de H
j
ou L
j
.

Para a decodificao utilizam-se os seguintes passos:

L=0
H=1
=H-L
Repita
Encontre i tal que

i
I
L b

// Onde b o cdigo.
Mostre o smbolo a
i

H=L+S
hi
// Os trs passos seguintes so

L=L+S
li
// teis quando as probabilidades
=H-L // so complicadas
At que o ltimo smbolo seja codificado

Exemplo
Suponha que recebamos o cdigo 0,4313439216, conhecendo a
tabela de intervalos vemos que o nmero recebido est entre 0,4 e 0,5, no
intervalo do smbolo C.
Agora fazemos
i
I
L b

. Sendo b o cdigo, L o limite inferior (por


enquanto 0,4) e = H L, no caso, 0,1 temos:

313439216 , 0
1 , 0
4 , 0 4313439216 , 0
=


O novo b est entre 0,2 e 0,4, representando o smbolo O e assim
por diante at obtermos a palavra completa.

Codificao do Canal


Canal de Informao
um processo estocstico ao qual temos associado:
Um alfabeto de entrada A = {a
0
, a
1
, ... na}
Um alfabeto de sada B = {b
0
, b
1
, ... b
n
}
Uma distribuio de probabilidade P(B|A) que relaciona
os smbolos que saem do canal em funo dos
smbolos que entram.

Canal Discreto sem Memria
As probabilidades atribudas ao mesmo p(b
j
|a
i
), i=0, 1, 2, ... n e j = 0,
1, 2, ... m so independentes dos smbolos anteriores que foram transmitidos.

Canal Discreto com Memria
Cada smbolo de sada pode depender no somente do
correspondente smbolo de entrada, mas tambm dos smbolos anteriores.
descrito por uma cadeia de Markov. Um exemplo so as mquinas de estados.

Relaes do Canal
Considerando um alfabeto de entrada A, com |A|=n e um alfabeto de
sada B, com |B| = m, a matriz de transio do canal P = [p
ij
] = [p(b
j
| a
i
)], i = 0, 1,
... n-1 e j = 0, 1, ... m-1 coloca a distribuio de probabilidades do canal em
forma matricial.

(
(
(
(
(

1 | 1 2 | 1 1 | 1 0 | 1
1 | 1 2 | 1 1 | 1 0 | 1
1 | 0 2 | 0 1 | 0 0 | 0
n m m m m
n
n
p p p p
p p p p
p p p p
p
"
# % # # #
"
"


O somatrio da coluna i corresponde entrada a
i
.
O somatrio da linha j corresponde entrada b
j.
Como chegar nesta matriz no o alvo do nosso curso. Vamos
trabalhar sempre com a matriz sendo dada.

Exemplo
A = {0, 1}
B = {x, y, z}

(
(
(

=
(
(
(

=
08 , 0 05 , 0
15 , 0 015
05 , 0 8 , 0
| 1 | 0
| 1 | 0
| 1 | 0
z z
y y
x x
p p
p p
p p
T

Repare que a soma das colunas sempre igual a 1.
Nona Aula
23/09/03
Canal Discreto sem memria
Propriedades:
1.

=
= =
1
0
1
0
|
1 ) | (
m
j
m
j
i j i j
a b p P

2.


=

=
= =
1
0
1
0
1
0
1
0
1 ) , ( ) ( ) | (
n
i
m
j
j i
n
i
m
j
i i j
b a p a p a b p

3. Se p
j|i
invariante no tempo, o canal dito ser estacionri.

4. As distribuies de probabilidades p(b
j
) e p(a
i
) esto relacionadas
pelo canal:

=
= =
1
0
|
) ( ) | ( ) (
n
i
T
A A B B j i j i
P P P b p a b p a p

Exemplo

A = {0, 1}
B = {b
0
, b
1
, b
2
}



(
(
(

=
80 , 0 05 , 0
15 , 0 15 , 0
05 , 0 80 , 0
| A B
P

Calcule P
B
dado que P
A
uniformemente distribudo.

Sabendo que
T
A A B B
P P P =
|
e uma vez que P
A
uniformemente
distribudo temos que:

(
(
(

=
(
(
(

+
+
+
=
(

(
(
(

=
425 , 0
15 , 0
425 , 0
4 , 0 025 , 0
075 , 0 075 , 0
025 , 0 4 , 0
5 , 0
5 , 0
80 , 0 05 , 0
15 , 0 15 , 0
05 , 0 80 , 0
B
P

Veja que peculiar. A entrada tem cardinalidade 2 e a sada tem cardinalidade 3... uma forma de se
detectar erros, chamado de deciso ampla ou soft decision.
Calcule agora H(A) e H(B).

Como A uniformemente distribudo sabemos que H(A) = 1. Vamos
provar atravs dos clculos:

bit A H 1
5 , 0
1
log 5 , 0
5 , 0
1
log 5 , 0 ) (
2 2
= + =

J H(B) no pode ter seu valor deduzido to facilmente:

bit B H 464743854 , 1
425 , 0
1
log 425 , 0
15 , 0
1
log 15 , 0
425 , 0
1
log 425 , 0 ) (
2 2 2
= + + =

Exemplo
Considere o canal binrio simtrico (CBS)


p q a b p a b p
p a b p a b p
P Q a p
P a p
B
A
= = = = = = =
= = = = = =
= = =
= =
=
=
1 ) 1 | 0 ( ) 0 | 1 (
) 1 | 1 ( ) 0 | 0 (
1 ) 1 (
) 0 (
} 1 , 0 {
} 1 , 0 {
(


=
p p
p p
T
1
1


A matriz T um exemplo de hard decision ou deciso restrita, quando
a cardinalidade de entrada igual cardinalidade de sada.

Vamos calcular P
B

Pq Qp a b p a p a b p a p b p
Pp Qq a b p a p a b p a p b p
Qp Pq
Qq Pp
Q
P
p q
q p
P P P
T
A A B B
+ = = = = + = = = = =
+ = = = = + = = = = =
(

+
+
=
(

= =
) 0 | 1 ( ) 0 ( ) 1 | 1 ( ) 1 ( ) 1 (
) 0 | 0 ( ) 0 ( ) 1 | 0 ( ) 1 ( ) 0 (
|


Sabendo que ) ( ) | ( ) ( ) | ( ) , (
i i j j j i j i
a p a b p b p b a p b a p = = e
conseqentemente
) (
) ( ) | (
) | (
j
i i j
j i
b p
a p a b p
b a p

= ento...

Qp Pq
Qp
b p
a p a b p
b a p
Qq Pp
Qq
b p
a p a b p
b a p
Qp Pq
Pq
b p
a p a b p
b a p
Qq Pp
Pp
Pp Qq
pP
b p
a p a b p
b a p
+
=
=
= = =
= = =
+
=
=
= = =
= = =
+
=
=
= = =
= = =
+
=
+
=
=
= = =
= = =
) 1 (
) 1 ( ) 1 | 1 (
) 1 | 1 (
) 0 (
) 1 ( ) 1 | 0 (
) 0 | 1 (
) 1 (
) 0 ( ) 0 | 1 (
) 1 | 0 (
) 0 (
) 0 ( ) 0 | 0 (
) 0 | 0 (


O alfabeto de sada deve ter cardinalidade maior ou igual o
de entrada, seno haver perda de informao.
Revisando alguns conceitos

=
|
|
.
|

\
|
=
|
|
.
|

\
|
=
=
=
1
0
1
0
2
1
0
1
0
2
) (
) | (
log ) | ( ) (
) (
) | (
log ) | ( ) (
) | ( ) (
) | ( ) ( ) , (
n
i
m
j i
j i
j i j
n
i
m
j j
i j
i j i
a p
b a p
b a p b p
b p
a b p
a b p a p
A B H B H
B A H A H B A I


Exemplo

canal do bits/uso 57566 , 0
425 , 0
05 , 0
log 05 , 0
5 1 , 0
15 , 0
log 5 1 , 0
425 , 0
8 , 0
log 8 , 0 2 5 , 0
) (
) | (
log ) | ( ) ( ) , (
] 5 , 0 5 , 0 [
] 425 , 0 150 , 0 425 , 0 [
8 , 0 05 , 0
15 , 0 15 , 0
05 , 0 8 , 0
2 2 2
1
0
1
0
2
|
=
(

+ + =
|
|
.
|

\
|
=
=
=
(
(
(

=
n
i
m
j j
i j
i j i
A
B
A B
b p
a b p
a b p a p B A I
P
P
P


Capacidade do Canal
A informao mtua I(A,B) conecta as duas portas do canal e pode
ser interpretada como a informao transmitida pelo canal. Traduz a diferena
da incerteza sobre a fonte antes e depois da transmisso, portanto, a
informao transmitida pelo canal depende da distribuio de probabilidades de
A que P
A
.
A Capacidade do canal dada por:

) , ( ) ( B A I A p MAX C =
Canais Simtricos
Toda coluna de P
B|A
uma permutao da primeira coluna.
Toda linha de P
B|A
uma permutao da primeira linha.
Para canais simtricos, a capacidade atingida quando p(a)
uniformemente distribuda.

Dcima Aula
25/09/03


Exemplo 1
Calcule a Capacidade do QPSK (Phase Shift Key) considerando
|A|=|B|=4.

(
(
(
(

=
950 , 0 024 , 0 024 , 0 002 , 0
024 , 0 950 , 0 002 , 0 024 , 0
024 , 0 002 , 0 950 , 0 024 , 0
002 , 0 024 , 0 024 , 0 950 , 0
| A B
P

Sabemos que ) , ( ) ( B A I A p MAX C = e sabemos que a capacidade
atingida quando p(A) for uniformemente distribuda, o que significa que:

P
A
= [0,25 0,25 0,25 0,25]

Calculando P
B
temos que:

P
B
= [0,25 0,25 0,25 0,25]

Logo:
66 , 1 ] 01 , 0 16 , 0 83 , 1 [ 1
25 , 0
002 , 0
log 002 , 0
25 , 0
024 , 0
log 024 , 0 2
25 , 0
950 , 0
log 950 , 0 25 , 0 4
) (
) | (
log ) | ( ) ( ) , (
2 2 2
3
0
3
0
2
=
(

+ + =
|
|
.
|

\
|
=

= = i j j
i j
i j i
b p
a b p
a b p a p B A I

Exemplo 2
CBS (Canal Binrio Simtrico)

(


=
p p
p p
P
A B
1
1
|


) | ( ) ( ) | ( ) ( ) , ( A B H B H B A H A H B A I = =

importante lembrar que como ) , ( ) ( B A I A p MAX C = , para um
vetor de sada B={0 1}, para atingir MAX p(B) (P
B
=[0,5 0,5] temos que H(B)=1
assim.
) ( 1
...
) (
) 1 ( log ) 1 ( log
) | ( log ) | ( ) | ( ) , (
2 2
1
0
2
p h C
assim
p h
p p p p
a b p a b p A B H B A I
n
j
i j i j
=
=
=
= =

=


Algoritmo Arimoto-Blahut
baseado no fato de que a capacidade do canal pode ser limitada
tanto superior quanto inferiormente para algumas funes simples de P
A
. O
Algoritmo recursivamente atualiza P
A
.

Seja |A|=N, |B|=M, F=[f
0
f
1
... f
N-1
], = nmero inteiro positivo ( a
margem de preciso)
Sejam i e j ndices sendo que i [0, 1, ..., N-1] e j [0, 1, ..., M-1]

Inicialize
A A B B
N A
P P P
N
p
N
p
N
p P
=
)
`

= = = =

|
1 1 0
1
,...,
1
,
1

Repita Fim
Se Fim
] 1 ,..., 1 , 0 [ para
Seno
Pare
ento ) ( Se
Limit pper // U )] ( [ log
Limit Lower // ) ( log
] 1 ,..., 1 , 0 [ para ln exp
Repita
|
2
2
|
|
A A B B
i i
i
L
L U
i U
L
A
j j
i j
i j i
P P P
N i
x
p f
p
I C
I I
f MX I
x I
P F x
N i
p
p
p f
=
=
=
<
=
=
=

(
(

|
|
.
|

\
|
=



Este algoritmo s precisa ser executado uma vez nos canais
simtricos. A entrada do Algoritmo a matriz de transio P
B|A
e a sada C,
I(A,B) e P
A
.

Teorema do Canal Ruidoso

) ( ) | ( 0 A H B A H

Vimos que ) ( ) ,..., , (
1 1 0
A nH A A A H
n

. Na transmisso de um bloco de
n smbolos o canal usado n vezes. Como ) ,... , (
1 1 0 n
A A A H a informao
mdia contida num bloco de n smbolos, segue que a informao mdia por
uso do canal :

) (
) ,... , (
1 1 0
A H
n
A A A H
R
n
=



Onde R a taxa de entropia. Temos, portanto que ) ( A H R , como a
igualdade ocorrendo se e somente se todos os smbolos da seqncia so
estatisticamente independentes.
Supondo C R , possvel ter uma transmisso sem perda de
informao, isto , com equivocao zero.
O processo de adicionar redundncia a um bloco de smbolos
transmitidos chamado codificao do canal.

Teorema
Suponha R<C, onde C a capacidade de um canal sem memria.
Ento para qualquer > 0 existe um comprimento de bloco n e um cdigo de
bloco de comprimento n e taxa de entropia R cuja probabilidade de erro de
decodificao de bloco p
e
satisfaz p
e
< quando o cdigo usado neste canal.

Existe um taxa limite emprica para CBS:

(cutoff-rate) | | ) 1 ( 5 , 0 log
2 0
p p R + =

Esta taxa somente ultrapassada por cdigos turbo (recentemente
criados, por volta de 1993).Material elaborado por Eduardo Wolsky e digitado por
Rafael Oliveira em 03/07/2003

Você também pode gostar