1. Trang chủ
  2. » Luận Văn - Báo Cáo

041_Xây dựng thời khóa biểu bằng cách kết hợp phương pháp Heuristics và tương tác người máy

2 937 7
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 2
Dung lượng 261,02 KB

Nội dung

Để giải quyết bài toán, chúng tôi đề xuất một cách giải quyết bài toán này bằng cách kết hợp phương pháp Heuristics và tương tác người máy.. Theo cách tiếp cận này, thời khoá biểu sẽ đượ

Trang 1

- 42 -

XÂY DỰNG THỜI KHOÁ BIỂU BẰNG CÁCH KẾT HỢP PHƯƠNG

PHÁP HEURISTICS VÀ TƯƠNG TÁC NGƯỜI MÁY

Nguyễn Việt Hùng Người hướng dẫn: PGS.TS Nguyễn Văn Vỵ MSV: 0122197

Email: viet_hung234@yahoo.com

Nguyễn Văn Tuân

MSV:0122216

Email:mailto:blazeofglory_vn@yahoo.com

1 Giới thiệu

Lập thời khoá biểu là bài toán có

ứng dụng thực tế cao và được nhiều

người quan tâm trong vận trù học Tuy

vậy, nó thuộc loại bài toán NP-khó với

nhiều loại ràng buộc phức tạp, nên khó

giải bằng các thuật toán truyền thống

Đến nay, các thuật toán mô phỏng tự

nhiên tỏ ra là phương pháp hữu hiệu hơn

cả nhưng vẫn bị hạn chế vì thời gian

chạy chương trình khá lâu và không linh

hoạt khi ta thay đổi các ràng buộc

Để giải quyết bài toán, chúng tôi đề

xuất một cách giải quyết bài toán này

bằng cách kết hợp phương pháp

Heuristics và tương tác người máy

Theo cách tiếp cận này, thời khoá biểu

sẽ được xây dựng theo cách đánh giá

kinh nghiệm và tìm giải pháp qua thử

nghiệm và rút tỉa khuyết điểm kết hợp

với phương pháp gắp thả

2 Cơ sở lý thuyết

Phương pháp Heuristics là phương

pháp giải quyết vấn đề bằng cách đánh

giá kinh nghiệm và tìm giải pháp qua

thử nghiệm và rút tỉa khuyết điểm

Phương pháp này có một ưu điểm là

thời gian chạy rất nhanh.Tuy nhiên nó

có một nhược điểm là không khám phá

được hết không gian trạng thái

Phương pháp gắp thả là phương

pháp được users thực hiện bằng trực

quan để giải quyết các tổ hợp ràng buộc

mà khó giải được bằng thuật toán Đây

là một phương pháp tuy đơn giản nhưng

có thể giải quyết được những ràng buộc rất khó có thể giải quyết được bằng thuật toán thông thường

3 Giới thiệu bài toán lập thời khoá biểu và các cách tiếp cận hiện nay 3.1 Các bài toán lập thời khoá biểu:

Bài toán lập thời khoá biểu được chia làm 3 dạng chung được mô tả khác nhau: Bài toán lập thời khoá biểu cho trường phổ thông, bài toán lập thời khoá biểu cho trường đại học, bài toán xếp lịch thi

Trong luận văn này chỉ xét bài toán lập thời khoá biểu cho trường đại học ở Việt Nam mà cụ thể là trường Đại học Công Nghệ - Đại học Quốc Gia Hà Nội

3.2 Các cách tiếp cận hiện nay

Có rất nhiều thuật toán đươc đề xuất để giải gần đúng các bài toán NP-khó Các thuật toán này tìm được lời giải gần tối ưu và là một trong những xu thế phát triển hiện nay đối với các bài toán chưa thể tìm ra lời giải tối ưu thực

sự trong đó các thuật toán mô phỏng theo tự nhiên như thuật toán luyện kim, thuật toán di truyền, thuật toán hệ kiến

…Trong đó thuật toán di truyền và thuật toán hệ kiến tỏ ra là phương pháp khá hiệu quả

4.Phương pháp heuristics trong bài toán

4.1 Ý tưởng

Trang 2

- 43 -

Từ thực tế cho thấy, mỗi giảng viên

trong một kì chỉ dạy một hoặc vài lớp,

mỗi lớp chỉ giảng dạy một môn, cho nên

tập nghiệm cho bài toán là rất lớn Cho

nên sử dụng phương pháp heuristics kết

hợp với gắp thả sẽ tiết kiệm được rất

nhiều thời gian và sẽ cho kết quả chấp

nhận đuợc Nhưng sử dụng phương

pháp heuristics như thế nào cho đạt hiệu

quả cao là vấn đề chính cuả bài toán

này

a Việc ưu tiên xếp theo thứ tự của

giảng viên, giảng viên nào phải dạy

nhiều ca nhất thì sẽ được ưu tiên xếp

trước Việc ưu tiên này sẽ làm cho việc

sắp xếp các ca học sau sẽ dễ dàng hơn vì

chúng có thể tráo đổi được nhiều vị trí

hơn

b Với mỗi giảng viên, sẽ cố gắng sắp

xếp sao cho các ca giảng dạy của giảng

viên đó liền nhau trong một ngày, và là

nhiều nhất để giảm tổng số ngày phải

dạy của giảng viên, và giảm khoảng thời

gian trống giữa 2 ca của giảng viên đó

c sau khi xây dựng được thời khoá

biểu, sẽ sử dụng thuật toán duyệt (càng

nhiều bước càng tốt) để tối ưu thêm các

ràng buộc: số ngày phải dạy của một

giảng viên càng ít càng tốt, tổng số tiết

trống giữa 2 ca trong một ngày là nhỏ

nhất …

d Trong mỗi bước, có thể kết hợp với

kĩ thuật gắp thả để có được kết quả tốt

hơn

Việc sử dụng những ý tưởng trên

trông thì rất đơn giản, nhưng khi kết hợp

với các ý tưởng nhỏ khác có thể giúp

cho bài toán đạt được kết quả rất tốt

4.2 Thử nghiệm và kết quả

Chúng tôi đã cài đặt và chạy thử

nghiệm trên cơ sở dữ liệu của 3 năm gần

đây trong trường Đại Học Công Nghệ

Kết quả đạt được là khá khả quan

Trong tổng số lớp của trường Công Nghệ, số giảng viên, và các môn học Thời gian chạy của chương trình là < 1 giây, kết quả đạt được bước dầu là khá khả quan: tổng số tiết phải đợi trong một

kì của tất cả các giảng viên ~ 4

4.3 Đánh giá chung

Chương trình đã chạy khá tốt với bài toán lập thời khoá biểu cho trường

ĐH Công Nghệ

Chương trình có thể chạy tốt trong bài toán mà có tập nghiệm lớn Ràng buộc càng ít thì kết quả sẽ càng khả quan Khi ràng buộc nhiều, kết quả sẽ không được tốt như một số các phương pháp khác Bài toán này phụ thuộc nhiều vào các ràng buộc hơn là phụ thuộc vào kích cỡ của dữ liệu

5.Kết luận

Trong khoá luận này chúng tôi đã

sử dụng phương pháp Heuristics để giải quyết bài toán lập thời khoá biểu với bộ

dữ liệu của trường Đại học công nghệ Kết quả đạt được là khá khả quan với các ràng buộc chính và thời gian chạy phụ thuộc chủ yếu vào số các ràng buộc

và mục đích tối ưu của kết quả

Các hướng nghiên cứu tiếp theo của chương trình là làm sao cho chương trình có thể sắp xếp được thời khoá biểu thoả mãn được nhiều ràng buộc hơn, trong đó nhằm thoả mãn được các nhu cầu của giảng viên (các nhu cầu chung

và riêng)

Tài liệu tham khảo

[1] Đỗ Đức Đông, “Thuật toán mô phỏng tự nhiên trong bài toán thời khoá biểu cho trường đại học”,

Khoá luận tốt nghiệp đại học hệ chính quy, ngành Công nghệ thông tin, 2004

Ngày đăng: 06/10/2013, 19:20

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w