Các thuật toán ACO đƣợc áp dụng để giải các bài toán tối ƣu tổ hợp, các đặc trƣng của lớp các bài toán tối ƣu tổ hợp đƣợc phát biểu nhƣ sau:
Xét bài toán cực tiểu hóa (S, f,), trong đó S là tập hợp hữu hạn
trạng thái, f là hàm mục tiêu xác định trên S (với sS có giá trị hàm mục tiêu là f(s)), còn là một tập các ràng buộc để xác định S qua các thành
-35-
phần của tập hữu hạn C và các liên kết của tập này. Mục tiêu của bài toán cực tiểu hoá là tìm ra một trạng thái tối ƣu s*, một trạng thái có giá trị cực tiểu.
Bài toán tối ƣu tổ hợp (S,f,) đƣợc ánh xạ thành một bài toán có các đặc tính sau :
1) Cho một tập hữu hạn gồm n thành phần C = {c1, c2, …, cn}. Ta ký hiệu X là tập các dãy trong C độ dài không quá h:
X={<u0,...,uk>/ uiC i k h}.
2) Tồn tại tập con X* X và ánh xạ từ X* lên S sao cho 1( )
s
không rỗng với mọi sS. X* có thể xây dựng đƣợc từ tập con C0
nào đó của C và X*
theo đặc tính 3.
3) Từ C0 mở rộng đƣợc thành X* theo thủ tục tuần tự: a. X0=<u0> là mở rộng đƣợc u1C0.
b. Nếu xk=<u1,...,uk> là mở rộng đƣợc thì tồn tại từ xác định đƣợc tập con J(xk) của C sao cho với mọi uk+1 J(xk) thì xk+1=<u0,...,uk, uk+1> là mở rộng đƣợc và xkX* khi J(xk) là rỗng.
c. Với mọi u0 C0, thủ tục mở rộng nêu trên xây dựng đƣợc mọi phần tử của X*. Không giảm tổng quát, ta giả thiết rằng có tƣơng ứng 1-1 giữa các phần tử trong X* đƣợc mở rộng từ mỗi u0 trong C0.
Ví dụ: Với bài toán TSP thì S là các chu trình trên đồ thị đầy, f là độ dài đƣờng đi, là ràng buộc các chu trình qua mọi đỉnh (và mỗi đỉnh đúng một lần) còn C0 là tập các đỉnh của đồ thị.
-36-
Với các bài toán nhƣ vậy ta xây dựng đồ thị đầy với tập đỉnh V mà mỗi đỉnh của nó tƣơng ứng với mỗi thành phần của C và có thể dùng các thuật toán theo lƣợc đồ ở mục 3.2.2 để giải.