改进遗传算法在智能排课系统中的研究与应用发展
改进遗传算法在智能排课系统中的研究与应用发展
石明奎(甘肃省定西市通渭县第三中学,743300) 【摘要】由于排课系统存在诸多影响因素,导致排课过程中难以达到最优解。教室,时间,教师,课程和班级都在我们的考虑范围内,各个因素 既互相制约,又有矛盾的方面。时间和空间的配给直接影响到排课系统的效率。利用遗传算法,通过候选解的不断适应,找到一代的优化解遗传 给下一代,不断优化,能够在最优解方面有较好的性能。本文通过改进进化策略和智能进化的方法,智能排课系统达到了较好的优化指标和优 化速度。 【关键词】智能排课;遗传算法;智能进化;改进策略 【中图分类号】TP18 【文献标识码】A 【文章编号】1006—4222(2017)叭一0267—02 1改进遗传算法在智能排课系统中的重要性 当代中国将科教兴国作为建设祖国的一项基本国策.受 到各界的广泛关注。不论是家长还是学生都将教育做为家庭 的关键一步。同时,随着社会的不断发展,教育的模式和方式 也在不断的变化.当代教育模式越来越与互联网紧密结合起 来。教育的改进也对学校排课的效率提出了更高的要求。经过 改进后的排课系统必须能够使时间和空间达到合理的配置。 充分调动教室,时间,教师,课程和班级等各类因素。而将遗传 算法用于改进排课系统.能够更好的适应各种学校、不同地区 的排课要求.解决好全局巡优的目的。 2遗传算法的研究 遗传算法是借鉴生物界适者生存的原理演化而来的随机 化搜索方法。通过初代的随机变异,通过环境选择选择出最优 的基因进行下一代的遗传.不断循环,最后在环境的作用下得 到最适宜环境的基因。遗传算法有非常多的好处。例如它直接 对对象进行运算和操作.不必受到求导和函数连续性的控制。 同时,由于遗传算法从问题解的集合开始搜集.这种算法具有 很好的全局巡优能力。并且,这种算法具有很好的容错能力和 隐含的并行性,提高了效率。随着研究的不断深入,已经应用 到诸如机器学习,信号处理等诸多领 3对智能选课系统具体指标分析 遗传算法适应度数是智能排课系统的关键.它是遗传算 法的度量标准,以此标准确定各个成员的好坏优劣。若适应度 函数确定的好.能够防止群体中的个体早熟.对群体中的多样 性的维护起到至关重要的作用 将第i组因素对智能排课系统影响的估算权值定位Ri. 取值在区间『0 1]。Ri为5种因素的收敛代数对参照误差代数 和的比值,那么有∑Ri=1.计算内容分为五部分,分为: (1)教室; (2)老师时间: (3)学生时间: (4)课程设置: (5)班级安排。 将第i项因素对智能排课系统的误差设为.体现其满足 第k项综合评定误差,选择以40为底的指数函数是为了产生 对适应度函数的影响。下面通过具体的指标来进行理论研究 和分析。通过具体指标的优化.对智能选课系统的系统性研 究,实现系统模型的优化和提升 (1)教室的分配。教室类型的分配因不同学校的具体状况 有不同的分配方法。通常来说分为几种类型.分别是:阶梯教 室,机房,小教室。礼堂,实验室 (2)教师时间。教师时间与所要求的上班时间有极大关联. 但应考虑到特殊情况下老师请假的情况。会产生换课情况。 (3)学生时间。它能反映学生的心理接受时间和学习效率 与课程安排结合。使学生在每天中不同的时间高效率的接收 到更多的知识 (4)课程设置。由于学习科目的难易不同,重点不同,有些 科目的课程安排会比较多.如何高效的进行课程安排也是我 们需要考虑的内容之一 (5)班级安排。一些班级组织集体活动导致整班不能去上 课的情况是需要考虑进去的 4对遗传算法的改进方案 我们将从遗传算法的各个步骤入手,逐步进行优化,达到 理想指标。 (1)对遗传算法的编码方法进行改进 现代遗传编码主要使用二进制编码方法,由于它能够被 计算机识别同时易于交叉变异因而受到广泛关注 但二进制 编码的重要缺点是运算过程中.需要存储大量数据,占用大量 内存,而且精度受。与之相对应的.如果利用实数编码.那么就 能较好的解决当前问题 (2)对种群的初始化方法进行深入的研究 将周一到周五正常上课时间划分为五个大的时间块 在 这五天中将所需要上的课程随机排入五天时间中.再将老师 上课时间和学生适宜上课时间排入。如不冲突.保留所选项 如冲突,重新产生,然后算出每个学生的个体适应度的函数。 (3)改进选择操作的方法。
高速公路的不同车道,进行不同的限速,有着非常实际而有效 的现实意义。 参考文献 【1]A new approach to avoid walk error in pulsed laser rangefinding P Palojarvi,T Ruotsalainen,J Kostamovaara—IEEE International Sympo— sium on Circuits&Systems.1999. 【2]A new approach to avoid walk error in pulsed laser rangefinding P Palojarvi.1999. f3]Discriminator design considerations for time—interval measurement cir— euits in collider detector systems ML Simpson.MJ Paulus一((IEEE Trans actions on Nuclear Science}}.1998. f4]钱云襄,刘渝.调频连续波雷达信号调制方式识别算法研究.数据采 集与处理.20o5. f5]尹圣宝.激光雷达测距新方法研究.浙江大学,2006. [6】杨苏辉,吴克瑛,赵长明.连续波线性调频激光雷达系统中声光调制 器的设计.中国博士后学术会议.2000. 收稿日期:2016—12—9
蹲 2017年1月上 改进遗传算法在智能化组卷系统中的应用探讨
徐向艺(平顶山学院计算机学院,河南平顶山467000) 【摘 要】近年来,随着社会经济的发展,科学技术取得了明显的进步,无纸化网络在线考试逐渐取代了传统模式下的笔试考试,成为主要的流 行趋势,并且从目前情况来看,已经普遍被社会各行各业接受和认可。同时,组卷作为网络考试系统的核心技术,组卷的问题、策略以及智能化 等对其应用效果的取得起着至关重要的作用。因此,通过对遗传算法进行积极的改进,并将其应用到智能化组卷系统中,有助于组卷智能化的 实现以及组卷问题的自动解决,将系统本身的实用性以及各方面的性能充分展示出来。 【关键词】遗传算法;智能化组卷系统;应用探讨 【中图分类号】TP311.5 【文献标识码】A 【文章编号】1006—4222(2017)01—0268—02 随着科学技术的发展与进步。网络在线考试逐渐在社会 多个领域内渗透,在一定程度上使得常规考试更加的便利。组 卷作为网络在线考试技术的关键技术,组卷方式的选择与随 机抽调的试卷质量密不可分,并且直接体现着网络考试的智 能化水平的高低l1l 在进行组卷问题的具体操作过程中.首先 要将可以被查验的必要参数拟定好,然后在此基础上对所需 的变换算法进行恰当的选择。同时,合理的组卷算法能够将试 卷多样化的内外要素科学的整合在一起.如:相关题型的妥善 设定、从多个角度和层次对试卷的具体分值进行科学的划分 以及最佳考试时段的有效设定等。另外,组卷常用的算法主要 有两种。即随机抽调法与回溯试探法,这两种方法的运用与组 卷真实的能力水平和层次十分贴近 与此同时,对遗传算法进 行积极的改进,能够有效的破解组卷过程中的智能化难题,使 组卷的应用实效最大限度的凸显出来。 1遗传算法的内涵与改进 1.1遗传算法的具体内涵 所谓的遗传算法.其根本原理主要是:如果群体不能获得 最佳解或者最接近的解,则后面的个体也不能继续进行化解, 其个体本身表现出来的特性在原则上是不能超越前一代的, 但是个体之间彼此又十分的贴近.因此在这样的一种状态下. 算法很难进行维系只能快速的终止目。同时,通过对设定好的 算法流程的运用,就局部而言是可以获得最佳的解答结果,但 是纵观全局这种方法并不适用。因此,对于智能化组卷而言, 选择合适的遗传算法才是其最好的解决方案。一般在常规状 态下可以将算法分为遗传编码和适应度数的拟定和选择性算 法的操作。 1.2遗传算法的改进 传统遗传算法中的编码主要是靠二进制完成的,但是在 卖现过程中不可避免的会遇到一些占用搜索空间较大的编码 以及编码时间过长等问题。因此,需要对遗传算法进行适当的 改进使其能够很好的解决的这一系列的问题。由于在初始群 的设定过程中,遗传算法的有效性会受到种群数目的影响,并
现在在遗传算法中最广泛使用的方法便是蒙特卡罗选择 法。在这种方式中,个体被选择的概率值与它的适应度函数值 是成比例的。我们的想法是,通过增大环境的竞争压力,加快 淘汰竞争力不强的个体.加快适者生存的步伐,具体通过下面 操作:先运用蒙特卡罗算法,选择出初代,经过配对交叉产生 下一代.通过环境作用保存最优秀的下一代个体.再通过遗传 的方法将优秀的基因保存下来。这样一代代不断复制,能够避 免更适应环境的个体和基因被自然选择所淘汰。 (4)对交叉操作问题的探索。一般来说,现在遗传算法中 通用的交叉方法为单点交叉和多点交叉。但是,如果在具体遗 传算法中只用到其中一种交叉方式,会大大减小搜寻解的空 间,这样会使我们所做的优化遗传算法的指标下降。因此,我 们想到一种能结合这两种交叉方法优势的算法——自适应算 法。这种算法的思想是,在前期使用多点交叉,这样利于优秀基 因的扩散,通过不断的选择后,随着迭代次数的增多,优秀基因 已经基本稳定.这时用单点交叉不会破坏优秀基因的完整。 (5)对变异方法的改进。为了防止近亲不断的繁殖导致最 终的结果不收敛于最优解,我们提出了另外一种自适应方法, 即变异率随着与父代的距离增加而减小,并且变异率随迭代 次数的增加,迭代率呈现出指数下降的规 (6)对于冲突检测方法的优化。为了提高遗传算法的效率, 防止产生局部最优解的状况.我们需要检测冲突发生的地点. 将产生冲突的地点找到一个随机的位置进行位置调换.防止产 生死锁的现象。若出现死锁这种状况,只能够从新更换染色。 (7)结论实验结果分析,得出通过上述模型进行排课系统 的优化,使得算法的收敛性和全局最优解这两个指标都有了 明显的提升 5结束语 遗传算法作为一种重要的寻求最优解的方法.已经渗入 到科研工作的各个领域。本文通过对遗传算法要素和步骤的 深入分析,同时结合排课系统的实际情况,得出了优化排课系 统的计算方法。经过实验验证上述模型使得算法的收敛性和 全局最优解这两个指标都有了明显的提升,同时节约了存储 空间,提升了运算精度,较好的完成了工作。这说明本文对智 能排课系统的应用具有普适性 基金项目:甘肃省“十三五”教育科学规划课题(GS[2016]GHB 0l18)。 参考文献 [1]陈强.通用高校排课算法研 JJ.科技广场,2011,7:52-55. [2]韩万林.遗传算法的改进[J]_中国矿业大学学报,2014,29(1):55 ̄57. [3]杨启文.遗传算法的优化速度改进[J].软件学报,2015,12(2):270- 275. [4]曹祝君.一种改进的遗传算法[Jl_合肥工业大学学报,2004,27(10): 34~36. [5]韩万林.遗传算法的改进[J].中国矿业大学学报,2012,29(1):21 ̄23. [6]杨启文.遗传算法优化速度的改进【JJ_软件学报,2014,12(2):270~ 275. 【7]闫保权.改进的遗传算法在排课系统中的应rfl研究『J].陕西延安职 业技术学院,2013,22(12):79~82. 收稿日期:2016—11-28 作者简介:石明奎(1985一),男,甘肃定西通渭人,中学一级教 师,硕士研究生,研究方向为算法分析与软件设计。 j裁
遗传算法的改进与应用
遗传算法的改进与应用
遗传算法是一种模拟自然进化过程并求解最优解的计算方法。它主要受到遗传学中的基因进化和自然选择的启发,模拟生物群体中个体之间的竞争、选择和繁殖过程,从而使种群逐步趋向最优解。
遗传算法的基本工作原理是以一定的适应度函数作为评价标准,在一个种群中不断地评估每个个体的适应度并进行复制、交叉、变异等操作,产生下一代群体。通过不断地迭代求解,最终找到适应度函数达到最大值或最小值的优化解。这种算法被广泛应用于函数优化、组合优化、动态优化、多目标优化等众多领域。
然而,遗传算法有其局限性和不足之处。其中,算法本身的收敛速度较慢是被广泛诟病的问题之一。在实际应用中,为了提升算法的收敛速度和精度,人们对遗传算法进行了各种修改和改进。
例如,基于分布式的遗传算法(DGA)将一个单点交叉操作改进为多点交叉,有效地提升了算法的搜索能力。与此类似地,基于强化学习的遗传算法(RLGA)使用强化学习提高了算法的局部搜索能力,以更快地找到全局最优解。
此外,遗传算法还可以与其他算法结合使用,形成混合优化算法。例如,粒子群算法(PSO)和遗传算法的结合使用,既保留了遗传算法的全局搜索特性,又充分发挥了PSO算法的速度快、精度高的特点。
除此之外,遗传算法可以应用于很多领域。在工程领域,遗传算法常被应用于优化设计问题、机器人路径规划和信号处理等问题。在经济领域,遗传算法可用于个人理财规划、股票投资策略的优化等问题。在人工智能领域,遗传算法被用于构建深度学习模型、自然语言处理、图像识别等等。
总的来说,虽然遗传算法存在局限性,但它已经被证明是一种非常优秀、有效的优化算法。随着新的技术和方法的不断出现,遗传算法的效率和精度将继续提高。未来,这种算法将被广泛应用于更多的领域,并发挥出更强大的威力。
遗传算法在多校区排课系统中的应用
科技信息 计算机与网络
遗传算法在萋校区排课系统巾昀应用
黄冈师范学院计算机科学与技术学院 周芬
[摘要l辋F课是多因素决策问题,文本分析了造成多校区高校排课难的各种因素,对排课问题中的约束条件进行分析,研究了如何
应用遗传算法来解决多校区排课问题,给出了一个基于该算法的排课模型。
[关键词]遗传算法 多校区排课适应度函数
排课是教务管理工作的一个重点和难点。排课涉及教师、学生人
数、教室容量、教室类型、教室间距等诸多因素。尤其是多校区同时运行
的高校格局增加了更多的约束条件,问题的复杂度也增加了许多。多校
区排课是一个典型的多因素的优化决策问题,是组合规划中的NP完全
类问题,涉及信息较多且求解复杂性为课表规模的指数量级。遗传算法
被证明解决该类问题是最合适的。
一 排课问题描述
编排课表的整个过程中充满了矛盾运动,其中包括上课班级、所开
课程、任课教师、上课时间、上课地点等方面在排列组合中所发生的冲
突和矛盾现象。课表的编排必须精心组织,准确无误,科学合理,充分发
挥时间、空间、人力、物力,以保证教学过程的正常运转。课表要有利于
教学设备的充分利用,要符合教学规律。将这个原则进行细化、清晰化,
一般可以归纳为以下具体要求。
课表中没有硬性冲突,在排课过程中必须遵守如下约束条件:
1.每位教师在同一时间段内只能安排一门课程;
2.一个教室在某一时间只能安排一门课;
3.教室的位置数量与每个自然班的人数应尽量匹配;
4.必须根据核定的教学计划所规定的学时数排课,不得任意增减;
5.一个教师两节课间路程不超过lO分钟,半天的工作必须安排在 同一个校区。
课表要求有较高质量,为了使排出的课表更优化、合理、排课还应 考虑以下因素:
1.一门课程在每个班的每两天只能安排一次;
2.专业必修课尽量安排在上午;
3.同一门课的上课地点尽量安排在同一教室;
4.体育课必须排在下午或者上午3—4节,体育课后避免安排讲授
基于遗传算法的自动排课系统的建模研究
- 1 - 基于遗传算法的自动排课系统的建模研究
近年来,随着信息技术的发展,自动排课系统的应用越来越广泛,是智能排课系统中的重要组成部分。自动排课系统不仅可以建模出排课过程中的各种复杂决策问题,而且能够根据现实情况进行有效的规划。基于遗传算法的自动排课系统是利用遗传算法和快速迭代技术来解决复杂排课问题,是一种新型的自动排课系统的建模技术。
基于遗传算法的自动排课系统与传统的排课方法相比具有明显的优势,它可以有效地提高解决复杂排课问题的速度,有效地减少排课过程中的决策时间,同时可以有效地改善结果。基于遗传算法的自动排课系统是一种综合性的解决方案,它可以将多种因素结合起来,有效地提高排课效率。
基于遗传算法的自动排课系统的建模是一个复杂的系统,它需要科学家们设计出复杂的模型来解决复杂的排课问题。采用基于遗传算法的自动排课系统模型可以有效地减少排课过程中的决策难度,提高排课效率,同时可以有效地改进排课的结果。
基于遗传算法的自动排课系统的建模研究所需要的主要工作有:首先,要明确排课过程中的各个约束条件,探索出可以满足复杂排课要求的最优模型;其次,通过比较不同模型的优劣,确定最优解;最后,要建立有效的评估模型,以确定最优模型。
基于遗传算法的自动排课系统已经在实际应用中取得了良好的成果,但随着工作量的增大,排课问题的变化可能也更加复杂。因此,基于遗传算法的自动排课系统的建模研究不仅仅局限于当前的技术, - 2 - 而应包括未来技术的探索和开发,以满足日益增长的排课需求。
综上所述,基于遗传算法的自动排课系统的建模研究是一项非常重要的工作,它能够有效地提高排课效率,改进排课结果,同时为更好地解决排课问题提供有效的参考。基于遗传算法的自动排课系统的建模研究不仅仅是当前的技术的发展,也是将来技术的探索和开发,旨在降低排课过程中的决策难度、提高排课效率,同时可以有效地改善结果。
基于遗传算法的高校排课系统的应用研究
基于遗传算法的高校排课系统的应用研究
【摘要】排课问题是一个有约束的、多目标的组合优化问题,并且已经被证明为一个NP完全问题. 遗传算法是一种借鉴于生物界自然选择和进化机制发展起来的高度并行、自适应的随机搜索算法,是一种非常有效的解决NP完全的组合问题的方法. 本文将遗传算法应用于排课问题的求解,结合高校实际的排课情况,对遗传算法进行了深入的研究分析. 针对排课问题研究了染色体编码方式以及种群的初始化,提出了基于优先级的贪婪算法,并引入权的概念. 通过实验表明,改进的遗传算法明显优于传统的遗传算法.
【关键词】排课问题;遗传算法;基因编码;贪婪算法
高校的教务管理中,排课表工作非常复杂,通常是手工操作要花费大量的精力,且效率低下,教学资源也很难充分利用因此,这是一个急需解决又非常棘手的问题.由于高校教学单位和课程众多,且相互交叉,教师和教室又严重短缺,很难用手工制定出准确、统一、高效、合理的课表.另一方面教学管理的信息化不可能建立在手工操作的基础上,而理论研究和软件技术的成熟己为我们提供了计算机自动排课的重要手段,编制出一套完备、高效、准确、实用的排课表程序己成为可能.
排课管理的主要任务是把全校各系或各授课部门的课进行汇总,然后根据教学计划和教学资源制订全校的公共课,各院系的公共基础课和各班级的专业课课表,以充分满足专业教学的要求,并优化配置各种教学资源,使教学工作科学、高效、顺利的进行。利用遗传算法求解排课问题,其搜索过程带有自组织的智能性、并行性和鲁棒性,且操作简单,可以更少地依赖于实际情况,实现课表的优化,对于具有复杂约束条件的高校排课提供了一种较好的解决方法.
1 排课问题[1][2]
排课是将教师与学生在时间和空间上根据不同的约束条件进行排列组合,以使教学正常进行. 这里约束条件主要为避免冲突.所谓冲突,它所包含的内容很广泛,几乎发生在所有两个或多个排课涉及因素之间.而避免冲突也是排课问题中要解决的核心问题.只有在满足全部约束条件和避免所有冲突的基础上,才能保证整个教学计划合理正常进行.课程的安排要满足一定的约束,约束通常被分为两种类型,一种称为硬约束,是排课中必须满足的.
遗传算法在排课问题中的应用研究
遗传算法在排课问题中的应用研究
单喆煜
【期刊名称】《电脑编程技巧与维护》
【年(卷),期】2013(000)008
【摘 要】高校教育模式的不断发展,使得排课过程中的各种约束因素更加复杂.针对高校排课过程中的各种约束条件进行分析,建立了基于遗传算法的染色体编码,分析了在遗传算法中进行教室调度、生成初始种群和应对冲突,并对应用遗传算法来解决排课问题进行了系统建模.
【总页数】4页(P125-127,132)
【作 者】单喆煜
【作者单位】云南交通职业技术学院,昆明650504
【正文语种】中 文
【相关文献】
1.一种改进的遗传算法在年度排课问题中的应用 [J], 王璐;杨亚伟
2.改进遗传算法在排课问题中的应用研究 [J], 崔玉连;杨新锋
3.改进遗传算法在排课问题中的应用研究 [J], 张艺雪
4.遗传算法的改进及其在排课问题中的应用 [J], 姜婧;白似雪
5.遗传算法在高职院校排课问题中的研究与应用 [J], 梁利亭;
因版权原因,仅展示原文概要,查看原文内容请购买
基于遗传算法和禁忌搜索算法的排课系统研究
基于遗传算法和禁忌搜索算法的排课系统研究
随着互联网和信息技术的发展,教育行业也逐渐数字化。在教育资源共享、信息透明和教育教学质量提高方面,数字化教育平台为教育行业带来了很大的变革。而在学校内部,排课系统的研发也愈发重要。传统的排课方法不仅费时费力,而且缺乏灵活性,难以适应不断变化的教育教学需求。因此,基于遗传算法和禁忌搜索算法的排课系统研究成为了现代教育领域中的热点和难点问题。
遗传算法是一种自然界中生物遗传变异、选择和适应的过程的抽象模型。它具有并行搜索、全局优化等特点,能够有效地解决一些复杂的、难以用传统算法解决的问题。利用遗传算法来解决排课问题,首先需要确定排课问题的表达方式。针对排课问题中课程的时间、地点、教师的安排等各种约束条件,可以将每一个课程看作遗传算法种群中的一个个体并进行编码。然后,通过遗传算法的选择、交叉和变异操作,不断优化种群中各个个体的适应度,从而得到排课方案。
禁忌搜索算法是另一种优化问题的常用算法,它通过设定“禁锢”规则来实现搜索过程中的局部最优的跳出。在排课问题中,可以使用禁忌搜索算法来避免陷入局部最优解,提高系统的收敛速度和求解精度。禁忌搜索算法和遗传算法的结合可以达到更优的效果,并且相对于单独使用遗传算法,禁忌搜索算法能够更快地找到解,从而减少计算时间和成本。
除了遗传算法和禁忌搜索算法之外,排课系统研究还需要考虑到课程的优先级、期望班级时间表等问题。另外,针对多种约束条件的复杂性,优化算法还需要逐步改进和完善。例如,探索新的算法结构、加强遗传算法的局部优化能力等。
在实际应用中,排课系统研究对教育行业的发展具有重要意义。一方面,它能够提高学校排课的效率和质量,为学校减少人力物力的开销,避免教师和学生排课的繁琐和浪费;另一方面,通过数字化教学平台,在确保课程规划、人力统计、教学质量控制等方面的数据化和透明化的基础上,帮助学校提高教育教学质量,推进教育信息化、数字化发展。
遗传算法在排课系统中的应用概要
遗传算法在排课系统中的应用
摘 要:随着信息时代的到来, 将信息系统应用于学校日 常工作已势在必行。 学校教育信息管理的核心是资源的统筹利用, 它包括人力资源、 物力资源以及 时间资源等。 本文给出了排课问题的数学模型,提出基于遗传算法解决方案。 结果表明,
该算法能比较有效的解决排课问题。 该方法易于学习和应用, 且不必 依赖特殊的实现模式。
关键词:排课 遗传算法 优化算法
1. 引言
随着现代信息技术在教育领域的普遍应用, 我国高校教学系统的管理模式 已逐步进入了网络化和信息化时代。 近几年我国高等教育的快速发展及高校办 学规模的不断扩大, 本科学分制、 选课、 试听制度以及双专业辅修学制的进 一步推行, 使得高校排课的工作量成倍增长, 工作难度进一步加大。 传统手工 排课模式已不能适应这一挑战, 这就向教学排课管理子系统提出了新型化和多 元化的要求。 教学管理现代化、 信息化是高校的必然选择。
2. 遗传算法简介
遗传算法是模拟自然界自然选择与进化机制求解极值问题的一类自适它以 生物群体的观点看待优化问题。 所求问题解空间中的一点为一个个体结合起来 构成一个群体, 群体中的每一个个体都代表了问题的一个可能解群体称为代。 在遗传算法中, 待优化参数通常用符号串来表示, 这一过程由某一符号串求得其 表示的具体参数值的过程称为解码。 符号串也称为染本组成单位称为基因。针 对具体问题, 遗传算法通过定义一个适应度函数来而每个个体所对应的适应度 函数值代表该个体对环境的适应程度, 适应度函个体适应环境的能力越强。 初 始群体确定后, 在选择、 交叉、 变异等遗传照类似于自然选择的过程逐代进 化, 最终获得问题的满意解。 [1]
3. 排课问题基本描述
排课问题就是将课程、 任课教师以及学生在合适的时间段内分配到合适的 教室中。 在高校中排课工作更加的复杂, 会涉及任课教师、 学生班级、 学 生人数、
改进遗传算法在排课问题中的应用研究
改进遗传算法在排课问题中的应用研究
崔玉连;杨新锋
【摘 要】深入分析了排课问题的内在实质,抽象出求解排课问题的数学模型.在此基础上详细地阐述了如何将遗传算法运用到排课问题中,同时针对传统的遗传算法进行适当的改进.对比试验证明改进的算法能够提高智能排课的效率.
【期刊名称】《微型电脑应用》
【年(卷),期】2013(029)010
【总页数】4页(P48-51)
【关键词】排课问题;遗传算法;三维编码
【作 者】崔玉连;杨新锋
【作者单位】南阳理工学院计算机与信息工程学院,南阳,473000;南阳理工学院计算机与信息工程学院,南阳,473000
【正文语种】中 文
【中图分类】TP301
0 引言
高校排课问题是一个多元分配问题,它研究如何把学生和老师分配给课程、课程单元或者班级,如何把上课事件分配给教室和时间[1]。1975年S.Even证明了高校排课问题在本质上属于NP完全问题。解决此类问题的常用方案有贪婪算法、遗传算法、模拟退火算法、专家系统算法、蚁群算法、图论算法等。因遗传算法具有群体搜索策略、群体中个体之间的信息交换不依赖于初始参数的特点和良好的并行性、通用性、稳定性,成为求解该类问题的主流方法[2]。
1 遗传算法
遗传算法(Genetic Algorithms, GA)是一种利用模拟自然进化过程而搜索最优解的算法,是通过研究达尔文生物进化论的自然选择和遗传学机理的生物进化过程而产生的,是一种运算速度较快、系统性较强的新型算法[3]。
遗传算法模拟自然进化过程,包括选择、交叉、变异等操作[4]。首先在基础问题数据中随机地选取若干个体形成初始种群,然后运用适应度函数计算个体的适应度函数值。根据适应度函数值,判断每个个体是否满足优化准则,如果不满足就继续生产下一代个体,可以通过交叉、变异操作生产新的个体,从而构成新的种群,再计算新种群中每个个体的适应度函数值,若满足优化准则就停止迭代,否则继续进行下一代种群的生产,直到满足优化准则为止。
遗传算法在大学排课问题中的应用概要
遗传算法在大学排课问题中的应用
口王维陈满林胡冠字
(长春工业大学软件职业技术学院 吉林・长春130012
摘要:针对排课问题,基于遗传算法的特点分析了解决排课问题的可能性,介绍了排课原则,以及遗传算法在 排课问题上的应用性研究,利用遗传算法进行编码,交叉、变异,以及进行冲突检测,用遗传算法解决这一复杂的 NP问题。
关键词:排课遗传算法最优解冲突检测
中图分类号:024文献标识码:A 文章编号:1007-3973(201009—167・02
当今时代,伴随着计算机技术的快速发展,许多繁琐的人 工操作已经被计算机系统所取代。排课系统作为高校教务管 理系统中最重要也最复杂的部分之一,已经成为国内外众多 高校以及软件公司的研究课题,在这方面也取得了许多的理 论成果和实现方法。因此,研究开发一个实用的排课系统具 有十分重要的现实意义。
1研究背景
随着我国教育体制改革的不断深入和发展,高校的办学 规模逐年扩大,因此,编排一张适用的、科学的课表已经成为 每一所高校在新学期开始之前必须进行的一项极其重要工作。 简而言之,它具体的工作内容就是将课程、教师、教室和学生 四者之间进行合理的调度分配,从而达到四者之间的完美结 合,从而使整个教学活动能够正常、有序地顺利进行。
大学课表的编排不但数量多、规模大、涉及的因素多、限 制条件多,而且结构复杂,要想编排出合理、科学的课表必然 要消耗大量的时间与精力,它复杂性的原因在于排课中资源 约束条件与特殊要求对有限时空目标的限制。由于近几年各 个高校连年扩招,使得课程安排的工作量逐年增大,学校自身 问题的逐步暴露,这也给课程安排增加了许多的难度,这些问 题主要包括:教室资源的不足、师资力量的不足、多媒体教学 设备的不足等,这些问题的出现对排课工作提出更高的要求。 伴随着科学
技术的不断发展和提高,计算机具有的强大功 能已经被人们所深刻地认识,计算机应用技术也已经逐渐进入 人类社会的各个领域,同时在各个领域都发挥着非常重要的
遗传算法在高校排课系统中的应用研究的可行性初探
遗传算法在高校排课系统中的应用研究的可行性初探 由扬 (长春理工大学光电信息学院) 摘要:排课是高校教务管理中一项十分重要的工作。良好的排课系统,必 将会大大推进教学的良性循环,研究开发一个实用的排课系统具有十分重要 的现实意义。 关键词:遗传算法高校排课系统应用研究 1课题的产生背景以及应用价值的详细说明 1.1课题的产生背景排课是高校教务管理中一项十分重要的 工作。同时,排课又是一项相当复杂的工作,大学课表的编排不但规 模大、涉及因素多、结构复杂,还要消耗大量的时间与精力。 随着我国教育体制改革的不断深入及“21 1”工程的实施,高校 的办学规模连年扩大 在校学生人数、教师人数、课程门类都有显著 增加,这对高校教务排课工作提出了更高的要求。手工排课时,信息 的上通下达是极其麻烦的,而采用计算机排课,教学中的信息可以一 目了然,对于优化学生的学习进程,评估每位教师对教学的贡献等都 具有重要的意义,良好的排课系统必将会大大推进教学的良性循环。 因此,研究开发一个实用的排课系统具有十分重要的现实意义。 1.2课题应用价值的详细说明排课问题早在20世纪7O年 代,就已经由美国人S・Even等提出了,并且证明了排课问题是一个 疑难问题(NP完全问题),也就是说算法的计算时间是呈指数增长 的,这一论断的提出确立了排课问题的理论深度。目前在数学上并没 有一个通用的算法能够很好地解决NP完全问题。但是对于很多NP 完全问题的研究都具有很重要的现实意义。 遗传算法(Genetic Algorithm,简记GA)是模拟自然界生物进 化过程求解极值的一类自适应人工智能技术 】,简单的说是一种通 过模拟自然进化过程搜索最优解的方法。遗传算法是在1975年由 美国芝加哥大学霍兰德教授首先提出的,他出版了颇有影响的专 著(Adaptation in Natural and Artificial Systems} ̄”o遗传算法具 有良好的并行性、很强的通用性、良好的全局优化和稳定性等优 点。对于传统优化方法无法或很难解决的非线性、不可微分问题, 遗传算法都能很好的解决。遗传算法的以上特点使解决排课问题 成为可能。 2论文选题在该领域国内、国外研究现状 2.1国内研究现状上个世纪人们使用传统的人工方式进行排 课,这种方式存在着许多缺点,比如:效率低、保密性差,另外时间一 长,手工管理必然会产生大量的文件和数据,这无疑增加了对于文件 的查找、更新和维护等工作的困难程度。基于这种原因,用计算机进 行排课就可以解决这些问题,因此开发一个有效的高校排课系统是 具有很强的现实意义的。 国内对课表问题的研究开始于80年代初期,具有代表性的有: 南京工学院的UTSS(A University Timetable Scheduling Sys— tem)系统[2)131,清华大学的TISER(Timetable Scheduler)系统 l,大 连理工大学的智能教学组织管理与课程调度系统等。这些系统大都 是模拟手工排课过程,以“班”为单位,运用启发式函数来进行编排的 12l【3】。但是这些课表的编排系统往往比较依赖于各个学校的教学体 制,并不适用于所有的学校,不易于进行大量推广。 从实际使用的情况来看,国内研制开发的这些软件系统在实用 性上仍不尽如人意。一方面原因是作为一个很复杂的系统,排课要想 面面俱到是一件相当困难的事;另~方面每个学校都有其各自的特 殊性和一些特殊要求,自动排课软件很难普遍实用,在软件中一个很 小的变动,会引起全部课程的大调整,这意味着全校课程大的变动, 在实际的应用中这是很难实现的事。 2.2国外研究现状5O年代末,国外就有人开始研究课表编排 问题。1962年,戈特利布曾提出了一个课表问题的数学模型,并利用 匈牙利算法解决了三维线性运输问题。 近4O年来,人们多次尝试对课表问题运用计算机求解。其中, 课表编排的整数规划模型将问题归结为求一组0—1变量的解,但是 133 其计算量非常大。 进入九十年代以后,国外对课表问题的研究仍然十分活跃。比较 有代表的有印度的Vastapur大学管理学院的Arabinda pathv、加 拿大Montreal大学的Jean Aubin和Jacques Ferland等[3]。目前, 解决课表方法的问题有:模拟手工排课法,图论方法,拉格朗日法,二 次分配型法等多种方法。由于课表约束复杂,用数学方法进行描述时 往往导致问题规模剧烈增大,这已经成为应用数学编程解决课表问 题的巨大障碍。国外的研究表明,解决大规模课表编排问题单纯靠数 学方法是行不通的,而利用运筹学中分层规划的思想将问题分解,将 是一个有希望得到成功的办法。 3选题的研究内容、实施方案和要解决的关键问题 3.1研究内容 3.1.1遗传算法的研究遗传算法是模拟自然界生物进化过程 求解极值的一类自适应人工智能技术,它具有良好的并行性、很强的 通用性、良好的全局优化和稳定性等优点。遗传算法的以上特点使其 为解决排课问题成为可能。 3.1_2高校排课问题模型排课问题是一个集班级、课程、时间、 教师、教室五维组合优化问题。排课的主要任务,就是根据学校的学 期教学计划,对全校各班级所开设的课程在上课时间和上课地点的 合理安排,确保排课不发生冲突。排课的目标,就是在满足各种约束 条件的前提下,充分利用学校的教学资源,获得最好的教学效果。 3.1.3遗传算法在排课问题上的应用遗传算法主要是对众多 随机解进行优化,遗传算法借用生物进化的规律,通过繁殖、变异、竞 争实现优胜劣汰,一步一步逼近问题的最优解。 3.2实施方案 3-2.1适应度函数遗传算法中适应度评估函数是对每一代的 每一个个体都进行适应度评估,这种评估方法存在的问题是:如果新 生成的个体在前一代或前几代出现过,不会跳过该个体,而会对同样 的个体重复进行适应度评估,造成算法的运行时间增加,尤其当适应 度函数计算比较复杂的时候,重复计算将会耗费大量的时间。适应度 函数(Fitness Function)的选取直接影响到遗传算法的收敛速度以及 能否找到最优解。所以适应度函数的选择是十分重要的。因为适应度 函数的复杂度直接决定了遗传算法复杂度,所以适应度函数的设计 应尽量地简单,使计算的时间复杂度达到最小值。遗传算法用来评价 一个解的好坏并不是看它的解的结构,而是取决于该解的适应度的 值,这也体现了遗传算法“优胜劣汰”的特点。 适应度函数的设计思想是由于课表问题的优化目标有多个,同 时约束也有多个,因此采用多目标化和适应度函数相结合的个体适 应度评价函数。 3_2.2交叉【Crossover】交叉是遗传算法过程中一个最为重要 的操作,是复杂遗传算法设计的难点。交叉是把两个父个体的部分结 构加以替换重组而生成新个体的操作过程,以便在下一代产生新的 个体。它的目的是开发问题解空间中新的区域,寻找父个体已有的但 未能合理组合的基因,尽量保证具有优良模式的个体不被交叉操作 所完全破坏,同时增大种群的离散程度,产生新的搜索空间。所有交 叉操作的一个共同特征是:不破坏两个父个体之间的公共串模式,允 许在继续搜索空间时保留好的模式。考虑到排课过程各个班级之间 合班授课情况较多,也即各个基因片断之间存在一定约束,采用了单 点交叉的方式。但是要注意,单点交叉只能在教师、教室和班级集合 内进行。本论文在准备阶段拟采用屏蔽交叉的方法,但在实践中觉得 单点交叉更适合,所以改采用单点交叉的方法来解决实际问题。 3_2.3变异[Mutate】为了让染色体在演化的过程中不陷入一局 限的范围,所以需要做变异。 变异要带约束条件,教师集合、教室集合、班级集合交叉、变异只 在集合内发生。变异是随机改变染色体中任一授课时段,
