8

Tôi đã đọc những thứ ở đây và ở đó trong một thời gian bây giờ về việc sử dụng một mô hình "ant colony" như một cách tiếp cận heuristic để tối ưu hóa các loại thuật toán khác nhau. Tuy nhiên, tôi vẫn chưa tìm thấy một bài báo hay một cuốn sách thảo luận về tối ưu hóa thuộc địa kiến ​​một cách giới thiệu, hoặc thậm chí trong rất nhiều chi tiết. Bất cứ ai có thể chỉ cho tôi một số tài nguyên mà tôi có thể tìm hiểu thêm về ý tưởng này?Tôi có thể tìm hiểu thêm về tối ưu hóa "thuộc địa" ở đâu?

Trả lời

5

Nếu bạn biết tiếng Đức (vâng, xin lỗi ...), một người bạn và tôi đã viết introduction with code về chủ đề này mà bản thân tôi thấy khá dễ hiểu. Văn bản và mã sử dụng ví dụ về TSP để giới thiệu khái niệm.

Thậm chí nếu bạn không biết tiếng Đức, hãy xem mã và các công thức trong văn bản, điều này vẫn có thể phân phát.

+0

Cảm ơn cho liên kết này! Thật không may, tiếng Đức của tôi bị hạn chế với những gì tôi học được ở trường cấp hai (muốn thảo luận về thời tiết?) Nhưng Google Translate đã làm một công việc tuyệt vời trên bài báo. – MattK

+0

Tôi nghĩ bản dịch của truyện tranh XKCD khá tốt ... phần còn lại ... không quá nhiều. ;-) Lưu ý: Đây không phải là cách tôi nói tiếng Đức bình thường. –

1

Thoạt nhìn, điều này dường như liên quan chặt chẽ đến (hoặc có lẽ là trường hợp đặc biệt) the Metropolis algorithm. Đó là một hướng khác để tìm kiếm.

Addition:This PDF file bao gồm một tham chiếu đến giấy Metropolis gốc từ năm 1953.

3

Các nguồn lực tốt nhất cho các chủ đề này là Google scholar. Ive đã làm việc trên các thuật toán tối ưu hóa Ant Colony một thời gian, đây là một số giấy tờ tốt:

Chỉ search for "Ant Colony" on google scholar.

Ngoài ra, tìm kiếm các giấy tờ được xuất bản bởi Marco Dorigo.

1

Vâng, tôi đã tìm thấy Homepage of Eric Rollins và các triển khai khác nhau của mình (Haskell, Scala, Erlang, ...) của thuật toán ACO hữu ích. Và cuốn sách từ Enrique Alba, có tiêu đề "Metah Metaheuristics: Một lớp mới của thuật toán", nơi bạn có thể tìm thấy toàn bộ chương giải thích về thuật toán ACO và cách sử dụng khác nhau của chúng.

Hth

5

link Wikipedia thực sự đã bắt đầu. Tôi đọc bài báo và viết mã. Tôi đã giải quyết một biến thể xấu xa của vấn đề người bán hàng đi du lịch. Đó là một siêu-heuristic tuyệt vời. Về cơ bản, bất kỳ loại vấn đề tìm kiếm nào có thể được đưa vào biểu đồ (các nút & cạnh, đối xứng hay không) có thể được giải quyết bằng ACO.

Tìm hiểu sự khác biệt giữa các đường mòn pheromone toàn cầu và cục bộ. Pheromone cục bộ không khuyến khích một thế hệ kiến ​​đi qua cùng một đường dẫn. Họ giữ cho mô hình không hội tụ. Pheromone toàn cầu là những người thu hút và nên ăn ít nhất một con kiến ​​trên mỗi thế hệ. Họ khuyến khích những con đường tối ưu qua nhiều thế hệ.

Đề xuất tốt nhất mà tôi có, chỉ đơn giản là để chơi với thuật toán. Thiết lập trình giải quyết TSP cơ bản và một số hình ảnh thuộc tính cơ bản. Sau đó, có một số thú vị. Làm việc với kiến, khái niệm, là cách mát mẻ. Bạn lập trình hành vi cơ bản của họ và sau đó đặt chúng lỏng lẻo. Tôi thậm chí còn thích chúng hơn. :)

ACO là một hình thức tham khảo thuật toán di truyền. Chơi với chúng. Thay đổi hành vi giao tiếp và hành vi đóng gói của họ. Bạn sẽ nhanh chóng bắt đầu thấy lập trình mạng/đồ thị theo một cách hoàn toàn khác. Đó là lợi ích lớn nhất của họ, không phải là công thức mà hầu hết mọi người nhìn thấy nó như là.

Bạn chỉ cần chơi với nó để thực sự hiểu nó. Sách & tài liệu nghiên cứu chỉ cung cấp cho một sự hiểu biết chung trên bầu trời cao. Giống như một chiếc xe đạp, bạn chỉ cần bắt đầu đi. :)

ACO, cho đến nay, là trừu tượng ưa thích của tôi cho các vấn đề về đồ thị.

2

Tôi ngạc nhiên chưa ai đề cập đến kinh thánh của ACO:

Marco Dorigo & Thomas Stützle: Ant Colony Optimization

Cuốn sách này được viết bởi tác giả của ACO và nó là rất dễ đọc. Bạn có thể mang nó đến bãi biển và vui chơi đọc nó. Nhưng nó cũng là nguồn tài nguyên hoàn chỉnh nhất của tất cả, tuyệt vời như một tham chiếu khi thực hiện điều này.

Bạn có thể đọc một số excerpts on Google Books

Một nguồn tuyệt vời của sự khôn ngoan là ACO Homepage

Các vấn đề liên quan