1. Trang chủ
  2. » Giáo án - Bài giảng

Các toán tử và kỹ thuật nâng cao trong thuật giải di truyền

46 623 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 46
Dung lượng 726,39 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Ngăn chặn cá thể từ vùng thích nghi khác nhau cặp đôi Sharing tích cực phát triển nên vùng thích nghi mới, và phân phối các cá thể qua tất cả các đỉnh trong không gian... Vùng thích nghi

Trang 1

Chương 4.

Các toán tử và kỹ thuật nâng cao trong thuật giải di truyền

Nhóm 12 Lớp Hệ thống thông tin – K20 GVHD: TS Lê Hoàng Thái

Trang 3

Lý do chọn đề tài

Tìm hiểu một số toán tử và kỹ thuật mới trong thuật giải di truyền

Củng cố lại các kiến thức đã học

Trang 4

Nội dung chính

Thể lưỡng bội, tính trạng trội, thể đa bội

Các toán tử đảo và tái thiết lập trật tự

Các cách biểu diễn NST khác nhị phân

Tối ưu nhiều mục tiêu

Trang 5

Thể lưỡng bội

Mỗi gen gồm một cặp alen, chứa cùng thông tin cho một chức năng

Thể trội: một alen là trội nếu nó được biểu

hiện khi đi cặp với một vài alen khác, nghĩa là được biểu hiện lên kiểu hình

Nếu điều kiện môi trường thay đổi, sự trội có thể thay đổi, do đó một alen khác sẽ là trội

Trang 6

Thể lưỡng bội

Xem xét cấu trúc nhiễm sắc thể lưỡng bội sau

Nếu giả sử tất cả các kí tự hoa là trội và tất cả các kí tự thường là lặn thì kiểu hình được biểu thị của nhiễm sắc thể sẽ là:

Trang 7

Thể lưỡng bội

Thuận lợi chính của lưỡng bội là nó cho phép

sự đa dạng rộng lớn hơn cuả các alen được

giữ lại trong quần thể

Lưỡng bội hữu dụng khi xây dựng các ứng

dụng trực tuyến lớn, các hệ thống lớn có thể chuyển giữa các trạng thái khác nhau

Trang 8

Thể đa bội

Một gen chứa nhiều alen khác nhau

Sử dụng một vài cơ chế dạng trội để quyết

định gen nào sẽ được biểu hiện lên kiểu hình

Đa bội nâng cao tính đa dạng của quần thể

Các gen lặn vẫn được giữ lại và sẽ trở nên hữu dụng khi điều kiện sống thay đổi

Trang 9

Thể đa bội

Trang 10

Toán tử đảo và tái thiết lập trật tự

Thuật toán lựa chọn hai điểm ngẫu nhiên sau đó đột biến để tăng số lượng khối kiến trúc trong quần thể.

Một số biến thể của toán tử đảo

• Đảo tuyến tính

• Đảo tuyến tính + Đảo cuối

Trang 11

Một số kiểu lai ghép

Lai PMX (Lai ghép so khớp từng phần)

Xét cặp NST bố mẹ

Con cái

Trang 12

Một số kiểu lai ghép

Lai OX (Lai ghép thứ tự)

Xét cặp NST bố mẹ

Con cái

Trang 13

Một số kiểu lai ghép

Lai CX (Lai chu trình)

Xét cặp NST bố mẹ

Con cái

Trang 15

Chia tách và chuyển dịch

Sử dụng trong lai ghép các cá thể có nhiễm sắc thể đa bội Mỗi nhiễm sắc thể đơn được chọn 1 cách ngẫu nhiên, gọi

là chia tách.

Toán tử dịch chuyển có vai trò nối các gen tương ứng

trong quá trình lai ghép

Ví dụ: Cho 2 cặp NST sau:

NST Bố NST Mẹ NST Con

PqrtS pqrTS PqrtS

pQrTS pQRTs pQRTs

Trang 16

Sao chép, xóa và xác định giới tính

Sự sao chép trong nội bộ NST thực hiện bằng cách nhân bản một gen nào đó sang một gen khác trong NST.

Việc xóa được thực hiện bằng cách loại bỏ một gen

trùng khỏi NST.

Xác định giới tính (sex determination) là việc kết cặp bất

kỳ hai cá thể sao cho kết quả di truyền tạo ra bảo đảm một kiểu gen có khả năng sống được (viable genotype) Xác định giới tính được xử lý khác nhau trong các loài khác nhau.

Trang 18

Crowding và Sharing trong bài toán đa phương thức

Cố gắng duy trì quần thể cân bằng

Ngăn chặn 1 kiểu gen duy nhất chiếm cả quần thể.

Khuyến khích việc hình thành vùng thích nghi và loài

trong quần thể.

Ngăn chặn cá thể từ vùng thích nghi khác nhau cặp đôi Sharing tích cực phát triển nên vùng thích nghi mới, và phân phối các cá thể qua tất cả các đỉnh trong không gian.

Trang 19

Vùng thích nghi và sự hình thành loài

trong bài toán đơn phương thức

Có một số phương pháp thay thế đảm bảo cá thể mới sinh ra đủ khác so với phần còn lại của quần

thể:

• Ngăn chặn sao chép (clone prevention): trước khi một cá

thể được phép nhập vào quần thể, nó được so sánh với mọi cá thể khác trong quần thể.

• Ngăn chặn sự loạn luân (incest prevention): cố mai mối

cặp bố mẹ với ý định các con của chúng sẽ lấy các gen tốt nhất từ bố mẹ chúng Đó là kết hợp các bố mẹ khác nhau sao cho tính đa dạng vẫn được giữ trong quần thể.

Trang 20

Vùng thích nghi và sự hình thành loài trong

bài toán đơn phương thức

Cho phép bố mẹ kết đôi khi thỏa điều kiện nhất định

Việc sinh sản cho phép sự tiến hóa của các vùng thích nghi khác nhau

Trang 21

Thuật giải pygmy

Thường dùng trong các bài toán 2 hay nhiều yêu cầu Dùng 2 hàm thích nghi riêng biệt vì thế tạo ra 2 hình thái (loài) khác nhau

Không tính độ khác nhau giữa bố mẹ, mà chỉ cần biết cặp bố mẹ được chọn là khác nhau

Việc sử dụng 2 vùng thích nghi duy trì quần thể cân bằng và đảm bảo các cá thể phù hợp yêu cầu được sinh ra

Trang 22

Thuật giải pygmy

REPEAT

FOR EACH INDIVIDUAL DO

TEST INDIVIDUALWITH MAIN FITNESS FUNCTION

ENTER PARENT POPULATION #1

IF UNSUCCESSFUL

TEST INDIVIDUALWITH SECONDARY FITNESS FUNCTION ENTER PARENT POPULATION #2

FOR EACH INDIVIDUAL DO

SELECT PARENT FROM POPULATION #1

Trang 23

Kết cặp có giới hạn (restricted mating)

Khuyến khích sự hình thành loài và giảm khả năng sinh sản chết Một cá thể chết là một con của cặp bố mẹ từ hai vùng thích

nghi khác nhau.

Nếu có 2 bố mẹ tương tự nhau (cùng vùng thích nghi) được

giao phối thì con cái tương tự nhau Tuy nhiên còn phụ thuộc nhiều vào sơ đồ mã hóa đặc biệt là sự tồn tại của khối kiến trúc Các phép lai và đột biến các cặp bố mẹ tương đương kiểu gen

sẽ luôn sinh ra các con có cùng kiểu gen Nhưng không có gì

đảm bảo rằng con cái không có độ thích nghi thấp => chúng dễ chết.

Sự tương tự về kiểu gen không bảo đảm sự tương tự về kiểu

Trang 24

Một số cách biễu diễn NST khác

Biểu diễn số dấu chấm động, ký tự

Các toán tử kết hợp

• Trung bình: Lấy trung bình số học của hai gen bố mẹ.

• Nghĩa hình học: lấy căn bậc hai của tích hai giá trị.

• Mở rộng: Lấy độ khác nhau giữa hai giá trị và cộng nó vào giá trị

cao hơn hoặc trừ nó khỏi giá trị thấp hơn

Các toán tử đột biến

• Thay thế ngẫu nhiên: Thay thế bởi các giá trị ngẫu nhiên

Trang 25

Tối ưu nhiều mục tiêu

Có nhiều mục tiêu cần được tối ưu hóa đồng thời

Không nhất thiết phải có giải pháp tối ưu nhất đối với mọi mục tiêu

Một giải pháp có thể là tốt nhất đối với mục tiêu này nhưng lại tệ nhất đối với mục tiêu khác

Muốn cải thiện một hàm mục tiêu thì phải hy sinh ít

Trang 26

Tối ưu hóa tổ hợp

Có nhiều lớp bài toán với các đặc trưng và thuộc tính khác nhau.

• Xác định một hoán vị của một số mục liên quan tới bài toán

• Xác định một tổ hợp các mục

• Xác định cả hoán vị và tổ hợp các mục

• Bất kỳ một trong các đối tượng trên để ràng buộc

Phương pháp tiếp cận chung cho việc áp dụng GA đối với các vấn đề này là:

• Sử dụng GA để phát triển một hoán vị và/hoặc tổ hợp thích hợp của

các mục được xem xét

Trang 27

Các kỹ thuật dựa trên tri thức

• Khởi tạo heuristic các quần thể - để việc tìm kiếm bắt đầu với một số

điểm khá tốt thay vì một tập ngẫu nhiên.

GA được dùng để lấy xấp xỉ giá trị tối ưu, sau đó các sơ đồ tối ưu

Trang 28

Cảm ơn Thầy và các bạn đã theo dõi

Câu hỏi & trả lời

Trang 29

Chương trình minh họa

Trang 30

Bài toán gom nhóm

Trang 31

Bài toán sắp ba lô

Multiple – Choice Knapsack Problem

Phát biểu bài toán:

 Có 1 túi đồ có thể chứa các vật với trọng lượng tối đa W.

 Các vật thể được chọn để sắp vào túi này được chia

thành m lớp (loại) khác nhau

 Trong mỗi lớp có một số đồ vật khác nhau Mỗi đồ vật

có trọng lượng và mức giá.

 Vấn đề đặt ra chọn m vật từ m lớp sao cho tổng trọng lượng không vượt quá W và tổng chi phí là thấp nhất

Trang 33

Mô tả bằng công thức toán học

Trang 34

Multiple – Choice Knapsack Problem

Ví dụ: m = 3, N1 = 4, N2 = 3, N3 = 3, W = 16

Trang 35

Multiple – Choice Knapsack Problem

Ý tưởng mã hóa

– Một NST có m gene tương ứng với m lớp đồ vật

– Gen thứ i sẽ có giá trị là một số nguyên thuộc tập Ni, với

Ni là số phần tử của lớp thứ i (số lượng các item trong mỗi lớp là không bằng nhau)

– Như vậy vị trí của gen chỉ ra là lớp đồ vật, giá trị của gen

chỉ ra vật được chọn.

– Trong ví dụ trên, nếu item thứ 2 của lớp thứ nhất, item

thứ 3 của lớp 2, item thứ 3 của lớp 3 được chọn, nghĩa là x12 = 1, x23 = 1, x33 = 1 thì kết quả tốt nhất sẽ là NST:

Trang 36

Xây dựng thuật toán

Khởi tạo ngẫu nhiên số lượng đồ vật trong mỗi lớp, ma trận trọng số (weight) và ma trận giá trị(cost)

Khởi tạo quần thể có số lượng cá thể

POP_SIZE

Mỗi NST có chiều dài m, bằng số loại đồ vật

Giá trị mỗi gen i trong NST được khởi tạo ngẫu

Trang 37

Xây dựng thuật toán

Chọn lọc: Sử dụng phương pháp chọn lọc bằng vòng Roulette

Sau khi chọn lọc, nếu cá thể có độ thích nghi cao nhất của thế hệ trước không được chọn

vào thế hệ tiếp theo thì chúng ta sẽ loại bỏ

ngẫu nhiên một số NST trong quần thể mới và thay bởi cá thể thích nghi nhất

Trang 38

Xây dựng thuật toán

Lai và đột biến: sử dụng lai đồng nhất và đột biến ngẫu nhiên Trong đột biến ngẫu nhiên, gen được chọn yi sẽ được thay thế bằng một

số ngẫu nhiên trong từ 1 đến Ni

Hàm đánh giá:

– Hàm mục tiêu: tổng chi phí của NST k

Trang 39

Hàm đánh giá

Tổng trọng lượng của các item được chọn

không được vượt quá trọng lượng tối đa của túi nên với những NST có tổng trọng lượng lớn hơn trọng lượng tối đa của túi sẽ nhận một

mức phạt

Mức phạt pk được tính như sau:

Trang 40

Hàm thích nghi

Trang 41

Bài toán N-Queens

Phát biểu bài toán:

– Chúng ta cần sắp xếp N quân hậu vào một bàn cờ

kích thước NxN sao cho các quân hậu không ăn

nhau.

– Mỗi quân hậu trên bàn cờ vua có đường đi tự do

theo chiều dọc, chiều ngang và 2 đường chéo

– Vấn đề đặt ra là tìm ra cách sắp xếp nhanh nhất có

thể mà không cần vét cạn tất cả các trường hợp

Trang 42

Áp dụng thuật giải di truyền

Ý tưởng mã hóa:

– Dùng cách mã hóa hoán vị của N số từ 1 đến N.

– Mỗi NST được biểu diễn bởi một mảng gồm N phần tử có giá trị từ 1 đến

N.

– Vị trí của 1 gen trong NST chính là vị trí dòng và giá trị của gen đó cho

biết vị trí cột mà ta đặt quân hậu

Chọn lọc ngẫu nhiên.

Lai ghép:

– Sử dụng lai ghép đồng nhất.

Trang 43

– Do cách biểu diễn NST là 1 hoán vị nên không cần

kiểm tra trên hàng ngang và cột dọc của mỗi quân hậu mà chỉ cần kiểm tra trên 2 đường chéo của

những quân hậu đó.

– 2 quân hậu tại vị trí (i, j) và (p, q) ăn nhau khi:

• i + j = p + q, hoặc

Trang 44

Travelling saleman problem

Phát biểu bài toán

• Một du khách muốn đi thăm tất cả N thành phố,

mỗi thành phố đi qua đúng 1 lần rồi trở về nơi

xuất phát.

• Biết rằng, tồn tại đường đi giữa mọi thành phố và

khoảng cách là xác định.

• Bài toán đặt ra là xây dựng lộ trình sao cho tổng

chiều dài đường đi là nhỏ nhất.

Trang 45

Áp dụng thuật giải di truyền

Ý tưởng mã hóa:

• Đánh số các thành phố từ 1 đến N Như vậy, một lộ trình có thể xem như là

một hoán vị của N số từ 1 đến N.

• Mỗi NST được biểu diễn bởi một mảng gồm N phần tử có giá trị từ 1 đến N.

• Mỗi thành phố tương ứng với 1 gen trong nhiễm sắc thể.

• Giá trị của Gen thứ i cho biết thành phố được viếng thăm tại thời điểm i.

Chọn lọc cạnh tranh.

Lai ghép:

– Sử dụng một trong các toán tử OX.

Đột biến

Ngày đăng: 26/01/2015, 17:29

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w