排課
排課
排課,即課程編排,是指學校為了正常進行教學工作,對班級、教師、課程及學校教學資源合理安排,制定各種各樣課程表的行為。排課是一件很複雜的工作,其中必須要解決的問題是課程衝突的問題,否則教學工作無法正常開展。
最難解決的問題是課程編排的合理性,因為對不同學校,不同的教師,認為“合理”的定義是不一樣的,一個理想的課程表應該是能滿足學校、教師的大部分“合理”的要求。
排課演演算法是一個複雜程度相當高的演演算法,窮舉是行不通的。不同的班級,不同的教師的課程縱橫交錯,不可能對每一種組合一一窮舉。一間不到三十個班的學校,其課程組合的數量級常常超過整個宇宙質子數的總和。
但在這麼多的課程組合中,找出“相對合理”的課程組合,滿足學校、教師、學生的要求是可行的。
鑒於排課的複雜性,排課軟體必須做到如下三點:
1、使用簡單。排課雖然是一個“世界難題”,但有一個清晰的流程:①輸入學校教師、班級、開設課程等資料——②分配課程——③設定條件——④編排、調整課程——⑤列印及輸出各式課程表。一個成功的排課軟體要在每環節都應該排課工作者清晰、有效、足夠的幫助。2、有完善的條件設置功能。我們在排課之前,先得跟電腦“對話”,讓電腦知道,我們認為什麼樣的課程表才是合理的。所要條件設置不但要能大到全局或批量設置,也能小到某一節課的設置。這樣才能跟電腦“說清楚”。3、百分之百的排課通過率。“行百里者半於九十”對排課工作不太合適,有時即使你編排了99%的課,但最後的1%可能要花的時間更多。所以一個成功的排課軟體,在設置條件不衝突的情況下,要保證100%的排課通過率。