1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

tiểu luận mã hóa chuỗi thông tin

16 28 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 16
Dung lượng 1,02 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

tiểu luận môn cơ sở lý thuyết thông tin của ngành điện tử viễn thông, với đề tài giải chuỗi mã thông tin sau đây mọi người có thể tham khảo như bài trên và đã giải thích rất rõ ràng từng bài làm trong đó để được tìm hiểu chuỗi mã thông tìn mình cần truyền, môn nầy tôi đạt được 10 điểm kỳ thi cuối kỳ.

Trang 1

MỤC LỤC:

Đề tài: Mã hóa chuỗi thông tin sau: Lê Quang Đoàn - 19T1051027 Trang

Lời nói đầu 2

Chương I: Phần Lý Thuyết 3

1 Trình bày lý thuyết Lượng Tin và Entropy 3

1.1 Lượng tin là gì? 3

1.2 Xác định lượng tin 3

1.3 Entropy là gì? 4

2 Lập bộ mã cho dòng mã hóa 6

2.1 Định nghĩa và khái niệm cơ bản 6

2.2 Mã thống kê tối ưu 8

3 Trình bày lý thuyết của mã hóa khối 11

3.1 Giới thiệu mã hóa khối 11

3.2 Các khái niệm và nguyên lý hoạt động 11

Chương II: Phần Bài Tập 13

1 Mã hóa theo bộ mã C(7.4) 13

1.1 Mã hóa chuỗi thông tin “ LE QUANG DOAN 19T1051027” 13

1.2 Mã hóa theo bộ mã C(7,4) 14 Tài liệu tham khảo

Phiếu đánh giá tiểu luận

Trang 2

Lời Nói Đầu

Môn học Cơ sở lý thuyết thông tin là môn khá quen thuộc của khối sinh viên ngành điện

tử - viễn thông

Mặc dù đã cố gắng trong quá trình viết, nhưng không thể tránh khỏi những sai sót Mong nhận được sự đóng góp ý kiến của thầy cô, để có thể hoàn thiện những bài sau này

Trang 3

Chương I: Phần Lý Thuyết

1 TRÌNH BÀY LÝ THUYẾT LƯỢNG TIN VÀ ENTROPY

1.1 Lượng Tin là gì?

- “Lượng thông tin là mức độ bị thủ tiêu của độ bất định  Lượng thông tin = độ chênh của độ bất định trước và sau khi nhận tin = độ bất định trước khi nhận tin – độ bất định sau khi nhận tin (độ bất định tiên nghiệm – độ bất định hậu nghiệm)”

1.2 Xác định lượng thông tin

- Lượng thông tin = thông tin tiên nghiệm – thông tin hậu nghiệm

- Thông tin tiên nghiệm (hay còn gọi là lượng thông tin riêng) được xác định: I(𝑥𝐾) = -log p(𝑥𝐾) Còn thông tin hậu nghiệm xác định như sau:

- Gọi 𝑥𝐾 là tin gửi đi, 𝑦𝑙 là tin thu được có chứa những dấu hiệu để hiểu biết về

𝑥𝐾 (có chứa thông tin về 𝑥𝐾) Khi đó xác suất để rõ về 𝑥𝐾 khi đã thu được 𝑦𝑙 là p(𝑥𝐾/𝑦𝑙) Như vậy độ bất định của tin 𝑥𝐾 khi đã rõ 𝑦𝑙 bằng:

I(𝑥𝐾/𝑦𝑙) = -log p(𝑥𝐾/𝑦𝑙)

I(𝑥𝐾/𝑦𝑙) được gọi là thông tin hậu nghiệm về 𝑥𝐾 (thông tin riêng về 𝑥𝐾 sau khi có 𝑦𝑙)

- Lượng thông tin về 𝑥𝐾: I(𝑥𝐾, 𝑦𝑙) = I(𝑥𝐾) - I(𝑥𝐾/𝑦𝑙)

= log 1

p(𝑥𝐾) – log 1

p(𝑥𝐾/𝑦𝑙)

 I(𝑥𝐾, 𝑦𝑙) = log p(𝑥𝐾/𝑦𝑙)

p(𝑥 𝐾 )

- I(𝑥𝐾, 𝑦𝑙) gọi là lượng thông tin về 𝑥𝐾 khi đã rõ tin 𝑦𝑙 hay còn gọi là lượng thông tin chéo về 𝑥𝐾 do 𝑦𝑙 mang lại

- Nếu việc truyền tin không bị nhiễu thì 𝑦𝑙  𝑥𝐾 Tức là nếu phát 𝑥𝐾 thì chắc chắn nhận được chính nó Khi đó:

p(𝑥𝐾/𝑦𝑙) = p(𝑥𝐾/𝑥𝐾) = 1

 I(𝑥𝐾, 𝑦𝑙) = I(𝑥𝐾, 𝑥𝐾) = I(𝑥𝐾) = log 1

p(𝑥𝐾)

- Như vậy, khi không có nhiễu lượng thông tin nhận được đúng bằng độ bất định của sự kiện 𝑥𝐾, tức là đúng bằng thông tin tiên nghiệm của 𝑥𝐾

- Vậy lượng thông tin tổn hao trong kênh sẽ là:

I(𝑥𝐾) - I(𝑥𝐾, 𝑦𝑙) = I(𝑥𝐾/𝑦𝑙)

- Đơn vị đo của thông tin (lượng thông tin) cũng chính là đơn vị đo độ bất định

- Nếu cơ số của logarit là 10 thì đơn vị đo thông tin được gọi là Hartley, hay đơn

vị thập phân

- Nếu cơ số của logarit là e = 2,718… thì đơn vị đo thông tin được gọi là nat, hay đơn vị đo tự nhiên

- Nếu cơ số của logarit là 2 thì đơn vị đo thông tin được gọi là bit, hay đơn vị nhị phân

Trang 4

 1 Hartley = 3,322 bit

 1 nat = 1,443 bit

1.3 Entropy là gì?

1.3.1 Định nghĩa entropy của nguồn rời rạc

- Entropy của nguồn tin rời rạc là trung bình thống kê của lượng thông tin riêng của các dấu thuộc nguồn A, ký hiệu H(A):

H(A) = M[I(𝑎𝑖)]

- Trong đó 𝑎𝑖 là các dấu của nguồn A (Ta hiểu dấu là các con chữ hoặc các ký hiệu… của nguồn) Còn nguồn A là một tập rời rạc các dấu 𝑎𝑖 với các xác suất xuất hiện của chúng Ta quy ước viết A như sau:

A = {𝑎𝑖} = ( 𝑎1 𝑎2 …

𝑝(𝑎1) 𝑝(𝑎2) …

𝑎𝑠 𝑝(𝑎𝑠))

- Với 0  𝑝(𝑎𝑖)  1 và ∑𝑠𝑖=1𝑝(𝑎𝑖) = 1

- A còn gọi là trường tin (hay trường biến cố)

 H(A) = M[I(𝑎𝑖)] = ∑𝑠𝑖=1𝑝(𝑎𝑖) I(𝑎𝑖)

 H(A) = -∑𝑠𝑖=1𝑝(𝑎𝑖)log 𝑝(𝑎𝑖)

- H(A) còn gọi là entropy một chiều của nguồn rời rạc

1.3.2 Các tính chất của entropy một chiều của nguồn rời rạc:

- Khi 𝑝(𝑎𝑘) = 1 và 𝑝(𝑎𝑟) = 0 với ∀rk thì: H(A) = H(𝐴𝑚𝑖𝑛) = 0

- Một nguồn rời rạc gồm s dấu đồng xác suất và thỏa mãn 0  𝑝(𝑎𝑖)  1 và

∑𝑠𝑖=1𝑝(𝑎𝑖) = 1 thì entropy của nó đạt cực đại và cực đại đó bằng log s

H(𝐴𝑚𝑎𝑥) = log s

1.3.3 Entropy của trường sự kiện đồng thời:

- Có hai trường sự kiện A và B:

𝑝(𝑎1) 𝑝(𝑎2) …

𝑎𝑠 𝑝(𝑎𝑠)) và B = (

𝑝(𝑏1) 𝑝(𝑏2) …

𝑏𝑡 𝑝(𝑏𝑡))

- Các 𝑎𝑖 và 𝑏𝑗 là các sự kiện

- Ta xét một sự kiện tích: 𝑐𝑘 = 𝑎𝑖 𝑏𝑗 , p(𝑐𝑘) = p(𝑎𝑖 𝑏𝑗) Ta xét trường C là giao của hai trường A và B, nếu:

C = A.B = ( 𝑎1𝑏1 𝑎1𝑏2 …

𝑝(𝑎1𝑏1) 𝑝(𝑎1𝑏2) …

𝑎1𝑏𝑡 … 𝑎2𝑏𝑗 𝑝(𝑎1𝑏𝑡) … 𝑝(𝑎2𝑏𝑗)

… 𝑎𝑠𝑏𝑡

… 𝑝(𝑎𝑠𝑏𝑡))

- Trường C được gọi là trường sự kiện đồng thời (trường giao, tích) của hai trường

sự kiện cơ bản A và B

- Hai trường sự kiện A và B được gọi là độc lập với nhau nếu: p(𝑎𝑖 𝑏𝑗) = p(𝑎𝑖) p(𝑏𝑗)

- Tất nhiên nếu p(𝑎𝑖) và p(𝑏𝑗) thỏa mãn 0  𝑝(𝑎𝑖)  1 và ∑𝑠𝑖=1𝑝(𝑎𝑖) = 1 thì ta cũng có: 0  𝑝(𝑎𝑖 𝑏𝑗)  1; ∑𝑠𝑖=1∑𝑡𝑗=1𝑝(𝑎𝑖 𝑏𝑗) = 1

- Entropy của trường sự kiện đồng thời C = A.B sẽ bằng tổng entropy của các trường sự kiện cơ bản A và B nếu A và B độc lập: H(A.B) = H(A) + H(B)

Trang 5

- Tương tự, nếu các nguồn 𝑋𝑘, (k=1, 𝑛̅̅̅̅̅) độc lập với nhau thì:

H(𝑋1 𝑋2… 𝑋𝑛) = ∑𝑛 𝐻(𝑋𝑘)

𝑘=1

1.3.4 Entropy có điều kiện Lượng thông tin chéo trung bình:

- Entropy có điều kiện về một trường tin này khi đã rõ một tin của trường tin kia được xác định bằng kỳ vọng của lượng thông tin riêng có điều kiện về 𝑎𝑘 do một

𝑏𝑙 mang lại: H(A/𝑏𝑙) = M[I(𝑎𝑖/𝑏𝑙)] = ∑𝑠𝑖=1𝑝(𝑎𝑖/𝑏𝑙)I(𝑎𝑖/𝑏𝑙)

= - ∑𝑠𝑖=1𝑝(𝑎𝑖/𝑏𝑙)log 𝑝(𝑎𝑖/𝑏𝑙)

- H(A/𝑏𝑙) là lượng thông tin tổn hao trung bình của mỗi tin ở đầu phát khi đầu thu

đã thu được 𝑏𝑗

Tương tự: H(B/𝑎𝑖) = - ∑𝑡𝑗=1𝑝(𝑏𝑗/𝑎𝑖)log 𝑝(𝑏𝑗/𝑎𝑖)

- H(B/𝑎𝑖) là lượng thông tin riêng trung bình chứa trong mỗi tin ở đầu thu khi đầu phát đã phát đi một tin 𝑎𝑖

- Entropy có điều kiện của trường sự kiện A khi đã rõ trường sự kiện B được xác định bởi kỳ vọng của đại lượng H(A/𝑏𝑗):

H(A/B) = - ∑𝑠𝑖=1∑𝑡𝑗=1𝑝(𝑎𝑖𝑏𝑗) log 𝑝(𝑎𝑖/𝑏𝑗)

- H(A/B) là lượng thông tin tổn hao trung bình của mỗi tin ở đầu phát khi đầu thu

đã thu được một dấu nào đó

Tương tự: H(B/A) = - ∑𝑠𝑖=1∑𝑡𝑗=1𝑝(𝑏𝑗𝑎𝑖) log 𝑝(𝑏𝑗/𝑎𝑖)

- H(B/A) là lượng thông tin riêng trung bình chứa trong mỗi tin ở đầu thu khi đầu phát đã phát đi một tin nào đó

1.3.5 Các tính chất của entropy có điều kiện và tính chất của I(A,B)

- Nếu A và B là hai trường biến cố bất kỳ (hai nguồn tin bất kỳ) thì entropy của trường biến cố đồng thời A.B bằng: H(A.B) = H(A) + H(B/A) = H(B) + H(A/B)

- Entropy có điều kiện nằm trong khoảng: 0  H(A/B)  H(A)

- Entropy của trường sự kiện đồng thời không lớn hơn tổng entropy của các trường

sự kiện cơ bản: H(A.B)  H(A) + H(B)

o Các tính chất của I(A,B)

 I(A,B)  0

 I(A,B)  H(A)

 I(A,A) = H(A)

 I(A,B) = I(B,A)

1.3.6 Lượng thông tin chéo trung bình:

- Lượng thông tin chéo trung bình (ký hiệu là I(A,B)):

I(A,B) = M[I(𝑎𝑖, 𝑏𝑗)] = ∑ ∑ 𝑝(𝑎𝑖𝑏𝑗)𝑙𝑜𝑔

𝑝( 𝑎𝑖

𝑏𝑗)

𝑝(𝑎 𝑖 )

𝑡 𝑗=1

𝑠 𝑖=1

= ∑𝑠𝑖=1∑𝑡𝑗=1𝑝(𝑎𝑖𝑏𝑗) log 𝑝(𝑎𝑖/𝑏𝑗) - ∑𝑠𝑖=1∑𝑡𝑗=1𝑝(𝑎𝑖𝑏𝑗) log 𝑝(𝑎𝑖)

= - H(A/B) + H(A)

Trang 6

Tương tự, ta có: I(A,B) = H(B) – H(B/A)

- I(A,B) còn gọi là lượng thông tin trung bình được truyền theo kênh rời rạc

1.3.7 Mô hình của kênh truyền tin có nhiễu

Hình 1: Mối quan hệ giữa các đại lượng

2 LẬP BỘ MÃ CHO DÒNG MÃ HÓA

2.1 Định nghĩa và khái niệm cơ bản

2.1.1 Mã hóa là gì?

- Mã hóa là một ánh xạ 1-1 từ tập các tin rời rạc 𝑎𝑖 lên tập các từ mã 𝛼𝑖𝑛𝑖

f: 𝑎𝑖  𝛼𝑖𝑛𝑖

- Mã hóa là một ánh xạ 1-1 từ tập các tin rời rạc 𝑎𝑖 lên một tập con có cấu trúc của một cấu trúc đại số nào đó

2.1.2 Các yếu tố của từ mã

- Độ dài từ mã 𝑛𝑖 là số các dấu mã cần thiết dùng để mã hóa cho tin 𝑎𝑖

- Nếu 𝑛𝑖 = const với mọi i thì mọi từ mã đều có cùng độ dài Bộ mã tương ứng được gọi là bộ mã đều

- Nếu 𝑛𝑖  𝑛𝑗 thì bộ mã tương ứng được gọi là bộ mã không đều

- Số các dấu mã khác nhau (về giá trị) được sử dụng trong bộ mã được gọi là cơ

số mã Ta ký hiệu giá trị này là m

- Nếu m = 2 thì bộ mã tương ứng được gọi là mã nhị phân

- Nếu m = 3 thì bộ mã tương ứng được gọi là mã tam phân

- Nếu m = p thì bộ mã tương ứng được gọi là mã p phân

- Thông thường các dấu mã được chọn là các phần tử trong một trường F nào đó

2.1.3 Độ thừa của một bộ mã đều (D)

- Cho nguồn rời rạc A gồm s tin: A = {𝑎𝑖; 1, 𝑠̅̅̅̅ }

- Cho phép mã hóa f sau: f: 𝑎𝑖  𝛼𝑖𝑛; 𝛼𝑖𝑛  V

- Cơ số mã là m, khi đó số các từ mã độ dài n có thể có là: N = 𝑚𝑛

- Độ thừa của một bộ mã đều được xác định theo biểu thức sau:

D = 𝐻0(𝑉)− 𝐻0(𝐴)

𝐻0(𝑉) = 1−𝐻0(𝐴)

𝐻0(𝑉) [%]

Trang 7

- Trong đó: 𝐻0(𝐴) = log s

𝐻0(𝑉) = log N = nlogm

2.1.4 Khoảng cách mã (D)

- Khoảng cách giữa hai từ mã bất kỳ 𝛼𝑖𝑛 và 𝛼𝑗𝑛 là số các dấu mã khác nhau tính theo cùng một vị trí giữa hai từ mã này, ký hiệu d(𝛼𝑖𝑛, 𝛼𝑗𝑛)

- Khoảng cách mã d có đầy đủ các tính chất của khoảng cách trong một không gian metric:

TC1: d(𝛼𝑖𝑛, 𝛼𝑗𝑛) = d(𝛼𝑗𝑛, 𝛼𝑖𝑛)

TC2: 1  d(𝛼𝑖𝑛, 𝛼𝑗𝑛)  0

TC3: d(𝛼𝑖𝑛, 𝛼𝑗𝑛) + d(𝛼𝑗𝑛, 𝛼𝑘𝑛)  d(𝛼𝑖𝑛, 𝛼𝑘𝑛) (tính chất tam giác)

- Để đánh giá định lượng khả năng khống chế sai (bao gồm khả năng phát hiện sai và khả năng sửa sai) của một bộ mã ta sử dụng khái niệm khoảng cách mã tối thiểu (hay khoảng cách Hamming) sau:

- Khoảng cách Hamming 𝑑0 của một bộ mã được xác định theo biểu thức sau:

𝑑0 = min d(𝛼𝑖𝑛, 𝛼𝑗𝑛) & ∀𝛼𝑖𝑛, 𝛼𝑗𝑛

- Ở đây 𝛼𝑖𝑛 và 𝛼𝑗𝑛 không đồng nhất bằng không (Ta coi 𝛼𝑖𝑛 là từ mã không khi mọi dấu mã trong từ mã đều nhận giá trị không)

2.1.5 Trọng số của một từ mã

- Trọng số của một từ mã W(𝛼𝑖𝑛) là số các dấu mã khác không trong từ mã

- Nếu ta coi mỗi từ mã 𝛼𝑖𝑛 là một vecto n chiều trong một không gian tuyến tính

n chiều 𝑉𝑛, khi đó phép cộng được thực hiện giữa hai từ mã tương tự như phép cộng giữa hai vecto tương ứng

 Các tính chất của trọng số:

o 0  W(𝛼𝑖𝑛)  1

o d(𝛼𝑖𝑛, 𝛼𝑗𝑛) = W(𝛼𝑖𝑛+ 𝛼𝑗𝑛)

2.1.6 Khả năng khống chế sai của một bộ mã đều nhị phân

 Khả năng phát hiện sai:

- Một bộ mã đều nhị phân có độ thừa (D0) và có 𝑑0  2 sẽ có khả năng phát hiện được t sai thỏa mãn điều kiện: t  𝑑0− 1

 Khả năng sửa sai:

- Một bộ mã đều nhị phân có độ thừa (D0) và có 𝑑0 3 sẽ có khả năng sửa được

e sai thỏa mãn điều kiện: e  [𝑑0−1

2 ]

- Ở đây [x] là ký hiệu phần nguyên của số x

2.2 Mã thống kê tối ưu

- Là phép mã hóa mà kết quả là một bộ mã có chiều dài trung bình là nhỏ nhất trong tất cả các phép mã hóa có thể có trong nguồn

- Bộ mã của phép mã hóa tối ưu cho nguồn được gọi là mã hóa tối ưu

- Ba phép mã hóa: Shannon, Fano, Huffman

Trang 8

- Trong mỗi phép mã hóa chúng ta sẽ mã hóa với cơ số mã m = 2

- Ta xét phép mã hóa sau đối với các tin của nguồn rời rạc A: f: 𝑎𝑖  𝛼𝑖𝑛 𝑖

- Mỗi tin 𝑎𝑖 được mã hóa bằng một tổ hợp mã (từ mã) 𝛼𝑖𝑛𝑖 (𝛼𝑖𝑛𝑖 là một tổ hợp mã gồm 𝑛𝑖 dấu mã)

- Ta xét trường hợp mã nhị phân tức là mỗi dấu mã chỉ nhận một trong hai giá trị

“0” và “1”

2.2.1 Độ dài trung bình của từ mã và mã hóa tối ưu

- Ta có A = ( 𝑎𝑖

𝑝(𝑎𝑖)) 𝑖=1,𝑠→ V = (̅̅̅̅ 𝛼𝑖

𝑛 𝑖 𝑝(𝑎𝑖)) i = 1, 𝑠̅̅̅̅

- Độ dài trung bình của một tổ hợp mã được xác định theo biểu thức sau:

𝑛̅ = M[𝑛𝑖] = ∑𝑠𝑖=1𝑛𝑖𝑝(𝑎𝑖)

- Một mã hóa được gọi là tiết kiệm (hay tối ưu) nếu nó làm cực tiểu giá trị 𝑛̅

2.2.2 Yêu cầu của một phép mã tối ưu

- 𝑛̅  min

- Có khả năng giải mã tức thì: không một dãy bít nào trong biểu diễn của một tin (ký tự) nào đó lại là phần đầu (prefix) của một dãy bít dài hơn biểu diễn cho một tin (ký tự) khác

2.2.3 Định lý mã hóa thứ nhất của Shannon (đối với mã nhị phân)

Định lý: Luôn luôn có thể xây dựng được một phép mã hóa các tin rời rạc có

hiệu quả mà 𝑛̅ có thể nhỏ tùy ý nhưng không nhỏ hơn entropy H(A) được xác định bởi đặc tính thống kê của nguồn A 𝑛̅  H(A)

 Nguyên tắc lập mã tiết kiệm:

- Theo định lý ta có: ∑𝑠𝑖=1𝑝(𝑎𝑖)𝑛𝑖 − ∑𝑠𝑖=1𝑝(𝑎𝑖) 𝑙𝑜𝑔𝑝(𝑎𝑖)

- Bất đẳng thức trên sẽ thỏa mãn nếu ∀i ta có:

𝑝(𝑎𝑖)𝑛𝑖 − 𝑝(𝑎𝑖) 𝑙𝑜𝑔𝑝(𝑎𝑖) Hay 𝑛𝑖  − 𝑙𝑜𝑔𝑝(𝑎𝑖)

- Nguyên tắc: Các từ mã có độ dài càng nhỏ sẽ được dùng để mã hóa cho các tin

có xác suất xuất hiện càng lớn và ngược lại

2.2.4 Phương pháp mã hóa Shannon

 Các bước thực hiện mã hóa theo phương pháp Shannon:

o Bước 1: Sắp xếp các xác suất theo thứ tự giảm dần Không mất tính tổng

quát giả sử 𝑝1 𝑝2  …  𝑝𝑘

o Bước 2: Định nghĩa 𝑞1 = 0, 𝑞𝑖 = ∑𝑖−1𝑗=1𝑝𝑗 với mọi i = 1, 2, …, k

o Bước 3: Đổi 𝑞𝑖 sang cơ số 2 (biểu diễn 𝑞𝑖 trong cơ số 2) sẽ được một chuỗi nhị phân

o Bước 4: Từ mã được gán cho 𝑎𝑖 và 𝑙𝑖 ký hiệu lấy từ vị trí sau dấu phẩy của chuỗi nhị phân tương ứng với 𝑞𝑖, trong đó 𝑙𝑖 = [−𝑙𝑜𝑔2𝑝𝑖]

- Ví dụ: Mã hóa nguồn S = {𝑎1; 𝑎2; 𝑎3; 𝑎4; 𝑎5; 𝑎6; 𝑎7; 𝑎8} với các xác suất lần lượt là 0.25; 0.125; 0.0625; 0.0625; 0.25; 0.125; 0.0625; 0.0625

Trang 9

Tin 𝑎𝑖 Xác suất 𝑝𝑖 𝑞𝑖 =

∑𝑖−1𝑗=1𝑝𝑗

Biểu diễn nhị phân

𝑙𝑖 = [−𝑙𝑜𝑔2𝑝𝑖]

Từ mã 𝑤𝑖

 Độ dài trung bình của từ mã:

𝑛̅ = 0,25.2 + 0,25.2 + 0,125.3 + 0,125.3 + 0,0625.4 +

0,0625.4 + 0,0625.4 + 0,0625.4 = 2,75

 Entropy của nguồn tin:

 H(S) = −[0,25 𝑙𝑜𝑔20,25 + 0,25 𝑙𝑜𝑔20,25 + 0,125 𝑙𝑜𝑔20,125 +

0,125 𝑙𝑜𝑔20,125 + 0,0625 𝑙𝑜𝑔20,0625 + 0,0625 𝑙𝑜𝑔20,0625 +

0,0625 𝑙𝑜𝑔20,0625 + 0,0625 𝑙𝑜𝑔20,0625 = 2,75

 Hiệu suất lập mã: h = 𝐻(𝑆)

𝑛̅ = 2,75

2,75 = 1

2.2.5 Phương pháp mã hóa Fano

- Các bước thực hiện mã hóa theo phương pháp Fano:

Bước 1: Sắp xếp các xác suất theo thứ tự giảm dần Không mất tính tổng quát

giả sử 𝑝1 𝑝2 …  𝑝𝑘

Bước 2: Phân các xác suất thành hai nhóm có tổng xác suất gần bằng nhau

Bước 3: Gán cho hai nhóm lần lượt các ký hiệu 0 và 1

Bước 4: Lặp lại bước 2 cho các nhóm con cho tới khi không thể tiếp tục được

nữa

Bước 5: Từ mã ứng với mỗi tin là chuỗi bao gồm các ký hiệu theo thứ tự lần

lượt được gán cho các nhóm có chứa xác suất tương ứng của tin

- Ví dụ: Mã hóa nguồn S = {𝑎1; 𝑎2; 𝑎3; 𝑎4; 𝑎5; 𝑎6; 𝑎7; 𝑎8} với các xác suất lần lượt là 0.25; 0.125; 0.0625; 0.0625; 0.25; 0.125; 0.0625; 0.0625

Trang 10

𝑎7 0.0625 1 1 1 0 1110

 Độ dài trung bình của từ mã:

𝑛̅ = 0,25.2 + 0,25.2 + 0,125.3 + 0,125.3 + 0,0625.4 +

0,0625.4 + 0,0625.4 + 0,0625.4 = 2,75

 Entropy của nguồn tin:

H(S) = −[0,25 𝑙𝑜𝑔20,25 + 0,25 𝑙𝑜𝑔20,25 + 0,125 𝑙𝑜𝑔20,125 +

0,125 𝑙𝑜𝑔20,125 + 0,0625 𝑙𝑜𝑔20,0625 + 0,0625 𝑙𝑜𝑔20,0625 +

0,0625 𝑙𝑜𝑔20,0625 + 0,0625 𝑙𝑜𝑔20,0625 = 2,75

 Hiệu suất lập mã: h = 𝐻(𝑆)

𝑛̅ = 2,75

2,75 = 1

- Nhận xét:

 Hai phương pháp Shannon và Fano thực chất là một, đều xây dựng trên cùng một cơ sở độ dài từ mã tỉ lệ nghịch với xác suất xuất hiện, không cho phép lập

mã một cách duy nhất vì sự chia nhóm trên cơ sở đồng đều và tổng xác suất nên

có thể có nhiều cách chia

 Sự lập mã theo cách chia nhóm trên cơ sở đồng xác suất tạo cho bộ mã có tính Prefix

 Phương pháp mã hóa từng tin của nguồn tin chỉ có hiệu quả khi entropy của nguồn lớn hơn 1 (H(S)  1) Trường hợp H(S) < 1 thì phương pháp mã hóa từng tin riêng biệt không đưa đến cải tiến tốt tính tối ưu của mã Trong trường hợp này dùng phương pháp mã hóa từng khối tin

2.2.6 Thuật toán mã hóa Huffman

- Với phép mã hóa tối ưu ta có: 𝑛̅ = H(A)

- VÀO: Nguồn rời rạc A = ( 𝑎𝑖

𝑝(𝑎𝑖)), i = 1, 𝑠̅̅̅̅

- RA: Từ mã 𝛼𝑖𝑛𝑖 tương ứng với tin 𝑎𝑖

- Bước 1: Khởi động một danh sách các cây nhị phân một nút chứa các trọng

lượng 𝑝1, 𝑝2,…, 𝑝𝑛 cho các tin 𝑎1, 𝑎2,…, 𝑎𝑛

- Bước 2: Thực hiện các bước sau n−1 lần:

 Tìm hai cây T’ và T” trong danh sách với các nút gốc có trọng lượng tối thiểu p’

và p”

 Thay thế hai cây này bằng cây nhị phân với nút gốc có trọng lượng p’ + p” và

có các cây con là T’ và T”

 Đánh dấu các mũi tên chỉ đến các cây con 0 và 1

Ngày đăng: 09/01/2022, 22:27

TỪ KHÓA LIÊN QUAN

w