Tải bản đầy đủ
a/ Các chỉ số

a/ Các chỉ số

Tải bản đầy đủ

D(n,t,l,p) =

E(n,t,l,m) =

F(n,t,g) =

G(n,t,l) =

H(n,g) =

K(n,g) =

X(n,l) =

Y(n,l) =

Z(n,p) =

34

2.2.2.2 Công thức cho các hàm ràng buộc
• Một giảng viên không dạy hai lớp cùng một thời điểm:

F1 =

với mọi n,t,g

• Một phòng tại một thời điểm không thể có 2 lớp học:

F2 =

với mọi n,t,p

• Một lớp không thể học 2 môn cùng một thời điểm:

F3 =

với mọi n,t,l

• Một giảng viên không dạy liền 12 tiết một ngày:

F4 =

với mọi n,g

• Một lớp học tiết 6 buổi sang không học tiết 1 buổi chiều:
F5 = Nếu G(n,6,l) = 1 thì G(n,7,l) = 0 với mọi n,l
• Môn thể dục không học vào tiết 5-6 buổi sang và tiết 1-2 buổi chiều: Gọi
m0 là chỉ số của môn thể dục. F6 = Khi đó: E(n,t,l,m0) =0 nếu t = 5,6,7,8 với mọi n,l
• Một lớp học thể dục xong sẽ không học tiết liền ngay sau đó:
F7 = Nếu E(n,t-1,l,m0) = E(n,t,l,m0) =1 thì E(n,t+1,l,m0) = 0 với mọi n,l
2.2.2.3 Công thức cho các hàm mục tiêu
• Tối thiểu thời gian trống của lớp sinh viên:

Fit1 = Min (

) với mọi l

• Tối thiểu số phòng sử dụng

35

Fit2 = Min (

với mọi n

36

Chương 3. XÂY DỰNG BÀI TOÁN THỜI KHOÁ BIỂU DỰA TRÊN GIẢI
THUẬT DI TRUYỀN
3.1 Bài toán lập thời khóa biểu ở trường Cao đẳng Công nghệ và Kinh tế
Hà Nội
3.1.1 Giới thiệu
Bài toán sắp xếp thời khóa biểu ở các trường học là một bài toán khó, sự
phức tạp của bài toán này không chỉ ở vấn đề tìm ra một thời khóa biểu cho học
sinh, sinh viên thỏa các ràng buộc thời gian, ràng buộc chuyên môn, quy định của
Bộ giáo dục, mà một vấn đề khó hơn nữa là phải tìm ra một thời khóa biểu tốt thích
hợp cho tất cả giáo viên (thỏa mãn các yêu cầu về thời gian, hạn chế tối đa các tiết
trống trong một ngày và số ngày lên lớp trong một tuần của mọi giáo viên trong thời
khóa biểu).
Việc sắp thời khóa biểu tại các trường là bài toán luôn thực hiện trước khi
học kỳ mới bắt đầu. Hiện nay, trường Cao đẳng Công nghệ và kinh tế Hà Nội thực
hiện cách thủ công và những sai sót xảy ra là điều không tránh khỏi như: khi kết
thúc khóa học chuẩn bị xét điều kiện tốt nghiệp mới phát hiện ra có môn chưa được
học. Trùng phòng học,...
Nhu cầu cấp thiết hiện nay là sắp thời khóa biểu sao cho hỗ trợ nhân viên
phòng Đào tạo thực hiện một cách nhanh nhất nhưng đồng thời sắp được một thời
khóa biểu tối ưu nhất.
3.1.2 Nội dung hoạt động nghiệp vụ
Lên danh sách các lớp sẽ được học trong kỳ: Vào đầu năm học, nhân viên
phòng Đào tạo phụ trách phần quản lý giảng dạy và học tập phải ra kế hoạch lập
thời khóa biểu. Nhân viên phòng Đào tạo sẽ lập ra danh sách các lớp sẽ học trong
kỳ học đó. Đồng thời gửi số lớp học về phòng Quản trị đời sống đề nghị chuẩn bị
lớp. Phòng quản trị đời sống gửi lại danh sách và quy mô phòng học.
Xác định môn học cho mỗi lớp (lớp – môn): Với mỗi môn học trong danh
sách ở trên, nhân viên phòng Đào tạo đối chiếu với chương trình đào tạo đã được áp

37

dụng để đưa ra danh sách môn học của từng lớp. Từ danh sách các môn học, nhân
viên phòng Đào tạo trích ra các môn học cho mỗi bộ môn và số trình phải dạy và
gửi về các khoa để các thầy đăng ký hay phân công giảng viên.
Phân công giảng dạy (lớp – môn – thầy): Sau khi nhận danh sách các thầy
đăng ký giảng dạy từ các bộ môn, phòng Đào tạo tiến hành lập danh sách các thầy
tương ứng với mỗi môn học của lớp.
Lên danh sách các phòng học: Dựa vào danh sách các phòng học và quy mô
của từng lớp do phòng Quản trị đời sống gửi lại, nhân viên phòng Đào tạo lên danh
sách các giảng đường có thể đưa vào sử dụng.
Lập thời khóa biểu: Từ danh sách các lớp và các môn học tương ứng, danh sách
các giảng viên đăng ký và ý kiến của lãnh đạo khoa về chương trình đào tạo đưa ra,
nhân viên phòng Đào tạo lập thời khóa biểu dự kiến và gửi đi các đơn vị liên quan.
3.2 Áp dụng giải thuật di truyền vào bài toán lập thời khóa biểu
3.2.1 Các toán tử di truyền đối với bài toán hỗ trợ xếp thời khóa biểu
3.2.1.1 Mã hóa cá thể
Phương pháp mã hóa cá thể (tức Thời Khóa Biểu) sử dụng trong chương trình
được trình bày như sau: .
Các Môn được sắp xếp theo một thứ tự nhất định, thứ tự đó không thay đổi ở
mỗi cá thể.
Gọi tổng số Môn học là n, mỗi Môn học có đầy đủ các thông tin: Thứ, Tiết
học, Phòng học, Giảng viên. Mỗi môn là 1 gen tương ứng với 1 hàng trong ma trận
cá thể, một cá thể (Nhiễm sắc thể) có n gen tương ứng với n Môn học.
Gen 1

Môn 1

Lớp

Phòng học

Thứ

Tiết

Gen 2

Môn 2

Lớp

Phòng học

Thứ

Tiết

...

...

...

Gen n

Môn n

Lớp

...
Phòng học

Mỗi cá thể là một Thời Khóa Biểu của 1 kỳ học.

38

...
Thứ

...
Tiết