中小学辅助排课系统的设计与实现贺荣摘要:编排课表是中小学教学管理中一项重要而又复杂的工作
它通过合理地安排时间、教师、课程、班级四大要素之间的关系,使全校各个班级一周内的每节课,都有合适的教师及课程与之对应
针对我校自身的校务情况,在研究过当前一些优秀的排课算法的基础上,我研究出一套基本可行的排课程序
它可先根据教务人员输入的约束条件进行设置,通过逐步筛选细化,将特定的课自动安排在最合适的时间段中安排到最优级的班级中
如果自动排课尚有不成功的地方,会在课表显示区将该课程以红色显示进行警告
通过这种直观的辅助手段,教务人员再配合进一步手动调整,最终调整出满意的课表
关键词:排课系统自动手动辅助一、排课系统的开发背景随着教育事业的不断发展,学校对教师课程安排的复杂度不断增加,如何将一个学校各个学科每天的课程安排与教室资源的分配合理化是摆在每一个教务工作人员面前的一个难题
传统的人工排课方式不仅工作繁琐,工作量大,而且还很容易出现错误
因此,计算机软件技术应用于学校的课程安排是发展的必然
充分发挥计算机自身的优势,将大量复杂的判断与运算交给计算机做,是真正意义上的人脑的“减负”
教师设置好学校基本情况及排课要求,让计算机自动排出课程表,适度调课后的课表就能满意地应用于新的学期
早在上世纪60年代末,Grotlieb
C教授就对课程表问题进行了形式化描述[1]
排课表这样的时间表问题(TTP:Time-Table-Problem),是典型的组合优化和不确定性的调度问题[2,3],并且已被证明是NP完全问题,有其自身固有的数学模型,即课表问题存在解,并且能找到解[4]
排课表问题的难度在于:它是一个多元受限的问题(受限于课程、时间、班级、教师、教室排课五要素),如果必须满足所有的约束条件(而这些条件通常是相互矛盾的),则极有可能找不到完整解[5];这也是为什么迄今为止还几乎没有完