Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 43 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
43
Dung lượng
1,52 MB
Nội dung
TRƯỜNG ………………… KHOA……………………… - - Báo cáo tốt nghiệp Đề tài: PHƯƠNG PHÁP TỐI ƯU HOÁ ĐÀN KIẾN LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TÓM TẮT Phương pháp tối ưu hóa đàn kiến (Ant Colony Optimization – ACO) phương pháp mà ngày người ta quan tâm hiệu trội so với phuoeng pháp khác giải tốn tối ưu hóa tổ hợp (Combinatorial optimization problems) Khóa luận trình bày cách khái quát phương pháp tối ưu hóa đàn kiến (Ant Colony Optimization), trình bày phương pháp áp dụng thuật tốn tối ưu hóa đàn kiến cho toán người chào hàng động (Dynamic Travelling Salesman Problem - DTSP) cơng bố Khóa luận cài đặt kiểm chứng hiệu thuật toán đồng thời đưa cải tiến thuật toán để nâng cao hiệu trường hợp tốn đầu vào có kích thước lớn LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com MỤC LỤC TÓM TẮT BẢNG TỪ VIẾT TẮT MỞ ĐẦU CHƯƠNG GIỚI THIỆU PHƯƠNG PHÁP ACO .3 1.1 Giới thiệu 1.2 Quá trình phát triển 1.3 Một số thuật toán ACO áp dụng cho toán TSP .9 1.3.1 Bài toán TSP .10 1.3.2 Ant System (AS) .12 1.3.3 Max-Min Ant System (MMAS) 15 1.3.4 Ant Colony System (ACS) .17 1.3.5 Hệ kiến đa mức (xem [15]) .19 1.4 Các nguyên tắc áp dụng tối ưu đàn kiến 20 1.4.2 Xác định vệt mùi .21 1.4.3 Các thông tin heuristic 22 1.4.4 Kết hợp tìm kiếm địa phương 22 1.4.5 Điều chỉnh học tăng cường khám phá 23 1.4.6 Sử dụng giới hạn danh sách láng giềng .24 1.5 Các ứng dụng ACO 25 CHƯƠNG GIỚI THIỆU BÀI TOÁN DTSP .26 2.1 Bài toán DTSP .26 2.2 Các phương pháp giải toán DTSP 26 CHƯƠNG SỬ DỤNG THUẬT TOÁN AS ĐỂ GIẢI QUYẾT BÀI TOÁN DTSP 28 3.1 Phân tích tốn 28 3.2 Cải tiến AS cho phù hợp 29 CHƯƠNG THỰC NGHIỆM VÀ ĐÁNH GIÁ 31 4.1 Thực nghiệm tsplib eil51 32 4.2 Nhận xét 34 PHẦN KẾT LUẬN 37 THAM KHẢO 38 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com BẢNG TỪ VIẾT TẮT STT Từ viết tắt ACO Từ cụm từ Ant Colony Optimization (Tối ưu hóa đàn kiến) Ant System AS (Hệ kiến AS) Ant Colony System ACS (Hệ kiến ACS) Max-Min Ant System MMAS (Hệ kiến MMAS) Multi-level Ant System MLAS (Hệ kiến đa mức MLAS) Travelling Salesman Problem TSP (Bài toán người chào hàng) Job shop scheduling 10 JSS (Bài toán lập lịch sản xuất) 11 g-best global-best 12 i-best iteration-best LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com MỞ ĐẦU Hiện có nhiều báo, luận văn, cơng trình nghiên cứu đề cập đến vấn đề tối ưu tổ hợp Nhiều phương pháp mẻ đưa đạt hiệu cao Tuy nhiên phần lớn toán tối ưu tổ hợp giải từ trước tới tốn tĩnh So với tốn tĩnh toán động phức tạp ứng dụng thực tế nhiều Chẳng hạn ứng dụng định tuyến gói tin mạng internet, tổng đài điện thoại Một cách tiếp cận có hiệu tốn tối ưu tổ hợp tĩnh phương pháp tối ưu hóa đàn kiến (Ant Colony Optimization- ACO) ACO phương pháp metaheuristic nhiều người quan tâm Thuật toán ACO (1991) mang lại nhiều ý tưởng cảm hứng với mục đích cải tiến thuật tốn ACO để áp dụng cho nhiều tốn khác Luận văn trình bày cách khái quát thuật toán ACO kiểm chứng phương pháp áp dụng ACO việc giải toán chào hàng động (Dynamic Travelling Salesman Problem- DTSP) dạng toán tối ưu tổ hợp động DTSP thực chất mở rộng tốn người chịa hàng (Travelling Salesman Problem - TSP) tiếng Đồng thời luận văn nhược điểm thuật toán đề xuất cải tiến cho thuật toán nhằm nâng cao hiệu phải giải tốn có kích thước lớn Các kết thực nghiệm đưa làm rõ cho cho hiệu cải tiến thuật toán Luận văn gồm có chương Chương giới thiệu phương pháp tối ưu hóa đàn kiến: q trình phát triển, thuật toán ACO áp dụng cho toán người chào hàng (Travelling Salesman Problem TSP), số ứng dụng ACO Chương luận văn giới thiệu toán DTSP phương pháp để giải toán Chương luận văn đề cập đến phương pháp sử dụng thuật toán Hệ kiến (Ant System - AS) thuật toán lớp thuật toán ACO, để giải toán DTSP, chương đề cập đến điều chỉnh thuật toán đề xuất để cải tiến hiệu thuật toán LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Chương phần cài đặt thực nghiệm kiểm chứng đánh giá thuật toán đánh giá hiệu cải tiến đề xuất Ở luận văn sử dụng thư viện TSP chuẩn cung cấp mạng để làm đầu vào Chương phần kết luận cuối LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com CHƯƠNG GIỚI THIỆU PHƯƠNG PHÁP ACO Bài toán tối ưu hóa tổ hợp tốn hấp dẫn thú vị phần lớn chúng dễ để hình dung khó mà tìm lời giải cho chúng Nhiều toán tối ưu tổ hợp tốn NP-khó chúng khơng thể giải thời gian đa thức Trên thực tế người ta thường giải toán phương pháp xấp xỉ, chúng có nghiệm gần tối ưu thời gian chạy ngắn Các thuật toán thuộc lại tạm gọi thuật toán heuristic , chúng sử ụng để giải toán cụ thể Mở rộng chúng thuật toán metaheuristic giải lớp toán rộng lớn ACO phương pháp theo hướng tiếp cận 1.1 Giới thiệu Phương pháp tối ưu hóa đàn kiến (Ant Colony Optimization - ACO) mơ hình để thiết kế thuật tốn metaheuristic cho việc giải tốn tối ưu hóa tổ hợp (Combinatorial optimization problems) Bài tốn tối ưu hóa tổ hợp Bài tốn tối ưu hóa tổ hợp định nghĩa sau: Cho tập C = {c1, c2, cn} Một tập S C phương án để giải toán Tập F 2C tập tất phương án có thể, S phương án khả thi S F Một hàm giá trị z xác định sau, z : 2C R, mục tiêu tìm phương án khả thi S* có giá trị nhỏ nhất: S* F z(S*) z(S), S F Nhiều toán tối ưu quan trọng lý thuyết thực tế toán thuộc loại tối ưu hóa tổ hợp Ví dụ, tốn tìm đường ngắn nhất, nhiều tốn có ý nghĩa quan trọng khác thực tế tốn người chào hàng, tốn phân cơng lao động, tốn định tuyến mạng, tốn lập lịch cơng việc, toán lập lịch bay cho hãng hàng khơng, nhiều tốn khác LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Một toán tối ưu hóa tổ hợp thuộc loại tìm giá trị nhỏ thuộc loại tốn tìm giá trị lớn Các phương pháp giải loại toán phần lớn phương pháp tìm kiếm heuristic (các thuật toán metaheuristic) Sau thuật toán sử dụng: Thuật tốn tìm kiếm cục (Local search) Thuật tốn mơ luyện kim (Simulated annealing) Thuật toán GRASP(Greedy Randomized Adaptive Search Procedure) Thuật toán bầy đàn (Swarm intelligence) Thuật toán tìm kiếm theo bảng(Tabu search) Thuật tốn di truyền (Genetic algorithms) Thuật tốn tối ưu hóa đàn kiến (Ant colony optimization) Metaheuristic Metaheuristic tập lý thuyết thuật toán dùng để xác định phương pháp heuristic cho phù hợp với lớp tốn rộng lớn Nói cách khác metaheuristic xem phương pháp heuristic có tính tổng quát, thiết kế để hướng dẫn heuristic toán hướng miền hứa hẹn khơng gian tìm kiếm phương án tối ưu Một metaheuristic khung thuật toán tổng qt áp dụng cho nhiều loại tốn tối ưu khác tất nhiên với điều chỉnh nho nhỏ để làm cho chúng trở nên phù hợp với toán cụ thể Tối ưu hóa đàn kiến (ACO) ACO metaheuristic áp dụng để giải nhiều toán tối ưu tổ hợp, thuật toán phân loại lớp thuật toán ACO đưa năm 1991(tham khảo [2], [3]) kể từ nguyên tắc có nhiều thay đổi khác Đặc điểm thuật toán ACO kết hợp thông tin heuristic dựa vào đặc điểm phương án có nhiều hứa hẹn thơng tin nhận qua phương án tốt tìm bước trước Các thuật toán metaheuristic thuật toán để tránh tượng tối ưu cục bộ, điều chỉnh heuristic: heuristic tạo phương án trống sau thêm thành phần để trở LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com thành phương án hoàn chỉnh tốt, heuristic tìm kiếm cục phương án hồn chỉnh sau thay đổi lại số thành phần để đạt phương án tốt ACO (tham khảo [5]) bao gồm lớp thuật tốn thuật tốn Ant System (AS) đề xuất Colorni, Dorigo Maniezzo (tham khảo [2], [3], [4]) Ý tưởng làm sở thuật tốn lấy cảm hứng từ hành vi đàn kiến tự nhiên, q trình tìm kiếm lời giải song song dựa vào liệu cục dựa vào cấu trúc động chứa thông tin thu qua bược giải trước Sự tổng hợp hành vi trội từ trình giao tiếp phần tử trình tìm kiếm chúng thực có hiệu việc giải tốn tối ưu hóa tổ hợp Các kiến giao tiếp với để chúng lựa chọn đường tốt để Qua nghiên cứu người ta biết kiến tự nhiên để lại vết hóa chất (pheromone trail), chúng có khả ứ đọng, bay nhận biết kiến khác, vệt mùi phương tiện giao tiếp báo cho kiến khác thông tin đường cách gián tiếp Các kiến lựa chọn đường có cường độ mùi lớn thời điểm lựa chọn để đi, nhờ cách giao tiếp mang tính gián tiếp cộng đồng mà đàn kiến tự nhiên tìm đường ngắn Dựa vào ý tưởng trên, thuật tốn ACO sử dụng thơng tin heuristic (chính thơng tin có liệu đầu vào tốn) kết hợp thơng tin từ vết mùi kiến nhân tạo (artificial ant) để giải tốn tối ưu tổ hợp khó cách đưa tốn tìm đường tối ưu đồ thị cấu trúc tương ứng xây dựng từ đặc điểm toán Mỗi kiến nhân tạo xây dựng lời giải chúng dựa vào luật phân phối xác suất vết mùi nhân tạo thơng tin heuristic Lược đồ thuật tốn ACO tổng quát áp dụng cho toán tối ưu tổ hợp tĩnh: procedure ACOMetaheuristicStatic Set parameters, initialize pheromone trails while (termination condition not met) ConstructAntsSolutions ApplyLocalSearch (optional) UpdatePheromones end-while LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com end-procedure Như nhận định ACO thực chất tìm kiếm ngẫu nhiên dựa vào thơng tin heuristic kết hợp với thông tin học tăng cường So với thuật toán heuristic cổ điển ACO mở rộng thêm trình học tăng cường, kiến tỏ thích nghi với mơi trường dựa vào vệt mùi tích lũy cạnh đồ thị 1.2 Quá trình phát triển Thuật tốn Ant System (AS) thuật toán lớp thuật toán ACO đề xuất Dorigo luận án tiến sỹ ông năm 1991(tham khảo [2], [3]) Thuật toán AS hướng đến giải tốn tìm đường tối ưu đồ thị Mặc dù thuật tốn AS cịn thua thuật toán tốt việc giải tốn trên, nhiên ý tưởng thực mẻ tỏ có triển vọng Về sau có nhiều cải tiến thuật tốn Dorigo đề xuất, nhiều thuật toán ACO khác dựa ý tưởng thuật toán AS song khắc phục số nhược điểm thuật tốn Có thể kể tên cải tiến trội thuật toán AS thuật toán ACS thuật toán MMAS mà ta trình bày sau Bảng Một số thuật toán ACO theo thứ tự xuất ACO algorithms Tác giả Ant System Dorigo Maniezzo, & Colorni (1991) Elitist AS Dorigo (1992); Colorni (1996) Ant-Q Gambardella & Dorigo (1995); Dorigo & Gambardella (1996) Ant Colony System Dorigo & Gambardella (1996) Max-Min AS Stutzle & Hoos (1996, 2000); Stutzle (1999) Rank-based AS Bullnheimer, Hartl, & Strauss (1997, 1999) ANTS Maniezzo (1999) Dorigo, Maniezzo, & LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com sách tính tốn từ đầu Việc sử dụng danh sách cho phép thuật toán ACO tập trung vào đường có hứa hẹn đồng thời giảm khơng gian tìm kiếm nhiều Hiện việc sử dụng danh sách láng giềng gần nhiều thực nghiệm chứng minh có kết tốt nhiều so với việc không sử dụng danh sách 1.5 Các ứng dụng ACO Phương pháp ACO metaheuristic chủ yếu áp dụng cho toán tối ưu tổ hợp, ví dụ ứng dụng vào tốn TSP trình bày phần trước Một số tốn tối ưu NP-khó như: Các toán lập lịch (job shop, flow shop, project scheduling) Bài toán phân chia sản phẩm (The Generalized Assignment Problem - GAP) Bài toán phủ tập hợp (The Set Covering Problem - SCP) Các toán học máy : toán phân lớp, mạng Bayes, Trong toán TSP toán lập lịch tốn hốn vị tức lời giải hốn vị thành phần, lời giải toán GAP phân chia nhiệm vụ cho đại lý, cịn tốn SCP lời giải thể tập thành phần lời giải, chúng thuộc lớp tốn tối ưu tổ hợp sử dụng tối ưu đàn kiến để giải Ứng dụng phương pháp ACO vào toán động đề cập chủ yếu tốn dị đường mạng liệu chẳng hạn mạng truyền thông internet Ví dụ thuật tốn AntNet, thuật tốn ABC thuật tốn thành cơng cho toán định tuyến mạng truyền tin theo gói tin (packed switched) mạng truyền thơng internet chẳng hạn 25 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com CHƯƠNG GIỚI THIỆU BÀI TỐN DTSP 2.1 Bài tốn DTSP Bài toán DTSP (Dynamic Travelling Salesman Problem) mở rộng toán TSP, với trọng số cạnh thay đổi số đỉnh thay đổi tăng giảm theo thời gian Mục đích tìm nhanh đường ngắn xuất sau lần đồ thị bị biến đổi Định nghĩa toán DTSP: Cho n(t ) điểm (P1, P2, Pn(t)), ma trận khoảng cách D={dij(t)} với i, j = 1, 2, n(t) Tìm chu trình có độ dài nhỏ chứa tất n(t) điểm Ở n(t) dij(t) phụ thuộc vào thời gian t Thông thường người ta xét toán đối xứng tức là: dij(t) = dji(t) DTSP toán tối ưu tổ hợp động mà người ta tìm cách giải tốn có nhiều ý nghĩa thực tiễn nói chung tốn động có nhiều ứng dụng thực tế nhiều so với toán tĩnh Một toán tối ưu tổ hợp động khác mà nhiều người quan tâm toán Network Routing Problem toán định tuyến gói tin mạng Bài tốn có nhiều điểm tương đồng với toán DTSP ứng dụng khơng cần phải bàn cãi 2.2 Các phương pháp giải toán DTSP Các toán tối ưu tổ hợp động toán đặc biệt loại có phương pháp giải riêng khác Tùy thuộc nhiều vào đặc điểm toán mà ta thường đưa vào kỹ thuật đặc biệt chúng áp dụng loại tốn đó, mà khơng đem lại hiệu áp dụng cho toán khác 26 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thậm chí DTSP có nhiều loại khác nhau, chẳng hạn: thay đổi trọng số cạnh theo thời gian ta loại DTSP, loại DTSP khác thêm bớt đỉnh theo thời gian tức thời điểm nhiều đỉnh thêm vào loại bỏ khỏi đồ thị Ở khóa luận đưa phương pháp có hiệu cải tiến từ thuật tốn AS để giải loại tốn DTSP kiến phải vượt qua tắc nghẽn Các tắc nghẽn đảm bảo xảy tuyến đường tốt thời điểm Hơn tắc nghẽn giống thực tế chỗ tăng lên thời gian sau giảm dần đến hết tắc nghẽn Chi tiết vấn đề tắc nghẽn đề cập tới phần sau Một số phương pháp mà người ta sử dụng để giải toán DTSP: phương pháp di truyền học kết hợp với heurisric (xem [7]), phương pháp tính tốn tiến hóa (xem [8], [9]), phương pháp mạng nơron sử dụng (xem [10]), tất nhiên phương pháp ACO có hiệu lớn (xem [12], [13]) 27 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com CHƯƠNG SỬ DỤNG THUẬT TOÁN AS ĐỂ GIẢI QUYẾT BÀI TOÁN DTSP 3.1 Phân tích tốn Bài tốn DTSP mà chúng tơi đề cập toán mở rộng từ tốn TSP thơng thường, nhiên ta đưa thêm tắc nghẽn vào đường, kiến xây dựng lời giải chúng gặp phải đoạn đường có tắc nghẽn (xem [11]) Nếu xem khoảng cách thành phố thời gian di chuyển chúng khơng cịn cố định, thời gian tăng tắc nghẽn tăng ngược lại Lưu ý số lượng đỉnh cố định, ta xem khoảng cách đỉnh thay đổi Ngoài điểm quan trọng tắc nghẽn đưa đoạn đường nằm tuyến đường tốt thời điểm Tại thời điểm xác định ta đưa vào tắc nghẽn, chúng tăng dần đến ngưỡng lại giảm xuống trở khơng Đến phần thực nghiệm ta trình bày chi tiết việc đưa vào tắc nghẽn, số lượng tắc nghẽn thời gian cường độ tắc nghẽn Trong toán tĩnh, việc áp dụng phương pháp tăng cường giảm bớt vết mùi (pheromone) cách update bay mùi đem lại hiệu tốt Khi bắt đầu kiến khám phá nhiều đường Sau thời gian mà tất đường không hứa hẹn dần bị loại khỏi khơng gian tìm kiếm chúng khơng nhận tăng cường mùi đồng thời lượng mùi bay dần theo thời gian Tuy nhiên tốn động phương án tồi trước có biến đổi mơi trường trở thành phương án tốt sau Do thuật toán ta hội tụ trạng thái mà phương án tồi bị bỏ qua nhiều phương án hứa hẹn không lấy kết ta thu tuyến đường khơng tối ưu nhiều Chúng ta phải tìm cách tránh tượng 28 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 3.2 Cải tiến AS cho phù hợp Thêm cận Như phân tích để tránh bỏ qua phương án tồi thời điểm tại, ta sử dụng cận mùi tức mùi tất đoạn đường lớn Như không xảy tượng mùi đoạn đường trở không khơng kiến lựa chọn Đồng thời mà đưa thêm vào cận ta làm tăng thêm khả khám phá cho kiến Tuy nhiên việc lựa chọn giá trị cận cho phù hợp điều quan trọng đòi hỏi cần qua bước thực nghiệm Kỹ thuật shaking Một thay đổi khác mà ta giới thiệu kỹ thuật shaking Đây kỹ thuật sử dụng mơi trường biến đổi, có tác dụng làm mịn cường độ vệt mùi tất cạnh đồ thị Nếu lượng mùi cạnh trở nên cao nhiều so với tất cạnh khác khỏi thành phố cạnh chắn kiến chọn Điều trường hợp toán tĩnh đảm bảo tuyến đường tốt ln qua cạnh đó, hệ ngăn cản kiến chọn đường khác có tắc nghẽn xảy Shaking thay đổi tỉ số cường độ mùi tất đường, đảm bảo mối quan hệ thứ tự, tức là: ij (t ) i ' j ' (t ) trước shaking sau shaking giữ ngun Cơng thức shaking: ij (t ) (1 log( ij / )) Công thức làm cho cường độ mùi gần dịch chuyển khoảng nhỏ phía giá trị cao dịch chuyển nhiều phía Để ý giá trị nhỏ điều kiện ij (t ) đảm bảo Một vấn đề shaking có tính chất global, tức ảnh hưởng đến cường độ mùi tất đoạn đường Khi gặp tốn có kích 29 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com thước lớn, tắc nghẽn xảy (trên tuyến đường tốt thời điểm đó) tuyến đường cần phải thay đổi lân cận tắc nghẽn Do có nhiều thơng tin bị trình global shaking Vì để tránh mát đưa định nghĩa local shaking Local shaking sử dụng công thức song áp dụng cho đoạn đường gần p.MaxDist đến hai thành phố nơi xảy tắc nghẽn chúng Ở MaxDist khoảng cách lớn hai thành phố tốn TSP gốc (mà chưa có tắc nghẽn) cịn p nằm khoảng (0, 1) Giả mã local shaking: if the distance between cities (a, b) changed then for every road (i, j) if (dai < p ·MaxDist) ∨ (dbi < p ·MaxDist)∨ (daj < p ·MaxDist) ∨ (dbj < p ·MaxDist) then τij = τ0 · (1 + log(τij/t0)) endif endfor endif Lưu ý đưa tắc nghẽn vào đoạn đường nằm tuyến đường tốt Vì cặp thành phố mà xảy tắc nghẽn nói chung gần nhau, ảnh hưởng local shaking (với giá trị p) global shaking khác Một ý khác với p=0 khơng có cạnh bị ảnh hưởng, global shaking tương đương với p=1 tất vệt mùi bị thay đổi(shaking) Giá trị p gọi shaking-percentage 30 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com CHƯƠNG THỰC NGHIỆM VÀ ĐÁNH GIÁ Một vấn đề đặt việc ước lượng đánh giá kết thiếu chuẩn hồn chỉnh Với tốn TSP tĩnh có chuẩn để kiểm chứng: thường kết tốt đơi thời gian cần để có kết với thuật tốn xác định(trên máy tính có cấu hình xác định) Với tốn DTSP khơng có chuẩn cả, buộc phải đưa chuẩn để ước đo hiệu suất thật tốn Có vài thứ hiển nhiên xem xét tốn động Bởi tốn ln thay đổi nên thuật tốn cần đáp ứng trước thay đổi nhanh Trong trường hợp toán DTSP đưa mà tắc nghẽn tạo kiến phải nhanh chóng tìm tuyến đường tốt mà khơng chứa đoạn đường tắc nghẽn Vì tất tắc nghẽn toán ta đưa vào số bước trước tắc nghẽn đạt giá trị cao kiến phải thay đổi đường chúng Sau kiến thay đổi đường chúng để tránh tắc nghẽn, thông thường vài phần nằm tuyến đường tối ưu phải điều chỉnh Nghĩa muốn thấy biến thiên lớn mà tắc nghẽn xảy ra, tương đương với có vài tối ưu thực trước thay đổi xảy Và cuối độ dài tuyến đường hồn tất phải thấp Đối với tốn động có nghĩa phải có giá trị trung bình thấp Khi thảo luận kết thực nghiệm khác ta phân tích vấn đề Chúng ta tiến hành thực nghiệm liệu chuẩn TSP eil51 (xem [14]) Các liệu TSP tìm kiếm mạng dễ dàng Trong q trình tính toán ta 31 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com đưa tắc nghẽn vào để biến chúng thành toán động Cụ thể tắc nghẽn đưa vào trình bày phần thực nghiệm 4.1 Thực nghiệm tsplib eil51 Eil51 thư viện TSP có tổng cộng 51 đỉnh Tại thời điểm mà ta đưa tắc nghẽn lên đoạn đường ta cần đảm bảo đoạn đường nằm đường tối ưu Vì trước đưa tắc nghẽn vào ta chạy khởi tạo thuật toán thời gian đầu trường hợp toán TSP thông thường Điều đảm bảo tìm cặp thành phố gần tất nhiên chúng nằm tuyến đường tốt tìm thấy Chúng ta tiến hành thực nghiệm sau Tối đa mười tắc nghẽn đưa vào đồng thời từ vòng lặp thứ 100 đến vịng lặp thứ 150 Có nghĩa vịng lặp thứ 100 thuật tốn, ta tìm tuyến đường tối ưu tính đến lúc Sau ta chọn tối đa 10 đoạn đường nằm tuyến đường để đưa tắc nghẽn vào Lưu ý tắc nghẽn đưa vào theo cách sau: đoạn đường chọn có độ dài tăng dần sau bước lặp vòng lặp thứ 150 Mỗi vòng lặp chúng làm độ dài đoạn đường tăng lên 50 Bằng cách thuật tốn đáp ứng trước thay đổi nhỏ môi trường(sự lớn lên tắc nghẽn) mà ta kiểm chứng Nhưng tắc nghẽn đưa vào ln lần mà khơng có lớn lên dần thuật tốn khơng thể cho thấy thay đổi tuyến đường tắc nghẽn tiếp tục tăng lên Chúng ta kiểm tra với trường hợp sau: Trường hợp 1: sử dụng cận không shaking (p=0) Trường hợp 2, 3, 4: vừa sử dụng cận dưới, vừa tiến hành kĩ thuật shaking: global shaking với p = 1, local shaking với p = 0.1 p = 0.25 Sau nhiều lần thực nghiệm eil51 thấy tham số sau phù hợp: m = 25, α = 1, β = 5, = 1e-5, ρ = 0.5 Kết biểu diễn biểu đồ thị sau: 32 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Biểu đồ 2a: (Trường hợp 2) p=0(không shaking), cận = 1e-5 Biểu đồ 2b: (Trường hợp 3) p=1(global shaking), cận = 1e-5 Biểu đồ 2c: (Trường hợp 4) p=0.1(local shaking), cận = 1e-5 33 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Biểu đồ 2d: (Trường hợp 5) p=0.25 (local shaking), cận = 1e-5 4.2 Nhận xét Trên đồ thị trên, chiều thẳng đứng biểu thị tuyến đường tốt vòng lặp tương ứng (chiều ngang) Quan sát đồ thị ta có nhận xét: Ở biểu đồ 2a, với việc sử dụng cận dưới, độ dài tăng gặp tắc nghẽn vòng lặp thứ 100 sau độ dài đường giảm xuống nhanh, chứng tỏ kiến tìm đường tránh tắc nghẽn Khi đưa thêm kĩ thuật shaking vào (xem hình 2b, 2c, 2d) ta có nhận xét độ dài giảm xuống rõ rệt sau tắc nghẽn Tuy nhiên hình 2b với global shaking (p = 1) kết độ dài đường mà gặp tắc nghẽn lớn so với local shaking (p = 0.1 p = 0.25 hình 2c, 2d) Việc lựa chọn giá trị shaking_percentage quan trọng tùy thuộc vào tốn kích thước tốn Nếu kích thước tốn nhỏ global shaking khơng khác nhiều so với local shaking , tức khác biệt lựa chọn giá trị shaking_percentage đỉnh gần số lượng đỉnh Khi kích thước tốn lớn global shaking làm mát nhiều thông tin mà kiến tích lũy được, làm thay đổi tất lượng mùi tất tuyến đường Còn chọn giá trị shaking_percentage nhỏ số 34 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com đoạn đường chịu ảnh hưởng q trình shaking ta cung khơng tìm kết tốt Một tham số khác quan trọng giá trị cận dưới, chọn cận q nhỏ tác dụng không đáng kể, lượng mùi cạnh giảm xuống thấp làm giảm khả khám phá điều quan trọng toán DTSP Ngược lại chọn cận lớn, thuật toán thiên hướng ngẫu nhiên nhiều hiệu thuật toán giảm Cân giá trị ta đạt kết cao giải toán Thuật toán gặp phải nhược điểm nhược điểm thuật toán AS mà ta thấy sau (xem biểu đồ 3a) mà số đỉnh tốn lớn hiệu thuật tốn bị giảm mạnh Thực nghiệm TSPLIB att532 với tham số m = 100, α = 1, β = , ρ = 0.5, = / mρCnn , p = 0.01 với Cnn độ dài đường tìm cách chọn láng giềng gần Ta thu kết độ dài đường không cải thiện mà kiến gặp phải tắc nghẽn Đồ thị 3a Độ dài trung bình đường vòng lặp với att532 Nguyên nhân mà hiệu thuật tốn bị giảm sút kích thước lớn thí có nhiều cạnh khơng cập nhật thuật toán AS chúng giảm mùi nhanh giá trị cận dưới, làm cho thuật tốn khó lịng lựa chọn cạnh này, việc lựa chọn cận cho phù hợp điều khó khăn 35 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Để khắc phục tượng thay sử dụng ký thuật shaking cận với thuật toán AS, ta sử dụng kết hợp kỹ thuật shaking với thuật tốn MMAS, MMAS có nhiều ưu điểm so với AS đồng thời thuật tốn MMAS giải tốn kích thược lớn Bằng cách chọn tham số mà nhiều lý thuyết tốt MMAS: τmax = / ρCnn τmin = τmax / 2n n số đỉnh Cnn độ dài đường tìm cách chọn láng giềng gần Và sử dụng giá trị shaking_percentage với AS p=0.01, giá trị tham số: m = 100, α = 1, β = , ρ = 0.5 so sánh với thuật toán AS cải tiến cho DTSP ta có kết khả quan hẳn (xem đồ thị 3b) Đồ thị 3b Độ dài trung bình đường vịng lặp thuật tốn AS cải tiến MMAS cải tiến cho tsplib att532 Ta nhận thấy sau gặp tắc nghẽn cải tiến mà luận văn đề xuất tỏ hoạt động tốt, giảm độ dài đường sau tắc nghẽn tăng thêm vòng lặp điều chỉnh lại đường giảm xuống nhanh chóng, đặc biệt sau tắc nghẽn khơng cịn 36 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com PHẦN KẾT LUẬN Trong loại DTSP trình bày khóa luận này, tắc nghẽn điều chỉnh cho tăng dần tuyến đường xác định theo thời gian Với cách tắc nghẽn lớn dần bước so sánh hiệu thuật toán lần thực nghiệm khác cách dễ dàng Những kết thực nghiêm thu cho phép ta rút kết luận thuật tốn AS với cải tiến định có khả giải tốt toán DTSP Ở thuật tốn ta hình thành cách mở rộng từ thuật toán AS cho toán TSP thông thường cách đưa thêm vào hành động hay nói kỹ thuật shaking mà ta trình bày kỹ Khi mà tần số động tốn DTSP cao điều quan trọng ta cần phải giữ thông tin tích lũy ma trận mùi Đó lí mà ta thay đổi toàn lượng mùi tất tuyến đường global shaking kết lượng thơng tin lưu trữ gần bị làm cho hiệu thuật toán bị tụt dốc Điểm mạnh thuật tốn ta điều chỉnh tham số shaking_percentage local shaking cho phù hợp với toán cụ thể với kích thước đặc điểm khác Điểm yếu thuật toán giống với AS, hiệu suất giảm mạnh tăng số lượng đỉnh lên Và với cải tiến cách áp dụng kỹ thuật shaking lên thuật tốn MMAS thay thuật tốn AS ta có thuật tốn mà có kết tốt nhiều so với thuật toán ban đầu tốn kích thước lớn 37 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com THAM KHẢO [15] Huy Q D, Dong Do Duc, and Huan Hoang Xuan Multi-level ant system - a new approach through the new pheromone update for ant colony optimization In: the 2006 Inter-national Conference on Research, Innovation and Vision for the Future, pp 5558, (2006) [2] A Colorni, M Dorigo, and V Maniezzo, Distributed optimization by ant colonies, Proceedings of ECAL'91, European Conference on Artificial Life, Elsevier Publishing, Amsterdam, 1991 [8] A Zhou, L Kang, and Z Yan, “Solving dynamic TSP with evolutionary approach in real time,” in Proc of the Congress on Evolutionary Computation, Canberra, Australia, 2003, vol 2, pp 951-957 [11] Casper Joost Eyckelhof Ant systems for dynamic problems, the TSP case - ants caught in a traffic jam Master’s thesis, University of Twente, The Netherlands, August 2001 Available throug http://www.eyckelhof.nl [6] Goss, S., Aron, S., Deneubourg, J L., & Pasteels, J M (1989) Self-organized shortcuts in the Argentine ant Naturwissenschaften, 76, 579–581 [1] J.L Denebourg, J.M Pasteels et J.C Verhaeghe, Probabilistic Behaviour in Ants : a Strategy of Errors?, Journal of Theoretical Biology, numéro 105, 1983 [10] K Shinozawa, T Uchiyama, and K Shimohara, “An approach for solving dynamic TSPs using neural networks,” in Proc of the IEEE International Joint Conference on Neural Networks, Singapore, 1991, vol 3, pp 2450-2454 38 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com [3] M Dorigo, V Maniezzo, and A Colorni, The ant system: an autocatalytic optimizing process, Technical Report TR91-016, Politecnico di Milano (1991) [4] M Dorigo, Optimization, learning and natural algorithms, Ph.D Thesis, Politecnico di Milano, Milano, 1992 [13] Michael Guntsch, Martin Middendorf, and Hartmut Schmeck An ant colony optimization approach to dynamic TSP In Lee Spector et al., editor, Proceedings of the Genetic and Evolutionary Computation Conference (GECCO-2001), pages 860– 867, San Francisco, California, USA, 7-11 July 2001 Morgan Kaufmann [12] Michael Guntsch, Jurgen Branke, Martin Middendorf, and Hartmut Schmeck ACO strategies for dynamic TSP In Marco Dorigo et al., editor, Abstract Proceedings of ANTS’2000, pages 59–62, 2000 [7] Traveling Salesman Problem for Dynamic Graphs Kovrig Antal Attila CIR Report No 052005 July, 2005 [9] Z.-C Huang, X.-L Hu, and S.-D Chen, “Dynamic traveling salesman problem based on evolutionary computation,” in Proc of the Congress on Evolutionary Computation, Seoul, Korea, 2001, vol 2, pp 1283-1288 [5] M Dorigo, Ant colony http://iridia.ulb.ac.be/mdorigo/ACO/ACO.html optimization web page, [14] http://www.iwr.uni-heidelberg.de/groups/comopt/software/TSPLIB95/tsp/ 39 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... problems) Khóa luận trình bày cách khái quát phương pháp tối ưu hóa đàn kiến (Ant Colony Optimization), trình bày phương pháp áp dụng thuật tốn tối ưu hóa đàn kiến cho toán người chào hàng động (Dynamic...TĨM TẮT Phương pháp tối ưu hóa đàn kiến (Ant Colony Optimization – ACO) phương pháp mà ngày người ta quan tâm hiệu trội so với phuoeng pháp khác giải tốn tối ưu hóa tổ hợp (Combinatorial... tổng đài điện thoại Một cách tiếp cận có hiệu tốn tối ưu tổ hợp tĩnh phương pháp tối ưu hóa đàn kiến (Ant Colony Optimization- ACO) ACO phương pháp metaheuristic nhiều người quan tâm Thuật toán