Đề xuất giải thuật di truyền giải bài toán xếp thời khóa biểu

10 22 0
Đề xuất giải thuật di truyền giải bài toán xếp thời khóa biểu

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

Thông tin tài liệu

Kết quả thực nghiệm cho thấy giải thuật đề xuất cho kết quả tốt hơn một số phần mềm hỗ trợ xếp thời khóa biểu cho các trường phổ thông hiện nay trên dựa trên trọng số một số ràng b[r]

(1)

ĐẠI HỌC SÀI GÒN OF SAIGON UNIVERSITY

Số 71 (05/2020) No 71 (05/2020)

Email: tcdhsg@sgu.edu.vn ; Website: http://sj.sgu.edu.vn/

ĐỀ XUẤT GIẢI THUẬT DI TRUYỀN GIẢI BÀI TỐN XẾP THỜI KHĨA BIỂU

Proposing a genetic algorithm to solve timetabling problem

Nguyễn Hồ Thiên Đăng(1), Nguyễn Thị Hồng Bích(2),

Thái Minh Tân(3), TS Phan Tấn Quốc(4)

(1)Học viên cao học Trường Đại học Sài Gịn (2)Trường THPT Ngơ Quyền, Q.7, TP.HCM (3)Cơng ty TMA Solutions, TP.HCM (4) Trường Đại học Sài Gòn

TĨM TẮT

Việc xếp thời khóa biểu hợp lý tốn tối ưu có nhiều ứng dụng thực tế Được phân loại thuộc lớp NP-complete nghiên cứu rộng rãi hàng chục năm qua với hướng tiếp cận quy hoạch toán học, tối ưu dựa ràng buộc, tối ưu đa mục tiêu, giải thuật tham lam, giải thuật metaheuristic.v.v Nghiên cứu đề xuất sử dụng giải thuật di truyền để giải tốn xếp thời khóa biểu trường phổ thơng, loại tốn xếp thời khóa biểu phổ biến Nghiên cứu cài đặt thí nghiệm giải thuật đề xuất số liệu thực tế Kết thực nghiệm cho thấy giải thuật đề xuất cho kết tốt số phần mềm hỗ trợ xếp thời khóa biểu cho trường phổ thông dựa trọng số số ràng buộc tốn

Từ khóa: thời khóa biểu, thời khóa biểu trường phổ thơng, giải thuật di truyền ABSTRACT

Timetabling problem is optimization problems that have many practical applications; this is the problem of class NP-complete Timetabling problem has been widely studied over the past decades with approaches such as mathematical programming, constraint-based approaches, multiobjective optimization, greedy algorithms, metaheuristic algorithms, etc In this study, we propose a genetic algorithm to solve a form of Timetabling problem that is the School Timetabling problem The proposed algorithm was conducted on some real data sets Experimental results claim that our algorithm results in better results than some of the current school Timetabling software based on some constraints of the problem

Keywords: genetic algorithm, timetabling problem, school timetabling

1 Giới thiệu

Bài tốn xếp thời khóa biểu trường học (timetabling problem) tạo lịch phân công giảng dạy người dạy người học chu kỳ thời gian cố

định (thường theo tuần) cho thỏa mãn nhiều ràng buộc bài tốn Bài tốn xếp thời khóa biểu thuộc lớp tốn tối ưu NP-complete [1]

Bài tốn xếp thời khóa biểu biết

(2)

đến rộng rãi với dạng sau: tốn xếp thời khóa biểu trường phổ thơng (school timetabling-STTP); tốn xếp thời khóa biểu trường đại học (course timetabling-CTTP); toán xếp lịch thi (examination timetabling-ETTP) [1]

Đã có nhiều cơng trình nghiên cứu bài tốn xếp thời khóa biểu dựa hướng tiếp cận giải thuật tô màu đồ thị, tiếp cận dựa ràng buộc, quy hoạch toán học, tối ưu đa mục tiêu, giải thuật tham lam [2], giải thuật metaheuristic [3], [4], [5], [6], [7]

Trong nghiên cứu này, đề xuất giải thuật metaheuristic dạng quần thể giải thuật di truyền để giải tốn xếp thời khóa biểu trường phổ thơng với hy vọng khắc phục bẩy tối ưu cục so với metaheuristic dạng cá thể khác

2 Bài tốn xếp thời khóa biểu phổ thông

2.1 Một số khái niệm

Chu kỳ thời khóa biểu: chu kỳ thời

khóa biểu số ngày mà thời khóa biểu cần xếp lịch, tính từ thứ Hai đến thứ Bảy.

Nhóm thời gian: nhóm thời gian

tập hợp nhóm tiết chu kỳ thời khóa biểu; buổi sáng từ tiết đến tiết 5, buổi chiều từ tiết đến tiết 8, sau tiết đầu buổi học có giải lao

Định dạng khuôn mẫu buổi học thông thường trường phổ thông sau: từ thứ Hai đến thứ Sáu, buổi lớp học đủ tiết; riêng thứ Bảy học hơn tuỳ theo tổng số tiết môn tuần, tổng số tiết thay đổi tuỳ học kỳ tuỳ khối lớp

Giáo viên: giáo viên

phân cơng làm công tác chủ nhiệm lớp, giáo viên chủ nhiệm lớp phải phân cơng giảng dạy mơn học

của lớp đó; giáo viên dạy mơn học ngồi chun mơn chính, gọi cơng tác kiêm nhiệm

Lớp học: lớp học gồm tập học

sinh học chung với tất mơn học

Phạm vi tốn xếp thời khóa biểu đề cập nghiên cứu khối lớp 10, 11 12

Phịng học: với tốn xếp thời khóa

biểu trường phổ thông, lớp cấp cố định phòng học lý thuyết suốt năm học; phịng học có thêm thơng tin là phòng học lý thuyết hay phòng thực hành, thực nghiệm

Mơn học: có thể gọi môn, khối

lớp học kỳ có từ 13 đến 17 mơn; Mơn ngữ văn, thể dục, quốc phòng phải xếp tiết cặp khơng xếp tiết 2-3 sau tiết giải lao; Mơn tốn, tiếng Anh, Tin học khuyến khích xếp tiết cặp Các mơn xếp tiết cặp buổi khơng xếp cặp

Bảng phân công: bảng phân công

giảng dạy gồm tập phân công; phân công bao gồm thông tin giáo viên, lớp học, môn học, tổng số tiết môn học tuần

2.2 Ràng buộc tốn xếp thời khóa biểu

Ràng buộc toán xếp thời khóa biểu phân làm hai loại: ràng buộc cứng (hard constraints) ràng buộc mềm (soft constraints)

Ràng buộc cứng ràng buộc

được quy định văn ngành Ví dụ mơn học cần xếp có tiếp cặp, buổi học lớp khơng có tiết lủng.v.v Ràng buộc cứng loại ràng buộc, vi phạm, trừ trường hợp bất khả kháng

Ràng buộc mềm ràng buộc

(3)

để làm tăng chất lượng thời khóa biểu Các ràng buộc mềm cần xếp thỏa mãn càng nhiều tốt Khi có nhiều ràng buộc mềm độ ưu tiên chúng là yếu tố cần xem xét

Ràng buộc cứng toán xếp thời khóa biểu phổ thơng

Ràng buộc đụng độ giáo viên (1): các

phân công giáo viên khơng xếp vào vị trí tiết học.

Ràng buộc đụng độ lớp học (2):

phân công lớp học khơng xếp vào vị trí tiết học

Ràng buộc đụng độ phòng học (3):

mỗi phòng học xếp vào nhiều nhất phân cơng vị trí tiết học Việc đụng độ phịng học xảy các phịng thí nghiệm, thực hành, sân tập thể dục

Ràng buộc số tiết học liên tiếp tối thiểu số tiết học liên tiếp tối đa (4): thông số (1,2) toán STTP và điểm khác biệt so với toán CTTP Ở toán CTTP, số tiết học liên tiếp tối thiểu, tối đa (2,k) với 2 ≤ k ≤

Ràng buộc thời gian rảnh giáo

viên, lớp học, phịng học (5): các phân

cơng không vi phạm thời gian rảnh của giáo viên, lớp học, phòng học.

Ràng buộc tính đầy đủ phân

cơng (6): tất phân công phải

được xếp thời khóa biểu Nếu giải thuật khơng xếp tất phân cơng cần gỡ dần ràng buộc mềm tiến hành lại việc xếp thời khóa biểu Một giải thuật xếp tất phân công không đồng nghĩa giải thuật tạo thời khóa biểu tốt

Ràng buộc phân công xếp sẵn (7):

tiết xếp sẵn tiết ưu tiên xếp trước và tiết khác xếp sau tránh tiết xếp sẵn

Ràng buộc mơn học có tiết cặp

(8): một số môn học theo quy định bắt

buộc phải có tiết cặp để đáp ứng yêu cầu chuyên môn

Ràng buộc môn học học một lần buổi lớp (9):

trong buổi học, mơn học có thể xuất nhiều lần (một tiết lẻ tiết cặp)

Ràng buộc tiết trống lớp theo buổi

(10): tiết trống tiết khơng bố trí dạy học

xen tiết học khác; thực tế thời khóa biểu lớp trường phổ thông cần được xếp cho khơng có tượng trống tiết

Ràng buộc tiết không xếp giáo

viên (11): tiết không xếp tiết theo quy

định ngành, sở giáo dục; thời khóa biểu giáo viên cần xếp tránh tiết khơng xếp này, ví dụ ngày sinh hoạt chuyên môn giáo viên xem tiết không xếp

Ràng buộc mềm tốn xếp thời khóa biểu phổ thơng

Ràng buộc lịch bận giáo viên

(1): mỗi giáo viên có lịch bận riêng

Ràng buộc học cách ngày (2): nên

xếp môn học học cách ngày tuần

Ràng buộc độ nén lịch dạy giáo

viên (3): nên xếp lịch dạy giáo viên

cho số buổi mà giáo viên dạy có thể; gọi n số buổi dạy giáo viên thì: n ≤ số tiết tuần giáo viên/5 +1

Ràng buộc tiết trống giáo viên (4): buổi giáo viên trống tiết tối đa lần (trống tiết tiết liên tục);

trong tuần số tiết trống giáo viên không vượt

Ràng buộc số tiết dạy tối thiểu

trong buổi giáo viên (5): giáo

(4)

Ràng buộc số tiết học tối thiểu

trong buổi học lớp (6): số tiết

tối thiểu buổi học lớp 2 tiết

Ràng buộc số môn học tối đa

trong buổi (7): số môn học tối đa

trong buổi 4; trường hợp bất khả kháng có mơn buổi học mơn học khơng thuộc nhóm mơn học xã hội (Văn, Sử, Địa, Giáo dục công dân, Tiếng Anh)

Ràng buộc số tiết tối đa giáo viên lớp buổi (8):

tránh xếp giáo viên dạy lớp nhiều hơn tiết/buổi học (khơng tính tiết sinh hoạt chủ nhiệm) Trường hợp xảy mơn học có nhiều tiết giáo viên dạy lớp mơn học

2.3 Mơ hình hóa tốn xếp thời khóa biểu

Bài tốn xếp thời khóa biểu gồm yếu tố sau:

Tập P ={p1, p2,…,pm} gồm m tiết học,

tập T ={t1, t2,…,tn} gồm n giáo viên, ma

trận PT cho biết tiết rảnh giáo viên, PTij=1 giáo viên ti rảnh

tiết pj PTij=0 ngược lại

Tập C ={c1, c2,…,ch} gồm h lớp học,

ma trận PC cho biết tiết rảnh lớp học, trong PCij=1 lớp học ci rảnh tiết pj

PCij=0 ngược lại

Tập R ={r1, r2, ,rk} gồm k phòng học,

ma trận PR cho biết tiết rảnh phịng học, PRij=1 phịng học ri rảnh

tiết pj PRij=0 ngược lại

Tập M ={m1, m2,…, my} gồm y môn

học, tập PM gồm y tổng số tiết học tuần môn học tương ứng tập

M tức PM={pm1, pm2,…, pmy}

Tập MR gồm môn học phân cơng vào phịng học, MRij=1

nếu mơn học mi xếp vào phòng rj ngược lại

Tập A ={A1, A2, , Aq} gồm q phân

công, tập Ai cho biết chi tiết phân công

giáo viên tj giảng dạy môn mf cho lớp Cv: Ai={tj, Cv, mf}

Tập lời giải S tốn gồm x phân cơng gán tiết học phòng học

S={S1, S2, ,Sx}, tập Si gồm phân

cơng Ai xếp vào tiết học Pj với số tiết

liên tiếp kv (với k=1,2) phòng học rm: Si={Ai, pj, kv, rm}

Để đánh giá chất lượng lời giải ta sử dụng hàm mục tiêu biểu diễn tổng trọng số vi phạm các ràng buộc tốn; ràng buộc cứng chuyển thành ràng buộc mềm có trọng số cao

Trong đó: S lời giải - thời khóa biểu toàn trường, n tổng số ràng buộc toán, wi trọng số vi phạm của ràng buộc thứ i (wi ≥ 0, với i=1 n), di

là số lần vi phạm ràng buộc thứ i (di ≥ 0,

với i=1 n) [4]

Ký hiệu f(S) giá trị hàm mục tiêu lời giải S, giá trị hàm mục tiêu cao độ thích nghi thấp ngược lại

2.4 Tiêu chí đánh giá chất lượng thời khóa biểu

Chất lượng thời khóa biểu thể hiện qua thời khóa biểu lớp học thời khóa biểu giáo viên Việc đánh giá chất lượng thời khóa biểu cơng việc khó khăn thơng thường giáo viên đánh giá dựa vào thơng tin thời khóa biểu có vi phạm ràng buộc toán

3 Giải thuật di truyền giải toán xếp thời khóa biểu

(5)

một giải thuật metaheuristic, cụ thể giải thuật di truyền [5], [7], [8] để giải toán xếp thời khóa biểu trường phổ thơng

3.1 Tạo quần thể ban đầu

Quần thể ban đầu tạo gồm N cá thể T1, T2, ,TN, cá thể

lời giải tốn, tức thời khóa biểu toàn trường Mỗi cá thể gồm nhiều gen, gen khởi tạo ngẫu nhiên từ tập phân công cho cho trước hết phải thỏa mãn ràng buộc cứng của toán

Chất lượng cá thể quần thể ban đầu khởi tạo ngẫu nhiên thường có chất lượng so với chất lượng các cá thể khởi tạo heuristic của toán Tuy nhiên đa dạng các cá thể khởi tạo ngẫu nhiên, nên lúc kết thúc trình tiến hóa, giải thuật di truyền ứng với quần thể ban đầu (được khởi tạo ngẫu nhiên) thường cho chất lượng lời giải tốt

3.2 Độ thích nghi cá thể

Độ thích nghi cá thể thời khóa biểu xác định giá trị hàm mục tiêu Giá trị hàm mục tiêu nhỏ cá thể thời khóa biểu có chất lượng cao

3.3 Phép lai

Mục trình bày cách chọn cá thể cách thực phép lai, cách xử lý các cá thể sinh từ phép lai

Chọn cá thể thời khóa biểu tham gia phép lai

Cho xác xuất lai pc, cá

thể quần thể P, ta phát sinh ngẫu nhiên số thực r [0 1] Nếu rpc,

chọn cá thể để tham gia phép lai Ta tiến hành thực phép lai cặp cá thể thời khóa biểu theo thứ tự mà chúng được chọn

Phép lai hai cá thể thời khóa biểu cha-mẹ T1,T2 để sinh hai cá thể thời khóa

biểu T1’ T2’ T1’T2’ ban đầu gán T1 T2

Lấy ngẫu nhiên đoạn gen trong cặp cá thể cha-mẹ thỏa mãn ràng buộc tính chất gen tốn – là lớp đó, giả sử đoạn (p1,p2) Duyệt đoạn gen từ (p1,p2) cá thể cha-mẹ T1, nếu có gen làm cho cá thể T2’ tốt cập nhật T2’ Cơng đoạn kết thúc ta cá thể T2’

Tương tự, duyệt đoạn gen từ (p1,p2) cá thể cha-mẹ T2, nếu có gen nào làm cho cá thể T1’ tốt cập nhật

T1’ Công đoạn kết thúc ta cá thể

con T1’

Các cá thểgốc T1 T2 khơng thay đổi trong q trình này; cá thể T1’ T2’

sinh từ phép lai phải thỏa mãn ràng buộc toán

Phép lai hai cá thể T1 T2 để hai cá thể T1’ T2’ Ta đưa cá thể

này vào quần thể - nghĩa sau thực phép lai, số cá thể quần thể lớn N, giả sử N’ Phép chọn

cuối hệ có nhiệm vụ loại bớt số cá thể có độ thích nghi để đảm bảo kích thước quần thể khơng đổi mỗi lần bắt đầu hệ tiến hóa

3.4 Phép đột biến

Mục trình bày cách chọn phân công cá thể để thực phép đột biến, cách thực phép đột biến cách xử lý cá thể sinh từ phép đột biến

Phép đột biến tiến hành sau thực phép lai (trước thực phép chọn) Kích thước quần thể lúc thực phép đột biến N

(6)

Thực di chuyển cụm tiết từ vị trí u

đến vị trí v lớp qua lớp khác mà đảm bảo lớp khác cũng có giáo viên, mơn học phù hợp với phân cơng X Nếu khơng tìm vị trí v

phù hợp phép đột biến khơng thực

Theo nguyên tắc đột biến, cá thể sau đột biến không thiết phải tốt trước đột biến Vì xét q trình tiến hóa, một cá thể chưa tốt hệ có khả giúp q trình tiến hóa sinh cá thể tốt hệ

Xử lý cá thể sinh

Giả sử cá thể T sau đột biến sinh cá thể T’, ta có hai cách xử lý sau đây:

Cách thứ nhất T’ tốt T thay T T’, TT xem như phép đột biến khơng thực

Cách thứ hai thay T T’ mà

không quan tâm đến chất lượng lời giải

T’ Trong báo này, chọn thực

hiện phép đột biến thứ hai 3.5 Phép chọn lọc

Chúng sử dụng phép chọn lọc cá thể dựa độ thích nghi xếp hạng bằng cách bố trí chung theo độ thích nghi giảm dần (tức theo chiều tăng dần giá trị hàm mục tiêu), sau chọn N cá thể có độ thích nghi cao

Để khơng làm cá thể tốt được khai phá suốt q trình tiến hóa, giải thuật chúng tôi luôn cập nhật cá thể tốt thời điểm (cá thể ưu tú)

3.6 Điều kiện dừng

Thường giải thuật di truyền chọn các điều kiện dừng sau đây: thứ là lời giải tốt tìm tốn khơng được cải thiện sau số lần lặp định trước ; thứ hai là số lần lặp giải thuật đạt đến giá trị định trước ; thứ ba là

giải thuật chạy hết lượng thời gian định trước Trong tốn xếp thời khóa biểu trường phổ thông xét, chọn điều kiện dừng

3.7 Giải thuật di truyền giải tốn xếp thời khóa biểu

Chúng gọi giải thuật STTGA (School Timetabling Problem Genetic algorithm)

Dữ liệu đầu vào: danh sách phân

công, danh sách ràng buộc, trọng số vi phạm ứng với ràng buộc

Dữ liệu đầu ra: thời khóa biểu

mỗi lớp, thời khóa biểu giáo viên

Giải thuật di truyền giải tốn xếp thời khóa biểu - STTGA

1: Khởi tạo quần thể ban đầu với N cá thể ngẫu nhiên, lời giải thời khóa biểu toàn trường, gen cá thể ứng với phân công;

2: Xác suất lai pc, xác suất đột biến pm; 3: Đánh giá độ thích nghi cá thể

quần thể, cá thể T có giá trị hàm mục

C(T), cá thể T tốt C(T) có giá trị bé ngược lại;

4: while (điều kiện dừng chưa thỏa)

{

a) Chọn ngẫu nhiên cặp cá thể

cha-mẹ từ quần thể;

b) Phép lai (crossover): xảy xác suất lai ghép pc lai ghép hai cá thể cha-mẹ để tạo thành cá thể con, ngược lại, cá thể giống cá thể cha-mẹ;

c) Đột biến (Mutation): xảy xác suất đột biến pm đột biến cách cho thay đổi nhỏ cá thể; d) Đánh giá lại độ thích nghi

cá thể, tức tính lại giá trị hàm mục tiêu;

(7)

cá thể có độ thích nghi hơn; }

5: Cá thể tốt hệ sau lời giải toán

4 Thực nghiệm đánh giá

4.1 Dữ liệu thực nghiệm

Chúng thực nghiệm giải thuật di truyền STTGA liệu thực tế Trường Trung học phổ thơng Giồng Ơng Tố, Quận 2, Thành phố Hồ Chí Minh Bộ thứ có tên gọi HK11920, thứ hai có tên gọi HK21920

Bảng Thông số liệu thực nghiệm

STT Loại liệu HK11920

(Số lượng)

HK21920 (Số lượng)

1 Số giáo viên có phân cơng 76 73

2 Số phòng học 36 36

3 Số môn học 45 44

4 Số phân công 485 475

5 Số ràng buộc cứng 11 11

6 Số ràng buộc mềm 8 8

7 Số buổi học tuần 6 6

8 Số tiết tối đa buổi học 5 5

Các ràng buộc cứng 1, 2, 3, 9, 10, 11 trên mềm hóa với trọng số cao (các giá trị đề xuất qua trình thực nghiệm thực tế), ràng buộc cứng 4, 5,

6, 7, cịn lại ln thỏa mãn cài đặt Do đó, tốn có ràng buộc cứng 8 ràng buộc mềm cần xử lý theo liệt kê Bảng Bảng

Bảng 2. Trọng số vi phạm ràng buộc cứng

Ràng

buộc Tên ràng buộc Trọng số

Đối tượng ràng buộc

H1 Ràng buộc đụng độ giáo viên 999 Giáo viên

H2 Ràng buộc đụng độ lớp học 999 Lớp

H3 Ràng buộc đụng độ phòng học 999 Phòng học

H4 Ràng buộc môn học học lần

một buổi lớp 600 Lớp

(8)

Bảng 3. Trọng số vi phạm ràng buộc mềm

Ràng

buộc Tên ràng buộc Trọng số

Đối tượng ràng buộc

S1 Ràng buộc lịch bận giáo viên 15 Giáo viên

S2 Ràng buộc học cách ngày môn học 10 Lớp

S3 Ràng buộc độ nén lịch dạy giáo viên 20 Giáo viên S4 Ràng buộc tiết lủng giáo viên 25 Giáo viên S5 Ràng buộc số tiết dạy tối thiểu buổi

giáo viên 10 Giáo viên

S6 Ràng buộc số tiết học tối thiểu buổi học

của lớp 20 Lớp

S7 Ràng buộc số môn học tối đa buổi 15 Lớp S8 Ràng buộc số tiết tối đa giáo viên

một lớp buổi 20 Lớp

4.2 Môi trường thực nghiệm

Giải thuật STTGA cài đặt ngôn ngữ C++ sử dụng môi trường

CodeBlocks 17.12, thực nghiệm máy tính hệ điều hành Windows 10 64bit, Processor Intel(R) Core (TM) i3-814U CPU @ 2.10GHz 2.30GHz, RAM 4GB

4.3 Tham số thực nghiệm

Trong trình thực nghiệm, chúng tôi đề xuất xác suất lai ghép pc= 0.85

xác suất phép đột biến pm = 0.05, với số

lượng cá thể quần thể 75 4.4 Kết thực nghiệm

Kết thực nghiệm giải thuật di truyền STTGA bao gồm thời khóa hiểu mỗi lớp học lịch dạy giáo viên Từ đó, chúng tơi ghi nhận tình trạng vi phạm

các ràng buộc thời khóa biểu lớp thời khóa biểu giáo viên để làm sở so sánh chất lượng lời giải giải thuật

4.5 Đánh giá chất lượng giải thuật đề xuất

(9)

Bảng 4. Thống kê số lần vi phạm ràng buộc lớp theo giải thuật GOT giải thuật di truyền STTGA liệu HK11920 HK21920

Bộ

liệu Lớp H1 H2 H3 H4 H5 H6 S1 S2 S3 S4 S5 S6 S7 S8

HK11920 STTGA 0 0 0 0 0 0 0 0 0 0 0 0 28 0 GOT 0 0 0 15 0 0 0 54 0 0 0 0 26 0 HK21920 STTGA 0 0 0 0 0 0 0 9 0 0 0 0 28 0 GOT 0 0 0 4 0 0 0 36 0 0 0 0 20 0 Xét liệu HK11920, giải thuật

STTGA giải thuật GOT cho tổng số lần vi phạm ràng buộc H4, S2, S7 lần lượt (0, 15), (0, 54), (28, 26) Xét

liệu HK21920, giải thuật STTGA giải thuật GOT cho tổng số lần vi phạm các ràng buộc H4, S2, S7 (0, 4), (9, 36), (28, 20)

Bảng 5. Thống kê số lần vi phạm ràng buộc giáo viên theo toán thuật GOT giải

thuật di truyền STTGA liệu HK11920 HK21920

Bộ

liệu Giáo viên H1 H2 H3 H4 H5 H6 S1 S2 S3 S4 S5 S6 S7 S8

HK11920 STTGA 0 0 0 0 0 0 0 0 53 19 0 0 GOT 0 0 0 0 0 0 6 0 12 93 0 0 0 HK21920 STTGA 0 0 0 0 0 0 0 0 47 16 0 0 GOT 0 0 0 0 0 0 27 12 91 0 0 0 Xét liệu HK11920, giải thuật

STTGA giải thuật GOT cho tổng số lần vi phạm ràng buộc S1, S3, S4, S5 lần lượt (0, 6), (53, 12), (7, 93), (19, 1) Xét liệu HK21920, giải thuật STTGA giải thuật GOT cho tổng số lần vi phạm ràng buộc S1, S3, S4, S5 lần lượt (0, 27), (47, 12), (3, 91), (16, 0)

Thời gian chạy thực nghiệm giải thuật STTGA liệu 202 giờ ghi nhận kết tốt làm kết giải thuật

5 Kết luận

Nghiên cứu số đặc trưng tốn xếp thời khóa biểu

(10)

GOT (0, 145), (0, 242) Nghiên cứu cho phép phát triển chiến lược đột biến, lai ghép kết hợp

với chiến lược tìm kiếm lân cận để nâng cao chất lượng lời giải bài toán

Lời cảm ơn

Nhóm tác giả trân trọng cảm ơn lãnh đạo Trường THPT Giồng Ông Tố cho phép sử dụng thời khóa biểu trường làm liệu thực nghiệm; cảm ơn Thầy, Cô Khoa Cơng nghệ Thơng tin Trường Đại học Sài Gịn có ý kiến đóng góp cho luận văn thạc sỹ “Đề xuất giải thuật di truyền giải tốn xếp thời khóa biểu”; cảm ơn nhà khoa học phản biện cho ý kiến đóng góp q báu giúp nhóm tác giả hồn chỉnh báo

TÀI LIỆU THAM KHẢO

[1] Dominique de Werra, “An Introduction to Timetabling”, European Journal of

Operational Research, 19(2), 151-162, 1985

[2] Trương Quốc Định Nguyễn Thanh Hải, “Giải thuật xếp thời khóa biểu ứng dụng vào toán quản lý xếp lịch thi kết thúc lớp học phần trường Đại học Cần Thơ”, Tạp chí khoa học trường Đại học Cần Thơ, 43(a), 116-125, 2016

[3] Nguyễn Bá Phúc, “Thuật giải bees cho toán xếp thời khoá biểu”, thạc sĩ khoa học, chuyên ngành Khoa học máy tính, Trường ĐH Khoa học tự nhiên, ĐH Quốc gia TP Hồ Chí Minh, 2011

[4] Nguyễn Tấn Trần Minh Khang, “Nghiên cứu ứng dụng giải thuật Metaheuristic cho tốn xếp thời khóa biểu mơn học trường đại học”, tiến sĩ Khoa học, chuyên ngành Khoa học máy tính, Trường ĐH Khoa học Tự nhiên, ĐH Quốc gia TP Hồ Chí Minh, 2014

[5] Nguyễn Đình Thúc, Trí tuệ nhân tạo - Lập trình tiến hóa, Nhà xuất Giáo dục, 2008 [6] Nguyen Khang, Nguyen Dang, Trieu Khon, Tran Nuong, “Automating a Real-World University Timetabling Problem with Tabu Search Algorithm”, IEEE RIVF International Conference on Computing & Communication Technologies, Research,

Innovation, and Vision for the Future, 1-6, 2010

[7] Nguyen Quoc Viet Hung, Ta Quang Binh, Duong Tuan Anh, “A Memetic Algorithm for Timetabling”, RIVF’05 Research Informatics Vietnam-Francophony, Can Tho, 2005 [8] Xin She Yang, Engineering optimization: an introduction with metaheuristic

applications, John Wiley & Sons, 2010

[9] Carlos Lara, Juan José Flores, Félix Calderón, “Solving a School Timetabling Problem Using a Bee Algorithm”, Proceedings of the 7th Mexican International Conference on

Artificial Intelligence: Advances in Artificial Intelligence, 664 – 674, 2008

Ngày đăng: 05/04/2021, 22:03