Độ phức tạp của bài toánXếp Thời khóa biểu • Bài toán xếp Thời khóa biểu là một bài toán rất khó, tất cả mọi người đều biết điều đó, không chỉ phức tạp ở các ràng buộc giáo viên chồng ch
Trang 1HỘI THẢO Các tính năng mới nhất của phần
Trang 2Nội dung
cho các nhà trường phổ thông
Giải lao, tiệc trà
TKB 8.0
Trang 3Vài nét về School@net
Công ty School@net thành lập 12-1998, là công
ty phần mềm duy nhất chuyên thiết kế giải pháp và phần mềm cho Học sinh và nhà trường.
Hơn 50 sản phẩm phần mềm đóng gói và giải pháp được áp dụng tại rất nhiều nhà trường
và gia đình trên phạm vi cả nước.
Web site: http://www.vnschool.net
Bùi Việt Hà, 0903454818
habv@vnschool.net
Trang 4Sản phẩm công ty School@net
CDROM phần mềm
Giáo dục, Giải trí
50 CD
Phần mềm quản lý nhà trường PT
Phần mềm quản lý các trường Đại học, Cao đẳng
Phần mềm Công cụ
hỗ trợ Học và Dạy
Trang 5Mô hình hệ thống Quản lý Đào tạo Nhà trường
Quản lý & điều hành giảng dạy
Quản lý điểm học sinh
Thi Tốt nghiệp
Đăng bộ học sinh
Trang 6Giới thiệu phần mềm TKB 8.0
Trang 7Lịch sử 20 năm của TKB
- TKB phiên bản đầu tiên 1.5 ra đời năm 1989.
- Phiên bản 2.1 ra đời năm 1990.
- Các phiên bản thương mại ra đời cùng với công ty School@net:
Trang 8Lịch sử 20 năm của TKB
Hiện tại phiên bản TKB 7.5 đang được sử dụng tại trên 1500
trường phổ thông (THCS và THPT) trên toàn quốc
TKB trở thành phần mềm chính thức được khuyến cáo sử dụng tại nhiều Sở Giáo dục & Đào tạo của một số tỉnh thành
TKB đã đạt nhiều lần IT CUP của hội Tin học Việt nam và
BITCUP của PCWORLD Việt Nam
Trang 9Độ phức tạp của bài toán
Xếp Thời khóa biểu
• Bài toán xếp Thời khóa biểu là một bài toán rất khó, tất cả mọi người đều biết điều đó, không chỉ phức tạp ở các ràng buộc giáo viên chồng chéo lên nhau.
• Mô hình TKB của các nhà trường phổ thông rất đa dạng với những yêu cầu đặc biệt khác nhau: học 1 buổi, 2 buổi, học thêm, tự chọn, tách lớp, ghép lớp, chào cờ đa dạng,
• Chương trình học đa dạng trong 1 nhà trường: cơ bản,
nâng cao, lớp chọn, lớp chuyên,
• Phòng học bộ môn và đa năng đa dạng và khác kiểu nhau.
Trang 10Quan ®iÓm x©y dùng
ch ¬ng tr×nh
Khi x©y dùng ch ¬ng tr×nh TKB quan ®iÓm
chÝnh cña chóng t«i lµ:
1 TKB ph¶i lµ mét phÇn mÒm chuyªn nghiÖp
2 X©y dùng c¸c c«ng cô hç trî gióp ng êi lËp
thêi khãa biÓu phæ th«ng
Trang 11Các vấn đề chính của mô hình bài
toán xếp TKB
• Bài toán thiết kế mô hình dữ liệu phù hợp với thực tế
• Các công cụ hỗ trợ xếp tay, bán tự động và tự động hoàn
toàn
• Các giao diện tương tác cho phép quan sát, tư duy, tính toán trực tiếp với phần mềm
• Thuật toán xếp tự động và tối ưu hóa dữ liệu thời khóa biểu
• In ấn, báo cáo, thống kê dữ liệu
Trang 12Việc chuyển tư duy xếp Thời khóa biểu bằng tay sang
máy tính có khó hay không?
Vừa khó, vừa dễ
- Công cụ: thước, tẩy, bút chì,
mảnh gỗ, giấy trắng to
- Không hạn chế tầm nhìn và
ghi chép trên giấy
- Luôn phải đề phòng khỏi bị
xếp trùng giờ, trùng tiết
- Phải tư duy liền mạch nếu
không quên ngay
- Kinh nghiệm nhiều năm
- Vừa làm vừa chơi, lưu giữ liệu trên máy, có thể xếp bất cứ lúc nào
- Có thể mô phỏng tuy duy xếp của con người
Trang 13Tư duy xếp TKB bằng máy tính
to Xếp tay
Xếp máy
Trang 14Cách giải quyết vấn đề
4 mức giải quyết vấn đề của bài
toán Thời khóa biểu
Dễ, hầu hết các phần mềm đều có thể làm được
Khó, đòi hỏi một số chức năng và công cụ đặc biệt
Rất khó, hầu như không có phần mềm nào làm được điều này
Xếp đại trà khoảng 70-98%
Trang 15Phần mềmTKB
Các phiên bản TKB 2.1, 3.0, 3.5 đã làm được Bản 4.0 nâng cấp đáng kể chức năng này.
Các phiên bản TKB 4.X đã có một số chức năng phục vụ chức năng này Bản 6.0 đã giải quyết trọn vẹn vấn đề này.
Đây là hướng đi chính của phần mềm TKB hiện tại và trong tương lai Những phát triển đầu tiên của hướng này từ TKB 6.5.
Trang 16TKB 8.0:
PhÇn mÒm chuyªn nghiÖp
Trang 17Các tính năng TKB 8.0
1. Hỗ trợ hoàn toàn Unicode
2. Hỗ trợ 300 lớp học sáng, 300 lớp chiều, 300 phòng học bộ
môn và đa năng, 500 giáo viên
3. Hỗ trợ 10 địa điểm lớp nhà trường
4. 17 tính chất sư phạm môn học
5. Hơn 20 ràng buộc và thuộc tính giáo viên
6. 5 màn hình xem và tinh chỉnh dữ liệu chính: Main Loop,
Show All, Browse Teacher, Triple View và 2b View
Trang 18Các tính năng TKB 8.0
động thời khóa biểu Các công cụ này biến phần
mềm thành một công cụ lao động mới của giáo viên xếp thời khóa biểu.
hạn lần.
mới là công cụ hỗ trợ đắc lực cho BGH quản lý thời khóa biểu.
Trang 19Các tính năng TKB 8.0
11. Tự động phân tích và xếp 100% thời khóa biểu áp dụng cho
tất cả các mô hình
12. 3 lệnh mô phỏng tư duy xếp TKB chính là CX (xếp bằng
được 1 tiết), Push Out (giải phóng 1 ô) và Move To (Di
chuyển tiết trên TKB
13. 5 thuật toán tinh chính dữ liệu chính: CX, FPR, DPR,
DPR-1e Đặc biệt thuật toán tinh chỉnh tối ưu
OpCX/OpDPR/OpFPR mới đưa vào từ TKB 7.5
14. Cho phép lưu trữ và in ấn 5 phương án TKB trong phần
mềm
15. Dữ liệu nhỏ, gọn dễ dàng vận chuyển và sao chép Cài đặt
mật khẩu bảo vệ dữ liệu
Trang 20Các tính năng TKB 8.0
16 Cho phép in trên 10 dạng TKB khác nhau với rất
nhiều các lựa chọn khác nhau để in trên ô TKB Cho phép in cả TKB dự phòng.
17 Dữ liệu TKB có thể đưa ra Excel với rất nhiều khuôn
dạng và báo cáo thống kê khác nhau.
18 Đưa vào hệ số môn học cho phép tính tải dạy giáo
viên chính xác hơn.
19 Lệnh đưa dữ liệu ra HTML ngay lập tức có thể tạo
thành trang thông tin TKB trên Website nhà trường.
Trang 21Các tính năng TKB 8.0
20. Chức năng tiện ích PCGD cho phép thay đổi phân công
chuyên môn của giáo viên ngay trong năm học mà
không phải nhập và xếp lại thời khóa biểu.
21. Hỗ trợ hoàn toàn mô hình THPT phân ban với khái niệm
Chương trình đào tạo.
22. Hỗ trợ hoàn toàn mô hình phòng học bộ môn và đa năng
23. Lần đầu tiên hỗ trợ mô hình các lớp học 2b.
24. Một loạt các tính năng hỗ trợ đánh giá GV trong quá
trình tinh chỉnh dữ liệu được đưa vào phần mềm.
25. Các chức năng tối ưu hóa TKB giáo viên (TOP) mới
được đưa vào từ TKB 7.5.
Trang 22Giới thiệu nhanh giao diện
phần mềm TKB 8.0
Trang 23của tư duy xếp TKB: CX,
Push Out, Move To.
5 Tinh chỉnh dữ liệu cho
phép quan sát tất cả các
giáo viên trung gian.
6 Thuật toán tinh chỉnh vị trí
cố định FPR.
7 Tự động đánh giá giáo viên của
các lệnh tinh chỉnh dữ liệu.
8 Đánh giá tiết học trên thời khóa
biểu và chức năng chuyển tiết tối ưu.
9 Đánh giá thời khóa biểu giáo viên
theo 12 tiêu chí quan trọng.
10 Thuật toán tinh chỉnh tối ưu
OpCX/OpDPR/OpFPR.
11 Đánh giá thời khóa biểu giáo viên
theo buổi học.
12 Các công cụ tối ưu hóa thời khóa
biểu giáo viên (TOP).
Trang 241 Hỗ trợ hoàn toàn Unicode
• Phiên bản mới nhất TKB 8.0 đã hỗ trợ hoàn toàn cho tất cả các bảng mã tiếng Việt, trong đó có Unicode
• Dữ liệu TKB từ các phiên bản trước sẽ được tự động nâng cấp lên bảng mã Unicode trong TKB 8.0
• Dễ dàng chuyển đổi dữ liệu sang các dạng văn bản khác như Excel hay HTML
Trang 25• Mô hình lớp học 1 buổi, 2 buổi hay học cả ngày.
• Mô hình phòng học bộ môn và phòng học đa năng
• Hỗ trợ cho trường Tiểu học, THCS, THPT
Trang 263 Xếp tự động 100% TKB
Xếp tự động 100% là tính năng khó nhất và quan trọng nhất của
một phần mềm xếp thời khóa biểu
Phần mềm TKB lần đầu tiên đưa ra chức năng xếp 100% thời
khóa biểu năm 2004 (bản 4.8), sau đó đã nâng cấp liên tục cho đến bản TKB 6.0 thì mở rộng lệnh này cho toàn bộ mô hình TKB với phòng học bộ môn và đa năng
Trang 27Lệnh xếp toàn bộ (SF)
Chức năng chính của lệnh: tự động phân tích bộ dữ liệu hiện có xem có khả năng xếp tự động 100% hay không
Nếu Không thì thông báo nguyên nhân.
Nếu Có thì thực hiện việc xếp tự động
100%
Trang 28SF- Start and Finish
Lệnh SF chỉ phát huy tác dụng khi đã nhập xong toàn bộ dữ
liệu ban đầu và đã chuẩn bị xong các công việc cần thiết như: xếp tiết Sinh hoạt, Chào cờ, tạo khuôn lớp học, xếp trước một số môn hoặc giáo viên cần ưu tiên
Lệnh SF sẽ thực hiện các công việc sau:
1. Tự động phân tích, kiểm tra các ràng buộc vật lý và logic
của dữ liệu và ràng buộc Thời khóa biểu, kiểm tra khả
năng có thể xếp được 100% công việc hay không Nếu
không được thì thông báo các nguyên nhân tương ứng
2. Tiến hành một thuật toán đặc biệt xếp hết 100% các tiết có
trong bảng PCGD của nhà trường
3. Tiến hành điều chỉnh, “tối ưu” hóa lại các ràng buộc môn
học hay giáo viên có thể bị phá vỡ
4. Kết thúc công việc và thông báo lệnh thành công
Trang 29SF- Start and Finish
Lệnh Xếp toàn bộ (SF) được thực
hiện qua 5 bước:
1 Kiểm tra điều kiện thực hiện
Xếp tự động phần còn lại bỏ qua ràng buộc giáo viên
Xếp nốt phần còn lại bỏ qua tất cả các ràng buộc (xếp hết)
Sắp xếp, tinh chỉnh lại theo ràng
Trang 304 3 công cụ mô phỏng tư duy xếp: CX, Push Out, Move To
CX: xếp 1 tiết vào thời khóa biểu
Push Out: giải phóng 1 ô thời khóa biểu
Move To: dịch chuyển 1 tiết trên thời khóa biểu sang vị trí khác
Trang 31Các công cụ chính
Lệnh Giải phóng 1 ô Lệnh Xếp 1 tiết CX Lệnh dịch chuyển
Kéo thả trên TKB
Cả 3 lệnh trên đều có thể áp dụng 1 trong 5 thuật toán chính:
CX, FPR, DPR, DPR-1e, OpCX/OpDPR
Trang 325 Tinh chỉnh dữ liệu cho phép
quan sát các GV trung gian
Nguyên tắc chính của chức năng tinh chỉnh dữ liệu là phải thay
đổi một số giáo viên trung gian: nguyên tắc bù trừ (hay bảo toàn)
Phần mềm TKB cho phép quan sát tất cả các thay đổi của các
giáo viên trung gian Quyết định cuối cùng bao giờ cũng
thuộc về người xếp thời khóa biểu
Trang 33“dây giáo viên” trong lệnh tinh
chỉnh dữ liệu TKB
Trong phần mềm TKB, toàn bộ các lệnh tinh chỉnh dữ liệu thời khóa biểu cho
phép người xếp quan sát các “dây” giáo viên bị ảnh hưởng khi tinh chỉnh Như
vậy người dùng sẽ kiểm soát được toàn
bộ quá trình thay đổi dữ liệu khi tinh
chỉnh thời khóa biểu.
Trang 356 Thuật toán tinh chỉnh vị
trí cố định FPR
Để thực hiện các mô phỏng tư duy của phần mềm cần những thuật toán lõi tinh chỉnh dữ liệu Trong số các thuật toán cổ điển, FPR (t/t thay đổi vị trí cố định) có rất nhiều ưu điểm vì t/t này chỉ có thể làm ảnh hưởng đến nhiều nhất 1 GV trung gian.
Thuật toán FPR được thiết kế từ bản TKB 4.0 và được nâng cấp hoàn toàn trong TKB 6.0 để hỗ trợ cho mô hình phòng học bộ môn và đa năng.
Trong phần mềm TKB sử dụng 3 thuật toán chính:
FPR, CX và DPR.
Trang 36Thuật toán FPR
A dạy tiết 1 thứ 7 muốn chuyển tiết đến tiết 5 thứ 4.
Tư duy điều chỉnh?
A luôn hưởng lợi.
Trang 37Thuật toán CX
TKB lớp học 10A
Các giáo viên trong một lớp đổi chỗ cho nhau,
một giáo viên có lợi (gv đầu tiên), các giáo
viên còn lại phải “hy sinh” để nhận một TKB
có thể xấu đi
Giả sử giáo viên dạy tiết 1 thứ 5 muốn chuyển tiết đến tiết 2 thứ 2.
Tư duy điều chỉnh?
Trang 38Thuật toán DPR, DPR-1e
TKB giáo viên A
TKB giáo viên B
TKB giáo viên C
TKB giáo viên D TKB giáo viên E
Trang 39Phân tích 3 thuật toán chính
chuyển, hoán đổi 2
viên trong phạm vi
Dễ dàng thực hiện Nhược điểm: có nhiều GV bị ảnh hưởng
Trang 407 Tự động đánh giá GV thay đổi
dữ liệu của lệnh tinh chỉnh
Tính năng mới này được đưa vào phần mềm từ bản
TKB 6.5 hỗ trợ cho người xếp quan sát và đánh giá chung kết quả của một thao tác tinh chỉnh dữ liệu.
Trang 41Các tiêu chí đánh giá thay đổi GV
Trang 428 Đánh giá tiết học và chức năng
chuyển tiết tối ưu
Một tính năng mới nổi bật được đưa vào từ bản TKB 7.0 Tính
năng này bao gồm 2 yếu tố:
(a) Đánh giá các tiết học (xem tiết nào tốt, tiết nào xấu trên TKB
giáo viên)
(b) Nếu tiết là Xấu, tìm ra vị trí tối ưu nhất để chuyển tiết này đến
vị trí mới sao cho không bị Xấu nữa Tính năng mới này
được mô tả trong lệnh Các phương án chuyển tiết tối ưu
Trang 438 tiêu chí đánh giá tiết học
Tiết tạo ra tiết trống
Tiết duy nhất trong buổi học
Tiết vi phạm ràng buộc Bận, Nghỉ, Hạn chế
Tiết vi phạm ràng buộc không dạy
Tiết vi phạm ràng buộc nghỉ buổi dạy
Tiết vi phạm ràng buộc không dạy qua trưa
Tiết vi phạm điều kiện thời gian nghỉ giữa buổi
Tiết vi phạm ràng buộc tính chất môn học
Tiết tạo ra tiết trống
Tiết duy nhất trong buổi học
Tiết vi phạm ràng buộc Bận, Nghỉ, Hạn chế
Tiết vi phạm ràng buộc không dạy
Tiết vi phạm ràng buộc nghỉ buổi dạy
Tiết vi phạm ràng buộc không dạy qua trưa
Tiết vi phạm điều kiện thời gian nghỉ giữa buổi
Tiết vi phạm ràng buộc tính chất môn học
Trang 4410 tiêu chí đánh giá chuyển
tiết tối ưu
Không vi phạm ràng buộc Nghỉ, Hạn chế, Bận
Không vi phạm ràng buộc không dạy theo tiết
Không vi phạm ràng buộc nghỉ các ngày cụ thể
Không vi phạm ràng buộc về số tiết dạy max trong ngày Không vi phạm ràng buộc không dạy qua trưa
Không vi phạm ràng buộc dạy qua giờ nghỉ giải lao
Không vi phạm ràng buộc tính chất môn học
Không làm tăng tiết trống
Không làm giảm số buổi nghỉ
Không làm giảm số ngày nghỉ
Không vi phạm ràng buộc Nghỉ, Hạn chế, Bận
Không vi phạm ràng buộc không dạy theo tiết
Không vi phạm ràng buộc nghỉ các ngày cụ thể
Không vi phạm ràng buộc về số tiết dạy max trong ngày Không vi phạm ràng buộc không dạy qua trưa
Không vi phạm ràng buộc dạy qua giờ nghỉ giải lao
Không vi phạm ràng buộc tính chất môn học
Không làm tăng tiết trống
Không làm giảm số buổi nghỉ
Không làm giảm số ngày nghỉ
Trang 45Tiết màu đỏ là tiết XẤU Khi nhấn giữ chuột lên một
tiết Xấu, chúng ta sẽ thấy hiện các ô màu xanh là vị trí tối ưu cần chuyển tiết xấu này đến đó.
Trang 469 Đánh giá GV theo 12 tiêu chí
Đánh giá một TKB giáo viên thế nào là Tốt, Xấu là một câu hỏi
khó và là vấn đề lớn của mọi phần mềm thời khóa biểu
Từ TKB 7.0 đưa vào thêm đánh giá GV theo 12 tiêu chí, khá phù
hợp với thực tế
Trang 47Có dạy qua trưa hay không?
6 tiêu chí đánh giá thỏa mãn ràng buộc TKB
Số lượng các tiết bị phá vỡ ràng buộc Nghỉ, Bận, Hạn chế.
Số buổi vi phạm ràng buộc nghỉ theo tiết học.
Số buổi vi phạm ràng buộc nghỉ buổi học.
Có vi phạm ràng buộc số buổi nghỉ dạy hay không.
Số buổi vi phạm ràng buộc dạy Max trong buổi học.
Có vi phạm ràng buộc số ngày nghỉ dạy hay không.
Trang 4810 Thuật toán tinh chỉnh tối ưu
OpCX/OpDPR/OpFPR
Thuật toán tinh chỉnh OpCX/OpDPR mới được đưa vào từ bản
mới nhất TKB 7.5 tháng 6 năm 2009 Thuật toán OpFPR
được đưa vào từ TKB 8.0
Phát triển đột phá nhất của thuật toán này là đảm bảo tất cả các
giáo viên trung gian đều không bị thay đổi dữ liệu để TKB bị xấu đi Hay nói cách khác: thuật toán đã xử lý được tính tối
ưu của tất cả các giáo viên trung gian
OpCX/OpDPR/OpFPR
OpCX: tối ưu CX
OpDPR: tối ưu DPR
OpFPR: tối ưu FPR
Trang 4911 Đánh giá TKB giáo viên theo
buổi học
Từ TKB 7.5 phần mềm đưa ra thêm 1 đánh giá nữa: đánh giá
từng buổi học của GV Các đánh giá này là cơ sở của các chức năng tối ưu TKB giáo viên trong tương lai
Trang 5010 tiêu chí đánh giá từng buổi dạy
của giáo viên
Có khoảng trống trong buổi học
Vi phạm điều kiện ràng buộc nghỉ buổi học
Dạy qua trưa
Vi phạm tính chất môn học
Chỉ có tiết Sinh Hoạt và HỌP
Dạy quá nhiều tiết
Chỉ có 1 tiết dạy
Dạy quá nhiều môn học chính
Vi phạm điều kiện ràng buộc nghỉ tiết
Phá vỡ cân bằng môn Tự nhiên - Xã hội
Có khoảng trống trong buổi học
Vi phạm điều kiện ràng buộc nghỉ buổi học
Dạy qua trưa
Vi phạm tính chất môn học
Chỉ có tiết Sinh Hoạt và HỌP
Dạy quá nhiều tiết
Chỉ có 1 tiết dạy
Dạy quá nhiều môn học chính
Vi phạm điều kiện ràng buộc nghỉ tiết
Phá vỡ cân bằng môn Tự nhiên - Xã hội
Trang 5112 Các lệnh tối ưu TKB giáo viên
(TOP)
Các lệnh hỗ trợ tối ưu TKB giáo viên mới được đưa vào từ TKB
7.5 (áp dụng cho từng buổi học):
1. Xóa các tiết trống
2. Giải phóng buổi học (dồn buổi, giãn buổi)
3. Tăng 1 tiết trong buổi học (dồn buổi, giãn buổi)
4. Giảm 1 tiết trong buổi học (dồn buổi, giãn buổi)
Trang 52Các lệnh TOP
- Thực hiện trên từng buổi học của giáo viên
- Bao gồm một hay nhiều lệnh tinh chỉnh đơn gộp lại được
thực hiện như một giao dịch (transaction) hoàn chỉnh
- Hoàn toàn dựa trên thuật toán tinh chỉnh tối ưu
OpCX/OpDPR
Trang 53Đóng gói TKB
TKB 8.0 bản chính thức được đóng gói trên 01 CD trong hộp với tài liệu hướng dẫn sử dụng và giấy phép sử dụng kèm theo.Giá bán chính thức cho mỗi nhà trường:
Mua mới: 7.000.000 VNĐ / nhà trường
Nâng cấp: theo bảng giá đã qui định
License được cấp cho từng máy tính
Mỗi nhà trường khi mua sẽ được cấp 02-03 mã đăng ký / 3 máy PC