本发明专利技术提供一种自动排课方法及系统,方法包括:S1,基于每一位老师的排课要求,对于每一位老师,按照班级节次顺序进行排课;S2,基于预设的冲突条件,检测当前老师的当前课程安排是否发生冲突;S3,若发生冲突,则将当前老师的当前课程调整到下一个班级节次,重复执行S2和S3,直到满足当前老师的课程安排结束条件;若没有发生冲突,则对当前老师的下一课程进行排课;S4,基于每一位老师的优先级,遍历每一位老师,对所有老师课程进行排课,输出所有老师课程的排课表。通过本发明专利技术,能够实现对老师课程的自动排课,减轻了学校教务人员的人工管理工作负担。作负担。作负担。
【技术实现步骤摘要】
一种自动排课方法及系统
[0001]本专利技术涉及教学领域,更具体地,涉及一种自动排课方法及系统。
技术介绍
[0002]在学校的教学工作中,对各位老师的课程进行排课是必须的,由于各位老师均对应有自己的排课要求,也就是说每位老师的课程安排都具有限制条件。
[0003]目前对于各位老师的排课均是教务人员人工进行的,面对各位老师复杂的课程安排要求,排课过程非常繁琐。
技术实现思路
[0004]本专利技术针对现有技术中存在的技术问题,提供一种自动排课方法及系统。
[0005]根据本专利技术的第一方面,提供了一种自动排课方法,包括:S1,基于每一位老师的排课要求,对于每一位老师,按照班级节次顺序进行排课;S2,基于预设的冲突条件,检测当前老师的当前课程安排是否发生冲突;S3,若发生冲突,则将当前老师的当前课程调整到下一个班级节次,重复执行S2和S3,直到满足当前老师的课程安排结束条件;若没有发生冲突,则对当前老师的下一课程进行排课;S4,基于每一位老师的优先级,遍历每一位老师,对所有老师课程进行排课,输出所有老师课程的排课表。
[0006]在上述技术方案的基础上,本专利技术还可以作出如下改进。
[0007]可选的,根据每一位老师的排课要求,确定每一位老师的优先级;根据每一位老师的优先级,为每一位老师配置对应的id。
[0008]可选的,所述S2之前包括:按照班级顺序为每一个班级配置对应的id;以课程节次的时间顺序为每一节次配置对应的id;其中,班级id和节次id组成班级节次矩阵。
[0009]可选的,所述以节次的时间顺序为每一节次配置对应的id;以一周时间为单位,周一第一节课的id=0,则周n、第m节课的id=(n
‑
1)*每日课程数+(m
‑
1),其中,1≤m≤7,1≤n≤5,且、n均为正整数。
[0010]可选的,所述当前老师的课程安排结束条件为:当前老师的当前课程安排不发生冲突或者冲突调整次数达到预设的最大次数。
[0011]可选的,若当前老师的当前课程的冲突调整次数达到预设的最大次数,但依然存在冲突,记录当前老师的当前课程,并记录其排课发生冲突的原因。
[0012]可选的,所述预设的冲突条件为同一名老师不能安排不同班级节次,同一班级节次不能安排不同的老师课程。
[0013]根据本专利技术的第二方面,提供一种自动排课系统,包括:排课模块,用于基于每一位老师的排课要求,对于每一位老师,按照班级节次顺序进行排课;检测模块,用于基于预设的冲突条件,检测当前老师的当前课程安排是否发生冲突;执行模块,用于若发生冲突,则将当前老师的当前课程调整到下一个班级节次,调用所述检测模块和所述执行模块,直到满足当前老师的课程安排结束条件;若没有发生冲突,则对当前老师的下一课程进行排
课;基于每一位老师的优先级,调用所述排课模块遍历每一位老师,对所有老师课程进行排课,输出所有老师课程的排课表。
[0014]根据本专利技术的第三方面,提供了一种电子设备,包括存储器、处理器,所述处理器用于执行存储器中存储的计算机管理类程序时实现自动排课方法的步骤。
[0015]根据本专利技术的第四方面,提供了一种计算机可读存储介质,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现自动排课方法的步骤。
[0016]本专利技术提供的一种自动排课方法及系统,根据每一位老师的优先级按照顺序为每一个老师进行排课,并对发生冲突的情况进行调整,实现了对老师课程的自动排课,减轻了学校教务人员的人工管理工作负担。
附图说明
[0017]图1为本专利技术提供的一种自动排课方法流程图;
[0018]图2为本专利技术提供的一种自动排课方法的整体流程图;
[0019]图3为本专利技术提供的一种自动排课系统的结构示意图;
[0020]图4为本专利技术提供的一种可能的电子设备的硬件结构示意图;
[0021]图5为本专利技术提供的一种可能的计算机可读存储介质的硬件结构示意图。
具体实施方式
[0022]下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。
[0023]图1为本专利技术提供的一种自动排课方法流程图,如图1所示,方法包括:S1,基于每一位老师的排课要求,对于每一位老师,按照班级节次顺序进行排课;S2,基于预设的冲突条件,检测当前老师的当前课程安排是否发生冲突;S3,若发生冲突,则将当前老师的当前课程调整到下一个班级节次,重复执行S2和S3,直到满足当前老师的课程安排结束条件;若没有发生冲突,则对当前老师的下一课程进行排课;S4,基于每一位老师的优先级,遍历每一位老师,对所有老师课程进行排课,输出所有老师课程的排课表。
[0024]可以理解的是,基于学校教务管理工作人员排课工作的工作量负担,本专利技术实施例提供了一种自动排课方法,基于每一位老师的排课要求(即排课限制条件),对每一位老师进行优先级的确定,对优先级高的老师先排课,对优先级低的老师后排课,即按照优先级对各位老师进行排课,先将优先级高的老师的所有课程排完之后,再对优先级低的老师的课程进行排课。
[0025]在对每一位老师排课的过程中,对于当前老师的课程,按照班级节次顺序来安排,在对当前老师的当前课程安排后,根据预设的冲突条件,检测当前老师的当前课程安排是否发生冲突,如果发生冲突,则对当前老师的当前课程的安排进行调整,调整后再次检测是否还发生冲突,直到不发生冲突或者调整次数达到上限(预设的最大调整次数),此时结束当前老师的当前课程的安排,对当前老师的下一课程进行安排,直到将所有老师的所有课程均安排完毕,最终输出所有老师课程的排课表。
[0026]本专利技术根据每一位老师的优先级按照顺序为每一个老师进行排课,并对发生冲突的情况进行调整,实现了对老师课程的自动排课,减轻了学校教务人员的人工管理工作负
担。
[0027]在一种可能的实施例方式中,根据每一位老师的排课要求,确定每一位老师的优先级;根据每一位老师的优先级,为每一位老师配置对应的id。
[0028]可以理解的是,在确定各位老师的优先级时,根据各位老师对排课的不同限制条件对每一位老师课程进行评分,按照评分高低进行排序,评分高的老师先进行排课,评分低的老师后进行排课,也就是说,按照每一位老师的评分从高到低为每一位老师进行排课。
[0029]其中,具体的条件和评分如下表1:
[0030]表1老师的排课要求和评分
[0031]条件评分校领导或外聘老师6课程有关联场地4老师连天4老师连堂3课程连堂2老师禁止课程1老师总课程数1
[0032]某位老师的评分=是否是校领导或外聘老师
×
6+关联场地的课程数量
×
4+老师连天数量
×
4+老师连堂数量
×
3+课程连堂
×
2+禁止课程时间
×
本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种自动排课方法,其特征在于,包括:S1,基于每一位老师的排课要求,对于每一位老师,按照班级节次顺序进行排课;S2,基于预设的冲突条件,检测当前老师的当前课程安排是否发生冲突;S3,若发生冲突,则将当前老师的当前课程调整到下一个班级节次,重复执行S2和S3,直到满足当前老师的课程安排结束条件;若没有发生冲突,则对当前老师的下一课程进行排课;S4,基于每一位老师的优先级,遍历每一位老师,对所有老师课程进行排课,输出所有老师课程的排课表。2.根据权利要求1所述的自动排课方法,其特征在于,根据每一位老师的排课要求,确定每一位老师的优先级;根据每一位老师的优先级,为每一位老师配置对应的id。3.根据权利要求1所述的自动排课方法,其特征在于,所述S2之前包括:按照班级顺序为每一个班级配置对应的id;以课程节次的时间顺序为每一节次配置对应的id;其中,班级id和节次id组成班级节次矩阵。4.根据权利要求3所述的自动排课方法,其特征在于,所述以节次的时间顺序为每一节次配置对应的id;以一周时间为单位,周一第一节课的id=0,则周n、第m节课的id=(n
‑
1)*每日课程数+(m
‑
1)。5.根据权利要求1所述的自动排课方法,其特征在于,所述当前老师的课程安排结束条件为:当前老师的当前课程安排不发生冲突或者冲突调整次数达到预设的最大次...
【专利技术属性】
技术研发人员:杨磊,陶娟,
申请(专利权)人:湖北君子泰科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。