Thuật toán metaheuristic giải bài toán tập phủ đỉnh

86 491 3
Thuật toán metaheuristic giải bài toán tập phủ đỉnh

Đ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

MỤC LỤC DANH MỤC HÌNH VẼ DANH MỤC CÁC BẢNG THUẬT NGỮ TIẾNG ANH .6 DANH MỤC CÁC TỪ VIẾT TẮT PHẦN MỞ ĐẦU Lý chọn đề tài Mục tiêu nhiệm vụ nghiên cứu Bố cục luận văn CHƢƠNG 1: BÀI TOÁN PHỦ ĐỈNHTRÊN ĐỒ THỊ 10 1.1 Một số khái niệm 10 1.1.1 Cơ sở toán tính toán thuật toán 10 1.1.2 Các ký hiệu tiệm cận .12 1.1.3 Các khái niệm đồ thị 13 1.1.4 Các cách biểu diễn đồ thị máy tính .15 1.1.5 Lớp toán NP-đầy đủ 17 1.2 Bài toán phủ đỉnh nhỏ đồ thị 19 1.2.1 Tổng quan toán 19 1.2.2 Các ứng dụng thực tế 21 CHƢƠNG 2: CÁC CÁCH TIẾP CẬN GIẢI BÀI TOÁN 24 2.1 Các trƣờng hợp giải tốt toán 24 2.1.1 Đồ thị phía 24 2.1.2 Đồ thị nhiều phía 24 2.1.3 Cây 24 2.2 Các cách tiếp cận giải toán 25 2.2.1 Thuật toán tham lam .25 2.2.2 Thuật toán di truyền Genetic Algorithm – GA .26 2.2.3 Thuật toán đàn kiến (Ant Colony-AC) 30 2.2.4 Thuật toán Ashay Dharwadker - AD .32 2.2.5 Thuật toán tìm kiếm Tabu - TabuAlg 33 Vũ Tiến Khang Lớp CNTT1 - Khoá 2013B CHƢƠNG 3: METAHEURISTIC GIẢI BÀI TOÁN PHỦ ĐỈNH 38 3.1 Đánh giá tổng quát 38 3.1.1 Tổng quan heuristic 38 3.1.2 Các kỹ thuậtthuật toán Heuristic 39 3.2 Xây dựng MetaheuristicAlg .43 3.2.1 Ý tƣởng 43 3.2.2 Các định nghĩa MetaheuristicAlg 46 3.2.3 Xây dựng MetaheuristicAlg 47 CHƢƠNG 4: CÀI ĐẶT CHƢƠNG TRÌNH VÀ THỰC NGHIỆM .48 4.1 Cài đặt chƣơng trình 48 4.1.1 Nhắc lại toán 48 4.1.2 Các chức chƣơng trình .48 4.1.3 Cấu trúc liệu chƣơng trình 49 4.1.4 Cài đặt biểu đồ luồng liệu TabuAlg .54 4.1.5 Cài đặt biểu đồ luồng liệu MetaheuristicAlg .56 4.2 Thực nghiệm .58 4.2.1 Nguồn gốc đặc điểm liệu 58 4.2.2 Lựa chọn tham số cho chƣơng trình .61 4.2.3 Kết thực nghiệm TabuAlg .67 4.2.4 Kết thực nghiệm MetaheuristicAlg 69 4.2.5 Nhận xét đánh giá 72 HƢỚNG DẪN SỬ DỤNG CHƢƠNG TRÌNH 75 KẾT LUẬN .85 TÀI LIỆU THAM KHẢO 87 Vũ Tiến Khang Lớp CNTT1 - Khoá 2013B LỜI CAM ĐOAN Tôi xin cam đoan: Luận văn "Thuật toán metaheuristic giải toán phủ đỉnh" thân tự thực dƣới hƣớng dẫn PGS.TS Nguyễn Đức Nghĩa Viện Công nghệ thông tin Truyền thông - Đại học Bách khoa Hà Nội Các thông tin số liệu kết Luận văn có nguồn gốc rõ ràng, nội dung Luận văn chƣa đƣợc công bố công trình nghiên cứu nƣớc Hà Nội, tháng 03 năm 2015 Tác giả Luận văn Vũ Tiến Khang Vũ Tiến Khang Lớp CNTT1 - Khoá 2013B DANH MỤC HÌNH VẼ Hình 1.1 Đồ thị vô hƣớng đồ thị có hƣớng 13 Hình 1.2 Danh sách kề ma trận kề .16 Hình 4.1 Lớp Graph 49 Hình 4.2 Lớp TabuListMin 50 Hình 4.3 Lớp TabuListEqual .51 Hình 4.4 Lớp Neighboring 52 Hình 4.5 Biểu đồ luồng liệu TabuAlg 55 Hình 4.6 Biểu đồ luồng liệu MetaheuristicAlg 57 Hình 4.7 Biểu đồ kết thay đổi Kmax 62 Hình 4.8 Biểu đồ kết thay đổi Kremax 63 Hình 4.9 Biểu đồ kết thay đổi CountListMin 64 Hình 4.10 Biểu đồ kết thay đổi CountListEqual 65 Hình 4.11 Biểu đồ kết thay đổi numGeneration 66 Hình 4.12 Biểu đồ so sánh thời gian tabuAlg metaheuristicAlg 72 Vũ Tiến Khang Lớp CNTT1 - Khoá 2013B DANH MỤC CÁC BẢNG Bảng 4.1 Bảng tham số xác định Kmax 62 Bảng 4.2 Bảng tham số xác định Kremax 63 Bảng 4.3 Bảng tham số xác định CountListMin 64 Bảng 4.4 Bảng tham số xác định CountListEqual 65 Bảng 4.5 Bảng tham số xác định numGeneration 66 Bảng 4.6 Giá trị tham số tabuAlg đƣợc lựa chọn 67 Bảng 4.7 Kết tabuAlg với liệu frb 67 Bảng 4.8 Kết tabuAlg với liệu p_hat 69 Bảng 4.9 Kết tabuAlg với liệu c_hat 69 Bảng 4.10 Giá trị tham số metaheuristicAlg đƣợc lựa chọn 69 Bảng 4.11 Kết thực nghiệm metaheuristicAlg với liệu frb 70 Bảng 4.12 Kết metaheuristicAlg với liệu p_hat 70 Bảng 4.13 Kết metaheuristicAlg với liệu c_hat 70 Bảng 4.14 Lời giải tối ƣu metaheuristicAlg với file test Frb30-15-2 71 Bảng 4.15 So sánh kết metaheuristicAlg tabuAlg 713 Bảng 4.16 Kết NuMVC 715 Vũ Tiến Khang Lớp CNTT1 - Khoá 2013B THUẬT NGỮ TIẾNG ANH Tiếng Anh STT Giải thích Decision Problem Bài toán định Input Đầu vào Output Đầu Tile Ô vuông Tabu Search Tìm kiếm có danh sách cấm Minimum Vertex Cover Problem Bài toán phủ đỉnh nhỏ Genetic Algorithm Thuật toán di truyền Hill-climbing Leo đồi Ant Colony Thuật toán đàn kiến Vũ Tiến Khang Lớp CNTT1 - Khoá 2013B DANH MỤC CÁC TỪ VIẾT TẮT STT Từ viết tắt Tên đầy đủ Giải thích DP Decision Problem Bài toán định GA Genetic Algorithm Thuật toán di truyền AC Ant Colony Thuật toán đàn kiến MVCP Minimum Vertex Cover Problem Bài toán phủ đỉnh nhỏ AD Ashay Dharwadker Tên riêng tác giả ngƣời Ấn Độ NP Non-deterministic Polynomial-time Chƣa giải đƣợc thời gian đa thức TabuAlg Tabu Search Algorithm Thuật toán tìm kiếm tabu MetaheuristicAlg Metaheuristic Algorithm Thuật toán metaheuristic Vũ Tiến Khang Lớp CNTT1 - Khoá 2013B PHẦN MỞ ĐẦU Lý chọn đề tài Bài toán tập phủ đỉnh nhỏ đồ thị toán NP-khó nhóm toán đồ thị Bài toán tập phủ đỉnh nhỏ đồ thị đƣợc ứng dụng trongnhiều lĩnh vực thực tế nhƣ việc đạt trạm quan sát, ứng dụng việc xét nghiệm ung thƣ cổ cách kiểm tra màng tế bào Do tầm quan trọng toán, nhiều hƣớng tiếp cận để giải xấp xỉ toán đƣợc đề xuất với mục đích đƣa lời giải xấp xỉ tốt với thời gian chấp nhận đƣợc Các cách tiếp cận truyền thống thƣờng sử dụng thuật toán nhƣ giải thuật di truyền, giải thuật đàn kiến hay giải thuật tìm kiếm Tabu thu đƣợc kết định, luận văn em xin theo hƣớng lai ghép heuristic để tạo thành metaheuristic giải toán phủ đỉnh nhỏ Mục tiêu nhiệm vụ nghiên cứu Với mục đích tạo thuật toán Metaheuristic, kết hợp kỹ thuật thuật toán khác để xây dựng thuật toán hiệu (về thời gian, kết quả), luận văn tập trung vào nội dung sau: o Phát biểu toán Tập phủ đỉnh nhỏ ứng dụng toán o Nghiên cứu hƣớng tiếp cận giải toán phủ đỉnh nhỏ đồ thị tổng quát nhƣ giải thuật di truyền, giải thuật Ashay Dharwadker, giải thuật tìm kiếm Tabu o Lai ghép để tạo thuật toán Metaheuristic o Cài đặt thuật toán tìm kiếm Tabu, thuật toán di truyền, giải thuật Ashay Dharwadker Metaheuristic giải toán phủ đỉnh nhỏ nhất, đƣa kết thực nghiệm để so sánh đánh giá Vũ Tiến Khang Lớp CNTT1 - Khoá 2013B Bố cục luận văn Chƣơng 1: Bài toán tập phủ đỉnh nhỏ đồ thị Chƣơng đƣợc chia làm hai phần: phần trình bày kiến thức sở thuật toán toán tính toán, đồ thị lớp toán NP-đầy đủ với mục đích làm tảng lý thuyết cho chƣơng tiếp theo, phần phát biểu toán ứng dụng thực tế Chƣơng 2: Các cách tiếp cận toán Trình bày trƣờng hợp giải tốt nhƣ số phƣơng pháp giải xấp xỉ thuật toán độc lập giải toán Chƣơng 3: Metaheuristicgiải toán phủ đỉnh Trình bày thuật toán metaheuristic, xây dựng cài đặt thuật toán metaheuristic Chƣơng4: Cài đặt chƣơng trình kết thực nghiệm Trình bày việc cài đặt chƣơng trình, chạy thử nghiệm kết thu đƣợc Đƣa nhận xét đánh giá hiệu thuật toán liệu test chuẩn Vũ Tiến Khang Lớp CNTT1 - Khoá 2013B CHƢƠNG 1: BÀI TOÁN PHỦ ĐỈNHTRÊN ĐỒ THỊ 1.1 Một số khái niệm Phần đƣa khái niệm thuật toán, toán, đồ thị lớp toán NP-đầy đủ nhằm làm cƣ sở lý thuyết cho chƣơng sau 1.1.1 Khái niệm toán tính toán thuật toán Bài toán tính toán F ánh xạ từ tập xâu nhị phân độ dài hữu hạn vào tập xâu nhị phân độ dài hữu hạn: F:[0,1]* → [0,1]* Ví dụ: số nguyên X đƣợc biểu diễn dƣới dạng xâu nhị phân cách viết hệ đếm nhị phân Khái niệm thuật toán Ta hiểu thuật toán giải toán đặt thủ tục xác định bao gồm dãy hữu hạn bƣớc cần thực để thu đƣợc đầu cho đầu vào cho trƣớc toán Một số đặc trưng thuật toán : Đầu vào (Input): thuật toán nhận liệu vào từ tập Đầu (Output): Với tập liệu đầu vào, thuật toán đƣa liệu tƣơng ứng với lời giải toán Chính xác (Precision): bƣớc thuật toán đƣợc mô tả xác Hữu hạn (Finiteness) : thuật toán phải đƣa đƣợc đầu sau số hữu hạn (có thể lớn) bƣớc với đầu vào Đơn trị (Uniqueness) : kết trung gian bƣớc thực thuật toán đƣợc xác định đơn trị phụ thuộc vào đầu vào kết bƣớc trƣớc Tổng quát (Generality) : thuật toán áp dụng để giải toán có dạng cho Vũ Tiến Khang 10 Lớp CNTT1 - Khoá 2013B Tên file tabuAlg metaheuristicAlg Tốt Tồi Trung bình Tốt Tồi Trung bình Frb30-15 421 423 421,8 420 422 421,2 Frb35-17 564 566 565,1 562 565 563,4 Frb40-19 722 725 723,9 722 724 723,2 Frb45-21 903 905 904,8 902 904 904,6 Frb50-23 1103 1106 1105.3 1103 1105 1104.8 Frb53-24 1223 1226 1225.8 1222 1224 1223.5 Frb56-25 1348 1352 1351.7 1348 1351 1349.4 Frb59-26 1481 1485 1484.2 1480 1483 1482.6 Bảng 4.15 So sánh kết metaheuristicAlg tabuAlg Hình 4.12 biểu đồ so sánh thời gian chạy metaheuristicAlg tabuAlg cột màu đỏ thời gian chạy metaheuristicAlg, cột màu xanh thời gianchạy tabuAlg, đơn vị tính bắng giây(s) Còn bảng 4.15 giá trị tốt nhất, tồi trung bình metaheuristicAlg tabuAlg Tất so sánh lấy kết chạy với liệu test frb Với test frb có nhiều báo nhƣ báo cáo khoa học sử dụng, xin trích dẫn kết tốt báo cáo khoa học để so sánh Trong báo cáo khoa học tác giả S Cai, K Su and Q Chen EWLS: A New Local Search for Minimum Vertex Cover Proc 24th AAAI, 2010.Trong công trình tác giả dụng thuật toán tìm kiếm cục để giải toán phủ đỉnh (NuMVC - An Efficient Local Search Algorithm for Minimum Vertex Cover) Tác giả chạy file liệu test 100 lần kết đƣa bao gồm:  Số lần chạy thành công – số lần tìm đƣợc kết tối ƣu  Thời gian chạy trung bình (nếu có lần chạy không thành công có thêm thời gian chạy thành công trung bình)  Số bƣớc tìm trung bình (nếu có lần chạy không thành công có thêm số bƣớc tìm trung bình lần chạy thành công)  Chạy GHz Intel Core Duo CPU E8400 and 4GB RAM under Linux Vũ Tiến Khang 73 Lớp 13BCNTT1 - Khoá 2013B Tên File frb30-15-1 frb30-15-2 frb30-15-3 frb30-15-4 frb30-15-5 frb35-17-1 frb35-17-2 frb35-17-3 frb35-17-4 frb35-17-5 frb40-19-1 frb40-19-2 frb40-19-3 frb40-19-4 frb40-19-5 frb45-21-1 frb45-21-2 frb45-21-3 frb45-21-4 frb45-21-5 frb50-23-1 frb50-23-2 frb50-23-3 frb50-23-4 frb50-23-5 frb53-24-1 frb53-24-2 frb53-24-3 frb53-24-4 frb53-24-5 frb56-25-1 frb56-25-2 frb56-25-3 frb56-25-4 frb56-25-5 frb59-26-1 frb59-26-2 frb59-26-3 frb59-26-4 frb59-26-5 Số lần chạy thành công 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 95 100 100 86 100 100 100 100 100 97 100 100 100 88 38 96 79 100 Thời gian trung bình(s) 0.045 0.053 0.191 0.049 0.118 0.515 0.447 0.178 0.563 0.298 0.242 4.083 1.076 2.757 10.141 2.708 4.727 13.777 3.973 10.661 38.143 176.589 606.165(532.805) 7.89 19.529 895.006(715.123) 205.352 51.227 266.871 39.893 470.682 658.961(617.485) 121.298 49.446 26.761 843.304(687.845) 1677.801(1160.020) 644.831(580.032) 1004.550(741.208) 61.907 Số bƣớc 37963 44632 173708 41189 105468 386287 334255 129279 422638 218800 208115 3679770 959874 2473081 9142719 2029588 3605881 10447444 3000680 8059236 24628019 113569606 386342329(343518242) 5092072 12690957 514619149(416394360) 117980833 29376406 152982736 22817023 259903023 350048132(326853745) 67043078 26030031 14109165 440874471(350993718) 875964146(592010913) 325417225(295226277) 517521634(375976753) 31682895 Bảng 4.16 Kết NuMVC Vũ Tiến Khang 74 Lớp 13BCNTT1 - Khoá 2013B Bảng 4.16 kết NuMVC thực nghiệm với liệu test frb Nhận xét: kết nhƣ thời gian chạy NuMVC tốt so với MetaheuristicAlg, nhƣng NuMVC tìm kiếm phụ thuộc vào bề mặt không gian tìm kiếm nên vài liệu có kết không tốt, thời gian chạy chƣơng trình tăng đột biến, MetaheuristicAlg bị phụ thuộc vào bề mặt không gian tìm kiếm nên ổn định Từ kết thực nghiệm cho thấy với liệu test khác NuMVC lại không ổn định thời gian chạy chƣơng trình Ví dụ nhƣ với liệu frb50-23-1 có 1150 đỉnh NuMVC trung bình 38.143s với liệu frb5023-3 số đỉnh 1150 lại trung bình 606.165s Với liệu khó tìm đƣợc kết tối ƣu không tìm đƣợc kết tối ƣu số bƣớc tìm kiếm NuMVC lớn, nên thời gian chạy chƣơng trình lớn Có thể coi liêu test “tồi” NuMVC, với liệu test “tồi” thời gian chạy metaheuristicAlg tốt NuMVC Ví dụ với frb53-24-1thời gian trung bình NuMVC lên tới 895s MetaheuristicAlg 847s, hay với liệu test frb59-26-2 thời gian trung bình NuMVC 1677s cònthời gian MetaheuristicAlg 1607s Vũ Tiến Khang 75 Lớp 13BCNTT1 - Khoá 2013B HƢỚNG DẪN SỬ DỤNG CHƢƠNG TRÌNH Khởi động chƣơng trình Phụ lục Giao diện chƣơng trình Khi khởi động chƣơng trình bạn nhìn thấy giao diện chƣơng trình nhƣ Đây giao diện chƣơng trình Bạn làm việc chủ yếu với giao diện Giao diện đƣợc chia thành phần riêng biệt nhƣ phần tham số chƣơng trình, phần liệu hay phần khởi tạo Bạn điều khiển chƣơng trình qua button qua công cụ Vũ Tiến Khang 76 Lớp 13BCNTT1 - Khoá 2013B Nhập liệu đầu vào cho chƣơng trình Đây thao tác bạn muốn sử dụng chƣơng trình Nhập liệu từ file Phụ lục Nhập liệu từ file Nhƣ bạn thấy hình nhƣ giới thiệu trên, để nhập liệu từ file bạn bấm vào button “Vào từ file” chọn Nhập liệu/Nhập từ file công cụ Còn cách đơn giản bạn sử dụng phím tắt Alt+F Sau bạn chọn file liệu cho chƣơng trình bấm OK Nhập từ bàn phím Với chức bạn nhập trực tiếp đồ thị cho chƣơng trình Việc giúp bạn dễ dành kiểm tra chƣơng trình với đồ thị vừa phải Vũ Tiến Khang 77 Lớp 13BCNTT1 - Khoá 2013B Phụ lục Nhập liệu từ bàn phím Cũng giống nhƣ việc nhập từ file bạn có lựa chọn bấm button “Nhập từ bàn phím” chọn Nhập liệu/Nhập từ bàn phím công cụ bấm phím tắt Alt+B Chƣơng trình đƣa cho bạn hình để bạn nhập số liệu Phụ lục Giao diện nhập liệu từ bàn phím Vũ Tiến Khang 78 Lớp 13BCNTT1 - Khoá 2013B Bạn nhập số đỉnh,số cạnh đồ thị cạnh đồ thị textbox tƣơng ứng, sau bấm “Nhập liệu” Chú ý: nhập đồ thị có số cạnh không n*(n1)/2 cạnh nhập dòng textbox “Các cạnh đồ thị” theo cú pháp x y x,y đầu mút cạnh Nếu bạn nhập không chƣơng trình đƣa thông báo nhắc nhở Bạn nhận đƣợc thông báo sau : Vũ Tiến Khang 79 Lớp 13BCNTT1 - Khoá 2013B Tạo liệu ngẫu nhiên Phụ lục Tạo liệu ngẫu nhiên Bạn có lựa chọn bấm button“Tạo ngẫu nhiên” chọn Nhâp liệu/Tạo liệu ngẫu nhiên công cụ bấm phím tắt Alt+T Chƣơng trình đƣa cho bạn hình để bạn nhập số liệu Phụ luc Giao diện tạo liệu ngẫu nhiên Bạn nhập số đỉnh số cạnh đò thị bấm nhập “Tạo liệu” chƣơng trình tự động tạo cho bạn đồ thị có số đỉnh số cạnh tƣơng ứng theo chế tạo ngẫu nhiên Vũ Tiến Khang 80 Lớp 13BCNTT1 - Khoá 2013B Thay đổi tham số chƣơng trình Phụ lục Thay đổi tham số Bạn thay đổi tham số cho chƣơng trình, điền giá trị tham số mà bạn muốn chƣơng trình thực thuật toán với giá trị vào textbox Nếu bạn thay đôi chƣơng trình sau nhận liệu để tham số mang giá trị mặc định nhƣ bảng 4.6 Khởi tạo tập phủ đỉnh ban đầu choTabuAlg Tạo ngẫu nhiên Phụ lục Tạo đầu vào ngẫu nhiên Vũ Tiến Khang 81 Lớp 13BCNTT1 - Khoá 2013B Giống nhƣ chức khác bạn có lựa chọn bấm button “ Ngẫu nhiên” chọn Khởi tạo liệu/Ngẫu nhiên công cụ bấm phím tắt Ctrl+G Chƣơng trình tạo cho đầu vào thuật toán tìm kiếm Tabu tập phủ đỉnh theo chế lựa chọn ngẫu nhiên đinh đồ thị Tƣơng tự có Tham lam Không luyện tập (lấy tất đỉnh) Thực TabuAlg Phụ lục 11 Thực hiệnTabuAlg Bạn chọn bấm button chọn chức công cụ Trong trình chạy bạn thấy đƣợc thay đổi kết giá trị biến chạy Vũ Tiến Khang 82 Lớp 13BCNTT1 - Khoá 2013B Thực MetaheuristicAlg Phụ lục 12 Thực MetaheuristicAlg Kiểm tra in kết file Phụ lục 13 Kiểm tra ghi kết file Kiểm tra tính đắn kết quả, kết thỏa mãn yêu cầu phủ đỉnh tiến hành ghi kết file Kết dƣợc mặc định để thƣ lục C:/Result Vũ Tiến Khang 83 Lớp 13BCNTT1 - Khoá 2013B không tồn thƣ mục chƣơng trình cho ngƣời dùng chọn vị trí tên file để ghi lại kết Nếu kết thỏa mãn bạn nhận đƣợc thông báo: Ngƣợc lại có thông báo là: Vũ Tiến Khang 84 Lớp 13BCNTT1 - Khoá 2013B KẾT LUẬN Khi bắt đầu thực nghiên cứu, khó khăn cần hiểu đƣợc kỹ thuật heuristic trực tiếp đọc tài liệu, xây dựng cài đặt thuật toán nhƣ di truyền, tabuAlg thuật toán Ashay Dharwadker(AD) Sau cài đặt xong cho thuật toán chạy thực nghiệm thấy đƣợc điểm tốt chƣa tốt thuật toán, ví dụ nhƣ điểm mạnh di truyền thời gian chạy nhanh, nhƣng kết không tốt lai ghép ngẫu nhiên đột biến đảo bit chƣa mang lại kết tốt, tìm kiếm tabu cho kết tốt di truyền nhƣng thời gian chạy lâu hơn, thuật toán AD sử dụng leo đồi chọn lọc quét không gian tìm kiếm rộng nên chậm Sau có kết từ chạy thực nghiệm khó làm kết hợp kỹ thuật lại Việc kết hợp khó, nhƣng sử dụng ƣu điểm kỹ thuật chƣa đem lại kết tốt Ban đầu với ý tƣởng sử dụng leo đồi làm tốt quần thể, với hy vọng quần thể tốt có hội cho cá thể tốt đạt tối ƣu đạt kết gần tối ƣu nhất, nhƣng việc lại dẫn đến chi phí lớn quần thể thoái hóa sớm, kết thuật toán tồi di truyền ban đầu Tiếp theo việc dùng lai ghép chọn lọc việc lấy vị trị trùng giá thị bố mẹ cho dẫn đến tốt cha mẹ tốt với hy vọng hệ sau tốt kết tốt nhƣng lại không mang đến đa dạng quần thể, không mở rộng đƣợc không gian tìm kiếm, dẫn đến kết không tốt Sau nhiều lần thử kết hợp kỹ thuật, nhiều lần cài đặt chạy thử với giúp đỡ PGS.TS Nguyễn Đức Nghĩa, cuối đƣa đƣợc cách kết hợp bƣớc đầu cho thấy hiệu nhƣ trình bầy Việc sử dụng quần thể nhƣng danh sách cấm giúp quần thể không bị thoái hóa, lai ghép đột biến ngẫu nhiên giúp mở rộng vùng tìm kiếm, tạo hội tìm thấy tối ƣu toàn cục, leo đồi chọn lọc cho số cá thể đƣợc lựa chọn ngẫu nhiên giúp khai thác tiềm cá thể (5% cá thể tốt nhất) Vũ Tiến Khang 85 Lớp 13BCNTT1 - Khoá 2013B Do thời gian nghiên cứu có hạn, nên kết đạt đƣợc chƣa đƣợc nhƣ mong muốn, dù có đƣợc kết định nhƣng thời gian chạy cho liêu lớn nhƣ Frb59-26 với số đỉnh 1524, số cạnh trung bình 129500 thời gian chạy lên tới gần 30p, chƣa có nhiều lần chạy cho kết tối ƣu Vì hƣớng cải tiến tƣơng lai tiếp tục nghiên cứu, tìm thuật toán kết hợp mang lại hiệu tốt nhƣ cải tiến liệu mã hóa, sử dụng kiểu liệu phù hợp để tăng tốc độ tính toán, nghiên cứu tính toán song song để áp dụng giảm thời gian chạy chƣơng trình Vũ Tiến Khang 86 Lớp 13BCNTT1 - Khoá 2013B TÀI LIỆU THAM KHẢO [1] Bài giảng môn “Phân tích thiết kế thuật toán”, PGS-TS Nguyễn Đức Nghĩa [2] Glover F “Tabu search Part 1”.ORSA Journal on Computing (2):190–206 1989 [3] Glover F “Tabu search Part 2”.ORSA Journal on Computing (1):4–32 1990 [4] J Puchinger, G.R Raidl, and U Pferschy,“The multidimensional knapsack problem: Structure and algorithms” INFORMS J on Computing, 22(2):250265, April 2010 [5] Raymond R Hill and Chaitr S Hiremath, “Generation Methods for Multidimensional Knapsack Problems and their Implications” International Journal of Operational Research, 1(1-2): 145-159, 2005 [6] S.Gilmour and M Dras “Kernelization as Heuristic Structure for the Vertex Cover Problem” Third Workshop on Ant Colony Optimization and Swarm Intelligence (ANTS2006) Brussels, Belgium [7] S Cai, K Su and Q Chen “EWLS: A New Local Search for Minimum Vertex Cover” Proc 24th AAAI, 2010 [8] Website:http://www.nlsde.buaa.edu.cn/~kexu/benchmarks/graph-benchmarks.htm Vũ Tiến Khang 87 Lớp 13BCNTT1 - Khoá 2013B ... 2.2.1 Thuật toán tham lam Thuật toán tham lam thuật toán giải vấn đề dựa yêu cầu toán cách lựa chọn giải pháp tốt trạng thái với hy vọng tạo kết tốt Với toán phủ đỉnh nhỏ có thuật toán tham lam giải. .. ta có thuật toán đa thức sau để giải toán: Ký hiệu: C: tập đỉnh dùng để lƣu tập phủ đỉnh nhỏ Vũ Tiến Khang 24 Lớp CNTT1 - Khoá 2013B L: tập đỉnh, dùng để lƣu hiên P: tập đỉnh, dùng để lƣu tập nút... dụng toán o Nghiên cứu hƣớng tiếp cận giải toán phủ đỉnh nhỏ đồ thị tổng quát nhƣ giải thuật di truyền, giải thuật Ashay Dharwadker, giải thuật tìm kiếm Tabu o Lai ghép để tạo thuật toán Metaheuristic

Ngày đăng: 15/07/2017, 23:29

Từ khóa liên quan

Mục lục

  • muc luc

  • loi cam doan

  • danh muc hinh ve

  • danh muc cac bang

  • thuat ngu tieng anh

  • danh muc cac tu viet tat

  • phan mo dau

  • chuong 1

  • chuong 2

  • chuong 3

  • chuong 4

  • huong dan su dung chuong trinh

  • ket luan

  • tai lieu tham khao

Tài liệu cùng người dùng

Tài liệu liên quan