Bài toán lập thời khóa biểu liên quan đến sự phân chia, phụ thuộc vào các ràng buộc, các tài nguyên của đối tƣợng trong không gian và thời gian sao cho thỏa
Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn 30 mãn đƣợc nhiều nhất các mong ƣớc của tập mục tiêu, hay nói cách khác là ra đƣợc kết quả tốt nhất, gần nhất với mục tiêu. Bài toán lập thời khóa biểu được biết đến là bài toán dạng NP đầy đủ, do đó các kết quả đƣa ra chỉ bảo đảm một thời khóa biểu tối ƣu.
Trƣớc đây, bài toán này đã có một số hƣớng giải quyết, phƣơng pháp đầu tiên là bằng bài toán tô màu đồ thị. Phƣơng pháp này không đạt đƣợc hiệu quả và cho đến nay không đƣợc dùng nữa [1].
Một hƣớng tiếp cận khác là công thức hóa các vấn đề bằng chƣơng trình các số nguyên, nhƣng do số lƣợng các biến ngày càng lớn nên cũng không thực hiện đƣợc [1] . Một số khác lại sử dụng lập trình logic có ràng buộc kết hợp với một số phƣơng pháp khác để giải quyết vấn đề nhƣng cũng không thành công [1].
Để giải quyết bài toán thời khóa biểu, ngƣời ta đã sử dụng nhiều phƣơng pháp hữu hiệu, trong đó phải kể đến:
1. Thuật toán “leo đồi” sử dụng kỹ thuật “nâng cấp lặp”, kỹ thuật này áp dụng cho một điểm đơn (điểm hiện tại) trong không gian tìm kiếm. Trong một lần nâng cấp, một điểm mới đƣợc chọn trong số các điểm lân cận của điểm hiện hành nếu điểm đó cho kết quả tốt hơn của hàm mục tiêu. Việc tìm kiếm sẽ kết thúc khi không thể nâng cấp thêm đƣợc nữa. Rõ ràng thuật toán leo đồi chỉ cho kết quả tối ƣu cục bộ, kết quả này phụ thuộc vào sự lựa chọn của điểm xuất phát, mặt khác ta không đƣợc thông tin sai số về kết quả tìm đƣợc so với kết quả tối ƣu toàn cục.
Để khắc phục nhƣợc điểm trên, thuật toán leo đồi đã đƣợc cải tiến bằng tăng số lƣợng các điểm xuất phát (điểm xuất phát cho mỗi lần chạy có thể đƣợc lựa chọn tùy theo kết quả của lần chạy trƣớc). Sự thành công hay thất bại của mỗi lần chạy (cho ta kết quả tối ƣu toàn cục hay cục bộ), phụ thuộc và sự lựa chọn điểm xuất phát và hình dáng của “mặt cong” của hàm đánh giá. Nếu mặt cong chỉ có một số ít cực trị địa phƣơng thì tối ƣu toàn cục đƣợc tìm ra rất nhanh. Nhƣng ngƣợc lại, nếu số cực đại địa phƣơng nhiều thì khả năng tìm tối ƣu toàn cục là rất nhỏ. Chính vì vậy mà kể cả sau khi đã đƣợc cải tiến thì thuật toán vẫn chƣa tốt.
Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn 31 2. Trong thuật toán luyện kim, ngƣời ta dùng kỹ thuật thay đổi Entropy của hệ. Ở phƣơng pháp này ngƣời ta đã điều khiển tốc độ hội tụ của quần thể bằng cách biến đổi nhiệt động học với một tham số nhiệt độ T toàn cục. Để hạn chế việc tối ƣu cục bộ và tăng khả năng khám phá không gian tìm kiếm, ngƣời ta đã dùng thủ thuật giảm nhiệt độ T từng bƣớc (đến một mức nào đó). Tuy nhiên, vì T chỉ giảm đến một mức nhất định, vì vậy phƣơng pháp này cũng không tránh khỏi hạn chế trong việc khám phá không gian tìm kiếm mới và sự hội tụ địa phƣơng.
3. Phƣơng pháp tối ƣu đàn kiến (ACO – Ant Clony Optimization) do Dorigo đề xuất là một trong số các cách tiếp cận mới nhất. Một thành phần ngẫu nhiên trong ACO cho phép các con kiến xây dựng đƣợc một lực lƣợng lớn các lời giải khác nhau và từ đó tìm kiếm đƣợc các lời giải hứa hẹn. Quan trọng hơn, kinh nghiệm tìm kiếm của con kiến đƣợc sử dụng để học tăng cƣờng trong quá trình lặp xây dựng thuật toán. Thêm vào đó, việc sử dụng đàn kiến sẽ làm cho các thuật toán ứng dụng ACO phức tạp có thể thêm một vài tập hợp các tác nhân hiệu quả để giải quyết bài toán. Hiệu quả của nó đƣợc chứng minh bằng thực nghiệm và cho thấy kết quả nổi trội hơn so với các thuật toán mô phỏng tự nhiên khác nhƣ: luyện kim, di truyền, tính toán tiến hóa.
Đánh giá chung về các phương pháp trên:
Các giải thuật leo đồi và luyện kim có rất nhiều nhƣợc điểm và thƣờng không trả về kết quả nhƣ mong đợi. Các giải thuật di truyền và tối ƣu đàn kiến có nhiều ƣu điểm hơn vì thế hiện nay hai phƣơng pháp này đƣợc sử dụng nhiều nhất để giải quyết các bài toán tối ƣu trong đó có bài toán xếp thời khóa biểu. Xét về thời gian thực hiện chi phí thực hiện thì giải thuật tối ƣu đàn kiến tốt hơn nhƣng cũng phức tạp hơn so với giải thuật di truyền.
Đề giải quyết bài toán lập thời khóa biểu trọn vẹn hơn, ngƣời ta đã nghiên cứu sử dụng phƣơng pháp giải thuật di truyền và tính toán tiến hóa trên cơ sở những đặc tính nổi trội của nó.
Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn 32 Giải thuật di truyền học có cơ chế tìm kiếm ngẫu nhiên dựa trên cơ chế tự chọn lọc tự nhiên và di truyền học. Một giải thuật di truyền tiêu biểu bắt đầu với một tập các cách giải quyết ban đầu gọi là quần thể. Một nhiễm sắc thể có thể hiểu theo các cách thông thƣờng nhƣng không nhất thiết phải hiểu nhƣ vậy, nó là một chuỗi nhị phân biểu diễn một cách giải quyết vấn đề. Các nhiễm sắc thể có thể tồn tại qua các lần lặp đi lặp lại thì đƣợc gọi là thế hệ. Trong thời gian của mỗi thế hệ các nhiễm sắc thể có thể đƣợc ƣớc lƣợng bằng một vài đơn vị đo lƣờng thích hợp. Khi tạo một thế hệ tiếp theo, các nhiễm sắc thể mới đƣợc gọi là con cái đƣợc hình thành từ việc kết hợp hai nhiễm sắc thể hiện thời bằng phƣơng pháp tƣơng giao chéo hoặc đột biến. Một thế hệ mới đƣợc hình thành bằng:
a. Chọn lọc theo các giá trị thích hợp từ một vài nhiễm sắc thể bố, mẹ hoặc con cái. b. Chọn lọc bằng cách loại bỏ nhiễm sắc thể khác để số lƣợng nhiễm sắc thể khác để số lƣợng nhiễm sắc thể trong quần thể không thay đổi.
Sau một vài thế hệ, giải thuật hội tụ tới nhiễm sắc thể tốt nhất, mà hy vọng nó đại diện sự tối ƣu hoặc giải pháp gần tối ƣu để giải quyết vấn đề.
Giải thuật di truyền trở thành kỹ thuật thông dụng để xử lý các vấn đề tối ƣu hóa chủ yếu dựa trên 3 lợi thế sau:
- Giải thuật di truyền không kéo theo các vấn đề toán học phức tạp.
- Tính tuần hoàn của các toán tử di truyền làm cho giải thuật di truyền có ảnh hƣởng lớn đến việc tìm kiếm trên toàn cầu.
- Giải thuật di truyền rất mềm dẻo, chúng dễ dàng kết hợp với các lĩnh vực dựa trên kinh nghiệm, điều đó có thể dẫn đến một kết quả tốt hơn cho việc tìm kiếm trong các vấn đề đặc biệt.
Mô tả bài toán lập lịch học:
Cho một danh sách giảng viên đã biết giảng viên nào dạy môn nào của chƣơng trình, một danh sách các môn học với số tiết học trên tuần của từng môn và một danh sách các phòng học. Yêu cầu đƣa ra một thời khóa biểu thỏa mãn các ràng buộc và mục tiêu sau:
Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn 33 Ràng buộc:
1. Một giảng viên không thể dạy 2 lớp học cùng một thời điểm.
2. Một phòng tại một thời điểm không thể có 2 lớp học (trừ phòng học chung), và số lƣợng sinh viên không thể vƣợt quá sức chứa của phòng.
3. Một lớp không thể học 2 môn cùng một thời điểm. 4. Một thầy không dậy liền 12 tiết một ngày.
5. Một lớp học tiết 6 của buổi sáng thì không học tiết 1của buổi chiều. 6. Môn thể dục sẽ không vào tiết 5-6 của buổi sáng hoặc tiết 1-2 của buổi chiều. 7. Một lớp học thể dục xong sẽ không học tiết liền sau đó.
Mục tiêu:
1. Thỏa mãn tất cả các ràng buộc trên.
2. Tối thiểu thời gian trống của các lớp sinh viên. 3. Tối thiểu số phòng sử dụng.
Các nghiên cứu liên quan:
Công việc lập lịch trong trƣờng đại học đã đƣợc công nhận là khó cả về phƣơng diện lý thuyết cũng nhƣ thực tế. Một vài mô hình lập lịch đã đƣợc mô tả trong thực tế, bao gồm từ lập lịch học của một trƣờng đại học, lập lịch thi, hoặc một vài sự kiện trong trƣờng đại học [2]. Các bài toán này đƣợc xem là bài toán lập lịch mà đƣợc định nghĩa nhƣ là các bài toán gán một số sự kiện nhƣ kì thi, khóa học với các khoảng thời gian và phòng thỏa mãn các ràng buộc [3, 4].
Trong 20 năm trở lại đây, các cách tiếp cận heuristic đã đƣợc áp dụng thành công cho các bài toán lập lịch.