一种改进的混合排课算法研究与实现

2011牟第3期 

中图分类号:TP301 文献标识码:A文章编号:1009—2552(2011)03一Ol19—03 

一种改进的混合排课算法研究与实现 

杨东风 

(陕西延安大学计算中心,延安716000) 

摘要:针对目前常用的排课算法中存在的不足,分析了基于遗传算法的单一排课算法存在影 

响排课因素多、难以进行最优组合及排课效率低等问题,提出了一种基于优化的遗传算法和贪 

婪算法组合的混合排课算法。该算法首先采用改进的遗传算法对教学时间片进行安排,然后再 

采用贪婪算法进行教学场地安排,该算法的创新点在于简化了影响排课结果的因素,将一个复 

杂的过程分解为两个阶段来实现,保证了排课结果的合理性、提高了自动排课的效率、有利于 

后期部分课程的手动调整。 

关键词:排课问题;遗传算法;贪婪算法;研究;实现 

An improved algorithm of the mixed arrangement and its realization 

YANG Dong—feng 

(Computer Center,Yah’aⅡUniversity,Yan’an 716000,China) 

Abstract:Aiming at the insufficiency of the common course algorithm,the algorithm based on genetic 

algorithm is analyzed,algorithm was greatly influenced by single arrangement and the optimal 

combination can gready and the low efficiency was proposed,based on the optimization of genetic 

algorithm and greedy algorithm hybrid algorithm combined scheduling.The Mgorithm firstly by the 

improved genetic algorithm to organize teaching time,then by greedy algorithm for teaching field 

arrangement,the algorithm of innovation is simplified greatly influence factors,the results will be a 

complicated process into two stages,guarantee the rationality of course,improve the efficiency of the 

automatic arrangement for the later part of course,manual adjustment. 

Key words:course arrangement;genetic algorithms;greedy algorithms;research;realization 

0 引言 

排课问题称为课程表问题。课程表的关键问题 

就是直接解决排课中时间和空间资源的冲突问题。 

近年来,由于高校招生规模不断扩大、课程设置也相 

对越来越复杂,随之而来就出现了学生数量、开课门 

数与教学资源严重不足之间的矛盾。尽管各个高校 

尽量提高教学资源的利用率,但教学资源严重不足 

的问题还是没有解决。这样,就给高校的排课工作 

带来很大困难。因而,在合理利用现有教学资源的 

前提下,设计一个让教师、学生都满意的排课方法就 

显得十分重要¨ 。 

1 遗传算法分析 

排课过程的实质是教师、教室、班级、课程和时 间五个基本元素的最优化过程 J。既要避免相互 

冲突,又要合理。目前通常采用的遗传算法是一种 

通过模拟自然界生物进化过程求解极值的一种优化 

算法。它是基于自然选择和基因遗传学原理的搜索 

算法,将“优胜劣态,适者生存”的生物进化原理引 

入待优化参数形成的编码群体中,按照一定的搜索 

技术,将种群代表一组问题解,通过对当前种群进行 

遗传操作,从而产生新一代的种群,并逐步使种群进 

化到包含近似最优解的状态 J。但遗传算法在实 

际求解过程中存在诸如依据适应函数选择的染色体 

收稿日期:2010—09—13 作者简介:杨东风(1973一),男,硕士,讲师,主要研究方向为信息 系统 

一l

 l9一 是否为合理染色体、依据交叉和变异所选的染色体 

是否为合理染色体以及在多个因素中如何选定基因 

等问题。 

2贪婪算法描述 

贪婪算法是一种简化解题复杂度的算法,是一 

种不追求最优解,只希望得到较为满意解的方法,它 

采用逐步构造最优解的思想,在问题求解的每一个 

阶段,都作出一个在一定标准下看上去最优的决策; 

决策一旦作出,就不可再更改。制定决策的依据称 

为贪婪准则。也就是说,它总是把整个解题过程分 解成一个个细小的步骤,并根据其难易程度确定其 

处理顺序,做出在当前看来是局部最优的选择,逐步 

逼近给定的目标,以尽可能快地获得满意的处理结 

果 引。 

3 混合排课算法的设计与实现 

在该混合排课算法的设计过程中,由于考虑到 

排课问题中的诸多因素(教师、班级、时间、课程和 

教室),因而整个排课过程分两步实现。首先采用 

改进的遗传算法给每个教学任务分配合理的教学时 

间片段,然后对生成的包含教师、课程和时间片段的 

教师教学任务利用贪婪算法分配教室,从而产生最 

优化的一张课表 J。 

3.1 时间片安排算法的设计与实现 

(1)设置控制参数:排课过程中涉及到一系列 

控制参数,如基因编码、种群的规模、选择率、交叉 

率、变异率等、迭代次数M,计数器N。 

种群规模:在该问题中,初始种群是由班级、教 

师和时间片组成的二维序列,按照一般教学单位的 

规模来讲,该种群数量介于50~200之间。 

选择率:为了使得适应度值最高的个体得以保 

留,应确保这样的个体不进行配对交叉而直接复制 

到下一代中,所以,我们构造一个选择率的计算公 

式:Qsele=fit( )/fit。其中fit( )为某个个体适应度 

值,6t为种群适应度值总和,i:1,2……种群规模 

总数。 

交叉率:采用单点交叉。 

变异率:为了避免传统的遗传算法中因“近亲” 

繁殖导致的进化停止和收敛于非最优解,提出了一 

种新的自适应变化的方法,即变异率PM与父串相对 

距离成反比,随迭代率(迭代次数与最大迭代次数的 

比值)指数下降自适应变化。。 。 

fp…exp(一t/t )。(1一R/R )P <p i P 《 【P…P >p 其中,pmax/pmin分别为最大和最小变异率,t/'tmax 

分别为迭代次数和最大迭代次数,R\Rmax分别为 

1 20一 父串间的欧氏距离和最大欧氏距离。 

基因编码设计:将教师、班级、课程进行捆绑,组 

成一个教学任务单元并编号,然后以班级为列,以周 

教学时间片段为行,组成班级二维表作为染色体。 

(2)适应度函数:计算方法为F=∑ )× 

W(i) i)为各优化条件, (i)为各优化条件所占 

权重。 

在该排课问题中,我们所确定的适应度函数必 

须要考虑以下优化条件: 

①不同性质的课程时间段安排的科学性、合理 

性,表示为 1)。 

②自然班每天课程安排的均匀性,表示为_厂(2)。 

③同—教师每周匕课时间安排均匀性,表示为 3)。 

(3)初始化种群:为了保证遗传算法搜索的全 

局性和稀疏性,首先把每周划分为5个大的均匀的 

时间片,由此构成一个时间片小区域,然后在每个均 

匀的时间片区域中使用随机函数产生一个小于等于 

每天教学时间片(小于等于5)段数的随机数代表时 

间片段,再检测该任务所涉及到的所有班级、教师 

等硬约束条件,如果所有对应的数组变量中均无冲 

突,则将任务编号填入班级和教师二维表中,否则重 新产生。当每一个任务的所有时间片都完成这样一 

个过程后,就在每个区域产生了一个无冲突的染色 

体 。最后,由每个小区域中产生的原始染色体组 

成初始种群。然后计算出每个个体的适应度函数 

值,N=1。 

(4)选择:在改进的遗传算法中采用最佳个体 

保存法。最佳个体保存法的思想是把群体中适应度 

值最高的个体不进行配对交叉而直接复制到下一代 

中 。 

(5)交叉:采用单点交叉生成新的染色体组成 

的群体并进行冲突检测和消除。 

(6)计算新的群体中各染色体的适应度函数 

值,并与最优染色体进行比较,将最优的染色体保留 

下来,在当前群体和最优群体中选取若干个个适应 

度函数值较高的染色体组成最优群体。 

(7)变异:在排课问题中,变异操作发上在同一 

染色体中的两个基因位(时间片)之间,即我们随机 

选择一个班的一个教学时间片,让它随机变换成另 

一个时间,在变异过程中最好采用擦除重分配策略, 

并要进行冲突检测和消除。 

(8)执行(6)。 

(9)判断N值与M值大小,如N值大于M,结 

束退出,生成时间任务安排表,否则转(4)。 

教学任务时间安排的改进遗传算法流程如图1所示。

 开始 

利用改进编码方式编码 

利用改进方法产生初始种群 

计算每个染色体适应度值 

使用最佳个体保存策略选择操作 

随机再排列染色体的位置 

两个相邻个体单点交叉 

计算每个个体变异概率。以此概率随机变异 

计算新种群每个染色体适应度值 

数器N>迭代 \一 I是 否N=N+1 

图1 教学任务时间安排的遗传算法流程图 

3.2上课教室安排贪婪算法的设计与实现 

场地安排的贪婪算法流程如图2所示。 

算法具体实现如下: 

(1)将上边算法产生的教学任务时间安排表中课 

程要求的教室信息进行编码,为了更加科学、合理的安 排场地,该编码包括最优编码和可替代编码 J。 

(2)再将全校所有可用教室按照场地属性要求 

进行统一编码。 

(3)将已经编码的时间任务信息按照优先级进 行排序。 

(4)将已经编码的教室按照优先级生成一棵二 

叉树。 

(5)统计需安排场地的时间任务数,标记为N, 

然后初始化计数器M。 

(6)取出第一个时间任务的最优编码,与二叉树 

的根节点进行匹配,如匹配成功转(12),否则转(7)。 

(7)遍历该教室二叉树的左子树,形成节点队列 

进行匹配,如匹配成功转(12),如不成功则转(8)。 

(8)遍历该教室二叉树的右子树,形成节点队 

列进行匹配,如匹配成功转(8),如不成功则转(9)。 

(9)取出第一个任务的可替代编码,转(6)。 

(10)如可替代编码都已经遍历完成,仍然无法 

找到相应的匹配节点,则转(11)。 

(11)该任务无法安排场地,取出相邻的任务, 

M=M+1,再转(6)。 

(12)对节点教室进行安排,然后分解节点。 (13)如果M大于N,退出。 

图2场地安排的贪婪算法流程图 (下转第124页) 

l21—

合集下载

基于多种调度算法的排课系统研究

基于多种调度算法的排课系统研究

128 福 建 电脑 2012年第2期 

基于多种调度算法的排课系统研究 

张燕芬 

(上海大学计算机科学与工程学院上海200072) 

【摘要】:根据中职院校实际需求,提出一个基于银行家算法和贪心算法的排课算法。发挥每种算法 

的优点,阐述不同算法的运用过程和思路,利用银行家算法将教师分配到班级,利用贪心算法将课程分配 

到时间和教室,实现了整个排课算法的设计,有效的解决了排课问题。 

【关键词】:排课;银行家算法;贪心算法;位置排斥 

1、引言 现代教学过程中.合理的课程安排被不少专家认 为是提高学生学习效率的重要手段.同时随着学校和 

教师自身发展的需求.都对排课系统提出了更高的要 求。然而现实中的很多排课软件通用性皆不尽人意.有 

的还很难全面满足所有需求,如禁排问题、合班问题 

等.如何设计一套优秀的排课算法成为越来越多学者 

关注的问题 

特别现在研究领域中出现的基本都是针对高校的 排课系统.其实普通中小学和中等职业学校等由于其 本身特点有着自己的需求.和高校在很多方面是完全 

不同的.在设计排课软件的时候要注意 

本文介绍的排课系统中运用的是多种调度算法. 利用分治法思维将排课过程分成两步.首先利用银行 

家算法将教师分配到班级.然后利用贪心算法将课程 分配到时间和教室 

2、银行家算法 在教师的分配中.我们经常会遇到教师的课时量 

问题.在中等职业学校包括中小学.教师的课时量是很 

大的.同时又受各自职务的影响,假设一个学校规定, 作为班主任一周的课时量12节.作为非班主任的普通 

教师16课时.还有担任学校中层领导干部的教师为4 节.在处理将教师分配到班级这项工作时.我们发现这 

非常类似于银行家算法中将限定数量的资源分配给不 同的进程的工作 

2.1银行家算法的描述【 1 

可利用资源向量Available:是个含有m个元素的 

数组.其中的每一个元素代表一类可利用的资源数目。 

如果Available fi]:K,则表示系统中现有Ri类资源K 

基于遗传算法的排课优化问题求解

基于遗传算法的排课优化问题求解

基于遗传算法的排课优化问题求解

排课优化问题一直是学校、大学以及一些培训机构所必须要面对的难题,在人力资源有限的情况下,如何科学地排出一个合理且不冲突的课表,已经成为了许多学校面临的共同问题。为了解决这一难题,科学家和工程师们通过运用遗传算法和其他优化算法的方法,开发了许多可行性方案。本文将从遗传算法的角度来探讨排课优化问题。

遗传算法(Genetic Algorithm)是一种模拟自然界进化的算法。在自然界中,个体之间通过基因的遗传组合完成进化,并产生了最适应环境的生物种群。将这种思想运用到人工智能领域中,遗传算法会更加聚焦于表现最佳的计算模型,从而求解出问题最优解。

在将遗传算法应用到排课优化问题中,我们首先需要清楚我们的目标,也即是要确定如何评价可以生产出合适课程表的个体(也就是排出来的课程表方案)。通常我们选择以下几个指标:

1.冲突数:每次安排的排课必须要避免同一时间段安排了不同课程的同学出现冲突的情况。

2.教师数量:我们需要限制每个教师一天最多要授课的数量。

3.上课时间:不同年级或专业应该拥有不同的上课时间设定。

4.考试时间:考试最好不要安排在同一天,或考试之间要有合适的缓冲时间。

在确定了目标之后,剩下的就是如何将遗传算法应用于实践中。首先,我们需要确定个体应该包括哪些元素。通常,我们选择将每个个体定义为一个完整的课程表,并将每节课定义为单一个体上的基因变量。每个体内包括所有的课程计划,教室,教师和学生信息,并建立起课程表和基因之间的关系。

经过基因变异,评分和自然选择步骤后,我们就能得到最适应环境,即最优解的课程表方案。在遗传算法中,最适应环境的确定方式通常是通过一个称为适应度函数(Fitness Function)的评分公式来计算的。适应度函数由用户来设定,根据具体应用场景的实际需求设置不同的适应度计算规则。

这个过程可以理解为将每个个体放入一个生态系统中,生态中的任务是评判每个个体的适应度,并将最适应生物的优良特性遗传下去。每代种群中,最适应环境的个体都会被放入下一代中,然后生产新的个体来代替之前的较差个体,如此循环迭代,最终所有的新生物都会有一些具有和之前生物不同的优良特性。

高校计算机自动排课系统的研究与实现

高校计算机自动排课系统的研究与实现

第26卷第1期 内蒙古工业大学学报 J0URNAL 0F INNER M0NG0LIA UNIVERSITY 0F TECHN0L00Y Vo1.26 No.1 2007 

文章编号:1001—5167(2007)01—0060—05 

高校计算机自动排课系统的研究与实现 

0 引 言 李雷孝,冯永祥 

(内蒙古工业大学信息工程学院,呼和浩特010051) 

摘要:本文介绍了高校计算机自动排课系统的设计与实现.应用图论中着色理论 

来设计自动排课算法,并利用可视化编程技术予以实现,有效地处理了排课过程中 教师、教室和班级三者之间的冲突问题,使各项有限资源得到合理利用. 关键词:自动排课系统;着色;算法实现 中图分类号:TP/301.6 文献标识码:A \ 

高校排课管理的主要任务是根据教学计划把各授课部门的教学任务进行汇总,制订全校各班级的 课表.由于高校班级数、课程门数较多,每门课又涉及很多信息,如果用手工进行排课,不可避免地出现 

教室资源冲突或教师资源冲突的情况.为了使课表的编排更准确、合理、快速,高校教务部门已用计算机 来进行排课管理,并先后开发出一些适用的排课软件。 .排课问题要求保证班级、教师、教室不产生矛 

盾,并且要满足教室、教师资源的实际约束条件.即在同一时间内,同一个班级,仅能由某一位教师上一 门课;同一时间内,问一个教室,仅能有一个班级占用;一位教师也只能在某一时间内,在某一个教室,给 

某一个班级讲一门课.在满足上述条件的基础上,我们设计了一个计算机自动排课系统,下面就该系统 的结构设计、关键技术及算法实现予以论述. 

1 系统总体结构 

系统总体结构如图1所示. 1.1总控模块 

用户与系统的接口界面,通过用户密码验证确认访问系统. 

1.2系统管理 主要完成系统初始化及源数据的录入,其中主要包括教室、教师、班级、教学计划、教学任务等信息, 

减少重复输入操作,进行数据库的更新、维护、权限设置及密码修改等操作,为系统的安全正常工作提供 保证. 

改进后的遗传算法在排课系统中的应用研究

改进后的遗传算法在排课系统中的应用研究

Journal of Qiqihar Medical College.2007.Vo1.28。No.16 

改进后的遗传算法在排课系统中的应用研究 

乔树清 ・高教研究・ 

【摘要l首先针对排课问题提出遗传算法来解决这样的复杂问题,把排课问题融入遗传算法中,针 对遗传算法做了模块化设计,将算法的运行区分为多种不同的机制,并提出一种改进的遗传算法。 【关键词l遗传算法排课运行机制 

1 弓I言 排课问题很早以前就成为众多科研人员和软件 

公司的研究课题,但是真正投入使用的排课软件却 很少。原因是多方面的,其中算法的选择是最关键 

的一个问题,S.Even等人在1975年的研究中证明 了排课问题是一个NP—Complete问题,即若是用 

“穷举法”之外的算法找出最佳解是不可能的。然而 

由于穷举法成本太高,时间太长,根本无法在计算机 

上实现。因为假设一个星期有n个时段可排课,有 m位教师需要参与排课,平均每位教师一个星期上 

k节课,在不考虑其他限制的情况下,能够推出的可 

能组合就有n一 种,如此高的复杂度是目前计算机 所无法承受的。因此众多研究者提出了多种其他排 

课算法,如模拟退火、列表寻优搜索、约束满意等。 

其中,遗传算法(Genetic Algorithm,简称GA)是很 有效的求解最优解的算法。 

2遗传算法描述 . 遗传算法是一种并行的、能够有效优化的算法。 

运用遗传算法求解问题首先需将所要求解的问题进 行编码,然后在可行域中随机挑选一些编码组成作 

为进化起点的第一代编码组,并计算每个解的目标 

函数值,也就是编码的适应度。接着就像自然界中 

一样,利用选择机制从编码组中随机挑选编码作为 繁殖过程前的编码样本。选择机制应保证适应度较 

高的个体能够保留较多的样本;而适应度较低的个 体则保留较少的样本,甚至被淘汰。在接下去的繁 

殖过程中,遗传算法提供了交叉和变异两种算子对 挑选后的样本进行交换。交叉算子交换随机挑选的 

【毕业论文】中学排课系统设计与实现

【毕业论文】中学排课系统设计与实现

【毕业论文】中学排课系统设计与实现

【标题】中学排课系统设计与实现 【作者】张明明 【关键词】管理?自动?查询 【指导老师】任

大飞 【专业】计算机科学与技术 【正文】

1?系统概述 1.1开发背景

目前计算机已经成为我们学习和工作的得力助手,计算机的价格已经十分低廉,性能却有了很大的进步。它已经被应用于许多领域,计算机之所以如此流行的原

因主要有以下几个方面:首先,计算机可以进行许多繁杂而有重复性的劳动;其

次,计算机可以节省许多资源;第三,计算机可以大大的提高人们的工作效率;第四,计算机可以使文档更加安全;第五,便于管理人员的管理等等。

课表自动生成系统是一个教育单位不可缺少的部分,它的功能对于学校的快速和高效的管理班级信息及老师信息致关重要,而且课表自动生成系统还能够为用户

提供充足的信息和快捷的查询手段。?

作为计算机应用的一部分,使用计算机对班级课程信息进行排课管理,可以使排课速度快、查找方便、可靠性高、成本低等。这些优点能够极大地提高学校排课

管理中的效率,也是学校的科学化、正规化、信息化管理,与世界接轨的重要条件。

1.2开发意义

采用课表自动生成系统已成为学校管理科学化和现代化的重要标志,它给学校管理带来了明显的经济效益和社会效益。主要体现在:极大提高了排课管理工作人

员的工作效率,大大减少了以往对排课时各学科排的流程繁琐,杂乱,周期长的弊端。基于排课系统的全面自动化,可以减少在排课过程各班级管理中的漏洞,

可以节约不少人员管理开支。课表自动生成系统管理的操作自动化和信息的电子化,全面提高了学校课程安排的管理水平。归纳起来,好处大约有以下几点:可

以快速通过条件进行计算机排课;只需一到二名班级信息、教师信息录入员即可

操作系统,节省大量人力;可以迅速查到所需信息。 1.3编程环境的选择

本系统所采用的是当前较为热门的编程软件C#?作为实现语言,以数据库Sql Server2000作为系统的后台操作,其功能在系统内部有源代码直接完成。我们

几种智能排课算法的对比探讨

几种智能排课算法的对比探讨

几种智能排课算法的对比探讨

智能排课算法是一种利用计算机技术和人工智能算法对课程进行自动排列的方法。它可以根据学生、教师和教室等多个因素进行优化排课,以提高教学效果和学生满意度。在智能排课算法研究领域,有多种不同的算法被提出和应用,下面对几种常见的智能排课算法进行对比和探讨。

1. 贪心算法

贪心算法是一种简单而直观的智能排课算法,它根据某种优化目标进行决策,每次选择当前看起来最优的解决方案。贪心算法没有考虑到全局最优解,容易陷入局部最优解,导致排课结果不尽如人意。

2. 遗传算法

遗传算法是一种模拟自然进化过程的智能排课算法。它通过构建初始种群、交叉、变异等操作来搜索最优解。遗传算法可以考虑到全局最优解,并且具有较好的鲁棒性和适应性。遗传算法在时间和空间复杂度上较高,需要大量的计算资源和运算时间。

3. 禁忌搜索算法

禁忌搜索算法是一种通过禁忌表来避免陷入局部最优解的智能排课算法。它通过定义禁忌表来记录已搜索过的解,使得算法能够跳出局部最优解。禁忌搜索算法的优势是可以较快地找到较优解,但在处理大规模排课问题时,禁忌表的长度需要适当调整,否则会导致算法效率下降。

4. 约束满足算法

约束满足算法是一种基于约束条件的智能排课算法。它通过将排课问题转化为约束满足问题,利用约束满足算法求解最优解。约束满足算法具有较强的问题建模能力,可以应对各种复杂的约束条件。约束满足算法的时间复杂度较高,对问题规模较大的排课问题需要较长的运算时间。

不同的智能排课算法有各自的优势和限制。贪心算法简单快速,但容易得到局部最优解;遗传算法可以找到全局最优解,但计算资源要求较高;禁忌搜索算法可以跳出局部最优解,但需要调整禁忌表长度;约束满足算法适用于各种约束条件,但时间复杂度较高。在实际应用中,可以根据具体问题的规模和要求选择适合的智能排课算法,或者组合多种算法进行排课。

智能化与人性化排课算法的研究与实现

2OO6年第6期 计算机与现代化 JISU JI YU XIAND IH A 总第130期 

文章编号:1006-2475(2006)06-(1042-03 

智能化与人性化排课算法的研究与实现 

梁志剑 

(中北大学计算机科学与技术系,山西太原030051) 

摘要:基于目前排课系统存在的问题,研究与实现智能化、人性化的排课算法。利用Ⅶ及SQL Server等编程和数据库工 

具,并结合ADO技术实现排课算法。测试表明,该排课系统适合于各高校,减少了相关教务人员不必要的劳动,提高了 

排课效率。 

关键词:排课;调课;智能化 中图分类号:G434 文献标识码:A 

Research&Implementation of Intelligent and Human Algorithm of rr=aIIging Lesson 

LIANG Zhi-jian 

(Department of Computer Science and Technology,North University of China,Taiyuan 030051,Claim) 

 ̄:Taking program and database tools such as VB and SQL Server etc,and synthetically applying ADO technology.this paper 

studies and implements the intelligent and human alg0削flIll 0f arranging lesson based on the problems e ̄tmS in the present system of 

anm ̄nglesson.Thettmt showsthe system of aI豫n r lessonisfitformost universities.Applingthe system caIl rc]Jevethe unnecessary labor ofintendated educational administrative personnel and improve the efficiency of aITan r lesson. 

高校实验室排课系统算法设计浅析

科技资讯2016 NO.20SCIENCE & TECHNOLOGY INFORMATION学 术 论 坛

144科技资讯 SCIENCE & TECHNOLOGY INFORMATION近年来,高校扩招带来了教育规模扩大,高校在校学生数量增多,与此同时,高校毕业生动手能力弱、实践能力差也已成为不争的事实,并影响着他们顺利实现就业。因此,实验教学改革、实验室建设和管理也理所当然成为高等教育工作的重点之一。传统的手工排课已经不能适应迅猛发展和需求旺盛的实验教学需要,这一发展态势要求高校必须采用计算机信息管理系统来实现实验室的课程安排与布局,以提高排课的效率和精度,同时也节约人工成本。1 实验室排课系统应实现的基本功能依托实验室信息管理系统的实验室排课系统应具备以下功能:系统支持管理员、教师和学生三种不同身份人群的登录;通过排课系统,实验室管理员可以做到审核课程安排、自定义排课和查看课程安排信息;实验课授课教师可以提交课程安排、查询课程安排和查看实验室信息;成为注册用户的学生,可以查询课程安排、修改个人信息。以上由登录权限模块进行支撑,此模块包含了登录界面和登录验证处理内容。系统基础数据模块集成了学校学生及教师的个人信息、学校开设的实验课程、学校现有的院系班级和实验教室等信息。此外,系统还应设置信息维护模块,通过此模块对学生、教师和班级排课信息进行修改、删除等维护操作。当然,查询浏览模块也必不可少,根据关键词等查询条件,可以快速、准确地查找到需要的信息。2 实验室排课算法设计应遵循的原则高校实验室信息管理系统自动排课功能的实现,是在借鉴传统人工排课经验的基础上,利用计算机来选择合适的排课方案。排课问题涉及到实验时间、授课教师、上课学生和实验室等要素,不仅要依据学期初既定的教学计划,还要尽量满足各种特殊要求(如:特殊时间、特定教室、排课等级),这是组合规划问题,其实是解决各个要素之间的冲突,也可以说是一种用信息技术对抗和调和各种制约条件以达到课程安排最合理最优化的方案。对照实验室排课的一些约束性条件,经过整理、比较和归纳,发现编排高校实验室课程一般应遵循以下基本原则。(1)排课“不冲突”原则。保证实验室排课不冲突,具体包括实验场地(机房)不冲突、实验教师上课时间不冲突、实验学生上课时间不冲突等,这是硬性条件,是基本规则,一旦违反了,就会酿成教学事故。(2)排课实验室“基础达标”原则。实验室排课要充分考虑不同实验室的软硬件条件,要根据实验室的基本功能合理排课,保证排定的实验室“达标”,符合实验要求,为实验课提供“合规”“合理”的场地。(3)排课“效用最优”原则。要对实验室、实验课程、实验师生进行调查研究,归纳“需求”,盘点“供给”,做好调度,实现各要素的有效对接、无缝衔接,这样才能发挥实验室效用的最大化、最优化,才能让实验课上出效率、讲出“效果”。比如,同一专业不同班级的实验课程进度要相当,实验教室的类别、功能要相同,实验教师也要相对固定。3 在实际操作中对高校实验室排课算法的设计3.1 选择算法的问题目前,尚未有比较成熟的排课算法,也没有通用的排课系统。在该文中,笔者以回溯算法的结构为例进行实验室排课。因为许多复杂的、规模较大的问题都可以使用回溯法来进行解决,回溯算法有“通用解题方法”的美称。回溯算法控制结构的核心思想就是一点:“试着走,走不通时就回头”。这种算法向前搜索时是依据选优条件来求结果的,经过搜索比对,获知原有方案不符合要求或不是最优方案时,就后退进行二次选择、重新选择,再次尝试探寻最优路径,直至找到。回溯法就是一种选优搜索法。3.2 优先排课的问题实验室信息管理系统其排课功能一般是以预约排课为实现方式的,即实验课程上课时间由学校教务系统事先进行排定,或由实验教师提前自行约定。这样,当实验教师或相关教务人员一旦确定上课时间后,通过登录信息系统来进行实验室预约操作,系统会自动依据实验课程所需要的实验室参数进行排课。参数包括①作者简介:张宇(1980—),女,汉,江苏徐州人,硕士,助理实验师,研究方向:实验技术与管理。DOI:10.16661/ki.1672-3791.2016.20.144高校实验室排课系统算法设计浅析①张宇(徐州工程学院管理学院 江苏徐州 221008)摘 要:为提高高校实验室的综合利用率、减轻其管理人员的工作量,更为实现排课周延、选课方便、上课精准的目标,有必要并且迫切需要利用实验室信息管理系统来进行排课,以系统自动排课代替传统手工排课。该文重点分析基于实验室信息管理系统的排课算法设计,阐述设计原则,提出关键问题,探讨可行性和有效性。关键词:排课算法 设计原则 算法流程中图分类号:TP31文献标识码:A 文章编号:1672-3791(2016)07(b)-0144-02科技资讯2016 NO.20SCIENCE & TECHNOLOGY INFORMATION学 术 论 坛

排课冲突检测的设计及实现

排课冲突检测的设计及实现

摘 要:排课是高校一项重要而繁琐的教务工作,使用计算机排课是必然的选择,在排课系统中冲突检测算法的设计是关键,目前对于上课时段重叠、周次自由设置的排课冲突检测研究较少。结合宁波电大课表编排的特点,提出了降低问题空间纬度进行冲突检测的算法,该算法在实际使用中有较好的效果。

关键词:排课;冲突检测

0 引言

电大系统生源的种类较多,有高职生、脱产成教学生、在职开放生、在职研究生等,各类学生对上课时间有不同的要求,加上各门课程不同的教学需求,因此电大与普通高校的排课有所不同,以宁波电大为例,排课有下列特点:

(1)上课时段有重叠,现有的上课时段有8个:上午1-2节、上午3-4节、上午1-4节、下午5-6节、下午5-7(13:00开始)节、下午5-7节(13:40开始)、晚上,另外还有非以上情况的自由设置时段。在上述时段中,上午1-4节与上午另外两个时段有重叠,下午的3个时段也有重叠。 (2)上课周次设置灵活,周次设置不是普通高校课表中的单周、双周和全周3种情形,而是形如“1,3-8”的周次序列,一个课程安排(以下简称课元)的上课周次可以自由设置。

(3)同一班级同一课程可能由多名教师在不同的时间和不同的教室授课,因此一个教学班的一门课程安排可能包括多个课元。

由于上述原因,为普通高校排课系统设计的冲突检测方法根本不适用,采用全自动排课很难表述这种特殊性要求,实现起来比较困难,因此,宁波电大排课系统采取半自动排课方式,课表编排手工输入,而每当更改排课元素时,系统自动进行排课冲突检测,当所有课表编排都没有冲突时,所得课表就是一份没有冲突的有效课表。

1 排课冲突检测算法设计

1.1 排课冲突介绍

排课问题是满足教学计划和各种约束条件的组合规划问题,约束条件就是要避免课元的各排课元素之间存在冲突,排课元素包括课程、时间、教师、教室和班级,在冲突检测中,必须要满足的基本约束条件有:①教师不冲突,同一时间,一个教师只能给一个班级上课;②教室不冲突,同一时间,一个教室不能安排两门不同的课程;③班级不冲突,同一时间不能给同一班级安排两门不同的课程。

基于遗传算法的多校区排课系统的研究和实现

! /// 

—————————————————————————————————————————————————————————————————————————————————————————————————————一 。 

基于遗传算法的多校区排课系统的研究和实现★ 

0 引言 陈爱萍 . 田海梅 

(金陵科技学院信息技术学院,南京21 1169) 

摘要:对遗传算法进行初步研究,并针对多校区排课f"-I题,提出基于遗传算法的课表编排算法。该 算法根据课表编排的三种约束条件:基本硬约束、硬约束和软约束,确定课表编排过程中的 

一些关键因素.并给出排课过程中产生冲突的解决方案。通过对多校区教学现状的分析,实 现基于遗传算法的课表编排原型系统.并将该系统应用于实际排课过程,经理论和实践表 

明该系统具有良好的自适应性,且效率较高。 

关键词:遗传算法;课表;冲突;甩课;适应度 

随着高等教育制度的改革.高校招生规模不断扩 大.多校区办学、硬件资源相对缺乏,给教务管理工作 

提出了更高的要求:即必须以更快更准确的方式进行 信息管理。排课作为教务工作的重要环节,过程涉及校 

区、教师、教室、时间段等各项资源,以手工编排方式获 

得令人满意的课表较为困难。 (1)排课系统国内外发展现状 

七十年代中期。美国S.Eveo等人在SIAMJ.COM. PUTE杂志Ⅲ上发表了题为《关于时间表和多物流问题 

的复杂性》一文.首次论证了课表编排是NP完全问题. 将课表编排问题理论化 本文采用遗传算法进行课表 

编排,与传统的启发式优化搜索算法相比.遗传算法的 

主要本质特征在于群体搜索策略和简单的遗传算子 群体搜索使遗传算法得以突破邻域搜索的限制.可以 

实现整个解空间上的分布式信息探索采集和继承.遗 传算子仅仅利用适应值度量作为运算指标进行染色体 

的随机操作。降低了一般启发式算法在搜索过程中对 人机交互的依赖 这样就使得遗传算法获得了强大的 

全局最优解搜索能力、问题域的独立性、信息处理的隐 并行性、应用的鲁棒性、操作的简明性,是一种具有良 

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档