Đăng ký Đăng nhập
Trang chủ Các thuật toán gần đúng giải bài toán cây khung với chi phí định tuyến nhỏ nhất....

Tài liệu Các thuật toán gần đúng giải bài toán cây khung với chi phí định tuyến nhỏ nhất.

.PDF
143
694
105

Mô tả:

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI PHAN TẤN QUỐC CÁC THUẬT TOÁN GẦN ĐÚNG GIẢI BÀI TOÁN CÂY KHUNG VỚI CHI PHÍ ĐỊNH TUYẾN NHỎ NHẤT LUẬN ÁN TIẾN SĨ KHOA HỌC MÁY TÍNH Hà Nội –2015 i BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI PHAN TẤN QUỐC CÁC THUẬT TOÁN GẦN ĐÚNG GIẢI BÀI TOÁN CÂY KHUNG VỚI CHI PHÍ ĐỊNH TUYẾN NHỎ NHẤT Chuyên ngành: Khoa học máy tính Mã số: 62480101 LUẬN ÁN TIẾN SĨ KHOA HỌC MÁY TÍNH NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS. Nguyễn Đức Nghĩa Hà Nội –2015 ii LỜI CAM ĐOAN Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi. Các số liệu, kết quả nghiên cứu được trình bày trong luận án là hoàn toàn trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác. GIẢNG VIÊN HƯỚNG DẪN NGHIÊN CỨU SINH PGS.TS Nguyễn Đức Nghĩa Phan Tấn Quốc i LỜI CẢM ƠN Tôi xin trân trọng cảm ơn thầy Nguyễn Đức Nghĩa đã nhiệt tình hướng dẫn tôi học tập, nghiên cứu và thực hiện luận án này. Tôi xin trân trọng cảm ơn lãnh đạo và các chuyên viên Viện Công nghệ Thông tin và Truyền thông, Viện Đào tạo Sau Đại học - trường Đại học Bách khoa Hà Nội đã quan tâm, hỗ trợ tôi trong quá trình tôi làm nghiên cứu sinh tại Trường. Tôi xin trân trọng cảm ơn các thầy cô ở Bộ môn Khoa học máy tính Viện Công nghệ Thông tin và Truyền thông trường Đại học Bách khoa Hà Nội đã giúp đỡ tôi trong hơn 5 năm làm nghiên cứu sinh tại Bộ môn. Các thầy cô đã nhiệt tình hướng dẫn tôi thực hiện các học phần tiến sĩ, các chuyên đề tiến sĩ, tiểu luận tổng quan; tham dự các buổi seminar định kỳ, các buổi bảo vệ luận án tiến sĩ các cấp và có những góp ý quý báu để tôi hoàn thiện luận án này. Tôi xin trân trọng cảm ơn các thầy cô trong và ngoài trường đã tham gia đọc và nhận xét luận án ở các cấp Bộ môn, cấp Cơ sở, cấp phản biện độc lập, cấp Trường; đã cho tôi những ý kiến quý báu để tôi hoàn thiện luận án này. Trân trọng cảm ơn Ban Giám hiệu trường Đại học Sài Gòn, các đồng nghiệp tại khoa Công nghệ Thông tin trường Đại học Sài Gòn và gia đình đã tạo điều kiện và giúp đỡ tôi trong thời gian tôi làm nghiên cứu sinh. Hà Nội, tháng 5-2015 Tác giả luận án Phan Tấn Quốc ii 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 VÀ CHỮ VIẾT TẮT............................................................... vii DANH MỤC CÁC BẢNG ........................................................................................................ ix DANH MỤC CÁC HÌNH VẼ ................................................................................................... xi MỞ ĐẦU .................................................................................................................................... 1 Chương 1. TỔNG QUAN........................................................................................................... 5 1.1.BÀI TOÁN MRCST ...................................................................................................... 5 1.1.1.Một số định nghĩa ................................................................................................ 5 1.1.2.Thuật toán tính chi phí định tuyến của cây khung .............................................. 7 1.1.3.Đánh giá chi phí định tuyến của cây khung ........................................................ 9 1.2.ỨNG DỤNG ................................................................................................................ 11 1.2.1.Ứng dụng của bài toán MRCST trong lĩnh vực thiết kế mạng .......................... 11 1.2.2.Ứng dụng của bài toán MRCST trong lĩnh vực tin sinh học.............................. 11 1.3.CÁC NGHIÊN CỨU LIÊN QUAN BÀI TOÁN MRCST........................................... 12 1.3.1.Thuật toán giải đúng .......................................................................................... 12 1.3.2.Thuật toán gần đúng cận tỉ lệ ............................................................................ 13 1.3.3.Thuật toán heuristic ........................................................................................... 16 1.3.4.Thuật toán metaheuristic ................................................................................... 18 1.3.5.Danh sách các thuật toán giải bài toán MRCST hiện biết .................................. 25 1.4.TIÊU CHÍ ĐÁNH GIÁ THUẬT TOÁN ..................................................................... 26 1.5.HỆ THỐNG DỮ LIỆU THỰC NGHIỆM CHUẨN ................................................... 29 1.5.1.Đồ thị đầy đủ Euclid .......................................................................................... 30 1.5.2.Đồ thị đầy đủ ngẫu nhiên .................................................................................. 30 1.5.1.Đồ thị thưa ......................................................................................................... 31 1.6.KHẢO SÁT THỰC NGHIỆM CÁC THUẬT TOÁN GIẢI BÀI TOÁN MRCST ..... 32 1.6.1.Cấu hình máy tính thực nghiệm các thuật toán ................................................. 32 1.6.2.Chất lượng lời giải ............................................................................................. 32 1.6.3.Thời gian tính .................................................................................................... 34 1.6.4.Hình vẽ minh họa so sánh chất lượng của các thuật toán hiện biết ................... 36 iii 1.7.KẾT LUẬN CHƯƠNG 1 ............................................................................................ 37 Chương 2. THUẬT TOÁN TÌM KIẾM LEO ĐỒI .................................................................. 39 2.1.CÂY KHUNG LÂN CẬN........................................................................................... 39 2.2.THUẬT TOÁN HCSRI ............................................................................................... 40 2.2.1.Ý tưởng thuật toán HCSRI ................................................................................ 40 2.2.2.Sơ đồ thuật toán HCSRI .................................................................................... 41 2.2.3.Độ phức tạp của thuật toán HCSRI ................................................................... 42 2.3.THUẬT TOÁN HCSIR ............................................................................................... 42 2.3.1.Ý tưởng thuật toán HCSIR ................................................................................ 42 2.3.2.Sơ đồ thuật toán HCSIR .................................................................................... 43 2.3.3.Độ phức tạp của thuật toán HCSIR ................................................................... 44 2.4.THỰC NGHIỆM VÀ ĐÁNH GIÁ.............................................................................. 45 2.4.1.Môi trường thực nghiệm.................................................................................... 45 2.4.2.Tham số thực nghiệm ........................................................................................ 45 2.4.3.Chất lượng lời giải ............................................................................................. 45 2.4.4.Thời gian tính .................................................................................................... 51 2.4.5.Hình vẽ minh họa chất lượng HCSRI, HCSIR với các thuật toán khác ............ 53 2.5.KẾT LUẬN CHƯƠNG 2 ............................................................................................ 55 Chương 3. THUẬT TOÁN DI TRUYỀN ................................................................................ 56 3.1.THUẬT TOÁN GST ................................................................................................... 56 3.1.1.Tạo quần thể ban đầu......................................................................................... 56 3.1.2.Phép lai .............................................................................................................. 57 3.1.3.Phép đột biến ..................................................................................................... 60 3.1.4.Phép chọn lọc .................................................................................................... 62 3.1.5.Sơ đồ thuật toán GST......................................................................................... 63 3.1.6.Độ phức tạp của thuật toán GST ........................................................................ 64 3.2.THỰC NGHIỆM VÀ ĐÁNH GIÁ.............................................................................. 64 3.2.1.Môi trường thực nghiệm.................................................................................... 64 3.2.2.Tham số thực nghiệm ........................................................................................ 65 3.2.3.Chất lượng lời giải ............................................................................................. 65 3.2.4.Thời gian tính .................................................................................................... 69 3.2.5.Hình vẽ minh họa chất lượng thuật toán GST với các thuật toán khác ............. 70 3.3.KẾT LUẬN CHƯƠNG 3 ............................................................................................ 73 Chương 4. THUẬT TOÁN TÌM KIẾM TABU ....................................................................... 74 iv 4.1.THUẬT TOÁN TST .................................................................................................... 74 4.1.1.Ý tưởng và một số khái niệm của thuật toán tìm kiếm Tabu ............................ 74 4.1.2.Thuật toán TST tìm bước chuyển tốt nhất ......................................................... 75 4.1.3.Thuật toán TST cập nhật danh sách Tabu .......................................................... 76 4.1.4.Chiến lược đa dạng hóa lời giải của thuật toán TST .......................................... 76 4.1.5.Sơ đồ của thuật toán TST ................................................................................... 77 4.1.6.Độ phức tạp của thuật toán TST ........................................................................ 79 4.2.THỰC NGHIỆM VÀ ĐÁNH GIÁ.............................................................................. 79 4.2.1.Môi trường thực nghiệm.................................................................................... 79 4.2.2.Tham số thực nghiệm ........................................................................................ 79 4.2.3.Chất lượng lời giải ............................................................................................. 80 4.2.4.Thời gian tính .................................................................................................... 84 4.2.5.Hình vẽ minh họa chất lượng thuật toán TST với các thuật toán khác .............. 86 4.3.KẾT LUẬN CHƯƠNG 4 ............................................................................................ 88 Chương 5. THUẬT TOÁN BẦY ONG ................................................................................... 89 5.1.THUẬT TOÁN BẦY ONG CƠ BẢN ........................................................................ 89 5.2.THUẬT TOÁN BST .................................................................................................... 91 5.2.1.Tạo quần thể ban đầu......................................................................................... 91 5.2.2.Phân nhóm các cá thể ........................................................................................ 92 5.2.3.Tìm cây khung lân cận ...................................................................................... 93 5.2.4.Chiến lược đa dạng hóa lời giải......................................................................... 95 5.2.5.Sơ đồ của thuật toán BST................................................................................... 96 5.2.6.Độ phức tạp của thuật toán BST ........................................................................ 98 5.3.THỰC NGHIỆM VÀ ĐÁNH GIÁ.............................................................................. 98 5.3.1.Môi trường thực nghiệm.................................................................................... 98 5.3.2.Tham số thực nghiệm ........................................................................................ 98 5.3.3.Chất lượng lời giải ............................................................................................. 99 5.3.4.Thời gian tính .................................................................................................. 104 5.3.5.Hình vẽ minh họa chất lượng thuật toán BST với các thuật toán khác............ 106 5.3.6.Hình vẽ minh họa độ lệch chuẩn của các thuật toán ....................................... 109 5.4.KẾT LUẬN CHƯƠNG 5 .......................................................................................... 111 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN.............................................................................. 112 KẾT LUẬN ..................................................................................................................... 112 HƯỚNG PHÁT TRIỂN .................................................................................................. 113 v DANH MỤC CÁC CÔNG TRÌNH ĐÃ CÔNG BỐ CỦA LUẬN ÁN ................................... 114 TÀI LIỆU THAM KHẢO ...................................................................................................... 115 PHỤ LỤC. KẾT QUẢ THỰC NGHIỆM TỪ CÁC CÔNG TRÌNH LIÊN QUAN ............... 119 PL1. KẾT QUẢ THỰC NGHIỆM CÁC THUẬT TOÁN WONG, ADD, CAMPOS ..... 119 PL2. KẾT QUẢ THỰC NGHIỆM CÁC THUẬT TOÁN ESCGA, BCGA .................... 122 PL3. KẾT QUẢ THỰC NGHIỆM CÁC THUẬT TOÁN SHC, PBLS .......................... 123 PL4. KẾT QUẢ THỰC NGHIỆM CÁC THUẬT TOÁN PABC, ABC+LS................... 126 PL5. SO SÁNH CHI PHÍ ĐỊNH TUYẾN CỦA CÁC THUẬT TOÁN ......................... 128 vi DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT Từ viết tắt MRCST Tiếng Anh Tiếng Việt Minimum Routing Cost Spanning Cây khung chi phí định tuyến nhỏ nhất Tree OCST Optimal Communication Cây khung truyền thông tối ưu Spanning Tree BDMRCST Benchmark Data For MRCST Bộ dữ liệu chuẩn cho bài toán MRCST SPT Shortest Path Tree Cây đường đi ngắn nhất C(T) Routing Cost Chi phí định tuyến cây khung T l(e) Routing Load Tải định tuyến của cạnh e SHC Stochastic Hill Climber Search Thuật toán tìm kiếm leo đồi ngẫu nhiên Algorithm LS Local Search Algorithm Thuật toán tìm kiếm địa phương TABU Tabu Search Algorithm Thuật toán tìm kiếm Tabu Genetic Algorithm Thuật toán di truyền Artificial Bee Colony Algorithm Thuật toán bầy ong nhân tạo GA PABC ABC+LS BEE PTAS Artificial Bee Colony Algorithm + Thuật toán bầy ong nhân tạo kết hợp với Local Search thuật toán tìm kiếm địa phương. Bee Algorithm Thuật toán bầy ong Branch and Bound Algorithm Thuật toán nhánh cận Column Generation Method Phương pháp sinh cột Polynomial Time Approximation Sơ đồ xấp xỉ thời gian đa thức Scheme SD MSA HCSRI α -Approximation Algorithm Thuật toán gần đúng cận tỉ lệ α Network Optimization Tối ưu hóa mạng Standard Deviation Độ lệch chuẩn Bioinformatics Tin sinh học Multiple Sequence Alignments So sánh đa trình tự HCSRI-MRCST Thuật toán tìm kiếm leo đồi dạng loại trước-chèn sau giải bài toán MRCST vii HCSIR HCSIR-MRCST Thuật toán tìm kiếm leo đồi dạng chèn trước-loại sau giải bài toán MRCST GST GA-MRCST Thuật toán di truyền giải bài toán MRCST TST TABU-MRCST Thuật toán Tabu giải bài toán MRCST BST BEE-MRCST Thuật toán bầy ong giải bài toán MRCST viii DANH MỤC CÁC BẢNG Bảng 1.1. Danh sách các thuật toán điển hình giải bài toán MRCST .............................. 26 Bảng 1.2.a. Thông tin các đồ thị đầy đủ Euclid trong BDMRCST..................................... 30 Bảng 1.2.b. Thông tin các đồ thị đầy đủ ngẫu nhiên trong BDMRCST ............................. 31 Bảng 1.2.c. Thông tin các đồ thị thưa trong BDMRCST .................................................... 31 Bảng 1.3. Cấu hình máy tính thực nghiệm các thuật toán............................................... 32 Bảng 1.4.a. Thời gian tính các thuật toán trước khi quy đổi .............................................. 35 Bảng 1.4.b. Thời gian tính các thuật toán sau khi quy đổi ................................................. 35 Bảng 2.1. Kết quả thực nghiệm thuật toán HCSRI, HCSIR trên đồ thị đầy đủ Euclid .... 48 Bảng 2.2. Kết quả thực nghiệm HCSRI, HCSIR trên đồ thị đầy đủ ngẫu nhiên ............. 49 Bảng 2.3. Kết quả thực nghiệm các thuật toán HCSRI, HCSIR trên đồ thị thưa ............ 49 Bảng 2.4. So sánh chi phí định tuyến thuật toán HCSRI với các thuật toán khác ........... 50 Bảng 2.5. So sánh chi phí định tuyến thuật toán HCSIR với các thuật toán khác ........... 51 Bảng 2.6. So sánh thời gian tính thuật toán HCSRI với các thuật toán khác .................. 52 Bảng 2.7. So sánh thời gian tính thuật toán HCSIR với các thuật toán khác .................. 53 Bảng 3.1. Kết quả thực nghiệm thuật toán GST trên đồ thị đầy đủ Euclid ..................... 67 Bảng 3.2. Kết quả thực nghiệm thuật toán GST trên đồ thị đầy đủ ngẫu nhiên .............. 68 Bảng 3.3. Kết quả thực nghiệm thuật toán GST trên đồ thị thưa .................................... 68 Bảng 3.4. So sánh chi phí định tuyến thuật toán GST với các thuật toán khác ............... 69 Bảng 3.5. So sánh thời gian tính thuật toán GST với các thuật toán khác ...................... 70 Bảng 4.1. Kết quả thực nghiệm thuật toán TST trên đồ thị đầy đủ Euclid ...................... 82 Bảng 4.2. Kết quả thực nghiệm TST trên đồ thị đầy đủ ngẫu nhiên................................ 83 Bảng 4.3. Kết quả thực nghiệm thuật toán TST trên đồ thưa .......................................... 83 Bảng 4.4. So sánh chi phí định tuyến thuật toán TST với các thuật toán khác................ 84 Bảng 4.5.a. So sánh thời gian tính của thuật toán TST với các thuật toán dạng cá thể ...... 85 Bảng 4.5.b. So sánh thời gian tính của thuật toán TST với các thuật toán dạng quần thể .. 85 Bảng 5.1. Kết quả thực nghiệm thuật toán BST trên đồ thị đầy đủ Euclid .................... 101 Bảng 5.2. Kết quả thực nghiệm thuật toán BST trên đồ thị đầy đủ ngẫu nhiên ............ 102 Bảng 5.3. Kết quả thực nghiệm thuật toán BST trên đồ thị thưa ................................... 102 Bảng 5.4. So sánh thực nghiệm của thuật toán BST với các thuật toán đơn lời giải ..... 103 Bảng 5.5. So sánh thực nghiệm của thuật toán BST với các thuật toán đa lời giải ....... 104 Bảng 5.6. Các bộ dữ liệu BST cho lời giải chất lượng tốt hơn thuật toán ABC+LS...... 104 ix Bảng 5.7. So sánh thời gian tính thuật toán BST với các thuật toán đơn lời giải .......... 106 Bảng 5.8. So sánh thời gian tính thuật toán BST với các thuật toán đa lời giải ............ 106 PL1.a. Thực nghiệm WONG, ADD, CAMPOS trên đồ thị đầy đủ Euclid ................ 120 PL1.b. Thực nghiệm WONG, ADD, CAMPOS trên đồ thị đầy đủ ngẫu nhiên ........ 121 PL1.c. Thực nghiệm thuật toán WONG, ADD, CAMPOS trên đồ thị thưa. ............. 121 PL2.a. Thực nghiệm thuật toán ESCGA, BCGA trên đồ thị đầy đủ Euclid. ............. 122 PL2.b. Kết quả thực nghiệm ESCGA, BCGA trên đồ thị đầy đủ ngẫu nhiên ........... 123 PL3.a. Kết quả thực nghiệm thuật toán SHC, PBLS trên đồ thị đầy đủ Euclid. ....... 124 PL3.b. Kết quả thực nghiệm thuật toán SHC, PBLS trên đồ thị đầy đủ ngẫu nhiên. 125 PL3.c. Kết quả thực nghiệm các thuật toán SHC, PBLS trên đồ thị thưa................. 125 PL4.a. Kết quả thực nghiệm thuật toán PABC, ABC+LS trên đồ thị đầy đủ Euclid 126 PL4.b. Kết quả thực nghiệm PABC, ABC+LS trên đồ thị đầy đủ ngẫu nhiên.......... 127 PL4.c. Kết quả thực nghiệm thuật toán ABC+LS trên đồ thị thưa. .......................... 127 PL5. So sánh chi phí định tuyến cho tất cả các thuật toán .................................... 129 x DANH MỤC CÁC HÌNH VẼ Hình 1.1. Minh họa cách tính chi phí định tuyến của một cây theo định nghĩa ................... 6 Hình 1.2. Minh họa cho thuật toán tìm chi phí định tuyến của một cây khung ................... 8 Hình 1.3. Đồ thị vô hướng liên thông có trọng số .............................................................. 14 Hình 1.4. Cây đường đi ngắn nhất xuất phát từ v1............................................................. 15 Hình 1.5. Minh họa chất lượng của các thuật toán qua bộ dữ liệu e50-01 ......................... 36 Hình 1.6. Minh họa chất lượng của các thuật toán qua bộ dữ liệu e100-01 ....................... 36 Hình 1.7. Minh họa chất lượng của các thuật toán qua bộ dữ liệu e250-01 ....................... 36 Hình 1.8. Minh họa chất lượng của các thuật toán qua bộ dữ liệu rand100-01 ................. 37 Hình 1.9. Minh họa chất lượng của các thuật toán qua bộ dữ liệu rand300-01 ................. 37 Hình 2.1. Minh họa chất lượng HCSRI, HCSIR và các thuật toán khác qua e50-01 .......... 53 Hình 2.2. Minh họa chất lượng HCSRI, HCSIR và các thuật toán khác qua e100-01 ........ 53 Hình 2.3. Minh họa chất lượng HCSRI, HCSIR và các thuật toán khác qua e250-01 ........ 54 Hình 2.4. Minh họa chất lượng HCSRI, HCSIR và các thuật toán khác qua rand100-01 .. 54 Hình 2.5. Minh họa chất lượng HCSRI, HCSIR và các thuật toán khác qua rand300-01 .. 54 Hình 2.6. Minh họa chất lượng HCSRI, HCSIR và các thuật toán khác qua steinc-01 ...... 55 Hình 2.7. Minh họa chất lượng HCSRI, HCSIR và các thuật toán khác qua steind-01 ...... 55 Hình 3.1. Minh họa chất lượng GST và các thuật toán khác qua bộ dữ liệu e50-01 .......... 70 Hình 3.2. Minh họa chất lượng GST và các thuật toán khác qua bộ dữ liệu e100-01 ........ 71 Hình 3.3. Minh họa chất lượng GST và các thuật toán khác qua bộ dữ liệu e250-01 ........ 71 Hình 3.4. Minh họa chất lượng GST và các thuật toán khác qua bộ dữ liệu rand100-01 .. 71 Hình 3.5. Minh họa chất lượng GST và các thuật toán khác qua bộ dữ liệu rand300-01 .. 72 Hình 3.6. Minh họa chất lượng GST và các thuật toán khác qua bộ dữ liệu steinc-01 ...... 72 Hình 3.7. Minh họa chất lượng GST và các thuật toán khác qua bộ dữ liệu steind-01 ...... 72 Hình 4.1. Minh họa chất lượng TST và các thuật toán khác qua bộ dữ liệu e50-01 ........... 86 Hình 4.2. Minh họa chất lượng TST và các thuật toán khác qua bộ dữ liệu e100-01 ......... 86 Hình 4.3. Minh họa chất lượng TST và các thuật toán khác qua bộ dữ liệu e250-01 ......... 86 Hình 4.4. Minh họa chất lượng TST và các thuật toán khác qua bộ dữ liệu rand100-01 ... 87 Hình 4.5. Minh họa chất lượng TST và các thuật toán khác qua bộ dữ liệu rand300-01 ... 87 Hình 4.6. Minh họa chất lượng TST và các thuật toán khác qua bộ dữ liệu steinc-01 ....... 87 Hình 4.7. Minh họa chất lượng TST và các thuật toán khác qua bộ dữ liệu steind-01 ....... 88 Hình 5.1. Minh họa chất lượng BST và các thuật toán khác qua bộ dữ liệu e50-01 ........ 106 xi Hình 5.2. Minh họa chất lượng BST và các thuật toán khác qua bộ dữ liệu e100-01 ...... 107 Hình 5.3. Minh họa chất lượng BST và các thuật toán khác qua bộ dữ liệu e250-01 ...... 107 Hình 5.4. Minh họa chất lượng BST và các thuật toán khác qua bộ dữ liệu rand100-01. 107 Hình 5.5. Minh họa chất lượng BST và các thuật toán khác qua bộ dữ liệu rand300-01. 108 Hình 5.6. Minh họa chất lượng BST và các thuật toán khác qua bộ dữ liệu steinc-01 ..... 108 Hình 5.7. Minh họa chất lượng BST và các thuật toán khác qua bộ dữ liệu steind-01 ..... 108 Hình 5.8. Minh họa độ lệch chuẩn của các thuật toán qua bộ dữ liệu e50-01 .................. 109 Hình 5.9. Minh họa độ lệch chuẩn của các thuật toán qua bộ dữ liệu e100-01 ................ 109 Hình 5.10. Minh họa độ lệch chuẩn của các thuật toán qua bộ dữ liệu e250-01 ................ 109 Hình 5.11. Minh họa độ lệch chuẩn của các thuật toán qua bộ dữ liệu rand100-01 .......... 110 Hình 5.12. Minh họa độ lệch chuẩn của các thuật toán qua bộ dữ liệu rand300-01 .......... 110 Hình 5.13. Minh họa độ lệch chuẩn của các thuật toán qua bộ dữ liệu steinc-01 .............. 110 Hình 5.14. Minh họa độ lệch chuẩn của các thuật toán qua bộ dữ liệu steind-01 .............. 111 xii MỞ ĐẦU Tối ưu hóa mạng liên quan đến nhiều lĩnh vực như toán ứng dụng, khoa học máy tính, vận trù học, kỹ thuật, mạng truyền thông,… Nhiều bài toán thực tế trong lĩnh vực mạng truyền thông, chẳng hạn như bài toán cây khung truyền thông tối ưu (Optimal Communication Spanning Trees - OCST), bài toán cây Steiner nhỏ nhất (Steiner Minimal Trees - SMT), bài toán cây khung nhỏ nhất với đường kính bị chặn (Bounded Diameter Minimum Spanning Trees - BDMST) [20], bài toán cây khung với chi phí định tuyến nhỏ nhất (Minimum Routing Cost Spanning Trees MRCST) đã được chứng minh thuộc lớp bài toán NP-khó hoặc NP-đầy đủ. MRCST là một bài toán tối ưu đồ thị nổi tiếng; bài toán này lần đầu tiên được giới thiệu bởi T. C. Hu vào năm 1974 qua bài báo “Optimum communication spanning trees” [37]. Bài toán MRCST được xem là một trường hợp đặc biệt của bài toán cây khung truyền thông tối ưu khi mà lượng cầu truyền thông giữa tất cả mọi cặp đỉnh của bài toán OCST đều bằng nhau [9,10,37]. Mô hình toán học của bài toán MRCST có thể phát biểu như sau: Cho G là một đồ thị vô hướng liên thông có chi phí định tuyến không âm trên cạnh. Giả sử T là một cây khung của G. Chi phí định tuyến cho mỗi cặp đỉnh trên T được định nghĩa là tổng các chi phí định tuyến trên các cạnh của đường đi đơn nối chúng trên T và chi phí định tuyến của T được định nghĩa là tổng của tất cả các chi phí định tuyến giữa mọi cặp đỉnh của T. Bài toán MRCST đặt ra là tìm một cây khung có chi phí định tuyến nhỏ nhất trong số tất cả các cây khung của G [10]. Bài toán MRCST đã được chứng minh thuộc lớp bài toán NP-khó [10,13,37]. Bài toán MRCST có nhiều ứng dụng trong lĩnh vực thiết kế mạng truyền thông [7,10,15,27,31,33], chẳng hạn bài toán xây dựng các hệ thống mạng nhằm tối ưu chi phí đường đi trung bình giữa các nút mạng; đặc biệt là ở các mạng ngang hàng – khi mà các nút có xác suất truyền tin và độ ưu tiên là như nhau. Bài toán MRCST cũng tìm được những ứng dụng quan trọng trong lĩnh vực tin sinh học [10,41]. Việc đề xuất thuật toán dạng metaheuristic giải bài toán MRCST có ý nghĩa quan trọng, một mặt, nhằm giải quyết những bài toán ứng dụng thực tiễn vừa nêu; mặt khác, còn là cơ sở để giải quyết những bài toán cây khung tối ưu dạng NP-khó khác trên đồ thị. 1 Bài toán MRCST đã thu hút được sự quan tâm nghiên cứu của nhiều nhà khoa học trong hơn bốn mươi năm qua. Hiện nay đã có hàng loạt thuật toán giải bài toán MRCST được đề xuất và có thể chia chúng làm các hướng tiếp cận sau: Hướng thứ nhất là các thuật toán tìm lời giải đúng. Hướng tiếp cận giải đúng phát triển trên thuật toán nhánh cận được đề xuất bởi R. Dionne và M. Florian vào năm 1979 [30], thuật toán nhánh cận kết hợp với phương pháp sinh cột được đề xuất bởi Matteo Fischetti, Giuseppe Lancia, Paolo Serafini vào năm 2002 [24]. Các thuật toán giải đúng chỉ có thể giải được bài toán MRCST đối với đồ thị có không quá 40 đỉnh và do đó tính ứng dụng thực tiễn của nó không cao [1,24,30]. Hướng thứ hai là các thuật toán tìm lời giải gần đúng cận tỉ lệ, như thuật toán WONG được đề xuất bởi Richard T. Wong vào năm 1980 [31], thuật toán GENERAL STAR được đề xuất bởi Bang Ye Wu và Kun-Mao Chao vào năm 1999 [8], sơ đồ xấp xỉ thời gian đa thức – PTAS được đề xuất bởi Bang Ye Wu và Kun-Mao Chao vào năm 2004 [10], thuật toán xấp xỉ xử lý song song được đề xuất bởi Ching-Lueh Chang và Yuh-Dauh Lyuu vào năm 2008 [12], thuật toán gần đúng cận tỉ lệ được đề xuất bởi Alexandra Hochuli, Stephan Holzer, Roger Wattenhofer năm 2014 [4]. Ưu điểm của các thuật toán này là có sự đảm bảo về mặt toán học theo nghĩa lời giải tìm được gần đúng một cận tỉ lệ α nào đó so với lời giải tối ưu. Hướng thứ ba là các thuật toán heuristic, bao gồm thuật toán ADD được đề xuất bởi Vic Grout vào năm 2005 [41], thuật toán CAMPOS được đề xuất bởi Rui Campos và Manuel Ricardo vào năm 2008 [33]. Các thuật toán ADD, CAMPOS có độ phức tạp thời gian tính tốt nhất trong số tất cả các thuật toán giải bài toán MRCST hiện biết. Thuật toán CAMPOS tìm được lời giải với chất lượng tốt hơn so với các thuật toán WONG ở một số loại đồ thị cụ thể. Hướng thứ tư là các thuật toán metaheuristic. Hướng tiếp cận metaheuristic phát triển trên các thuật toán di truyền, thuật toán tìm kiếm địa phương và thuật toán bầy ong. Hướng tiếp cận này bao gồm thuật toán di truyền mã hóa dạng cạnh – ESCGA được đề xuất bởi Bryant A. Julstrom vào năm 2005 [11], thuật toán di truyền mã hóa dạng dãy số Prüfer – BCGA được đề xuất bởi Bryant A. Julstrom vào năm 2005 [11], thuật toán tìm kiếm leo đồi ngẫu nhiên – SHC được đề xuất bởi Bryant A. Julstrom vào năm 2005 [11], thuật toán tìm kiếm địa phương có sử dụng chiến lược đa dạng hóa lời giải – PBLS được đề xuất bởi Alok Singh vào năm 2008 [5], thuật toán tìm kiếm địa phương– CYCLELS được đề xuất bởi Steffen Wolf và Peter Merz vào năm 2010 [36], thuật toán bầy ong (Artificial Bee Colony - PABC) [6] và thuật toán bầy ong kết hợp với thuật toán tìm kiếm địa phương (ABC+LS) cùng được đề xuất bởi Alok Singh vào năm 2011 [6] – hai thuật toán này được phát triển dựa vào sơ đồ của thuật toán Artificial Bee Colony (ABC) [16,17]. Các thuật toán metaheuristic này cho lời giải với chất lượng tốt hơn các thuật toán giải gần đúng còn lại. Tuy nhiên, hiệu quả của các thuật toán metaheuristic chủ yếu được đánh giá thông qua thực nghiệm mà chưa chứng minh được về mặt toán học. Thời gian tính các 2 thuật toán metaheuristic là chậm hơn rất nhiều so với các thuật toán WONG [10,31], ADD [41], CAMPOS [33]. Mục đích của luận án là phát triển một số thuật toán gần đúng dạng metaheuristic giải bài toán MRCST cho chất lượng lời giải tốt hơn so với các thuật toán có cùng cỡ thời gian tính hoặc đòi hỏi thời gian tính ít hơn khi so sánh với các thuật toán có chất lượng lời giải tương đương hoặc đưa ra lời giải tốt nhất mới cho một số bộ dữ liệu thực nghiệm chuẩn. Các kết quả nghiên cứu của luận án đã được công bố ở 4 bài báo tạp chí và 2 bài báo hội nghị chuyên ngành. Các kết quả chính đạt được của luận án là: Thứ nhất, đề xuất hai thuật toán dạng tìm kiếm leo đồi giải bài toán MRCST là thuật toán HCSRI-MRCST (viết tắt là HCSRI) và thuật toán HCSIR-MRCST (viết tắt là HCSIR); các đề xuất này nhằm giải quyết hiệu quả bài toán MRCST ứng với các loại đồ thị thưa và đồ thị đầy đủ ngẫu nhiên. Các thuật toán HCSRI, HCSIR cho chất lượng lời giải tương đương với các thuật toán metaheuristic mới nhất nhưng với thời gian tính nhanh hơn; xét trên toàn bộ hệ thống dữ liệu thực nghiệm chuẩn; các thuật toán HCSRI, HCSIR cho chất lượng lời giải luôn tốt hơn các thuật toán trước đó WONG, ADD, CAMPOS, ESCGA, BCGA. Thứ hai, đề xuất một thuật toán dạng thuật toán di truyền giải bài toán MRCST là GAMRCST (viết tắt là GST). Thuật toán GST đề xuất phép lai và phép đột biến mới, có định hướng cao đến chi phí định tuyến; các phép lai và phép đột biến này có tính đa dạng và tính tăng cường cao hơn so với các thuật toán di truyền đã được công bố trước đó như ESCGA, BCGA. Thuật toán GST cho lời giải với chất lượng tốt hơn và thời gian tính nhanh hơn các thuật toán di truyền ESCGA, BCGA; thuật toán GST cho lời giải với chất lượng tốt hơn các thuật toán WONG, ADD, CAMPOS, SHC. Thứ ba, đề xuất một thuật toán dạng tìm kiếm Tabu giải bài toán MRCST là TABU-MRCST (viết tắt là TST); đây là vận dụng đầu tiên của tìm kiếm Tabu vào việc giải bài toán MRSCT. Thuật toán TST thừa kế được những ưu điểm của thuật toán tìm kiếm Tabu trong việc giải bài toán tối ưu, thuật toán TST đề xuất một chiến lược đa dạng mới. Thuật toán TST cho chất lượng lời giải tốt hơn các thuật toán đã được công bố trước đó như WONG, ADD, CAMPOS, SHC, PBLS, ESCGA, BCGA trên mọi bộ dữ liệu; thuật toán TST cho lời giải chất lượng tương đương thuật toán PBLS trên các đồ thị đầy đủ Euclid nhưng với thời gian tính nhanh hơn. Thứ tư, đề xuất một thuật toán dạng thuật toán bầy ong giải bài toán MRCST là BEEMRCST (viết tắt là BST). Thuật toán BST đề xuất mới các chiến lược tăng cường hóa và đa dạng hóa; thuật toán BST là vận dụng đầu tiên của thuật toán bầy ong cơ bản [14] vào việc giải bài 3 toán MRCST. Thuật toán BST cho chất lượng lời giải tốt hơn và thời gian tính nhanh hơn các thuật toán metaheuristic đã công bố như ESCGA, BCGA, PABC, ABC+LS trên hệ thống dữ liệu thực nghiệm chuẩn. Luận án được trình bày trong 5 chương. Chương 1 trình bày tổng quan về bài toán MRCST, các ứng dụng của bài toán MRCST, khảo sát các công trình nghiên cứu liên quan và hệ thống dữ liệu thực nghiệm chuẩn cho bài toán MRCST. Chương 2 đề xuất các thuật toán dạng tìm kiếm leo đồi HCSRI, HCSIR giải bài toán MRCST. Chương 3 đề xuất thuật toán di truyền GST giải bài toán MRCST. Chương 4 đề xuất thuật toán tìm kiếm Tabu TST giải bài toán MRCST. Chương 5 đề xuất thuật toán bầy ong BST giải bài toán MRCST. Luận án cũng phân tích ưu nhược điểm của từng thuật toán đối với từng loại dữ liệu thực nghiệm cụ thể và qua đó định hướng phạm vi áp dụng cho từng thuật toán đề xuất. Phụ lục của luận án ghi nhận kết quả thực nghiệm của các công trình nghiên cứu liên quan cho đến thời điểm hiện tại. 4 Chương 1. TỔNG QUAN Chương này giới thiệu tổng quan về bài toán cây khung với chi phí định tuyến nhỏ nhất (Minimum Routing Cost Spanning Tree – MRCST), các ứng dụng của bài toán MRCST, khảo sát các thuật toán giải bài toán MRCST, các tiêu chí đánh giá chất lượng một thuật toán giải gần đúng và hệ thống dữ liệu thực nghiệm chuẩn được sử dụng cho bài toán MRCST. 1.1.BÀI TOÁN MRCST 1.1.1.Một số định nghĩa Cho G = (V(G), E(G)) là một đồ thị vô hướng, liên thông, có trọng số không âm trên cạnh; trong đó V(G) là tập gồm n đỉnh, E(G) là tập gồm m cạnh, w(e) là trọng số của cạnh e, e  E(G). Trong suốt luận án này, nếu G là đồ thị, thì ký hiệu V(G) sẽ được sử dụng để chỉ tập đỉnh, còn E(G) sẽ được sử dụng để chỉ tập cạnh của đồ thị G. Định nghĩa 1.1 [10] (Chi phí định tuyến giữa một cặp đỉnh). Cho T = (V(T), E(T)) là một cây khung của G, trọng số trên cạnh e được hiểu là chi phí định tuyến của cạnh e, ta gọi chi phí định tuyến (routing cost) của một cặp đỉnh (u,v) trên T, ký hiệu là dT(u,v), là tổng chi phí định tuyến của các cạnh trên đường đi đơn (duy nhất) nối đỉnh u với đỉnh v trên cây T. Định nghĩa 1.2 [10] (Chi phí định tuyến của một cây khung). Cho T = (V(T), E(T)) là một cây khung của G, chi phí định tuyến của T, ký hiệu là C(T), là tổng chi phí định tuyến giữa mọi cặp đỉnh thuộc cây T, tức là: C (T )   u ,vV (T ) dT (u, v). (1-1) Bài toán MRCST: Cho đồ thị G được định nghĩa như trên, bài toán đặt ra là trong số tất cả các cây khung của đồ thị G cần tìm một cây khung có chi phí định tuyến nhỏ nhất. 5 Bài toán này được đặt tên là bài toán cây khung với chi phí định tuyến nhỏ nhất (Minimum Routing Cost Spanning Tree-MRCST) [10]. Bài toán MRCST đã được chứng minh thuộc lớp bài toán NP-khó, nghĩa là ngoại trừ P = NP, không tồn tại thuật toán đa thức để giải nó [10,13,31]. Ví dụ 1.1. Xét cây T ở hình 1.1. 1Hình 1.1. Minh họa cách tính chi phí định tuyến của một cây theo định nghĩa Theo công thức (1-1), ta có: dT(v1,v2) + dT(v1,v3) + dT(v1,v4) + dT(v1,v5) + dT(v1,v6) + dT(v2,v3) + dT(v2,v4) + dT(v2,v5) + dT(v2,v6) + dT(v3,v4) + dT(v3,v5) + dT(v3,v6) + dT(v4,v5) + dT(v4,v6) + dT(v5,v6) = 117. Do dT(vi,vj) = dT(vj,vi), nên C(T) = 117  2 = 234. Việc tính chi phí định tuyến của một cây khung trực tiếp theo công thức (1-1) đòi hỏi thời gian tính O(n2) theo cấu trúc dữ liệu ma trận trọng số. Tuy nhiên, trên cơ sở đưa ra khái niệm tải định tuyến (routing load), công trình [10] đã chỉ ra cách tính chi phí định tuyến của một cây khung với độ phức tạp tuyến tính theo cấu trúc dữ liệu cây có gốc. Định nghĩa 1.3 [10] (Tải định tuyến một cạnh của cây khung) Cho T = (V(T), E(T)) là một cây khung của đồ thị G. Nếu loại khỏi cây T một cạnh e thì T sẽ được tách ra thành hai cây con T1 và T2 với hai tập đỉnh tương ứng là V(T1) và V(T2). Ta gọi tải định tuyến của cạnh e, ký hiệu là l(T,e), là giá trị 2×V(T1)×V(T2). Từ định nghĩa, dễ thấy rằng tải định tuyến của cạnh e chính bằng số lượng đường đi trên cây T có chứa cạnh e. 6
- Xem thêm -

Tài liệu liên quan

Tài liệu vừa đăng