• Nguồn tin rời rạc: Là một tập hữu hạn các tin có một cấu trúc thống kê nhất định, được mô tả với bảng chữ với quy luật phân xác suất nhất định của các chữ.. •Mã hiệu code: Là một nguồn
Trang 1Mã hiệu
Các khái niệm cơ bản
• Nguồn tin rời rạc: Là một tập hữu hạn các tin có một cấu trúc thống kê nhất định, được mô tả với bảng chữ với quy luật phân xác suất nhất định của các chữ
•Mã hiệu (code): Là một nguồn tin gồm các dấu hiệu riêng (symbol) hay các bảng chữ cái được xây dựng nhằm thoả mãn một số yêu cầu nhất định mà hệ thống
đề ra như: tốc độ truyền tin, độ chính xác truyền tin
•Cơ số của mã (m): số các ký hiệu khác nhau trong
một từ mã Với mã nhị phân thì m = 2, dùng các ký
hiệu như gạch, chấm, nghỉ để mã hoá như vậy có 3
dấu hiệu khác nhau trong từ mã nên m = 3…
Trang 2• Quá trình mã hoá (encoding): Dùng các ký hiệu để biểu diễn các tin của nguồn tin Hay mã hoá là quá
trình biến đổi nguồn tin thành mã hiệu ( mã hóa là
phép biến đổi từ tập tin này thành một tập tin khác có đặc tính thống kê yêu cầu)
•Độ dài từ mã (n): số ký hiệu của một từ mã
•Mã đều: là bộ mã gồm các từ mã có cùng độ dài
•Mã không đều: là bộ mã gồm các từ mã có độ dài
không bằng nhau
Trang 3•Độ dài trung bình của từ mã là thông số cơ bản của
mã và được xác định bởi:
( ) i
L i
i n x
P(xi): xác suất xuất hiện của bản tin thứ i
L: Tổng số bản tin của nguồn ( số từ mã của bộ mã)
•Tổng số từ mã L: số các bản tin được mã hóa hay số
từ mã dùng để mã hoá các bản tin (mỗi một từ mã được dùng để mã hoá cho một bản tin)
Trang 4+ Với mã đều thì các từ mã trong bộ mã đều có chiều dài n và số ký hiệu khác nhau m thì số các từ mã được xác định L: L = mn - bộ mã này được gọi là mã đầy
+ Với mã có tổng số các từ mã L < mn thì gọi là mã
vơi
- Đối với mã vơi trong số các từ mã có độ dài n ký
hiệu là các tổ hợp có thể dùng làm từ mã M
Ví dụ: cho nguồn tin X = {3,6,9,15} dùng hệ nhị phân
để mã hoá cho nguồn tin trên với một ký hiệu trong nguồn là một tổ hợp 4 bit:
Giải: với mã nhị phân thì cơ số m = 2, mỗi tổ hợp
dùng 4 bit để mã hoá cho một tin nên độ dài của một
từ mã n = 4, số từ mã của bộ mã là L = mn = 24 = 16
Trang 5-Dùng mã nhị phân 4 bit để mã hoá là các tổ hợp
[ 0000, 0001….1111] như vậy có 16 tổ hợp mã để mã hoá cho nguồn nhưng các tổ hợp có thể dùng là:
•Giá trị của mỗi ký hiệu (a): với một từ mã có m ký hiệu khác nhau, mỗi ký hiệu mã gọi là một dấu hiệu riêng và có một giá trị nhất định và được gán cho một giá trị nằm trong khoảng (0 đến m-1)
Trang 6- Với mã nhị phân (m = 2) thì mỗi ký hiệu trong từ mã được gán cho một giá trị 0 hoặc 1 (0 đến m-1).
• Chỉ số vị trí: gọi là một vị trí mã hay một chỗ trong
từ mã để đặt một ký hiệu mã vào đó Với từ mã có n
ký hiệu thì có n vị trí mã đánh dấu vị trí bên phải nhất của từ mã là vị trí 0, bên trái nhất của từ mã là n-1
•Trọng số vị trí (wi): Là trọng số của ký hiệu thứ i
trong bộ mã: wi= mi(i vị trí của ký hiệu trong mã, m là
cơ số của mã)
Trang 7•Trọng số của từ mã (b): là tổng các giá trị của các ký hiệu mã trong từ mã:
ak: giá trị của ký hiệu mã ở vị trí thứ k (mã nhị phân
thì a = 1 hay 0), mk là trọng số của vị trí thứ k
• Quãng cách D: khoảng cách giữa hai trọng số của hai
từ mã: D = (bi – bj) với bi,bj là trọng số của từ mã i và j
Trang 8 Điều kiện thiết lập mã.
• Điều kiện thiết lập mã thứ 1: trong dãy ký hiệu liên tiếp phải đảm bảo sự phân tách được một cách duy nhất các từ mã
•Xét nguồn tin X= {a,b,c,d}, các tin được mã hoá nhị
giải mã ta thu được a a a b d c
- Như vậy nếu có quy luật để phân
biệt được ký hiệu đầu của mỗi từ mã
ta có thể phân tách được thành các từ
mã
Trang 9Như vậy bộ mã trên không cho phép
phân tách các từ mã một cách duy nhất
và đúng đắn.
Trang 10• Điều kiện thiết lập mã 2: Với mỗi loại mã phải thoả
mã về độ dài trung bình của mỗi từ mã là tối thiểu và với mã chống nhiễu phải cho phép phát hiện sai càng nhiều càng tốt
Phương pháp biểu diễn mã:
Trang 11• Mặt toạ độ mã: dựa vào 2 thông số của từ mã như trọng số b và độ dài n của từ mã:
Trang 12• Hàm cấu trúc: cho biết số các từ mã theo độ dài ni: G(ni)
ví dụ: X = 00, 01,100,110, 1100, 0110,011
Có các hàm cấu trúc G(ni):
G(2)= 2, G(3) =3, G(4) = 2
Trang 13 Điều kiện phân tách của mã hiệu
• Độ chậm dải: là số ký hiệu cần phải nhận được đủ để
có thể phân tách được từ mã độ chậm dải có thể là
hữu hạn hay vô hạn
•Điều kiện để mã phân tách được: Bất kỳ từ mã nào
của bộ mã cũng không được trùng với một dãy từ mã khác của cùng một bộ mã (Từ mã ngắn không là phần đầu, phần giữa, phần cuối của từ mã dài hơn)
•Bảng thử tính phân tách của bộ mã:
max min
2
2
1
n
i T
Trang 14Cách xây dựng bảng:
• Xếp các từ mã thành một cột đánh dấu là cột 1
•đối chiếu từ mã ngắn với từ mã dài hơn trong cột 1
•Nếu từ mã ngắn giống phần đầu của từ mã dài hơn thì viết phần còn lại vào cột 2
•Đối chiếu các từ mã trong cột 2 với cột 1, lấy phần
còn lại ghi vào cột tiếp theo Làm tiếp tục như thế cho đến khi cột cần điền trở nên trống rỗng
Định lý: điều kiện cần và đủ để mã có tính phân tách được là không có tổ hợp mã nào trong cột thứ j >=2
trùng với từ mã trong cột 1
Trang 154 1
4 2
2 2
2
1 2
2
2
1
max min
t
t
n
i T
n i
Trang 16Cột 4
Cột 5
từ mã cột 1 nên bộ
mã có khả năng phân tách được nhưng cột thứ i trải ra vô hạn nên độ chậm giải mã
là vô hạn
Trang 17 Mã có tính prefix: là bộ mã không có bất kỳ từ mã nào là phần đầu của các từ mã còn lại trong cùng bộ mã
Mã II có tính prefix vì không có từ mã nào
trùng với từ mã còn lại
Trang 18Mã hoá nguồn
Mã hoá nguồn rời rạc
Các khái niệm về nguồn rời rạc
• Nguồn rời rạc : Tạo ra chuỗi các ký hiệu từ một bảng hữu hạn các ký hiệu
k
p L
k
Trang 19•Nguồn rời rạc không nhớ: Các ký hiệu rời rạc của
nguồn không phụ thuộc vào các ký hiệu xuất hiện
trước và sau đó( hay các ký hiệu rời rạc độc lập thống
kê với nhau)gọi là nguồn rời rạc không nhớ
• Nguồn dùng rời rạc: Các ký hiệu rời rạc trong nguồn phụ thuộc thống kê với nhau
Trang 20 Mã hoá nguồn rời rạc:
• Mã hoá nguồn rời rạc không nhớ:
- Xét nguồn rời rạc không nhớ X = {xi} i = (1,2 L), với TS thời gian tạo ra một ký hiệu xi, xác suất xuất hiện các ký hiệu tương ứng P(xi), i =(1,2 L)
p X
H
1
2
log
H(X)max = log2L nên H(X) <= H(X)max
- Tốc độ thông tin của nguồn là tỷ số giữa lượng tin trung bình của nguồn với thời gian tạo ký hiệu Ts: H(X)/TS
Trang 21 mã hoá với từ mã có độ dài cố định:
• Dùng R bit nhị phân mã hoá cho một ký hiệu của nguồn Với nguồn X = {x1,x2…xL) nên số bit nhị
phân tối thiểu phải dùng để mã hoá cho L ký hiệu
nguồn là: R = log2L
Nếu L không là lũy thừa của 2 thì số bit nhị phân tối thiểu phải dùng là: R = [log2L] + 1
trong đó [x] là số nguyên lớn nhất nhỏ hơn x
• Hiệu suất của phép mã hoá được xác định: H(X)/R
Trang 22 Mã hoá với từ mã có độ dài thay đổi:
-Với phép mã hoá này thì với xác suất các ký hiệu
nguồn không đồng xác suất có hiệu quả hơn phép mã hoá trên
- Xây dựng phép mã hoá để tạo ra các từ mã có độ dài thay đổi, giải mã duy nhất và có hiệu quả thì số lượng trung bình các ký hiệu nhị phân ứng với một ký hiệu nguồn
R
1
Trang 23Định lý mã hoá nguồn: Gọi X là nguồn rời rạc không nhớ với H(X) hữu hạn với các ký hiệu xi, 1 <=i<=L, với xác suất xuất hiện tương ứng pi có thể xây dựng được mã hiệu nhị phân có tính prefix có độ dài trung bình từ mã thoả mãn :
( ) X ≤ R < H ( X ) + 1
H
Trang 24Ví dụ: Thực hiện mã hoá nguồn cho nguồn rời rạc
không nhớ:
• Với Mã shannon-fano:là độc lập với nhau: xây dựng
mã 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
- Các bước xây dựng mã:
B1: xếp các tin theo xác suất tăng hay giảm dần
B2: chia nguồn tin ra hai nhóm có tổng xác suất gần bằng nhau, gán nhóm trên 0, nhóm dưới 1.lặp lại thủ tục chia nhóm cho đến khi nhóm còn 1 ký hiệu
B3: duyệt từ mã từ bước tạo nhóm đầu tiên đến hết
Trang 25Ví dụ: tạo mã với các bản tin X = ( x1…x7) có xác suất xuất hiện
Trang 26p X
k
k p a n
Trang 27Mã huffman: là mã có tính prefix và có
độ dài tối thiểu.(có độ dài trung bình tới hạn entropi của nguồn )
Thuật toán xây dựng mã Huffman:
1.Sắp xếp các tin có xác suất xuất hiện
giảm dần Hai ký hiệu có xác suất nhỏ nhất được ký hiệu là 0,1.
Trang 282 Tổng hai xác suất nhỏ nhất được xếp vào bước 2 và theo thứ tự giảm dần.
3 Qui trình lặp lại cho đến khi còn hai nguồn ứng với 0,1 được phân.
Mã của mỗi nguồn sẽ được tìm theo chiều đi ngược lại trong bảng.
Trang 29Ví dụ: Cho S = {s0,s1,s2,s3,s4} với xác suất
tương ứng p = (0,4 0,2 0,2 0,1 0,1.)
0
1
0 0,2
0
1
0 0,4
0
1
0 0,6
0
1
0 1
Trang 30( ) ( )
12193 ,
2
1 , 0 / 1 log
1 , 0 1
, 0 / 1 log
1 , 0 2
, 0 / 1 log
2 , 0
2 , 0 / 1 log
2 , 0 4
, 0 / 1 log
4 , 0
) (
/ 1 log )
(
2 , 2 3
1 , 0 3
1 , 0 2
2 , 0 2
2 , 0 2
4 , 0
1 1
=
+ +
+ +
S
i
i i
x p x
p S
H
x p n R
Vậy độ dài trung bình thoả mãn điều
kiện giới hạn của entropi.
Trang 31Bài tập:1 Cho một nguồn tin X =
{a1,a2,a3,a4} với xác suất xuất hiện p1 = p2 = 0,33, p3 = p4 = 0,22 hãy :
1.Lập mã huffman cho từng ký hiệu
2 Hiệu suất lập mã
3.Bài 2: Với nguồn tin bài 1 hãy lập mã
shannon, Và hiệu suất mã hoá.