Thuật toán Memetic

Một phần của tài liệu Bài toán xâu gần nhất và phương pháp ACO (Trang 30)

Giai đoạn thứ hai của ACOM-CSP là thực hiện thuật toán Memetic theo lược đồ đã được đặc tả trong hình 3.3. Trong đó, dùng thuật toán ACO-C P để xây dựng quần thể cho mỗi bước lặp và lấy hai lời giải tốt nhất tìm được đến lúc đó làm tập Ωil để áp dụng tìm kiếm địa phương [8]. Nói cách khác, thuật toán này thực hiện theo thủ tục của thuật toán ACO-C P nhưng sau khi đánh giá ở mỗi bước lặp, hai lời giải có khoảng cách tới tập S nhỏ nhất được áp dụng tìm kiếm địa phương để cải tiến chất lượng trước khi cập nhật mùi.

Kỹ thuật tìm kiếm địa phương

Kỹ thuật tìm kiếm địa phương thực hiện như sau: Việc tìm kiếm địa phương cho lời giải t= t1…tn sẽ được thực hiện theo thứ tự ngẫu nhiên của các vị trí cho đến khi có lời giải tốt hơn. Khi vị trí ti được xét, nó sẽ lần lượt được thay thế bởi các ký tự còn lại trong tập Vi cho đến khi có lời giải tốt hơn t thì lời giải tìm được sẽ thay cho t và việc tìm kiếm địa phương cho nó chấm dứt [8] (xem hình 3.4).

Thuật toán ACOM-CSP chạy thuật toán ACO-CSP trong 60% vòng lặp đầu, 40% vòng lặp còn lại chạy thuật toán Memetic-CSP.

Procedure Thuật toán Memetic-CSP Begin

Initialize: Khởi tạo vết mùi

While điều kiện dừng chưa thỏa mãn do For i=1 to n_ants do

Xây dựng lời giải nhờ đồ thị cấu trúc

Đánh giá xác định Ωil gồm k lời giải tốt nhất

Cải tiến lời giải do kiến xây dựng bằng tìm kiếm địa phương cho Ωil

End for

Cập nhật lời giải tốt Cập nhật mùi

End while End;

Hình 3.3 Đặc tả thuật toán Memetic –CSP

Một phần của tài liệu Bài toán xâu gần nhất và phương pháp ACO (Trang 30)