基于Web的实验室排课系统的设计
2013-12-29田赫胥雪娇赵桂升郑秀红
摘要: 针对目前学校实验室排课工作非常困难的现状,该文设计一个基于 Web 的实验室排课系统,确定了系统的功能模块图和数据库系统结构,并对排课使用的回溯算法进行的研究,同时,为了提高算法的效率,引入了基于教学任务进行排课的概念。
关键词:排课;实验室;回溯;基于Web
中图分类号:TP311 文献标识码:A 文章编号:1009-5039(2013)13-3729-02
目前,学校实验室排课仍采用纯手工方式操作,首先教研室教师提交上实验课课程,然后管理员基于学校教务系统中教师课表,学生课表和教师的上实验课申请、实验教室的空闲状态、教室机器配置几方面的资料来排课。这样排课带来了很大的弊端,例如,工作繁重、易出错、容易造成教室冲突、学生课程冲突等问题。致使实验室管理混乱。因此,实验室网上排课系统是学校实验室不可缺少的部分, 它可以高效解决学校实验室目前面临的一系列烦琐问题。使得上机时间的安排,课程的安排,教室的安排,老师的安排与他们之间的不冲突和资源的高效利用。实验室排课系统可以为学校实验室资源提供有效的管理。同时实验室教学随着其在高校教育中的地位的提高也越来越受到人们的关注,因而在实验教学中利用计算机实现信息化也已成为目前实验室管理的主要目标。
1 系统总体设计
1) 用户管理部分,主要实现系统的权限分配和用户基本信息维护功能。根据权限的不同,可以分为四类用户,分别是教师,学生,实验室管理员和系统管理员。学生需要注册个人信息,只能查询、打印课表;教师,无需注册,可以根据自己的账号信息,直接登录,教师不仅可以查询、打印课表,还可以对课表进行手动调整,但是,手动调整的信息需要经过实验室管理员确认后,方可有效。实验室管理员主要负责自动排课、手动调课及确认、课程信息维护、班级信息维护等工作。系统管理员拥有最高的权限,实现对系统的整体维护。
2) 排课模块:可以实现约束设置、自动排课、手工调整几大功能。自动排课前,可以根据实际需求,录入约束条件,如课程要求的实验环境等;然后,进行自动排课,生成排课结果;针对排课结果,还可以进一步做手动调整。
3) 基本信息维护,主要包括对教师、班级、课程等信息进行增加、删除、修改操作。
4) 教学任务管理模块,通常教学任务是教务处下达的,所以,可以利用数据导入功能导入教学任务数据。同时,根据实验室上课的特殊性,二级学院可以对其进行简单的调整,所以,该模块还提供了对教学任务更新功能。教学任务信息是排课的重要的基础数据。
5) 课表管理模块,主要包括针对不同的对象生成不同的课表,如实验室的课表、班级的课表、教师的课表。还可以导出课表信息、查询和打印课表。
6) 数据导入、导出和查询模块:教师名册、教学任务、班级信息等均可由Excel文档直接导入到系统,同时从系统查询的各种结果可导出到Excel文档中。所有数据显示界面都提供丰富方便的查询功能。
2 数据库设计
3 排课算法描述
排课过程包括5大要素,教师、班级、课程、时间和教室, 对于一个考虑5个元素的回溯算法,效率较低,所以,可以根据实际情况,对五元组进行简化,其中,根据目前教务系统管理流程,可以把教师、课程、学生的组合作为一个教学任务元素,把教师,课程,学生作为教学任务的三个属性。对于离散的时间可以根据本学院的教学安排划分成时间片,每个学期有20个上课周,每周5天工作日,每个工作日分为5个时间段,分别是上午1-2节,上午3-4节,下午5-6,7-8节,晚上9-10节。这样就把5元因素简化为了三元因素(教学任务,实验室,时间片)。
分析可得排课约束规则如下:
1) 教师约束:在同一个时间,给教师只能安排一门课程。
2) 班级约束:在同一个时间,给班级只能安排一门课程。
3) 教室约束:在同一个时间,给教师只能安排一门课程。
用回溯算法生成排课结果的过程描述:
1) 首先读取教学任务,并获得教学任务的教师、班级、课程属性;
2) 选取相应类型的教室,并且还要满足所有班级的总人数小于教室的容量的90%(因为实验室有个别设备存在故障)。如果此阶段的教室都不能生成目标解,则回溯至1);
3) 确定时间,时间片遍历选择,根据已生成的排课记录作为强制检测的数据来源。对时间片遍历并判断约束条件,如果通过检测,则生成一条课表记录,即(教学任务,实验室,时间片)。否则继续遍历时间片重新检测,如果所有时间都不能通过检查,则向上回溯,执行2)。
4 结束语
实验室排课系统是大学教务管理系统和实验室管理系统中一个非常重要和非常复杂的一个工作。应用该系统,可以大大提高实验室管理工作的效率和质量。该文采用的排课算法为回溯算法,为了提高算法的效率,使教师、课程和班级三元素以教学任务的单一元素形式出现在算法中,大大提高了算法的效率。
参考文献:
[1] 赖敏雅.高校自动排课系统的设计与实现[D].成都:电子科技大学, 2011: 12-15.
[2] 马瑞民,张全武.限界回溯算法在排课系统模型中的应用[J].齐齐哈尔大学学报,2006,22(5):50-53.
[3] 钟秀玉.基于回溯法的排课设计[J].嘉应学院学报:自然科学, 2011, 29(8): 25-28.
[4] 邱炫.基于WEB的教务管理系统的设计与开发[D].上海:华东师范大学, 2010: 28-32.