Giải thuật di truyền (Genetic Algorithms – GA) được Holland và Goldberg [40] đề xuất và phát triển, là thuật toán dựa trên cơ chế di truyền tự nhiên như: sinh sản, lai ghép, thích nghi, đột biến và chọn lọc.
2.4.1. Các quá trình trong giải thuật di truyền (GA)
▪ Mã hóa dữ liệu (Chromosome): là quá trình biểu diễn di truyền (nhiễm sắc
thể) một chuỗi ký tự dưới dạng số nhị phân, thập phân…được biểu diễn dưới dạng một chuỗi hữu hạn.
▪ Khởi tạo quần thể (Initialization): là quá trình xây dựng tập nghiệm ban đầu,
và cách xây dựng có thể ngẫu nhiên hoặc có chủ đích. Có nhiều cách để khởi tạo giá trị quần thể ban đầu, tùy từng bài toán mà ta lựa chọn các phương pháp phù hợp. Thông thường, hệ nghiệm ban đầu được chọn ngẫu nhiên trong khơng gian tìm kiếm. Tuy vậy, việc chọn này cũng cần phải xem xét về sự tương quan giữa độ thích nghi của các nhiễm sắc thể để tránh tình trạng nghiệm tìm ra là nghiệm tối ưu cục bộ (cực trị địa phương).
▪ Hàm thích nghi (Fitness function): là hàm dùng để đánh giá độ thích nghi
của quần thể. Hàm thích nghi cần thể hiện được tất cả các đặc tính mong muốn của nhiễm sắc thể, từ đó có thể chọn lọc được các quần thể nghiệm tốt nhất. Hàm tính tốn thơng thường có dạng @objfun.
▪ Q trình lai ghép (Crossover): là quá trình nhiễm sắc thể mới được hình thành dựa trên nhiễm sắc thể cha mẹ bằng cách lai ghép một hay nhiều đoạn nhiễm sắc thể với nhau. Có nhiều phép lai ghép như : lai ghép có xét đến tính trội – lặn trong tự nhiên, lai ghép từng phần, lai ghép có trật tự, lai ghép dựa trên vị trí, lai ghép chu kỳ, lai ghép tuyến tính, lai ghép đa điểm…Hàm tính tốn thơng thường có dạng @CrossoverFcn.
▪ Quá trình đột biến (Mutation): là quá trình cá thể con khi được tạo ra khơng
mang một hay nhiều mã di truyền từ cá thể bố mẹ. Quá trình này được xảy ra khi ta tiến hành đột biến ngẫu nhiên một cá thể bất kỳ trong quần thể hay một gen bất kỳ trong cá thể. Có nhiều phương pháp gây đột biến hiệu quả như : đột biến đảo ngược,
33
đột biến chèn, đột biến thay thế, đột biến tương hỗ, đột biến dịch chuyển. Hàm tính tốn thơng thường có dạng @MutateFcn.
▪ Q trình chọn lọc (Selection): là quá trình các cá thể mới sinh ra được giữ
lại hay loại bỏ khởi quần thể dựa vào độ thích nghi của chúng.
2.4.2. Tham số toán học trong giải thuật di truyền (GA)
Hàm giải thuật di truyền GA trong Matlab có dạng: [x fval]= ga(@fitnessfun, nvars, options) Trong đó :
- x : là điểm (giá trị) cuối cùng nhận được. - fval : giá trị cuối cùng của hàm thích nghi. - @fitnessfun : hàm chức năng.
- nvars : số biến độc lập có trong hàm tính tốn.
- options : là cấu trúc chứa các tùy chọn trong giải thuật di truyền.