Professional Documents
Culture Documents
Duong Word 14-15
Duong Word 14-15
Dưới đây là một số ví dụ về các toán tử di truyền trong giải thuật di truyền
(GA):
1. Toán tử lai ghép:
○ Lai ghép đơn điểm (Single Point Crossover): Giả sử chúng ta có
hai nhiễm sắc thể (NST) cha và mẹ như sau:
NST cha (X): 10100101
NST mẹ (Y): 11011000 Chúng ta chọn một điểm cắt ngẫu
nhiên, giả sử k = 3. Khi đó, phần từ đầu NST đến vị trí thứ k,
NST con sẽ sao chép từ cha, phần còn lại sẽ sao chép từ mẹ.
Vậy, NST con sinh ra do lai ghép đơn điểm sẽ là:
Con: 101 | 11000
○ Lai ghép hai điểm (Two-Point Crossover): Giả sử chúng ta có
hai NST cha và mẹ như sau:
NST cha (X): 10100101
NST mẹ (Y): 11011000 Chúng ta chọn hai điểm cắt ngẫu
nhiên, giả sử là 2 và 5. Khi đó, phần từ đầu NST đến vị trí
thứ 2, từ vị trí thứ 5 đến cuối NST con sẽ sao chép từ cha,
phần từ vị trí thứ 2 đến vị trí thứ 5 sẽ sao chép từ mẹ. Vậy,
NST con sinh ra do lai ghép hai điểm sẽ là:
Con: 10 | 011 | 01
○ Lai ghép mặt nạ (Masked Crossover): Giả sử chúng ta có hai
NST cha và mẹ như sau:
NST cha (X): 10100101
NST mẹ (Y): 11011000 Chúng ta tạo ra một mặt nạ nhị phân
ngẫu nhiên, giả sử là 10101010. Khi đó, gen của NST con sẽ
được chọn từ gen của cha hoặc mẹ dựa trên giá trị của mặt
nạ tại vị trí tương ứng. Vậy, NST con sinh ra do lai ghép mặt
nạ sẽ là:
Con: 11100000
2. Toán tử đột biến:
○ Đột biến đảo bit (Bit Flip Mutation): Giả sử chúng ta có một
NST như sau:
NST: 10100101 Chúng ta chọn một bit ngẫu nhiên, giả sử là
bit thứ 3. Khi đó, bit này sẽ được đảo. Vậy, NST sau khi đột
biến sẽ là:
NST: 10000101
○ Đột biến đặt lại ngẫu nhiên (Random Resetting): Giả sử chúng
ta có một NST như sau:
NST: 10100101 Chúng ta chọn một gen ngẫu nhiên, giả sử
là gen thứ 5. Khi đó, gen này sẽ được gán một giá trị ngẫu
nhiên từ tập giá trị cho phép. Vậy, NST sau khi đột biến sẽ
là:
NST: 10110101
○ Đột biến hoán vị (Swap Mutation): Giả sử chúng ta có một NST
như sau:
NST: 10100101 Chúng ta chọn hai vị trí ngẫu nhiên, giả sử
là vị trí thứ 2 và thứ 6. Khi đó, hai gen tại hai vị trí này sẽ
được trao đổi cho nhau. Vậy, NST sau khi đột biến sẽ là:
NST: 11100001