CN111178751B - 新高考走班智能排课方法、系统、计算机设备及存储介质 - Google Patents
新高考走班智能排课方法、系统、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111178751B CN111178751B CN201911375961.XA CN201911375961A CN111178751B CN 111178751 B CN111178751 B CN 111178751B CN 201911375961 A CN201911375961 A CN 201911375961A CN 111178751 B CN111178751 B CN 111178751B
- Authority
- CN
- China
- Prior art keywords
- class
- optimal
- subjects
- arranging
- course
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 35
- 230000002068 genetic effect Effects 0.000 claims abstract description 34
- 238000011156 evaluation Methods 0.000 claims description 39
- 230000006870 function Effects 0.000 claims description 39
- 239000006185 dispersion Substances 0.000 claims description 17
- 230000035772 mutation Effects 0.000 claims description 15
- 230000003442 weekly effect Effects 0.000 claims description 10
- 239000007787 solid Substances 0.000 claims description 9
- 238000007599 discharging Methods 0.000 claims description 8
- 230000009191 jumping Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000005764 inhibitory process Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 12
- 210000000349 chromosome Anatomy 0.000 description 7
- 238000004590 computer program Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000011423 initialization method Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008303 genetic mechanism Effects 0.000 description 1
- 238000012248 genetic selection Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000002922 simulated annealing Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06315—Needs-based resource requirements planning or analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
- G06Q50/205—Education administration or guidance
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- Tourism & Hospitality (AREA)
- Health & Medical Sciences (AREA)
- Educational Administration (AREA)
- Entrepreneurship & Innovation (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Business, Economics & Management (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- Quality & Reliability (AREA)
- Development Economics (AREA)
- General Health & Medical Sciences (AREA)
- Educational Technology (AREA)
- Game Theory and Decision Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Operations Research (AREA)
- Genetics & Genomics (AREA)
- Evolutionary Computation (AREA)
- Primary Health Care (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Physiology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种新高考走班智能排课方法、系统、计算机设备及存储介质,所述方法包括:读取教学计划;根据所有学生的走班情况,分成多个教师和学生无冲突的走班组合,并使课程数与教学计划一致;将固定要排的科目、走班组合、行政课科目依次进行预排课;生成多张初始课表;采用遗传算法,计算多张初始课表的种群适应度值,选择种群适应度值最小的初始课表作为最佳课表;判断最佳课表的种群适应度值是否达到预设期望值;若是,则输出该最佳课表;若否,则将最佳课表依次进行交叉、变异,重新选择最佳课表,返回判断最佳课表的种群适应度值是否达到预设期望值,并执行后续操作。本发明能够满足大规模数据的排课,且满足新高考走班排课的实际需求。
Description
技术领域
本发明涉及一种新高考走班智能排课方法、系统、计算机设备及存储介质,属于教育中的排课领域。
背景技术
随着新高考教育制度的改革,全国各地实行走班教学3+1+2新模式,与传统的教学模式对比,“走班”新模式下没有特定的行政班,学生根据自己所选的课程,在各个教学班之间进行走动式的上课;教师也不是去固定的行政班授课,而是在不同的教室等待选择本课程的学生前来上课。这种模式带来最大的问题就是教学资源的短缺、教室和师资力量的匮乏。因此,合理的排课显得更加重要。
排课问题是一个多目标、多约束的优化决策问题,是一个NP组合优化问题。由于排课的这些特点,排课是教务管理工作中的一个难点。传统的人工编排课表的方式不仅需要耗费工作人员大量的时间,且排出的课表不宜调整,同时很难满足在教育资源有限的条件下对教师和学生更加人性化的需求。
传统的方法中,算法大多以“行政班”为排课单元,只适用于传统的教学模式,面对“走班”的新教学模式已经不在适用。同时在排课问题的约束条件上考虑的不够充分,无法实现周内分散、天内集中、教案平齐、走班、合班等个性化需求,以及难以解决多个年级同时排课问题,排课准确率低,无法满足大规模数据的排课问题。
近几年,国内外学者将不同的算法应用在解决排课问题上,如蚁群算法、模拟退火算法、贪心算法、遗传算法等,其中遗传算法是一种基于生物进化理论、具有一定并行搜索能力的优化算法,它主要是基于进化过程中的信息遗传机制和优胜劣汰的自然选择原则,从一个种群开始,利用选择、交叉、变异等遗传算子对种群进行不断的进化,通过设计适应度函数来使得算法在迭代过程中不断收敛,最后得到全局最优解或近似最优解。
发明内容
有鉴于此,本发明提供了一种新高考走班智能排课方法、系统、计算机设备及存储介质,其可以实现多个年级同时排课,排课准确率高,能够满足大规模数据的排课,且满足新高考走班排课的实际需求。
本发明的第一个目的在于提供一种新高考走班智能排课方法。
本发明的第二个目的在于提供一种新高考走班智能排课系统。
本发明的第三个目的在于提供一种计算机设备。
本发明的第四个目的在于提供一种存储介质。
本发明的第一个目的可以通过采取如下技术方案达到:
一种新高考走班智能排课方法,所述方法包括:
读取教学计划;
根据所有学生的走班情况,分成多个教师和学生无冲突的走班组合,并使课程数与教学计划一致;
根据教学计划,将固定要排的科目、走班组合、行政课科目依次进行预排课;
根据预排课结果,生成多张初始课表;其中,所述初始课表的首列为各个时间段,初始课表的首行为各个班级;
采用遗传算法,计算多张初始课表的种群适应度值,选择种群适应度值最小的初始课表作为最佳课表;
判断最佳课表的种群适应度值是否达到预设期望值;
若最佳课表的种群适应度值达到预设期望值,则输出该最佳课表;
若最佳课表的种群适应度值未达到预设期望值,则将最佳课表依次进行交叉、变异,重新选择最佳课表,返回判断最佳课表的种群适应度值是否达到预设期望值,并执行后续操作。
进一步的,所述根据教学计划,将固定要排的科目、行政课科目依次进行预排课,具体包括:
根据教学计划,计算每个班级的每周课程数;
将每周划分为多个时间段,并将各个时间段和各个班级分别作为课表的首列和首行;
将所有班级固定要排的科目进行排课;
从第一个班级开始,将走班组合、行政课科目依次从每周的第一个时间段往下排课,完成第一个班级排课;
从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课;
判断同一行中其他班级是否已经出现相同科任教师的名字,若是,即出现冲突,则跳至未排课的最后位置,从下往上排课;若仍然出现冲突,则往上一个空位排课;若所有空位都出现冲突,则选择已排课位置进行替换,且需满足替换后不出现冲突;
判断是否排完所有班级,若是,则结束预排课;否则,返回从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课,并执行后续操作。
进一步的,所述种群适应度值采用适应度函数计算,所述适应度函数如下式:
其中,ωi为每个适应度函数的权重,其大小由用户需求的优先级决定,fi为每个用户需求的适应度评价函数,如下式:
其中,Ni为在课表中违反用户需求i的冲突数量,为惩罚因子。
进一步的,所述用户需求包括物理约束、固排、禁排、优排、周内分散和天内集中;
所述物理约束是指:教师在同一个时间段只能上一门课程;
所述固排是指:在固定时间段安排固定科目;
所述禁排是指:禁止在不该排课的时间段安排教师上课;
所述优排是指:在指定的时间段安排指定科目;
所述周内分散是指:在一周内均匀安排课程;
所述天内集中是指:将教师的课程集中安排在一天的上午或下午的某个时间段。
进一步的,将最佳课表进行交叉,具体包括:
随机选取最佳课表中某一列的两个位置的课程进行交换;
若交换的位置存在走班组合,则取消本次交叉操作。
进一步的,将交叉后的最佳课表进行变异,具体为:随机选取交叉后的最佳课表的两行进行互换。
本发明的第二个目的可以通过采取如下技术方案达到:
一种新高考走班智能排课系统,所述系统包括:
读取模块,用于读取教学计划;
划分模块,用于根据所有学生的走班情况,分成多个教师和学生无冲突的走班组合,并使课程数与教学计划一致;
预排课模块,用于根据教学计划,将固定要排的科目、走班组合、行政课科目依次进行预排课;
生成模块,用于根据预排课结果,生成多张初始课表;其中,所述初始课表的首列为各个时间段,初始课表的首行为各个班级;
选择模块,用于采用遗传算法,计算多张初始课表的种群适应度值,选择种群适应度值最小的初始课表作为最佳课表;
判断模块,用于判断最佳课表的种群适应度值是否达到预设期望值;
输出模块,用于若最佳课表的种群适应度值达到预设期望值,则输出该最佳课表;
交叉变异模块,用于若最佳课表的种群适应度值未达到预设期望值,则将最佳课表依次进行交叉、变异,重新选择最佳课表,返回判断最佳课表的种群适应度值是否达到预设期望值,并执行后续操作。
进一步的,所述预排课模块,具体包括:
计算单元,用于根据教学计划,计算每个班级的每周课程数;
划分单元,用于将每周划分为多个时间段,并将各个时间段和各个班级分别作为课表的首列和首行;
第一排课单元,将所有班级固定要排的科目进行排课;
第二排课单元,用于从第一个班级开始,将走班组合、行政课科目依次从每周的第一个时间段往下排课,完成第一个班级排课;
第三排课单元,用于从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课;
第一判断单元,用于判断同一行中其他班级是否已经出现相同科任教师的名字,若是,即出现冲突,则跳至未排课的最后位置,从下往上排课;若仍然出现冲突,则往上一个空位排课;若所有空位都出现冲突,则选择已排课位置进行替换,且需满足替换后不出现冲突;
第二判断单元,用于判断是否排完所有班级,若是,则结束预排课;否则,返回从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课,并执行后续操作。
本发明的第三个目的可以通过采取如下技术方案达到:
一种计算机设备,包括处理器以及用于存储处理器可执行程序的存储器,所述处理器执行存储器存储的程序时,实现上述的新高考走班智能排课方法。
本发明的第四个目的可以通过采取如下技术方案达到:
一种存储介质,存储有程序,所述程序被处理器执行时,实现上述的新高考走班智能排课方法。
本发明相对于现有技术具有如下的有益效果:
1、本发明根据所有学生的走班情况,分成多个教师和学生无冲突的走班组合,优先处理走班课的组合问题,将固定要排的科目、走班组合、行政课科目依次进行预排课,根据预排课结果,生成多张初始课表,采用遗传算法,计算多张初始课表的种群适应度值,选择种群适应度值最小的初始课表作为最佳课表,若最佳课表的种群适应度值达到预设期望值,则输出该最佳课表,若最佳课表的种群适应度值未达到预设期望值,则将最佳课表依次进行交叉、变异,然后重新选择最佳课表,直到种群适应度值达到预设期望值,使遗传过程朝着预计的方向进行,可以更快的收敛,通过实际测试表明,排出的课表可以满足新高考走班排课的实际需求。
2、本发明在预排课时,首先将所有班级固定要排的科目进行排课,然后针对各个班级的走班组合和行政课科目,按课程顺序从每周的第一个时间段往下排课,完成第一个班级排课,再从下一个班级开始,按课程顺序从未排课位置开始,从上往下排课,判断同一行中其他班级是否已经出现相同科任教师的名字,若是,即出现冲突,则跳至未排课的最后位置,从下往上排课;若仍然出现冲突,则往上一个空位排课;若所有空位都出现冲突,则选择已排课位置进行替换,且需满足替换后不出现冲突,通过这种特殊初始化方式,可以使得生成的初始课表能够避免物理约束的冲突。
2、本发明的遗传算法采用了新的交叉方法,在一定概率下对某一列的N(N为2的倍数)行之间进行两两交换,采用了小粒度的两两交换,保证收敛稳定性,并且还引入了检查机制,若交换的位置存在走班组合,则取消本次交叉操作。
3、本发明在课表初始化的过程中采用了一种基于规则的初始化方法,优先处理走班课的组合问题,并保证不出现一个学生同时上多个班级和教师同时教多个班级的冲突问题,随后处理固定要排的科目和行政课科目的课程,实现走班课表种群初始化,避免出现无解问题;其次,在遗传迭代过程中,根据实际问题定义了特殊的选择、交叉、变异的遗传方式,并引入了检查机制避免输出课表出现物理冲突,保证课表收敛,提高排课准确率;最后,构建了多种约束评价方法,可以有效解决固排、禁排、优先排、连上限制、周内分散、天内集中、教案平齐、走班、合班、单双周、教室资源限制等多种个性化需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为传统遗传算法的流程图。
图2为本发明实施例1的新高考走班智能排课方法的流程图。
图3为本发明实施例1的将固定要排的科目、走班组合、行政课科目依次进行预排课的流程图。
图4为传统遗传算法中轮盘赌选择方法的示意图。
图5为传统遗传算法中每一代的种群适应度值示意图。
图6a为本发明实施例1的遗传算法中交叉前的课表示意图。
图6b为本发明实施例1的遗传算法中交叉后的课表示意图。
图7a为本发明实施例1的遗传算法中变异前的课表示意图。
图7b为本发明实施例1的遗传算法中变异后的课表示意图。
图8为本发明实施例2的新高考走班智能排课系统的结构框图。
图9为本发明实施例2的预排课模块的结构框图。
图10为本发明实施例3的计算机设备的结构框图。
图11为本发明实施例3的计算机设备安装的排课软件的排课主程序模块的框架图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
遗传算法是模拟达尔文生物进化论思想,它是利用一种模拟自然进化过程搜索最优解。遗传算法作为全局优化策略,可以防止结果陷入局部最优,但是算法本身比较复杂,在取值范围大、变量多时,算法性能速度会下降,在进行排课时耗费的时间比较长,如果限制条件繁多、复杂,可能得不到想要的解,传统遗传算法的流程图如图1所示,按照具体要求初始产生N个个体,根据适应度函数计算每个个体的适应度值,判断适应度值是否满足项目要求,若满足则输出最佳个体,否则在种群中经多次选择适应度值较优的个体并复制,以保持种群数量维持不变,然后对其每个个体以一定概率进行交叉和变异操作产生新的种群,以达到种群进化的目的。
如图2所示,本实施例提供了一种新高考走班智能排课方法,该方法采用了改进的遗传算法,其包括以下步骤:
S201、读取教学计划。
教学计划可以从数据库中读取,教学计划中包括班级、课程数、走班课程数、固排科目、行政课科目等,固排科目即固定要排的一些科目,如固定每周一第9节开班会,固定每周五第7、8、9节做测验考试等。
S202、根据所有学生的走班情况,分成多个教师和学生无冲突的走班组合,并使课程数与教学计划一致。
对全年级所有学生的走班情况进行分析,分成多个教师和学生无冲突的走班组合,将每个走班组合视为一个课程,使课程数与教学计划一致。
S203、根据教学计划,将固定要排的科目、走班组合、行政课科目依次进行预排课。
S204、根据预排课结果,生成多张初始课表。
本实施例先将教学计划中所有班级固定要排的科目进行预排课,然后针对每个班级,将走班组合进行预排课,最后将数学、语文、英语等行政课科目进行预排课,因此在所有班级固定要排的科目进行预排课之后,需要在每个班级中,对走班组合和行政课科目分别进行排序,设班级为Ci,行政课科目为Sj。
进一步地,上述步骤S202如图3所示,具体包括:
S2021、根据教学计划,计算每个班级的每周课程数(即上课任务)。
S2022、将每周划分为多个时间段,并将各个时间段和各个班级分别作为课表的首列和首行。
本实施例将每周划分为四十五个时间段(每天有九个时间段),将一张课表定义为一个染色体,其中T1-T45表示每周的四十五个时间段,其作为课表的首列,C1-C17表示班级,分别为高三1班-17班,其作为课表的首行。
S2023、将所有班级固定要排的科目进行排课。
S2024、从第一个班级开始,将走班组合、行政课科目依次从每周的第一个时间段往下排课,完成第一个班级排课。
具体地,根据上述每个班级的走班组合和行政课科目的课程排序,从第一个班级开始,先按走班组合的课程顺序从每周的第一个时间段T1往下排课,然后按行政课科目的课程顺序从未排课位置开始,从上往下排课,完成第一个班级排课。
S2025、从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课。
具体地,根据上述走班组合和行政课科目的课程排序,从下一个班级开始,先按走班组合的课程顺序从未排课位置开始,从上往下排课,然后按行政课科目的课程顺序从未排课位置开始,从上往下排课。
S2026、判断同一行(同一时间段)中其他班级是否已经出现相同科任教师的名字,若是,即出现冲突,则跳至未排课的最后位置,从下往上排课;若仍然出现冲突,则往上一个空位排课;若所有空位都出现冲突,则选择已排课位置进行替换,且需满足替换后不出现冲突。
由于物理约束的冲突是必须避免的,根据需求,物理约束包括三种:教师在同一时间段(即同一节次)只能上一门课程;学生在同一时间段只能上一门课程;一个教室在同一时间段只能安排一门课程,由于后面两种情况在分班及设定条件时已经处理,因此本实施例不考虑这两种情况,只着重应对第一种情况;由于课表中同一班级同一时间段只能排一门课程,因此避免了一个教师在同一时间段在同一班级上两门课程的情况,因此只需避免同一教师在同一时间段在不同班级上课的情况;具体地,每个班级的某个科目Si由同一个科任教师进行教学,通过python中的字典,可由班级和科目找到对应的科任教师,判断同一行中其他班级是否已经出现相同科任教师的名字,即可避免同一教师在同一时间段在不同班级上课。
S2027、判断是否排完所有班级,若是,则结束预排课;否则,返回步骤S2025。
将不同班级分别作为第一个班级,通过上述步骤S2024~S2027的处理,可以得到多张初始课表,其中一张初始课表如下表1所示,并且通过步骤S2024~S2027的特殊初始化方式,可以使得生成的初始课表能够避免物理约束的冲突,并且可以满足走班组合(比如走班1组合包含物理班、化学班和历史班)。
表1初始课表
S204、采用遗传算法,计算多张初始课表的种群适应度值,选择种群适应度值最小的初始课表作为最佳课表。
传统的遗传算法中,选择操作一般采用轮盘赌的方式,如图4所示,染色体被选中的概率与适应度成正比,但适应度小的也有可能选中,如若某个算子的适应度为ai,进行归一化,如下式:
然而,在实际测试中,利用轮盘赌算法进行遗传选择的时候发现,每一代的种群适应度值之间相差不大,如图5所示。
因此,如果使用传统的选择操作,即将适应度所占的比重作为染色体进行选择操作的概率,则很大概率无法选择到适应度较优的个体,导致遗传过程趋于随机无向性。本实施例改进为:对于每一代的多个染色体(多张初始课表),按种群适应度值进行大小排序,选择种群适应度值最小的染色体作为最佳染色体,即最佳课表,因为种群适应度值越小,表示在课表中违反用户需求的冲突数量越少,这样在每轮迭代过程中都可以保留最佳课表,经过多次选择、交叉、变异迭代后,在课表中违反用户需求的冲突数量会越来越少,使达到课表收敛的目的,最后无限接近甚至满足用户需求。
本实施例的种群适应度值采用适应度函数计算,该适应度函数如下式:
其中,ωi为每个适应度函数的权重,其大小由用户需求的优先级决定,fi为每个用户需求的适应度评价函数,如下式:
其中,Ni为在课表中违反用户需求i的冲突数量,为惩罚因子。
本实施例的用户需求包括物理约束(教师约束)、固排(硬约束)、禁排(硬约束)、优排(软约束)、周内分散(硬约束)和天内集中(硬约束),其中物理约束和固排在上述内容中已有说明,物理约束的评估方法为统计课表同一行(同一时间段)是否出现两次以上相同教师的名称,固排的评估方法为判断固定位置是否为指定科目,现针对禁排、优排、周内分散和天内集中进行说明。
1)禁排及优排
禁排是指禁止在不该排课的时间段安排教师上课,禁排及优先排的区别在于禁排为硬约束,优排为软约束,因此两种的权重大小不同,禁排及优先排的类型包含:班级禁排及优排、科目禁排及优排、教师禁排及优排,禁排的评估方法为禁排位置是否出现禁排的班级、科目、教师排课任务,优排的评估方法为优排位置是否为空或者出现其他科目或教师排课任务。
2)周内分散
周内分散是指在一周内均匀安排课程,周内分散的目的在于保证教学任务的均匀分布,因此评估方法为:计算每门课的天上课任务均值,即周上课任务除以每周上课天数(五天),再计算科目实际每天上课次数与均值差的绝对值,如果该值大于1,说明教案不平齐。
3)天内集中
天内集中是指将教师的课程集中安排在一天的上午或下午的某个时间段,天内集中的目的在于保证教师的课程尽量集中安排在上午或下午的某个时间段,因此评估方法为:统计一天中课程大于或等于2的教师,判断其课程是否集中安排在上午或下午某个时间段(一般定义为前五节为上午)。
通过以上说明,式(2)可转换为:
F=w1*f1+w2*f2+w3*f3+w4*f4+w5*f5+w6*f6 (4)
其中:
f1表示物理约束的适应度评价函数,结合式(2),N1表示违反物理约束的冲突数量,指课表出现教师同一时间段去多个班级上课的数量;
f2表示固排的适应度评价函数,结合式(2),N2表示违反固排的冲突数量,指没有满足固定时间段安排固定科目的数量;
f3表示禁排的适应度评价函数,结合式(2),N3表示违反禁排的冲突数量,指在教师在不该排课的时间段安排上课的数量;
f4表示优排的适应度评价函数,结合式(2),N4表示违反优排的冲突数量,指没有在指定的时间段排指定科目的数量;
f5表示周内分散的适应度评价函数,结合式(2),N5表示违反周内分散的冲突数量,指每门课程需没有平均分配到每天;
f6表示天内集中的适应度评价函数,结合式(2),N5表示违反天内集中的冲突数量,指一天内有课程大于或等于2节时需保持连堂,且没有集中安排在上午或下午某个时间段;
w1=2,w2=1,w3=1,w4=1,w5=1,w6=1,权值大表示优先级别高,会优先处理。
依次类推,如果有更多特定的用户需求,如单双周,连堂课等要求,只需依次统计冲突数量即可,这样如果适应度值越小,越接近用户需求。
S205、判断最佳课表的种群适应度值是否达到预设期望值。
用户可以预先设置一个期望值;若此时最佳课表的种群适应度值达到预设期望值,即已符合用户需求,则进入步骤S206,若此时最佳课表的种群适应度值未达到预设期望值,则进入步骤S206,直到达到预设期望值,再进入步骤S207。
S206、输出该最佳课表。
S207、将最佳课表依次进行交叉、变异,重新选择最佳课表,返回步骤S205。
交叉和变异的具体说明如下:
1)交叉
本实施例在初始化的过程优先解决了走班组合问题,保证所有学生同时去上走班课,防止有同学上自习的情况出现,但是在进行交叉(列与列交换)的时候会破坏原有的走班组合,因此本实施例的交叉操作采用小粒度两两交换,随机选取课表某一列的两个位置的课程进行交换,保证收敛稳定性,如果交换粒度过大,会增加产生新冲突的概率,导致适应度值来回震荡无法收敛;此外,本实施例还引入了检查机制,若交换的位置存在走班组合,则取消本次交叉操作,交叉前的课表如图6a所示,交叉后由于存在走班组合,取消本次交叉操作,如图6b所示。
2)变异
变异在生物学中定义为染色体本身的结构改变,本实施例中将变异操作定义为随机选取课表的两行(两个时间段)进行互换,无具体条件限制,变异前的课表如图7a所示,变异后的课表如图7b所示。
在交叉和变异之后,利用步骤S203的方法重新选择最佳课表,然后返回步骤S204;若经过两万次迭代后,最佳课表的种群适应度值仍然未达到预设期望值,则输出该最佳课表。
本领域技术人员可以理解,实现上述实施例的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,相应的程序可以存储于计算机可读存储介质中。
应当注意,尽管在附图中以特定顺序描述了上述实施例的方法操作,但是这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
实施例2:
如图8所示,本实施例提供了一种新高考走班智能排课系统,该系统包括读取模块801、划分模块802、预排课模块803、生成模块804、选择模块805、判断模块806、输出模块807和交叉变异模块808,各个模块的具体功能如下:
所述读取模块801,用于读取教学计划。
所述划分模块802,用于根据所有学生的走班情况,分成多个教师和学生无冲突的走班组合,并使课程数与教学计划一致。
所述预排课模块803,用于根据教学计划,将固定要排的科目、走班组合、行政课科目依次进行预排课。
所述生成模块804,用于根据预排课结果,生成多张初始课表;其中,所述初始课表的首列为各个时间段,初始课表的首行为各个班级。
所述选择模块805,用于采用遗传算法,计算多张初始课表的种群适应度值,选择种群适应度值最小的初始课表作为最佳课表。
所述判断模块806,用于判断最佳课表的种群适应度值是否达到预设期望值。
所述输出模块807,用于若最佳课表的种群适应度值达到预设期望值,则输出该最佳课表。
所述交叉变异模块808,用于若最佳课表的种群适应度值未达到预设期望值,则将最佳课表依次进行交叉、变异,重新选择最佳课表,返回判断最佳课表的种群适应度值是否达到预设期望值,并执行后续操作。
进一步地,所述预排课模块803如图9所示,具体包括:
计算单元8031,用于根据教学计划,计算每个班级的每周课程数。
划分单元8032,用于将每周划分为多个时间段,并将各个时间段和各个班级分别作为课表的首列和首行。
第一排课单元8033,将所有班级固定要排的科目进行排课。
第二排课单元8034,用于从第一个班级开始,将走班组合、行政课科目依次从每周的第一个时间段往下排课,完成第一个班级排课。
第三排课单元8035,用于从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课。
第一判断单元8036,用于判断同一行中其他班级是否已经出现相同科任教师的名字,若是,即出现冲突,则跳至未排课的最后位置,从下往上排课;若仍然出现冲突,则往上一个空位排课;若所有空位都出现冲突,则选择已排课位置进行替换,且需满足替换后不出现冲突。
第二判断单元8037,用于判断是否排完所有班级,若是,则结束预排课;否则,返回从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课,并执行后续操作。
本实施例中各个模块的具体实现可以参见上述实施例1,在此不再一一赘述;需要说明的是,本实施例提供的系统仅以上述各功能模块的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
实施例3:
本实施例提供了一种计算机设备,该计算机设备为计算机,如图10所示,其通过系统总线1001连接的处理器1002、存储器、输入装置1003、显示器1004和网络接口1005,该处理器用于提供计算和控制能力,该存储器包括非易失性存储介质1006和内存储器1007,该非易失性存储介质1006存储有操作系统、计算机程序和数据库,该内存储器1007为非易失性存储介质中的操作系统和计算机程序的运行提供环境,处理器1002执行存储器存储的计算机程序时,实现上述实施例1的新高考走班智能排课方法,如下:
读取教学计划;
根据所有学生的走班情况,分成多个教师和学生无冲突的走班组合,并使课程数与教学计划一致;
根据教学计划,将固定要排的科目、走班组合、行政课科目依次进行预排课;
根据预排课结果,生成多张初始课表;其中,所述初始课表的首列为各个时间段,初始课表的首行为各个班级;
采用遗传算法,计算多张初始课表的种群适应度值,选择种群适应度值最小的初始课表作为最佳课表;
判断最佳课表的种群适应度值是否达到预设期望值;
若最佳课表的种群适应度值达到预设期望值,则输出该最佳课表;
若最佳课表的种群适应度值未达到预设期望值,则将最佳课表依次进行交叉、变异,重新选择最佳课表,返回判断最佳课表的种群适应度值是否达到预设期望值,并执行后续操作。
进一步地,所述根据教学计划,将固定要排的科目、行政课科目依次进行预排课,具体包括:
根据教学计划,计算每个班级的每周课程数;
将每周划分为多个时间段,并将各个时间段和各个班级分别作为课表的首列和首行;
将所有班级固定要排的科目进行排课;
从第一个班级开始,将走班组合、行政课科目依次从每周的第一个时间段往下排课,完成第一个班级排课;
从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课;
判断同一行中其他班级是否已经出现相同科任教师的名字,若是,即出现冲突,则跳至未排课的最后位置,从下往上排课;若仍然出现冲突,则往上一个空位排课;若所有空位都出现冲突,则选择已排课位置进行替换,且需满足替换后不出现冲突;
判断是否排完所有班级,若是,则结束预排课;否则,返回从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课,并执行后续操作。
进一步地,将最佳课表进行交叉,具体包括:
随机选取最佳课表中某一列的两个位置的课程进行交换;
若交换的位置存在走班组合,则取消本次交叉操作。
进一步地,将交叉后的最佳课表进行变异,具体为:随机选取交叉后的最佳课表的两行进行互换。
本实施例的计算机设备上可以安装能够实现上述行政班智能排课方法的排课软件,其中排课主程序模块如图11所示,包括初始化单元、评价单元和遗传单元。
初始化单元用于构建初始种群,即初始课表(初代课表),包括走班初始化和行政班初始化,具体为:读取教学计划;根据所有学生的走班情况,分成多个教师和学生无冲突的走班组合,并使课程数与教学计划一致;根据教学计划,将固定要排的科目、走班组合、行政课科目依次进行预排课;根据预排课结果,生成多张初始课表。
评价单元用于评价产生课表的优劣性,包括物理约束、硬约束和软约束,它们对评价的贡献程度不同,主要利用上述实施例1的式(3)来完成各种约束的评价。
遗传单元用于产生新种群,即新的子代课表,包括选择操作、交叉操作和变异操作,具体为:选择种群适应度值最小的初始课表作为最佳课表;判断最佳课表的种群适应度值是否达到预设期望值;若最佳课表的种群适应度值达到预设期望值,则输出该最佳课表;若最佳课表的种群适应度值未达到预设期望值,则将最佳课表依次进行交叉、变异,重新选择最佳课表,返回判断最佳课表的种群适应度值是否达到预设期望值,并执行后续操作。
实施例4:
本实施例提供了一种存储介质,该存储介质为计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时,实现上述实施例1的新高考走班智能排课方法,如下:
读取教学计划;
根据所有学生的走班情况,分成多个教师和学生无冲突的走班组合,并使课程数与教学计划一致;
根据教学计划,将固定要排的科目、走班组合、行政课科目依次进行预排课;
根据预排课结果,生成多张初始课表;其中,所述初始课表的首列为各个时间段,初始课表的首行为各个班级;
采用遗传算法,计算多张初始课表的种群适应度值,选择种群适应度值最小的初始课表作为最佳课表;
判断最佳课表的种群适应度值是否达到预设期望值;
若最佳课表的种群适应度值达到预设期望值,则输出该最佳课表;
若最佳课表的种群适应度值未达到预设期望值,则将最佳课表依次进行交叉、变异,重新选择最佳课表,返回判断最佳课表的种群适应度值是否达到预设期望值,并执行后续操作。
进一步地,所述根据教学计划,将固定要排的科目、行政课科目依次进行预排课,具体包括:
根据教学计划,计算每个班级的每周课程数;
将每周划分为多个时间段,并将各个时间段和各个班级分别作为课表的首列和首行;
将所有班级固定要排的科目进行排课;
从第一个班级开始,将走班组合、行政课科目依次从每周的第一个时间段往下排课,完成第一个班级排课;
从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课;
判断同一行中其他班级是否已经出现相同科任教师的名字,若是,即出现冲突,则跳至未排课的最后位置,从下往上排课;若仍然出现冲突,则往上一个空位排课;若所有空位都出现冲突,则选择已排课位置进行替换,且需满足替换后不出现冲突;
判断是否排完所有班级,若是,则结束预排课;否则,返回从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课,并执行后续操作。
进一步地,将最佳课表进行交叉,具体包括:
随机选取最佳课表中某一列的两个位置的课程进行交换;
若交换的位置存在走班组合,则取消本次交叉操作。
进一步地,将交叉后的最佳课表进行变异,具体为:随机选取交叉后的最佳课表的两行进行互换。
本实施例中所述的存储介质可以是磁盘、光盘、计算机存储器、随机存取存储器(RAM,Random Access Memory)、U盘、移动硬盘等介质。
综上所述,本发明在课表初始化的过程中采用了一种基于规则的初始化方法,优先处理走班课的组合问题,并保证不出现一个学生同时上多个班级和教师同时教多个班级的冲突问题,随后处理固定要排的科目和行政课科目的课程,实现走班课表种群初始化,避免出现无解问题;其次,在遗传迭代过程中,根据实际问题定义了特殊的选择、交叉、变异的遗传方式,并引入了检查机制避免输出课表出现物理冲突,保证课表收敛,提高排课准确率;最后,构建了多种约束评价方法,可以有效解决固排、禁排、优先排、连上限制、周内分散、天内集中、教案平齐、走班、合班、单双周、教室资源限制等多种个性化需求。
以上所述,仅为本发明专利较佳的实施例,但本发明专利的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明专利所公开的范围内,根据本发明专利的技术方案及其发明构思加以等同替换或改变,都属于本发明专利的保护范围。
Claims (6)
1.一种新高考走班智能排课方法,其特征在于,所述方法包括:
读取教学计划;
根据所有学生的走班情况,分成多个教师和学生无冲突的走班组合,将每个走班组合视为一个课程,并使课程数与教学计划一致;
根据教学计划,将固定要排的科目、走班组合、行政课科目依次进行预排课;
根据预排课结果,生成多张初始课表;其中,所述初始课表的首列为各个时间段,初始课表的首行为各个班级;
采用遗传算法,计算多张初始课表的种群适应度值,选择种群适应度值最小的初始课表作为最佳课表;
判断最佳课表的种群适应度值是否达到预设期望值;
若最佳课表的种群适应度值达到预设期望值,则输出该最佳课表;
若最佳课表的种群适应度值未达到预设期望值,则将最佳课表依次进行交叉、变异,重新选择最佳课表,返回判断最佳课表的种群适应度值是否达到预设期望值,并执行后续操作;
所述根据教学计划,将固定要排的科目、行政课科目依次进行预排课,具体包括:
根据教学计划,计算每个班级的每周课程数;
将每周划分为多个时间段,并将各个时间段和各个班级分别作为课表的首列和首行;
将所有班级固定要排的科目进行排课;
从第一个班级开始,将走班组合、行政课科目依次从每周的第一个时间段往下排课,完成第一个班级排课;
从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课;
判断同一行中其他班级是否已经出现相同科任教师的名字,若是,即出现冲突,则跳至未排课的最后位置,从下往上排课;若仍然出现冲突,则往上一个空位排课;若所有空位都出现冲突,则选择已排课位置进行替换,且需满足替换后不出现冲突;
判断是否排完所有班级,若是,则结束预排课;否则,返回从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课,并执行后续操作;
所述种群适应度值采用适应度函数计算,所述适应度函数如下式:
其中,ωi为每个适应度函数的权重,其大小由用户需求的优先级决定,fi为每个用户需求的适应度评价函数,如下式:
其中,Ni为在课表中违反用户需求i的冲突数量,为惩罚因子;
所述用户需求包括物理约束、固排、禁排、优排、周内分散和天内集中;所述物理约束是指:教师在同一个时间段只能上一门课程;所述固排是指:在固定时间段安排固定科目;所述禁排是指:禁止在不该排课的时间段安排教师上课;所述优排是指:在指定的时间段安排指定科目;所述周内分散是指:在一周内均匀安排课程;所述天内集中是指:将教师的课程集中安排在一天的上午或下午的某个时间段;
物理约束的评估方法为统计课表同一行是否出现两次以上相同教师的名称;固排的评估方法为判断固定位置是否为指定科目;禁排的评估方法为禁排位置是否出现禁排的班级、科目、教师排课任务,优排的评估方法为优排位置是否为空或者出现其他科目或教师排课任务;周内分散的评估方法为计算每门课的天上课任务均值,即周上课任务除以每周上课天数,再计算科目实际每天上课次数与均值差的绝对值,若该值大于1,说明教案不平齐;天内集中的评估方法为统计一天中课程大于或等于2的教师,判断该教师课程是否集中安排在上午或下午某个时间段;
将适应度函数转换为:
F=w1*f1+w2*f2+w3*f3+w4*f4+w5*f5+w6*f6
其中:
f1表示物理约束的适应度评价函数,N1表示违反物理约束的冲突数量,指课表出现教师同一时间段去多个班级上课的数量;
f2表示固排的适应度评价函数,N2表示违反固排的冲突数量,指没有满足固定时间段安排固定科目的数量;
f3表示禁排的适应度评价函数,N3表示违反禁排的冲突数量,指在教师在不该排课的时间段安排上课的数量;
f4表示优排的适应度评价函数,N4表示违反优排的冲突数量,指没有在指定的时间段排指定科目的数量;
f5表示周内分散的适应度评价函数,N5表示违反周内分散的冲突数量,指每门课程需没有平均分配到每天;
f6表示天内集中的适应度评价函数,N6表示违反天内集中的冲突数量,指一天内有课程大于或等于2节时需保持连堂,且没有集中安排在上午或下午某个时间段。
2.根据权利要求1所述的新高考走班智能排课方法,其特征在于,将最佳课表进行交叉,具体包括:
随机选取最佳课表中某一列的两个位置的课程进行交换;
若交换的位置存在走班组合,则取消本次交叉操作。
3.根据权利要求1所述的新高考走班智能排课方法,其特征在于,将交叉后的最佳课表进行变异,具体为:随机选取交叉后的最佳课表的两行进行互换。
4.一种新高考走班智能排课系统,其特征在于,所述系统包括:
读取模块,用于读取教学计划;
划分模块,用于根据所有学生的走班情况,分成多个教师和学生无冲突的走班组合,将每个走班组合视为一个课程,并使课程数与教学计划一致;
预排课模块,用于根据教学计划,将固定要排的科目、走班组合、行政课科目依次进行预排课;
生成模块,用于根据预排课结果,生成多张初始课表;其中,所述初始课表的首列为各个时间段,初始课表的首行为各个班级;
选择模块,用于采用遗传算法,计算多张初始课表的种群适应度值,选择种群适应度值最小的初始课表作为最佳课表;
判断模块,用于判断最佳课表的种群适应度值是否达到预设期望值;
输出模块,用于若最佳课表的种群适应度值达到预设期望值,则输出该最佳课表;
交叉变异模块,用于若最佳课表的种群适应度值未达到预设期望值,则将最佳课表依次进行交叉、变异,重新选择最佳课表,返回判断最佳课表的种群适应度值是否达到预设期望值,并执行后续操作;
所述预排课模块,具体包括:
计算单元,用于根据教学计划,计算每个班级的每周课程数;
划分单元,用于将每周划分为多个时间段,并将各个时间段和各个班级分别作为课表的首列和首行;
第一排课单元,将所有班级固定要排的科目进行排课;
第二排课单元,用于从第一个班级开始,将走班组合、行政课科目依次从每周的第一个时间段往下排课,完成第一个班级排课;
第三排课单元,用于从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课;
第一判断单元,用于判断同一行中其他班级是否已经出现相同科任教师的名字,若是,即出现冲突,则跳至未排课的最后位置,从下往上排课;若仍然出现冲突,则往上一个空位排课;若所有空位都出现冲突,则选择已排课位置进行替换,且需满足替换后不出现冲突;
第二判断单元,用于判断是否排完所有班级,若是,则结束预排课;否则,返回从下一个班级开始,将走班组合、行政课科目依次从未排课位置开始,从上往下排课,并执行后续操作;
所述种群适应度值采用适应度函数计算,所述适应度函数如下式:
其中,ωi为每个适应度函数的权重,其大小由用户需求的优先级决定,fi为每个用户需求的适应度评价函数,如下式:
其中,Ni为在课表中违反用户需求i的冲突数量,为惩罚因子;所述用户需求包括物理约束、固排、禁排、优排、周内分散和天内集中;所述物理约束是指:教师在同一个时间段只能上一门课程;所述固排是指:在固定时间段安排固定科目;所述禁排是指:禁止在不该排课的时间段安排教师上课;所述优排是指:在指定的时间段安排指定科目;所述周内分散是指:在一周内均匀安排课程;所述天内集中是指:将教师的课程集中安排在一天的上午或下午的某个时间段;
物理约束的评估方法为统计课表同一行是否出现两次以上相同教师的名称;固排的评估方法为判断固定位置是否为指定科目;禁排的评估方法为禁排位置是否出现禁排的班级、科目、教师排课任务,优排的评估方法为优排位置是否为空或者出现其他科目或教师排课任务;周内分散的评估方法为计算每门课的天上课任务均值,即周上课任务除以每周上课天数,再计算科目实际每天上课次数与均值差的绝对值,若该值大于1,说明教案不平齐;天内集中的评估方法为统计一天中课程大于或等于2的教师,判断该教师课程是否集中安排在上午或下午某个时间段;
将适应度函数转换为:
F=w1*f1+w2*f2+w3*f3+w4*f4+w5*f5+w6*f6
其中:
f1表示物理约束的适应度评价函数,N1表示违反物理约束的冲突数量,指课表出现教师同一时间段去多个班级上课的数量;
f2表示固排的适应度评价函数,N2表示违反固排的冲突数量,指没有满足固定时间段安排固定科目的数量;
f3表示禁排的适应度评价函数,N3表示违反禁排的冲突数量,指在教师在不该排课的时间段安排上课的数量;
f4表示优排的适应度评价函数,N4表示违反优排的冲突数量,指没有在指定的时间段排指定科目的数量;
f5表示周内分散的适应度评价函数,N5表示违反周内分散的冲突数量,指每门课程需没有平均分配到每天;
f6表示天内集中的适应度评价函数,N6表示违反天内集中的冲突数量,指一天内有课程大于或等于2节时需保持连堂,且没有集中安排在上午或下午某个时间段。
5.一种计算机设备,包括处理器以及用于存储处理器可执行程序的存储器,其特征在于,所述处理器执行存储器存储的程序时,实现权利要求1-3任一项所述的新高考走班智能排课方法。
6.一种存储介质,存储有程序,其特征在于,所述程序被处理器执行时,实现权利要求1-3任一项所述的新高考走班智能排课方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911375961.XA CN111178751B (zh) | 2019-12-27 | 2019-12-27 | 新高考走班智能排课方法、系统、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911375961.XA CN111178751B (zh) | 2019-12-27 | 2019-12-27 | 新高考走班智能排课方法、系统、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111178751A CN111178751A (zh) | 2020-05-19 |
CN111178751B true CN111178751B (zh) | 2024-01-23 |
Family
ID=70658266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911375961.XA Active CN111178751B (zh) | 2019-12-27 | 2019-12-27 | 新高考走班智能排课方法、系统、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111178751B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111539581A (zh) * | 2020-05-07 | 2020-08-14 | 浙江蓝鸽科技有限公司 | 智能分班排课方法及系统 |
CN111815279A (zh) * | 2020-07-08 | 2020-10-23 | 广州魔晶教育科技有限公司 | 基于遗传算法的智能排课方法、装置、终端及存储介质 |
CN112435147B (zh) * | 2020-11-02 | 2024-04-19 | 佛山科学技术学院 | 新高考智能分班方法、系统、计算机设备及存储介质 |
CN112102132B (zh) * | 2020-11-06 | 2021-03-12 | 深圳英之泰教育科技有限公司 | 行政班级的自动配置方法、装置和计算机设备 |
CN112102131B (zh) * | 2020-11-06 | 2021-03-12 | 深圳英之泰教育科技有限公司 | 走动班级的自动配置方法、装置、设备和存储介质 |
CN112037101B (zh) * | 2020-11-06 | 2021-02-26 | 深圳英之泰教育科技有限公司 | 基于退火算法的课程自动配置方法、装置和计算机设备 |
CN113393206B (zh) * | 2021-05-28 | 2024-06-07 | 广州木铎信息技术有限公司 | 自动排课方法、装置、设备及可读存储介质 |
CN114331390A (zh) * | 2022-03-03 | 2022-04-12 | 北京和气聚力教育科技有限公司 | 一种分班排课系统及方法、设备及存储介质 |
CN116468416A (zh) * | 2023-06-19 | 2023-07-21 | 北京化工大学 | 一种基于遗传算法的智能走班排课方法 |
CN116862210B (zh) * | 2023-09-05 | 2024-03-15 | 成都泰盟软件有限公司 | 一种智能排课方法、装置、设备及介质 |
CN117422252A (zh) * | 2023-10-27 | 2024-01-19 | 广州宏天软件股份有限公司 | 一种改进式遗传算法智能排课方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105809315A (zh) * | 2014-12-31 | 2016-07-27 | 北京大唐高鸿软件技术有限公司 | 自动编排中小学电子课程表的方法 |
CN108280549A (zh) * | 2018-01-30 | 2018-07-13 | 福州大学 | 一种基于改进遗传算法的走班制下的高中排课方法 |
CN109255512A (zh) * | 2018-07-12 | 2019-01-22 | 浙江工业大学 | 一种基于蒙特卡洛遗传算法的高校排课方法 |
CN110020831A (zh) * | 2019-03-29 | 2019-07-16 | 北京工业大学 | 基于粒子群算法的新高考排课算法 |
-
2019
- 2019-12-27 CN CN201911375961.XA patent/CN111178751B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105809315A (zh) * | 2014-12-31 | 2016-07-27 | 北京大唐高鸿软件技术有限公司 | 自动编排中小学电子课程表的方法 |
CN108280549A (zh) * | 2018-01-30 | 2018-07-13 | 福州大学 | 一种基于改进遗传算法的走班制下的高中排课方法 |
CN109255512A (zh) * | 2018-07-12 | 2019-01-22 | 浙江工业大学 | 一种基于蒙特卡洛遗传算法的高校排课方法 |
CN110020831A (zh) * | 2019-03-29 | 2019-07-16 | 北京工业大学 | 基于粒子群算法的新高考排课算法 |
Non-Patent Citations (4)
Title |
---|
Junn K Y等.The study of genetic algorithm approach to solving university course timetabling problem.《International Conference on computational science and technology》.2017,454-463. * |
王卫红 ; 李文琼 ; .基于改进遗传算法的高中走班制排课算法.浙江工业大学学报.2016,(06),601-607+670. * |
董玉锁 ; 贺波 ; 尹迎 ; 胡海琴 ; 李铁梅 ; .利用改进遗传算法破解排课难题.中国教育技术装备.2018,(01),16-19. * |
陈璐等.改进遗传算法求解走班制下的排课问题.《计算机工程与应用》.2019,55(06),218-224. * |
Also Published As
Publication number | Publication date |
---|---|
CN111178751A (zh) | 2020-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111178751B (zh) | 新高考走班智能排课方法、系统、计算机设备及存储介质 | |
Ceschia et al. | Design, engineering, and experimental analysis of a simulated annealing approach to the post-enrolment course timetabling problem | |
Aoki et al. | The emergence of social learning in a temporally changing environment: a theoretical model | |
Bakır et al. | A 0-1 integer programming approach to a university timetabling problem | |
CN110503269A (zh) | 走班教学下的分班排课方法及装置 | |
Wen-jing | Improved Adaptive Genetic Algorithm for Course Scheduling in Colleges and Universities. | |
CN111539581A (zh) | 智能分班排课方法及系统 | |
CN111161112B (zh) | 行政班智能排课方法、系统、计算机设备及存储介质 | |
Arbel | A university budget problem: A priority-based approach | |
Hosny et al. | A mutation-based genetic algorithm for room and proctor assignment in examination scheduling | |
Marte | Models and algorithms for school timetabling: A constraint programming approach | |
Meister | Contribution to agent-based demand optimization in a multi-agent transport simulation | |
CN114781806A (zh) | 基于多目标进化算法的多组合排课方法及装置及可读介质 | |
Pambudi et al. | Genetic algorithm for teaching distribution based on lecturers’ expertise | |
Anderson et al. | Indonesia Network Infrastructures and Workforce Adequacy to Implement Machine Learning for Large-Scale Manufacturing | |
Martinez | Solving batch process scheduling/planning tasks using reinforcement learning | |
Sunanto et al. | Course Scheduling of Undergraduate Study Program of Mathematics Universitas Padjadjaran Case Using Graph Coloring with Modified Algorithm | |
Diveev et al. | NP-Hard Task Schedules and Methods of Its Decision | |
CHEN | Pharmaceutical Laboratory Course Scheduling System Optimization Based on Genetic Algorithm | |
Jiang et al. | A course scheduling algorithm based on improved genetic algorithm with multi-objective constrains | |
Babaei et al. | Generating optimal timetabling for lecturers using hybrid fuzzy and clustering algorithms | |
Druetto et al. | Column generation bounds on a network flow model to minimize the total weighted completion time for a single parallel batching machine | |
Yusupov et al. | Information-hierarchical Educational Process Management System | |
Stroganov et al. | The Optimization Methodology of the Digital Model of the Educational Program Based on Learning-Forgetting Functions | |
Parfenov et al. | Development and Research of Algorithms for the Formation of an Optimal Individual Educational Path for Online Courses |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 510700 room 106, room 406, No. 1, Yichuang street, Zhongxin Guangzhou Knowledge City, Huangpu District, Guangzhou City, Guangdong Province Patentee after: Guangdong Yijiaotong Technology Co.,Ltd. Country or region after: China Address before: Room 1001, 10th Floor, No. 89 Zhongshan Avenue, Tianhe District, Guangzhou City, Guangdong Province, 510630 Patentee before: GUANGDONG ETONEDU CO.,LTD. Country or region before: China |