|
授課時間表編製是一件耗時而艱巨的工作. 如果可以由電腦來處理, 既可節省不少時間, 又減少了教師們的心力消耗, 同時亦避免了編製時產生的錯誤. 近年科技的進步已使微型電腦的價格大幅下降, 本港的各中小學都已經可以得到微型電腦的供應. 應用微型電腦編製授課時間表的硬件問題已經完全解決. 而軟件方面, 編製授課時間表軟件的供應也差不多有十年的歷史。 本文先討論理想的編製時間表軟件應有的功用,然後介紹在香港流行的編製時間表軟件的功能, 再以其中一套軟件為例, 略述使用電腦編製時間表的過程及限制。 每年暑假, 部份中小學老師都被捲入一件繁重而耗時的工作, 就是編製學校下學年度的授課時間表. 這件工作通常動用三至七人, 需時三天至兩星期不等. 視負責者的經驗與授課編排所受限制多少而定。 由於香港的情況特殊, 時間表受了許多不同的限制, 包括浮動班、 輔導班、 文理商分流等, 時間表的編製實在非常的困難, 再加上需要考慮不同的人事因素, 老師們所耗的心力真的不少. 時間表編製完畢後, 更要加上校對, 抄寫或打字, 然後才能分發給老師及學生們。 開學之後, 更要經過一個星期或一個循環週的試用, 才可以肯定沒有出了甚麼錯誤。因此編製時間表所牽涉的人力及物力實在非常之大. 如果可以由電腦來做, 不但可以節省人力物力, 減輕教師的工作負擔, 更可以避免錯誤, 減少開課後更改時間表所引起的混亂。 但是即使用電腦來編製時間表也不是一件容易的事:由於香港的情況特殊, 許多外國的同類軟件都不能在此應用. 而香港的市埸太小, 吸引不到多少發展商為香港的情況而特別設計軟件. 而僅有的少數嘗試, 部份由於對香港教育狀況的不理解, 將問題過份簡化, 亦以失敗告終。 現在的狀況是, 除個別學校使用由老師編寫的軟件外, 比較多學校使用的軟件有兩套: 一為「智達時間表編製軟件」(TITAS), (以下簡稱「智達軟件」),另一為 HKASA (未附中文名稱, 見 Fung, 1991), 兩者均由香港人編製, 後者為一學校行政統整軟件, 除可編製時間表外, 還可處理其他學校事務 , 而前者則專為編製時間表而設. 但可配合一教師代堂系統使用. HKASA 使用學校目約有三十所 (Fung, 1991). 智達時間表編製軟件使用學校目比較多, 大約有一百四十所, 使用者更包括各類型的中小學及專上機構. 為現時香港最流行的時間表編製軟件。 本文先討論理想的電腦編製時間表軟件應有的功效,與及編製此類軟件可用的方法, 然後介紹「智達軟件」所用的方法及效果, 最後, 提出可以改善的地方。
根據我們編製時間表的經驗及用戶的經驗, 我們覺得理想的電腦編製時間表軟件應有下列的功用:
電腦介面 編排工作 輔助工具
理想的時間表編製系統既如上述,但事實上, 由於香港的情況比較特殊, 教師每星期(或循環週) 的節數較多, 編排時比較容易產生相撞的情況(即一教師任教兩班), 加上例如輔導班, 浮動班等的行政措施 , 例如說, 輔導班需要二至三位老師共上一課, 令排課時易於與其他課相撞; 浮動班則由於沒有自己尃用的課室, 排課時要兼顧課室的使用,兩者均令班房, 教師的供應更為緊張; 再加上教師進修假期、教育電視課等, 在在均令排課時增加困難,因此由電腦全自動地排課差不多成為不可能的事。 按「智達軟件」的使用情況來說, 在眾多學校多年使用中, 雖然自動編課成功率差不多都達到百分之九十五以上, 最高的曾達到只餘下二課節未能放進時間表內, 且時間又只需約數分鐘 (見 Lee, 1987), 但可惜從沒有一次是完全由電腦自動編製出時間表的。HKASA 的使用情況亦差不多。這一方面當然是兩者均有未臻完善的地方。另? @方面, 亦可見編課的困難。 編課困難有一個明顯的壞處, 就是編課者因精力有限, 而將所有的精力如果都用來找尋一個可行的答案 . 編出來的時間表的質素便因此不能顧及。 如此產生的後果可能也不少。 除了未能百分之一百自動編課外, 其他方面, 智達軟件及HKASA 亦未能完全達到上述的理想要求。 但由於兩者均為針對本港學校而設計, 而設計者當時又均任職本港中學, 熟悉學校情況, 所以設計出來的軟件均能切合使用者的需要。在輸入方面, 兩者均能使用者感到方便。在自動編課方面, 兩者均達到很高的成功率. 自動編課完畢後, 亦均能提供電腦輔助程序以幫助使用者完成編課工作或調動已完成的時間表。在輸出方面, 兩者均能輸出適合學校使用的各類時間表。此外, 由於兩者的操作, 與日常編製時間表的過程相似, 操作者應不需要太長時間的學習, 便可以開始使用。
智達軟件及HKASA 在設計上有甚多相似的地方。為了較詳細地說明電腦編製時間表的方法, 下面介紹智達系統的設計及工作過程作為例子:
智達系統所用的編課方法 製造時間表軟件的方法約可分為兩類: 一類是應用數學方法, 例如整數編序法 (integer programming)、操作研究 (operational research) (見 French, 1982)、圖形理論 (graph theory, 見 Floyd & Ford, 1991), 分枝及限制方法 (branch and bound method, 見 Tripathy, 1984), 另一類則是應用專家系統(expert system) 的方法 (Martinsons & Kwan, 1993; Monfroglio, 1988)。 大多數同類軟件都是應用於大學方面, 中小學方面的軟件則比較少有。 智達系統的設計, 基本上是一個專家系統。 系統中最重要的部份, 即自動編製部份, 便是收集了各時間表編製專家的編製策略, 加以整理, 然後編入系統內. 智達系統有別於其他專家系統的地方, 就是在編寫語言方面, 其他系統是使用一些高階語言或專家系統殼層(expert shell, 見 Martinsons & Kong, 1993; Monfroglio, 1988), 使用這些方法, 優點是比較容易, 壞處是比較緩慢或是價錢比較昂貴。 智達系統則使用匯編語言 (assembly language), 這種語言是一種低階語言, 比較接近硬件部份, 所以比較快, 但也比較難於使用。 智達系統的基本工作 基本上, 智達系統可以分為下列四大常序(routines) (見 Lee, 1993), 即輸入常序、 編課常序、 輸出常序及輔助常序, 其下再分為副常序(subroutines)及更下一層的次副常序(sub-subroutines)。 由於各常序、副常序的數目不少, 此處不能盡錄。下面只介紹其中較重要者, 其餘從略。
輸入常序
第一層是一些必須遵守的條件, 每一課塊都不會被放進不適合的洞內。 第二層要考慮則是課塊與洞的配合性, 電腦系統為每一課塊找出所有適合的洞, 計算它們的配合程度, 從而找出最適合者, 再將課塊放進。 至於計算的辦法, 將於稍後討論。
人手調動課節副常序的作用是對自動編製好的時間表作出調節, 使之更能適合使用者的要求。 此部份可供使用者考慮個別情況。 通常需要使用此部份的情況包括:
輔助常序
自動編課更是全個系統最重要的部份。 如前述, 自動編課的作用是將課塊放進洞內。 放進時, 須經兩層限制的考慮, 第一層是必須遵守的, 而第二層是用來為每一課節選出最適合的洞的,兩層限制均有系統預設值 (default values)。在第一層中, 每位教師每日最高節數為七節, 每科每日最多只可有一組課 (即一單堂, 兩堂成一雙連堂, 或三堂成一三連堂)。在第二層中, 班級因素與教師因素的比例為八十比二十. 兩個因素之下再細分為幾個屬因, 其間的比例也有預設值。班級因素屬因之一的科目組別, 預設數為一, 即各科目均視為同一組, 可由使用者改為五 (意即將科目分五組, 而每日的課節, 盡量安排至分屬於五組), 其餘的所有預設值, 亦均可由使用者自行改動。 而當此等數值改變後, 系統即據新數值編課, 因此各校對編課的不同要求均可而達到. 智達系統中, 除可自由改動系統預設值外, 事實上, 人手預編課節及人手調動兩常序都是為了令系統使用更加方便及更有彈性而設。如有自動編課處理的情況, 一般都能透過使用此兩副常序而解決。 配合了自動編課、人手預編、人手調節的編課常序, 基本上可以差不多解決全部的編課問題, 當然, 有些問題需要人手比較少, 有些需要比較多的人手協助下才能得到較理想的答案。 智達系統當然尚有很多需要改進的地方, 但事實上, 部份不理想的編課並不應算在智達系統頭上: 如前所述, 香港學校的特殊情況, 令編製時間表特別困難, 使用者定下的標準可能根本不能達到。 有些使用者可能辯稱,他們在用人手編製時是可以達到這個標準的。 這可能是實情, 負責者可能是編製時間表的特級高手, 但亦可能是在用人手編製時間表時, 編製者不自覺間逐步將標準下降。但在使用電腦編製時, 電腦並不懂得如此降低標準,於是所有找不到合標準的洞的課塊便集中到最後處理, 感覺上便有些不如人手處理, 而事實上,只是使用者要求太高及電腦不如人懂得變通的關係。
智達系統的特色, 除了方便及有彈性外, 還加入為香港特殊情況而設的常序,
例如說香港的教師們需要部份時間空堂, 以方便進修或參加會議, 系統可代為安排,
香港的學校開設輔導班及浮動班, 系統可安排多一位教師共同教授, 為輔導班及浮動班安排班房。
基本上, 智達系統是一個為香港學校而設計的系統, 雖然事實上已有外國的學校開始使用。
結語 利用電腦來編製授課時間表的好處是快捷而且準確,節省了大量人力物力, 更避免了因時間表錯誤而帶來的混亂。雖然暫時來說, 電腦系統未必達到一個真正專家的水準, 亦未能考慮個別學校的情況而作出特殊處理, 但對比一些經驗稍遜的時間表編製者來說, 智達系統的表現實在不遑多讓, 甚至稍為優勝。而且無論人類怎樣優勝, 犯錯的機會始終較機器為高, 所以暫時來說, 理想的做法應該是人機配合, 利用機器來產生一個時間表的初稿, 如果效果不大滿意, 則用人手配合電腦來修正, 既可以省時及避免錯誤, 又可以編出切合個別需要的時間表。 現存的兩種電腦系統, 即智達系統及HKASA, 基本上是專為香港而設計的專家系統, 經過多年在學校的實際使用, 吸收各使用者的意見,不斷改進, 已發展成為甚為成熟的電腦軟件,優點是用戶介面友善(user friendly), 自動編課快捷且成功率高. 更加上各種為方便駛用及查錯的常序, 令使用者更覺容易。另一方面, 兩系統亦有未完善的地方, 希望這些問題都可以在將來解決。
參考資料
|