trabalho de graduação interdisciplinas: teoria da informação: códigos compressores e corretores...

30
Teoria da Informação: Compressão e Códigos Corretores de Erros Orientador: Prof. Dr. José Carlos Magossi Orientando: Diego de Souza Silva

Upload: diego-souza-silva

Post on 09-Jul-2015

281 views

Category:

Technology


3 download

DESCRIPTION

Apresentação final do trabalho de conclusão do curso Tecnologia em Análise e Desenvolvimento de Sistemas, em 2012. O estudo compreende a disciplina Teoria Matemática da Informação, desde o trabalho de Claude Shannon "A mathematical theory of Information", que é considerado um dos grandes precursores desta discplina, até trabalhos mais recentes de Hamming sobre códigos de natureza específica para compressão e correção de erros durante a comunicação.

TRANSCRIPT

Page 1: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação: Compressão e Códigos Corretores de Erros

Orientador: Prof. Dr. José Carlos MagossiOrientando: Diego de Souza Silva

Page 2: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 2

Sumário

● Definição contextual● Como medir informação● Compressão● Códigos Corretores de Erros

Page 3: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 3

Introdução

● “A Mathematical Theory of Communication”, Claude Shannon

● Modelo genérico● Base para a disciplina

Page 4: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 4

Informação

● Comunicação: Ação ou resultado de comunicar(-se), de transmitir e receber mensagens.

Page 5: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 5

Como medir informação

● Número de possibilidades eliminadas dentre todas as possíveis;

● Bit (base binária), nat (base neperiana) e hartley (base decimal)

● Se uma mensagen reduz de k para k/x as possibilidades, então esta comunica

log 2(x)

Page 6: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 6

Entropia

● Média de informação que se pode esperar de um transmissor;

● Seja x um fonte que pode enviar uma de quatro mensagens: amanhã fará sol, choverá, estará nublado ou nevará.

(2+2+2+2) bits / 4 mensagens = 2 bit/mensagem

H (x)=∑i=i

k

P i(−log2 P i)

Page 7: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 7

Fontes de Informação Relacionadas

● Situações onde a resposta de uma fonte impactam nas possibilidades de resposta de outra;

● Jogo das moedas;

Page 8: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 8

Compressão de Informação

● Utilizar menos recursos para armazenamento e transmissão;

● Código de Redundância Mínima: relacionar comprimento de código a frequência transmissão da mensagem;

Lmed (x)=∑i=1

N

P iL(i)¿

8

Page 9: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 9

Compressão: Código Ótimo

● Gif, mpeg, mp3, Morse, Braille e zip são exemplos de códigos que comprimem informação

● Seja N a quantidade de mensagens que a fonte pode enviar e D o número de símbolos do alfabeto, código de redundância mínima para dados N e D é aquele que representa todos as mensagens com média mínima de símbolos por mensagem.

Page 10: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 10

Compressão: Restrições

● Não pode haver informações distintas com mesmo código;

● Deve ser possível identificar onde começa e onde termina um código;

● Se uma informação tem maior probabilidade de ser enviada, deve ter código menor;

● Deve haver ao menos dois códigos com comprimento máximo L(N)

● Todos os códigos com comprimento L(N-1) ou seus prefixos devem ser utilizados como código.

● Exemplo: 12341 com 123, 12, 341 e 41 códigos válidos

Page 11: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 11

Compressão: Criação do Código

● Alfabeto binário;● Agrupar duas mensagens menos prováveis;● Criar mensagem composta;● Reorganizar grupos auxiliares;

Page 12: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 12

Compressão: Exemplo Numérico

i Código1 0.20 2 0.40 102 0.18 3 0.54 0003 0.10 3 0.30 0114 0.10 3 0.30 1105 0.10 3 0.30 1116 0.06 4 0.24 01017 0.06 5 0.30 001008 0.04 5 0.20 001019 0.04 5 0.20 0100010 0.04 5 0.20 0100111 0.04 5 0.20 0011012 0.03 6 0.18 01110013 0.01 6 0.06 011101

Média 3.42

P i L(i ) P i L(i)

Page 13: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 13

Compressão: Generalização

● Agrupamentos de D menores probabilidades por vez;

● Primeiro agrupamente deve conter elementos de forma que esta razão seja par.

(N−n 0)

(D−1)¿

n 0

Page 14: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 14

Códigos para Correção de Erros

● Problema: comunicação através de canal ruidoso

● Estratégia de Solução: utilizar redundância controlada para corrigir erros.

Page 15: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 15

Códigos para Correção de Erros

● Teorema 11 de “A mathematical theory of communication”

– Seja C a capacidade do canal com entropia H: se então existe um código com erros tão baixos quanto se desejar. Caso contrário, a menor taxa de erros possível é

H⩽C¿

H−C+ ε¿

Page 16: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 16

Códigos: Definições

● Palavra-código● Distância de Hamming● Distância Mínima ● Notação:● Peso de Hamming● Operação de Paridade● Soma módulo-2

(n , k , d min)¿

Propriedade ExemploA soma de dois restos equivale ao resto da soma de dois números (para qualquer divisor)

12237 % 7 = 1 e 4562 % 7 = 5 portanto(12237+4562) % 7 = 5 + 1 = 6

O produto de dois restos equivale ao resto do produto

151 % 3 = 1 e 2132 % 3 = 2 portanto(151 * 2132) % 3 = 1 * 2 = 2

Para divisor 9, o resto da divisão de k equivale ao resto da divisão do número obtido com a soma dos dígitos de k.

12313434 % 9 = (1+2+3+1+3+4+3+4) % 9 =21 % 9 = (2+1) % 9 = 3

O resto da divisão de um número binário por 2 é 1 para números de peso de hamming ímpar e 0 caso contrário.

11011000 tem peso 4, portanto tem resto 0

Page 17: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 17

Códigos de blocos lineares

● Mensagem completa fragmentada em pedaços de tamanho k;

● (n-k) bits de paridade são calculados com paridade, uma regra por bit.

● Linearidade: o código de blocos é linear se a soma de duas palavras-código ainda for palavra-código válida e existe uma palavra com pesso de hamming 0

Page 18: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 18

Códigos de blocos lineares

● Mensagem completa fragmentada em pedaços de tamanho k;

● (n-k) bits de paridade são calculados com paridade, uma regra por bit.

● Linearidade: o código de blocos é linear se a soma de duas palavras-código ainda for palavra-código válida e existe uma palavra com pesso de hamming 0

Page 19: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 19

Códigos de blocos lineares

● Seja os bits da mensagem que deve ser transmitida

● E os bits e paridade do código da mensagem

● O código pode ser escrito como:

Onde o coeficiente tem valor 1 se o i-ésimo bit de mensagem participa do cálculo da equação de paridade do j-ésimo bit de redundância

m 1 ,m 2 ,m 3 , ...m k−1 ,¿

b 1 ,b 2 , ...b n−k−1 ,¿

b i= p 0im i+ p 1im 1+ p 2im 2+…+ p k−1m k−1¿

p ij¿

Page 20: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 20

Códigos de blocos lineares

● Resumindo em matrizes: b=mP¿

m=[m 0 ,m 1 ,m 2 ,…]¿

b=[b 0 , b 1 , b 2 ,…]¿

P= [p 00 p 01 ... p 0,n−k−1p 10 p 11 ... p 1,n−k−1p 20 p 21 ... p 2,n−k−1... ... ... ...p k−1,0 p k−1,1 ... p k−1, n−k−1

]¿

Page 21: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 21

Códigos de blocos lineares: Geradora

● Ao multiplicá-la por uma mensagem, o vetor resultado é uma palavra código

● Dimensão k x n● Obtida através de H=[ I n−k⋮PT ]

¿

Page 22: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 22

Códigos de blocos lineares: Geradora

● Exemplo com código

● Regras:

(7,3, 4)¿

b 1=m 1+ m 2¿

b 2=m 2+ m 3¿

b 3=m 1+ m 3¿

b 4=m 1+ m 2+ m 3¿

P= [1 0 1 11 1 0 10 1 1 1 ]

¿

G= [1 0 0 ⋮1 0 1 10 1 0 ⋮1 1 0 10 0 1 ⋮0 1 1 1 ]

¿

Page 23: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 23

Códigos de blocos lineares: Geradora

● Para mensagem

● Palavra código

m 1=[101]¿

m1 [1 0 1 ]×G [1 0 0 0 1 1 10 1 0 1 1 0 10 0 1 1 0 1 1 ]=c 1 [1 0 1 1 1 0 0 ]

¿

c 1 [1 0 1 1 1 0 0 ]¿

Page 24: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 24

Códigos de blocos: Checagem

● Permite chegar se o código é válido;● Existe a matriz H, denominada matriz de

verificação de paridade;● H=[PT⋮I n−k ]

¿

Page 25: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 25

Códigos de blocos: Checagem

● Permite chegar se o código é válido;● Existe a matriz H, denominada matriz de

verificação de paridade;● H =[PT⋮I n−k ]

¿

Page 26: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 27

Códigos de blocos: Checagem

● Sejam e

duas mensagens que foram recebidas

r 1=[ 1 0 1 1 1 0 0 ]¿

r 2=[ 0 0 1 0 1 0 1 ]¿

r 1 [ 1 0 1 1 1 0 0 ]×H T [0 0 0 10 0 1 00 1 0 01 0 0 01 1 0 11 0 1 11 1 1 0

]=[ 0 0 0 0 ]

¿

r 2 [ 0 0 1 0 1 0 1 ]×H T [0 0 0 10 0 1 00 1 0 01 0 0 01 1 0 11 0 1 11 1 1 0

]=s [ 0 1 1 1 ]

¿

Page 27: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 28

Códigos de blocos: Decodificação

● Sendo a síndrome, o valor resultado da checagem;

● Processo de decodificação por síndrome.

s [ 0 1 1 1 ]¿

Page 28: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 30

Códigos de blocos: Decodificação

Para a mensagem r recebida, computar a síndrome

Localizar na matriz a classe cuja síndrome do elemento com menor peso de hammng equivale ao valor s;

A mensagem correta c pode ser obtida pela equação c = r + e

Page 29: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 31

Conclusão

● Teoria da informação subsidia modelos de comunicação, digital ou não;

● Compressão da Informação: multimídia;● Códigos Corretores de Erros: redes de

computadores;● Estudos aplicados: linguística e psicologia

Page 30: Trabalho de Graduação Interdisciplinas: Teoria da Informação: códigos compressores e corretores de erros

Teoria da Informação - Diego de Souza Silva 32

Referências

[1] GAPPMAIR, W. Claude E. Shannon: The 50th Anniversary of Information Theory, Technical University of Graz. IEEE, vol 37:102-105, 1999.

[2] MILLER, G. A., What is Information Measurement. American Psychologist, vol. 8:3-11, Jan 1953.

[3] SHANNON, C. E., A Mathematical Theory of Information. The Bell Systems Technical Journal, Vol. 27: 379-423, 623-656, 1948.

[4] HUFFMAN, D. A., A method for the Construction of Minimum-Redudancy Codes, Proc. IRE, Vol. 40: 1098-1101, 1952.

[5] HAYKIN, S. Communication Systems. 4th ed. John Wiley & Sons. EUA, 1994. 2001.

[6] PETERSON, W. W., Error-Correcting Codes. Scientific American, vol. 206: 96-108, 1962.

[7] VITERBI, A. J., Convolutional codes and their performances in communication systems. IEEE Transactions on Communications, COM-19:751-772, 1971.