0
Tải bản đầy đủ (.pdf) (92 trang)

Một lời giải hợp lệ cho FSP 3 máy, 5 công việc

Một phần của tài liệu NGHIÊN CỨU CÁC BÀI TOÁN LỊCH BIỂU VÀ ỨNG DỤNG (Trang 61 -62 )

Xây dựng hàm thích nghi

Hàm đánh giá độ thích nghi của mỗi lời giải được ký hiệu là được xây dựng như trong bài toán PFSP:

= − ( ) Khởi tạo tập lời giải ban đầu

Để khởi tạo một lời giải (0), chúng ta tiến hành theo các bước sau: 1. Bước 1:

- Xây dựng một mảng _ [1. . ]. Mảng này gồm có phần tử, tương ứng với công việc, _ [ ] lưu số thao tác của công việc đã được lập lịch. Khởi tạo giá trị ban đầu của từng phần tử đều là 0.

- Xây dựng mảng [1. . ] lưu các công việc chưa được lập lịch. Ban đầu mảng gồm phần tử ( [1] = 1; [2] = 2, … , [ ] = ).

2. Bước 2:

Lặp lại quá trình cho đến khi không còn phần tử nào:

10 13 7 4 11 2 14 8 5 12 15 3 9 6

2.1. Chọn ngẫu nhiên một số nguyên trong mảng (chọn một công việc để lập lịch). Ví dụ, = ( ) + 1 = 2 được chọn để lập lịch.

2.2. Lập lịch cho thao tác tiếp theo của công việc vừa được chọn: - Công việc được lập lịch là .

- Thao tác được lập lịch là: _ [ ], ban đầu _ [ ] = 0, mỗi lần được chọn, _ [ ] tăng thêm 1.

- Xác định mã (vị trí) thao tác vừa được lập lịch: = _ [ ] + ( − 1) ∗ .

- Xác định máy thực hiện thao tác vừa được lập lịch như sau: lấy mã của thao tác chia cho , nếu không dư thì thương số chính là máy thực hiện thao tác đó, nếu có dư thì máy thực hiện thao tác đó bằng thương số + 1.

- Xóa công việc này trong mảng nếu _ [ ] = .

Nếu cỡ của tập lời giải là _ thì số vòng lặp sẽ thực hiện _ lần. Các toán tử di truyền

- Toán tử chọn lọc

Toán tử chọn lọc nhằm mục đích chọn các lời giải tốt nhất cho thể hệ sau dựa trên giá trị của hàm thích nghi. Về cơ bản, cơ chế hoạt động của toán tử này tương tự như toán tử chọn lọc trong thuật toán di truyền truyền thống đã được trình bày trong chương 2. Tức là chọn lọc một cách ngẫu nhiên theo nguyên tắc bánh xe số.

- Toán tử đột biến

Toán tử đột biến được tiến hành theo các bước sau:

Bước 1. Chọn ngẫu nhiên một thao tác (ký hiệu 1) trong cá thể cha. Xác định máy thực hiện thao tác đó (ký hiệu là ) và vị trí của thao tác đó trong lời

giải (ký hiệu 1).

Bước 2. Chọn ngẫu nhiên một thao tác (ký hiệu 2) trong cá thể cha. Xác định máy thực hiện thao tác đó (ký hiệu là ) và vị trí của thao tác đó trong lời giải (ký hiệu 2).

Bước 3. Nếu = thì tiến hành đột biến (chèn thao tác 1 vào vị trí của 2). Kết quả cho chúng ta cá thể con. Trong trường hợp ≠ thì cá thể cha được giữ nguyên.

Một phần của tài liệu NGHIÊN CỨU CÁC BÀI TOÁN LỊCH BIỂU VÀ ỨNG DỤNG (Trang 61 -62 )

×