Lập thời lịch).

Một phần của tài liệu Lập trình tiến hóa trí tuệ nhân tạo (Trang 117 - 119)

M Chương 8: Bài Tốn Người Du Lịch Tối Ưu Tổ Hợp )

lập thời lịch).

232

'Tối!Ưu Tổ Hợp m

Những quan sát tương tự cũng cĩ thể được thực hiện cho những

bài tốn lập trình tự (xếp thứ tự khác). Davis mơ tả một thuật giải

di truyền dựa trên thứ tự cho bài tốn tơ màu đồ thị sau đây:

Cho một đồ thị cĩ 8 nút cĩ trọng và n0 màu, tơ màu các nút sao

cho khơng cĩ hai nút kể (bằng một nối trực tiếp) nhau nào trùng màu; điểm là tổng trọng của các nút được tơ màu.

Một thuật giải tham lam đơn giản sẽ sắp xếp các nút theo thứ

tự giảm trọng rồi xử lý (nghĩa là, gán màu hợp lệ đầu tiên trong

danh sách màu cho một nút) theo thứ tự đĩ. Rõ ràng. đây là bài tốn

lập trình tự — tối thiểu một hốn vị nút sẽ trả về lợi tức lớn nhất, vì thế ta tìm trình tự tối ưu của các nút. Cũng hiển nhiên là thuật giải tham lam đơn giản khơng bảo đâm lời giải tối ưu nhất: nên sử đụng

một số kỹ thuật khác. Lần nữa, xét một cách phiến diện thì bài tốn

giống như TSP, ở đây ta theo đuổi thứ tự tốt nhất của các thành phố

được người du lịch thăm. Nhưng bản chất của bài tốn thì khác hẳn. Thí dụ, trong bài tốn tơ màu đồ thị cĩ các trọng của các nút, cịn trong TSP các trọng được phân phối giữa các nút (các khoảng

cách). Davis biểu diễn việc xếp thứ tự là danh sách các nút, (như (2 47148359), là biểu diễn đường đẫn của TSP) và sử dụng hai

tốn tử: lai trên thứ tự (được bàn trong chương 8 là một tốn tử dùng

cho TSP) và đột biến danh sách con tranh giành. Ngay cả đột biến cĩ thể thực hiện một biệu chỉnh cục bộ cho một nhiễm sắc thể,

dường như cũng độc lập bài tốn.

“Thường cĩ khuynh hướng xem các đột biến là hốn vị của các

giá trị thuộc hai vùng trên nhiêm sắc thể. Tơi đã thử điều này trên nhiều bài tốn khác nhau, nhưng nĩ cũng khơng thể thực hiện như

một tốn tử mà tơi gọi là đột biến danh sách con tranh giành.” Đột biến danh sách con tranh giành chọn một đành sách con các nút từ một cha-me và giành nĩ trong đứa con, nghĩa là cha-me 233

M Chương 9 : Các Bài Tốn Tối Ưu Tố Hợp Khác

tđược đánh dấu bằng Ì', ở chỗ bát đầu và kết thúc của danh sách con được chọn):

p=(2417148l359

cĩ thể sinh con:

o=(2414817135 9).

Tuy vậy, vẫn cịn phải xem cách tốn tử này thực hiện đối với những bài tốn xếp thứ tự hay lập lịch khác.

“Nhiều loại đột biến khác cĩ thể được dùng trong những bài

tốn dựa trên thứ tự. Đột biến danh sách con tranh giành là loại

thường được dùng nhất. Cho đến nay chưa cĩ báo cáo đây đủ nào về những loại tốn tử này, mặc dù đây là chủ để đẩy hứa hẹn cho sự

nghiệp mai sau.”

"Trở về với bài tốn lập lịch. Như đã nĩi trước đây, Syswerda xây dựng một chương trình tiến hĩa cho bài tốn lập lịch. Nhưng

một biểu diễn nhiễm sắc thể đơn giản đã được chọn,

“Chúng tơi chọn hai phần tử cơ bản trong việc chọn một biểu diễn nhiễm sắc thể cho bài tốn lập lịch. Đầu tiên là đanh sách các tác vụ cần lập lịch. Danh sách này rất giống với danh sách các

thành phố được thăm trĩng bài tốn TSP. Một cách khác là trực tiếp

dùng lịch phân cơng làm nhiễm sắc thể. Điều này cĩ vẻ là một biểu diễn rườm rà, cần đến những tốn tử phức tạp, nhưng nĩ cĩ một

thuận lợi nhất định khi xử lý các bài tốn thực tế phức tạp như lập

lịch. Trong trường hợp ở đây, biểu diễn nhiễm sắc thể trong sáng và đơn giản cĩ ưu thế hơn biểu diễn phức tạp. Cú pháp nhiễm sắc thể

mà ta dùng cho bài tốn lập thời lịch là những gì đã được mơ tả bên trên cho bài tốn TSP, nhưng thay vì các thành phố thì ta dùng việc xếp thứ tự êác tác vụ.”

234

Tối Ưu Tổ Hợp _ _ |)

Nhiễm sắc thể được thơng dịch bởi người lập lịch — một chương

trình con “hiểu' các chỉ tiết của các tác vụ lập lịch. Biểu diễn này

được hỗ trợ bởi các tốn tử chuyên biệt. Cĩ 3 đột biến được xét đến: đột biến trên vị trí (hai tác vụ được chọn ngẫu nhiên, và tác vụ thứ hai được đặt trước tác vụ đầu tiên), đột biến trên thứ tự thai tác vụ được chọn ngẫu nhiên, được hốn vị). và đột biến tranh giành (giống

như đột biến danh sách con tranh giành của Davis được mơ tá ở

đoạn trên). Cả ba đột biến này đều thực hiện tốt hơn tìm kiếm ngâu nhiên, với đột biến trên thứ tự rã ràng là tốt nhất. Như đã để cập trước đây, các tốn tử lai tốt nhất đối với bài tốn lập lịch là các

phép lai trên thứ tự và trên vị trí.

Nhưng dường như việc chọn một biểu diễn đơn giản khơng hẳn là bay nhất. Phán đốn từ những thử nghiệm (khơng liên quan nhau) khác, như bài tốn vận tải, ta thấy rằng biếu diễn nhiễm sắc thể được sử dụng phải gần gũi hơn với bài tốn lập lịch. Đúng là trong những trường hợp đĩ cần phải thêm nỗ lực đặc biệt khi thiết kế các tốn tử 'di truyễn' chuyên biệt; nhưng nỗ lực này được trả cơng xứng đáng bằng sự gia tăng tốc độ và hiệu quả của hệ thống.

Hơn nữa, một số tốn tử lại khơng hồn tồn đơn giản như vậy, “Một thuật giải tham lam đơn giản chạy trên lịch phân cơng cĩ thể tìm được một chỗ cho tác vụ cĩ độ ưu tiên cao, bằng cách bỏ đi một hoặc hai tác vụ cĩ độ ưu tiên thấp và thay chúng bằng tác vụ cĩ độ ưu tiên cao.”

Ta tín rằng, nĩi chung, và riêng cho các bài tốn lập lịch, đây

là hướng cẩn theo: kết hợp tri thức “bài tốn khơng chỉ vào các tốn tử (như đã làm đối với biểu điễn nhiễm sác thể đơn gián), mà phải vào cả các cấu trúc nhiễm sắc thể.

Husband, Mill và Warrington đã biểu diễn một nhiễm sắc thể

là một trình tự.

Một phần của tài liệu Lập trình tiến hóa trí tuệ nhân tạo (Trang 117 - 119)