Giải thuật Gene mô phỏng sự tiến hoá của thế giới tự nhiên, ở đó thông tin về một cấu trúc sống được mã hoá dưới dạng nhiễm sắc thể. Do đó để áp dụng giải thuật Gene vào bài toán TSP, ta cũng phải tìm cách mã hoá các lời giải của bài toán dưới dạng các chuỗi nhiễm sắc thể và xây dựng qui tắc đánh giá độ thích nghi của nó theo ngữ cảnh của bài toán.
Kí hiệu các thành phố là A, B, C, ... mỗi nhiễm sắc thể - sự mã hoá của lời giải - sẽ là một danh sách hoán vị của A, B, C ... biểu diễn lộ trình mà người thương gia đã đi qua. Thí dụ GFHBACDE sẽ là kí hiệu của hành trình từ G -> F -> H -> ... -> E. Mỗi thành phố (gene) sẽ chỉ xuất hiện trong danh sách này chỉ một lần. Vấn đề này dẫn tới khó khăn không thể áp dụng các kĩ thuật sinh sản, đột biến thường được sử dụng trong giải thuật Gene chuẩn. Thí dụ: Với ý nghĩa ghép chéo thông thường ta nhận được từ cặp bố mẹ 1, 2 các con cái sau:
- Ghép chéo tại một điểm:
Bố mẹ Con cái
---
#1 ABC|DEFGH ABC|BACDE
#2 GFH|BACDE GFH|BACDE
- Ghép chéo tại hai điểm:
Bố mẹ Con cái
---
#1 AB|CDE|FGH AB|HBA|FGH
#2 GF|HBA|CDE GF|CDE|CDE
Điều kiện chỉ xuất hiện một lần trong danh sách hoán vị ở hai thí dụ trên đã bị vi phạm. Do đó đòi hỏi phải xây dựng các kĩ thuật ghép chéo mới phù hợp với ý nghĩa của bài toán.
2.1- GHÉP CHÉO RIÊNG PHẦN (Partially matched crossover - PMX)
PMX được cải tiến từ phương pháp ghép chéo hai điểm thông thường. Bắt đầu bằng việc chọn ra hai điểm, thí dụ 2 và 5:
Cha mẹ 1: AB|CDE|FGH Cha mẹ 2: GF|HBA|CDE
Giải thuật PMX nhận thấy gene H có trong nhiễm sắc thể 2 sẽ được thay thế bởi gene C trong nhiễm sắc thể 1, vì vậy nó sẽ chuyển đổi H của nhiễm sắc thể 1 thành C và C trong nhiễm sắc thể 2 sang H. Quá trình được thực hiện tương tự với hai gene còn lại và cuối cùng nhận được các con cái:
Con cái 1: ED|HBA|FGC Con cái 2: GF|CDE|HBA
Mỗi con cái là một hoán vị mới, hoán chuyển một số gene trong khi vẫn giữ nguyên các đoạn cấu trúc của bố mẹ.
2.2- GHÉP CHÉO CÓ THỨ TỰ (Order crossover - OX)
OX dời chỗ một số gen và dịch chuyển các gene khác. Lấy ví dụ ở trên, với kí hiệu "-" biểu thị gene bỏ trống ở vị trí đó:
Cha mẹ 1: AB|CDE|FGH Cha mẹ 2: GF|HBA|CDE Con cái 1: --|HBA|FG- Con cái 2: GF|CDE|---
tiếp theo, ở sau điểm ghép chéo thứ hai, OX sẽ dịch các gene sang trái (có thể coi các đầu mút của nhiễm sắc thể nối với nhau nếu cần thiết), điền các vị trí trống của gene và để trống đoạn hoán đổi:
Con cái 2: DE|---|GFC
Cuối cùng OX sẽ hoán đổi đoạn ghép chéo nằm giữa hai điểm, tạo ra các con cái mới: Con cái 1: BA|CDE|FGH
Con cái 2: DE|HBA|GFC
Trong khi PMX giữ nguyên vị trí của gene trong chuỗi nhiễm sắc thể, thì OX lại duy trì thứ tự các gene trong chuỗi.
2.3- GHÉP CHÉO CÓ CHU KÌ (Cycle crossover - CX)
Nguyên tắc làm việc của CX hoàn toàn khác, nó thực hiện việc hoán đổi một tập hợp cụ thể các gen. Thí dụ:
Cha mẹ 1: ABCDEFGH
Cha mẹ 2: GFHBACDE
Để tạo con cái, CX bắt đầu với các thành phố đầu tiên trong các nhiễm sắc thể bố mẹ: Con cái 1: G---
Con cái 2: A---
Tìm trong cha mẹ 1, CX thấy G ở vị trí 7 và thực hiện hoán đổi ở vị trí đó: Con cái 1: G---D-
Con cái 2: A---G-
Quá trình tìm và hoán đổi tiếp tục cho đến khi gene bị thay thế đầu tiên trong cha mẹ 1, A, được bắt gặp. Cuối cùng con cái nhận được như sau:
Con cái 1: GECBAFDH Con cái 2: ABHDECGE
2.4- PHÉP ĐẢO VỊ TRÍ (Inversion operator)
Để tăng tính đa dạng có thể đưa thêm vào bài toán phép hoán vị, thực hiện việc đảo ngược vị trí các gene trong chuỗi nhiễm sắc thể. Thí dụ:
ABC|DEFGH đảo thành ABCHGFED G|FHB|ACDE đảo thành GBHFACDE
2.5- PHÉP ĐỘT BIẾN
Được định nghĩa lại dưới dạng hoán vị vị trí của hai gene. Thí dụ: Hoán vị các gene A và E trong chuỗi ABCDEFGH sẽ cho con cái là EBDEAGFH.