1. Trang chủ
  2. » Công Nghệ Thông Tin

Tìm hiểu và phát triển kỹ thuật truyền tin theo hướng biến đổi dữ liệ

81 174 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 81
Dung lượng 1,95 MB

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

Nội dung

DANH SÁCH CÁC HÌNH ẢNH Hình 1.1 Mô hình quá trình xử lý thông tin tổng quát 6 Hình 1.2 Minh họa phương pháp biến đổi BWT nghịch 12 Hình 1.5 Xác suất và khoảng con khởi tạo của biểu 21 Hì

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

HOÀNG PHƯƠNG THẢO

TÌM HIỂU VÀ PHÁT TRIỂN KỸ THUẬT TRUYỀN TIN

THEO HƯỚNG BIẾN ĐỔI DỮ LIỆU

LUẬN VĂN THẠC SỸ KHOA HỌC MÁY TÍNH

THÁI NGUYÊN - 2016

Trang 2

ĐẠI HỌC THÁI NGUYÊN

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

HOÀNG PHƯƠNG THẢO

TÌM HIỂU VÀ PHÁT TRIỂN KỸ THUẬT TRUYỀN TIN

THEO HƯỚNG BIẾN ĐỔI DỮ LIỆU

CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH

MÃ SỐ CHUYÊN NGÀNH: 60 48 01 01

LUẬN VĂN THẠC SỸ: KHOA HỌC MÁY TÍNH

NGƯỜI HƯỚNG DẪN KHOA HỌC

PGS TSKH NGUYỄN XUÂN HUY

THÁI NGUYÊN - 2016

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan rằng các kết quả nghiên cứu được trình bày trong luận văn này là hoàn toàn mới, do bản thân tôi tự làm, dưới sự hướng dẫn của PGS.TSKH Nguyễn Xuân Huy

Các số liệu và kết quả nêu trong luận văn là trung thực, có nguồn trích dẫn

và chưa từng được tác giả nào khác công bố trong bất kì công trình nào khác

Thái Nguyên, ngày 12 tháng 5 năm 2016

HỌC VIÊN

Hoàng Phương Thảo

Trang 4

LỜI CẢM ƠN

“ Người thầy vẫn lặng lẽ đi về sớm trưa Từng ngày giọt mồ hôi rơi đầy trang giấy … Thầy vẫn đứng bên sân trường năm ấy Dõi theo bước em trong cuộc đời Dẫu đếm hết sao trời đêm nay Dẫu đếm hết lá mùa thu rơi Nhưng ngàn năm, làm sao em đếm hết công ơn người thầy”

Trích ca khúc “Người thầy” sáng tác Nguyễn Nhất Huy

Em xin được gửi lời cảm ơn sâu sắc tới thầy PGS.TSKH Nguyễn Xuân Huy - Viện Công nghệ thông tin người đã dẫn dắt và định hướng cho em tìm hiểu và phát triển về lĩnh vực biến đổi thông tin trong kỹ thuật truyền tin Thầy đã luôn tận tình giúp

đỡ, giảng giải cho em trong mỗi bài học để em có thể nghiên cứu và hoàn thành luận văn này

Em trân trọng gửi lời cảm ơn đến các thầy cô trong và ngoài nhà trường đã cung cấp kiến thức, tài liệu học tập, tài liệu tham khảo và luôn tạo điều kiện thuận lợi cho quá trình học tập, rèn luyện của bản thân em

Em xin cảm ơn các Phòng, Ban, Khoa, đặc biệt là Khoa sau đại học trường Đại học Công nghệ thông tin và truyền thông Thái Nguyên đã hỗ trợ, hướng dẫn em trong suốt quá trình học tập, kể từ ngày đầu nhập học cho đến hôm nay

Sau cùng, em xin gửi lời cảm ơn sâu sắc tới gia đình, Ban lãnh đạo trường Cao đẳng nghề Hòa Bình, các bạn học cùng lớp, các bạn đồng nghiệp đã giúp đỡ về vật chất, động viên về tinh thần, dành thời gian cho em tham gia khóa học cùng lo lắng, chia sẻ vui buồn với em trong quãng thời gian em đi học

Thái Nguyên, ngày 12 tháng 5 năm 2016

HỌC VIÊN Hoàng Phương Thảo

Trang 5

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

MỤC LỤC iii

DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT v

DANH SÁCH CÁC BẢNG BIỂU vi

DANH SÁCH CÁC HÌNH ẢNH viii

MỞ ĐẦU 1

1 Lý do chọn đề tài 1

2 Nhiệm vụ nghiên cứu 2

4 Hướng nghiên cứu của đề tài 2

5 Những nội dung nghiên cứu chính 2

6 Phương pháp nghiên cứu 3

7 Ý nghĩa khoa học của đề tài 4

CHƯƠNG 1: THÔNG TIN VÀ QUÁ TRÌNH TRUYỀN TIN 5

1.1 Tổng quan về thông tin 5

1.1.1 Một số khái niệm về thông tin 5

1.1.2 Lượng tin - đơn vị đo lượng tin 5

1.1.3 Sơ đồ tổng quát của một quá trình xử lý thông tin 6

1.1.4 Sự trùng lặp thông tin 7

1.2 Tìm hiểu một số kỹ thuật biến đổi dữ liệu 9

1.2.1 Kỹ thuật biến đổi Burrows-Wheeler 9

1.2.1.1 Tư tưởng 9

1.2.1.2 Thuật toán Burrows-Wheeler 9

1.2.2 Kỹ thuật biến đổi Move-To-Front 15

1.2.2.1 Tư tưởng 15

1.2.2.2 Thuật toán Move-To-Front 16

1.3 Mã hóa Entropy 18

1.3.1 Mã hóa Huffman 18

1.3.2 Mã hóa số học 20

Trang 6

1.4 Mã hóa độ dài (RLE) 21

1.5 Khảo sát đặc thù truyền tin 22

1.5.1 Quá trình truyền tin 23

1.5.2 Truyền tin số 25

1.6 Kết luận 26

CHƯƠNG 2: TRUYỀN TIN KẾT HỢP VỚI KỸ THUẬT 27

BIẾN ĐỔI DỮ LIỆU 27

2.1 Các phương pháp biến đổi dữ liệu 27

2.1.1 Phương pháp Entropy 27

2.1.2 Phương pháp biến đổi dữ liệu Burrow-Wheeler 30

2.2 Mô hình truyền tin kết hợp với biến đổi dữ liệu 37

2.3 Lợi ích của kỹ thuật biến đổi dữ liệu khi truyền tin 48

2.4 Một số phát triển với kỹ thuật biến đổi BWT và MTF 49

2.4.1 Sự đảo ngược tần số 52

2.4.2 Phương pháp đếm trọng số (WFC) 53

2.4.3 Giai đoạn EC 54

2.4.4 Lược đồ biến đổi dữ liệu 55

2.4.5 So sánh tỷ lệ và thời gian thực hiện 57

2.5 Kết luận 59

CHƯƠNG 3 : CÀI ĐẶT VÀ THỬ NGHIỆM 60

3.1 Dữ liệu mẫu 60

3.2 Cài đặt thử nghiệm 61

3.3 Nhận xét và đánh giá kết quả thử nghiệm 61

3.4 Kết luận và hướng phát triển 68

3.4.1 Kết luận 68

3.4.2 Hướng phát triển của đề tài 68

TÀI LIỆU THAM KHẢO 69

Tài liệu tiếng việt 69

Tài liệu tiếng anh 69

Các trang web 70

Trang 7

DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT

BWT Burrows - Wheeler Transform Biến đổi Burrows - Wheeler

WFC Weighted Frequency Count Đếm trọng số tần số

LUA List Update Algorithm Thuật toán cập nhập danh sách GST Global Structure Transformation Chuyển đổi cấu trúc tổng thể

Trang 8

DANH SÁCH CÁC BẢNG BIỂU

Bảng 1.1 Thể hiện các thông tin dự báo thời tiết diễn ra trong các

ngày của một tuần

8

Bảng 1.3 Kết quả sắp xếp theo thứ tự từ điển dãy cho

“ABBAANDPANAMA”

13

Bảng 1.9 Mô tả các trường hợp xuất hiện các ký hiệu khi nén 23 Bảng 2.1 Bảng tần xuất số lần xuất hiện của dãy số 27 Bảng 2.2 Bảng tần xuất số lần xuất hiện tăng dần của dãy số 27

Bảng 2.5 Kết quả sắp xếp theo thứ tự tăng dần trong bảng mã ASCII 31-32

Bảng 2.9 Kết quả thực nghiệm quy trình nén và truyền 38 Bảng 2.10 Kết quả thực nghiệm quy trình biến đổi và truyền 44 Bảng 2.11 Kết quả thực nghiệm quy trình kết hợp Nén-Biến đổi-Truyền 45-46 Bảng 2.12 Những giá trị trung bình rx và thời gian thực hiện theo giây

cho những giai đoạn MTF và WFC

49

Bảng 2.14 Những giá trị trung bình rx và thời giang thực hiện theo giây 52

Trang 9

cho những giai đoạn MTF và WFC Bảng 2.15 Thể hiện các bước nén khối dữ liệu

"abracadabraabracadabra"

55

Bảng 2.16 Tỉ lệ nén kết hợp biến đổi với Calgary Corpus 56 Bảng 2.17 Thời gian thực hiện với Calgary Corpus theo giây 57

Bảng 3.2 Kết quả cài đặt thử nghiệm nén Huffman và phép biến đổi

BWT với Huffman

65

Trang 10

DANH SÁCH CÁC HÌNH ẢNH

Hình 1.1 Mô hình quá trình xử lý thông tin tổng quát 6 Hình 1.2 Minh họa phương pháp biến đổi BWT nghịch 12

Hình 1.5 Xác suất và khoảng con khởi tạo của biểu 21

Hình 2.1 Minh họa nén theo phương pháp Huffman 28

Hình 2.3 Kết quả thực nghiệm biến đổi BWT nghịch 33 Hình 2.4 Quy trình truyền dữ liệu kết hợp với các phép biến đổi 37 Hình 2.5 Quá trình phát triển kỹ thuật nén BWT 48

Hình 2.7 Lược đồ nén dữ liệu của Burrows-Wheeler 53 Hình 3.1a Kết quả cài đặt thử nghiệm thuật toán kỹ thuật biến đổi

BWT khi nạp trực tiếp dữ liệu

60

Hình 3.1b Kết quả cài đặt thử nghiệm thuật toán kỹ thuật biến đổi

BWT khi nạp một file dữ liệu

60

Hình 3.2a Kết quả cài đặt thử nghiệm thuật toán kỹ thuật biến đổi

MTF khi nạp trực tiếp dữ liệu

61

Hình 3.2b Kết quả cài đặt thử nghiệm thuật toán kỹ thuật biến đổi

MTF khi nạp một file dữ liệu

61

Hình 3.3a Kết quả cài đặt thử nghiệm với thuật toán nén 62

Trang 11

Huffman khi nạp file dữ liệu mẫu “Mylib.h”

Hình 3.3b Kết quả cài đặt thử nghiệm kết hợp BWT và Huffman

từ file dữ liệu mẫu “Mylib.h”

62

Hình 3.4a Kết quả cài đặt thử nghiệm với thuật toán nén

Huffman khi nạp file dữ liệu mẫu “index.html”

63

Hình 3.4b Kết quả cài đặt thử nghiệm kết hợp BWT và Huffman

từ file dữ liệu mẫu “index.html”

63

Hình 3.5a Kết quả cài đặt thử nghiệm với thuật toán nén

Huffman khi nạp file dữ liệu mẫu“Point.xls”

63

Hình 3.5b Kết quả cài đặt thử nghiệm kết hợp BWT và Huffman

từ file dữ liệu mẫu “Point.xls”

64

Hình 3.5a Kết quả cài đặt thử nghiệm với thuật toán nén Huffman

khi nạp file dữ liệu mẫu “NhietDo092015.dat”

64

Hình 3.5b Kết quả cài đặt thử nghiệm kết hợp BWT và Huffman

từ file dữ liệu mẫu “NhietDo092015.dat”

65

Trang 12

MỞ ĐẦU

1 Lý do chọn đề tài

Trong thời đại hiện nay, sự bùng nổ của cuộc cách mạng khoa học kỹ thuật - công nghệ, đặc biệt với những thành tựu trong các lĩnh vực điện tử, tin học, truyền thông, con người đã xây dựng và thực hiện được bước tiến đáng kể trong sự nghiệp công nghiệp hóa, hiện đại hóa Việc áp dụng nhanh chóng các thành tựu của khoa học công nghệ đã góp phần nâng cao chất lượng các sản phẩm và hiệu quả của các lĩnh vực ngày càng trở nên cấp thiết

Thông tin tiềm tàng khắp mọi nơi trong xã hội, đó là các nguồn thông tin về giá vàng, thị trường chứng khoán, dự báo thời tiết, thông tin về các tổ chức, các hoạt động kinh tế xã hội, thông tin về khoa học công nghệ, nhưng đó chỉ là thông tin ở dạng tiềm năng Thông tin chỉ có giá trị và ý nghĩa khi nó được truyền đi, phổ biến

và được sử dụng Có thể nói bản chất của thông tin nằm trong sự giao lưu của nó

Do đó thông tin luôn phát triển gắn liền với truyền tin

Nhịp độ cuộc sống hiện đại, tính phức tạp của công việc và tốc độ trong giao dịch đòi hỏi sự giao lưu nhanh chóng của các dịch vụ thuộc lĩnh vực công nghệ thông tin, truyền tin đã làm tăng nhu cầu của các loại hình thông tin, truyền tin trong các tổ chức quốc gia cũng như các tổ chức quốc tế Việc tổ chức các dịch vụ hiện đại dựa vào các hệ thống điều khiển nhằm thu thập và xử lý thông tin qua các phương tiện truyền tin, các kỹ thuật truyền tin

Các hình thức truyền tin thông dụng như video, âm thanh, hình ảnh, văn bản,

đã trở nên khá phổ biến trong xã hội Truyền tin là một phương tiện và cũng là nhịp cầu liên kết giữa con người, các lĩnh vực trong xã hội với nhau Nhưng hiện tại việc trao đổi thông tin vẫn còn nhiều giới hạn bởi chất lượng thông tin, kích thước gói tin, tốc độ truyền tin, và khả năng bảo mật của thông tin chưa hoàn toàn đáp ứng người dùng Vì vậy kỹ thuật truyền tin theo hướng biến đổi dữ liệu ra đời với mong muốn là thu nhỏ dung lượng các gói tin, chuyển tin chuẩn xác với nội dung ban đầu, giúp cho quá trình truyền thông tin nhanh hơn, không gian lưu trữ trên đĩa ít hơn

Trang 13

Với mong muốn thực hiện việc biến đổi tin và truyền tin trong khoảng thời gian ngắn, kích thước gói tin nhỏ, chất lượng tin tốt Học viên lựa chọn đề tài luận

văn “Tìm hiểu và phát triển kỹ thuật truyền tin theo hướng biến đổi dữ liệu” Với đề

tài này, học viên nghiên cứu hai kỹ thuật biến đổi cơ bản là: Kỹ thuật biến đổi dữ liệu Burrows-Wheeler, Move-To-Front kết hợp với thuật toán nén Huffman

2 Nhiệm vụ nghiên cứu

- Tìm hiểu tổng quan về thông tin, truyền tin, kỹ thuật biến đổi dữ liệu Burrows-Wheeler, kỹ thuật biến đổi dữ liệu Move-To-Front

- Cài đặt thử nghiệm kỹ thuật biến đổi Burrows-Wheeler và kỹ thuật biến đổi Move-To-Front kết hợp với thuật toán nén Huffman

Đưa ra kết quả đối sánh quá trình truyền tin và biến đổi thông tin khi kết hợp kỹ thuật biến đổi dữ liệu Burrows-Wheeler và kỹ thuật biến đổi Move-To-Front với thuật toán nén Huffman

3 Đối tượng và phạm vi nghiên cứu

Tập trung vào nghiên cứu:

- Tư tưởng của kỹ thuật biến đổi Burrows-Wheeler và Move-To-Front

- Thuật toán biến đổi Burrows-Wheeler và Move-To-Front

- Các ví dụ cụ thể áp dụng thuật toán biến đổi Burrows-Wheeler và To-Front và thuật toán nén Huffman

Move Những lợi ích riêng của từng kỹ thuật biến đổi BurrowsMove Wheeler và kỹ thuật biến đổi Move-To-Front

4 Hướng nghiên cứu của đề tài

- Tìm hiểu về thông tin và quá trình truyền tin

- Nghiên cứu về mã hóa dữ liệu

- Tìm hiểu truyền tin theo các kỹ thuật biến đổi dữ liệu

- Cài đặt thử nghiệm

5 Những nội dung nghiên cứu chính

Luận văn được trình bày trong 3 chương, có phần mở đầu, phần kết luận, phần mục lục, phần tài liệu tham khảo

Trang 14

Nội dung cơ bản của luận văn được trình bày như sau:

Chương 1: Thông tin và quá trình truyền tin

Trong chương này học viên trình bày những khái niệm cơ sở, ý tưởng, thuật toán liên quan thông tin, truyền tin Ngoài ra, học viên có nêu thêm một số khái niệm liên quan đến thông tin, nén dữ liệu và đưa ra một số ví dụ, dẫn chứng cụ thể

để dẫn dắt vấn đề cho luận văn

Chương 2: Truyền tin kết hợp với kỹ thuật biến đổi dữ liệu

Trong chương 2 học viên chứng minh một số kỹ thuật biến đổi dữ liệu cơ bản bằng cách áp dụng thuật toán đã trình bày tại chương 1 để thực hiện các ví dụ cụ thể

Kết hợp các kỹ thuật biến đổi dữ liệu, nén dữ liệu để thực hiện mô hình theo

4 quy trình chính để áp dụng kỹ thuật biến đổi dữ liệu BWT, MTF và phương pháp

nén dữ liệu Entropy để chứng minh kết quả đạt được của luận văn

Chương 3: Cài đặt và thử nghiệm

Chương trình cài đặt và thử nghiệm sử dụng các chương trình chính sau:

* Kỹ thuật biến đổi: Burrows - Wheeler và Move - To - Front

* Thuật toán nén: Huffman

Áp dụng mô hình biến đổi dữ liệu kết hợp thành các quy trình thực hiện dựa trên cơ sở lý thuyết, đã cài đặt chuyển đổi thử nghiệm dữ liệu thực

6 Phương pháp nghiên cứu

 Về lý thuyết:

- Tìm hiểu thông tin và quá trình truyền tin

- Tìm hiểu nén dữ liệu, thuật toán nén Huffman

- Nghiên cứu truyền tin theo các kỹ thuật biến đổi dữ liệu Wheeler và Move-To-Front

Burrows- Về thử nghiệm:

- Sử dụng ngôn ngữ lập trình Dev C++ xây dựng và cài đặt thử nghiệm chương trình nén dữ liệu theo kỹ thuật biến đổi Burrows-Wheeler, kỹ thuật Move-To-Front kết hợp với thuật toán nén Huffman

Trang 15

- Nhận xét, đánh giá kết quả thử nghiệm

7 Ý nghĩa khoa học của đề tài

Theo các nghiên cứu về biến đổi dữ liệu, học viên phân tích các đặc tính của

dữ liệu đã được biến đổi khi truyền tin và hy vọng đưa ra một số mô hình để đạt được sự biểu diễn ngắn gọn hơn, chuẩn xác hơn Điều này làm gia tăng sự đa dạng của mô hình dữ liệu và những kỹ thuật biến đổi dữ liệu

Luận văn tập trung vào xây dựng cơ sở khoa học cho việc truyền tin theo kỹ thuật biến đổi dữ liệu Burrows-Wheeler với kỹ thuật Move-To-Front kết hợp thuật toán nén Huffman xây dựng ứng dụng, thử nghiệm để tìm ra phương pháp truyền tin hiệu quả nhất

Trang 16

CHƯƠNG 1: THÔNG TIN VÀ QUÁ TRÌNH TRUYỀN TIN

1.1 Tổng quan về thông tin

1.1.1 Một số khái niệm về thông tin

Thông tin được tổ chức tuân theo một số quan hệ logic nhất định, trở thành một bộ phận của tri thức, đòi hỏi phải được khai thác và nghiên cứu một cách hệ thống Trong hoạt động của con người thông tin được thể hiện qua nhiều hình thức

đa dạng và phong phú như: Con số, chữ viết, âm thanh, hình ảnh v.v

Từ Latin “Information”, gốc của từ hiện đại “information” (thông tin) có hai nghĩa Một, nó chỉ một hành động rất cụ thể là tạo ra một hình dạng (forme) Hai, tuỳ theo tình huống, nó có nghĩa là sự truyền đạt một ý tưởng, một khái niệm hay một biểu tượng Tuy nhiên cùng với sự phát triển của xã hội, khái niệm thông tin cũng phát triển theo

Thông tin tồn tại khách quan, có thể ghi lại và truyền đi Những điều mà ta gặp hàng ngày như thông tin dự báo thời tiết, tin điện sắp sửa tăng giá, lịch tập huấn của đội tuyển bóng đá Việt Nam, thị trường chứng khoán, giá vàng, chính là thông tin Việc chúng ta ghi lại những điều này ra giấy, đó là chúng ta ghi lại thông tin Còn việc chúng ta nói với mọi người những điều này hoặc đưa cho mọi người xem những điều này, đó là truyền tin

1.1.2 Lượng tin - đơn vị đo lượng tin

Khi nào thì lượng tin bằng không, hay nói cách khác, khi nào thì các thông

tin được coi là không có nghĩa? Đó chính là những điều hiển nhiên, chắc chắn, ai cũng biết (Điều này tương đương với việc hệ thống chỉ có một trạng thái)

Ví dụ về lượng tin bằng không: Ai đó thông báo rằng, “ngày mai mặt trời lại mọc ở hướng Đông đấy” Thông báo đó hầu như không đem lại thông tin gì mới cả,

ai cũng biết điều này vậy kết quả là không

Tuy nhiên, điều càng bất ngờ, khó xảy ra thì lượng tin càng cao Ví dụ, tin

về thiên tai sóng thần tại châu Á, tin về toà tháp đôi của Mỹ bị đổ thu hút sự quan

Trang 17

tâm của rất nhiều người bởi đây đều là những điều hoàn toàn bất ngờ, rất khó xảy

ra Như vậy, có thể nói rằng: Lượng tin tỷ lệ nghịch với xác suất của sự kiện[4]

Vậy trong máy tính, các thông tin được biểu diễn bằng hệ đếm nhị phân Tuy chỉ dùng 2 ký hiệu số là ‘0’ và ‘1’ mà ta gọi là bit nhưng hệ nhị phân đã giúp máy tính biểu diễn - xử lý được trên hầu hết các loại thông tin mà con người hiện đang

sử dụng như văn bản, hình ảnh, âm thanh, video,

1.1.3 Sơ đồ tổng quát của một quá trình xử lý thông tin

Mọi quá trình xử lý thông tin bằng máy tính hay bằng con người đều được thực hiện theo một qui trình sau :

Dữ liệu (data) được nhập ở đầu vào (input) Máy tính hay con người sẽ thực hiện quá trình xử lý nào đó để nhận được thông tin ở đầu ra (output) Quá trình nhập

dữ liệu, xử lý và xuất thông tin đều có thể được lưu trữ (Hình 1.1)

Hình 1.1 Mô hình quá trình xử lý thông tin tổng quát

Việc xử lý thông tin bao gồm 3 quy trình sau:

- Quy trình thu nhận thông tin: Nạp, ghi nhớ thông tin vào vùng nhớ trong não hoặc các vật lữu trữ trung gian ( giấy, đĩa từ,…)

- Quy trình tìm kiếm thông tin: Nhớ lại thông tin trong vùng nhớ đã lưu, hoặc thu thập, truy tìm thông tin trong các vật lưu trữ thông tin

- Quy trình biến đổi thông tin: Các hoạt động xử lý, biến đổi thông tin dẫn đến việc thay đổi thông tin, tao ra thông tin mới

Từ mô hình trên ta nhận thấy rằng mỗi hệ thống truyền tin đều có đặc trưng riêng nhưng có một số đặc tính chung cho tất cả các hệ thống Đặc trưng chung có tính nguyên lý là tất cả các hệ thống truyền tin đều nhằm mục đích truyền tải thông

Trang 18

tin từ điểm này đến điểm khác Trong các hệ thống truyền tin, thường gọi thông tin

là dữ liệu hay thông điệp

Để truyền tin hiệu quả thì giữa bên phát và bên thu phải hiểu thông điệp muốn truyền và phải có khả năng biến đổi thông điệp, dịch thông điệp chính xác

Đặc trưng toàn quá trình truyền tin của một hệ thống được xác định và bị giới hạn riêng của nguồn tin, của môi trường truyền và đích thu Nhìn chung, dạng thông tin cần truyền quyết định kiểu nguồn tin, môi trường và đích thu

Ví dụ 1.1: Giả sử ta có một văn bản gốc với nội dung “abbaandpanama”, ta

cần chuyển văn bản này đến một vị trí khác Ta thực hiện như sau:

Dữ liệu vào Input S = “abbaandpanama”, sau quá trình biến đổi và truyền ta thu được bản mã dữ liệu đích Output L = “mbanpabanaaad”, với khóa D = 2 Từ khóa D = 2 sau khi giải mã ta thu được dữ liệu đích Output S’ = “abbaandpanama”

- Quy trình truyền thông tin: Truyền hoặc dẫn thông tin từ nơi này sang nơi khác, từ đối tượng này sang đối tượng khác

- Quy trình lý giải, suy luận thông tin: Các hoạt động mang tính trí tuệ và sáng tạo như phân tích, so sánh, lý giải, suy luận, đối chiếu, đánh giá vai trò, ý nghĩa của thông tin[4]

1.1.4 Sự trùng lặp thông tin

Thông tin trùng lặp có thể là một số thông tin được che dấu, một số cơ sơ dữ liệu chung, một số các ký tự giống nhau, một số cấu trúc tương đương trong tự nhiên… Xét một số ví dụ đơn giản sau đây:

Ví dụ 1.2: Xét chuỗi ký tự S = “panama”

Để biểu diễn chuỗi ký tự S = “panama” theo cách thông thường cần 48 bits Như vậy, với chuỗi ký tự S ta có thể lưu ở bảng ký hiệu mới với mã tương ứng cho từng ký hiệu là p = 100, n = 101, m = 11, a = 0 Vậy để biểu diễn chuỗi ký tự S lúc này ta chỉ cần 11 bits Tuy nhiên còn có nhiều cách khác để có thể giảm bớt số bit

của các ký tự bằng cách thay đổi độ dài từ mã vẫn luôn đảm bảo dữ liệu chính xác

Ví dụ 1.3: Xâu “ bananaaaaaa” có 8 biểu tượng ‘a’ và hai biểu tượng ‘n’

Trang 19

được lặp lại liên tục

Ví dụ 1.4: Xem xét một văn bản với các từ được lặp lại như sau:

"nguoi oi nguoi o dung ve nguoi ve em chang cho ve

em nam vat ao em de lam tho tho nay nguoi o nguoi ve nguoi di di mai chang ve nguoi oi"

Ở đây có các từ được lặp lại đó là : Từ "nguoi" 7 lần, từ "ve" 5 lần, từ "em"

3 lần, từ "oi" 2 lần, từ "o" 2 lần, từ "tho" 2 lần, từ "chang" 2 lần

Ví dụ 1.5: Xét thông tin dự báo thời tiết của tỉnh Hòa Bình trong tuần một của tháng 9

năm 2015 Tính trung bình một ngày thông tin dự báo thời tiết báo nhiệt độ 3 lần (sáng, chiều và đêm) Trong đó một tuần bằng 7 ngày Vậy số lượt báo nhiệt độ trong

7 ngày x 3 = 21 lần báo nhiệt độ

Giả sử tính trung bình và làm tròn nhiệt độ mỗi ngày sẽ cho ta một dãy thông tin Những thông tin về nhiệt độ biến động trong ngày được cập nhật, và cần phải được truyền tin ngay khi xuất hiện thông tin dự báo nhiệt độ mới chứ không để có đủ lượng thông tin về bảng đo nhiệt độ của một tuần ta mới nén để gửi đi Với bảng thông số nhiệt độ như sau:

Bảng 1.1 Thể hiện các thông tin dự báo thời tiết diễn ra trong các ngày của một tuần

Ngày Chủ nhật Thứ 2 Thứ 3 Thứ 4 Thứ 5 Thứ 6 Thứ 7

Dựa vào bảng nhiệt độ trên, ta thấy các thông số về nhiệt độ dự báo 23, 24, 25,

26, 27 được lặp lại rất nhiều lần Vì vậy để thuận tiện cho quá trình truyền thông tin, chúng ta cần áp dụng một số kỹ thuật biến đổi thông tin kết hợp với nén thông tin

Trang 20

trước khi truyền tin Mục đích chính nhằm rút ngắn thời gian truyền tin và chiếm không gian lưu trữ ít hơn

1.2 Tìm hiểu một số kỹ thuật biến đổi dữ liệu

Với phương hướng của đề tài, học viên áp dụng hai kỹ thuật biến đổi chính

đó là: Kỹ thuật biến đổi Burrows-Wheeler, kỹ thuật biến đổi Move-To- Front và kết hợp phương pháp Entropy trong quá trình thực hiện

1.2.1 Kỹ thuật biến đổi Burrows-Wheeler

Các BWT dựa vào thứ tự từ điển phân loại các biểu tượng theo thứ tự quay vòng của một chuỗi Các hoạt động của BWT tốt nhất có thể được giải thích thông qua một số ví dụ cụ thể bằng kỹ thuật biến đổi BWT thuận và BWT ngược[11]

1.2.1.2 Thuật toán Burrows-Wheeler

 Burrows-Wheeler thuận

Input: BWT(S)// Dữ liệu vào: Chuỗi văn bản, âm thanh, hình ảnh,…

Output: L, D

// L = Dữ liệu ra; D = Chỉ số xác định lưu trữ vị trí ký tự đầu tiên của S

Phương pháp: BWT tạo ra các khối dữ liệu bằng cách hoán vị vòng tròn ký tự

ký tự đầu tiên của khối xuống cuối khối và thu được ma trận X[n×n], mỗi hàng của

Trang 21

Bước 2: Sắp xếp lại các dòng của ma trận theo thứ tự từ điển

Bước 3: Tạo ra khối dữ liệu mới L là cột cuối cùng của ma trận Giá trị D lưu trữ vị trí ký tự đầu tiên của S, D là nguồn gốc để khôi phục L thành S

Bước 4: Số D là vị trí của S trong dãy được sắp xếp

Tổng quát BWT: BWT (S) = (L, D)

Biến đổi BWT thuận về bản chất liên quan đến việc sắp xếp tất cả các phép quay của xâu đầu vào, kỹ thuật biến đổi BWT thực hiện việc nhóm các ký tự xuất hiện trong các ngữ cảnh tương tự lại với nhau bằng cách tạo ra tất cả các thay đổi về phép quay vòng của chuỗi dữ liệu và liệt kê chúng theo thứ tự; sau mỗi lần thay đổi, phần tử đầu tiên của dãy cũ sẽ được chuyển về vị trí cuối cùng của dãy mới

Xét ví dụ 1.6: Giả sử ta có một văn bản gốc với nội dung:

“ABBAANDPANAMA” Tức là Input : S = “ABBAANDPANAMA”

Áp dụng thuật toán BWT và công thức tổng quát, ta thưc hiện quay chuỗi

“ABBAANDPANAMA” Ta được thông tin như bảng 1.2:

Bảng 1.2 Quá trình quay chuỗi “ABBAANDPANAMA”

Sắp xếp theo chuỗi ký tự từ điển như bảng 1.1 cho kết quả của việc sắp xếp

X và được dãy kết quả đầu ra là Y.[12]

Trang 22

Bảng 1.3 Kết quả sắp xếp theo thứ tự từ điển dãy cho “ABBAANDPANAMA”

Phương pháp: Kết quả BWT thuận cho ta cho ta mảng L và giá trị D Từ L ta

có thể suy ra được F Để có thể suy từ L ra S, ta phải tìm mối quan hệ giữa L và F Với mỗi ký tự trong L ta đều suy ra ký tự tiếp theo của S từ F căn cứ vào chỉ số, bởi

vì quá trình chuyển đổi BWT là quá trình hoán vị vòng quanh S

Trang 23

Giả sử ta biết ký tự s i trong L có vị trí là u (s i = L[u]), ta cũng biết ký tự tiếp theo trong S là s i+1 = F[u] Ta đã biết được s i+1 thì cũng biết được s i+2, tương tự như

vậy ta sẽ suy ra được S Hình 1.2 minh họa quá trình này

Hình 1.2 Minh họa phương pháp biến đổi BWT nghịch Giá trị D cho ta biết ký tự đầu tiên của S trong L và ký tự tiếp theo của S trong F Như vậy ta cần một mảng phụ để lưu trữ chỉ số của từng ký tự trong L khi sắp xếp Ta định nghĩa mảng S’ để lưu trữ

Xét tiếp ví dụ 1.6: Sau khi biến đổi BWT thuận ta được kết quả là một sâu mới L = “MBANPABANAAAD” Sắp xếp theo thứ tự từ điển cho ta sâu F =

“AAAAAABBDMNP”[13]

Thuật toán

1 Có L và chỉ số chính D

2 Viết chuỗi L và F cùng với các chỉ số

Vậy ta được kết quả như bảng dưới đây:

Trang 24

3 Tạo một “véc tơ biến đổi” F[i]

Để tính được giá trị của F[i], chúng ta dựa vào vị trí của ký tự đó trong chuỗi

F Giả sử chuỗi ký tự đó xuất hiện thứ n trong chuỗi F; ta quét chuỗi L để tìm sự xuất hiện của ký tự thứ n trong chuỗi F và kết quả nhận về là SA[n]

F[0] A thứ 1 trong F L[2] A thứ 1 trong L => SA[0] = 2

F[1] A thứ 2 trong F L[5] A thứ 2 trong L => SA[1] = 5

F[2] A thứ 3 trong F L[7] A thứ 3 trong L => SA[2] = 7

F[3] A thứ 4 trong F L[9] A thứ 4 trong L => SA[3] = 9

F[4] A thứ 5 trong F L[10] A thứ 5 trong L => SA[4] = 10

F[5] A thứ 6 trong F L[11] A thứ 6 trong L => SA[5] = 11

F[6] B thứ 1 trong F L[1] B thứ 1 trong L => SA[6] = 1

F[7] B thứ 2 trong F L[6] B thứ 2 trong L => SA[7] = 6

F[8] D thứ 1 trong F L[12] D thứ 1 trong L => SA[8] = 12

F[9] M thứ 1 trong F L[0] M thứ 1 trong L => SA[9] = 0

F[10] N thứ 1 trong F L[3] N thứ 1 trong L => SA[10] = 3

F[11] N thứ 2 trong F L[8] N thứ 2 trong L => SA[11] = 8

F[12] P thứ 1 trong F L[4] P thứ 1 trong L => SA[12] = 4

Theo thuật toán nghịch của kỹ thuật biến đổi BWT để khôi phục lại được

chuỗi ký tự ban đầu, ta cần sử dụng chỉ số chính với D = 2 Vậy ta khởi tạo giá trị với chỉ số chính thuộc D trong chuỗi L [bắt đầu với chỉ số chính] và thiết lập các chỉ

số SA, sau đó quay vòng lặp cho đến khi kết quả được chỉ số chính một lần nữa.[13]

Quy trình giải mã:

Trang 26

Index = 7 L[7] = A SA[7] = 6

Index = 2 - Primary index readched, end of string

Output: ABBAANDPANAMA

Ngoài ra còn có thể thực hiện quy trình giải mã tìm kiếm quay chuỗi biến đổi

thuật toán BWT nghịch theo phương pháp của hình 1.2

Hình 1.3 Mô tả quá trình biến đổi BWT nghịch Vậy kết quả là: Output S’ = “A 3 B 2 B 1 A 2 A 6 N 2 DPA 5 N 1 A 4 MA 1 ”

Đây chính là chuỗi ký tự ban đầu : S = S’ = “ABBAANDPANAMA”

1.2.2 Kỹ thuật biến đổi Move-To-Front

1.2.2.1 Tư tưởng

Move-To-Front (MTF) là một phương pháp dịch chuyển các ký hiệu về vị trí đầu tiên trong dãy ký tự cần mã, điều này chứng tỏ trong dãy ký tự cần mã có nhiều

ký tự giống nhau thì sẽ có mã là 0 Vậy kết quả đầu ra sẽ cho ta nhiều ký hiệu có mã

là 0 Để làm sáng tỏ điều này, ta xét bảng chữ cái gồm có các chữ cái

Trang 27

“ABCDEFGHIJKLMNOPQRSTUVWXYZ” tạo thành mảng Mỗi lần dịch chuyển

để đọc một ký tự thì ký tự đó được đưa về đầu mảng và có mã là 0

Cụ thể ta xét kỹ thuật biến đổi MTF thuận và MTF nghịch và cùng làm rõ

trong ví dụ của một xâu đầu vào là một xâu đầu ra của kỹ thuật biến đổi BWT: L =

1.2.2.2 Thuật toán Move-To-Front

Bước 1: Đọc ký tự từ khối dữ liệu nguồn T

Bước 2: Ghi ký tự từ vị trí xuất hiện ch trong bảng mã vào khối dữ liệu đích D

Bước 3: Di chuyển ký tự lên đầu bảng mã

Bước 4: Lặp lại các bước trên cho đến khi kết thúc khối dữ liệu nguồn

Xét tiếp ví dụ 1.6

Ta xét một xâu đầu vào là một xâu đầu ra của kỹ thuật biến đổi BWT:

Theo BWT (“ABBAANDPANAMA”) = (“MBANPABANAAAD”, 2)

Với bảng chữ cái 26 ký tự: T = ABCDEFGHIJKLMNOPQRSTUVWXYZ Ta

sắp xếp quay theo bảng dưới đây :

Trang 28

Bảng 1.6 Mô tả quá trình biến đổi MTF thuận

Sau khi dùng kỹ thuật biến đổi dữ liệu MTF với kết quả đầu vào:

Input(R) = “MBANPABANAAAD”, ta được kết quả đầu ra:

Output(D) = “12|2|2|13|15|2|3|1|3|1|0|0|6”

MTF (“MBANPABANAAAD”) = (12, 2, 2, 13, 15, 2, 3, 1, 3, 1,0, 0,6)

 Move-To-Front nghịch

Không giống như kỹ thuật biến đổi BWT nghịch, MTF nghịch đơn giản hơn

về cách thực hiện trong thuật toán

Thuật toán:

Bước 1: Đọc ký tự từ khối dữ liệu nguồn R

Bước 2: Ghi ký tự từ vị trí xuất hiện ch trong bảng mã vào khối dữ liệu đích D

Bước 3: Di chuyển ký tự lên đầu bảng mã

Bước 4: Lặp lại các bước trên cho đến khi kết thúc khối dữ liệu và được khối

dữ liệu mới R’ (R’ = L)

Xét tiếp ví dụ 1.6: Từ kết quả mã của MTF thuận ta có khối dữ liệu cần giải

mã Input(R) = “12|2|2|13|15|2|3|1|3|1|0|0|6”

Với bảng chữ cái 26 ký tự: T = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”

áp dụng thuật toánMTF nghịch ta được kết quả như bảng dưới đây :

Trang 29

Bảng 1.7 Mô tả quá trình biến đổi MTF nghịch

1.3.1 Mã hóa Huffman

Mã hóa Huffman được coi là phương pháp nén tốt, sử dụng các ký hiệu trong văn bản gốc để nén dữ liệu Trong bất cứ văn bản nào đều có các ký tự có số lần xuất hiện nhiều hơn so với các ký tự khác Ví dụ như trong tiếng Anh, các chữ cái A, E, N, H, T thường xuyên xuất hiện nhiều hơn các chữ cái J, Q, X

Xét các chữ cái có độ dài từ mã là 8-bits theo bảng mã ASCII Ý tưởng của

thuật toán Huffman là xét các chữ cái có tần số xuất hiện nhiều hơn sẽ có độ dài từ

mã ngắn hơn, các chữ cái xuất hiện ít hơn sẽ có độ dài từ mã dài hơn Do đó tổng

số bit của dữ liệu nén được sẽ giảm đáng kể so với dữ liệu nguồn

Mã Huffman là kỹ thuật nén dữ liệu dựa trên xác suất xuất hiện của các ký hiệu trong khối dữ liệu Các ký hiệu xuất hiện thường xuyên sẽ cần ít bít để biểu diễn hơn so với các ký hiệu không thường xuyên xuất hiện Để biểu diễn được các bit nhị phân này, ông đề xuất cách tổ chức ký hiệu trên cây nhị phân dựa vào tần

Trang 30

suất xuất hiện các ký hiệu Xét chuỗi ký hiệu “ABBAANDPANAMA” được trình bày cụ thể hơn trong mục 2.1.1 tại chương 2 của luận văn này Bảng 1.8 mô tả về

từ mã và độ dài từ mã tương ứng với mỗi ký hiệu xuất hiện trong mỗi

Ví dụ 1.7: Xét một dãy gồm 6 biểu tượng: Xác suất xuất hiện của 6 biểu

tượng được cho như hình dưới đây:

Hình 1.4a Mã hóa Huffman

Trước tiên, mã Huffman tính tổng đồng thời hai biểu tượng có xác suất nhỏ

nhất thành một biểu tượng mới với một xác suất mới (0,06 + 0,04 = 0,1), lặp lại quá trình đó cho đến khi chỉ còn một biểu tượng và xác suất bằng 1

Bước ngược lại để mã hóa mỗi xác suất với mã nhị phân bắt đầu với nguồn nhỏ nhất và làm trở lại nguồn ban đầu như hình 1.3b

Trang 31

Hình 1.4b Mã hóa Huffman ngược

1.3.2 Mã hóa số học

Nén số học là một dạng biến đổi từ mã bằng phương pháp Entropy được sử dụng trong nén dữ liệu không mất mát thông tin Thông thường một chuỗi các ký

tự được biểu diễn với một số lượng bít nhất định cho mỗi ký tự Ví dụ như 8-bits

đối với các ký tự mã ASCII Khi chuỗi ký tự đó được chuyển đổi sang dưới dạng

mã số học, các ký tự thường xuyên xuất hiện sẽ được lưu với số bit ít hơn so với các ký hiệu không xuất hiện thường xuyên Mã số học khác với một số dạng mã Entropy khác như mã Huffman Mã số học mã hóa toàn bộ thông điệp thành số

thực n chính xác đơn (single number) (0.0≤ n < 1.0)

Mã hóa số học dựa trên xác suất xuất hiện của các biểu tượng trong thông điệp,

quá trình bắt đầu với nửa khoảng [0,1), các biểu tượng có xác suất xuất hiện của

chúng được đặt vào trong một khoảng con gồm tần số mà nó giữ trong thông điệp

Ví dụ 1.8: Giả sử ta mã hóa một dãy a 1 a 2 a 3 a 4 với xác suất được cho trong hình 1.4

Hình 1.5 Xác suất và khoảng con khởi tạo của biểu

Vì biểu tượng đầu tiên của thông điệp đang được mã hóa, khoảng thông điệp

khởi tạo được thu hẹp với [0.0, 0.2) Tiếp theo chia khoảng thông điệp thành

Trang 32

khoảng con nhỏ hơn với biểu tượng tiếp theo a 2 , cung cấp một khoảng con [0.04, 0.08) Với biểu tượng tiếp theo a 3 ,khoảng được phân chia thành một khoảng con

mới với [0.056, 0.072) Tiếp tục quá trình này, ta được khoảng cuối cùng [0.0688, 0.06752) Dãy các biểu tượng có thể được mã hóa với bất kỳ số nào trong biểu diễn

khoảng dữ liệu[3]

Hình 1.5 cho ta thấy quá trình cơ bản của mã hóa số học Đó là 5 biểu tượng

của thông điệp và 4 biểu tượng nguồn của dữ liệu được mã hóa

Hình 1.6 Mã hóa số học

1.4 Mã hóa độ dài (RLE)

RLE (Run Length Encoding) là phương pháp mã hóa độ dài ký hiệu Thuật toán này nhận biết các ký hiệu xuất hiện thường xuyên liên tục và ghi nhận độ dài

của các ký hiệu này

RLE rất có hiệu quả trong nén dữ liệu đối với dữ liệu xuất hiện liên tiếp các

ký hiệu như hình ảnh; Trong hình ảnh, ví dụ như màu nền của một bức tranh có rất nhiều màu trùng nhau đứng cạnh nhau Còn trong văn bản thì rất ít xuất hiện liên tiếp ký hiệu Vì vậy thuật toán RLE được sử dụng ngay sau phương pháp BWT Bởi

vì phương pháp BWT tạo ra rất nhiều các ký hiệu lặp lại liên tiếp

Ý tưởng chính của phương pháp RLE rất đơn giản, nếu có ‘aaaaaaa’ thì ta kết xuất ra ‘aa’ và số lần xuất hiện ký hiệu này

aaaaaaaa

3 byte

Trang 33

Hình 1.7 Phương pháp nén RLE (1)

Ở đây byte thứ ba trong dữ liệu nén là ký hiệu có số thứ tự trong bảng mã là

6 Nghĩa là ta coi số lần ký hiệu lặp là một byte nếu số lần lặp nhỏ hơn 256 Nếu số lần lặp là lớn hơn 256 thì ta kết xuất ký hiệu gốc và số lần lặp là 255, sau đó phải ghi nhận số lần lặp mới với ký hiệu gốc này Điều này minh họa như sau:

Hình 1.8 Phương pháp nén RLE (2)

Vấn đề nảy sinh đối với các ký hiệu không lặp lại thì ta không nên nén chúng

Trong bảng 1.9 mô tả chi tiết với các trường hợp xuất hiện ký hiệu khác nhau[3]:

Bảng 1.9 Mô tả các trường hợp xuất hiện các ký hiệu khi nén

Dữ liệu nguồn Dữ liệu nén

1.5 Khảo sát đặc thù truyền tin

Theo nghĩa thông thường, thông tin là điều hiểu biết về một sự kiện, một hiện tượng nào đó, thu nhận được qua khảo sát, đo lường, trao đổi, nghiên cứu, v.v…Kỹ thuật về thông tin được phát triển đầu tiên là kỹ thuật truyền tin Việc nghiên cứu lý thuyết truyền tin vào cuối những năm 40 đã làm cho thông tin trở thành đối tượng của nghiên cứu khoa học

Thông tin thường bao gồm các hoạt động như: Thu thập, lựa chọn, sắp xếp, lưu trữ, tìm kiếm, chế biến, truyền đưa, khai thác và sử dụng thông tin Một quá trình gồm các hoạt động đó nhằm đạt được một số mục đích nhất định thường gọi chung là quá trình xử lý thông tin

Dữ liệu là những tín hiệu bao gồm có con số, chữ viết, âm thanh, hình ảnh, sắc màu,… Khi các dữ liệu được tập hợp lại có hệ thống, chúng giúp con người nhận biết về một vật thể, một sự kiện, một hiện tượng, thì trở thành thông tin

Trang 34

Thông tin thường được biểu diễn qua các hình thức, các dữ liệu có hệ thống như các chuỗi dữ liệu, lời nói, câu viết, âm thanh, hình ảnh,

Lượng thông tin tùy thuộc vào độ dài ngắn của hình thức biểu diễn nó Lượng thông tin chưa nói lên chất lượng của thông tin Thông tin có nhiều mức độ chất lượng khác nhau Các dữ liệu thu thập ban đầu qua các cuộc điều tra, khảo sát được tập hợp lại để giúp con người hay máy nhận biết về một sự vật hiện tượng nào

đó Qua đó phân tích, xử lý những thông tin có giá trị hơn, hiểu được bản chất, sự việc, hiện tượng Biết xử lý khối lượng lớn thông tin có thể tìm ra các mối liên hệ bên trong, các đặc tính có tính quy luật lúc đó thông tin trở thành tri thức, ở mức cao hơn xử lý thông tin có thể đưa ra các dự báo để giải quyết sự việc, hiện tượng

“nhanh”, “kịp thời”, “chính xác” từ đó tùy thuộc vào bản chất dữ liệu để lựa chọn cách thức truyền tin

1.5.1 Quá trình truyền tin

Quá trình truyền tin là quá trình truyền thông tin từ nơi này đến nơi khác theo yêu cầu xa, nhanh, đúng đủ (chính xác) Ba yêu cầu giản dị này không phải luôn được mọi người hiểu chính xác và lịch sử cũng đòi hỏi bao cuộc cách mạng kỹ thuật mới ngày càng thực hiện tốt hơn những điều này Để thực hiện những điều

này chúng ta cần trả lời 3 câu hỏi sau: Thế nào là nhanh? Thế nào là kịp thời? Thế nào là đúng đủ [1]?

Nhanh ở đây không phải là tốc độ ánh sáng Nhanh ở đây là tốc độ truyền tin,

nó thể hiện việc đáp ứng thời gian thực đối với yêu cầu sử dụng

Kịp thời trong truyền tin là những thông tin được gửi và nhận đúng lúc trong

những sự việc xảy ra gấp gáp nhưng kịp thời phản ánh sự việc, hiện tượng Ví dụ:

Khi nhận được thông báo về dự báo thời tiết, “có bão” những con thuyền đã di chuyển từ khơi xa về gần bờ, cơn bão mới ập đến thì đó được gọi là “kịp thời” nhận

và xử lý thông tin

Đúng đủ trong truyền tin là một khái niệm luôn được quan tâm, nhưng nó

cũng không được hiểu với nghĩa tuyệt đối một trăm phần trăm Mà được hiểu với tỷ

lệ sai số ít nhất khi người sử dụng có thể chấp nhận được

Hạn chế đối với 3 yêu cầu truyền tin nói trên chính là các yếu tố công suất, độ rộng băng tần kênh truyền và can nhiễu (ở đây mới đề cập đến can nhiễu do ồn chứ chưa nói đến các can nhiễu đặc thù khác ảnh hướng đến tryền tin như can nhiễu do

Trang 35

chuyển động, do hiệu ứng đa đường truyền…) Công suất phát tin càng lớn, thì càng truyền tin đi xa hơn Băng truyền dẫn càng rộng thì tốc độ thông tin càng nhanh

Bên cạnh ba yêu cầu truyền tin nói trên thuần túy mang tính kỹ thuật, còn có một yêu cầu nữa cũng không thể thiếu khi thiết kế các mô hình tryền tin là yêu cầu

về kinh tế, hiệu suất và giá thành Yêu cầu này cũng thường xuyên được phân tích gắn liền với những yêu cầu kỹ thuật

Để bắt đầu ta nêu ra một hệ thống truyền tin tiêu biểu như hình 1.9 Hệ thống

này luôn có 3 phần cơ bản đó là: Bộ phát, kênh truyền và bộ thu Bộ phát chuyển tín hiệu tệp tin tạo ra từ một nguồn tin thành tín hiệu phát dạng thích hợp để truyền được trên kênh truyền Tín hiệu thu được sau kênh truyền là một phiên bản của tín hiệu phát bị làm méo do kênh truyền Nhiệm vụ của bộ thu là phải tạo lại tín hiệu gốc (tín hiệu tin) như bên phát từ phiên bản nhận được này, rồi từ đó tạo lại bản tin

Hình 1.9 Các bộ phận của một hệ truyền tin

Phần này đưa ra một số những khảo sát chính liên quan đến quá trình phát triển của kỹ thuật truyền tin:

 Tiếng nói: Tiếng nói hay ngôn ngữ nói đóng vai trò nền tảng trong thông tin

xã hội Đó là phương tiện truyền tin thô sơ nhất, nó không lưu trữ được thông tin theo thời gian và khả năng truyền rất hạn chế trong không gian Tuy nhiên, mỗi con người chúng ta tồn tại rất lâu nhờ phương thức truyền tin này

 Chữ viết: Chữ viết hay văn tự được ghi lại ngôn ngữ nói đó là một thứ kỹ thuật cách mạng Nhờ đó ghi lại được các thông tin Ngày nay, sau khi ra đời chữ viết đã được dùng làm kỹ thuật truyền thông, do đó nó biến đổi sâu sắc các phương thức giao lưu, các phương thức truyền thông tin  giúp con người trao đổi thông tin từ xa, truyền tin qua mạng,

Trang 36

 Hình ảnh: Hình ảnh thường được biểu diễn bằng mảng hai chiều các điểm ảnh mà mỗi điểm ảnh được kết hợp với mã màu của nó Trong ngôn ngữ hình ảnh, mỗi điểm ảnh diễn tả một sự việc, hiện tượng, và đại diện cho thông tin, nội dung tin muốn truyền đi

 Video: Thể hiện được rõ nét quá trình thông tin truyền tin dưới dạng tiếng nói, chữ viết và hình ảnh Phương thức truyền tin dạng video được tổng hợp

từ ba phương thức truyền: Tiếng nói, chữ viết, âm thanh

Sau khi được xử lý (lưu trữ, biến đổi, truyền thông) thông tin này lại được chuyển thành dạng thông tin mà mỗi con người hay máy có thể tiếp nhận được mà không giảm chất lượng của thông tin ban đầu

Việc ghi thông tin bằng kỹ thuật số là một bước tiến rất dài so với kỹ thuật tương đồng (analogue) dựa vào tín hiệu cơ hoặc tín hiệu điện

1.5.2 Truyền tin số

Truyền tin số có nhiều ưu điểm hơn kỹ thuật tương tự, trong đó chỉ sử dụng một hữu hạn dạng sóng (ký hiệu truyền tách biệt nhau) để truyền tin Mỗi dạng sóng truyền trong một khoảng thời gian xác định gọi là chu kỳ ký hiệu và là đại diện truyền của một dữ liệu tin[6] Ví dụ văn bản tiếng anh dùng 26 chữ cái, bộ đếm dùng 10 số, bản nhạc dùng 7 nốt và vài ký hiệu bổ sung,…

Khi vận dụng lý thyết thông tin vào kỹ thuật truyền tin số thường có những vấn đề sau đây đặt ra:

 Bản tin phải được biểu diễn (mã nguồn) với một số ít ký hiệu nhất, theo mã nhị phân thì tức là cần ít bit nhất Lý thuyết thông tin cho một giới hạn dưới về số bit tối thiểu cần để biểu diễn[6]

 Khi truyền tin mã nguồn cần được bổ sung thêm các bit (dư thừa) mà điều này làm tăng tốc độ bit, để có thể giảm được lỗi truyền bản tin (gọi

là kỹ thuật mã kênh điều khiển lỗi), song có một giới hạn trên về tốc độ truyền mà vượt qua nó không thể diều khiển lỗi được, đó là dung năng kênh qui định bởi độ rộng băng tần kênh truyền và tỷ số tín hiệu/ồn

C = Blog2 (1 + SNR) b/s Trong đó:

+ B là độ rộng băng tần kệnh truyền

Trang 37

+ SNR là tỷ số công suất tín hiệu trên công suất ồn

+ C là giới hạn trên đối với tốc độ truyền tin cậy tính bằng bit/giây

Công thức này cho thấy có sự chuyển đổi giữa B và SNR Đồng thời cả ba yếu tố: Công suất, độ rộng băng tần và ồn kệnh cùng tham gia qui định mức độ

“nhanh” của truyền tin như đã nêu ở trên

1.6 Kết luận

Trong chương này học viên trình bày những khái niệm cơ sở, ý tưởng, thuật toán liên quan thông tin, truyền tin Ngoài ra, học viên có nêu thêm một số khái niệm liên quan đến thông tin, nén dữ liệu và đưa ra một số ví dụ, dẫn chứng cụ thể

để dẫn dắt vấn đề cho luận văn

Trang 38

CHƯƠNG 2: TRUYỀN TIN KẾT HỢP VỚI KỸ THUẬT

BIẾN ĐỔI DỮ LIỆU

Mỗi quy trình truyền tin được trình bày cụ thể dựa trên các kỹ thuật biến đổi

dữ liệu BWT, MTF kết hợp với mã hóa EC (Entropy Coding) Chúng biến đổi làm thay đổi dữ liệu đầu vào (Input) và cho kết quả đầu ra (Output) tốt hơn qua 4 quy trình chính trong chương II và mỗi quy trình sẽ xử lý, biến đổi một khối dữ liệu đầu vào cho các giai đoạn tiếp theo để được kết quả tối ưu nhất

2.1 Các phương pháp biến đổi dữ liệu

2.1.1 Phương pháp Entropy

Áp dụng phương pháp nén Huffman: Khi xét một nguồn tin các ký hiệu không phải xuất hiện với các tần suất như nhau mà có một số ký hiệu xuất hiện thường xuyên hơn những ký hiệu khác Phương pháp mã hóa Huffman được xây dựng dựa trên các đặc điểm này Thay vì phải dùng một số bit nhất định để biểu diễn các ký hiệu (ví dụ như bảng mã ASSCII) Mã hóa Huffman sẽ biểu diễn bằng

số bit (độ dài từ mã) khác nhau Phương pháp mã hóa này dựa trên mô hình thống

kê có nghĩa là dựa vào xác suất có được từ mô hình thống kê, các ký hiệu có tần suất xuất hiện cao sẽ được mã hóa ít bit hơn những ký hiệu có tần suất thấp Hay nói cách khác những ký hiệu có tần suất càng lớn thì độ dài từ mã càng ngắn và ngược lại[4]

Dữ liệu vào của thuật toán Huffman là chuỗi ký tự Dữ liệu ra là chuỗi các bit nhị phân tương ứng với chuỗi ký tự vào Để giải quyết bài toán này ta xét thuật toán nén Huffman:

 Đọc dữ liệu vào: Tổ chức dữ liệu vào sao cho có thể đọc được từng cụm số ở chuỗi ký tự vào (định dạng tệp tin dưới dạng byte) mỗi tin đọc vào là một byte có mã tương ứng trong bảng mã ASCII

 Mã hóa mỗi ký tự vào: Xây dựng cây nhị phân theo nguyên tắc sau:

+ Sắp xếp danh sách L các ký hiệu tăng dần theo tần số xuất hiện

+ Coi mỗi ký hiệu là một nút lá của cây nhị phân, mỗi nút lá là một cây con

Trang 39

+ Kết hợp hai cây con có gốc là giá trị tần số xuất hiện của hai cây con

này, sau đó bổ sung vào danh sách L theo thứ tự tăng dần của tần số xuất

hiện Thực hiện bước này cho đến khi chỉ còn một gốc

 Kết xuất từ mã cho mỗi ký tự vào (nén): Trong quá trình duyệt nếu đi

sang cây con trái ta có bit 0, còn nếu đi sang cây con phải ta có bit 1

Đường đi từ nút gốc tới nút lá là một độ dài từ mã

Các từ mã tương ứng mỗi ký hiệu được xác định dựa vào cấu trúc cây mã

Đối với mã ASSCII sẽ dùng 8 bits để biểu diễn chuỗi ký hiệu Theo phương pháp

mã hóa Huffman ta xây dựng cây nhị phân cho khối dữ liệu đầu vào là:

Ví dụ 2.1: Giả sử ta truyền thông tin về dự báo thời tiết của tỉnh Hòa Bình 7

ngày trong tháng 9 năm 2015 Mỗi ngày dự báo thời tiết 3 lần như thế là số lần

truyền tin đi là 21 lần vậy ta có dãy số cần truyền: 23 25 22 23 26 23 24 27 24 25 28

24 25 27 24 26 28 25 23 25 23

Xây dựng bảng tần số xuất hiện nhiệt độ của các con số:

Bảng 2.1 Bảng tần xuất số lần xuất hiện của dãy số

Ta có thể sắp xếp các số theo tần số xuất hiện tăng dần:

Bảng 2.2 Bảng tần xuất số lần xuất hiện tăng dần của dãy số

Dựa trên kết quả sắp tăng dần số lần xuất hiện của bảng 2.2 ta minh họa nén

cây Huffman như hình dưới đây:

Trang 40

Hình 2.1 Minh họa nén theo phương pháp Huffman Trên mỗi nhánh của cây nhị phân ta gán các giá trị 0 và 1 vào cây Giá trị 0 gán cho nhánh bên trái, giá trị 1 gán cho nhánh bên phải Sau khi gán xong giá trị 0

và 1 ta được cây nhị phân như sau, hay còn được gọi là cây Huffman

Hình 2.2 Cây Huffman

Ngày đăng: 16/04/2017, 17:03

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Nguyễn Bình, (2006), Lý thuyết thông tin, Trung tâm đào tạo bưu chính viễn thông 1 Sách, tạp chí
Tiêu đề: Lý thuyết thông tin
Tác giả: Nguyễn Bình
Năm: 2006
[2] Nguyễn Xuân Huy, (2015), Phương pháp nghiên cứu khoa học, Đại học Thái Nguyên Sách, tạp chí
Tiêu đề: Phương pháp nghiên cứu khoa học
Tác giả: Nguyễn Xuân Huy
Nhà XB: Đại học Thái Nguyên
Năm: 2015
[3] Nguyễn Xuân Huy, (2015), Sáng tạo trong thuật toán và lập trình, Thông tin và truyền thông Sách, tạp chí
Tiêu đề: Sáng tạo trong thuật toán và lập trình
Tác giả: Nguyễn Xuân Huy
Nhà XB: Thông tin và truyền thông
Năm: 2015
[4] Hồ Văn Quân, (2010), Lý thuyết thông tin, Đại học Bách Khoa Thành phố Hồ Chí Minh Sách, tạp chí
Tiêu đề: Lý thuyết thông tin
Tác giả: Hồ Văn Quân
Nhà XB: Đại học Bách Khoa Thành phố Hồ Chí Minh
Năm: 2010
[5] Đặng Văn Chuyết, Nguyễn Tuấn Anh, (1998), Cơ sở lý thuyết truyền tin - Tập 1 và 2, Nhà xuất bản Giáo dục Sách, tạp chí
Tiêu đề: Cơ sở lý thuyết truyền tin - Tập 1 và 2
Tác giả: Đặng Văn Chuyết, Nguyễn Tuấn Anh
Nhà XB: Nhà xuất bản Giáo dục
Năm: 1998
[6] Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ, (2012), Xử lý tín hiệu số, Đại học Công nghệ, Đại học Quốc gia Hà Nội.Tài liệu tiếng anh Sách, tạp chí
Tiêu đề: Xử lý tín hiệu số
Tác giả: Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Nhà XB: Đại học Công nghệ
Năm: 2012
[8] Fenwick, P. (2002), “Burrows Wheeler Compression with Variable-Length Integer Codes”, Software - Practice and Experience, Vol 32, No 13, Nov Sách, tạp chí
Tiêu đề: Burrows Wheeler Compression with Variable-Length Integer Codes
Tác giả: Fenwick, P
Nhà XB: Software - Practice and Experience
Năm: 2002
[9] G. Manzini (1999), “The Burrows-Wheeler Transform: Theory and Practice” in Proceedings 24th International Symposium (Lecture Notes in Computer Science Vol.1672), Szklarska Poreba, Poland, Sept Sách, tạp chí
Tiêu đề: The Burrows-Wheeler Transform: Theory and Practice
Tác giả: G. Manzini
Nhà XB: Lecture Notes in Computer Science
Năm: 1999
[10] Robert B.Ash (1990), Information Theory, Courier Corporation Sách, tạp chí
Tiêu đề: Information Theory
Tác giả: Robert B. Ash
Nhà XB: Courier Corporation
Năm: 1990
[11] M. Burrows and D. J. Wheeler (1994), A Block–sorting Lossless Data Compression Algorithm, SRC Research Report 124, Digital Systems Research Center, Palo Alto, CA Sách, tạp chí
Tiêu đề: A Block–sorting Lossless Data Compression Algorithm
Tác giả: M. Burrows, D. J. Wheeler
Nhà XB: Digital Systems Research Center
Năm: 1994

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w