一种优化后能满足多种需求的排课方法技术

技术编号:24171884 阅读:90 留言:0更新日期:2020-05-16 03:14
本发明专利技术公开了一种优化后能满足多种需求的排课方法。本发明专利技术在满足强制约束,即:1.同一教员不会在同一时间教授两个班级的情况;2.同一个班级不会在同一时间上两门课3.同一个场地不会同时被两个班级分别使用的情况下,还可以满足优化的非强制约束1.某些科目连续上课(语文等)2.教员在不同班级的教学进度一致3.根据科目性质不同有特定的上课时间等约束4.单双周上课。本发明专利技术支持在排课之前事先完备的安排场地和教员,使资源利用最大化,支持自定义约束与不同约束的权重,使得排课具有极大的自由度,以模拟退火算法,禁忌搜索,延迟接受等策略相结合找出可接受的局部最优解。

【技术实现步骤摘要】
一种优化后能满足多种需求的排课方法
本公开涉及教育信息化
,特别是涉及一种优化后能满足多种需求的排课方法。一种基于禁忌搜索、模拟退火、延迟接受相结合的同时满足多种排课约束的新高考排课系统。
技术介绍
随着信息技术的发展和互联网的迅速普及,信息化技术应用至各个传统领域,在教育领域互联网信息化技术已经被行业实践并在摸索中前行了多年,教育信息化如今已经得到了国家的认可并且作为十九大精神的一部分成为国家战略。教育信息化作为教育系统性变革的内生变量,将支撑引领教育现代化发展,推动教育理念更新、模式变革、体系重构。所谓教育信息化,是指在教育中普遍运用现代信息技术,开发教育资源,优化教育过程,以培养和提高学生的信息素养,促进教育现代化的过程。中学的排课工作是教学管理任务的重要环节之一,同时也是耗时耗力较多的一项工作.。传统的排课工作大多由经验丰富的教务人员进行手工编排,这种人工排课会排课效率低、效果差。并且无法满足个别教师的人性化需求,大多数时候需要某些教师的上课安排做出牺牲。为了优化排课质量、充分提高学生学习效率、推进学校信息化办公教育,利用本文档来自技高网...

【技术保护点】
1.一种优化后能满足多种需求的排课方法,其特征在于包括如下步骤:/n步骤S1.从数据库中读取事先录入的学校资源,获取时间资源和自定义的排课约束序列;/n所述的学校资源包括班级、科目、场地、教员等;/n所述的时间资源有三个要素:/n①dayOfweek,即每周的第几天;/n②每天的时间段:早读、上午、下午、晚自习;/n③每个时间段的节次序号:第一节、第二节、第三节、第四节等;/n所述的获取自定义的排课约束序列ConditionArray[],约束按照优先级从高到低的方式排序;根据约束对每一节课进行标识;/n约束条件包括硬约束和软约束,具体归纳如下:/n所述的硬约束:/n(1)全体老师和班级必须完...

【技术特征摘要】
1.一种优化后能满足多种需求的排课方法,其特征在于包括如下步骤:
步骤S1.从数据库中读取事先录入的学校资源,获取时间资源和自定义的排课约束序列;
所述的学校资源包括班级、科目、场地、教员等;
所述的时间资源有三个要素:
①dayOfweek,即每周的第几天;
②每天的时间段:早读、上午、下午、晚自习;
③每个时间段的节次序号:第一节、第二节、第三节、第四节等;
所述的获取自定义的排课约束序列ConditionArray[],约束按照优先级从高到低的方式排序;根据约束对每一节课进行标识;
约束条件包括硬约束和软约束,具体归纳如下:
所述的硬约束:
(1)全体老师和班级必须完成教学计划中的所有课时,即课程表不能有空缺;
(2)不应当出现同一教员在同一时间教授两个班级的情况;
(3)不应当出现同一个班级在同一时间上两门课的情况;
(4)不应当出现同一个场地同时被两个班级分别使用的情况;
所述的软约束:
(1)特定科目需要连续上课,所述的特定科主要是语数外等;
(2)同一教员在不同班级的教学进度一致,即A教员教授两个班1班和2班,如果1班上课2班也要在当天上课;
(3)根据科目性质不同有特定的上课时间等约束;例如周一下午语文教研时间,所有语文老师不上课;
(4)单双周上课;即单周上A课程,双周同一时间上B课程;
步骤S2.为每个班级的每一节课进行编号;
步骤S3.为选定的班级的每一节课根据排课约束序列随机初始化一个合法的时间,以获得每一节课的初始的状态,从而获得问题的第一个解;
步骤S4.根据排课约束序列ConditionArray[]对获得的解进行逐一校验,每一个约束可以得到一个数值R来表征约束的满足程度,得到校验约束评估序列ResultArray[];假设有h个约束条件,则得到长度为h的评估序列{R1,R2,R3,R4...Rh};Rh表示第h个约束条件的满足程度值;
步骤S5.将获得的第一个解以及对应的约束评估序列ResultArray[]作为一个整体,存储在一个长度固定为J的FIFO的序列StackArray[]中;
解和对应的评估序列整体作为一个元素存储在StackArray[]中,所以取到StackArray[]中的某个解,也就可以取到它所对应的评估序列;
步骤S6.针对选定的班级,以概率P在剩下合法的课程中挑选M节课程;针对挑选出的每节课程,在合法的范围内进行移动或与其他课程依次进行交换K次,形成M*K个新的解;所述合法的范围是指可移动课程的位置;所述其他课程是指挑选了M节课程后剩下的合法的课程;所述的概率P和交换次数K是设定值;
步骤S7.针对步骤S6产生的每个解,进行步骤S4操作,得到M*K个约束评估序列(M*K)ResultArray[];
步骤S8.按照设定的约束优先级由高到低的顺序,通过约束评估序列ResultArray[]挑选出M*K个解中结果最好的解,称为LocalBest;
步骤S9.将解LocalBest对应的的约束评估序列ResultArray[]和之前存储的StackArray[]中的每个结果进行比较,如果约束评估序列ResultArray[]大于等于StackArray[]中任意一个存储的结果,则接受这个最优解LocalBest并且作为下一次运算的初始值;
步骤...

【专利技术属性】
技术研发人员:王颖颖曾自桃
申请(专利权)人:浙江万朋教育科技股份有限公司
类型:发明
国别省市:浙江;33

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

1