Lai ghé p( Crossover).

Một phần của tài liệu Luận văn nghiên cứu về giải thuật di truyền và ứng dụng để tìm cực trị của đa thức bậc n (Trang 27 - 30)

- Toán tử chọn lọc nhằm tìm ra những cá thể tốt nhất nhng không tạo ra cá thể mới. Tuy nhiên, theo tự nhiên thì các con sẽ thừa hởng những đặc tính tốt từ cả hai: cha và mẹ. Toán tử tác động trên các cá thể cha mẹ để tạo nên những con lai tốt đợc gọi là lai ghép.

- Phơng pháp này tác động lên các cá thể cha mẹ để tạo nên những cá thể con tốt. Bản chất của việc tạo sinh các lời giải mới trong Giải thuật di truyền là sự kết hợp các lời giải “cha mẹ” bằng các toán tử mô phỏng thao tác lai ghép trong sinh học. Chúng đợc áp dụng lên cặp cha mẹ đợc lựa chọn ( theo kỹ thuật Chọn lọc - Select) với xác suất lai ghép ký hiệu là Pcross (hay Plg) . Xác suất này cho chúng ta số lợng Pcross * popsize nhiễm sắc thể đợc dùng cho hoạt động lai ghép, ở đây popsize là kích thớc của quần thể đợc lai tạo.

Nh vậy với mỗi nhiễm sắc thể trong quần thể ta phát sinh một số p ngẫu nhiên trong miền [0,1], nếu p lớn hơn Pcross thì tiến hành lai ghép bằng một trong các phơng pháp sau:

1. Lai ghép đơn điểm.

- Cách lai ghép này có thể áp dụng đối với kiểu dữ liệu chuỗi nhị phân lẫn chuỗi số thực.

- Cách làm: Chọn ra hai cá thể A, B đợc lấy ra từ một trong các phơng pháp chọn lọc nói trên. Với N là chiều dài của gen, ta xác định một vị trí lai ghép k thuộc đoạn [2, N-1] . Tại vị trí k sẽ chia gen của cá thể cha mẹ A, B thành A1, A2 và B1, B2 . Hai gen mới đợc tạo ra có dạng (A1, B2) và (A1, B2).

- Ví dụ : Cho hai các thể là hai chuỗi nhị phân nh sau:

A = 0 0 1 1 0 1 0 1 0

B = 1 1 0 1 0 0 1 1 1

Chọn vị trí lai ghép là k=5.

Ta sẽ có hai cá thể con A' và B’ có giá trị nh sau:

A’ = 0 0 1 1 0 0 1 1 1

B‘ = 1 1 0 1 0 1 0 1 0

2. Lai ghép đa điểm.

- Là một dạng tổng quát của lai ghép đơn điểm. Ta chọn m điểm lai ghép k1, k2, k3 ,… km . m điểm này sẽ chia A,B thành m+1 đoạn. Hai gen mới đợc tạo ra bằng cách ghép các đoạn của A,B theo quy tắc : đoạn có vị trí lẻ giữ nguyên đoạn có vị trí chẵn chuyển đổi .

- Ví dụ : Cho hai cá thể A, B là hai chuỗi nhị phân nh sau:

A= 0 1 0 0 1 0 1 1 0 1 0 0 1

B= 0 0 1 0 1 1 0 0 1 1 0 1 1

Chọn vị trí lai ghép là 2,4, 7,10 ta có hai gen mới A’ và B’nh sau:

A’= 0 1 1 0 1 0 1 0 1 1 0 0 1

B’= 0 0 0 0 1 1 0 1 0 1 0 1 1

3. Lai ghép mặt nạ.

- Hai cá thể cha mẹ có hai mặt nạ A,B. Giả sử hai cá thể này là hai chuỗi nhị phân A, B thì hai mặt nạ mA (liên kết với A) và mB (liên kết với B) thực chất là chuỗi nhị phân đợc sinh ra một cách ngẫu nhiên khi tiến hành lai ghép hoặc thừa kế từ thế hệ trớc. Về nguyên tắc thì ngời ta thờng hay dùng cặp mặt nạ đảo nhau mA= Not (mB).

- Quy tắc:

+ Giá trị bit thứ i trong mặt nạ bằng 1 (mAi =1) cho biết : thành phần thứ i trong gen của cá thể con (Ai’) đợc sao chép từ của thành phần gen của cá thể cha mẹ (Ai) liên kết với mặt nạ này.

+ Giá trị bit thứ i trong mặt nạ bằng 0 (mAi =0) cho biết : thành phần thứ i trong gen của cá thể con (Ai’) đợc sao chép từ của thành phần gen của cá thể cha mẹ (Bi) không liên kết với mặt nạ này.

- Ví dụ: Giả sử có hai cá thể đợc chọn lai ghép A, B có gen là hai chuỗi nhị phân ứng với hai mặt nạ mA, mB sau:

A= 0 1 1 0 1 1 0 0 1 1 0 1 1 mA= 0 0 1 1 0 1 0 1 1 0 0 1 0 Cá thể con đợc tạo ra từ mặt nạ mA là: Cá thể con đợc tạo ra từ mặt nạ mB là: B= 1 0 0 1 1 0 1 0 1 0 0 1 0 mB= 1 0 1 0 1 1 0 1 0 0 1 1 1 A’= 1 0 1 0 1 1 1 0 1 0 0 1 0 mA= 0 0 1 1 0 1 0 1 1 0 0 1 0 B= 1 1 0 0 1 0 0 0 1 1 0 1 0

4. Quy tắc tạo đờng sinh.

- Quy tắc tạo đờng sinh là dạng lai ghép áp dụng cho cách biểu diễn gen (adsbygoogle = window.adsbygoogle || []).push({});

bằng chuỗi số thực.

- Trong tạo đờng sinh, giá trị gen của thế hệ sau đợc chọn nằm trong khoảng giữa giá trị gen của hai cá thể bố mẹ. Nếu 2 cá thể bố mẹ lần lợt là A và B, cá thể con là C thì thành phần gen của cá thể thứ i của con cháu đợc tính theo công thức

Một phần của tài liệu Luận văn nghiên cứu về giải thuật di truyền và ứng dụng để tìm cực trị của đa thức bậc n (Trang 27 - 30)