1.1.6 终止条件
遗传算法应在何时终止是一个很重要的问题。终止的过早,算法尚未收敛,所得结果并非最优;终止的太迟,浪费时间以及硬件资源[8]。所以,该文中遗传算法的终止条件有两个:一是当一轮适应度函数计算结束后,种群的平均适应度值满足期望值,算法终止;二是种群进化到设定的最大代数,算法终止。
1.2 智能排课的算法流程
遗传算法通过选择、交叉和变异操作来模拟遗传过程。根据适应度值来选择染色体使适应度值大的个体有更大的概率存活。通过适应度函数评估每个个体实现了“适者生存”。遗传操作后,被选择的个体形成了下一代种群,然后进行下一轮的进化。
根据遗传操作,基于遗传算法的智能排课模型的工作流程如下:
1)课程排程解决方案的初始化:为课程分配资源,并记录信息;
2)使用适应度函数计算染色体的适应度值;
3)采用轮盘赌法选择优良个体,并产生下一代种群;
4)使用自适应交叉和变异方式进行遗传操作,产生新的个体;
5)判断算法是否满足终止条件。如果是,得到全局最优解,则跳转到7),如果没有,跳到2);
6)从种群中获取信息,对信息进行解码并输出结果;
7)算法结束。
2 实验与分析
2.1 问题明确
根据已经建立的数学模型和对于排课问题的分析,考虑到不同的教育系统,我们应该明确具体问题:课程分类,时间片划分和约束条件归纳。
2.1.1 课程分类
大学的课程种类较多,存在优先级别的差异,课程自身又有其特点,不能一概而论,因此要对课程进行分类。该文将课程分为A~F类六个等级,优先级依次递增,如表1所示:
2.1.2 时间片划分
周六、周日不安排课程,从周一至周五将每天的上课时间划分成五个时间片,每门课程每次上课最少占用一个时间片。对时间片编号如表2所示。
2.2 性能比较
为了让仿真实验的结果更有可信,用改进后的遗传算法和简单遗传算法进行比对实验,并对实验的结果进行比较。对比结果如图3所示:
3 结论
分析智能排课问题的特点,并结合遗传算法的特点本文采用遗传算法来解决问题。同时针对简单遗传算法的缺点进行了改进,使用自适应遗传操作方式和带有冲突检测的种群初始化方式。
实验结果表明,改进后的遗传算法可以在一定程度上解决智能排课问题,降低了教学人员的工作量。可以在高校教育管理的智能化中起到重要作用,具有一定的推广价值。
参考文献:
[1] 宗薇.高校智能排课系统算法的研究与实现[J].计算机仿真,2011,28(12):389-392.
[2] 廖远,黄勤,曹培霞.基于三维编码的自适应遗传算法在排课系统中的应用[J].计算机与现代化,2008(12):23-28.
[3] 李于吉.基于仿生算法的高校智能排课系统研究[J].现代电子技术,2012(14):121-123.