Cơ bản về giải thuật di truyền

Một phần của tài liệu tổng quan về khai phá dữ liệu và phát hiện tri thức trong CSDL (Trang 43)

ý t−ởng của giải thuật di truyền là mô phỏng theo cơ chế của quá trình chọn lọc và di truyền trong tự nhiên. Từ tập các lời giải có thể ban đầu, thông qua nhiều b−ớc tiến hoá để hình thành các tập mới với những lời giải tốt hơn, cuối cùng sẽ tìm đ−ợc lời giải gần tối −u nhất [1, 6].

GA sử dụng các thuật ngữ lấy từ di truyền học:

- Một tập hợp các lời giải đ−ợc gọi là một Lớp hay Quần thể (population). - Mỗi lời giải đ−ợc biểu diễn bởi một Nhiễm sắc thể hay Cá thể (chromosome).

- Nhiễm sắc thể đ−ợc tạo thành từ các gien

Một quá trình tiến hoá đ−ợc thực hiện trên một quần thể t−ơng đ−ơng với sự tìm kiếm trên không gian các lời giải có thể của bài toán. Quá trình tìm kiếm này luôn đòi hỏi sự cân bằng giữa hai mục tiêu: Khai thác lời giải tốt nhất và xem xét toàn bộ không gian tìm kiếm.

GA thực hiện tìm kiếm theo nhiều h−ớng bằng cách duy trì tập hợp các lời giải có thể và khuyến khích sự hình thành và trao đổi thông tin giữa các h−ớng.

Tập lời giải phải trải qua nhiều b−ớc tiến hoá, tại mỗi thế hệ, một tập mới các cá thể đ−ợc tạo ra có chứa các phần của những cá thể thích nghi nhất trong thế hệ cũ. Đồng thời giải thuật di truyền khai thác một cách có hiệu quả thông tin tr−ớc đó để suy xét trên điểm tìm kiếm mới với mong muốn có đ−ợc sự cải thiện qua từng thế hệ. Nh− vậy, các đặc tr−ng đ−ợc đánh giá tốt sẽ có cơ hội phát triển và các tính chất tồi (không thích nghi với môi tr−ờng) sẽ có xu h−ớng biến mất.

Giải thuật di truyền tổng quát đ−ợc mô tả nh− sau:

PROCEDURE GeneticAlgorithm; BEGIN

T:=0;

Khởi tạo lớp P(t);

Đánh giá lớp P(t);

While not (Điều_kiện_kết_thúc) do Begin t:=t+1; Chọn lọc P(t) từ P(t-1); Kết hợp các cá thể của P(t); Đánh giá lớp P(t); end; END; Trong đó:

- Tập hợp các lời giải ban đầu đ−ợc khởi tạo ngẫu nhiên.

- Trong vòng lặp thứ t, GA xác định tập các nhiễm sắc thể P(t)={x1t, x2t, …, xnt} bằng cách chọn lựa các nhiễm sắc thể thích nghi hơn từ P(t-1). Mỗi nhiễm sắc thể xit đ−ợc đánh giá để xác định độ thích nghi của nó và một số thành viên của P(t) lại đ−ợc tái sản xuất nhờ các toán tử Lai ghépĐột biến.

Khi áp dụng GA để quyết một bài toán cụ thể, phải làm rõ các vấn đề sau: 1. Chọn cách biểu diễn di truyền nào đối với những lời giải có thể của bài toán?

3. Xác định hàm đánh giá để đánh giá mức độ thích nghi của các cá thể. 4. Xác định các toán tử di truyền để sản sinh con cháu.

5. Xác định giá trị các tham số mà GA sử dụng nh− kích th−ớc tập lời giải, xác suất áp dụng các toán tử di truyền,…

Nh− vậy GA là một giải thuật lặp nhằm giải quyết các bài toán tìm kiếm, nó khác với các thủ tục tối −u thông th−ờng ở những điểm cơ bản sau:

- Giải thuật di truyền làm việc với bộ mã của tập thông số chứ không làm việc trực tiếp với giá trị của các thông số.

- Giải thuật di truyền tìm kiếm song song trên một quần thể chứ không tìm kiếm từ một điểm, mặt khác nhờ áp dụng các toán tử di truyền, nó sẽ trao đổi thông tin giữa các điểm, nh− vậy sẽ giảm bớt khả năng kết thúc tại một cực tiểu cục bộ mà không tìm thấy cực tiểu toàn cục.

- Giải thuật di truyền chỉ sử dụng thông tin của hàm mục tiêu để đánh giá quá trình tìm kiếm chứ không đòi hỏi các thông tin bổ trợ khác.

- Các luật chuyển đổi của giải thuật di truyền mang tính xác suất chứ không mang tính tiền định.

Các thông số của bài toán đ−ợc mã hoá thành các chuỗi. Cách đơn giản nhất là chúng ta dùng chuỗi bit để mã hoá các thông số. Mỗi thông số đ−ợc mã hoá bằng một chuỗi bít có độ dài nào đó, sau đó nối chúng lại với nhau, ta sẽ có một chuỗi mã hoá cho tập các thông số. Để tính toán giá trị hàm mục tiêu t−ơng ứng với mỗi chuỗi thông số, ta phải giải mã bộ thông số này theo một quy tắc nào đó. Giải thuật di truyền tìm kiếm song song trên một tập các chuỗi, do đó giảm thiểu đ−ợc khả năng bỏ qua các cực trị toàn cục và dừng lại ở cực trị địa ph−ơng. Điều này giải thích vì sao giải thuật di truyền mang tính toàn cục.

Hiện nay giải thuật di truyền đ−ợc áp dụng ngày càng nhiều trong kinh doanh, khoa học và kỹ thuật vì tính chất không quá phức tạp mà hiệu quả của nó. Hơn nữa, giải thuật di truyền không đòi hỏi khắt khe đối với không gian tìm kiếm nh− giả định về sự liên tục, sự có đạo hàm,.... Bằng lý thuyết và thực nghiệm, giải thuật di truyền đã đ−ợc chứng minh là giải thuật tìm kiếm toàn cục mạnh trong các không gian lời giải phức tạp.

Một phần của tài liệu tổng quan về khai phá dữ liệu và phát hiện tri thức trong CSDL (Trang 43)

Tải bản đầy đủ (PDF)

(102 trang)