基于遗传算法的多校区排课问题研究

时间:2022-05-17 09:59:25

基于遗传算法的多校区排课问题研究

摘 要 本文采用遗传算法对多校区排课过程中的教室分配优化问题进行求解。通过将学生上课的教室调整为与宿舍同一校区的教室,使得学生在教室之间移动距离最短,从而达到减少学生因到达教室产生的非必要距离,提高教室的利用率的目的。

【关键词】遗传算法 排课问题 多校区 教室分配优化

排课过程主要分为时间安排和教室安排两个部分,一套好的课表不仅具有合理的时间安排,而且也应该具有合适的教室安排。随着招生规模的不断扩大,很多高校都存在多校区排课的问题,这其中教室分配的工作也越来越琐碎,给高校的教学管理和学生管理带来了新的问题。

本文应用遗传算法对排课问题中的教室分配进行优化调整,根据宿舍位置安排上课教室,这样可以减少学生在不同校区之间换教室上课的时间浪费,并且在最大程度上对教室资源进行充分利用。

1 遗传算法设计

遗传算法是根据适者生存的原则,对解决方案的种群中每一代都进行个体选择,产生一个新的更适应环境的新个体,直到逐渐产生一个近似最优的方案。下面结合遗传算法的研究内容来介绍教室排课优化的算法设计。

1.1 编码方法

遗传算法不能直接处理优化问题的参数,因此需要把优化问题的参数形式转换成基因码串的表示形式,这个操作就是编码。本文要对学生上课的教室进行优化调整,所以希望得到教室之间的最短距离。编码方式采用二进制编码,把教室之间的距离信息作为基因段,由这些基因段来构成染色体编码。

1.2 适应度函数

1.3 参数选择

遗传算法的三个算子分别是选择、交叉和变异。选择操作采用选择法,根据个体适应度的大小,将适应度较大的个体复制到下一代中。交叉操作采用顺序交叉。两个父个体交叉时,通过选择父个体1的一部分,保存父个体2中基因码的相对顺序,这样生成的子个体就可以继承来自父个体的部分特性。变异操作采用反转变异。反转变异是在染色体上随机选择两点,并将两点之间的子串反转。如:abcdefg变为aedcbfg。

编码位长度取决于优化问题的规模和所需精度。在本文中参考教室实际的距离,因为最长的距离是1168米,所以可以假设所有的距离都小于1200米,则转换为二进制后为11位,因此设计每个基因为11位编码。

种群中个体的数目称为种群规模。种群规模如果太小则不利于进化,太大又会导致算法运行时间过长。本文中取某班级一天内所有的可以选择的教室序列数目为种群规模。

交叉概率表示每代群体基因段交换的概率。交叉概率太大会使得已获得的优良基因结构丢失的概率增大,太小又可能会导致收敛过慢。本文中设计的交叉概率为0.6。

变异操作有助于保持多样性,防止种群在成熟前收敛。本文中设计的变异概率为0.001。

2 具体描述

在本问题中,以某学院1105班为例,该班人数为45人,宿舍位于某高校北区的6号楼。该班级有一个可行的课程表,其中所有的教学活动都分配了一个时间片和一间教室,并满足下列的硬性约束:在任一时间片,有且仅有一个教学活动安排在某一个教室中;教室能容纳的人数必须大于等于该班级学生人数;在所有可选的教室序列中选择学生两节课之间移动距离最短的教室。同时满足一个软约束:学生一天内所有的上课教室尽可能安排在与宿舍同一个校区内的教室。现已有该班级课表,可以看到该班级上课教室的位置分布:

由于学生住在北区,则考虑把学生课表中不在北区的教室调整为同时段北区的空闲教室。以该班级宿舍位置为出发点,从上午和下午第一节课的空闲教室序列中,选择离宿舍距离最近的一间教室。然后以第一节课的教室为出发点,从第二节课的空闲教室序列中选择距离最近的教室。重复该步骤,直到调整完所有教室。

假设一天最多是四节课,从宿舍出发到上午两节课的教室,中午回到宿舍,下午再去两节课的教室。如果把宿舍和教室都考虑成一个一个的点,那么就由这六个点之间的五段距离组成染色体:宿舍-教室-教室-宿舍-教室-教室。之前在参数的选择中已经描述了每个基因为11位编码,这样每条染色体就是11*5,由55位构成。

因为本问题是在已有课表的基础上对教室安排进行优化调整,所以初始群体的产生与一般的遗传算法不同,它是由已有的空闲教室序列得到。序列作为初始种群。取1105班星期一所有的北区空闲教室和现有教室,按顺序编号。假设学生宿舍是0,中区1106教室为1,北区1303教室为2,依次到最后一个北区8405教室为9,见表2。那么该班级一天可以选择教室序列有014067,024067,034067,015067等18种选择,也正是种群规模。该班级课表中星期一每一种可选择的教室信息序列作为初始种群。对这18种可选择的教室序列进行距离总和排序,可以得到第18种选择的距离之和是最短的,也就表明选择该教室序列的话,学生在课间移动的距离是最短的。那么通过遗传算法得到的最优解如果与该结果一致,即可认为该算法较好地解决了本问题的需求。

进行仿真实验,取初始种群18,遗传100代,交叉概率为0.6,变异概率为0.001,结果如图1所示。可以看到在80代左右开始收敛,得到最优解。算法实验结果说明,遗传算法求解教室优化调度问题取得了比较满意的效果,这样使得学生在课程教室之间的移动距离最短,实现了多校区学生上课的教室与住宿位置安排在同一校区的需求。

3 总结

在目前高校快速发展和扩招的过程中,存在多校区课程教室安排不合理的矛盾,本文从提高教室的利用效率,优化资源使用入手,对多校区排课过程中的教室分配优化问题进行研究,为缓解不断扩大的学校与定量的教学资源设备之间的矛盾提出了可供参考的解决方案。

参考文献

[1]曹策俊,杨琴,梁红燕,袁玲玲.基于遗传算法的高校教室调度问题[J].工业工程,2012,15(03):130-135.

[2]张赫男,张绍文.采用改进的混合遗传算法求解高校排课问题[J].计算机工程与应用,2015(05):240-246.

[3]凌敏.遗传算法在多校区排课系统中的研究和应用[J].电脑迷,2014(13).

[4]陈爱萍,田海梅.基于遗传算法的多校区排课系统的研究和实现[J].现代计算机,2011(10):71-75.

[5]梁宇滔.基于遗传算法的多校区排课系统分析与设计[J].佛山科学技术学院学报:自然科学版,2011,29(06):75-78.

作者简介

方江t(1984-),女,山西省太原市人。硕士研究生学历。现为山西广播电视大学助教。主要研究方向为软件工程与算法。

作者单位

山西广播电视大学 山西省太原市 030027

上一篇:基于CS4000装置的串级控制系统的设计 下一篇:商务部力促电子商务与物流快递协同发展 降低内...