Các toán tử di truyền của GA là toán tử lai ghép và đột biến. Đây là hai toán tử có tác động lớn đến chất lượng của giải thuật. Các toán tử này được xây dựng phụ thuộc vào cách mã hoá các NST. Ở đây chỉ đưa ra toán tử lai ghép và đột biến trên một số cách mã hoá NST để chỉ ra được ý tưởng xây dựng toán tử lai ghép và
đột biến trong GA. Còn tuỳ thuộc vào các bài toán cụ thể và cách mã hoá NST mà ta xây dựng hai loại toán tử này.
Toán tử lai ghép + Lai ghép đơn điểm:
- Một điểm cắt được chọn tại một vị trí thứ k trên NST.
- Từ đầu NST đến vị trí thứ k, NST con sao chép từ cha, phần còn lại sao chép từ mẹ.
Với NST cha: X = 11001010, NST mẹ Y = 11101001 Con sinh ra do lai ghép đơn (điểm cắt k=4):
Con : 1100 | 1001
+ Lai ghép hai điểm:
- Hai điểm cắt được chọn .
- Từ đầu cho đến điểm cắt thứ nhất được sao chép từ cha, từ điểm cắt thứ nhất đến điểm cắt thứ hai sao chép từ mẹ và phần còn lại sao chép từ cha.
Xét Cha : 11| 0010 | 10
Mẹ : 11| 1010 | 01
Con sinh ra do lai ghép hai điểm cắt : Con : 11 | 1010| 10
+ Lai ghép mặt nạ :
- Xây dựng một mặt nạ là một chuỗi nhị phân có chiều dài bằng chiều dài NST, Mặt nạ được phát sinh ngẫu nhiên đối với từng cặp cha mẹ.
- Xây dựng NST mới: Duyệt qua mặt nạ, bit có giá trị 1 thì sao chép gen tại vị trí đó từ NST cha sang con, bit có giá trị 0 thì sao chép từ mẹ. Ví dụ xét
Cha : 11001010
Mẹ : 10101001
Mặt nạ : 10101000
Con sinh ra do lai ghép mặt nạ :
+ Lai ghép số học:
NST con được tạo thành bằng cách thực hiện một phép toán logic nào đó như AND, OR, … với cặp NST bố mẹ. Ví dụ xét
Cha : 11001010 Mẹ : 10101001
Con (AND): 10001000
Toán tử đột biến
Phép đảo bit : Bit được chọn sẽ bị đảo (Bit được chọn có gạch chân) Nếu trước đột biến : 11011001
Thì sau đột biến : 11010001