Hệ thống bầy kiến

Một phần của tài liệu Giải thuật bầy kiến giải bài toán VRP với hạn chế thời gian (VRPMTW) (Trang 61 - 64)

d) Tìm kiếm Tabu

3.5.3.Hệ thống bầy kiến

Hệ thống bầy kiến (Ant Colony System – ACS) được đưa ra bởi Dorigo và Gambardella vào năm 1997[2]. ACS khác AS ở ba điểm chính. Thứ nhất, ACS khai thác kinh nghiệm tìm kiếm của kiến nhiều hơn trong AS thông qua việc sử dụng luật lựa chọn hành động tốt hơn. Thứ hai, việc bay hơi mùi và đặt mùi trên đường đi chỉ xảy ra trên các cạnh thuộc về lộ trình tốt nhất tìm được kể từ khi bắt đầu giải thuật. Thứ ba, mỗi lần kiến sử dụng cạnh (i, j) để di chuyển từ thành phố i tới thành phố j, nó loại bỏ một số mùi trên cạnh để tăng khả năng khám phá các đường tốt khác.

Trong ACS, việc xây dựng chuyến đi được thực hiện như sau: khi đang ở thành phố k, kiến k di chuyển tới thành phốj được chọn tùy theo luật tỉ lệ giả ngẫu nhiên có công thức: [ ] { } ⎪⎩ ⎪ ⎨ ⎧ ≤ = ∈ l¹i; ng−îc q q nÕu 0 J j argmaxl Nik τil ηil β , ; (3.13) với q là biến ngẫu nhiên phân bố trong khoảng [0, 1], q0 (0 ≤ q0 ≤ 1) là một tham số và J là biến ngẫu nhiên được lựa chọn theo phân bố xác suất tính theo công thức (3.8) với α = 1.

Nói một cách khác, với xác suất q0 kiến đưa ra di chuyển tốt nhất có thể được chỉ ra bởi vệt mùi có huấn luyện và thông tin mẹo (trong trường hợp này, kiến đang khám phá tri thức huấn luyện được), còn với xác suất (1 – q0), kiến thực hiện khám phá theo thế hiệu dịch của các cạnh.

Việc cập nhật vệt mùi được thực hiện như sau: trong ACS, chỉ một con kiến (tốt nhất tính đến thời điểm này) được phép thêm mùi sau mỗi lần lặp. Do vậy, cập nhật vệt mùi được thực hiện bởi công thức sau:

τij =(1−ρ)τij + ρ|Jψgb,∀(i, j)∈ψgb, (3.14) với ρ (0 ≤ρ ≤ 1) là tham số và Jψgblà chiều dài của ψgb- đường đi ngắn nhất tạo bởi các chú kiến kể từ khi bắt đầu tính toán. Trong quá trình cập nhật vệt mùi của ACS, cả việc bay hơi và để lại mùi chỉ áp dụng cho các cạnh của

gb

ψ , không phải là cho tất cả các cạnh trong AS. Đây là điều khá quan trọng vì theo cách này, độ phức tạp tính toán tại mỗi bước lặp sẽ giảm từ O(n2) thành O(n), với n là kích thước của bài toán đang được giải quyết. Tham số ρ

biểu diễn việc bay hơi; trong công thức (3.14) lượng mùi để lại bị giảm bởi hệ sốρ dẫn tới vệt mùi mới là trung bình của giá trị mùi cũ và giá trị mùi để lại. Như vậy, đây thực chất là việc cập nhật vệt mùi tổng thể cho toàn bầy kiến. Bên cạnh luật cập nhật vệt mùi tổng thể như trên, trong ACS, các chú kiến sử dụng luật cập nhật vệt mùi cục bộ ngay sau khi đi qua một cạnh (i, j) trong suốt quá trình xây dựng hành trình. , ) 1 ( ξ τ ξτ0 τij ← − ij + (3.15) với ξ, 0 < ξ < 1, và τ0 là hai tham số. Giá trị của τ0 được đặt bằng giá trị khởi tạo của vệt mùi. Giá trị tốt cho ξ là 0.1, còn giá trị tốt cho τ là 1/nCnn, n là số thành phố và Cnn là chiều dài của hành trình láng giềng gần nhất. Kết quả của luật cập nhật cục bộ là tại mỗi lần một con kiến sử dụng cạnh (i, j) vệt mùi của nó τij bị giảm nên cạnh trở thành ít được mong muốn hơn cho các chú kiến sau. Nói cách khác, việc này cho phép tăng khả năng khám phá các cạnh chưa được thăm và trong thực tế, có hiệu quả là giải thuật không bị tắc nghẽn, ví dụ kiến không hội tụ về một đường chung.

MMAS và ACS có một mối quan hệ tương đối thú vị, đó là chúng cùng sử dụng các giới hạn vệt mùi, mặc dù các giới hạn này là rõ ràng trong MMAS còn là không rõ ràng trong ACS. Trong thực tế thực hiện ACS, vệt mùi có thể không bao giờ giảm xuống dưới τ0 vì cả hai công thức (3.13) và (3.14) luôn luôn thêm vào một lượng mùi lớn hơn hoặc bằng τ0 và giá trị vệt mùi ban đầu được đặt bằng τ0. Do vậy với ACS, ta luôn đảm bảo rằng với mọi (i, j): τ0 ≤τij≤ 1/Cbs.

Cuối cùng, ACS là giải thuật ACO đầu tiên sử dụng danh sách ứng cử viên để giới hạn số lượng các lựa chọn sẵn có được xem xét tại mỗi bước lặp.

Ví dụ, với bài toán người du lịch, danh sách ứng cử viên cho mỗi thành phố i

là các thành phốj có khoảng cách với thành phối là nhỏ nhất và việc sử dụng danh sách này sẽ tăng chất lượng của lời giải tìm được bởi giải thuật ACO (theo Gambardella và Dorigo, 1996).

Chương 4 – ÁP DNG ACS VÀO VRPTW

Một phần của tài liệu Giải thuật bầy kiến giải bài toán VRP với hạn chế thời gian (VRPMTW) (Trang 61 - 64)