Kết hợp thuật toán cặp ghép và thuật toán tham lam vào việc giải 
quyết bài toán thời khóa biểu trường chuyên là khâu đột phá ban đầu 
cho việc Tin học hóa toàn bộ việc xếp thời khóa biểu cũng nhưcác 
công việc quản lý khác của Trường THPT Chuyên Lê Quý Đôn, hệ
thống trường chuyên trên toàn quốc; cho ra được một sản phẩm xếp 
thời khóa biểu tương đối tốt với nhiều tính năng nổi trội: 
Việc cập nhật, xử lý dữ liệu nhanh với tốc độgần nhưtức thời.
Thông tin được thểhiện trên màn hình một cách hợp lý, cho phép 
người dùng quan sát một không gian rộng lớn của thời khóa biểu, 
trên màn hình hiện rõ thông tin trong 1 buổi học của một lớp học có 
liên kết với thời khóa biểu của giáo viên và phòng học tương ứng. 
Chương trình đã xử lý được các kỹ thuật đặc thù của thời khóa 
biểu nhưghép lớp, tách lớp. Phần mềm xếp tự động hoàn toàn, dữ
liệu đáp ứng hầu hết các ràng buộc thông thường của thời khóa biểu.
                
              
                                            
                                
            
 
            
                 26 trang
26 trang | 
Chia sẻ: lylyngoc | Lượt xem: 3214 | Lượt tải: 0 
              
            Bạn đang xem trước 20 trang tài liệu Nghiên cứu kết hợp thuật toán cặp ghép và tham lam giải quyết bài toán thời khóa biểu trường chuyên, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1 
BỘ GIÁO DỤC VÀ ĐÀO TẠO 
ĐẠI HỌC ĐÀ NẴNG 
ĐỒN CƯỜNG 
NGHIÊN CỨU KẾT HỢP THUẬT TỐN 
CẶP GHÉP VÀ THAM LAM GIẢI QUYẾT 
BÀI TỐN THỜI KHĨA BIỂU TRƯỜNG CHUYÊN 
 Chuyên ngành : KHOA HỌC MÁY TÍNH 
 Mã số: : 60.48.01 
TĨM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT 
Đà Nẵng - Năm 2011 
2 
Cơng trình được hồn thành tại 
ĐẠI HỌC ĐÀ NẴNG 
Người hướng dẫn khoa học: TS. Nguyễn Thanh Bình 
Phản biện 1: PGS.TS. Lê Văn Sơn 
Phản biện 2: TS. Trương Cơng Tuấn 
Luận văn được bảo vệ trước Hội đồng chấm Luận văn tốt 
nghiệp thạc sĩ kỹ thuật họp tại Đại học Đà Nẵng vào ngày 18 
tháng 06 năm 2011 
 * Cĩ thể tìm hiểu luận văn tại: 
- Trung tâm Thơng tin - Học liệu, Đại học Đà nẵng 
- Trung tâm Học liệu, Đại học Đà Nẵng. 
3 
MỞ ĐẦU 
1. LÝ DO CHỌN ĐỀ TÀI 
Việc chia thời khĩa biểu (TKB) cho các Trường THPT 
Chuyên trên tồn quốc là vấn đề hết sức khĩ khăn. Vì trường chuyên 
cĩ những đặc thù riêng biệt: đối với trường chuyên mỗi học kỳ phải 
chia thành nhiều giai đoạn, tại mỗi giai đoạn số tiết dạy của từng bộ 
mơn phải cĩ sự thay đổi để đáp ứng được tiến độ của từng bộ mơn 
chuyên, nên tất cả các trường chuyên đều phải làm thủ cơng, dẫn đến 
kết quả khơng mấy khả quan. 
Hiện cĩ một số phần mềm xếp TKB của Cục Cơng nghệ 
Thơng tin, hay một số tổ chức khác dành cho trường THPT bình 
thường nhưng hiệu quả khơng cao, khơng đáp ứng được nhu cầu của 
từng giáo viên. Vì vậy, các trường này phải tự làm thủ cơng, cịn nếu 
áp dụng cho trường chuyên thì khơng thể được. 
 Cơng nghệ Thơng tin đã và đang trên đà phát triển mạnh mẽ 
trên tồn cầu, nhưng việc chia thời khĩa biểu cho tất cả các trường 
THPT trên tồn quốc nĩi chung, trường THPT chuyên nĩi riêng vẫn 
phải làm thủ cơng, nên hiệu quả khơng cao, lại mất rất nhiều thời 
gian và cơng sức. Bài tốn đặt ra là vấn đề xếp thời khĩa biểu cho 
trường THPT chuyên, với nhiều cơ sở khác nhau. Cần cĩ sự sắp xếp 
lịch học cho các lớp tại các phịng ở mỗi địa điểm, sao cho vừa hợp 
lý lại vừa tiện dụng nhất, phù hợp với từng bộ mơn chuyên. 
Bài tốn bao gồm tất cả các vấn đề cĩ liên quan đến việc xếp 
thời khĩa biểu ở trường THPT chuyên, chẳng hạn đặt lớp học vào 
một phịng sao cho tương ứng về sức chứa của nĩ, tránh việc học 
trùng giờ tại một phịng của các lớp; giáo viên sẽ dạy theo giờ quy 
định trong bảng phân cơng, đảm bảo quy chế của Bộ Giáo dục & 
4 
Đào tạo. Thơng thường, cơng việc này được làm bằng tay, tất nhiên 
chúng ta luơn thực hiện được và cho ra kết quả tương đối tốt, nhưng 
phải mất nhiều thời gian và ít nhất phải cĩ kinh nghiệm xếp lịch nếu 
khơng muốn cĩ sai sĩt xảy ra, chẳng hạn như: chỗ này thừa phịng, 
chỗ khác lại thiếu, sai chỗ, sai giờ,... 
Vấn đề của bài tốn là ngồi việc thực hiện đúng, chính xác, 
cịn phải tốt hơn, nhanh hơn và hiệu quả hơn cơng việc xếp lịch bằng 
tay mà chúng ta vẫn phải làm. Trường THPT chuyên Lê Quý Đơn cĩ 
nhiều đặc trưng riêng. Nhu cầu đến lớp của giáo viên khác nhau, một 
số người thích đến lớp trong một số ngày nào đĩ trong tuần, nên việc 
xếp TKB cũng cĩ nhiều điểm khác so với các Trường THPT khác. 
Chính vì lý do này, đề tài nghiên cứu thuật tốn cặp ghép và áp dụng 
nĩ để làm sao thỏa mãn một cách tốt nhất các nhu cầu của giáo viên. 
Ví dụ khi chia TKB cho lớp ghép là một vấn đề, giả sử cĩ lớp vừa 
chuyên Anh vừa chuyên Pháp, thì tại một số thời điểm phải cĩ 2 giáo 
viên cùng dạy cho lớp này nhưng phải đảm bảo các tính chất của một 
lớp chuyên. 
Xuất phát từ những lý do trên mà tơi đã chọn đề tài 
“Nghiên cứu kết hợp thuật tốn cặp ghép và tham lam giải quyết 
bài tốn thời khĩa biểu trường chuyên” ứng dụng tại Trường THPT 
chuyên Lê Quý Đơn, cĩ giải pháp và chương trình, sản phẩm cụ thể 
làm đề tài luận văn tốt nghiệp thạc sĩ của mình. Chương trình được 
xây dựng và ứng dụng sẽ giúp hồn thiện hơn kiến thức được học và 
cĩ ý nghĩa khoa học, thực tiễn cao. 
2. MỤC TIÊU VÀ NHIỆM VỤ NGHIÊN CỨU 
- Mục tiêu 
5 
o Hồn thành sản phẩm là một chương trình chia thời khĩa 
biểu Trường THPT Chuyên Lê Quý Đơn. 
o Tiếp tục phát triển ứng dụng chia thời khĩa biểu cho tất 
cả các trường THPT Chuyên, THPT trên tồn quốc. 
- Nhiệm vụ 
o Phân tích các đặc thù riêng biệt cĩ số liệu của tất cả các 
trường chuyên trên tồn quốc, đề ra giải pháp hợp lý 
trong việc xây dựng và triển khai hệ thống. 
o Nghiên cứu kết hợp thuật tốn cặp ghép và tham lam giải 
quyết bài tốn thời khĩa biểu Trường THPT chuyên Lê 
Quý Đơn. 
o Phân tích, đánh giá và đề ra giải pháp chia thời khố 
biểu một cách tự động và chính xác. 
o Nghiên cứu, ứng dụng cơng nghệ dotNet, ngơn ngữ C# 
trong tiến trình xây dựng hệ thống. 
o Xây dựng sản phẩm hồn thiện sử dụng tại Trường 
THPT chuyên Lê Quý Đơn. 
3. PHƯƠNG PHÁP NGHIÊN CỨU 
- Tư liệu: Tổng hợp các tài liệu liên quan đến thuật tốn cặp 
ghép và tham lam, cũng như các quy chế trường chuyên. 
- Phân tích: Phân tích quy chế trường chuyên, xác định các 
yêu cầu của từng đối tượng cụ thể. 
- Thực nghiệm: Xây dựng chương trình chia thời khĩa biểu 
và xuất ra tệp Excel, tích hợp với CSDL của Phịng giáo vụ. 
6 
Tổng hợp lại hệ thống để đưa thời khĩa biểu lên WebSite của 
Trường chuyên Lê Quý Đơn Đà Nẵng. 
4. Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN CỦA ĐỀ TÀI 
- Về mặt lý thuyết: Đề tài nghiên cứu giúp hiểu rõ hơn về sự 
kết hợp thuật tốn cặp ghép và thuật tốn tham lam. 
- Về mặt thực tiễn: Xây dựng một chương trình phục vụ nhu 
cầu thực hiện chia thời khĩa biểu tự động nhằm giảm thời 
gian và chi phí bằng tay như hiện nay. 
5. NỘI DUNG CỦA LUẬN VĂN 
Luận văn được trình bày cĩ 3 chương chính. 
Chương 1: Mơ hình bài tốn thời khĩa biểu trường chuyên 
Chương này trình bày tổng quan bài tốn thời khĩa biểu tại 
các trường THPT, THPT chuyên trên tồn quốc, cũng như 
các phần mềm thời khĩa biểu hiện cĩ tại Việt Nam và trên 
thế giới. 
Chương 2: Kết hợp thuật tốn cặp ghép và tham lam giải quyết bài 
tốn thời khĩa biểu 
Trong chương này trình bày cơ sở lý thuyết của thuật tốn 
cặp ghép và thuật tốn tham lam, giải pháp kết hợp của hai 
thuật tốn này vào việc giải quyết bài tốn thời khĩa biểu 
trường chuyên. 
Chương 3: Xây dựng chương trình và thử nghiệm 
Triển khai một chương trình máy tính cài đặt phần mềm thời 
khĩa biểu trường chuyên được thể hiện chi tiết; thử nghiệm 
và đánh giá các kết quả đạt được thơng qua việc áp dụng 
thuật tốn cặp ghép và tham lam, tự động hĩa bài tốn TKB 
7 
trường chuyên và các chức năng tinh chỉnh thủ cơng, nhằm 
tạo ra một thời khĩa biểu tinh về chất, áp dụng tốt cho 
trường chuyên trên tồn quốc. 
8 
CHƯƠNG 1 – BÀI TỐN THỜI KHĨA BIỂU TRƯỜNG 
THPT CHUYÊN 
Bài tốn xếp thời khĩa biểu đã từ lâu trở thành một bài tốn nổi 
tiếng và thu hút được sự quan tâm của rất nhiều nhà nghiên cứu, 
nhiều chuyên gia trong các lĩnh vực liên quan. Sự "nổi tiếng" của bài 
tốn này khơng chỉ được đo bởi độ phức tạp của vấn đề, mà cịn ở 
tính thực tiễn, khả năng áp dụng rất cao trên thực tế. Bất cứ một nhà 
trường nào, thời khĩa biểu học tập của học sinh và giảng dạy của 
giáo viên đã và luơn là bộ xương sống cơ bản nhất kết nối hầu như 
tồn bộ các hoạt động của nhà trường. Chính vì lẽ đĩ bài tốn xếp 
thời khĩa biểu trở thành một trong những vấn đề chính và quan trọng 
vào bậc nhất của mỗi nhà trường. 
Hiện nay ở Việt Nam cĩ khoảng 25 000 trường phổ thơng từ 
Tiểu học đến THCS và THPT và cĩ nghĩa là sẽ cĩ tối thiểu từng đĩ 
giáo viên đang làm nhiệm vụ xếp thời khĩa biểu. Xếp thời khĩa biểu 
thực sự là một cơng việc khĩ. Cái khĩ ở đây được thể hiện theo 3 lý 
do sau: 
Thứ nhất, việc xếp TKB là một việc địi hỏi tư duy, suy luận, tính 
tốn rất phức tạp, rất dễ nhầm lẫn, trùng giờ trùng tiết. Phải là người 
cĩ kinh nghiệm và hiểu biết về cơng việc này mới làm được. 
Thứ hai, người xếp thời khĩa biểu là người "làm dâu trăm họ", rất 
khĩ cĩ thể đáp ứng được các nhu cầu khác nhau của tồn bộ đội ngũ 
giáo viên trong trường. Các ràng buộc của giáo viên trong nhà trường 
lại rất mâu thuẫn, chồng chéo lẫn nhau. 
Thứ ba, cơng việc xếp TKB địi hỏi một số tư duy đặc biệt, rất đặc 
thù của "nghề xếp TKB". Khơng phải ai cũng cĩ thể rèn luyện để cĩ 
những kinh nghiệm và tư duy này. Người xếp TKB, ngồi việc phải 
9 
rất am hiểu về các chương trình mơn học, hiểu rõ tính nết và yêu cầu 
của các giáo viên trong nhà trường, cịn phải cĩ được những tư duy 
nghề nghiệp của cơng việc xếp thời khĩa biểu [16]. 
Trong chương này chúng tơi trình bày các vấn đề sắp xếp TKB tại 
các trường THPT trên tồn quốc, giới thiệu tổng quan bài tốn TKB 
trường chuyên, các phần mềm thời khĩa biểu hiện cĩ tại Việt Nam 
và thế giới. 
1.1. VẤN ĐỀ SẮP XẾP THỜI KHĨA BIỂU TRƯỜNG THPT 
 1.1.1. Dùng phương pháp thủ cơng để sắp xếp thời khĩa biểu 
Trường THPT 
 1.1.2. Dùng phần mềm để sắp xếp TKB Trường THPT 
1.2. SẮP XẾP THỜI KHĨA BIỂU TRƯỜNG THPT CHUYÊN 
Bài tốn sắp xếp TKB là một bài tốn khĩ. Việc chia thời khĩa 
biểu cho các Trường THPT Chuyên trên tồn quốc lại càng hết sức 
khĩ khăn. Vì trường chuyên cĩ những đặc thù riêng biệt; đối với 
trường chuyên mỗi học kỳ phải chia thành nhiều giai đoạn, tại mỗi 
giai đoạn số tiết dạy của từng bộ mơn phải cĩ sự thay đổi để đáp ứng 
được tiến độ của từng bộ mơn chuyên, nên tất cả các trường chuyên 
đều phải làm thủ cơng, dẫn đến kết quả khơng mấy khả quan. Mặc dù 
hiện nay Cơng nghệ Thơng tin phát triển rất mạnh, đã giải quyết 
được nhiều ứng dụng trong cuộc sống, nhưng chưa cĩ thuật tốn nào 
tối ưu để giải quyết được bài tốn thời khĩa biểu. 
Các phần mềm sắp xếp TKB hiện nay, chưa cĩ phần mềm nào áp 
dụng được cho trường THPT chuyên trên tồn quốc nĩi chung, 
trường THPT chuyên Lê Quý Đơn nĩi riêng. Vì vậy, tại các trường 
này phải dùng tay để sắp xếp TKB nên tốn rất nhiều thời gian và 
10 
cơng sức, nhất là người sắp xếp TKB phải hiểu sâu sắc về chuyên 
mơn, cách phân chia số tiết cụ thể cho từng bộ mơn chuyên, nắm 
được quy chế trường chuyên cũng như các đặc thù của từng giáo 
viên dạy chuyên, họ phải biết phân chia theo từng giai đoạn để đáp 
ứng kịp thời tiến độ và theo kịp yêu cầu của Bộ Giáo dục và Đào tạo. 
Từ đĩ mới thực hiện việc chia TKB cho phù hợp, cuối cùng cho ra 
được một TKB tương đối tốt, tuy nhiên phải mất rất nhiều thời gian 
và cơng sức. 
 1.2.1. Giới thiệu bài tốn 
Từ những hiện trạng khĩ khăn trong vấn đề giải quyết bài tốn 
TKB trường THPT chuyên cũng như hệ thống THPT chuyên trong 
đại học (gọi tắt là trường chuyên), chúng tơi chọn “Nghiên cứu kết 
hợp thuật tốn cặp ghép và tham lam giải quyết bài tốn thời khĩa 
biểu trường chuyên” với bộ dữ liệu thực của trường THPT chuyên 
Lê Quý Đơn làm dữ liệu cở sở để giải quyết bài tốn TKB trong luận 
văn này. Bài tốn đặt ra là vấn đề xếp thời khĩa biểu cho trường 
THPT chuyên Lê Quý Đơn với nhiều cở sở khác nhau, cần cĩ sự sắp 
xếp lịch học cho các lớp tại các phịng ở mỗi địa điểm, sao cho vừa 
hợp lý lại vừa tiện dụng nhất, phù hợp với từng bộ mơn chuyên. 
Bài tốn đặt ra bao gồm tất cả các vấn đề cĩ liên quan đến việc 
xếp thời khĩa biểu ở trường THPT chuyên Lê Quý Đơn, chẳng hạn 
như: đặt lớp học vào một phịng sao cho tương ứng về sức chứa của 
nĩ, tránh việc học trùng giờ tại một phịng của các lớp, nhất là những 
lớp ghép; giáo viên sẽ dạy theo giờ qui định trong bảng phân cơng. 
Thơng thường, cơng việc này được làm bằng tay, tất nhiên chúng ta 
luơn thực hiện được và luơn cho ra kết quả tương đối tốt, nhưng phải 
mất nhiều thời gian và ít nhất phải cĩ kinh nghiệm xếp lịch nếu 
11 
khơng muốn cĩ sai sĩt xảy ra, chẳng hạn như: chỗ này thừa phịng, 
chỗ khác lại thiếu, sai chỗ, sai giờ... .Vấn đề của bài tốn là ngồi 
việc thực hiện đúng, chính xác, cịn phải tốt hơn, nhanh hơn và hiệu 
quả hơn cơng việc xếp lịch bằng tay mà chúng ta vẫn phải làm. 
Trường THPT chuyên Lê Quý Đơn là trường cĩ nhiều đặc trưng 
riêng, nên việc xếp TKB cũng cĩ nhiều điểm khác so với các trường 
THPT khác. Khi chia TKB cho lớp ghép là một vấn đề cần quan tâm. 
Lớp ghép chuyên Anh - Pháp, thì tại một thời điểm phải cĩ hai giáo 
viên cùng dạy cho lớp này tại hai phịng khác nhau nhưng phải đảm 
bảo các tính chất của một lớp chuyên. 
 Đối với giáo viên là nam cĩ độ tuổi từ 50 trở lên hoặc giáo viên 
nữ cĩ độ tuổi lớn hơn 40 thì khơng được phép dạy 4 tiết liên tục trên 
một buổi. Hay đối với giáo viên là nữ cĩ con nhỏ hơn 18 tháng tuổi 
thì khơng được dạy tiết đầu hay tiết cuối mỗi buổi. 
Điều đáng nĩi ở đây là phải làm thế nào đĩ mà TKB cho mỗi giáo 
viên phải được cho là tốt nhất. 
 1.2.2. Phát biểu bài tốn 
Ngay khi vấn đề được đặt ra, chúng ta đã thấy bài tốn phải được 
giải quyết trên hai nền tảng cơ bản: nghiệp vụ và kỹ thuật. Muốn đọc 
hiểu được một thơng tin của thời khĩa biểu, yêu cầu dữ liệu phải 
được hiển thị đầy đủ, khơng thiếu sĩt, khơng bị sai lệch, phải phù 
hợp với nghiệp vụ đề ra. Phần kỹ thuật cũng vậy, phải xử lý tất cả 
những yêu cầu riêng biệt từ các đối tượng gửi đến, chúng được xem 
như là thành phần ràng buộc của bài tốn, bắt buộc vấn đề phải thỏa 
mãn và đáp ứng hồn tồn. Vì vậy, chúng tơi sẽ phân tích bài tốn 
trên hai thành phần đĩ. 
12 
 1.2.3. Dữ liệu bài tốn 
Như đã nĩi ở trên, thơng tin sẽ phát sinh từ các đối tượng chính trong 
bài tốn. Do đĩ, các dữ liệu luơn cĩ mối liên hệ với nhau, phần lớn vì 
nhu cầu nghiệp vụ mà dữ liệu xuất hiện tương đối nhiều. Trong bài 
tốn xếp thời khĩa biểu của trường THPT chuyên Lê Quý Đơn, cụ 
thể sẽ địi hỏi các thơng tin sau: 
- Danh sách cơ sở 
o Danh sách giáo viên. 
o Danh sách khĩa học (Khối 10, Khối 11, Khối 12). 
o Danh sách lớp học: 
o Danh sách phịng học (30 phịng, chia làm khu A, khu B 
và khu C). 
o Danh sách mơn học và số tiết học do Bộ Giáo dục và 
Đào tạo quy định. 
o Danh sách mơn học và số tiết học do trường điều chỉnh 
(theo từng giai đoạn). 
o Danh sách 12 mơn học bắt buộc cho các lớp: Tốn, Lý, 
Hĩa, Sinh, Tin, Văn, Sử, Điạ, Anh, Pháp, Cơng Dân, 
Nơng Nghiệp/Cơng Nghiệp. 
o Danh sách mơn chuyên cho từng lớp: Tốn học,Vật Lý, 
Hĩa học, Sinh học, Tin học, Ngữ Văn, Lịch Sử, Điạ 
Lí,Tiếng Anh, Tiếng Pháp. 
- Bảng phân cơng giáo viên giảng dạy tại các lớp. 
- Bảng yêu cầu ràng buộc của giáo viên với lịch dạy. 
- Bảng yêu cầu ràng buộc của lớp với lịch học. 
- Bảng yêu cầu ràng buộc của phịng với lịch sử dụng. 
13 
 1.2.3.1. Các đối tượng sử dụng 
Các đối tượng chính yếu xung quanh mơ hình xếp thời khĩa 
biểu, chính là thành phần đầy đủ tính năng của chương trình 
trong bài tốn. Tất cả được liệt kê như sau: 
- Giáo viên, 
- Lớp học, 
- Mơn học, 
- Phịng học, 
- Số tiết. 
 1.2.3.2. Mối quan hệ giữa các đối tượng 
Trên lịch lớp học, thể hiện rõ thơng tin các đối tượng liên quan 
nhau ở tại thời điểm tiết học, tất cả cùng nằm trong một bảng này. 
Hay nĩi cách khác bảng lịch lớp học là phần thể hiện mối quan hệ 
của các đối tượng: giáo viên, lớp học và mơn học. 
Sau này lớp học đặt trong một lịch cơ sở cụ thể, gây phát sinh mới, 
tạo quan hệ thứ hai, giữa lớp học và phịng học. Đĩ là mối quan hệ 
lịch cơ sở. 
 1.2.4. Các ràng buộc bài tốn 
Trong mơ hình bài tốn, các đối tượng cĩ những yêu cầu, ràng 
buộc riêng biệt khác nhau với cơng việc của mình, và được nhập vào 
kèm theo ngay khi đối tượng xuất hiện. Song song đĩ, với nghiệp vụ 
lịch thực thi, cĩ rất nhiều thơng số, và mối quan hệ các đối tượng tạo 
ra một ràng buộc chung, như là bộ luật thống nhất trong tồn hệ 
thống. Phần mềm TKB phải thỏa mãn các ràng buộc dưới đây: 
- Mỗi giáo viên cĩ ràng buộc riêng. 
- Mỗi lớp học cĩ ràng buộc riêng. 
14 
- Mỗi phịng học cĩ ràng buộc riêng. 
- Mơn học tại một lớp khơng xuất hiện trong bảng lịch lớp nhiều 
lần. 
- Giáo viên và mơn học trong cùng một lớp khơng xuất hiện trong 
bảng lịch lớp nhiều lần. 
- Tại một thời điểm khơng xuất hiện nhiều lớp học tại một phịng 
trong bảng lịch cơ sở. 
- Sức chứa của phịng phải lớn hơn hoặc bằng số học sinh cĩ 
trong lớp học mà được xếp học ở phịng đĩ. 
- Tại một thời điểm lớp duy nhất học một mơn. 
- Mỗi lớp học chỉ học trong một buổi. 
- Số tiết học của một mơn trong 1 lần, phải theo qui định; tối đa 2 
tiết trong một lần học, cịn đối với lớp học các mơn chuyên thì 
phải học liên tiếp 4 tiết. 
 1.2.4.1. Ràng buộc dữ liệu nhập vào 
 1.2.4.2. Ràng buộc nghiệp vụ - thời gian 
 1.2.4.3. Ràng buộc nghiệp vụ - chuyên mơn 
 1.2.4.4. Các yêu cầu chức năng 
 1.2.5. Các yêu cầu phi chức năng 
1.3. CÁC CƠNG CỤ HỖ TRỢ HIỆN TẠI 
 1.3.1. Phần mềm thời khĩa biểu tại Việt Nam 
 1.3.2. Phần mềm thời khĩa biểu trên thế giới 
15 
1.4. TỔNG KẾT CHƯƠNG 1 
Từ hiện trạng của bài tốn thời khĩa biểu trường THPT nĩi chung, 
trường chuyên trên tồn quốc nĩi riêng, đã cho chúng ta thấy được: 
Hiện nay, Cơng nghệ Thơng tin đang trên đà phát triển rất mạnh và 
đã ứng dụng nhiều vào trong cuộc sống, nhưng vẫn chưa cĩ thuật 
tốn nào tối ưu để giải quyết bài tốn thời khĩa biểu. Vì vậy, chúng 
tơi chọn kết hợp thuật tốn cặp ghép và thuật tốn tham lam giải 
quyết bài tốn TKB trường chuyên. 
CHƯƠNG 2 – KẾT HỢP THUẬT TỐN CẶP GHÉP VÀ 
THAM LAM GIẢI QUYẾT BÀI TỐN THỜI KHĨA BIỂU 
Từ những yêu cầu bức thiết của trường THPT chuyên Lê 
Quý Đơn nĩi riêng, trường chuyên trên tồn quốc nĩi chung, áp dụng 
các phần mềm TKB hiện cĩ trên thị trường vào việc sắp xếp TKB 
cho các trường chưa được tốt, chúng tơi đã chọn kết hợp thuật tốn 
cặp ghép và thuật tốn tham lam giải quyết bài tốn TKB với hai lý 
do chính sau: thứ nhất, thuật tốn cặp ghép dùng để thỏa mãn ràng 
buộc của từng giáo viên; Thứ hai, thuật tốn tham lam dùng để chọn 
các cặp giáo viên ở bước xếp thơ TKB đầu tiên. 
Trong chương này chúng ta trình bày cơ sở lý thuyết của thuật tốn 
cặp ghép và thuật tốn tham lam, giải pháp kết hợp của hai thuật tốn 
này vào việc giải quyết bài tốn thời khĩa biểu trường chuyên. 
2.1. THUẬT TỐN CẶP GHÉP 
 2.1.1. Bài tốn phân cơng 
 2.1.2. Phân tích bài tốn 
 2.1.3. Thuật tốn 
16 
 2.1.3.1. Các khái niệm 
- Đường pha (Alternating Path) 
- Một đường mở (Augmenting Path) 
 2.1.3.2. Thuật tốn Hungari (cặp ghép) 
Bước 1: Khởi tạo: 
Một bộ ghép M := Ø 
Bước 2: Với mọi đỉnh x*∈X, ta tìm cách ghép x* như sau: 
Bắt đầu từ đỉnh x* chưa ghép, thử tìm đường mở bắt đầu ở x* bằng 
thuật tốn tìm kiếm trên đồ thị (BFS hoặc DFS - thơng thường nên 
dùng BFS để tìm đường qua ít cạnh nhất) cĩ hai khả năng xảy ra: 
- Hoặc tìm được đường mở thì dọc theo đường mở, ta loại bỏ 
những cạnh đã ghép khỏi M và thêm vào M những cạnh chưa 
ghép, ta được một bộ ghép mới nhiều hơn bộ ghép cũ 1 cạnh 
và đỉnh x* trở thành đã ghép. 
- Hoặc khơng tìm được đường mở thì do ta sử dụng thuật tốn 
tìm kiếm trên đồ thị nên cĩ thể xác định được hai tập: 
o VisitedX = {Tập những X_đỉnh cĩ thể đến được từ x* 
bằng một đường pha} 
o VisitedY = {Tập những Y_đỉnh cĩ thể đến được từ x* 
bằng một đường pha} 
Gọi ∆ là trọng số nhỏ nhất của các cạnh nối giữa một đỉnh thuộc 
VisitedX với một đỉnh khơng thuộc VisitedY. Dễ thấy ∆ > 0 bởi nếu 
∆ = 0 thì tồn tại một 0_cạnh (x, y) với x∈VisitedX và y∉VisitedY. 
Vì x* đến được x bằng một đường pha và (x, y) là một 0_cạnh nên 
x* cũng đến được y bằng một đường pha, dẫn tới y ∈ VisitedY, điều 
này vơ lý. 
17 
Biến đổi đồ thị G như sau: Với ∀ x ∈ VisitedX, trừ ∆ vào trọng số 
những cạnh liên thuộc với x, Với ∀ y ∈ VisitedY, cộng ∆ vào trọng 
số những cạnh liên thuộc với y. 
Lặp lại thủ tục tìm kiếm trên đồ thị thử tìm đường mở xuất phát ở x* 
cho tới khi tìm ra đường mở. 
Bước 3: Sau bước 2 thì mọi X_đỉnh đều được ghép, in kết quả về bộ 
ghép tìm được. 
Mơ hình cài đặt của thuật tốn Hungari cĩ thể viết như sau: 
; 
for (x*∈ X) do 
begin 
repeat 
; 
if then <Biến đổi đồ 
thị G: Chọn ∆ := …>; 
until ; 
<Dọc theo đường mở, loại bỏ những cạnh đã ghép khỏi 
M và thêm vào M những cạnh chưa ghép>; 
end; 
;[4] 
 2.1.3.3. Cài đặt thuật tốn 
- Phương pháp đối ngẫu Kuhn-Munkres 
- Sơ đồ cài đặt phương pháp Kuhn-Munkres 
 2.1.3.4. Biểu diễn bộ ghép 
 2.1.3.5. Tìm đường mở 
2.2. THUẬT TỐN THAM LAM 
 2.2.1. Khái niệm 
18 
 2.2.2. Thuật tốn 
 2.2.2.1. Phương pháp 
 2.2.2.2. Cấu trúc tổng quát của thuật tốn 
Thamlam(C:tập hợp các ứng cử viên) 
// hàm trả về giải pháp tối ưu, gồm các ứng cử viên 
Begin 
S = Ø //S là giải pháp tối ưu 
While ( C ≠ Ø và S chưa là giải pháp) do 
X = chọn( C) // chọn x từ tập c theo tiêu chí của hàm chọn 
C = C – {x} 
If (SU {x} cĩ triển vọng là giải pháp) then S:=SU {x} 
Endif 
Endwhile 
if (S là lời giải) then return S 
 else return 0 
endif 
end 4 [1] 
 2.2.2.3. Ví dụ áp dụng[1] 
 2.2.2.4. Tính chất của chiến lược tham lam [1] 
2.3. GIẢI PHÁP TỔNG THỂ CHO BÀI TỐN TKB 
Thuật tốn cặp ghép đĩng vai trị quan trọng trong quá trình giải 
quyết bài tốn TKB trường chuyên. Vì vậy, trước tiên chúng ta cần 
cải tiến thuật tốn cặp ghép. 
 2.3.1. Cải tiến thuật tốn cặp ghép 
 2.3.2. Đánh giá độ phức tạp 
19 
 2.3.3. Giải pháp kết hợp 
Bài tốn thời khĩa biểu cĩ thể được định nghĩa là một bài tốn 
tìm kiếm chuỗi tối ưu để thực hiện một tập các hoạt động chịu tác 
động của một tập các ràng buộc cần phải được thỏa mãn. Người làm 
nhiệm vụ chia thời khĩa biểu thường cố gắng thử đến mức tối đa sự 
sử dụng các cá thể, máy mĩc và tối thiểu thời gian địi hỏi để hồn 
thành tồn bộ quá trình nhằm sắp xếp lịch. Vì thế bài tốn thời thĩa 
biểu là một vấn đề rất khĩ để giải quyết. Hiện nay cĩ nhiều khả năng 
để phát triển các kỹ thuật hiện đại để giải quyết bài tốn này. Những 
kỹ thuật đĩ bao gồm: các tiếp cận Trí tuệ nhân tạo như hệ thống tri 
thức cơ sở (knowledge-based systems), bài tốn thoả mãn ràng buộc, 
hệ chuyên gia, mạng Nơron và các tiếp cận của các Nghiên cứu hoạt 
động: lập trình tính tốn, quy hoạch động, tìm kiếm nhánh và đường 
biên, kỹ thuật mơ phỏng, tìm kiếm Tabu và phương pháp nút cổ chai. 
Ở đây chúng tơi chọn kết hợp thuật tốn cặp ghép và thuật tốn tham 
lam nhằm giải quyết bài tốn thời khĩa biểu trường chuyên với bộ dữ 
liệu thực của Trường THPT chuyên Lê Quý Đơn làm cơ sở để giải 
quyết bài tốn thời khĩa biểu. 
- Trong khi giải quyết bài tốn thời khĩa biểu trường chuyên cần 
chú ý đến giải pháp kết hợp thuật tốn cặp ghép và tham lam 
để giải quyết tùy theo từng trường hợp cụ thể mà cĩ thể sử 
dụng thuật tốn tham lam hay kết hợp tính tham lam trong khi 
dùng thuật tốn cặp ghép. 
- Bước đầu ta chọn những cặp ghép gồm các giáo viên cĩ cùng 
chung số tiết là lớn nhất trong một buổi dạy để ghép lại với 
nhau trước theo từng cặp cụ thể. Nhằm đưa các cặp ghép này 
20 
vào cho việc chia thời khĩa biểu trước, nhằm tạo được sự ưu 
tiên số một cho các cặp ghép này. 
- Bước tiếp theo ta chọn các giáo viên cĩ số tiết dạy ít dần tạo 
nên cặp ghép đồng thời ta sử dụng thuật tốn tham lam để quét 
tất cả các giáo viên cĩ số tiết dạy đơn trên một lớp trong từng 
buổi cụ thể để tạo nên giải pháp tốt hơn. 
- Tại bước này ta sử dụng thuật tốn cặp ghép cùng với tham lam 
để tạo nên việc tinh chỉnh tốt dần, tức làm mịn dần. 
- Sau cùng ta chọn tất cả số tiết cịn lại của từng giáo viên cụ thể 
để tạo nên cặp ghép tốt hơn, đồng thời từ đĩ ta đưa ra được kết 
quả đầu ra tương đối tốt hơn. 
- Việc giải quyết bài tốn thời khĩa biểu trường chuyên là nhu 
cầu cần thiết nhất hiện nay, tuy nhiên chúng ta cần vận dụng 
các thuật tốn đã nêu ở trên một cách thuần thục nhất. Cũng 
như kết hợp triệt để thuật tốn cặp ghép và tham lam thì mới cĩ 
thể cho ra kết quả tốt hơn từ các tập ứng viên đã chọn. Đầu vào 
là danh sách của giáo viên theo tổ bộ mơn, số tiết thực dạy theo 
từng buổi của giáo viên đĩ. Sau khi đưa vào xử lý bởi sự kết 
hợp của hai thuật tốn trên thì phải cho ra kết quả đầu ra tốt 
hơn kết quả hiện nay đang cĩ. 
Xuất phát từ những ý tưởng trên, chúng tơi đã chọn sự kết hợp thuật 
tốn cặp ghép và tham lam nhằm tìm ra giải pháp tốt hơn cho việc 
giải quyết bài tốn thời khĩa biểu trường chuyên. Với bộ dữ liệu của 
trường THPT chuyên Lê Quý Đơn làm dữ liệu cơ sở. 
2.4. TỔNG KẾT CHƯƠNG 2 
Trong chương này, chúng tơi đã trình bày được cơ sở lý thuyết 
cũng như các giải pháp kết hợp của thuật tốn cặp ghép và tham lam 
21 
với những ứng dụng cụ thể. Với các giải pháp kết hợp chúng tơi đã 
cải tiến thuật tốn cặp ghép nhằm giải quyết tốt hơn bài tốn thời 
khĩa biểu trường chuyên. Nội dung chính của chương này thể hiện 
đầy đủ các yêu cầu, giải pháp, tính đúng đắng khi vận dụng thuật 
tốn cặp ghép và thuật tốn tham lam. 
CHƯƠNG 3 – XÂY DỰNG CHƯƠNG TRÌNH VÀ 
THỬ NGHIỆM 
Nội dung chính của chương này gồm cĩ ba phần chính: thiết 
kế chi tiết, thử nghiệm và đánh giá kết quả, các giải pháp và định 
hướng của phần mềm thời khĩa biểu trường chuyên. 
3.1. THIẾT KẾ CHI TIẾT 
Bài tốn thời khĩa biểu trường chuyên, cần được kết hợp 
chặt chẽ với khung chương trình đào tạo chi tiết được nhà trường 
thiết kế dựa trên khung chương trình chuẩn của Bộ giáo dục và Đào 
tạo, nhằm triển khai vào thực tế cho nhà trường. Vì vậy, tại mục này 
chúng ta nên biết sơ lược về chương trình quản lý khung đào tạo 
trường chuyên. 
 3.1.1. Chương trình quản lý khung đào tạo 
 3.1.2. Giải pháp chính cho bài tốn thời khĩa biểu trường chuyên 
Trường THPT chuyên cĩ những đặc thù riêng biệt và rất 
khác so với các trường THPT trên tồn quốc. Vì vậy, để giải quyết 
bài tốn thời khĩa biểu cho các nhà trường này cần phải cĩ mơ hình 
và giải pháp riêng. 
22 
 3.1.3. Giải quyết vấn đề lớp ghép Anh – Pháp 
 3.1.4. Phân cơng giáo viên giảng dạy cho các lớp 
 3.1.5. Kết hợp thuật tốn cặp ghép và tham lam trong bài 
tốn TKB 
Trong khi giải quyết bài tốn TKB trường chuyên chúng tơi dùng 
thuật tốn cặp ghép để chọn các giáo viên cĩ tổng số tiết dạy cho các 
lớp trên buổi và trên tuần là nhiều nhất. Đồng thời dùng thuật tốn 
tham lam để chọn những giáo viên cịn lại để cuối cùng cho ra được 
một TKB thơ. 
 3.1.5.1. Thuật tốn cặp ghép 
Từ bảng phân cơng giảng dạy ta lọc những giáo viên cĩ tổng số tiết 
dạy cho các lớp và tổng số tiết dạy trên một buổi là lớn nhất, đồng 
thời chúng ta kiểm tra các ràng buộc nếu thỏa mãn ta dùng thuật tốn 
cặp ghép chia TKB cho những giáo viên này. 
 3.1.5.2. Xây dựng bộ ghép đầy đủ 
Áp dụng thuật tốn cặp ghép để chọn ra các cặp giáo viên thỏa mãn 
các yêu cầu ràng buộc của bài tốn TKB nhằm xây dựng được bộ 
ghép đầy đủ cho những giáo viên này được mơ tả qua hình 3.9. 
 3.1.5.3. Thuật tốn tham lam 
 3.1.6.Dữ liệu chính bài tốn thời khĩa biểu trường chuyên 
Bao gồm các dữ liệu tham chiếu quan trọng dùng làm cơ sở chính 
trong mơ hình bài tốn Thời khĩa biểu. Nhĩm này bao gồm 4 đối 
tượng chính là Lớp học, Giáo viên, Phịng học và Mơn học. 
3.1.6.1. Lớp học 
23 
3.1.6.2. Giáo viên 
3.1.6.3. Phịng học 
3.1.6.4. Mơn học 
3.1.6.5. Dữ liệu kế hoạch giảng dạy 
3.2. THỬ NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ 
Phần mềm xếp TKB trường chuyên với nhiều tính năng tính năng 
đột phá theo hướng tối ưu hĩa thời khĩa biểu, nhằm giải quyết bài 
tốn thời khĩa biểu trường THPT chuyên cũng như hệ thống trường 
chuyên trên tồn quốc. Kết hợp chặt chẽ thuật tốn cặp ghép và thuật 
tốn tham lam đã giúp cho việc giải quyết tốt hơn bài tốn thời khĩa 
biểu trường chuyên, với những tính năng nổi trội được thử nghiệm 
qua thực tế và cho ra kết quả khả quan. Sau đây là mơ tả một số tính 
năng chính quan trọng nhất của phần mềm TKB liên quan đến vấn đề 
quan trọng nhất của bài tốn xếp thời khĩa biểu là mơ phỏng tư duy 
xếp, đánh giá và tối ưu hĩa điều chỉnh thời khĩa biểu. 
 3.2.1. Xếp tự động hồn tồn thời khĩa biểu 
 3.2.2. Tinh chỉnh dữ liệu của các giáo viên tham gia 
 3.2.3. Ba chức năng tinh chỉnh xếp thời khĩa biểu trường 
chuyên 
3.3. TỔNG KẾT CHƯƠNG 3 
Trong chương này, chúng tơi đã phân tích chi tiết bài tốn TKB 
trường chuyên; thể hiện được giải pháp chính của bài tốn, giải quyết 
vấn đề lớp ghép, ứng dụng thuật tốn cặp ghép và thuật tốn tham 
lam trong khi giải quyết bài tốn. Sử dụng bộ dữ liệu thực của trường 
24 
THPT chuyên Lê Quý Đơn làm dữ liệu cơ sở để minh họa cho bài 
tốn, đồng thời đưa ra được một số chức năng tinh chỉnh thủ cơng và 
đã giải quyết tốt hơn bài tốn TKB trường chuyên. 
25 
KẾT LUẬN VÀ KIẾN NGHỊ 
1. KẾT QUẢ ĐẠT ĐƯỢC 
Kết hợp thuật tốn cặp ghép và thuật tốn tham lam vào việc giải 
quyết bài tốn thời khĩa biểu trường chuyên là khâu đột phá ban đầu 
cho việc Tin học hĩa tồn bộ việc xếp thời khĩa biểu cũng như các 
cơng việc quản lý khác của Trường THPT Chuyên Lê Quý Đơn, hệ 
thống trường chuyên trên tồn quốc; cho ra được một sản phẩm xếp 
thời khĩa biểu tương đối tốt với nhiều tính năng nổi trội: 
Việc cập nhật, xử lý dữ liệu nhanh với tốc độ gần như tức thời. 
Thơng tin được thể hiện trên màn hình một cách hợp lý, cho phép 
người dùng quan sát một khơng gian rộng lớn của thời khĩa biểu, 
trên màn hình hiện rõ thơng tin trong 1 buổi học của một lớp học cĩ 
liên kết với thời khĩa biểu của giáo viên và phịng học tương ứng. 
Chương trình đã xử lý được các kỹ thuật đặc thù của thời khĩa 
biểu như ghép lớp, tách lớp. Phần mềm xếp tự động hồn tồn, dữ 
liệu đáp ứng hầu hết các ràng buộc thơng thường của thời khĩa biểu. 
Phần mềm TKB trường chuyên đưa ra được nhiều cơng cụ tinh 
chỉnh hợp lý như xếp tay, chuyển tiết, chuyển phịng học, chuyển 
giáo viên, gợi ý xếp, tìm kiếm thơng tin tối ưu, xĩa, ... Các cơng cụ 
này hồn tồn được thực hiện bằng các thao tác như chuột, bàn phím 
rất đơn giản, thuận tiện với người dùng. 
Phần mềm cĩ thể kết nối với các module khác của hệ thống như 
các phần mềm Tuyển Sinh, Quản lý Chương trình Đào tạo, Quản lý 
Giáo viên, Quản lý học tập của học sinh, quản lý thư viện. 
Tồn bộ các module của chương trình được viết bằng ngơn ngữ 
C# trên nền hệ điều hành Windows 2003/XP/Windown7 cĩ giao diện 
26 
thân thiện với người dùng và tồn bộ hệ thống thực đơn, giao diện là 
Tiếng Việt. 
2. HƯỚNG PHÁT TRIỂN CỦA LUẬN VĂN 
Sau phần nghiên cứu trong luận văn, chúng tơi sẽ đi vào nghiên 
cứu, tìm hiểu giải pháp tốt hơn, nhằm tối ưu hĩa bài tốn TKB 
trường chuyên, đồng thời chia sẽ ứng dụng trên mạng LAN; dữ liệu 
TKB sẽ được tập trung lưu trữ và quản lý thống nhất trên máy chủ 
trong hệ thống mạng LAN. Các máy trạm được kết nối trực tuyến 
với dữ liệu và hệ thống cho phép nhiều người dùng cùng một lúc truy 
nhập và làm việc với dữ liệu thời khĩa biểu sẽ làm tăng chức năng hỗ 
trợ xếp thời khĩa biểu cho nhiều người dùng. 
Mơ hình TKB tích hợp hồn tồn trên Web; phần dữ liệu chính của 
chương trình tích hợp với Chương trình đào tạo được cài đặt trên 
mạng Intranet/Internet cho phép tồn bộ hệ thống được kết nối với 
các máy tính trên phạm vi lớn. Dữ liệu xếp thời khĩa biểu được kết 
nối với Server và cho phép nhiều người dùng cùng thao tác và điều 
khiển dữ liệu. TKB được tích hợp với Web, phần mềm Server cho 
phép mở rộng khơng hạn chế các chức năng, dịch vụ quan trọng khác 
của hệ thống quản lý thời khĩa biểu như dịch vụ truy nhập TKB từ 
xa, dịch vụ nhắn tin thơng qua email, hệ thống nhắc dạy giáo viên 
thơng qua điện thoại di động, ... 
Tĩm lại, phần mềm TKB trường chuyên chỉ là bước khởi đầu 
của việc triển khai ứng dụng phần mềm trong cơng việc hỗ trợ, xếp 
và quản lý thời khĩa biểu trong các trường THPT chuyên cũng như 
hệ thống trường chuyên trong đại học. 
            Các file đính kèm theo tài liệu này:
 tomtat_56_6221.pdf tomtat_56_6221.pdf