Kết quả thực nghiệm sẽ phụ thuộc vào các tham số cài đặt, để tiến hành so sánh với SMMAS đã làm trước đây nhằm đánh giá sự hiệu quả của mỗi thuật toán t i đã cài đặt cùng bộ các tham số Đỗ Đức Đ ng đã làm (xem [1]). Vì ACO là lớp thuật toán meta-heuristic nên mỗi lần chạy sẽ cho các kết quả cụ thể là khác nhau, nên tôi tiến hành chạy chương trình 10 lần trên mỗi bộ d liệu, thống kê kết quả thu được, so sánh thông qua 2 tiêu trí là kết quả tốt nhất và kết quả trung bình của 10 lần chạy đó.
Tác giả D.P.Williamson đã chứng minh được rằng việc tìm nghiệm xấp xỉ cho thời gian hoàn thành tất cả các công việc kh ng vượt quá 5/4 thời gian hoàn thành tối ưu cũng đã là bài toán thuộc lớp NP-khó (xem [18]). Do đó, ngoài việc so sánh hiệu quả gi a các thuật toán, luận văn còn so sánh kết quả thu đươc của
48
các thuật toán với 5/4 thời gian tối ưu (Optimization - Opt) để thấy được hiệu quả của các thuật toán ACO
Chương trình được viết bằng ngôn ng c++, sử dụng Dev-C để soạn thảo và biên dịch trên m i trường windows. Sau khi biên dịch chương trình thu được file TSIACO.exe, đặt file exe cùng thư mục với 10 file trong bộ d liệu ùng để chạy thực nghiệm
Hình 5.1: Thư mục file chương trình và liệu thực nghiệm
Từ cửa sổ cmd của windows di chuyển tới thư mục chứa file exe
Hình 5.2: Di chuyển tới thư mục chứa file chạy chương trình
Sau đó ta gọi file TSIACO.exe cùng tham số -i orbx.txt để chạy chương trình với file d liệu orbx.txt
49
Hình 5.3: Chạy chương trình với tham số file d liệu
Chương trình sẽ chạy khoảng 2 phút và ta thu được kết quả như sau
Hình 5.4: Kết quả chạy chương trình
Với hình trên ta thấy rằng, sau khi chạy chương trình với bộ d liệu orb01.txt, kết quả thời gian tốt nhất hoàn thành các công việc là 1367, trình tự thực hiện các công việc như trong phần đánh ấu trên hình. Trình tự công việc là dãy các chi tiết gồm 2 tham số (a,b) giai đoạn thứ b của công việc thứ a.