Xây dựng các toán tử trong GA

Một phần của tài liệu (LUẬN văn THẠC sĩ) cơ sở của thuật toán di truyền và ứng dụng đối với một số bài toán lớp NP (Trang 48 - 49)

 Các tham số đầu vào thuật toán

+ NS – Số các giáo viên cần xếp lịch giảng dạy (Các giáo viên được đánh số liên tiếp từ 1..NS)

+ NP – Số các phòng thực hành (Các phòng được đánh số liên tiếp từ 1..NP). + NT - số các buổi trong lịch giảng dạy (Các buổi được đánh số liên tiếp từ 1..NT)

+ Mảng TS mô tả trạng thái sẵn sàng của các giáo viên + Mảng PS mô tả sự phù hợp chuyên môn của các giáo viên + Biến size – Kích thước của quần thể khởi tạo

B1: Khởi tạo quần thể ban đầu

Khởi tạo ngẫu nhiên N=size ma trận X kích thước NP×NT các phần tử trong khoảng (0,NS+1), trên các cột của ma trận thỏa mãn các điều kiện

FH1(X) và FH23(X).

 Xác định độ thích nghi của các các cá thể trong quần thể.

 Xác định giá trị hàm mục tiêu ban đầu bằng cách với mỗi phương án hãy xác định tất cả các giá trị C(s) từ đó tính tất cả các giá trị hàm F(X) tại mọi cá thể từ đó suy ra F max xuất phát.

B2: Quá trình lai ghép-lựa chọn-đột biến

 Sử dụng toán tử lai ghép 2 điểm cắt theo chiều thời gian t giữa cá thể thứ i (Bố) với cá thể thứ j (i<j) (Mẹ), chúng ta thu được quần thể gồm N+(N- 1)×(N-2) cá thể.

 Kiểm tra độ thích nghi của tất cả các cá thể, ta thu được M các thể thỏa mãn.

 Tính giá trị hàm F(X) với mọi các thể từ đó lựa chọn lấy N cá thể tốt nhất.

 Đột biến m các thể bất kì bằng cách thay đổi ngẫu nhiên 1 giá trị trong ma trận X phù hợp với bài toán. ( m q 0.05

M   - Xác suất đột biến).

 Quay lại bước 2 với N cá thể trong thế hệ tiếp sau.

Toàn bộ thuật toán được lập trình trong môi trường Matlab version 7.0 (Xem phần phụ lục)

Một phần của tài liệu (LUẬN văn THẠC sĩ) cơ sở của thuật toán di truyền và ứng dụng đối với một số bài toán lớp NP (Trang 48 - 49)

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

(70 trang)