Chương 3 : Thuật toán di truyền song song
3.1 Giới thiệu về thuật toán di truyền
John Henry Holland[35], với ý tưởng mô phỏng gần giống với quá trình tiến hóa tự
nhiên của sinh v t ậ theo thuyết tiến hóa của Darwin, đã đề xuất gi i thu t di truyả ậ ền (GA – Genetic Algorithm) nhằm giải quyết các bài toán tối ưu. Trong suốt quá trình tiến hóa, các cá th có thích nghi t t vể ố ới môi trường được chọn giữ ạ l i và lai tạo tiếp. Cứ như vậy, các thế ệ h sau s có kh ẽ ảnăng thích nghi cao hơn v i môi trườớ ng sống do được kếthừa các đặc tính tốt từcác thế ệ trướ h c.
Hình 3.1 Các khái niệm cơ bản của thuật toán di truyền
Tuy nhiên, thuật toán GA sẽ thật sựcho lời gi i t t nả ố ếu như có cách đánh giá đúng đắn tính ổn định c a qu n th d a trên tính thích nghi c a các cá thủ ầ ể ự ủ ể, cũng như việc lựa chọn các ứng viên. Mặt khác, cách thức biến đ i đ ạổ ể t o cá thể con cho thế ệ h
sau cũng ảnh hưởng n k t qu gi i thu t. đế ế ả ả ậ
Tổng quát, giải thuật di truyền được mô tả như sau:
• Tạo quần thểngẫu nhiên ban đầu G0.
thì tiếp tục th c hiự ện việc chọn lựa các cá th thay thể ế. Đánh giá thế ệ h con
được k v ng. ỳ ọ
• Chọ ựn l a các cá th cha t qu n th Gể ừ ầ ể i. Chọn một phép tiến hóa để phát sinh ra các cá thể con thở ế ệ h Gi+1. Thực hiện l p tặ ừbư c đánh giá quớ ần thể cho
đến khi thỏa điều ki n k t thúc. ệ ế
3.2 Các phép toán chính của thuật toán di truyền3.2.1 Phép chọn