Thuật toán Ant Colony System

Một phần của tài liệu Nghiên cứu một số vấn đề nâng cao chất lượng dịch vụ trong mạng thế hệ mới (Trang 35)

Thuật toán Ant Colony System (ACS) [84] được đề xuất với 3 điểm khác chính so với AS là: Khai thác kinh nghiệm tìm kiếm mạnh hơn trong AS bằng cách sử dụng quy tắc lựa chọn dựa trên thông tin tích lũy nhiều hơn. Cơ chế bay hơi mùi và để lại mùi chỉ trên các cạnh thuộc vào lời giải tốt nhất toàn cục (Gbest-Global-best) nhằm tăng cường thăm dò đường mới. Mỗi lần kiến đi qua cạnh

(i,j) vết mùi sẽ bị giảm trên cạnh(i,j).

Xây dựng lời giải: khi con kiến k đang đứng ở đỉnh i sẽ lựa chọn di chuyển đến đỉnh j theo qui tắc: j = ( argmaxl∈Nk i n τil[ηil]β o Nếu q ≤q0 J Ngược lại (1.3)

với q ∈ [0,1], J là biến ngẫu nhiên phân bố đều; q0 (0≤ q0 ≤ 1) là tham số cho trước, lựa chọn theo phân bố xác suất theo (1.1) với α= 1. Nói cách khác, kiến sẽ lựa chọn khả năng tốt nhất có thể kết hợp giữa thông tin học từ vết mùi và thông tin tri thức với xác suất q0 và khám phá trên các cạnh với xác suất (1−q0). Điều chỉnh tham số q0 sẽ cho phép thay đổi mức độ khai thác và lựa chọn tập trung tìm kiếm quanh lời giải Gbest hoặc khám phá các hành trình khác.

Cập nhật mùi toàn cục: trong ACS chỉ có duy nhất một con kiến tìm được lời giải Gbest được phép để lại mùi sau mỗi lần lặp. Các cạnh (i,j) thuộc lời giải Gbest được cập nhật như sau:

τij = (1−ρ)·τij+ρ·∆τijbest (1.4) trong đó ∆τbest

ij = 1

CGbest với CGbest là độ dài lời giải Gbest.

Vết mùi của ACS chỉ được cập nhật trên các cạnh thuộc TGbest chứ không phải cho tất cả các cạnh như AS. τ là tham số bay hơi của ASC không giống như AS, việc cập nhật vết mùi được thay đổi theo trung bình trọng số của vết mùi cũ và lượng mùi được để lại. Trong thực nghiệm, lời giải tốt nhất trong bước lặp hiện tại Ibest (Iteration-best) được lựa chọn để cập nhật mùi.

Cập nhật mùi cục bộ: bên cạnh việc cập nhật mùi toàn cục, ACS còn cập nhật mùi cục bộ ngay khi cạnh (i,j) có con kiến đi qua theo công thức:

τij = (1−ξ)·τij+ξ·τ0 (1.5)

trong đó τ0 là giá trị mùi được khởi tạo cho tất cả các cạnh, ξ ∈(0,1). Qua thực nghiệm, các giá trị tốt là ξ= 0.1,τ0 = nC1nn với n là số đỉnh, Cnn là độ dài hành trình theo thuật toán heuristic tham ăn.

Hiệu quả của qui tắc cập nhật mùi cục bộ thể hiện ở chỗ mỗi khi kiến đi qua thì vết mùi trên cạnh bị giảm, làm cho các con kiến ít lựa chọn lại cạnh này. Nói cách khác, việc cập nhật mùi cục bộ làm tăng khả năng khám phá các cạnh chưa được sử dụng và đảm bảo đàn kiến không bị dồn vào một đường đi nào dẫn đến bị tắc nghẽn như AS. Do ACS sử dụng cơ chế cập nhật mùi cục bộ nên việc xây dựng hành trình song song hay tuần tự sẽ có ảnh hưởng. Thực nghiệm cho thấy thuật toán ACS yêu cầu tất cả con kiến đồng thời xây dựng hành trình, mặc dù không có kết quả thực nghiệm chứng tỏ sự lựa chọn nào tốt hơn. ACS là thuật toán ACO đầu tiên sử dụng danh sách ứng cử viên để hạn chế số lượng lựa chọn trong quá trình xây dựng lời giải. Việc sử dụng danh sách ứng cử viên sẽ làm tăng chất lượng lời giải và làm giảm độ phức tạp của thuật toán.

Một phần của tài liệu Nghiên cứu một số vấn đề nâng cao chất lượng dịch vụ trong mạng thế hệ mới (Trang 35)