搜档网
当前位置:搜档网 › 基于遗传算法的自动排课系统毕业设计

基于遗传算法的自动排课系统毕业设计

基于遗传算法的自动排课系统毕业设计
基于遗传算法的自动排课系统毕业设计

基于遗传算法的自动排课系统毕业设计

第一章绪论

1.1排课系统研究背景

排课是学校教学管理中十分重要、又相当复杂的管理工作之一,其实质就是为学校所设置的课程安排时间和地点,从而使整个教学能够有计划有秩序的进行。迄今为止,对课程表的研究工作已经进行了长达四十多年之久,取得了丰硕的成果。但是,仍然存在许多不足之处,例如规模大、约束(条件)复杂以及规律不断变化等,因此课程表问题至今仍未完全解决。课程表的编排是一个涉及多种因素的组合规划问题,它要保证在课程安排中教师、学生、教室不能产生冲突(所谓冲突,就是将需上不同课程的两个或多个班安排在了同一时间、同一教室,或为同一教师在同一时间段安排了多门课程等情况),并且要满足教师的要求和资源限制等约束条件。

目前,国内的大部分学校仍然采用手工排课的方法。手工排课工作的主要手段是“摆牌”,就是在一个画有空课表的版面上将有课名的小牌摆在适当的位置上,边摆边观察,边调整,凭借经验将各门课摆在合理的位置上,最后形成一个有效的课程表。这种办法没有一定的规律,没有理论指导,更没有数据模型,具有很大的盲目性。所以,要为上千名学生和上百名教师安排出合理的课程表,往往需要花费教务处人员很多的时间,工作量大,排出的课程表不宜调整。

随着中国教育体制改革的不断深入,学生人数的不断上升,课程设置不断向深度和广度发展,手工排课的缺点就越来越突出。由于计算机具有运算速度快、处理能力强等特点,很自然地就进入到这一应用领域中。用计算机进行排课能够快速地得到满足约束条件的可行结果,具有排课时间短、省人力和质量高的优点,不但能使教务人员从繁杂的排课任务中解脱出来,而且对于推动教学的发展也起到非常重要的作用。

每个学期开学时,教务管理工作中的课程表安排问题,都是教务处面临的一

项艰巨任务。排课问题是一个非常棘手却又亟待解决的问题,通常都是使用传统的人工手动排课方法。手工排课不仅劳动强度大,而且排课效率低,很难排出一个让人满意的课程表。时间,教师,教室,班级,课程等限制问题更是难以解决,使用计算机进行自动排课已经成为近年来的热点话题。教学管理的信息化需要计算机辅助排课,而排课理论的研究和软件技术的成熟己为我们提供了计算机自动排课的重要手段,研究一种准确、高效、实用、自动化程度高的排课系统己经成为可能。

1.2排课系统国内外现状

排课问题是NP完全问题,许多学者分别在理论、启发式搜索技术应用求解、专家系统应用求解和遗传算法应用求解上作了很多研究。

国外从20世纪50年代末就对排课问题展开了研究。1963年Gotlieb在他的文章中提出了排课问题的数学模型[2],它标志着排课问题的研究正式跨越了科学的殿堂。之后,人们对排课问题的算法做了许多探索,但由于排课问题是NP完全问题,并且易受实际问题边界的影响,大多数求解结果都不够理想。Ferland[3]等人和吴金荣[4]把排课问题化成整数规划来解决,但计算量很大,其仅仅适用于规模很小的课表编排,对于大规模复杂的排课情况,至今没有一个切实可行的算法;何永太[5]和胡顺仁[6]等人试图用图论中的染色问题来求解排课问题,可惜图的染色问题本身也是NP完全问题。由于问题的复杂,许多文章利用启发式函数来解决排课问题,大多数启发方法都是模拟手工排课的过程来实现的。由于实际的排课问题存在各种各样的限制条件与特殊要求,对这些因素处理的好坏就显得尤为重要。

进入20世纪90年代,国外对排课问题的研究仍然非常活跃。如印度Vastapur 大学管理学院的Arabinda Tripathy、加拿大Montreal大学的Jean Aubin和JacqueSA Ferland以及Charles Fleutent等。Arabinda Tripathy的工作是针对以“人”为单位进行课表编排的。他运用拉格朗日松弛法和分支定界技术求解,这种方法的缺点是为了减少变量的个数,人为造成科目间的冲突。A.Tripathy还研究了研究生课表编排问题,他采用多重课组的方法来处理冲突(即根据学生选课的矛盾情况,将人数多的课程在一星期内开多次)。JacQuesA.Ferland等人则把排课问题分成两个子问题:时间表问题和分组问题。在时间表问题中,根据学生注册情况、教师和教室的可利用情况形成一个主时间表。对于选课人数较多的大课,一个星

期要分成几个时间段来上,分组问题就是将学生分给各时间段。两个问题相关联,通过惩罚因子来构造启发函数。他们研制的SAPHIR课程调度决策支持系统分为数据处理、自动优化、交互优化等几个模块。该系统解决矛盾的主要方法也是采用多重课组。

在国内,对于排课系统的研发,林漳希和林尧瑞1984年发表了该课题上的实验性研究成果。成形的系统有大连理工大学1998年推出的教学调度系统版本3.00和由清华大学计算机与信息管理中心开发的综合教务管理系统TISER。这些应用界面很友好的排课软件己经可以帮助排课人员大大提高工作效率。这些系统大多数都是模拟手工排课,以“班”为单位,只能在排课过程中辅助工作人员进行排课,并没有一套完善有效的自动排课算法。当人工输入的条件达到一定的限制程度时,软件运行就有可能出现死锁现象,使得系统的实际应用非常困难[19]。后期人工调整的工作量并不比重新排课的工作量小很多。一旦出现了这种现象,就要把所有的数据作废或者打乱重排,之前做的工作都付诸东流。高校的课程、教室、教师等因素都十分复杂,排课所需数据量也十分庞大,所以造成的时间、人力损失也非常巨大。

课程表问题又称时间表问题,是一个多因素的优化决策问题,也是组合规划中的典型问题,是NP完全的[1]。对于排课问题的解决,研究人员己经使用了各种不同的算法,但由于该问题的复杂性,所求解也只能是较为合理、较为满意的解。

随着人工智能的发展,特别是在计算智能领域的拓展,借鉴于生物界进化思想和遗传算法,由于其超强的并行搜索能力,以及在解决优化问题中表现出来的高度鲁棒性,它已经被广泛应用于各个领域。目前,很多研究人员已使用遗传算法来求解排课问题,如文献[20]使用遗传算法优化教室的合理利用,文献[21]的用自适应的遗传算法求解大学课表安排问题,文献[22]的基于遗传算法排课系统的设计与实现等等。这些应用说明,使用遗传算法来解决排课问题,其结果还是令人较为满意的。

教学排课问题是学校每个排课人员最头痛的问题。短时间内没有一个方法来达到学校教师满意的结果。其最大的困难是硬件资源的限制。排课人员在硬件资源兼顾的条件下难于短时间内排出教师满意的课表。

“穷举法”可将所有的方式列出然后找出最佳解,但成本太高,时间太长。如一个星期有n个时段可排课,有m位教师需要参与排课.平均每位教师一个星期要上i堂课。其排课的组合数有nm*i次。可见穷举法的复杂度有多高。

遗传算法是一种通过模拟自然进化过程搜索最优解的方法。本文试图以遗传算法来实现排课问题的最佳解。

本课题研究的目的就是实现基于遗传算法的排课系统,并在VB下具体实现,满足日常需求。

1.3排课常用算法比较

1.3.1贪心算法

贪心法(greedy method)是一种改进了的分级处理方法,逐步构造最优解。它从问题的某一个初始解出发,在一定的标准下做出一系列的贪心选择(选择一旦做出,就不可再更改),即当前状态下看上去最优的选择.逐步逼近给定的目标.以尽可能快的速度求得更好的解当达到算法中的某一步不能再继续前进时则停止。贪心算法的核心是在所选择的策略中,选一个权值最优的策略作为当前策略。因此贪心算法的好坏主要决定于权值的确定。

在排课系统中,贪心算法是从排课问题的某一初始状态出发.依据给出的贪心策略朝最终排好全部课程这个目标前进一步,判断是否可以求出可行解的一个解元素.如果可以则继续依据贪心策略向给定目标前进.求出下一个解元素。直到前进不能再继续时停止。最后由所有得到的解元素组成问题的一个可行解。此时算法结束。

贪心算法的缺点在于解的效果比较差.而最大优势在于极低的时间复杂度。能做到某种意义上的局部最优。它具有不可后撤性,可以有后效性.一般情况下不满足最优化原理。并且不适用于解决可行性问题.仅适用于较容易得到可行解的最优性问题。为了尽量减小贪心算法带来的副作用。使得最后得到的解更接近最优解。可以在算法尽可能多的地方使用有效的最优化算法(如动态规划)。贪心算法还可以为搜索算法提供较优的初始界值。

1.3.2回溯算法

回溯算法也叫试探法.它是一种系统地搜索问题的解的方法,可以被认为是一个有过剪枝的DFS(深度优先搜索)过程。它按优先条件向前搜索,以达到目标,但当搜索到某一步时.发现原先的选择并不优或达不到目标。就退回一步重新选择。而满足回溯条件的某个状态点称之为回溯点。具体到计算机智能排课系统中,

选优条件即为排课数学模型中的约束条件群(需求集中的元素特征与资源集中的元素特征相互作用形成的数学关系)若不满足约束条件群,该选择即为不优或达不到目标当遍历该步骤的所有可能仍未满足约束条件群.则该状态满足了回溯条件,该状态点即为回溯点。

回溯算法解决排课问题时首先要描述解的形式,定义一个解空间.它包含问题的所有解:其次构造状态空间树,这棵树的每条完整路径都代表了一种解的可能:再次是构造约束函数,通过描述合法解的一般特征用于去除不合法的解,从而避免继续搜索出这个不合法解的剩余部分:然后通过深度优先搜索完成回溯。

①设置初始化的方案(给变量赋初值,读入已知数据等);

②变换方式去试探。若全部试完则转⑦;

③判断此法是否成功(通过约束函数),不成功则转②;

④试探成功则前进一步再试探;

⑤正确方案还未找到则转②;

⑥已找到一种方案则记录并打印;

⑦退回一步(回溯),若未退到根则转②;

⑧已退到根节点则排课结束或打印无排课结果。

回溯法适用于解的组合数相当大但仍然有限的那一类问题。它的一个有重要的特性是在搜索执行的同时产生解空问。在搜索期间的任何时刻.仅保留从开始节点到当前节点的路径。因此.回溯算法的空间需求为一个常数,即从开始节点起最长路径的长度。这个特性非常重要.因为解空间的大小通常是最长路径长度的指数或阶乘。所以如果要存储全部解空间的话。再多的空间也不够用。其缺点是时间复杂度较大.因此在采用时还需要谨慎。最好是和其它的算法结合使用。

1.3.3遗传算法

遗传算法是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法,它是有美国Michigan大学J.Holland教授于1975年首先提出来的,并出版了颇有影响的专著《Adaptation in Natural and Artificial Systems》,GA这个名称才逐渐为人所知,J.Hilland教授所提出的GA通常为简单遗传算法(SGA)。

遗传算法是从代表问题可能潜在的解集的一个种群(population)开始的,而一个种群则由经过基因(gene)编码的一定数目的个体(individual)组成。每个

个体实际上是染色体(chromosome)带有特征的实体。染色体作为遗传物质的主要载体,即多个基因的集合,其内部表现(即基因型)是某种基因组合,它决定了个体的形状的外部表现,如黑头发的特征是由染色体中控制这一特征的某种基因组合决定的。因此,在一开始需要实现从表现型到基因型的映射即编码工作。由于仿照基因编码的工作很复杂,我们往往进行简化,如二进制编码,初代种群产生之后,按照适者生存和优胜劣汰的原理,逐代(generation)演化产生出越来越好的近似解,在每一代,根据问题域中个体的适应度(fitness)大小挑选(selection)个体,并借助于自然遗传学的遗传算子(genetic operators)进行组合交叉(crossover)和变异(mutation),产生出代表新的解集的种群。这个过程将导致种群像自然进化一样的后生代种群比前代更加适应于环境,末代种群中的最优个体经过解码(decoding),可以作为问题近似最优解。

遗传算法是一类可用于复杂系统优化的具有鲁棒性的搜索算法,与传统的优化算法相比,主要有以下特点:

1、遗传算法以决策变量的编码作为运算对象。传统的优化算法往往直接决策变量的实际植本身,而遗传算法处理决策变量的某种编码形式,使得我们可以借鉴生物学中的染色体和基因的概念,可以模仿自然界生物的遗传和进化机理,也使得我们能够方便的应用遗传操作算子。

2、遗传算法直接以适应度作为搜索信息,无需导数等其它辅助信息。

3、遗传算法使用多个点的搜索信息,具有隐含并行性。

4、遗传算法使用概率搜索技术,而非确定性规则。

根据其算法特点,遗传算法非常适合于应用到排课处理中。具体应用方式将在后面设计部分详细说明。

1.4遗传算法国内外现状

进入90年代,遗传算法迎来了兴盛发展时期,无论是理论研究还是应用研究都成了十分热门的课题。尤其是遗传算法的应用研究显得格外活跃,不但它的应用领域扩大,而且利用遗传算法进行优化和规则学习的能力也显著提高,同时产业应用方面的研究也在摸索之中。此外一些新的理论和方法在应用研究中亦得到了迅速的发展,这些无疑均给遗传算法增添了新的活力。遗传算法的应用研究已从初期的组合优化求解扩展到了许多更新、更工程化的应用方面。

随着应用领域的扩展,遗传算法的研究出现了几个引人注目的新动向:一是

基于遗传算法的机器学习,这一新的研究课题把遗传算法从历来离散的搜索空间的优化搜索算法扩展到具有独特的规则生成功能的崭新的机器学习算法。这一新的学习机制对于解决人工智能中知识获取和知识优化精炼的瓶颈难题带来了希望。二是遗传算法正日益和神经网络、模糊推理以及混沌理论等其它智能计算方法相互渗透和结合,这对开拓21世纪中新的智能计算技术将具有重要的意义。三是并行处理的遗传算法的研究十分活跃。这一研究不仅对遗传算法本身的发展,而且对于新一代智能计算机体系结构的研究都是十分重要的。四是遗传算法和另一个称为人工生命的崭新研究领域正不断渗透。所谓人工生命即是用计算机模拟自然界丰富多彩的生命现象,其中生物的自适应、进化和免疫等现象是人工生命的重要研究对象,而遗传算法在这方面将会发挥一定的作用,五是遗传算法和进化规划(Evolution Programming,EP)以及进化策略(Evolution Strategy,ES)等进化计算理论日益结合。EP和ES几乎是和遗传算法同时独立发展起来的,同遗传算法一样,它们也是模拟自然界生物进化机制的智能计算方法,即同遗传算法具有相同之处,也有各自的特点。目前,这三者之间的比较研究和彼此结合的探讨正形成热点。

1991年D.Whitey在他的论文中提出了基于领域交叉的交叉算子(Adjacency based crossover),这个算子是特别针对用序号表示基因的个体的交叉,并将其应用到了TSP问题中,通过实验对其进行了验证。

D.H.Ackley等提出了随即迭代遗传爬山法(Stochastic Iterated Genetic

Hill-climbing,SIGH)采用了一种复杂的概率选举机制,此机制中由m个“投票者”来共同决定新个体的值(m表示群体的大小)。实验结果表明,SIGH与单点交叉、均匀交叉的神经遗传算法相比,所测试的六个函数中有四个表现出更好的性能,而且总体来讲,SIGH比现存的许多算法在求解速度方面更有竞争力。

H.Bersini和G.Seront将遗传算法与单一方法(simplex method)结合起来,形成了一种叫单一操作的多亲交叉算子(simplex crossover),该算子在根据两个母体以及一个额外的个体产生新个体,事实上他的交叉结果与对三个个体用选举交叉产生的结果一致。同时,文献还将三者交叉算子与点交叉、均匀交叉做了比较,结果表明,三者交叉算子比其余两个有更好的性能。

国内也有不少的专家和学者对遗传算法的交叉算子进行改进。2002年,戴晓明等应用多种群遗传并行进化的思想,对不同种群基于不同的遗传策略,如变异概率,不同的变异算子等来搜索变量空间,并利用种群间迁移算子来进行遗传信息交流,以解决经典遗传算法的收敛到局部最优值问题。

2004年,赵宏立等针对简单遗传算法在较大规模组合优化问题上搜索效率不高的现象,提出了一种用基因块编码的并行遗传算法(Building-block Coded Parallel GA,BCPGA)。该方法以粗粒度并行遗传算法为基本框架,在染色体群体中识别出可能的基因块,然后用基因块作为新的基因单位对染色体重新编码,产生长度较短的染色体,在用重新编码的染色体群体作为下一轮以相同方式演化的初始群体。

2005年,江雷等针对并行遗传算法求解TSP问题,探讨了使用弹性策略来维持群体的多样性,使得算法跨过局部收敛的障碍,向全局最优解方向进化。

1.5研究目标及内容

1.5.1研究目标

对遗传算法进行研究,进而将其应用到排课系统中,利用计算机来模拟手工排课工作,可以抽象问题中的各个要素,数学表达各种约束条件,并根据课表的组织形式和普遍存在的规律,缩减了问题空间的搜索范围,有效组织了排课知识,使其在一定程度上呈现智能化。

1.5.2研究内容

学校排课问题本质上是时间表问题的一类典型应用实例,是为了解决课程安排对时间和空间资源的有效利用并避免相互冲突。在排课过程中需要考虑课程教学效果、满足教师特殊要求等多项优化指标,将各门课程安排到相应的时间和教室。

1)排课问题具体研究的内容如下:

(1)遗传算法的理论

(2)排课问题的建模

(3)遗传算法在自动排课中的应用方法

(4)排课算法的实现

2)排课问题具体研究的重点和难点如下:

(1)深入理解遗传算法理论。

(2)排课问题的建模,包括排课问题的要素以及排课过程的约束条件等。

(3)遗传算法在排课问题中的应用方法,包括基因编码、初始种群的产生、适应度函数、控制参数的设定等。

(4)排课问题本身的求解规模过于庞大,各要素之间的关联层出不穷,

以及人们对多个课表优劣评定的准则存在差异,在求解排课问题的

过程中,会面对难以穷尽的组合和多个模糊目标的优化问题,实际

解决时会受到一些制约。

3)排课问题具体研究方法如下:

采用循序渐进的方法进行研究,首先必须要学习遗传算法,在学习的基础上进行深入研究,对现行的遗传算法进行一些改进,然后对排课

问题进行建模,分析排课问题的要素和约束条件。最后将遗传算法应用

到排课系统中,提出一种具体的应用方法并实现排课算法。研究过程中

要借助于大量的文献资料,必须要先学习理论,在理论的基础上再进行

实践。

4)排课问题具体研究步骤如下:

(1)大量阅读关于遗传算法的相关文献,理解算法原理。

(2)研究排课问题,对排课问题进行建模。

(3)对遗传算法进行一些改进。

(4)提出遗传算法在自动排课中的应用方法。

(5)进行系统的概要设计和详细设计。

(6)编码实现排课算法。

(7)对系统进行测试和运行。

(8)对系统进行回归测试和功能完善。

5)排课问题研究用到的工具与框架如下:

(1)MyEclipse6.0;

(2)开发的环境:JDK1.5;

(3)UML建模工具:PowerDesigner12.5;

(4)MS SQL Server 2000;

1.5.3研究意义

排课系统是教学管理系统中的一项重要内容,排课结果的优劣直接影响到学校的正常教学秩序,甚至影响教学质量。排课管理的主要任务是把全校各年级所开设的课程进行汇总,然后根据教学计划和教学资源制订全校各班级的课程表,优化配置各种教学资源,使教学工作科学、高效顺利的进行。研究的意义就在于设计一个好的智能排课系统,从而减轻了教学管理工作者的劳动强度,提高了工作效率,规范了教学管理工作流程。

自动排课系统设计与实现论文

摘要:制定一个学校的排课计划是一项非常耗时且相当辛苦的工作,而且它还得由有学校排课工作经验或者这方面知识的人才能做好。在一所高校时一个课程表的制定是一个难题,因为在有关课程表的问题上有很多的限制条件得考虑,还有大量的数据空间被挖掘,即便你的输入数据量并不是实际意义上的大批量。 课程编排系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以自动课程编排系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 本系统经过测试,运行稳定,可投入使用。 关键字:排课管理,VB,数据库

Abstract:Formulates a school platoon class plan is an item consumes extremely when also the quite laborious work, moreover it also must by have the school row of class work experience or this aspect knowledge talented person can complete. When a university a class schedule formulation is a difficult problem, because has the very many limiting condition in the related class schedule question to result in the consideration, but also has the massive data space to excavate, even if your input data quantity is not in the practical significance mass. The curriculum arranges the system is a school essential part, Its content said regarding the school policy-maker and the superintendent all very important, Therefore the automatic curriculum arranges the system to be supposed to be able to provide the sufficient information and the quick inquiry method for the user. But the people have since always used the traditional artificial way management document file, this management way has many shortcomings, For example: The efficiency low, the secrecy is bad, Moreover the time one is long, Will produce the massive documents and the data, This regarding the search, the renewal and the maintenance has all brought many difficulties. Along with science and technology unceasing enhancement, The computer science is mature day after day, Its formidable function had profoundly known for the people, t entered the human society each domain and is playing the more and more vital role. This system after the test, the movement is stable, may put into the use. Key words: Curriculum management, VB, database

高校自动排课系统毕业设计

自动排课系统 摘要:制定一个学校的排课计划是一项非常耗时且相当辛苦的工作,而且它还得由有学校排课工作经验或者这方面知识的人才能做好。在一所高校时一个课程表的制定是一个难题,因为在有关课程表的问题上有很多的限制条件得考虑,还有大量的数据空间被挖掘,即便你的输入数据量并不是实际意义上的大批量。 课程编排系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以自动课程编排系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 本系统经过测试,运行稳定,可投入使用。 关键字:排课管理,VB,数据库

Abstract:Formulates a school platoon class plan is an item consumes extremely when also the quite laborious work, moreover it also must by have the school row of class work experience or this aspect knowledge talented person can complete. When a university a class schedule formulation is a difficult problem, because has the very many limiting condition in the related class schedule question to result in the consideration, but also has the massive data space to excavate, even if your input data quantity is not in the practical significance mass. The curriculum arranges the system is a school essential part, Its content said regarding the school policy-maker and the superintendent all very important, Therefore the automatic curriculum arranges the system to be supposed to be able to provide the sufficient information and the quick inquiry method for the user. But the people have since always used the traditional artificial way management document file, this management way has many shortcomings, For example: The efficiency low, the secrecy is bad, Moreover the time one is long, Will produce the massive documents and the data, This regarding the search, the renewal and the maintenance has all brought many difficulties. Along with science and technology unceasing enhancement, The computer science is mature day after day, Its formidable function had profoundly known for the people, t entered the human society each domain and is playing the more and more vital role. This system after the test, the movement is stable, may put into the use. Key words: Curriculum management, VB, database

自动排课系统的设计与实现[1]

目录 摘要............................................................................................................................. I 第1章绪论 (1) 1.1系统开发背景 (1) 1.2国内外的研究现状 (1) 1.3系统解决的主要问题 (3) 1.4本文的主要工作 (3) 1.5本文的组织结构 (3) 第2章需求分析 (5) 2.1系统概述 (5) 2.1.1总体业务描述 (5) 2.1.2系统的目标和解决的问题 (5) 2.1.3系统的开发模式 (7) 2.2系统需求问题描述 (9) 2.2.1功能性需求 (9) 2.3.2系统非功能性需求 (12) 第3章系统构架设计 (14) 3.1构架的目标和约束 (14) 3.2构架设计 (15) 3.2.1系统总体架构 (15) 3.2.2系统功能构架 (16) 3.2.3系统技术构架 (17) 3.2.4系统安全构架 (18) 第4章系统详细设计 (20) 4.1 系统建模 (20) 4.2 系统数据库设计 (24) 4.2.1生成数据库表 (24) 4.2.2数据分析 (32) 4.2.3数据库管理技术 (34) 第5章计算机排课系统的实现 (35) 5.1系统总体实现 (35) 5.1.1数据录入模块的设计与实现 (38) 5.1.2报表模块的设计与实现 (43) 5.1.3用户管理模块的设计与实现 (45) 5.2教学计划的关键实现 (48) 5.2.1算法描述 (49) 5.2.2教学计划算法过程 (49) 5.3排课算法的关键实现 (51) 第6章总结与展望 (66) i

基于遗传算法的自动排课系统毕业设计

摘要 随着科学技术和社会信息技术的不断提高,计算机科学的日渐成熟,其强大的功能已为人们深刻认识,它在人类社会的各个领域发挥着越来越重要的作用,给人们的生活带来了极大的便利,成为推动社会发展的首要技术动力。排课是学校教学管理中十分重要、又相当复杂的工作之一。解决好教学工作中的排课问题对整个教学计划的进行,有着十分重要的意义。首先对排课的已有算法作了相关的调查研究,决定采用遗传算法。通过设计实现基于遗传算法的自动排课系统,研究了遗传算法在排课系统中的应用。 关键词:遗传算法、自动排课、Java。

Abstract Along with science technical and community information technical increases continuously, calculator science is gradually mature, its mighty function has behaved deep cognition, and it has entered the human social each realm erupts to flick the more and more important function, bringing our life biggest of convenience. Curriculum arrangement is an important and complicated working in school,so solving the problem is of great importance for teaching programming.Investigated and studied the algorithm existed, determine that adoptgenetic algorithm. ThroughDesign Implementation theAuto CourseArrangementManagement System Base onGenetic Algorithm, researched the application of genetic algorithmin theCourseArrangementManagement System. Keywords: Genetic Algorithm Auto Course Arrangement ManagementJava.

一种基于遗传算法的Kmeans聚类算法

一种基于遗传算法的K-means聚类算法 一种基于遗传算法的K-means聚类算法 摘要:传统K-means算法对初始聚类中心的选取和样本的输入顺序非常敏感,容易陷入局部最优。针对上述问题,提出了一种基于遗传算法的K-means聚类算法GKA,将K-means算法的局部寻优能力与遗传算法的全局寻优能力相结合,通过多次选择、交叉、变异的遗传操作,最终得到最优的聚类数和初始质心集,克服了传统K-means 算法的局部性和对初始聚类中心的敏感性。关键词:遗传算法;K-means;聚类 聚类分析是一个无监督的学习过程,是指按照事物的某些属性将其聚集成类,使得簇间相似性尽量小,簇内相似性尽量大,实现对数据的分类[1]。聚类分析是数据挖掘 技术的重要组成部分,它既可以作为独立的数据挖掘工具来获取数据库中数据的分布情况,也可以作为其他数据挖掘算法的预处理步骤。聚类分析已成为数据挖掘主要的研究领域,目前已被广泛应用于模式识别、图像处理、数据分析和客户关系管理等领域中。K-means算法是聚类分析中一种基本的划分方法,因其算法简单、理论可靠、收敛速 度快、能有效处理较大数据而被广泛应用,但传统的K-means算法对初始聚类中心敏 感,容易受初始选定的聚类中心的影响而过早地收敛于局部最优解,因此亟需一种能克服上述缺点的全局优化算法。遗传算法是模拟生物在自然环境中的遗传和进化过程而形成的一种自适应全局优化搜索算法。在进化过程中进行的遗传操作包括编码、选择、交叉、变异和适者生存选择。它以适应度函数为依据,通过对种群个体不断进行遗传操作实现种群个体一代代地优化并逐渐逼近最优解。鉴于遗传算法的全局优化性,本文针 对应用最为广泛的K-means方法的缺点,提出了一种基于遗传算法的K-means聚类算法GKA(Genetic K-means Algorithm),以克服传统K-means算法的局部性和对初始聚类中心的敏感性。用遗传算法求解聚类问题,首先要解决三个问题:(1)如何将聚类问题的解编码到个体中;(2)如何构造适应度函数来度量每个个体对聚 类问题的适应程度,即如果某个个体的编码代表良好的聚类结果,则其适应度就高;反之,其适应度就低。适应度函数类似于有机体进化过程中环境的作用,适应度高的个体 在一代又一代的繁殖过程中产生出较多的后代,而适应度低的个体则逐渐消亡;(3) 如何选择各个遗传操作以及如何确定各控制参数的取值。解决了这些问题就可以利

中小学辅助排课系统的设计及实现

word文档整理分享 中小学辅助排课系统的设计与实现 贺荣 摘要:编排课表是中小学教学管理中一项重要而又复杂的工作。它通过合理地安排时间、教师、课程、班级四大要素之间的关系,使全校各个班级一周内的每节课,都有合适的教师及课程与之对应。 针对我校自身的校务情况,在研究过当前一些优秀的排课算法的基础上,我研究出一套基本可行的排课程序。它可先根据教务人员输入的约束条件进行设置,通过逐步筛选细化,将特定的课自动安排在最合适的时间段中安排到最优级的班级中。如果自动排课尚有不成功的地方,会在课表显示区将该课程以红色显示进行警告。通过这种直观的辅助手段,教务人员再配合进一步手动调整,最终调整出满意的课表。 关键词:排课系统自动手动辅助 参考资料

一、排课系统的开发背景 随着教育事业的不断发展,学校对教师课程安排的复杂度不断增加,如何将一个学校各个学科每天的课程安排与教室资源的分配合理化是摆在每一个教务工作人员面前的一个难题。传统的人工排课方式不仅工作繁琐,工作量大,而且还很容易出现错误。因此,计算机软件技术应用于学校的课程安排是发展的必然。充分发挥计算机自身的优势,将大量复杂的判断与运算交给计算机做,是真正意义上的人脑的“减负”。教师设置好学校基本情况及排课要求,让计算机自动排出课程表,适度调课后的课表就能满意地应用于新的学期。 早在上世纪60年代末,Grotlieb.C.C教授就对课程表问题进行了形式化描述[1]。排课表这样的时间表问题(TTP: T ime-Table-P rob lem ) , 是典型的组合优化和不确定性的调度问题[ 2, 3 ] , 并且已被证明是NP完全问题,有其自身固有的数学模型,即课表问题存在解,并且能找到解[4]。排课表问题的难度在于:它是一个多元受限的问题(受限于课程、时间、班级、教师、教室排课五要素) , 如果必须满足所有的约束条件(而这些条件通常是相互矛盾的) , 则极有可能找不到完整解[ 5 ]; 这也是为什么迄今为止还几乎没有完全自动生成课表系统的软件应用于实际,因为多数的排课效果好的软件还需后期手动辅助排课进行完善,而那些完全自动生成的排课软件,通常会以降低约束条件的满足程度为代价(比如不能均匀分布课程、主副科安排时间段不很合理等)。 目前, 解决课表问题的方法有: 模拟手工排课法[ 6,7 ] , 图论方法, 拉格朗日松弛法, 二次分配型法等多种方法[ 8, 9 ]。在以往的教学管理中,课表编排在许多学校只能通过人工或人工模拟的方式生成。但是,伴随着各类学科范围的不断扩大,各学科科目逐渐增多,以至于众多的教师和学生、庞大的课时、复杂的班级信息令学校的教务安排人员无法高效、合理地制定出相应的排课计划。这就促使我们的教务安排人员必须采用一些辅助的手段来帮助自己。因此,计算机辅助排课成了现代排课的需要,相应的排课算法成了人们探讨的主要问题。目前常见的排课算法有贪心算法、遗传算法、回溯算法等[10]。研究并使用一种好的算法不仅可以缩短排课时间,提高排课效率,更可以让使用者得心应手,提高教学效果。

自动排课系统的设计与实现毕业论文_设计说明

目录 摘要 (1) 第1章绪论 (1) 1.1系统开发背景 (1) 1.2国内外的研究现状 (1) 1.3系统解决的主要问题 (3) 1.4本文的主要工作 (3) 1.5本文的组织结构 (4) 第2章需求分析 (5) 2.1系统概述 (5) 2.1.1总体业务描述 (5) 2.1.2系统的目标和解决的问题 (6) 2.1.3系统的开发模式 (7) 2.2系统需求问题描述 (10) 2.2.1功能性需求 (10) 2.3.2系统非功能性需求 (13) 第3章系统构架设计 (15) 3.1构架的目标和约束 (15) 3.2构架设计 (16) 3.2.1系统总体架构 (16) 3.2.2系统功能构架 (17) 3.2.3系统技术构架 (19) 3.2.4系统安全构架 (20) 第4章系统详细设计 (22) 4.1 系统建模 (22) 4.2 系统数据库设计 (26) 4.2.1生成数据库表 (26) 4.2.2数据分析 (36) 4.2.3数据库管理技术 (37) 第5章计算机排课系统的实现 (38) 5.1系统总体实现 (38) 5.1.1数据录入模块的设计与实现 (43) 5.1.2报表模块的设计与实现 (48) 5.1.3用户管理模块的设计与实现 (52)

5.2教学计划的关键实现 (55) 5.2.1算法描述 (55) 5.2.2教学计划算法过程 (56) 5.3排课算法的关键实现 (58) 第6章总结与展望 (74) 参考文献 (75) 致谢 (77)

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

排课系统数据库设计

` JIANGXI AGRICULTURAL UNIVERSITY 本科课程实训 ; 题目:关于学生排课系统的数据库设计 学院:软件学院 姓名:肖力谢果 学号: ~ 专业:软件工程 班级:软件1001 指导教师:黄欣

2011年12月

引言: 由于当下大学学校班级及专业较多,我们学校的实用的帮助班级排课的一个系统也有迫切需求。基于用SQL Server设计的数库的排课系统也有很大的需要,在本实训作业中,将会针对该实际情况,对我校江西农业大学的学生上课排课系统的数据库进行设计。 该设计工作由双人合作的形式完成,对一个学期以来数据库系统概论的学习进行巩固和联系。该排课系统主要设计流程工作大概分为三个阶段:需求分析,概念结构设计,逻辑结构设计,也将设计的物理结构和数据库实施维护从略讲述,着重在需求分析上的收集数据形成实体及其联系的数据字典完成,在需求分析的基础上完成数据流图的基本设计;在概念结构设计上完成数据的抽象形成各子系统的E-R图,最后在解决冲突的分析下完成基本总实体-联系(E-R图);在逻辑结构设计阶段中完成数据的抽象及实体的形成,实体的规范分析及完整性约束,以及设计阶段的有关触发器的创建分析和实现……最后简要对数据库设计的步骤的物理设计和实施阶段简要概述。 课程设计为实验周两天完成,使用流行的SQL Server 2005数据库系统完成基本设计工作,通过数据库管理系统(DBMS)、T/SQL基本语句实现数据库表的创建,表的完整性约束,表的视图及触发器的创建,基本工作都按照实训题要求基本完成。

一、需求分析 需求分析是数据库设计的必要和首要设计阶段,将会影响以后数据库设计的延续和质量,需求分析方法也很多,最重要是形成有实用价值的实际性的数据字典和数据流图。在该排课系统的需求分析阶段,主要是通过询问和自己所掌握的关于该系统的数据联系方式和工作方式,形成了关于该系统的数据字典和数据流图。 1.1需求表述 基本功能描述 排课系统的数据库设计主要完成工作有: 1、数据库管理员对数据的录入和相关完整性条件约束的建立, 2、数据库相关的触发器与存储过程对数据库中数据的联系的管理; 3、执行程序能够高效率地完成数据处理和调用; 4、能够通过DBMS建立一系列视图来更方便的操作数据库。 开发技术描述 开发工具:Microsoft SQL Server 2005 SQL Server 2005 是microsoft 公司推出的数据库管理系统,该版本继承了SQL Server 2000 版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 2000 电脑到运行Microsoft Windows XP 的大型多处理器的服务器等多种平台使用。本实验中最终将使用Microsoft SQL Server 2005数据库管理系统将我们设计的数据库实现。 1.2分析形成初步数据字典 数据字典(Data Dictionary,DD)是数据库设计需求分析阶段后通过科学的处理方法得到的该系统中各类数据描述的集合,也是进行详细数据收集和数据分析所获得的主要成果,它在数据库设计中占有恨重要的地位。 数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程5个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构,以下将把分析收集的数据及其结构列出:

高校排课系统开题报告

青岛农业大学 毕业论文(设计)开题报告 题目:青岛农业大学排课系统的设计与实现 姓名: 学院:理学与信息科学学院 专业:计算机科学与技术 班级: 学号: 指导教师: 2013 年 3 月 18 日

说明 一、有关说明 毕业论文(设计)题目确定后,学生应尽快征求导师意见,讨论题意与整个毕业论文(或设计)的工作计划,然后根据课题要求查阅、收集有关资料并编写研究提纲,主要由以下几个部分构成: 1.研究(或设计)的目的与意义。应说明此项研究(或设计)在生产实践上或对某些技术进行改革带来的经济、生态与社会效益。有的课题过去曾进行过,但缺乏研究,现在可以在理论上做些探讨,说明其对科学发展的意义。 2.国内外同类研究(或同类设计)的概况综述。在广泛查阅有关文献后,对该类课题研究(或设计)已取得的成就与尚存在的问题进行简要综述,只对本人所承担的课题或设计部分的已有成果与存在问题有条理地进行阐述,并提出自己对一些问题的看法。 3.课题研究(或设计)的内容。要具体写出将在哪些方面开展研究,要重点突出。研究的主要内容应是物所能及、力所能及、能按时完成的,并要考虑与其它同学的互助、合作。 4.研究(或设计)方法。科学的研究方法或切合实际的具有新意的设计方法,是获得高质量研究成果或高水平设计成就的关键。因此,在开始实践前,学生必须熟悉研究(或设计)方法,以避免蛮干造成返工,或得不到成果,甚至于写不出毕业论文或完不成设计任务。 5.实施计划。要在研究提纲中按研究(或设计)内容落实具体时间与地点,有计划地进行工作。 二、注意事项 1.开题报告的撰写完成,意味着毕业论文(设计)工作已经开始,学生已对整个毕业论文(设计)工作有了周密的思考,是完成毕业论文(设计)关键的环节。在开题报告的编写中指导教师只可提示,不可包办代替。 2.无开题报告者,不准申请答辩。 3.本表要用计算机填写,签字要手写,一式三份,本人、导师、所在学院(要原件)各一份。 4.学生可根据内容的多少调整表格的大小。

实验室排课系统的设计与实现教学内容

实验室排课系统的设 计与实现

实验室排课系统的设计与实现 作者计家瑞 指导教师赵会洋 [摘要] 为提高实验室的资源利用率,减轻管理人员的劳动强度,方便学生、实验室管理人员与教师之间的交互和沟通,系统提出了用计算机代替手工排课的方法,设计了一个利用计算机实现实验室排课的系统。通过对手工排课过程的调研与分析,设计出了实验室排课系统的功能结构,在此基础上,给出并利用回溯算法实现了实验室排课及课表的导出与打印等功能。实验结果表明,该方法具有很高的可行性和有效性。 [关键词] 导出与打印;自动排课;回溯算法 1.引言 自动排课是在传统人工排课经验的基础之上,利用计算机模拟人脑来选择合适的方案进行排课。许昌学院计算机科学与技术学院计算机机房承担着计算机科学与技术学院、软件学院的教学实验任务,由于近两年来学院的办学规模不断扩大,实验室的建设也在逐步发展。高质量的教学需要高效率的管理支持,随着开放式实验教学管理模式的改革和学院办公信息化项目的推广,传统的实验室人工管理模式已经不能满足我们工作学习的需求,无法有效合理的提高实验室资源的利用率。实验室自动排课系统的实施,不仅可以提高计算机机房的管理水平、教学质量,而且可以使实验室达到高效、有序、网络化的管理。 2.系统需求分析 排课是高等院校教学管理中一项重要而复杂的工作,自动排课算法是一个NP完全问题,集成了时间、空间的双重约束,从数学上来讲,排课问题是一个在时间、教师、学生和教室四维空间,以教学计划和各种特殊要求(如指定时间、指定教室、排课等级)为制约条件的组合规划问题,其实质是解决各个因素之间的冲突。 2.1 系统的功能分析 本系统的最终用户是学生、教师和管理员,处理要求如下所示。 (1)先排有指定要求的课程,指定要求包括指定教室和指定时间、只指定时间没有指定教室、只指定教室没有指定时间,最后对既没有指定时间又没有指定教室的课程进行安排。 (2)周五下午不能排课,排课时间为周一至周五,每天上午、下午各两节课,共十八个上课时间段。 (3)满足周课时要求。 (4)可根据使用用户的不同,将课表分为班级课表、教室课表、教师课表和总课表。 (5)管理员可以设置用户权限、用户初始密码及添加、删除用户。 (6)可分别将基本信息和课表信息导出到Word或者Excel。 (7)可打印基本信息、教学计划和课表信息。 (8)设置一个简易留言板,用户可以进行留言,管理员可以对留言板进行管理。

高校实验课排课系统的设计与研究

高校实验课排课系统的设计与研究 【摘要】为了充分利用实验室资源,提高实验室工作效率,本文设计了一个高校实验室排课系统。该系统利用Visual Basic作为开发语言,集高校实验课教学安排、实验课排课、实验室预约管理和实验课课表查询等功能为一体。系统实现了将专任教师、教授课程、上课地点这三个因素与上课时间的匹配问题,极大地优化了高校实验室资源分配。中国论文网/8/view-12933355.htm 【关键词】实验室;排课系统;Visual Basic 1 研究背景及现状 排课是高校实现教学任务顺利进行的前提。目前大学生数量与日剧增,高

校开设课程更加多元化,排课的难度变得越来远大。实验中心作为高校教学环境中重要的一环,其排课也面临着诸多问题[1]。传统手动排课多采用实验员制作表格的方式,专任教师到实验员处预约实验课程时间及地点,由实验员统一调度分配。当确定好实验课上课地点时,再由实验员通知专任教师。这种方法工作量巨大,繁琐,而且无法对整个实验中心的教室资源做整体分配,造成资源浪费。人工排课出现错误的几率极大,一旦出错,将导致实验教学任务无法顺利进行,无法维持正常的教学秩序,造成教学事故,影响教学质量[2]。 目前,已存在一些排课系统,如基于贪婪算法的排课系统[3],基于遗传算法的排课系统,人工智能排课系统[4]。这些排课系统都是针对高校基础课程的排课系统。实验课与理论课相比,具有实验课时少,上课时间零散,需按照实验项目授课等特殊性,因此,目前针对基础课的排课系统并不适用于实验课排

课。 本文针对实验课课程的特殊性,设计了一个排课系统。该系统将专任教师、教授课程、上课地点这三个因素与上课时间相匹配,充分地利用了实验室资源,实现了资源分配的最优化,极大地提高了实验室工作效率,调高了实验教学质量。 2 实验课排课系统的设计与实现 2.1 实验课排课系统的功能分析 高校实验课排课管理分为高校教务处、二级学院和实验中心三个层次。高校教务处负责下发每个学期的实验教学任务,二级学院负责审核和实验教学任务,实验中心负责实验课排课的具体安排和调度。根据高校实验课排课的管理模式,该排课系统主要分为以下几个模块:系统管理模块、教学任务准备模块、实验课程排课模块、实验室预约管理模块、实验课表查询模块、实验课工作量统计模块和冲突预警模块。各模块功能如下:

实验室排课管理系统毕业论文

实验室排课管理系统毕业论文 目录 摘要 ............................................................... I ABSTRACT .............................................................. II 1 引言 .. (1) 1.1 问题的提出及研究意义 (1) 1.2 国外研究现状 (1) 1.3 本文研究的目的和研究容 (2) 1.4 系统开发背景 (3) 2 系统总体概述 (4) 2.1 产品标识 (4) 2.2 产品描述 (4) 2.2.1系统属性 (4) 2.2.2项目背景 (4) 2.2.3运行环境 (4) 2.3 用户特点 (5) 2.4 用户约束 (5) 2.5 字义缩语及专有名词定义 (5) 2.6 系统开发工具介绍 (6) 2.6.1JAVA简介 (6) 2.6.2Java Service Page(JSP)简介 (6) 2.6.3SSH(Struts、Hibernate和Spring)简介 (7) 2.6.4SQLServer2005 简介 (8) 2.6.5MYECLIPSE 简介 (8) 2.6.6B/S模型简介 (8) 3 系统需求分析 (10) 3.1 系统的原始功能性需求 (10) 3.2 系统非功能性需求 (11) 3.2.1用户界面需求 (11) 3.2.2软硬件环境需求 (11)

3.2.3软件质量需求 (12) 3.2.4文档编写要求 (12) 3.3 可行性分析报告 (12) 3.3.1必要性分析 (12) 3.3.2技术可行性 (12) 3.3.3管理可行性 (13) 3.3.4经济可行性 (14) 3.3.5社会因素方面的可行性 (15) 3.3.6操作可行性 (15) 3.3.7可行性分析结论 (15) 3.4 系统组织和功能结构图 (16) 3.4.1用户组织结构图 (16) 3.4.2管理员功能结构图 (17) 3.4.3教师功能结构图 (18) 3.4.4学生功能结构图 (19) 3.5 用户业务流程图 (19) 3.5.1流程图的图形表示的意义 (19) 3.6 数据流程图 (22) 3.6.1流程图的图形表示的意义 (22) 3.6.2系统顶级数据流关联图 (23) 3.6.3系统总数据流程图 (24) 3.6.4基本信息管理子系统数据流程图 (25) 3.6.5排课管理子系统数据流程图 (27) 3.6.6学生选课子系统数据流程图 (28) 3.6.7留言管理子系统数据流程图 (29) 3.7数据字典 (30) 3.7.1数据项 (30) 3.7.2数据流 (32) 3.7.3数据存储 (33) 3.7.4处理逻辑 (34) 3.7.5外部实体 (35) 4 系统总体设计 (36) 4.1 系统总体架构 (36) 4.2 系统功能时序设计 (38) 4.3 系统设计标准与规 (38) 4.3.1系统开发规 (38) 4.3.2界面样式设计 (39) 4.3.3输入输出设计规 (39) 4.5 系统主要模块的详细设计 (40) 4.5.1系统框架设计模块 (40) 4.5.2排课系统后台管理模块 (42) 4.5.3排课系统前台显示 (43)

学生排课系统分析报告与设计

1研究背景 课程表是一个学校日常教学工作和其他各项活动的指挥调度表。它不仅是学生和教师上课的依据,对学校其他工作的统一安排也有直接影响。高校排课工作是执行教学计划、实现学校培养目标的重要一环,是学校教学教务管理工作中最基本而又非常重要的一项,它是学校建立稳定的教学秩序的最根本的保证,是学校贯彻教育方针、培养合格人才的具体体现,并对学生的学习效果和课堂的教学质量有直接的影响。它不仅可以从侧面反映出学校领导的办学思想,也能体现出学校教育教学管理的能力和水平。 课程表是地方高校开展教学活动的指令性文件。在地方高校的传统排课方式下,课表编排主要是靠手工完成的,排课人员需要花费大量的时间和精力,并且容易出错,同时手工操作也不能满足资源需求的经常变化。 当前地方高校普遍利用计算机进行自动排课,不但能使教务人员从繁杂的排课任务中解脱出来,提高教务管理工作效率,而且能改善教学管理质量,合理、高效地利用有限的教学资源,使学校的各种教学活动、教学管理及其它相关的工作能够有序、规地进行,维持正常的教学秩序,同时对推动教务管理的信息化起到非常重要的作用。由此出现了众多的计算机排课软件。 但是当前地方高校再采用计算机进行排课过程中,大多采用传统方法进行程序设计,把程序作为系统核心。系统中所使用的排课数据主要考虑了一般性排课原则,而对于不同学校的特点考虑不足,特别是学生层次的关注度不够。并且数据与程序结合过于紧密,程序的修改维护有很大难度,不便于系统扩充和升级,因此限制了系统的通用性。而且在发生特殊情形下,只能依赖于人工调整,虽然有很多地方高校先后购买过多个排课软件,但都不能圆满地解决课表编排的问题,造成了大量的浪费。同时课表编排问题涉及教师、教室、学生、课程及教学时间等多种因素的组合规划,具有规模大、约束条件复杂以及不断变化等特点,根据上文的分析,缺乏人性化,没有对学校的学生进行考虑是问题存在的原因。 2排课系统分析 2.1 排课系统业务描述 排课是每个学期都必须面临的一件繁重的日常教务工作,是为下学期教学工作能顺利组织实施的一个前提条件。排课管理是高校每个学期教学教务管理工作的一个主要容,是整个综合教学教务管理系统中必不可少的部分。排课也是一项复杂而精细的工作,需要考虑的因素很多,涉及到方方面面,归纳起来主要有五方面相互作用、相互关联的因素,即课程、教师、时间、班级以及教室。如何把各要素科学、规、高效地进行优化组合,以保证教学秩序的稳定,促进教学质量的提高,这是每所高校都面临的课题。本论文以理工大学排课为背景,对校院两级排课进行设计。 2.2排课业务流程 学院先制定各个专业的教学计划,根据教学计划的要求、实际招生人数、教师资源情况等,上报每学期要开设的课程,教务处审核学院上报的开课计划,审核通过后,根据学院上报的开课计划,将教室资源进行分配到各学院或者作为公用教室,由教务处对公共课程(包括公共英语、马列课、公共体育、计算机基础、高等数学等)进行分组分班处理,并对各公共课程教学班安排时间和教室,然后对各个专业的开课计划设置开始排课标志,由各学院在分配到各学院使用的教室资源中安排本学院专业课的上课时间和教室。其业务流程如下图所示: 2.3 排课原则 课程、时间、教师、班级、教室是排课的五大基本要素,排课实际上是对这五个组成要素进行优化组合,使之符合教育、教学规律,符合学生身心发展。编排者必须对这五要素的信息有较全面的了解: (1)课程包括课程名称、课程性质(如:学科基础课、专业必修课、专业选修课、公共必修课、通识教育课、实验课、实践课等)、总学时、理论学时、实验(实践)学时、周学时以及课程的授课方式(如:多媒体教学、普通教学、双语教学等)。 (2)时间包括每个学期的教学周数、每周上课的天数、每天上课的节次等。 (3)教师包校教师和外聘教师,公共课和专业课教师,教师的所在院系、职称、学历、进修情况等。(4)班级:所在院系、年级、专业、班级人数。 (5)各校区教室的楼房信息,如:所在校区、门牌号、所在楼层、教室容量、教室类型、所属部分情况。3排课系统管理

基于遗传算法的智能组卷策略的研究综述Word版

《基于遗传算法的智能组卷策略的研究》综述 姓名刘春晓 学号 2015216104 专业计算机技术 班级 3班 天津大学计算机科学与技术学院 2016年 6 月

基于遗传算法的智能组卷策略的研究综述 摘要随着计算机技术的日益发展和成熟,手工组卷已经不能满足现代的教学要求,组卷智能化在提高教学质量方面发挥着很重要的作用。文章对组卷策略进行了梳理,对比和总结,主要介绍了遗传算法的优点,从遗传算法的基本流程、编码方式、适应度函数和遗传算子方面进行了归纳。接着分析了目前智能组卷策略研究的不足和挑战,最后总结了未来的研究设想。 关键词智能组卷;遗传算法;适应度函数;遗传算子 1引言 在计算机技术发展飞速的今天,计算机应用已经慢慢的渗透到人类生活的方方面面,计算机的辅助教学功能也逐渐得到大家的重视。传统的手工组卷受到人为因素的干扰,导致考试的效率低下,组卷智能化已经成为不可或缺的一项研究。 近几年,智能优化算法倍受人们关注,如人工神经网络、遗传算法,为解决复杂问题提供了新的方法,并在诸多领域取得了成功。组卷问题是一个在一定约束条件下的多目标参数优化问题,针对传统的组卷算法具有组卷速度慢、成功率较低、试卷质量不高等缺点。 智能组卷算法在计算机辅导教学过程中之所以受到重视,是因为它把人工智能技术运用到了组卷中,能够智能的设计试卷的结构和内容,包括试卷的难易度,知识点,题型和题量等,使生成的试卷质量比较高。 遗传算法(Genetic Algorithm ,GA)基于达尔文的进化论和孟德尔的自然遗传学说,是通过模拟遗传选择和自然淘汰的生活进化的随机搜索和全局优化算法(张建国 2009:1)。由于该算法有智能的搜索技术和收敛性质,可以较好的满足智能组卷的要求。所以本系统选用遗传算法作为组卷算法,以试题章节、试题数量、试题知识点、试题题型、试题难度分布、试题曝光度、覆盖度、试题分数分配等约束为组卷条件,使试卷有更好的区分度。 基于遗传算法的智能组卷系统实现了组卷智能化,优化了其他组卷算法的不足,使教学更加自动化和公平化,提高了组卷效率。 2研究现状分析 在系统开发之前,应该首先选择适合本系统的组卷算法,组卷算法的选取对试卷的质量影响颇大。只有相对好的算法才能提高组卷的效率和成功率。组卷实质上就是在复杂的约束条件下的多目标求最优解的问题,保证试卷能够满足教学要求。随着计算机技术和人工智能理论的飞速发展,各种组卷策略层出不穷,选择适合的算法对系统运行有极其重要的作用。分析各种组卷算法的优缺点,找到最优的组卷算法是该系统开发的任务之一。这里我们就现阶段组卷算法进行分析和总结。 现阶段比较成熟的组卷算法有随机选取法、回溯试探法和遗传算法。随机选取法生成的试题重复率较高,难以达到预期效果。回溯试探法是一种有条件的深度优化法,对于状态类型和题量较小的题库系统而言,组卷成功率高,但占用内

基于java的教务排课系统论文

1 引言 1.1 开发背景 随着信息技术的飞速发展,各个行业的信息化势在必行。科技的进步大大地提高了生产率。作为高校,如何才能提高办学效率,更好地完成教学任务,跟上社会发展步伐,这是一个摆在教学工作者面前的一个迫切的问题。应用信息化来改造传统的教学管理模式是一个重要途径[1]。 近几年来,随着各高校办公自动化工作的推进,教务管理自动化也被摆上了日程。在教务工作中占有很大比重的一项就是每学期的课程表排定工作。由于教工、教室和设备的相对紧张,如何进行合理地安排和分配,从而充分利用教学资源是我们不得不面对的问题[2]。而人工进行排课不仅任务重,效率低,而且易出错,难于维护,想要排出一张各方面都满意的课表非常困难。并且随着高校规模的扩大手工排课的难度和工作量呈几何级数增长[3]。 在实际的应用中,很多研究者都提出了各种解决排课问题的方法,由于排课问题的复杂性,还没有找到有效的算法能获得NP完全问题的最优解。因此,如何运用近似算法和新的软件技术来降低排课问题的计算复杂度,仍然是颇具挑战性的研究方向[4]。 排课管理系统是利用数据库管理系统开发的一种应用系统,其开发主要包括数据库的建立,充分满足正常的题库管理的前提下,提供了多角度的题库信息查询和题库信息分析报表,使学校管理人员可以随时掌握学校的排课情况,进一步指导学校的教学。真正实现了业务一体化,为学校全方位的信息化管理奠定了基础[5]。 传统的人工排课使用手工操作存在许多弊端,如重复劳动严重、效率低下、且不能达到资源的最优化配置等,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。最令人担心的问题就是——出现教室资源冲突或教师资源冲突的情况,而且工作繁琐,工作量巨大,尤其是在给大学校园进行排课时出现的问题更多[6]。当前高校教务管理所涉及到的信息资料数量大、类型多,还可能带有大量的统计输出,同时学校规模的不断扩大和招生人数的逐年攀升导致传统的排棵手段已无法满足现代化管理的要求[7]。 在教学计划的不断完善和各高校校园网建立的大背景下,设计满足高校教务要

相关主题