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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
随着中国教育体制改革的不断深入,学生人数的不断上升,课程设置不断向深度和广度发展,手工排课的缺点就越来越突出。由于计算机具有运算速度快、处理能力强等特点,很自然地就进入到这一应用领域中。用计算机进行排课能够快速地得到满足约束条件的可行结果,具有排课时间短、省人力和质量高的优点,不但能使教务人员从繁杂的排课任务中解脱出来,而且对于推动教学的发展也起到非常重要的作用。
每个学期开学时,教务管理工作中的课程表安排问题,都是教务处面临的一项艰巨任务。排课问题是一个非常棘手却又亟待解决的问题,通常都是使用传统的人工手动排课方法。手工排课不仅劳动强度大,而且排课效率低,很难排出一个让人满意的课程表。时间,教师,教室,班级,课程等限制问题更是难以解决,使用计算机进行自动排课已经成为近年来的热点话题。教学管理的信息化需要计算机辅助排课,而排课理论的研究和软件技术的成熟己为我们提供了计算机自动排课的重要手段,研究一种准确、高效、实用、自动化程度高的排课系统己经成为可能。
课程表问题又称时间表问题,是一个多因素的优化决策问题,也是组合规划中的典型问题,是NP完全的[1]。对于排课问题的解决,研究人员己经使用了各种不同的算法,但由于该问题的复杂性,所求解也只能是较为合理、较为满意的解。
随着人工智能的发展,特别是在计算智能领域的拓展,借鉴于生物界进化思想和遗传算法,由于其超强的并行搜索能力,以及在解决优化问题中表现出来的高度鲁棒性,它已经被广泛应用于各个领域。目前,很多研究人员已使用遗传算法来求解排课问题,如文献[20]使用遗传算法优化教室的合理利用,文献[21]的用自适应的遗传算法求解大学课表安排问题,文献[22]的基于遗传算法排课系统的设计与实现等等。这些应用说明,使用遗传算法来解决排课问题,其结果还是令人较为满意的。
在国内,对于排课系统的研发,林漳希和林尧瑞1984年发表了该课题上的实验性研究成果。成形的系统有大连理工大学1998年推出的教学调度系统版本3.00和由清华大学计算机与信息管理中心开发的综合教务管理系统TISER。这些应用界面很友好的排课软件己经可以帮助排课人员大大提高工作效率。这些系统大多数都是模拟手工排课,以“班”为单位,只能在排课过程中辅助工作人员进行排课,并没有一套完善有效的自动排课算法。当人工输入的条件达到一定的限制程度时,软件运行就有可能出现死锁现象,使得系统的实际应用非常困难[19]。后期人工调整的工作量并不比重新排课的工作量小很多。一旦出现了这种现象,就要把所有的数据作废或者打乱重排,之前做的工作都付诸东流。高校的课程、教室、教师等因素都十分复杂,排课所需数据量也十分庞大,所以造成的时间、人力损失也非常巨大。
进入20世纪90年代,国外对排课问题的研究仍然非常活跃。如印度Vastapur大学管理学院的Arabinda Tripathy、加拿大Montreal大学的Jean Aubin和JacqueSA Ferland以及Charles Fleutent等。Arabinda Tripathy的工作是针对以“人”为单位进行课表编排的。他运用拉格朗日松弛法和分支定界技术求解,这种方法的缺点是为了减少变量的个数,人为造成科目间的冲突。A.Tripathy还研究了研究生课表编排问题,他采用多重课组的方法来处理冲突(即根据学生选课的矛盾情况,将人数多的课程在一星期内开多次)。JacQuesA.Ferland等人则把排课问题分成两个子问题:时间表问题和分组问题。在时间表问题中,根据学生注册情况、教师和教室的可利用情况形成一个主时间表。对于选课人数较多的大课,一个星期要分成几,通过惩罚因子来构造启发函数。他们研制的SAPHIR课程调度决策支持系统分为数据处理、自动优化、交互优化等几个模块。该系统解决矛盾的主要方法也是采用多重课组。
目前,国内的大部分学校仍然采用手工排课的方法。手工排课工作的主要手段是“摆牌”,就是在一个画有空课表的版面上将有课名的小牌摆在适当的位置上,边摆边观察,边调整,凭借经验将各门课摆在合理的位置上,最后形成一个有效的课程表。这种办法没有一定的规律,没有理论指导,更没有数据模型,具有很大的盲目性。所以,要为上千名学生和上百名教师安排出合理的课程表,往往需要花费教务处人员很多的时间,工作量大,排出的课程表不宜调整。
基于遗传算法的自动排课系统毕业设计
第一章绪论
1.1
排课是学校教学管理中十分重要、又相当复杂的管理工作之一,其实质就是为学校所设置的课程安排时间和地点,从而使整个教学能够有计划有秩序的进行。迄今为止,对课程表的研究工作已经进行了长达四十多年之久,取得了丰硕的成果。但是,仍然存在许多不足之处,例如规模大、约束(条件)复杂以及规律不断变化等,因此课程表问题至今仍未完全解决。课程表的编排是一个涉及多种因素的组合规划问题,它要保证在课程安排中教师、学生、教室不能产生冲突(所谓冲突,就是将需上不同课程的两个或多个班安排在了同一时间、同一教室,或为同一教师在同一时间段安排了多门课程等情况),并且要满足教师的要求和资源限制等约束条件。
1.2
排课问题是NP完全问题,许多学者分别在理论、启发式搜索技术应用求解、专家系统应用求解和遗传算法应用求解上作了很多研究。
国外从20世纪50年代末就对排课问题展开了研究。1963年Gotlieb在他的文章中提出了排课问题的数学模型[2],它标志着排课问题的研究正式跨越了科学的殿堂。之后,人们对排课问题的算法做了许多探索,但由于排课问题是NP完全问题,并且易受实际问题边界的影响,大多数求解结果都不够理想。Ferland[3]等人和吴金荣[4]把排课问题化成整数规划来解决,但计算量很大,其仅仅适用于规模很小的课表编排,对于大规模复杂的排课情况,至今没有一个切实可行的算法;何永太[5]和胡顺仁[6]等人试图用图论中的染色问题来求解排课问题,可惜图的染色问题本身也是NP完全问题。由于问题的复杂,许多文章利用启发式函数来解决排课问题,大多数启发方法都是模拟手工排课的过程来实现的。由于实际的排课问题存在各种各样的限制条件与特殊要求,对这些因素处理的好坏就显得尤为重要。
相关文档
最新文档