CN107610012A - 一种选课和排课***及其选课和排课方法 - Google Patents
一种选课和排课***及其选课和排课方法 Download PDFInfo
- Publication number
- CN107610012A CN107610012A CN201710867739.6A CN201710867739A CN107610012A CN 107610012 A CN107610012 A CN 107610012A CN 201710867739 A CN201710867739 A CN 201710867739A CN 107610012 A CN107610012 A CN 107610012A
- Authority
- CN
- China
- Prior art keywords
- course
- curricula
- data
- variable
- arrangement
- 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.)
- Granted
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及选课和排课***及其方法。其包括选课***和排课***,选课***与排课***之间能够实现数据交换;其中,选课***包括依次连接的第一应用服务层模块、第一算法模块、数据访问层模块、缓存层模块、数据库模块以及数据库集群层模块;另外,排课***包括依次连接的第二应用服务层模块、第二算法模块、计算平台和数据存储层模块。该排课方式灵活、颗粒度细、约束自由组合、走班与非走班结合、兼容度高。全自动课表生成算法,允许半自动或手动分配,排课力度可以细化到每一个学生,每一个约束条件的权重可以灵活调整,支持走班和非走班同时排课。
Description
技术领域
本发明涉及一种排课和排课***,具体涉及一种针对中高考的智能选课排课***方法。
背景技术
2014年《国务院关于深化考试招生制度改革的实施意见》印发,2017是全面推进之年。
2018年开始,北京市新中考考试科目为3科必考加3科选考加体育,通过排列将有9种科目组合供学生选择。选考科目将按照分数从高到低按照100%、80%、60%赋值折分,又将出现54种折分方法。
北京新高考改革将从2020年开始实施,考试科目调整为“3+3”模式,即语文、数学、外语(课程)三门必考,然后在物理、化学、生物、历史、政治、地理六门学科中任选三门进行考试,并计入总分。“6选3”中的3门以等级确定,换算成分数,计入总分。从2020年开始,中考高考正式并轨。
面向新高考的选课走班中遇到的困难如下:
学生出现的困难为:1、学生不会选课。2无法完全满足学生的意愿。3、选课与选老师的关系不清楚。
老师出现的困难为:1、学生信息的收集与互通,2、问题学生的教育,3、学生管理的问题。
评价体系的困难为:1、评价的维度与效度,2、教学班、行政班评价,3、学生、教师的个体评价。
课程体系的困难为:1、自习课问题,2、同头和代课问题,3、老师听课问题。
基于新中/高考的相关政策,教务相关的选排课***在同一平台下更能满足新高考模式的需要,而目前市场上的产品多为选课、排课分开的产品。
目前的排课***的流程为,即教学场馆(所)及其可用时间段、任课教师及其可支配时间段、选课学生及其可行时间段、所开设的课程,面向同一教学单位所有可能学生类别或群体的共排课问题,排课过程由计算机自动排课模块和人工辅助排课模块协同完成。计算机排课进程中,当排课结果小于预期目标函数值时,暂停排课,通知人工协作进程进行调整或删除部分排课记录,进而,计算机在此基础上统筹优化,在剩余的教学资源空间中继续根据规则库约束进行自动求解。如此反复上述协同过程,直至获得满意排课可行解,达到目标函数值要求,或任课教师的个性化上课时间要求。如此反复,所耗时间较长,还会有排不出的情况。
发明内容
本发明的主要目的是提供一种选课和排课***。
本发明的另一目的是提供一种选课和排课***的选课和排课方法。
本发明提供的选课和排课***包括选课***和排课***,所述选课***与所述排课***之间能够实现数据交换;其中,所述选课***包括依次连接的第一应用服务层模块、第一算法模块、数据访问层模块、缓存层模块以及数据库集群模块,所述第一应用服务层模块用于与外部数据的交换,所述第一算法模块用于对数据进行处理,数据访问层模块用于对数据库的访问,所述缓存层模块用于数据暂时性的保存起来以供读取和再读取,所述数据库集群模块用于数据的存储;并且,所述排课***包括依次连接的第二应用服务层模块、第二算法模块、计算平台和数据存储层模块;所述第二应用服务层模块用于与外部数据的交换,所述第二算法模块和所述计算平台用于对数据进行处理,所述数据存储层模块用于数据的存储。
一个优选的方案是,所述第一算法模块采用算法引擎、规则引擎和业务逻辑对数据进行处理;所述第二算法模块采用规则引擎、模型管理及机器学习算法训练对数据进行处理;所述数据存储层模块包括本地数据和云端数据。
进一步优选的方案是,所述第一算法模块和所述第二算法模块的运算算法采用遗传算法、蚁群算法、图论算法、回溯算法、禁忌搜索算法、模拟退火算法、神经网络算法,并且所述第一算法模块和所述第二算法模块的运算算法还包括启发式算法,所述启发式算法从最难排的课程开始采用递归和禁忌列表的方式,依次寻找最合适的时间。
进一步优选的方案是,所述启发式算法按照下面的步骤进行:
X1:通过第二应用服务层模块向所述排课***输入一组课程活动:A_1...A_n,并且输入约束条件;
X2:所述排课***对所述步骤X1输入的数据按照设定的算法进行处理,且将每个课程活动放在一个时隙内,并遵守约束条件,由此得到排课结果;
X3:输出排课结果:一组时间TA_1...TA_n。
进一步优选的方案是,在所述X2步骤中,具体包括下面的步骤:
R1:排序课程活动时最难的课程活动优先,最难的课程活动是指约束指数最多的课程,如果两个课程的约束指数相同,则通过随机生成的时间种子对其进行排序;
R2:所述第二算法模块尝试将每个活动A_i放置在允许的时隙中,按照上述顺序,一次一个;搜索A_i的可用时隙T_j;如果有多个时隙则随机选择;如果无可用,则做如下的递归交换:
R21:对于每个时隙T_j,如果将A_i放入T_j,将生成一个列表,保存该步骤不一致的活动;
R22:选择冲突活动数最少的时隙槽T_j。
进一步优选的方案是,在所述步骤R22中:
课程活动包含3个活动:A_p,A_q,A_r;这三个课程活动的排布按照下面的步骤进行:
R221:将A_i放在T_j并改变使A_p,A_q,A_r为未分配状态;
R222:递归地尝试放置A_p,A_q,A_r;
R223:如果成功放置A_p,A_q,A_r,返回成功,否则尝试其他时隙;
R224:如果所有或合理数量的时隙被尝试失败,则返回未成功;
R225:如果没有成功放置A_i,则尝试R22和R221,但不做递归。
本发明还提供了一种选课和排课***的选课和排课方法,其按照下面的步骤进行课程排布:
S1:设计课程;
S2:配置课程并把课程数据传输到所述选课***;
S3:发布待选课程供学生自主地选择课程;
S4:所述选课***把选课数据通过所述第二应用服务层模块输入到所述排课***;
S5:所述排课***对选课数据进行处理,然后生成学生课表和教师课表;
S6:通过网页或者应用软件接收并查看来自所述排课***的学生课表;
S7:通过网页或者应用软件接收并查看来自所述排课***的教师课表。
一个优选的方案是,在所述步骤S5中,按照下面的步骤进行数据处理:
Q1、对于每一个教师Ti的教学班Ci,设定一个教室Ri跟教学班对应;
Q2、对于每一个学生Sj,设定学生的课程Lj(n),n是学生选择的课程数;
Q3、对于每一个Sj-Lj,作为算法中的一个活动A_j进行调度;
Q4、对于每个Ti_Ci_Ri,作为一个A_i进行调度;
Q5、对于每个教师Ti,指定其授课课程Li;
Q6、在实际计算时,特别优选的是在上述启发式算法过程中,如果A_j和A_i对应的Li和Lj相等,则允许两个活动放入同一个时隙;
Q7、通过重复上述步骤,最终计算出每个学生和老师的课表。
本发明还提供了另一种选课和排课***的选课和排课方法,其按照下面的步骤进行课程排布:
Y1:设计课程;
Y2:配置课程并把数据输入到所述排课***;
Y3:该排课***对汇总的数据进行处理输出教师课表;
Y4:所述排课***把得到的数据输出到所述选课***;
Y4:教师通过网页或者智能设备的应用软件接收并查看来自所述选课***提供的教师课表;
Y5:学生通过网页或者智能设备的应用软件接收并查看来自所述选课***提供的学生课表;
Y6:学生自主地按照学生课表选择课程至选课结束。
根据本发明提供的选课和排课***的选课和排课方法,其产生的有益效果为:排课方式灵活、颗粒度细、约束自由组合、走班与非走班结合、兼容度高。全自动课表生成算法,允许半自动或手动分配,排课力度可以细化到每一个学生,每一个约束条件的权重可以灵活调整,支持走班和非走班同时排课。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1是本发明的选课***和排课***实施例的选课***的示意图。
图2是本发明的选课***和排课***实施例的排课***的示意图。
图3是本发明的选课***和排课***实施例的志愿分类算法的示意图。附图标记说明
10、选课***,11、第一应用服务层模块,12、第一算法模块,13、数据访问层模块,14、缓存层模块,15、数据库,20、排课***,21、第二应用服务层模块,22、第二算法模块,23、计算平台模块,24、数据存储层模块,25、规则引擎,26、模型管理,27、机器学习算法训练。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
本发明的实施例的选课和排课***在选课时的设计原则如下:
1、选课指导:根据学生的职业规划、历程成绩、兴趣特长、学科压力,结合学校的具体情况,给出学生尽可能全面的选课指导建议;
2、机会均等:尽可能满足所有学生自由选课的愿望,每个学生都有均等的选课机会。
3、教学机会:保证每个学生能按照教学计划,顺利地完成选课工作。
4、友好度高:保证每个学生能按照教学计划,顺利地完成选课工作。
本发明实施例的选课和排课***在排课时的设计原则如下:
1、满足走班需求:以满足学校教学要求为第一要务,支持走班授课,分层教学等新课改的要求和学校的特殊需求。
2、满足不同学校的需求:根据学校的教学规模和设施配备情况,支持基本走班、扩展走班、完全走班等不同的模式。
3、快速灵活:能够快速排出课表,结果准确,并能灵活调整规则和排课结果。
4、操作简便:简洁、直观的操作界面,能够让初学者快速应用。
第一实施例:
本实施例的选课和排课***包括选课***和排课***。选课***与排课***之间能够实现数据交换。
其中,如图1所示,选课***10包括依次连接的第一应用服务层模块11、第一算法模块12、数据访问层模块13、缓存层模块14、数据库15以及数据库集群模块,并且包括权限与安全模块16。权限与安全模块用于对***登录身份进行验证并保证***的安全。另外,如图2所示,排课***20包括依次连接的第二应用服务层模块21、第二算法模块22、计算平台模块23和数据存储层模块24。其中,第一应用服务层模块11用于与外部数据的交换,第一算法模块12用于对数据进行处理,数据访问层模块13用于对数据库的访问,缓存层模块14用于数据暂时性的保存起来以供读取和再读取,数据库集群模块用于数据的存储。第二应用服务层模块21用于与外部数据的交换,第二算法模块22和计算平台23用于对数据进行处理,数据存储层模块24用于数据的存储。
第一算法模块12采用算法引擎、规则引擎和业务逻辑对数据进行处理。第二算法模块22采用规则引擎25、模型管理26及机器学习算法训练27对数据进行处理。此外,排课***20还包括权限与安全模块28。权限与安全模块用于对***登录身份进行验证并保证***的安全。
第一算法模块12和第二算法模块22的运算算法包括遗传算法和蚁群算法和图论算法和回溯算法和禁忌搜索算法和模拟退火算法和神经网络算法。并且第一算法模块12和第二算法模块22的运算算法还包括启发式算法,启发式算法从最难排的课程开始采用递归和禁忌列表的方式,依次寻找最合适的时间。
具体地,第一算法模块12包括如下的算法。
1、先到先得算法。
这种算法的核心思想类似于"抢火车票"的思想,是最简单的算法。学生在登录选课***后,如果是在选课时间范围内,那么进行选课操作,如果这门课程没有满员,那么就选课成功,如果满员,则选课失败。
这种算法是最简单也是实现最容易的算法,同时也是非常直观的算法。学生能不能成功选课能够真实快速的反应出来,这种算法比较适用于选课人数不多的情况。如果大量学生同时在开放选课的时间段去抢课,服务器可能在短时间内承载巨大的并发请求导致响应缓慢或者无响应。
2、随机抽签算法
核心思想就是将选课分为两个过程:预选和抽签。在第一个预选阶段,任意选课学生都是可以通过选课***进行选课,选择的数量不限;当预选结束后,则进入抽签过程:
①如果某一课程选课人数是小于该课程的选课容量的上限且大于该选课容量的下限,则所有选择该课程的学生选课成功;
②如果选课人数小于该选课人数的下限,则该选课课程取消,通知选择该课程的学生取消原因及告知重新选择其他课程。
③如果某一课程选课人数大于该课程的选课容量,则随机将多余的人数筛选出来,告知其重新选课。
3、志愿分类算法
该算法的原理类似与高考录取工作,它也是把选课阶段分为预选和筛选两个过程。
在预选阶段,允许每个学生在选课时对于有多个课程班的课程可以有几个优先级不同的志愿选择。***处理时,按照不同的志愿进行不同的处理。
首先满足第一志愿的要求,对于处于第1志愿人数超过该课程限选人数时,采用平均分布概率算法来进行处理,筛选出多余的人数;若第1志愿人数小于该课程的限选人数,则全部选中。
第1志愿遍历完后再遍历第2志愿,第2志愿的处理方法:若某课程班的第1志愿人数已达到限选人数,则不再处理第2志愿;否则,将第1志愿该课程班的不足人数作为第2志愿的最大可选人数,处理方法同第1志愿。
以此类推,再进行后续志愿的处理。具体地,可以参加图3,包括步骤Q1:开始;步骤Q2:统计第一志愿选某课程班的全部人数N1;步骤Q3:判断是否N1≤该课程的限选人数的M1;如果判断为是(Y)则执行Q4:全部选中填入结果表;如果判断为否(N)则执行Q5:平均分布概率算法;在Q4后还包括Q6:课程处理;再次进行判断,如果判断为是(Y)则执行Q7:结束;如果判断结果为否(N)则执行Q8:下一门课程的处理。
算法引擎的目的是针对不同的课程分组(分类),分别配置不同的选课算法。如分组A是课外兴趣课程,对中高考成绩没有影响,则设为先到先得;分组B是校本课程,让学生进行选择决定哪些开课,哪些不开课,则随机抽签;分组C是选修课,学生必须选择其中几门,则用志愿的方式。通过算法引擎,能够灵活地安排不同课程的选课算法。
规则引擎:各个学校目前在指导学生选课时,都会提供一本选课指导手册。其目的是指导学生如何去选课。之所以需要一本手册来指导学生,是因为针对每一类课程分组(分类),均有不同的选课规则,
以某学校政治选修课程为例:政治选修课程有3个系列,9个模块。学生可根据自己的兴趣,任选若干模块学习。建议在人文、社会科学方向发展的学生,至少选修3个模块,共获得14学分。理工类学生可从3个系列中任选1个模块学习。
政治选修课程表
因此,针对每一类课程分组,***要能够设置不同的规则,来满足学校选课手册规定的学生选课要求。如果学生选课时违背了这些规则,***会自动提示。
规则引擎的原始定义是:规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。
在选课***中,规则引擎实际是将学生选课的要求从应用中分离,能够根据不同的课程种类设置不同的选课要求,学生能够降低错误选课,减少无效学习带来的损失,也有利于形成个性化的学习计划。
业务逻辑:业务逻辑指选课***自身的各类流程、数据完整性和整体规则。通常情况下,业务逻辑的内容包括四个部分:
领域实体:定义了业务中的对象,对象有属性和行为;
业务规则:定义了需要完成一个动作,必须满足的条件;
数据完整性:某些数据不可少;
工作流:定义了领域实体之间的交互关系。
在选课的例子中:
领域实体:学生、课程、教师、选课结果;
业务规则:学生点击选课就会生成选课单,但是需要提交成功才是选课成功,生成选课结果。数据完整性:学生、老师必须登录账号,没有账号就不能选课。
工作流:搜索课程-找到课程-选课-提交确认。
模型管理:
在排课过程中,需要建立数学模型,如:设课程集合:L={l1,l2,.,lp,.,lP};班级集合:C={c1,c2,.,cm,.,cM};教室集合:R={r1,r2,.,rn,.,rN};教师集合:S={s1,s2,.,sk,.,sK};时间集合:T={t1,t2,.,td,.,tD};时间与教室对的笛卡尔积为:G=T·R=(t1,r1),(t1,r2),.,(tD,rN);G中的元素称为时间教室对;课表问题的求解过程就转化成为每一门课程寻找一个合适的时间教室对。
对排课具体需求建模的过程,会生成一个具体的数学模型,模型管理就是对数学模型进行建立和调整的过程。
机器学习算法/训练:从目前的排课算法来看,没有一个算法排出的课表结果能够百分百满足用户的原始需求。这里面有多种原因,除了排课算法本身的缺陷,最重要的是因素是很多模糊的描述无法用明确的数据来描述,例如:xx最好不排第一节课,xxx的课最好不排上午最后一节。A和B最好不同时上课,如果同时,最好在星期二等等。这些所谓的规则没有办法用形式化的描述来定义的。因此到目前为止,没有一个排课算法能够排出比人工排课更让人满意的结果。
本排课***会利用机器学习(人工智能)的方式,从过去的人工课表和经过人工调整的机器课表中不断学习排课的顺序、调整操作的顺序、最终课表等等,通过大量的学习了解到各个老师、各类课程的排课习惯,从而在排出更加像人工的课表。
排课***和选课***本质上是两种***。
排课的目的是在已经了解课程计划的前提下,计算出满足各种教师、班级、学生、教室、课程约束条件的课表。
选课的目的是让学生能够在多门可选课程中,选出自己想要上和必须上的课程。
对于学校而言,可以先做出课程计划,然后学生进行选课,根据选课的结果调整开课计划,然后针对计划来排课。
学校也可以先根据开课计划排课,然后排出课表让学生进行选课,但是这样可能会造成一些学生的课程发生冲突,或者是一些老师的班级人数过多另一些老师人数过少的情况。
但是不管哪种情况,选课***和排课***都可以独立运作。
启发式算法按照下面的步骤进行:
X1:通过第二应用服务层模块向排课***输入一组课程活动:A_1...A_n,并且输入约束条件;
X2:排课***对步骤X1输入的数据按照设定的算法进行处理,且将每个课程活动放在一个时隙内,本发明实施例的“时隙”理解为特定的一个时间段如上午八点至八点四十五分,并遵守约束条件,由此得到排课结果;
X3:输出排课结果:一组时间TA_1...TA_n。
优选地,在上面的X2步骤中,具体包括下面的步骤:
R1:排序课程活动时最难的课程活动优先,最难的课程活动是指约束指数最多的课程,如果两个课程的约束指数相同,则通过随机生成的时间种子对其进行排序;
R2:第二算法模块尝试将每个活动A_i放置在允许的时隙中,按照上述顺序,一次一个;搜索A_i的可用时隙T_j;如果有多个时隙则随机选择;如果无可用,则做如下的递归交换:
R21:对于每个时隙T_j,如果将A_i放入T_j,将生成一个列表,保存该步骤不一致的活动;
R22:选择冲突活动数最少的时隙槽T_j。
优选地,在上面的步骤R22中:
课程活动包含3个活动:A_p,A_q,A_r;这三个课程活动的排布按照下面的步骤进行:
R221:将A_i放在T_j并改变使A_p,A_q,A_r为未分配状态;
R222:递归地尝试放置A_p,A_q,A_r;
R223:如果成功放置A_p,A_q,A_r,返回成功,否则尝试其他时隙;
R224:如果所有或合理数量的时隙被尝试失败,则返回未成功;
R225:如果没有成功放置A_i,则尝试R22和R221,但不做递归。
本实施例的选课和排课***按照下面的步骤进行课程排布:
S1:教务处、学科教师设计课程;
S2:教务处配置课程并把课程数据传输到选课***;
S3:教务处发布待选课程;
S4:学生自主地选择课程并把选课数据通过第二应用服务层模块输入到排课***;
S5:排课***对学生选课的数据进行处理;
S6:学生通过网页或者应用软件接收并查看来自排课***的学生课表;
S7:教师通过网页或者应用软件接收并查看来自排课***的教师课表。
优选地,在步骤S5中,按照下面的步骤进行数据处理:
Q1、对于每一个教师Ti的教学班Ci,设定一个教室Ri跟教学班对应;
Q2、对于每一个学生Sj,设定学生的课程Lj(n),n是学生选择的课程数;
Q3、对于每一个Sj-Lj,作为算法中的一个活动A_j进行调度;
Q4、对于每个Ti_Ci_Ri,作为一个A_i进行调度;
Q5、对于每个教师Ti,指定其授课课程Li;
Q6、在实际计算时,特别优选的是在上述启发式算法过程中,如果A_j和A_i对应的Li和Lj相等,则允许两个活动放入同一个时隙;
Q7、通过重复上述步骤,最终计算出每个学生和老师的课表。
第二实施例:
本实施例的选课***和排课***与第一实施例的结构特征相同。
本实施例的选课***和排课***按照下面的步骤进行课程排布:
Y1:教务处、学科教师设计课程;
Y2:教务处配置课程并把数据输入到排课***;
Y3:该排课***对汇总的数据进行处理输出教师课表;
Y4:排课***把得到的数据输出到选课***;
Y4:教师通过网页或者智能设备的应用软件接收并查看来自选课***提供的教师课表;例如通过微信或其它手机应用软件。
Y5:学生通过网页或者智能设备的应用软件接收并查看来自选课***提供的学生课表;例如通过微信或其它手机应用软件。
Y6:学生自主地按照学生课表选择课程至选课结束。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
Claims (10)
1.一种选课和排课***,其特征在于,包括选课***和排课***,所述选课***与所述排课***之间能够实现数据交换;
其中,所述选课***包括依次连接的第一应用服务层模块、第一算法模块、数据访问层模块、缓存层模块以及数据库集群模块,所述第一应用服务层模块用于与外部数据的交换,所述第一算法模块用于对数据进行处理,所述数据访问层模块用于对数据库的访问,所述缓存层模块用于将数据暂时性地保存起来以供读取和再读取,所述数据库集群模块用于数据的存储;
并且,所述排课***包括依次连接的第二应用服务层模块、第二算法模块、计算平台和数据存储层模块;所述第二应用服务层模块用于与外部数据的交换,所述第二算法模块和所述计算平台用于对数据进行处理,所述数据存储层模块用于数据的存储。
2.根据权利要求1所述的选课和排课***,其特征在于,
所述第一算法模块采用算法引擎、规则引擎和业务逻辑对数据进行处理;所述第二算法模块采用规则引擎、模型管理及机器学习算法训练对数据进行处理;所述算法引擎用于针对不同的课程分组分别配置不同的选课算法;所述规则引擎用于指导学生如何去选课;所述业务逻辑指选课***自身的各类流程、数据完整性和整体规则;
所述数据存储层模块包括本地数据和云端数据。
3.根据权利要求2所述的选课和排课***,其特征在于,
所述第一算法模块和所述第二算法模块的运算算法采用遗传算法和蚁群算法和图论算法和回溯算法和禁忌搜索算法和模拟退火算法和神经网络算法,
并且所述第一算法模块和所述第二算法模块的运算算法还包括启发式算法,所述启发式算法从最难排的课程开始采用递归和禁忌列表的方式,依次寻找最合适的时间。
4.根据权利要求3所述的选课和排课***,其特征在于,
所述启发式算法按照下面的步骤进行:
X1:通过第二应用服务层模块向所述排课***输入一组课程活动:A_1...A_n,并且输入约束条件;
X2:所述排课***对所述步骤X1输入的数据按照设定的算法进行处理,且将每个课程活动放在一个时隙内,并遵守约束条件,由此得到排课结果;
X3:输出排课结果:一组时间TA_1...TA_n。
5.根据权利要求4所述的选课和排课***,其特征在于,
在所述X2步骤中,具体包括下面的步骤:
R1:排序课程活动时最难的课程活动优先,最难的课程活动是指约束指数最多的课程,如果两个课程的约束指数相同,则通过随机生成的时间种子对其进行排序;
R2:所述第二算法模块尝试将每个活动A_i放置在允许的时隙中,按照上述顺序,一次一个;搜索A_i的可用时隙T_j;如果有多个时隙则随机选择;如果无可用,则做如下的递归交换:
R21:对于每个时隙T_j,如果将A_i放入T_j,将生成一个列表,保存该步骤不一致的活动;
R22:选择冲突活动数最少的时隙槽T_j。
6.根据权利要求5所述的选课和排课***,其特征在于,
在所述步骤R22中:
课程活动包含3个活动:A_p,A_q,A_r;这三个课程活动的排布按照下面的步骤进行:
R221:将A_i放在T_j并改变使A_p,A_q,A_r为未分配状态;
R222:递归地尝试放置A_p,A_q,A_r;
R223:如果成功放置A_p,A_q,A_r,返回成功,否则尝试其他时隙;
R224:如果所有或合理数量的时隙被尝试失败,则返回未成功;
R225:如果没有成功放置A_i,则尝试R22和R221,但不做递归。
7.根据权利要求1所述的选课和排课***,其特征在于,
所述第一算法模块包括先到先得算法和/或随机抽签算法和/或志愿分类算法。
8.根据权利要求1至7中任一项所述的选课和排课***的选课和排课方法,其特征在于,
按照下面的步骤进行课程排布:
S1:设计课程;
S2:配置课程并把课程数据传输到所述选课***;
S3:发布待选课程供学生自主地选择课程;
S4:所述选课***把选课数据通过所述第二应用服务层模块输入到所述排课***;
S5:所述排课***对选课数据进行处理,然后生成学生课表和教师课表;
S6:通过网页或者应用软件接收并供学生查看来自所述排课***的学生课表;
S7:通过网页或者应用软件接收并供教师查看来自所述排课***的教师课表。
9.根据权利要求8所述的选课和排课***的选课和排课方法,其特征在于,
在所述步骤S5中,按照下面的步骤进行数据处理:
Q1、对于每一个教师Ti的教学班Ci,设定一个教室Ri跟教学班对应;
Q2、对于每一个学生Sj,设定学生的课程Lj(n),n是学生选择的课程数;
Q3、对于每一个Sj-Lj,作为算法中的一个活动A_j进行调度;
Q4、对于每个Ti_Ci_Ri,作为一个A_i进行调度;
Q5、对于每个教师Ti,指定其授课课程Li;
Q6、在实际计算时,如果A_j和A_i对应的Li和Lj相等,则允许两个活动放入同一个时隙;
Q7、通过重复上述步骤,最终计算出每个学生和老师的课表。
10.根据权利要求1至7中任一项所述的选课和排课***的选课和排课方法,其特征在于,
按照下面的步骤进行课程排布:
Y1:设计课程;
Y2:配置课程并把数据输入到所述排课***;
Y3:该排课***对汇总的数据进行处理输出教师课表;
Y4:所述排课***把得到的数据输出到所述选课***;
Y4:通过网页或者智能设备的应用软件接收并供教师查看来自所述选课***提供的教师课表;
Y5:通过网页或者智能设备的应用软件接收并供学生查看来自所述选课***提供的学生课表;
Y6:所述学生课表供学生自主地选择课程至选课结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710867739.6A CN107610012B (zh) | 2017-09-22 | 2017-09-22 | 一种选课和排课***及其选课和排课方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710867739.6A CN107610012B (zh) | 2017-09-22 | 2017-09-22 | 一种选课和排课***及其选课和排课方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107610012A true CN107610012A (zh) | 2018-01-19 |
CN107610012B CN107610012B (zh) | 2021-01-29 |
Family
ID=61057562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710867739.6A Active CN107610012B (zh) | 2017-09-22 | 2017-09-22 | 一种选课和排课***及其选课和排课方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107610012B (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108364535A (zh) * | 2018-02-09 | 2018-08-03 | 中南大学 | 一种制造工程训练教学方法及*** |
CN108764855A (zh) * | 2018-06-05 | 2018-11-06 | 科大讯飞股份有限公司 | 日程表生成方法及装置、存储介质、电子设备 |
CN108961121A (zh) * | 2018-07-20 | 2018-12-07 | 冯晋 | 一种用于研究生选导师的教务*** |
CN109102175A (zh) * | 2018-07-25 | 2018-12-28 | 国网宁夏电力有限公司培训中心 | 一种用于培训教育的排课方法 |
CN109190980A (zh) * | 2018-09-04 | 2019-01-11 | 安徽皖新金智教育科技有限公司 | 一种校园课程安排管理***及课程管理方法 |
CN109559261A (zh) * | 2018-10-26 | 2019-04-02 | 黄淮学院 | 一种动态排课*** |
CN109615571A (zh) * | 2018-12-17 | 2019-04-12 | 北京竞业达数码科技股份有限公司 | 一种排课*** |
CN109858882A (zh) * | 2019-01-31 | 2019-06-07 | 山大鲁能信息科技有限公司 | 一种基于改进的退火算法的新高考排课方法及*** |
CN109948894A (zh) * | 2019-01-31 | 2019-06-28 | 山大鲁能信息科技有限公司 | 一种选排课*** |
CN109978738A (zh) * | 2019-03-21 | 2019-07-05 | 深圳市倍思教育科技有限公司 | 分班方法、装置、计算机设备和存储介质 |
CN110047023A (zh) * | 2019-03-29 | 2019-07-23 | 北京工业大学 | 基于模拟退火算法的新高考排课算法 |
CN110458737A (zh) * | 2019-08-20 | 2019-11-15 | 暨南大学 | 基于神经网络修改高校教务安排的方法、装置、设备及介质 |
CN110738461A (zh) * | 2019-10-10 | 2020-01-31 | 青岛海信商用显示股份有限公司 | 排课方法及设备 |
CN111176753A (zh) * | 2019-12-20 | 2020-05-19 | 贝壳技术有限公司 | 云资源优化配置方法、装置、电子设备及可读存储介质 |
TWI756954B (zh) * | 2020-12-01 | 2022-03-01 | 英業達股份有限公司 | 無自習的跑班排課系統及其方法 |
CN114493289A (zh) * | 2022-01-27 | 2022-05-13 | 北京碧云数创科技有限公司 | 课程列表生成方法及装置 |
CN116468416A (zh) * | 2023-06-19 | 2023-07-21 | 北京化工大学 | 一种基于遗传算法的智能走班排课方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1598839A (zh) * | 2004-09-23 | 2005-03-23 | 罗星凯 | 学校课程管理***及运行方法 |
US20060190310A1 (en) * | 2005-02-24 | 2006-08-24 | Yasu Technologies Pvt. Ltd. | System and method for designing effective business policies via business rules analysis |
CN102800039A (zh) * | 2012-09-12 | 2012-11-28 | 天津市府易科技有限公司 | 智能排课*** |
CN103996154A (zh) * | 2014-06-06 | 2014-08-20 | 大连海事大学 | 面向***学资源的人机协同启发式排课*** |
CN104462079A (zh) * | 2013-09-12 | 2015-03-25 | 郑州学生宝电子科技有限公司 | 基于加权优化算法的信息化分班、排课方法 |
CN104794666A (zh) * | 2015-04-30 | 2015-07-22 | 重庆大学 | 一种排课算法 |
CN106127355A (zh) * | 2016-07-19 | 2016-11-16 | 焦点科技股份有限公司 | 一种高效智能的排课方法及*** |
CN106203712A (zh) * | 2016-07-12 | 2016-12-07 | 杭州源中通信技术有限公司 | 基于大数据的优化决策导排*** |
CN107016632A (zh) * | 2017-06-16 | 2017-08-04 | 长沙理工大学 | 一种基于走班分层教学的选排课方法及*** |
-
2017
- 2017-09-22 CN CN201710867739.6A patent/CN107610012B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1598839A (zh) * | 2004-09-23 | 2005-03-23 | 罗星凯 | 学校课程管理***及运行方法 |
US20060190310A1 (en) * | 2005-02-24 | 2006-08-24 | Yasu Technologies Pvt. Ltd. | System and method for designing effective business policies via business rules analysis |
CN102800039A (zh) * | 2012-09-12 | 2012-11-28 | 天津市府易科技有限公司 | 智能排课*** |
CN104462079A (zh) * | 2013-09-12 | 2015-03-25 | 郑州学生宝电子科技有限公司 | 基于加权优化算法的信息化分班、排课方法 |
CN103996154A (zh) * | 2014-06-06 | 2014-08-20 | 大连海事大学 | 面向***学资源的人机协同启发式排课*** |
CN104794666A (zh) * | 2015-04-30 | 2015-07-22 | 重庆大学 | 一种排课算法 |
CN106203712A (zh) * | 2016-07-12 | 2016-12-07 | 杭州源中通信技术有限公司 | 基于大数据的优化决策导排*** |
CN106127355A (zh) * | 2016-07-19 | 2016-11-16 | 焦点科技股份有限公司 | 一种高效智能的排课方法及*** |
CN107016632A (zh) * | 2017-06-16 | 2017-08-04 | 长沙理工大学 | 一种基于走班分层教学的选排课方法及*** |
Non-Patent Citations (1)
Title |
---|
吴祖峰: "高校排、选课***的探索与实践", 《电子科技大学学报社科版》 * |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108364535A (zh) * | 2018-02-09 | 2018-08-03 | 中南大学 | 一种制造工程训练教学方法及*** |
CN108764855A (zh) * | 2018-06-05 | 2018-11-06 | 科大讯飞股份有限公司 | 日程表生成方法及装置、存储介质、电子设备 |
WO2020015032A1 (zh) * | 2018-07-20 | 2020-01-23 | 冯晋 | 一种用于研究生选导师的教务*** |
CN108961121A (zh) * | 2018-07-20 | 2018-12-07 | 冯晋 | 一种用于研究生选导师的教务*** |
CN109102175A (zh) * | 2018-07-25 | 2018-12-28 | 国网宁夏电力有限公司培训中心 | 一种用于培训教育的排课方法 |
CN109190980A (zh) * | 2018-09-04 | 2019-01-11 | 安徽皖新金智教育科技有限公司 | 一种校园课程安排管理***及课程管理方法 |
CN109559261A (zh) * | 2018-10-26 | 2019-04-02 | 黄淮学院 | 一种动态排课*** |
CN109615571A (zh) * | 2018-12-17 | 2019-04-12 | 北京竞业达数码科技股份有限公司 | 一种排课*** |
CN109858882A (zh) * | 2019-01-31 | 2019-06-07 | 山大鲁能信息科技有限公司 | 一种基于改进的退火算法的新高考排课方法及*** |
CN109948894A (zh) * | 2019-01-31 | 2019-06-28 | 山大鲁能信息科技有限公司 | 一种选排课*** |
CN109978738A (zh) * | 2019-03-21 | 2019-07-05 | 深圳市倍思教育科技有限公司 | 分班方法、装置、计算机设备和存储介质 |
CN110047023A (zh) * | 2019-03-29 | 2019-07-23 | 北京工业大学 | 基于模拟退火算法的新高考排课算法 |
CN110047023B (zh) * | 2019-03-29 | 2021-05-28 | 北京工业大学 | 基于模拟退火算法的新高考排课算法 |
CN110458737A (zh) * | 2019-08-20 | 2019-11-15 | 暨南大学 | 基于神经网络修改高校教务安排的方法、装置、设备及介质 |
CN110458737B (zh) * | 2019-08-20 | 2023-09-26 | 暨南大学 | 基于神经网络修改高校教务安排的方法、装置、设备及介质 |
CN110738461A (zh) * | 2019-10-10 | 2020-01-31 | 青岛海信商用显示股份有限公司 | 排课方法及设备 |
CN110738461B (zh) * | 2019-10-10 | 2022-09-30 | 青岛海信商用显示股份有限公司 | 排课方法及设备 |
CN111176753A (zh) * | 2019-12-20 | 2020-05-19 | 贝壳技术有限公司 | 云资源优化配置方法、装置、电子设备及可读存储介质 |
TWI756954B (zh) * | 2020-12-01 | 2022-03-01 | 英業達股份有限公司 | 無自習的跑班排課系統及其方法 |
CN114493289A (zh) * | 2022-01-27 | 2022-05-13 | 北京碧云数创科技有限公司 | 课程列表生成方法及装置 |
CN116468416A (zh) * | 2023-06-19 | 2023-07-21 | 北京化工大学 | 一种基于遗传算法的智能走班排课方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107610012B (zh) | 2021-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107610012A (zh) | 一种选课和排课***及其选课和排课方法 | |
CN104504949A (zh) | 一种远程教育信息平台*** | |
Clack | Organizational development and TQM: the Harvard College Library's experience | |
CN103164822A (zh) | 开放式教务管理***框架 | |
CN110503269A (zh) | 走班教学下的分班排课方法及装置 | |
CN103996154A (zh) | 面向***学资源的人机协同启发式排课*** | |
CN108230197A (zh) | 一种基于计算机软硬件的学校教育辅助*** | |
CN107909263A (zh) | 一种高校考务排考方法和装置 | |
CN109829839A (zh) | 一种智能教学*** | |
Bolívar-Botía et al. | Schools principals in Spain: From manager to leader | |
Al-Sarem | Solving course selection problem by a combination of correlation analysis and Analytic Hierarchy Process | |
CN115935032A (zh) | 一种基于智能推荐习题发布个性化作业的方法及装置 | |
Filipović et al. | Using Modified Nadler-Tushman Model in GAP Analysis of Educational Process of EFMNS Certified Engineer | |
Sokol et al. | Adaptive training system for IT-companies personnel: design principals, architectural models and implementation technology | |
Veresné et al. | Training based change management problem for social innovation | |
Skalka et al. | E-learning and quality: the quality evaluation model for e-learning courses | |
Adam et al. | Using Formative and Summative Assessments in Data Mining to Predict Students’ Final Grades | |
CN110443734A (zh) | 一种自动化教学设计操作*** | |
Jiménez-Domingo et al. | A multi-objective genetic algorithm for software personnel staffing for HCIM solutions | |
Arnold et al. | Toward an integrative professional and personal competency-based learning model for inclusive workforce development | |
Abdulmajeed et al. | An Empirical Investigation on the Impact of the New Electronic Educational Facilities: at Kurdistan Universities as Related to E-education Management System | |
CN116050780B (zh) | 一种基于教育平台的教育智能化管理方法及*** | |
Firdausijah | Apparatus Hr Competency Improvement Through Utilization Of Information And Communication Technology | |
Tosic et al. | Trust-based peer assessment for virtual learning systems | |
Fatoni et al. | Models and Implementation of Curriculum Development in Schools |
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 |