摘 要: 本文对在网络环境下计算机在排课管理中的应用进行了研究,实现了全计算机和纯网络化排课,设计了一种高校自动排课系统的教室安排算法,对算法中四类不同的教室安排方式结果的合理性和效率进行了详细的比较和分析。经过对排课问题的研究,利用LINDO for Windows,提出了排课问题的数学模型。该模型具有较强的实用性。
关键词: 排课系统 辅助功能 教室安排算法 教师安排方式 数据库
一、关于网络环境下高校教室安排与管理系统
自动排课系统是教育信息化的一项重要内容。特别是高校自动排课系统,由于约束条件繁多、教学资源要求复杂,涉及上课时间、教室、教师、学生,目前,自动排课系统很难达到由计算机自动排出课表,需要一定程度的人工辅助完成自动排课。通常情况下,自动排课系统分为课程的时间安排子系统和教室安排子系统两个部分。课程的时间安排子系统完成课程的上课时间安排任务,教室安排子系统完成课程的教室分配任务。
本文描述了网络环境下高校教室安排与管理系统(Classroom Allocation and Management System,CAMS)中的教室安排算法。目前,高校教育具有一些新的特点,如招生人数不断增加、课程种类繁多、教学资源紧张、教学计划频繁变动,人工安排容易出现错误和教室冲突现象。大多数高校也已经广泛实行选课制,进行网上选课,但是自动排课系统的功能仍不完善。CAMS正是为了解决这些问题而提出的,它能为已经确定上课时间的课程合理地分配教室,提高课程安排的灵活性和高效性,实现自动化的教室管理。
同时,目前很多高校分布多个校区,这给自动排课系统提出了特殊的要求。本文实现了一种网络环境下的高校自动排课系统中教室安排功能。
二、CAMS中的教室安排算法设计
1.CAMS系统总体设计
自动排课系统由四大模块构成,分别是输入模块、排课模块、查看模块和打印模块,自动排课系统运行体系***(如***1所示)。
***1
(1)输入模块
输入模块包括输入教师信息、班级信息、教室信息、课程信息、制订开课计划、绑定合上班等信息。其中,教师信息写入数据库的教师信息表中,班级信息写入班级信息表中,教室信息写入教室信息表中,课程信息写入课程信息表中,开课计划写入教学计划表中,绑定合上班信息写入总课程表中。
(2)排课模块
排课模块是自动排课系统的核心部分,分为自动排时间子模块和自动排教室子模块。此模块主要是应用一系列规则、约束条件进行排课。
(3)查看模块
可按照班级、教室、系、教师和总课程表查看各科课程表。
(4)打印模块
可按班级、教室、系、教师和总课程表打印课程表。
2.CAMS中的教室安排算法设计
教室安排算法是CAMS的核心,算法设计的优劣影响教室安排结果的合理性和系统运行效率的高低。
(1)CAMS中教室安排算法的设计***(***2)
***2
(2)CAMS中教室安排算法描述
①对课程信息表分类
(1)算法中四类教室安排方式
根据选课人数和教室容量的排序方式,算法中存在四类不同的教室安排方式,如表1所示四类教室安排方式。
表1 算法中四类教室安排方式
第Ⅰ类安排方式先安排选课人数少的课程,从待安排课程的教室集合中搜索第一个符合要求的教室。第Ⅱ类安排方式先安排选课人数多的课程,同样从待安排课程的教室集合中搜索到第一个满足条件的教室。两类安排方式的教室集合中按教室容量升序排列。第Ⅲ类安排方式先安排选课人数少的课程,从待安排课程的教室集合中搜索第一个不满足条件的教室,将前一个教室安排到该课程。第Ⅳ类安排方式先安排选课人数多的教室,搜索方法和第Ⅰ类,第Ⅱ类相同。两类安排方式的教室集合中按教室容量降序排列。
(2)四类安排方式的合理性比较和效率分析
表(2)中的数据是根据某高校中一学院2006—2007年下学期课表安排所选出的数据。
①课程上课时间冲突不明显情况下合理性和效率分析
第Ⅰ、Ⅱ两类教室安排方式合理性比较理想,安排过程中需要比较的次数多,算法效率低;第Ⅳ类教室安排方式结果中容易出现选课人数少的课程安排到大容量教室,造成教室资源浪费,需要比较的次数多,合理性和算法效率都不理想。
②课程上课时间相互冲突情况下合理性比较和效率分析
对Ⅰ、Ⅱ两类教室安排方式比较和分析。从合理性角度分析,对已安排课程,第Ⅰ类安排结果中教室平均利用率为64.1%,第Ⅱ类安排结果中教室平均利用率为75.1%(如表2教室利用率),第Ⅱ类合理性优于第Ⅰ类;对于未安排课程,第Ⅰ类安排结果中未安排课程选课人数多,人工安排困难,而第Ⅱ类教室安排方式的结果中未安排课程选课人数相对较少,容易人工安排,第Ⅱ类优于第Ⅰ类;第Ⅱ类教室安排方式缺点是容易出现选课人数少的课程安排到大容量教室的现象(如表2安排结果)。从算法效率角度(比较次数)分析,两类安排方式比较次数相差较少(如表2比较次数),都需要比较22次,算法效率相同。
表2 课程上课时间相互冲突下四类安排方式结果比较和效果分析
第Ⅰ、Ⅲ两类教室安排方式比较和分析。从合理性角度分析,两类安排方式的教室利用率均为64.1%(如表2教室利用率),利用率低;未安排教室的课程选课人数多,合理性较差。从算法效率角度(比较次数)分析,第Ⅰ类需要比较22次,第Ⅲ类需要比较21次,比较次数增多(如表2比较次数),算法效率降低,第Ⅲ类安排方式优于第Ⅰ类。
第Ⅱ、Ⅳ两类教室安排方式比较和分析。从合理性角度分析,对于平均利用率,第Ⅱ类安排方式结果中教室平均利用率未75.1%,第Ⅳ类教室平均利用率为72.7%,平均利用率相当;对于每个教室利用率,第Ⅱ类教室利用率波动范围大,第Ⅳ类波动较小,第Ⅳ类合理性优于第Ⅱ类。从算效率角度(比较次数)分析,第Ⅳ类比较25次,第Ⅱ类比较22次,比较次数增多(如表2比较次数),算法效率降低,第Ⅱ类优于第Ⅳ类。
从合理性角度分析,第Ⅳ类教室平均利用率高,每个教室利用率稳定,合理性较好;第Ⅰ、Ⅲ两类合理性最差;第Ⅱ类教室平均利用率高,缺点表现为选课人数少的课程容易安排到大容量教室,每个教室利用率波动范围大,合理性劣于第Ⅳ类。从算法效率角度分析,第Ⅰ类算法效率高;第Ⅳ类效率较低[14][15]。
(3)CAMS中教室安排算法的安排方式选择
通常情况下,选择第Ⅰ类或第Ⅱ类作为教室安排方式比较理想;第Ⅲ类教室安排方式比较次数多,算法效率低;第Ⅳ类教室安排方式容易造成教室资源冲突和浪费。
CAMS中针对实际选课数据和教室资源数据情况,选择第Ⅱ类作为教室安排方式,安排结果中未安排课程的选课人数少,人工安排和处理容易实现。
4.系统算法的实现
(1)程序的设计及实现
由于CAMS系统还存在一些缺陷,因此,需要建立一个算法,才能使这个系统更加完善。首先,给出运用LINDO软件编写所需要的一些数据。本程序的编写是根据线性规划的数学模型进行编写的。
表三 待排的课程
表四 待排的教室
应用LINDO软件,对已经安排好上课时间的课程进行教室安排,其主要因素有2个,即教室容量RONG和上课人数R。其目标函数是使该时刻教室的利用率达到最优。这就类似于线形规划中的指派问题。下表是一些数据准备:
其中,x1~x81是按照以行为顺序定义的变量。
上表字体加粗部分即为教室达到最佳利用率的高校排课。
5.结论
自动排课系统一直是高校教务管理中难以解决的问题,涉及整数规划、***论、分支定界技术及模拟退化法等方法和技术,国内外很多研究人员仍在从事这方面的研究工作。
本文设计和实现了网络环境下高校自动排课系统中的教室安排算法,对算法中四种不同类型教室安排方式的合理性和运行效率进行了比较和分析。CAMS已经在某些高校的教学实践中发挥了重要的作用。
由于高校信息化没有统一的标准,每个高校的实际情况存在较大差异,因此CAMS在其他高校中的推广需要开发一个简单的接口。
本系统实现了对课程的自动编排,具有很高的实用价值,若对计算机自动排课的结果不满意,则可进行手工调整,并可按照系、班级、教师和教室打印课程表。自动排课系统配合了学校教学体制改革的进程,更新了教务管理者的传统理念,促进了教务管理信息化的发展。
转载请注明出处学文网 » 高校教室排课系统的设计与实现