一种基于全局优化的高校自动快速排课方法与系统技术方案

技术编号:38931407 阅读:23 留言:0更新日期:2023-09-25 09:36
本发明专利技术涉及自动排课的技术领域,公开了一种基于全局优化的高校自动快速排课方法与系统,所述方法包括:构建高校自动排课分层模型并建立排课冲突约束;基于高校自动排课分层模型中的选课信息构建排课优先度目标函数;对构建的排课优先度目标函数进行全局优化求解得到不同课程的排课顺序;构建高校自动排课分层模型的目标函数,基于排课冲突约束进行优化求解,生成高校排课结果。本发明专利技术课程课时总数以及课程课时的分布确定不同课程课时的排课顺序,增强同一课程不同课时的排序分散程度,避免学生在短期内过多上同一课程,基于是否存在排课冲突进行多方向的排课结果更新,有利于使得排课结果向减弱排课冲突的方向移动,快速得到有效的排课结果。到有效的排课结果。到有效的排课结果。

【技术实现步骤摘要】
一种基于全局优化的高校自动快速排课方法与系统


[0001]本专利技术涉及自动排课的
,尤其涉及一种基于全局优化的高校自动快速排课方法与系统。

技术介绍

[0002]目前高校尤其是综合类高校,自动排课功能是学校重点核心功能。自动排课可以大量节约工作人员的时间,从早期采用手工排课的平均排课时长约1个月,采用计算机自动排课降低至2周左右。自动排课中主要耗费时间是教室集合、教师集合、班级集合冲突检查算法。传统的自动排课冲突检查算法,主要是通过数据库不断轮询数据库方式,每一次检查都需要连接一次数据库,造成巨大的连接浪费,其他采用缓存的方式由于没有算法模型的支撑,提升效果不明显。由于自动排课问题本质上是一种NP问题,传统的排课算法只适用于在合理的时间内解决小规模问题实例,应用于较大排课规模时存在较大时间消耗。针对该问题,本专利技术提出一种基于全局优化的高校自动快速排课方法,提高高校自动排课效率。

技术实现思路

[0003]有鉴于此,本专利技术提供一种基于全局优化的高校自动快速排课方法与系统,目的在于:1)通过对选课信息进行分层,得到高校自动排课分层模型以及四层选课信息,并分别对每层选课信息构建cube立方体,进而构建排课冲突约束,并根据选课信息构建排课优先度目标函数,优先对课时数较多的课程课时进行排课,并增强同一课程不同课时的排序分散程度,避免学生在短期内过多上同一课程,影响学生的学习效率,通过模拟北极熊的捕猎模式生成捕猎半径,基于捕猎半径对任意课程课时的排课顺序进行全局搜索更新,调整不同课程课时的排课顺序,并结合种群的繁衍以及灭亡机制动态调整种群规模,从而增加新解以及删除最差解,扩大解的搜索空间,生成全局最优的课程排课顺序;2)基于学生每日的最大课时数、教师每日的最大课时数以及同一课程的短期排课频率构建高校自动排课分层模型的目标函数,即考虑学生上课以及教师授课的心理状态构建目标函数,提高学习效率,基于智能分层cube算法模型生成初始排课结果,有效保证所生成初始排课结果不存在排课冲突,且只有初始化与检测排课冲突时读取数据库,极大的降低对网络带宽的要求,同时也降低了排课服务器数量和硬件要求,并当排课结果不存在排课冲突时,对排课结果进行随机交换和调整处理,使其在原始排课结果处发生轻微扰动,有利于搜索空间向全局最优范围靠拢,而当排课结果存在排课冲突时,则基于排课冲突约束的方向对高校排课结果进行更新,有利于使得排课结果向减弱排课冲突的方向移动,快速得到有效的排课结果。
[0004]实现上述目的,本专利技术提供的一种基于全局优化的高校自动快速排课方法,包括以下步骤:S1:构建高校自动排课分层模型并建立排课冲突约束,所构建模型包括学生集合、课程集合、教师集合以及教室集合的选课信息;S2:基于高校自动排课分层模型中的选课信息构建排课优先度目标函数;
S3:对构建的排课优先度目标函数进行全局优化求解得到不同课程的排课顺序,其中改进的北极熊优化算法为所述全局优化的主要实施方法;S4:按照不同课程的排课顺序构建高校自动排课分层模型的目标函数,并基于排课冲突约束对目标函数进行优化求解,生成高校排课结果,所述基于排课冲突约束对目标函数进行优化求解,生成高校排课结果包括以下步骤:S41:通过随机优化策略动态变异高校排课结果判断是否满足排课约束;S42:在满足约束条件下计算相应目标函数值;S43:将所有可行的高校排课结果中目标函数值最小的高校排课结果作为最终的排课输出;其中改进的可行方向法为所述优化求解的主要实施方法。
[0005]作为本专利技术的进一步改进方法:可选地,所述S1步骤中构建高校自动排课分层模型,包括:构建高校自动排课分层模型,其中所构建模型分为四层选课信息,包括学生集合、课程集合、教师集合以及教室集合的选课信息;所述学生集合的表示形式为:;其中:表示高校中第i名学生,表示高校学生的总数;表示学生的选课集合;所述课程集合的表示形式为:;其中:表示第j门课程的编号,表示课程的选课学生集合,表示课程的课时数,表示高校的课程总数;所述教师集合的表示形式为:,其中表示第n名高校教师,N表示高校教师的总数;所述教室集合的表示形式为:,其中表示第m间教室,M表示高校中教室的总数;建立不同层选课信息之间的映射关系:;其中:表示高校教师在教室教授课程,且学生选到了课程,若则上述表示不成立;初始化生成不同层选课信息与排课时间的矩阵表示形式,并将矩阵表示形式构建为cube立方体,其中矩阵的列数Q为一学期的上课日期数,矩阵的行数P为每天的上课节数;
课程与排课时间的矩阵元素表示形式为:,表示第q个上课日期的第p节课被安排为课程,否则表示未被安排为课程,表示课程与排课时间所构成矩阵的第q列第p行元素,并将J门课程与排课时间的矩阵表示形式构建为cube立方体;其中;学生与排课时间的矩阵元素表示形式为:,表示学生在第q个上课日期的第p节课有课,表示学生与排课时间所构成矩阵的第q列第p行元素,并将num名学生与排课时间的矩阵表示形式构建为cube立方体;高校教师与排课时间的矩阵元素表示形式为:,表示高校教师在第q个上课日期的第p节课有课,高校教师表示高校教师与排课时间所构成矩阵的第q列第p行元素,并将N名高校教师与排课时间的矩阵表示形式构建为cube立方体;教室与排课时间的矩阵元素表示形式为:,表示教室在第q个上课日期的第p节课有课,教室表示教室与排课时间所构成矩阵的第q列第p行元素,并将M间教室与排课时间的矩阵表示形式构建为cube立方体;将不同层的选课信息、不同层选课信息之间的映射关系以及不同层选课信息与排课时间所构成的cube立方体作为高校自动排课分层模型。
[0006]可选地,所述S1步骤中建立排课冲突约束,包括:建立排课冲突约束,所述排课冲突约束包括:;;;其中:表示学生排课时间冲突约束,即学生在任意第q个上课日期的第p节课仅上一门课程;表示教室排课时间冲突约束,表示任意第q个上课日期的第p节课为课程,且上课地点在教室;表示课程中任意课时的排课时间为第q个上课日期的第p节课,表示教室在任意第q个上课
日期的第p节课仅上一门课程,且只有教室在任意第q个上课日期的第p节课被安排了课程的课时;表示教师排课时间冲突,即高校教师在任意第q个上课日期的第p节课仅上一门课程。
[0007]可选地,所述S2步骤中构建排课优先度目标函数,包括:构建排课优先度目标函数,其中排课优先度目标函数为:;;;其中:表示按照排课优先度进行排序的课程课时排序顺序,表示排序后的第k个课程课时,其中每门课程包含若干课时,课程对应的课时数为;本专利技术实施例中,每门课时对应一节课;表示排序后课程后,所对应课程的剩余课时数,其中剩余课时数不包括已排序的课程课时;表示课程的第u个课时的排序顺序,表示课程的第u+1个课时的排序顺序,。
[0008]在本专利技术实施例中,表示课时数较多的课程排序编号更靠前,即更大,并引入参数,为使该参数达到最小,排课优先度目标函数达到最大,则同一课程的相邻课时之间的排序间隔接近1.5P,增强同一课程不同课时的排序分散程度。
[0009]可选本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于全局优化的高校自动快速排课方法,其特征在于,所述方法包括:S1:构建高校自动排课分层模型并建立排课冲突约束,所构建模型包括学生集合、课程集合、教师集合以及教室集合的选课信息;S2:基于高校自动排课分层模型中的选课信息构建排课优先度目标函数;S3:对构建的排课优先度目标函数进行全局优化求解得到不同课程的排课顺序;S4:按照不同课程的排课顺序构建高校自动排课分层模型的目标函数,并基于排课冲突约束对目标函数进行优化求解,生成高校排课结果;所述基于排课冲突约束对目标函数进行优化求解,生成高校排课结果包括以下步骤:S41:通过随机优化策略动态变异高校排课结果判断是否满足排课约束;S42:在满足约束条件下计算相应目标函数值;S43:将所有可行的高校排课结果中目标函数值最小的高校排课结果作为最终的排课输出。2.如权利要求1所述的一种基于全局优化的高校自动快速排课方法,其特征在于,所述S1步骤中构建高校自动排课分层模型,包括:构建高校自动排课分层模型,其中所构建模型分为四层选课信息,包括学生集合、课程集合、教师集合以及教室集合的选课信息;所述学生集合的表示形式为:;其中:表示高校中第i名学生,表示高校学生的总数;表示学生的选课集合;所述课程集合的表示形式为:;其中:表示第j门课程的编号,表示课程的选课学生集合,表示课程的课时数,表示高校的课程总数;所述教师集合的表示形式为:,其中表示第n名高校教师,N表示高校教师的总数;所述教室集合的表示形式为:,其中表示第m间教室,M表示高校中教室的总数;建立不同层选课信息之间的映射关系:;其中:表示高校教师在教室教授课程,且学生选到了课程,若则上述表示不成立;初始化生成不同层选课信息与排课时间的矩阵表示形式,并将矩阵表示形式构建为cube立方体,其中矩阵的列数Q为一学期的上课日期数,矩阵的行数P为每天的上课节数;
课程与排课时间的矩阵元素表示形式为:,表示第q个上课日期的第p节课被安排为课程,否则表示未被安排为课程,表示课程与排课时间所构成矩阵的第q列第p行元素,并将J门课程与排课时间的矩阵表示形式构建为cube立方体;其中;学生与排课时间的矩阵元素表示形式为:,表示学生在第q个上课日期的第p节课有课,表示学生与排课时间所构成矩阵的第q列第p行元素,并将num名学生与排课时间的矩阵表示形式构建为cube立方体;高校教师与排课时间的矩阵元素表示形式为:,表示高校教师在第q个上课日期的第p节课有课,高校教师表示高校教师与排课时间所构成矩阵的第q列第p行元素,并将N名高校教师与排课时间的矩阵表示形式构建为cube立方体;教室与排课时间的矩阵元素表示形式为:,表示教室在第q个上课日期的第p节课有课,教室表示教室与排课时间所构成矩阵的第q列第p行元素,并将M间教室与排课时间的矩阵表示形式构建为cube立方体;将不同层的选课信息、不同层选课信息之间的映射关系以及不同层选课信息与排课时间所构成的cube立方体作为高校自动排课分层模型。3.如权利要求2所述的一种基于全局优化的高校自动快速排课方法,其特征在于,所述S1步骤中建立排课冲突约束,包括:建立排课冲突约束,所述排课冲突约束包括:;;;其中:表示学生排课时间冲突约束,即学生在任意第q个上课日期的第p节课仅上一门课程;表示教室排课时间冲突约束,表示任意第q个上课日期的第p节课为课程,且上课地点在教室;表示课程中任意课时的排课时间为第q个上课日期的第p节课,表示教室在任意第q个上课
日期的第p节课仅上一门课程,且只有教室在任意第q个上课日期的第p节课被安排了课程的课时;表示教师排课时间冲突,即高校教师在任意第q个上课日期的第p节课仅上一门课程。4.如权利要求1所述的一种基于全局优化的高校自动快速排课方法,其特征在于,所述S2步骤中构建排课优先度目标函数,包括:构建排课优先度目标函数,其中排课优先度目标函数为:;;;其中:表示按照排课优先度进行排序的课程课时排序顺序,表示排序后的第k个课程课时,其中每门课程包含若干课时,课程对应的课时数为;表示排序后课程后,所对应课程的剩余课时数,其中剩余课时数不包括已排序的课程课时;表示课程的第u个课时的排序顺序,表示课程的第u+1个课时的排序顺序,。5.如权利要求4所述的一种基于全局优化的高校自动快速排课方法,其特征在于,所述S3步骤中对构建的排课优先度目标函数进行全局优化求解得到不同课程的排课顺序,包括:对所构建的排课优先度目标函数进行全局优化求解得到不同课程的排课顺序,其中全局优化求解流程为:S31:确定全局优化求解的最大迭代求解次数为Max,当前迭代次数为t,t的初始值为0,北极熊种群的最大种群数为H;S32:初始化生成0.7H个北极熊构成北极熊种群,其中每个北极熊对应一组K个课程课时的排课顺序,北极熊种群第h个北极熊的初始表示...

【专利技术属性】
技术研发人员:郭尚志曹媛萍李科吴佳蒂彭勃徐时红谢曦和程鹏廖海波
申请(专利权)人:湖南强智科技发展有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1