TRÍ TUỆ NHÂN TẠOGiải thuật di truyền với bài toán người du lịch

30 183 0
TRÍ TUỆ NHÂN TẠOGiải thuật di truyền với bài toán người du lịch

Đ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

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THƠNG TIN VÀ TRUYỀN THƠNG ──────── * ─────── TRÍ TUỆ NHÂN TẠO Giải thuật di truyền với toán người du lịch Sinh viên thực Trương Công Phú 20101991 Cấn Kim Tùng 20102465 Nguyễn Hoàng Long 20101802 Đinh Quang Vinh 20102786 Trần Hữu Sơn 20102109 Đào Trọng Huấn 20101600 Hà Nội - 2013 Bài tập lớn mơn học Trí tuệ nhân tạo MỤC LỤC LỜI NÓI ĐẦU CHƯƠNG I : GIẢI THUẬT DI TRUYỀN (Genetic Algorithm - GA) Động lực Thuật giải di truyền Các toán tử di truyền Đấu tranh sinh tồn CHƯƠNG II : BÀI TOÁN NGƯỜI DU LỊCH (Travelling Salesman Problem - TSP) 10 Lịch sử toán : 10 Phát biểu toán : 12 Phân tích độ phức tạp : 12 CHƯƠNG III : ĐỀ XUẤT GIẢI THUẬT DI TRUYÊN GIẢI BÀI TOÁN NGƯỜI DU LỊCH 13 Giải thuật đề xuất : 13 1.1 Mã hóa tốn : 13 1.2 Khởi tạo quần thể : 15 1.3 Lai ghép : 15 1.4 Đột biến : 17 1.5 Chọn lọc tự nhiên : 18 1.6 Tiến hóa : 20 Giới thiệu chương trình : 21 Kết chạy liệu chuẩn : 22 3.1 Bộ liệu wi29.tsp : 23 3.2 Bộ liệu qa194.tsp: 23 3.3 Bộ liệu xit1083.tsp: 24 Đánh giá giải thuật cải tiến tương lai: 25 TỔNG KẾT 26 TÀI LIỆU THAM KHẢO 27 PHỤ LỤC 28 Bài tập lớn mơn học Trí tuệ nhân tạo LỜI NĨI ĐẦU Bài tốn người du lịch toán nghiên cứu sâu lĩnh vực tối ưu hóa Báo cáo trình bày hướng tiếp cận giải toán người du lịch sử dụng giải thuật di truyền Giải thuật di truyền muốn mô lại trình tiến hóa sinh vật tự nhiên vào tốn tối ưu hóa từ đưa lời giải tốt (có thể khơng tối ưu nhất) mà đưa giải thuật xác hay việc vét cạn trường hợp bất khả thi Mặc cố gắng khơng thể tránh khỏi sai sót, mong thầy giáo bảo thêm Bài tập lớn mơn học Trí tuệ nhân tạo CHƯƠNG I : GIẢI THUẬT DI TRUYỀN (Genetic Algorithm - GA) Giải thuật di truyền tiến hóa dựa khái niệm cho trình tiến hóa tự nhiên hồn hảo nhất, hợp lý tự mang tính tối ưu Sự tối ưu thể chỗ hệ sau phát triển tốt hệ trước Tiến hóa tự nhiên trì nhờ hai trình bản: sinh sản chọn lọc tự nhiên, xun suốt q trình tiến hóa tự nhiên, hệ sinh để bổ sung thay thế hệ cũ, cá thể thích ứng với môi trường tồn tại, ngược lại bị đào thải Giải thuật di truyền bao gồm bước chính: Mã hóa lời giải, khởi tạo quần thể, sử dụng phép toán di truyền đánh giá độ thích nghi Sau đó, lại sinh quần thể phép chọn lọc tiếp tục sử dụng phép toán di truyền đánh giá độ thích nghi cá thể (điển hình nhiễm sắc thể - NST) quần thể Thuật giải thực qua nhiều hệ lời giải đưa tối ưu Động lực Thuật giải di truyền cung cấp phương pháp học thúc đẩy tương tự với tiến hóa sinh học Thay tìm kiếm giả thuyết từ tổng quát đến cụ thể từ đơn giản đến phức tạp, GAs tạo giả thuyết cách lặp việc đột biến việc tái hợp phần giả thuyết biết tốt Ở bước, tập giả thuyết gọi quần thể cập nhật cách thay vài phần nhỏ quần thể cá thể giả thuyết tốt thời điểm Sự phổ biến GAs thúc đẩy yếu tố sau: • Tiến hóa phương pháp mạnh, thành cơng cho thích nghi bên hệ thống sinh học Bài tập lớn mơn học Trí tuệ nhân tạo • GA tìm kiếm khơng gian giả thuyết có phần tương tác phức tạp, ảnh hưởng phần lên tồn thể độ thích nghi giả thuyết khó mơ hình • Thuật giải GA thực song song tận dụng thành tựu phần cứng máy tính mạnh Thuật giải di truyền Bài tốn dành cho GAs tìm kiếm khơng gian giả thuyết ứng cử để xác định giả thuyết tốt Trong GAs “giả thuyết tốt nhất” định nghĩa giả thuyết tối ưu hóa đại lượng số định nghĩa trước cho toán tới, gọi độ thích nghi giả thuyết Ví dụ, tác vụ học hỏi toán xấp xỉ hàm chưa biết cho tập mẫu huấn luyện gồm liệu đầu vào liệu đầu ra, độ thích nghi định nghĩa độ xác giả thuyết liệu huấn luyện Nếu tác vụ học chiến lược chơi cờ, độ thích nghi số ván thắng chiến lược đấu với chiến lược khác quần thể Mặc thuật giải di truyền thực thay đổi theo toán cụ thể, chúng chia sẻ chung cấu trúc tiêu biểu sau: Thuật giải hoạt động cách cập nhật liên tục tập giả thuyết – gọi quần thể Ở lần lặp, tất cá thể quần thể ước lượng tương ứng với hàm thích nghi Rồi quần thể tạo cách lựa chọn có xác suất cá thể thích nghi tốt từ quần thể Một số cá thể chọn đưa nguyên vẹn vào quần thể Những cá thể khác dùng làm sở để tạo cá thể cách áp dụng tác động di truyền: lai ghép đột biến GA( Fitness, Fitness_threshold, p, r, m) Bài tập lớn mơn học Trí tuệ nhân tạo { // Fitness: hàm gán thang điểm ước lượng cho giả thuyết // Fitness_threshold: Ngưỡng xác định tiêu chuẩn dừng giài thuật tìm kiếm // p: Số cá thể quần thể giả thuyết // r: Phân số cá thể quần thể áp dụng toán tử lai ghép bước // m: Tỉ lệ cá thể bị đột biến • Khởi tạo quần thể: P Tạo ngẫu nhiên p cá thể giả thuyết • Ước lượng: Ứng với h P, tính Fitness(h) • while [max Fitness(h)] < Fitness_threshold Tạo hệ mới, PS Chọn cá thể: chọn theo xác suất (1 – r)p cá thể quần thể P thêm vào PS Xác suất Pr(hi) giả thuyết hi thuộc P tính cơng thức: Pr(hi ) = Fitness(hi ) ∑ p j =1 Fitness(h j ) Lai ghép: chọn lọc theo xác suất r× p cặp giả thuyết từ quần thể P, theo Pr(hi) tính bước Ứng với cặp , tạo hai cách áp dụng toán tử lai ghép Thêm tất các vào PS Đột biến: Chọn m% cá thể PS với xác suất cho cá thể Ứng với cá thể biến đổi bit chọn ngẫu nhiên cách thể Cãp nhật: P PS Ước lượng: Ứng với h P, tính Fitness(h) Bài tập lớn mơn học Trí tuệ nhân tạo • Trả giả thuyết P có độ thích nghi cao } Figure : Các bước giải thuật Bài tập lớn mơn học Trí tuệ nhân tạo Khởi tạo quần thể Lựa chọn cha mẹ Lai ghép Đột biến Đấu tranh sinh tồn FALSE Điều kiện dừng TRUE Các cá thể tốt Figure : Lưu đồ giải thuật Bài tập lớn mơn học Trí tuệ nhân tạo Các toán tử di truyền 3.1 Lai ghép : Phép lai trình hình thành NST sở NST cha mẹ, cách ghép hay nhiều đoạn gen hai (hay nhiều) NST cha mẹ khác Các cặp cha mẹ lựa chọn ngẫu nhiên xác suất xảy lai ghép với cặp quy định từ trước Có nhiều cách lai ghép khác nhau: • Lai ghép điểm cắt, nhiều điểm cắt • Lai ghép nhiều đoạn 3.2 Đột biến : Đột biến tình trạng NST khơng có (hoặc số) tính trạng có mã di truyền cha mẹ Các cặp cha mẹ lựa chọn ngẫu nhiên xác suất xảy đột biến với cặp quy định từ trước, thường nhỏ Các phép đột biến thường sử dụng: • Đảo bit • Hốn vị: Đổi vị trí gen với • Đổi giá trị: Thay đổi giá trị điểm gen • Đảo đoạn: Đảo thứ tự đoạn NST Bài tập lớn mơn học Trí tuệ nhân tạo Đấu tranh sinh tồn Chọn NST từ quần thể kết theo quy tắc thay cho cha mẹ để sinh hệ Một số phương thức đấu tranh sinh tồn bản: • Tráo đổi hoàn toàn cha mẹ • Tráo đổi ngẫu nhiên: Chọn ngẫu nhiên k cha mẹ thay k • Chọn cá thể ưu tú quần thể Bài tập lớn mơn học Trí tuệ nhân tạo 23 55 24 56 64 79 … 1.2 Khởi tạo quần thể : Quần thể ban đầu khởi tạo cách sinh ngẫu nhiên chu trình, số lượng chu trình khởi tạo nửa số kích thước cá thể tối đa Việc sinh ngẫu nhiên sử dụng hàm đột biến (sẽ nói rõ phía dưới) Số kích thước cá thể tối đa tùy biến theo số đỉnh đồ thị cần giải, sau nhiều lần chạy nhóm chọn kích thước quần thể 100 cá thể 1.3 Lai ghép : Phương thức lai ghép thực dựa cá thể đầu vào : C1 10 C2 10 Thực lai ghép điểm cắt với vị trí cắt ngẫu nhiên : • Cắt từ điểm p đến hết chu trình C2 đưa vào chu trình mới, lấy ví dụ p = : Bài tập lớn mơn học Trí tuệ nhân tạo 15 Con • Xét từ đầu đến cuối chu trình 1, nạp dần điểm chưa có lai theo thứ tự duyệt ta chu trình : Con 10 • Tính lại chi phí cho chu trình sinh (*) Cách lai ghép đảm bảo lai chu trình thỏa mãn Cài đặt code : private Circle hybridize(Circle c1, Circle c2) { Circle child = new Circle(c1.getLength()); Random rand = new Random(); int p = rand.nextInt(child.length - 1); int i = 0, j = 0, k = 0; for (i = p; i < child.length; i++) { child.vertex[j] = c2.vertex[i]; j++; } for (i = 0; i < child.length; i++) { for (j = 0; j < child.length - p; j++) { if (c1.vertex[i] == child.vertex[j]) break; else if (j == child.length - p - 1) { k++; child.vertex[j + k] = c1.vertex[i]; } } } Bài tập lớn mơn học Trí tuệ nhân tạo 16 return child; } 1.4 Đột biến : Phương thức đột biến thực dựa cá thể đầu vào : C1 10 Thực đột biến tráo đổi điểm gen cho Số lần tráo đối sinh ngẫu nhiên từ khoảng 5% chiều dài chu trình (tức có tối đa 10% vị trí gen bị đột biến), vị trí điểm tráo sinh ngẫu nhiên q trình chạy Ví dụ với đột biến C1 tráo đổi lần : tráo 9, tráo 10 Khi ta chu trình : C2 10 (*) Cách đột biến đảm bảo cá thể sinh chu trình thỏa mãn Cài đặt code : private Circle mutate(Circle c) { int n = c.getLength(); Circle nextgen = new Circle(n); nextgen.setCircle(n, c.getCircle()); Random rand = new Random(); int count = rand.nextInt(mutateCoefficient) + 1; int p1, p2, temp; while (count > 0) { p1 = rand.nextInt(n); p2 = rand.nextInt(n); temp = nextgen.vertex[p1]; nextgen.vertex[p1] = nextgen.vertex[p2]; nextgen.vertex[p2] = temp; Bài tập lớn mơn học Trí tuệ nhân tạo 17 count ; } return nextgen; } 1.5 Chọn lọc tự nhiên : Kích thước quần thể cố định qua hệ Ở hệ ta lại có cá thể sinh lai ghép đột biến cần phải có chọn lọc để đảm bảo tính cân quần thể tránh lỗi phát sinh nhớ kích thước quần thể lớn ሾܵố ܿá ‫ݐ‬ℎể ‫ݐ‬ℎế ℎệሿ = ሾ‫ܭ‬íܿℎ ‫ݐ‬ℎướܿ ݉ặܿ đị݊ℎሿ + ሾܵố ܿá ‫ݐ‬ℎể ݉ớ݅ ‫݊݅ݏ‬ℎሿ Cách thức chọn lọc cá thể đánh giá dựa chi phí chu trình Cá thể chọn làm lời giả cuối cá thể có chi phí nhỏ quần thể sau số hệ tiến hóa Ban đầu tồn quần thể xếp tăng dần chi phí giữ lại cá thể thích nghi (có chi phí nhỏ nhất) Tuy nhiên cách làm có hạn chế với liệu lớn Khi số hệ đạt đến mức định, việc tìm chu trình nhỏ ngày khó khăn tập cá thể quần thể gần không biến đổi, điều làm giảm đa dạng nguồn gen cho tiến hóa hệ sau Do nhóm đưa cách chọn lọc tự nhiên sau : • Sắp xếp quần thể theo chi phí tăng dần • Lựa chọn ngẫu nhiên số : ܽ (0 < ܽ < 1) • Loại cá thể thứ ܽ ሾ‫ܭ‬íܿℎ ‫ݐ‬ℎướܿ ݉ặܿ đị݊ℎሿ thích nghi từ ሾ‫ܭ‬íܿℎ ‫ݐ‬ℎướܿ ݉ặܿ đị݊ℎሿ cá thể đứng đầu danh sách quần thể • Loại đến số cá thể lại kích thước mặc định Bài tập lớn mơn học Trí tuệ nhân tạo 18 Cách thức chọn lọc đảm bảo phong phú quần thể sau nhiều hệ Bằng cài đặt cụ thể, cách thức chọn lọc đem lại kết tối ưu nhiều so với cách chọn lọc trước với số liệu (*) Tối ưu Chọn lọc tự nhiên : Cách thức chọn lọc cần đến việc xếp cá thể theo chi phí Việc xếp tốn quần thể có kích thước lớn Giải thuật xếp sử dụng Selection Sort (độ phức tạp Θ(݊ଶ )) Ban đầu, bước chọn lọc xếp lại tồn quần thể Tuy nhiên cần thực xếp ሾ‫ܭ‬íܿℎ ‫ݐ‬ℎướܿ ݉ặܿ đị݊ℎሿ cá thể để giảm bớt số lượng phép so sánh đổi chỗ private void sortList() { // Selection sort chưa tối ưu int i = 0, j = 0, min; Circle temp; for (i = 0; i < population.size() - 1; i++) { = i; for (j = i + 1; j < population.size(); j++) { if (population.get(j).cost < population.get(min).cost) = j; } temp = population.get(i); population.add(i, population.get(min)); population.remove(i + 1); population.remove(min); population.add(min, temp); } } Tối ưu thủ tục xếp thay vòng lặp thứ : Bài tập lớn mơn học Trí tuệ nhân tạo 19 • Từ : for (i = 0; i < population.size() - 1; i++) • Thành : for (i = 0; i < maxPopulation - 1; i++) population.size() ሾܵố ܿá ‫ݐ‬ℎể ‫ݐ‬ℎế ℎệሿ maxPopulation ሾ‫ܭ‬íܿℎ ‫ݐ‬ℎướܿ ݉ặܿ đị݊ℎሿ Cải tiến đem lại hiệu tốt cho giải thuật thời gian chạy Tuy nhiên so sánh số trường hợp, cách chọn lọc cho kết tồi khoảng 5% 1.6 Tiến hóa : Với quần thể khởi tạo ban đầu, chúng tiến hóa cách ngẫu nhiên thích nghi với điều kiện chọn lọc, cá thể thích nghi bị loại thải cá thể tốt chọn làm lời giải Việc tiến hóa diễn qua số hệ, hệ ta thực lai ghép đột biến ngẫu nhiên tồn quần thể • Lai ghép : ngẫu nhiên 50% số cá thể đứng quần thể (Lựa chọn cha mẹ ngẫu nhiên) • Đột biến cho tồn quần thể 100% (tuy điều trái tự nhiên việc tìm nguồn gen cần ưu tiên hết) Sau số hệ định trước (10,000 đến 10,000,000) chương trình dừng xuất kết (*) Cải tiến đa luồng : Để tận dụng hiệu vi xử lý đa lõi giải thuật thiết kế với luồng chạy song song Mỗi luồng chạy độc lập, thực tiến hóa cho quần thể riêng biệt Kết trả lựa chọn từ kết tốt Bài tập lớn mơn học Trí tuệ nhân tạo 20 Giới thiệu chương trình : Figure : Giao diện chương trình Chương trình với giao diện đơn giản gồm sổ nhập thơng tin kết Mặc định chương trình đọc liệu tập tin kèm : đồ thị đầu vào inputGraph.txt chu trình mẫu để so sánh kết inputCircle.txt Dữ liệu tập tin phải định dạng chuẩn đề cập mục mã hóa đồ thị, mã hóa chu trình Nếu thơng tin khơng định dạnh, chương trình khơng chạy Ngồi chương trình cung cấp thêm số thiết lập thông số số lượng cá thể quần thể (Population size) số lượng hệ tiến hóa (Max Generation) Số liệu mặc định ban đầu 100 cá thể 10.000 hệ Để giới hạn lỗi nhớ hạn chế thời gian chạy lâu, chương trình đặt sẵn số lượng cá thể lớn 1.000 số hệ 10.000.000 (nếu nhập lớn tự động sử dụng giá trị lớn nhất) Một thông số cần nhập vào Threads : thông số thiết lập cho số luồng chạy song song chương trình (số quần thể tiến hóa lúc) Bài tập lớn mơn học Trí tuệ nhân tạo 21 Thông số mặc định thiết lập cho phép thiết lập khoảng từ đến Thiết lập đầy đủ thông số, bấm calculate để thực tính tốn Kết trả gồm chi phí cho đường tốt mà chương trình tính tốn chi phí tính tốn từ chu trình mẫu nhập vào (có thể khơng cần nhập chu trình đầu vào) Ngồi chương trình hiển thị thời gian chạy theo giây toàn chi tiết chu trình tính được lưu tập tin outputCircle.txt, bấm nút show circle để xem nội dung chu trình Trong q trình tính tốn, chương trình sử dụng file tạm để lưu kết tính tốn trung gian kết tốt sau lần chạy Khi khởi chạy nhập sẵn chu trình vào tập tin tempCircle.txt tương ứng với đồ thị chương trình nhanh chóng tìm kết tốt Kết chạy liệu chuẩn : Sử dụng liệu chuẩn cho toán TSP tải từ trang http://www.tsp.gatech.edu/ Dữ liệu bao gồm thông tin tên liệu, số đỉnh, dạng đồ thị danh sách đỉnh với tọa độ đỉnh Nhóm lựa chọn liệu sau để thử nghiệm giải thuật : Tên liệu Số đỉnh Chi phí lời giải tối ưu tìm wi29.tsp 29 27603 qa194.tsp 194 9352 xit1083.tsp 1083 3617,26/3558 Giải thuật cài đặt ngôn ngữ java (jdk 7u9 - win64) Bài tập lớn mơn học Trí tuệ nhân tạo 22 Cấu hình máy tính chạy giải thuật : Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz RAM DDR3 4GB bus 1600MHz OS Windows x64 Trong trình chạy sử dụng thiết lập số cá thể tối đa 100 số hệ mức 10.000, 50,000, 100.000, 500.000, 1.000.000, 5.000.000 tùy liệu Mỗi mức thiết lập cho chạy 10 lần lấy giá trị nhỏ để so sánh với chi phí tối ưu mẫu (lấy từ liệu chuẩn) Chi tiết kết lần chạy có Phụ lục kèm báo cáo Sau thống kê kết chạy chương trình với số liệu : 3.1 Bộ liệu wi29.tsp : • Tên liệu wi29.tsp (Western Sahara) • Kích thước đồ thị : 29 đỉnh • Chi phí chu trình tối ưu : 27603 Kết chạy : Pop size Max Gen Min cost % Time Optimal found 100 10.000 27601,17 99,99 59 Yes 100 500.000 27601,17 99,99 903 Yes (*) Có thể kết tối ưu cung cấp theo liệu tính tốn làm tròn nên có sai số Kết luận : tìm thấy chu trình tối ưu 3.2 Bộ liệu qa194.tsp: • Tên liệu qa194.tsp (Quatar) • Kích thước đồ thị : 194 đỉnh Bài tập lớn mơn học Trí tuệ nhân tạo 23 • Chi phí chu trình tối ưu : 9352 Kết chạy : Time Optimal found 122,6 17 No 10147.12 108,5 192 No 10137,51 108,4 1783 No Pop size Max Gen Min cost 100 1000 11465,45 100 10000 100 100.000 % Kết luận : chưa tìm thấy chu trình tối ưu 3.3 Bộ liệu xit1083.tsp: • Tên liệu xit1083.tsp (VLSI - XIT1083 – Vi mạch tích hợp) • Kích thước đồ thị : 1083 đỉnh • Chi phí chu trình tối ưu : 3617,26/3558 Kết chạy : Pop size Max Gen Min cost % Time Optimal found 100 1000 10774,26 297,86 80 No 100 10000 8694,27 240,36 241 No Kết luận: chưa tìm thấy chu trình tối ưu Bài tập lớn mơn học Trí tuệ nhân tạo 24 Đánh giá giải thuật cải tiến tương lai: Giải thuật đề xuất đáp ứng bước giải thuật di truyền Kết chạy giải thuật cho kết tối ưu trường hợp số đỉnh nhỏ 100 đưa kết tiệm cận với trường hợp số đỉnh khoảng 1000 Còn với trường hợp số đỉnh lớn 1000 giải thuật chưa tìm lời giải Giải thuật di truyền đề xuất phần lớn phụ thuộc vào “may mắn” đề tìm kết Do để tìm kết tối ưu với trường hợp số đỉnh lớn hạn chế Trong tương lai, nhóm tìm hiểu cài đặt giải thuật heuristic giúp tìm lời giải tối ưu với đồ thị có kích thước lớn hơn, với cải tiến giải thuật GA quần thể động, đa quần thể tương tác… Bài tập lớn mơn học Trí tuệ nhân tạo 25 TỔNG KẾT Báo cáo làm rõ khái niệm giải thuật di truyền bước thực áp dụng vào giải toán người du lịch Kết giải thuật cài đặt nhiều hạn chế thời gian giải liệu lớn cỡ 10~20 nghìn đỉnh Trong tương lai nhóm tiếp tục cải tiến thuật toán giải thuật heuristic hỗ trợ tìm đường, cải tiến giải thuật di truyền chế đa quần thể có tương tác Bài tập lớn mơn học Trí tuệ nhân tạo 26 TÀI LIỆU THAM KHẢO [1] Phạm Văn Hải - Slide giảng Trí tuệ nhân tạo [2] Nguyễn Đình Thúc - Lập trình tiến hóa [3] Wikipedia http://vi.wikipedia.org/wiki/B%C3%A0i_to%C3%A1n_ng%C6%B0%E1%BB%9Di_b%C3%A1n_h %C3%A0ng [4] Các tài liệu liên quan liệu mẫu http://www.tsp.gatech.edu/index.html Bài tập lớn mơn học Trí tuệ nhân tạo 27 PHỤ LỤC KẾT QUẢ CHẠY GIẢI THUẬT TRÊN CÁC BỘ DỮ LIỆU Bộ liệu wi29.tsp : Bộ liệu wi29.tsp Số đỉnh : 29 Chi phí chu trình tối ưu : 27603 Chi phí chu trình tốt : 27601,17 Tìm thấy chu trình tối ưu Pop size Max Gen 100 10000 27748,71 27748,71 27748,71 27748,71 27748,71 27748,71 27601,17 27601,17 27601,17 27601,17 59 27601,17 27603 99,99 100 100000 27601,17 27601,17 27601,17 27601,17 27601,17 27601,17 27601,17 27601,17 27601,17 27601,17 903 27601,17 27603 99,99 Re_01 Re_02 Re_03 Re_04 Re_05 Re_06 Re_07 Re_08 Re_09 Re_10 Average Optimal Min/opt Min cost run time cost % Bộ liệu qa194.tsp Bộ liệu qa194.tsp Pop size Max Gen Số đỉnh : 194 Re_01 Re_02 Re_03 Chi phí chu trình tối ưu : 9352 Re_04 Re_05 Re_06 Chi phí chu trình tốt : Re_07 Re_08 Bài tập lớn mơn học Trí tuệ nhân tạo Re_09 Re_10 Chưa tìm thấy chu trình tối ưu Average Optimal Min/opt Min cost run time cost % 28 100 1000 15000,60 14800,71 13448,23 13098,30 12495,81 12207,76 12048,84 11747,44 11505,10 11465,45 17 11465,45 9352 122,6 100 10000 11265,86 11158,49 11104,15 10738,32 10585,48 10483,64 10188,88 10147.12 10147.12 10147.12 192 10147.12 9352 108,5 100 100000 10147.12 10137,51 10137,51 10137,51 10137,51 10137,51 10137,51 10137,51 10137,51 10137,51 1783 10137,51 9352 108,4 Bộ liệu xit1083.tsp : Bộ liệu xit1083.tsp Pop size Max Gen Số đỉnh : 1083 Re_01 Re_02 Re_03 Chi phí chu trình tối ưu : 3617.26 Re_04 Re_05 Re_06 Re_07 Chưa tìm thấy chu trình tối ưu Chi phí chu trình tốt : Re_08 Re_09 Re_10 Average Optimal Min/opt Min cost run time cost % 100 1000 14774,42 13064.93 12304.03 11987.84 11658.09 11387.66 11176.63 10957.42 10899,42 10774.26 80 10774.26 3617,26 297,86 100 10000 9599.92 9526.40 9374.46 9281,23 9119,28 9063,45 9005,01 8694,27 8914,20 8859,74 841 8694,27 240,36 Bài tập lớn mơn học Trí tuệ nhân tạo 3617,26 29 ... LỜI NĨI ĐẦU Bài toán người du lịch toán nghiên cứu sâu lĩnh vực tối ưu hóa Báo cáo trình bày hướng tiếp cận giải toán người du lịch sử dụng giải thuật di truyền Giải thuật di truyền muốn mơ lại... • Chọn cá thể ưu tú quần thể Bài tập lớn mơn học Trí tuệ nhân tạo CHƯƠNG II : BÀI TOÁN NGƯỜI DU LỊCH (Travelling Salesman Problem - TSP) Lịch sử toán : Bài toán người bán hàng (tiếng Anh: travelling... phải duyệt tăng nhanh số đỉnh n lớn Ngay với đồ thị 100 đỉnh, việc duyệt toàn điều khó thực Bài tập lớn mơn học Trí tuệ nhân tạo 12 CHƯƠNG III : ĐỀ XUẤT GIẢI THUẬT DI TRUYÊN GIẢI BÀI TOÁN NGƯỜI DU

Ngày đăng: 05/05/2019, 10:24

Từ khóa liên quan

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

Tài liệu liên quan