Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 69 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
69
Dung lượng
743,45 KB
Nội dung
TRƢỜNG ĐẠI HỌC SƢ PHẠM HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN PHÙNG CÔNG TUẤN TÌM HIỂU VÀ NGHIÊN CỨU THUẬT TOÁN HỆ KIẾN MAX-MIN KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN Ngƣời hƣớng dẫn khoa học Th.S Lƣu Thị Bích Hƣơng Hà Nội – 2012 -1- LỜI CẢM ƠN Trong suốt trình học tập làm khóa luận, em nhận đƣợc giúp đỡ, tạo điều kiện Khoa CNTT, thầy cô giáo Khoa CNTT Bên cạnh giúp đỡ nhiều ngƣời thân, bạn bè để em có đƣợc kết ngày hôm Trƣớc hết em xin tỏ lòng kính trọng cảm ơn cô giáo Th.S Lƣu Thị Bích Hƣơng, cô tận tình bảo, hƣớng dẫn cho em hoàn thành đƣợc khóa luận Xin cảm ơn thầy, cô giáo Khoa Công nghệ thông tin – Đại học sƣ phạm Hà Nội 2, bạn lớp K34 – CNTT tận tình giúp đỡ, giới thiệu tài liệu, sách tham khảo để khóa luận đƣợc hoàn thành hạn Cuối lòng biết ơn đến quan tâm, chăm sóc tạo điều kiện gia đình để tập trung vào việc học tập hoàn thành khóa luận Do thời gian thực không nhiều nên khóa luận không tránh khỏi thiếu sót Rất mong nhận đƣợc đóng góp thầy cô giáo bạn để khóa luận đƣợc hoàn thiện Xin chân thành cảm ơn! Hà Nội, tháng năm 2012 PHÙNG CÔNG TUẤN -2- LỜI CAM ĐOAN Tên em là: PHÙNG CÔNG TUẤN Sinh viên lớp: K34 – CNTT, trƣờng đại học sƣ phạm Hà Nội Em xin cam đoan: Đề tài: “Tìm hiểu nghiên cứu thuật toán hệ kiến Max – Min” nghiên cứu riêng em, dƣới hƣớng dẫn cô giáo Th.S Lƣu Thị Bích Hƣơng Khóa luận hoàn toàn không chép tác giả khác Nếu sai em xin hoàn toàn chịu trách nhiệm Hà Nội tháng 5/2012 Ngƣời cam đoan Phùng Công Tuấn -3- MỤC LỤC Trang LỜI CẢM ƠN LỜI CAM ĐOAN MỤC LỤC MỞ ĐẦU Chƣơng – CƠ SỞ LÝ THUYẾT 1.1 Các khái niệm 1.1.1 Định nghĩa đồ thị 1.1.2 Các khái niệm 10 1.2 Biểu diễn đồ thị máy tính 13 1.2.1 Ma trận kề (ADJACENCY MATRIX) 13 1.2.2 Danh sách cạnh (EDGE LIST) 14 1.2.3 Danh sách kề (ADJACENCY LIST) 15 Chƣơng – LƢỢC SỬ PHÁT TRIỂN CỦA CÁC THUẬT TOÁN ACO 18 2.1 Nguồn gốc sinh học thuật toán kiến 18 2.2 Truyền thông gián tiếp – stigmergy 22 2.3 Quá trình phát triển thuật toán ACO 23 2.3.1 Hệ kiến 23 2.3.2 Hệ đàn kiến 26 2.3.3 Thuật toán hệ kiến Max-Min 29 Chƣơng – PHƢƠNG PHÁP TỐI ƢU HÓA ĐÀN KIẾN: ACO 32 3.1 Một số heuristic ACO 32 3.2 Meta – Heuristic tối ƣu hóa đàn kiến 33 3.2.1 Bài toán tổng quát 33 -4- 3.2.2 Thuật toán ACO tổng quát 35 3.2.3 Xây dựng lời giải 38 3.2.4 Cập nhật mùi 39 3.3 Đặc tính hội tụ vết mùi 40 3.4 Các thuật toán ACOmin 43 Chƣơng – THUẬT TOÁN HỆ KIẾN MAX-MIN 46 4.1 Giới thiệu hệ kiến Max-Min 46 4.2 Cập nhật vết mùi 46 4.3 Giới hạn vết mùi 47 4.4 Một số nguyên lý ứng dụng thuật toán hệ kiến Max-Min 49 4.5 Xây dựng ứng dụng 53 4.5.1 Phát biểu toán 53 4.5.2 Giải toán 54 KẾT LUẬN 57 TÀI LIỆU THAM KHẢO 58 PHỤ LỤC 61 -5- MỞ ĐẦU Mục đích lý chọn đề tài 1.1 Lý chọn đề tài Các toán tối ƣu tổ hợp (Combinatorial Optimization Problems COP) đóng góp vai trò quan trọng thực tế, có nhiều ứng dụng lĩnh vực kinh tế, sản xuất Khi giải toán tối ƣu tổ hợp khó thƣờng gặp trở ngại lớn, thuật toán truyền thống thƣờng khó giải quyết, thuật toán mô tự nhiên nhƣ luyện kim, di truyền, tiến hóa, hệ kiến tỏ có ƣu Trong thập kỷ qua thuật toán ACO tỏ phƣơng pháp trội để giải toán tối ƣu tổ hợp khó Tối ƣu hóa đàn kiến (Ant Colony Optimization - ACO) cách tiếp cận meta - heuristic tƣơng đối đƣợc đề xuất Marco Dorigo đồng nghiệp năm 1991 Một thành công lớp thuật toán ACO giải tốt toán tiếng Ngƣời chào hàng (Traveling Salesman Problem-TSP) với số thành phố lớn, 2000 Từ đến ACO ngày thu hút đƣợc quan tâm nghiên cứu giới khoa học hiệu trội đƣợc chứng minh thực nghiệm nhƣ giải tối ƣu tổ hợp điển hình: Bài toán phân công bậc hai (Quadratic Assignment Problem-QAP), Bài toán lập lịch công việc (Job-shop Scheduling Problem-JSP), Bài toán định đƣờng xe tải (Vehicle Rouling Problem -VRP), Bài toán tô màu đồ thị (Graph Coloring Problem-GCP), Bài toán siêu dãy chung ngắn (Shortest Colnmon Supersequence Poblem-SCS)… -6- Trong ACO, hệ kiến Max-Min (Max-Min Ant System-MMAS) tỏ đơn giản, thông dụng đƣợc nhiều ngƣời ƣa dùng so với thuật toán kiến trƣớc nhƣ hệ kiến (Ant System-AS), hệ đàn kiến (Ant Conoly System-ACS) Hệ kiến Max-Min thuật toán đề xuất cập nhật mùi theo tƣ tƣởng Max-Min Năm 1999, nhằm mục đích đƣa lƣợc đồ làm việc chung cho thuật toán kiến, Marco Dorigo, Luca M Gambardella Gianni Di Cao khái quát hóa thành lớp ACO ứng dụng cách phong phú để giải toán tối ƣu tổ hợp tĩnh động Xuất phát từ tính thực tiễn thiết thực em xin chọn đề tài : “Nghiên cứu tìm hiểu thuật toán hệ kiến Max –Min” 1.2 Mục đích Mục đích nghiên cứu đề tài tìm hiểu thêm thuật toán có lời giải tốt cho toán tối ƣu tổ hợp tạo nguồn tài liệu sở cho nghiên cứu thuật toán tối ƣu hóa đàn kiến Nhiệm vụ, yêu cầu 2.1 Nhiệm vụ - Nghiên cứu lý thuyết đồ thị để phục vụ cài đặt giải toán Người giao hàng thuật toán hệ kiến Max – Min - Nghiên cứu tìm hiểu thuật toán hệ kiến Max – Min thuật toán liên quan - Tìm hiều ngôn ngữ lập trình C# để tiến hành cài đặt giải toán Người giao hàng thuật toán hệ kiến Max – Min 2.2 Yêu cầu Xây dựng cài đặt chƣơng trình giải toán Người giao hàng ứng dụng thuật toán hệ kiến Max – Min Phƣơng pháp nghiên cứu: -7- - Phƣơng pháp nghiên cứu chủ yếu tham khảo tài liệu, viết liên quan tới đồ thị, thuật toán hệ kiến - Tìm nguồn tài liệu Internet, sách báo liên quan - Phƣơng pháp thực nghiệm Phạm vi nghiên cứu Nội dung nghiên cứu thuật toán nói chung nhƣ thuật toán kiến nói riêng đa dạng phong phú Do thời gian có hạn em không hy vọng tìm hiểu đƣợc hết nội dung liên quan tới đề tài, xin giới hạn phạm vi nghiên cứu nhƣ sau: - Tìm hiểu sở lý thuyết đồ thị, để giải toán Người giao hàng - Tìm hiểu nội dung thuật toán Hệ kiến, nghiên cứu thuật toán ACO theo quy tắc cập nhật mùi Max-Min - Xây dựng thuật toán hệ kiến Max-Min sở toán Người giao hàng Ý nghĩa khoa học thực tiễn đề tài Nếu đề tài đƣợc áp dụng vào thực tiễn việc giải toán tối ƣu tổ hợp trở nên không nhiều phức tạp tốn thời gian so với thuật toán truyền thống nhƣ: quy hoạch động, vét cạn… nghiên cứu khoa học đề tài sở vững để em nghiên cứu thuật toán hệ kiến khác Cấu trúc khóa luận Ngoài phần mở đầu phần kết luận, khóa luận đƣợc tổ chức nhƣ sau: Chƣơng 1: Giới thiệu khái niệm đồ thị số cách biểu diễn đồ thị máy tính -8- Chƣơng 2: Giới thiệu nguồn gốc sinh học thuật toán kiến, cách truyền thông gián tiếp lƣợc sử phát triển thuật toán ACO Chƣơng 3: Trình bày phƣơng pháp tối ƣu hoá đàn kiến:ACO Chƣơng4: Giới thiệu thuật toán hệ kiến Max-Min áp dụng vàoxây dựng ứng dụng giải toán Người giao hàng -9- CHƢƠNG CƠ SỞ LÝ THUYẾT 1.1 Các khái niệm 1.1.1 Định nghĩa đồ thị Là cấu trúc gồm đỉnh cạnh nối với đỉnh Đƣợc mô tả hình thức: G = (V,E) V gọi tập đỉnh (Vertices) E gọi tập cạnh (Edges) Có thể coi E tập cặp (u,v) với u v hai đỉnh V Một số hình ảnh đồ thị: Sơ đồ giao thông, mạng máy tính, cấu trúc phân tử… Có thể phân loại đồ thị theo đặc tính số lƣợng tập cạnh E: Cho đồ thị G = (V,E), đƣợc định nghĩa cách hình thức thì: G đƣợc gọi đơn đồ thị hai đỉnh u,v V có nhiều cạnh E nối từ u tới v G đƣợc gọi đa đồ thị hai đỉnh u,v V có nhiều cạnh E nối từ u tới v (Hiển nhiên đơn đồ thị đa đồ thị) G đƣợc gọi đồ thị vô hướng (undirected graph) cạnh E không định hƣớng, tức cạnh nối hai đỉnh u,v cạnh nối hai đỉnh v,u Hay nói cách khác, tập E gồm cặp (u,v) không tính thứ tự G đƣợc gọi đồ thị có hướng (directed graph) cạnh E có định hƣớng, có cạnh nối từ đỉnh u tới đỉnh v nhƣng chƣa -10- G đỉnh lần trở nơi xuất phát cho tổng chi phí cạnh thuộc đường (n cạnh) nhỏ Nhƣ vậy, với đồ thị không đối xứng có (n 1)! đƣờng chấp nhận đƣợc (n 1)! với đồ thị đối xứng Với n lớn ta tìm hết đƣờng tìm đƣợc lời giải đủ tốt phƣơng pháp truyền thống nhƣ: Quy hoạch động, nhánh cận, tìm kiếm địa phƣơng, tìm kiếm heuristic, tính toán tiến hóa phƣơng pháp kết hợp chúng TSP toán tối ƣu tổ hợp khó có nhiều ứng dụng, đƣợc xem toán mẫu dùng để kiểm tra hiệu thuật toán tối ƣu tổ hợp Khi G đồ thị có hƣớng toán TSP đƣợc gọi TSP không đối xứng (Asymmeric Traveling Salesman Problem-ATSP), trƣờng hợp lại gọi TSP đối xứng (gọi tắt TSP), để đơn giản, ta xét toán đồ thị vô hƣớng 4.5.2 Giải toán Cài đặt thuật toán Đồ thị (Sơ đồ giao thông) đƣợc lƣu trữ dƣới dạng file text (.tsp) có cấu trúc nhƣ sau:Hàng bao gồm có số đỉnh (n) số cạnh (m) đồ thị, m hàng hai điểm đầu mút cạnh độ dài tƣơng ứng cạnh Đồ thị đƣợc lƣu trữ dƣới dạng ma trận kề đƣợc cập nhật vào chƣơng trình phƣơng thức LoadGraph() Phƣơng thức Init() phƣơng thức khởi tạo giá trị vết mùi đặt giá trị cho tham số -55- Sau lần chọn đỉnh hành trình kiến thì, mảng đánh dấu đỉnh chƣa thăm, tổng xác suất, xác xuất lựa chọn đỉnh tiếp theo… đƣợc tính lại phƣơng thức CalcP() Đỉnh kiến đƣợc chọn dựa nguyên lý bánh xe sổ xố với phƣơng thức Lottery_Wheel() Sự cập nhật mùi đƣợc thực nhờ Pheromone_Update() Mã nguồn tham khảo thuật toán đƣợc cho phụ lục -56- phƣơng thức Giao diện chƣơng trình Form tạo file test Form tìm đường -57- KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN Các nghiên cứu gần thuật toán ACO tập trung nhiều vào cải tiến hiệu suất thuật toán Trong thuật toán ACO nhƣ hệ kiến, hệ đàn kiến, hệ kiến MAX-MINthì hệ kiến MAX-MIN đƣợc ƣa dùng tính đơn giản, dễ cài đặt Sau thời gian tìm hiểu nghiên cứu em đạt đƣợc kết sau: - Tìm hiểu đƣợc lý thuyết đồ thị số nguyên lý áp dụng sử dụng giải toán TSP - Hiểu đƣợc thuật toán hệ kiến, thuật toán hệ kiến cập nhật mùi theo tƣ tƣởng Max – Min - Nghiên cứu áp dụng đƣợc thuật toán hệ kiến Max – Min xây dựng chƣơng trình giải toán TSP Trong khóa luận này, trình bày cách hệ thống thuật toán hệ kiến giới thiệu thuật toán hệ kiến MAX-MIN nhằm mục đích tạo cho độc giả quan tâm đến thuật toán ACO có nhìn tổng quan thuật toán hệ kiến-thuật toán trội so với thuật toán mô tự nhiên giải toán tối ƣu tổ hợp Hiện nay, thuật toán ACO cho thấy có hiệu suất triển vọng toán tối ƣu tổ hợp Trong tƣơng lai em nghiên cứu hệ kiến MAX-MIN nhằm cải tiến hiệu xuất cho thuật toán để giải toán tối ƣu tổ hợp khả ứng dụng ACO -58- TÀI LIỆU THAM KHẢO [1] Krzysztof Socha, Joshua Knowles and Michael Sampels (2002), “A MAX-MIN Ant System for the University Course Timetabling Problem”, ANTS 2002, LNCS (2463), pp 1-13 [2] Krzysztof Socha, Michael Sampels and Max Manfrin, “Ant Algorithms for the Univerrsity Course Timetabling Problem with Regard to the State-of-the-Art” [3] Hoang Xuan Huan & Dinh Trung Hoang, “On the ant colony system for the postman problem”, Journal of Science, Natural Sciences and Technology, Viet Nam National Univeristy,Ha Noi, vol.18, no 1, 2002, pp 29-37 [4] Hoang Xuan Huan (2003), Convergence Analysis of ACO Algorithms and New Perpectives, manuscript [5] Hoang Xuan Huan, Do Duc Dong and Dinh Quang Huy (2004), “Multi-level Ant System and Typical Combanatorial Optimization Problems”, 2nd Optimization and Scientific Computation Conference, Institue of Mathematics, Ha Noi, Viet Nam, p 15 [6] M.Dorigo, V.Maniezzo and A.Corloni (1991), Positive feedback as a search strategy, Technical Report 91-109, Departimento di electronica e informatica, Poletico di Milano, IT [7] M.Dorigo (1992), Optimization, learning and natural algorithms, PhD.dissertation, Milan Polytechnique, Italy [8] M.Dorigo, V.Maniezzo and A.Corloni (1996), “The Ant System : Optimization by a colony of cooperating agents”, IEEE, Trans.Syst., Man, Cybern.B, vol.26, no.2, pp 29-41 -59- [9] M Dorigo and L.M Gambardella (1997), “Ant Colony System : A cooperative learning approach to the travelling salesman problem”, IEEE Trans, on Evolutionary Computation, vol.1, no.1, pp 53-66 [10] M.Dorigo and M.D.Caro (1999), “The Ant Conoly Optimization metaheuristic, A New Idea in Optimization”, D.Corne, M.Dorigo and F.Glover, Eds London, U.K, McGraw-Hill, pp.11-32 [11] M.Dorigo and Thomas Stutzle (2000), The Ant Colony Optimization Metaheuristic : Algorithms, Applications and Advances [12] Marco Dorigo and Thomas Stutzle (2002), A short Convergence Proof for a class of Ant Colony Optimization Algorithms, IEEE [13] Marco Dorigo, Eric Bonabeau, Guy Theraulaz Future Generation Computer Systems Ant System and Stigmergy, 16 (2000) 851–871 [14] Thomas Stutzle and Holger Hoos (1997), MAX-MIN Ant System and Local Search for the Traveling Salesman Problem, IEEE [15] Stutzle, Hoos (2000), “MAX-MIN Ant System”, Future Generation Computer System, pp 889-914 [16] T Stutzle (July 1997), “MAX-MIN Ant System for the quadratic assignment problem”, Technical Report AIDA–97–4, FG Intellektik, TU Darmstadt, Germany [17] T Stutzle and M Dorigo (1999), “ACO algorithms for the quadratic assignment problem”, New Ideas in Optimization, McGraw-Hill, London, UK, pp 33–50 [18] T Stutzle and H H Hoos (1999), “MAX-MIN Ant System and local search for combinatorial optimization problems”, Meta-Heuristics: Advances and Trends in Local Search Paradigms for Optimization, Kluwer Academic Publishers, Boston, pp 313–329 -60- [19] J.-L Deneubourg, S Goss, J.M Pasteels, D Fresneau, J.-P Lachaud (1987), Self-organization mechanisms in ant societies II:Learning in foraging and division of labour, Experientia Suppl [20] P.P Grassé (1959), “La reconstruction du nid et les coordinations interindividuelles chez bellicositermes natalensis et cubitermes sp”, La théorie de la stigmergie: essai d’interprétation du comportement des termites constructeurs, Insectes Sociaux 6, pp 41–81 -61- PHỤ LỤC Mã nguồn tham khảo thuật toán hệ kiến Max-Min giải toán TSP Các thuộc tính lớp MMAS public const int max = 20; public const int a = 2; /* a va b la tham so neu len moi quan he qua lai giua nong mui va thong tin heuristic*/ public const int b = 5; /* a va b la tham so neu len moi quan he qua lai giua nong mui va thong tin heuristic*/ public const float tmax = 0.5f; //Nong mui max public const float tmin = 0.2f; //Nong mui public const float maxreal = 50000; //Chi phi toi da public const float rho = 0.8f; //He so bay hoi public const int m = 25; //So kien public const int n_c = 500; //So vong lap static public float[,] d;/*mang luu dai cac canh tren thi.*/ static public float[,] t;/*mang luu nong vet mui tren cac canh.*/ static public double[] p;/*mang luu xac xuat lua chon dinh tiep theo tu dinh i.*/ static public float[,] delta;/*mang so thuc chieu luu su cap nhat mui*/ static public float l_best; //Chi phi chu trinh tot nhat static public int n; // So dinh tren thi static int n_loop; static double sum; // Tong cac xac suat static int dem; static int s; // So cung tren thi -62- static float l; static int[] w; //Luu hanh trinh moi kien static public int[] ldd; //Mang luu ket qua static int[] uv; static bool[] mark; static public string filePath=""; static public int[,] chutrinhtotnhat; /*Mang danh dau chu trinh tot nhat de cap nhat mui*/ Lấy đồ thị từ file (.tsp) vào ma trận kề static public void LoadGraph() { string line; string[] fields; if (File.Exists(filePath)) { StreamReader file = null; try { file = new StreamReader(filePath); if ((line = file.ReadLine()) != null) { fields = line.Split(' '); n = int.Parse(fields[0]); s = int.Parse(fields[1]); } d = new float[max, max]; while ((line = file.ReadLine()) != null) { fields = line.Split(' '); d[int.Parse(fields[0]),int.Parse(fields[1])] = float.Parse(fields[2]); d[int.Parse(fields[1]),int.Parse(fields[0])] -63- = float.Parse(fields[2]); } } finally { if (file != null) file.Close(); } } else { MessageBox.Show("Khong tim thay file du lieu!"); } } Phƣơng thức khởi tạo static public void Init() { t = new float[max, max]; delta = new float[max, max]; w = new int[max]; mark = new bool[max]; p = new double[max]; uv = new int[max]; ldd = new int[max]; chutrinhtotnhat = new int[max, max]; for (int i = 1; i < n; i++) for (int j = i + 1; j [...]... dựa vào thay đổi thông tin qua tác động vật lý làm thay đổi môi trƣờng -23- 2.3 Quá trình phát triển của các thuật toán ACO Hệ kiến là thể hiện đầu tiên và điển hình của các thuật toán ACO, hầu hết các thuật toán ACO hiện dùng đều đƣợc phát triển từ thuật toán này Vì vậy, trƣớc khi đi vào tìm hiểu các thuật toán ACO, ta đi tìm hiểu hệ kiến và các cải tiến quan trọng của chúng là hệ đàn kiến và hệ kiến. .. kiến Max- Min có những đặc điểm hoàn toàn khớp với ACO nên có thể xem chúng là những ứng dụng cụ thể của ACO -33- Ở phần tiếp theo sẽ trình bày phƣơng pháp tối ƣu hóa đàn kiến cho lớp bài toán ACO min, sau đó là cơ sở lý thuyết cho vết mùi của hệ MaxMin và đặc tính hội tụ của vết mùi theo quan điểm Max- Min trên hai thuật toán có hiệu suất tốt trong các thuật toán ACO đó là: Hệ đàn kiến và hệ kiến Max- Min. .. đƣa vào hai -30- cận, cận trên ( max ) và cận dƣới ( min ) để khống chế nồng độ các vết mùi trên mỗi cung Chính vì vậy thuật toán đƣợc gọi là hệ kiến Max- Min về sau các thuật toán ACO có tính chất này cũng gọi là thuật toán Max- Min MMAS khống chế nồng độ các vết mùi bằng cách sử dụng cận dƣới min có giá trị nhỏ nhất và cận trên có giá trị lớn nhất là max , nghĩa là tất cả các cạnh ít đƣợc con kiến. .. CỦA CÁC THUẬT TOÁN ACO Trong chƣơng này sẽ giới thiệu lƣợc sử phát triển của các thuật toán ACO, bắt đầu từ các thí nghiệm sinh học về cách chọn đƣờng đi của các con kiến thực rồi đến hình thành ý tƣởng thuật toán từ các thí nghiệm đó, sau đó là sự ra đời của hệ kiến, hệ đàn kiến, hệ kiến Max- Min Các thuật toán kiến có đƣợc nhờ sự quan sát cách chọn đƣờng đi của các con kiến thực Các con kiến là các... w*(t) 2.3.3 Thuật toán hệ kiến Max- Min Hệ kiến Max- Min (Max- Min Ant System-MMAS) đƣợc cải tiến từ AS bằng cách chỉ cho phép một con kiến tốt nhất cập nhật mùi (con kiến có hành trình tốt nhất w(t) kể từ khi bắt đầu thuật toán hoặc con kiến có hành trình tốt nhất w(t) tại bƣớc lặp hiện tại) Để tránh hiện tƣợng tắc nghẽn (stagnation): do nồng độ mùi tập trung ở một số cung quá cao nên các con kiến lựa chọn... kiến Max- Min 2.3.1 Hệ kiến Hệ kiến (Ant System-AS)đƣợc đề xuất từ cách ứng xử đƣợc đề cập ở trên của các con kiến thực, là một thuật toán mà trong đó một tập các con kiến nhân tạo hợp tác với nhau để tìm lời giải của một bài toán bằng việc trao đổi thông tin thông qua mùi đƣợc rải trên các cạnh của một đồ thị Có nhiều thuật toán AS nhƣ ant-cycle, ant-density, và ant-quantity, ở đây chỉ xét thuật toán. .. điểm trong các thuật toán kiến Vì vậy chọn tỷ lệ giữa min và max ảnh hƣởng rất nhiều đến hiệu suất của thuật toán -32- CHƢƠNG 3 PHƢƠNG PHÁP TỐI ƢU HOÁ ĐÀN KIẾN: ACO 3.1 Một số heuristic ACO Trƣớc khi đi vào chi tiết là phần trình bày sơ qua về sự hình thành tên gọi của một số heuristic ACO Năm 1991 Marco Dorigo trong luận án tiến sĩ của ông đã đề xuất thuật toán hệ kiến giải bài toán ngƣời chào... ant-cycle Do thuật toán ant-cycle có kết quả thực nghiệm tốt hơn hai thuật toán kia, nên sau này nó đƣợc gọi đơn giản là thuật toán AS, trong khi hai thuật toán còn lại về sau không còn đƣợc nghiên cứu và phát triển nữa Hệ kiến hoạt động nhƣ sau: mỗi con kiến sinh ra một đƣờng đi (tour) bằng cách chọn những thành phố theo một qui tắc chọn thành phố mới(state transition rule) ngẫu nhiên, những con kiến thích... AS và với các kết quả thực nghiệm đã cho thấy ACS tốt hơn hẳn các thuật toán khác nhƣ luyện kim, di truyền, tiến hóa…tuy nhiên các vết mùi trong ACS vẫn dần về 0 mặc dù khả năng hội tụ cao Năm 1997, Thomas Stutzle và Holger H Hoos đề xuất hệ kiến Max- Min, là thuật toán đầu tiên sử dụng cận trên và cận dƣới để khống chế vết mùi, các vết mùi không bị dần về 0 do đã bị chặn dƣới Khi thử nghiệm hệ kiến MAX- MIN. .. MAX- MIN các tác giả vẫn thu đƣợc các kết quả khả quan tƣơng đƣơng ACS, hệ MMAS đƣợc ƣa dùng hơn vì nó đơn giản, dễ sử dụng Nhằm mục đích đƣa ra một lƣợc đồ làm việc tổng quát cho các thuật toán kiến, năm 1999 Marco Dorigo, Luca M Gambardella và Gianni Di Cao đã đề xuất phƣơng pháp tối ƣu hoá đàn kiến: ACO ACO là một meta-heuristic, sẽ trình bày ở phần tiếp theo Trong ACO, hệ kiến, hệ đàn kiến, hệ kiến ... đƣợc phát triển từ thuật toán Vì vậy, trƣớc vào tìm hiểu thuật toán ACO, ta tìm hiểu hệ kiến cải tiến quan trọng chúng hệ đàn kiến hệ kiến Max- Min 2.3.1 Hệ kiến Hệ kiến (Ant System-AS)đƣợc đề xuất... phạm vi nghiên cứu nhƣ sau: - Tìm hiểu sở lý thuyết đồ thị, để giải toán Người giao hàng - Tìm hiểu nội dung thuật toán Hệ kiến, nghiên cứu thuật toán ACO theo quy tắc cập nhật mùi Max- Min - Xây... 2.3.3 Thuật toán hệ kiến Max- Min Hệ kiến Max- Min (Max- Min Ant System-MMAS) đƣợc cải tiến từ AS cách cho phép kiến tốt cập nhật mùi (con kiến có hành trình tốt w(t) kể từ bắt đầu thuật toán kiến