- Hàm #É)= czsinGx Te)+1)
o¡=(31814567]93) Tương tự ta cĩ con kia là:
Tương tự ta cĩ con kia là: ø; =(3 4 ư]1 8 7 619 2). *
Lai tạo OX khai thác thuộc tính về biểu diễn đường dẫn,
mnà thứ tự của các thành phố (chứ khơng phải là vị trí
của chúng) rất quan trọng, nghĩa là, hai hành trình,:
9-8—4—8—9—1~8—1~6 4—B~2~1-8-7-6~0-8 4—B~2~1-8-7-6~0-8
thực ra là giống nhau.
CX ~ do Oliver để nghị — xây dựng con theo cách mỗi thành phố (và vị trí của nĩ) xuất phát từ một trong các
cha-mẹ. Ta giải thích cơ chế của lai chu trình bằng thí dụ sau đây. Hai cha-mẹ:
pịi=(1234856789) và PØa=(4128769385)
sẽ tạo ra con thứ nhất bằng cách lấy thành phố thứ nhất” từ cha-me thứ nhất:
Ø0;=(1XXXXXXXXX)
Do mỗi thành phố trong con cĩ thể bị lấy đi từ một
trong các cha-me của nĩ (từ cùng vị trí), nên giờ ta khơng cĩ chọn lựa nào: thành phố kế tiếp được xét phải
là thành phố 4, do thành phố từ cha-me p; ngay “bên
mm Chương 8 : Bài Tốn Người Du Lịch
dưới” thành phố 1 được chọn. Trong p, thành phơ này ở tại vị trí “4, như vậy:
ø;=(1xx4xxxxx).
Điều này, trở lại bao hàm thành phố 8, do thành phơ từ
cha-me p; ngay “bên dưới” thành phố 4 được chọn. Như
vậy:
o¡j=(1xx4xxx8#);
Theo luật này, các thành phố kế tiếp được gộp vào con thứ nhất là 3 và 2. Nhưng chứ ý rằng việc chọn thành
phố # địi hỏi việc chọn thành phố 1, đã cĩ trong danh
sách — như vậy ta đã hồn thành một chu trình:
ø;=(1234xxx8xì. .
Các thành phố cịn lại được hồn thành từ cha-me kia:
o;=(123476988). Tương tự:
oạ=(41285 67 3 9).
CX bảo tồn vị trí tuyệt đối của các phấn tử theo thứ tự
của cha-mẹ.
Cĩ thể định nghĩa các tốn tử khác cho biểu điễn đường dẫn.
Chẳng hạn, Syswerda định nghĩa hai phiên bản hiệu chỉnh của tốn tử lai thứ tự. (Nhưng cơng trình này liên quan tới bài tốn lập lịch sẽ bàn đến trong chương sau) Hiệu chỉnh thứ nhất (là lai dựa trên
thứ tự) chọn (ngẫu nhiên) nhiễu vị trí trong một vectơ, và thứ tự
trong các thành phố trong các vị trí được chọn trong một cha-me được đặt trên các thành phố tương ứng trong cha-me kia. Thí dụ, xét hai cha-me:
pr=(123456789) và
19
Tối Ưu Tổ Hợp - 8
p=(41287693 8). ì
Giá sử các vị trí được chọn là thứ 3, thứ 4, thứ 6 và thứ 9; việc xếp thứ tự các thành phố trong nbững vi trí này từ cha-mẹ p; sẽ được áp đặt trên cha-mẹ p„. Các thành phố tại những vị trí này (theo thứ tự đã cho) trong p¿ là 2, 8, 6 và 5. Trong cha-mẹ p; các
thành phế này xuất hiện tại các vị trí 2, 5, 6 và 8. Trong các con của các phần tử tại những vị trí này được sắp xếp lại để phù hợp với thứ tự của cùng những phần tử này từ p; (thứ tự là 2 — 8 — 6 - 5). Con
đâu tiên là bản sao của p; trên tất cả vị trí trừ các vị trí 9, 5, 6, và
8:
o;=(1x34xxx7x 9).
tất cả những phần tử khác được đưa vào đẩy đủ theo thứ tự đã cho trong cha-me ø›, nghĩa là 2, 8, 6, 5, và cuối cùng:
o;=(123486759).
Tương tự, t4 cĩ thể xây đựng con thứ hai:
øa=(312874695).
Hiệu chỉnh thứ hai (lai trên vị trí) giống với lai thứ tự gốc nhiều
hơn. Khác biệt duy nhất là trơng lai trên vị trí, thay vì chọn một
chuỗi con các thành phố để sao chép, thì nhiêu thành phố lại được chọn (ngẫu nhiên) cho mục đích này. -
Khá thú vị khi nhận thấy rằng hai tốn tử này (lai trên thứ tự
và lái trên vị trí) theo một ý nghĩa nào đĩ là tương đương nhau. Lai
trên thứ tự với một số vị trí được chọn làm các điểm lai, và lai trên
vị trí với những vị trí đáng khen là các điểm lai của nĩ sẽ luơn cho
ra cùng kết quả. Điều này cĩ nghĩa là nếu số các điểm lai trung bình là m/2 (m là tổng số thành phố), thì hai tốn tử này sẽ thực hiện