CN107610012B - 一种选课和排课系统及其选课和排课方法 - Google Patents

一种选课和排课系统及其选课和排课方法 Download PDF

Info

Publication number
CN107610012B
CN107610012B CN201710867739.6A CN201710867739A CN107610012B CN 107610012 B CN107610012 B CN 107610012B CN 201710867739 A CN201710867739 A CN 201710867739A CN 107610012 B CN107610012 B CN 107610012B
Authority
CN
China
Prior art keywords
course
algorithm
data
module
layer module
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
Application number
CN201710867739.6A
Other languages
English (en)
Other versions
CN107610012A (zh
Inventor
皇晓琳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN201710867739.6A priority Critical patent/CN107610012B/zh
Publication of CN107610012A publication Critical patent/CN107610012A/zh
Application granted granted Critical
Publication of CN107610012B publication Critical patent/CN107610012B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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:所述排课系统把得到的数据输出到所述选课系统;
Y5 :教师通过网页或者智能设备的应用软件接收并查看来自所述选课系统提供的教师课表;
Y6 :学生通过网页或者智能设备的应用软件接收并查看来自所述选课系统提供的学生课表;
Y7 :学生自主地按照学生课表选择课程至选课结束。
根据本发明提供的选课和排课系统的选课和排课方法,其产生的有益效果为:排课方式灵活、颗粒度细、约束自由组合、走班与非走班结合、兼容度高。全自动课表生成算法,允许半自动或手动分配,排课力度可以细化到每一个学生,每一个约束条件的权重可以灵活调整,支持走班和非走班同时排课。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细的说明。
图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个模块学习。
政治选修课程表
Figure BDA0001416491370000111
因此,针对每一类课程分组,系统要能够设置不同的规则,来满足学校选课手册规定的学生选课要求。如果学生选课时违背了这些规则,系统会自动提示。
规则引擎的原始定义是:规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。
在选课系统中,规则引擎实际是将学生选课的要求从应用中分离,能够根据不同的课程种类设置不同的选课要求,学生能够降低错误选课,减少无效学习带来的损失,也有利于形成个性化的学习计划。
业务逻辑:业务逻辑指选课系统自身的各类流程、数据完整性和整体规则。通常情况下,业务逻辑的内容包括四个部分:
领域实体:定义了业务中的对象,对象有属性和行为;
业务规则:定义了需要完成一个动作,必须满足的条件;
数据完整性:某些数据不可少;
工作流:定义了领域实体之间的交互关系。
在选课的例子中:
领域实体:学生、课程、教师、选课结果;
业务规则:学生点击选课就会生成选课单,但是需要提交成功才是选课成功,生成选课结果。数据完整性:学生、老师必须登录账号,没有账号就不能选课。
工作流:搜索课程-找到课程-选课-提交确认。
模型管理:
在排课过程中,需要建立数学模型,如:设课程集合: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:排课系统把得到的数据输出到选课系统;
Y5 :教师通过网页或者智能设备的应用软件接收并查看来自选课系统提供的教师课表;例如通过微信或其它手机应用软件。
Y6 :学生通过网页或者智能设备的应用软件接收并查看来自选课系统提供的学生课表;例如通过微信或其它手机应用软件。
Y7 :学生自主地按照学生课表选择课程至选课结束。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

Claims (4)

1.一种选课和排课系统,其特征在于,包括选课系统和排课系统,所述选课系统与所述排课系统之间能够实现数据交换;
其中,所述选课系统包括依次连接的第一应用服务层模块、第一算法模块、数据访问层模块、缓存层模块以及数据库集群模块,所述第一应用服务层模块用于与外部数据的交换,所述第一算法模块用于对数据进行处理,所述数据访问层模块用于对数据库的访问,所述缓存层模块用于将数据暂时性地保存起来以供读取和再读取,所述数据库集群模块用于数据的存储;
并且,所述排课系统包括依次连接的第二应用服务层模块、第二算法模块、计算平台和数据存储层模块;所述第二应用服务层模块用于与外部数据的交换,所述第二算法模块和所述计算平台用于对数据进行处理,所述数据存储层模块用于数据的存储;
所述第一算法模块和所述第二算法模块的运算算法采用遗传算法和蚁群算法和图论算法和回溯算法和禁忌搜索算法和模拟退火算法和神经网络算法的一种或多种,并且所述第一算法模块和所述第二算法模块的运算算法还包括启发式算法,所述启发式算法从最难排的课程开始采用递归和禁忌列表的方式,依次寻找最合适的时间;
所述启发式算法按照下面的步骤进行:
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,但不做递归;
课程活动的含义是指,学生-课程为一个课程活动,教师-教学班-教室-课程为另一个课程活动,当学生-课程,以及教师-教学班-教室-课程中的课程一致时,则将这两个课程活动放入同一个时隙。
2.根据权利要求1 所述的选课和排课系统,其特征在于,
所述第一算法模块采用算法引擎、规则引擎和业务逻辑对数据进行处理;
所述第二算法模块采用规则引擎、模型管理及机器学习算法训练对数据进行
处理;所述算法引擎用于针对不同的课程分组分别配置不同的选课算法;所述第一算法模块和所述第二算法模块的规则引擎用于指导学生如何去选课;所述业务逻辑指选课系统自身的各类流程、数据完整性和整体规则;
所述数据存储层模块包括本地数据和云端数据。
3.根据权利要求1 所述的选课和排课系统,其特征在于,
所述第一算法模块包括先到先得算法模块和/或随机抽签算法模块和/或志愿分类算法模块。
4.根据权利要求1 至3中任一项所述的选课和排课系统的选课和排课
方法,其特征在于,
按照下面的步骤进行课程排布:
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 对应的Lj和Li相等,则允许两个课程活动放入同一个时隙;
Q7、通过重复上述步骤,最终计算出每个学生和老师的课表;
按照下面的步骤进行课程选择:
Y1:设计课程;
Y2:配置课程并把数据输入到所述排课系统;
Y3:该排课系统对汇总的数据进行处理输出教师课表;
Y4:所述排课系统把得到的数据输出到所述选课系统;
Y5:通过网页或者智能设备的应用软件接收并供教师查看来自所述选课系统提供的教师课表;
Y6:通过网页或者智能设备的应用软件接收并供学生查看来自所述选课系统提供的学生课表;
Y7:所述学生课表供学生自主地选择课程至选课结束。
CN201710867739.6A 2017-09-22 2017-09-22 一种选课和排课系统及其选课和排课方法 Active CN107610012B (zh)

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 CN107610012A (zh) 2018-01-19
CN107610012B true 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)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
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 北京竞业达数码科技股份有限公司 一种排课系统
CN109948894A (zh) * 2019-01-31 2019-06-28 山大鲁能信息科技有限公司 一种选排课系统
CN109858882A (zh) * 2019-01-31 2019-06-07 山大鲁能信息科技有限公司 一种基于改进的退火算法的新高考排课方法及系统
CN109978738B (zh) * 2019-03-21 2021-07-20 深圳市倍思教育科技有限公司 分班方法、装置、计算机设备和存储介质
CN110047023B (zh) * 2019-03-29 2021-05-28 北京工业大学 基于模拟退火算法的新高考排课算法
CN110458737B (zh) * 2019-08-20 2023-09-26 暨南大学 基于神经网络修改高校教务安排的方法、装置、设备及介质
CN110738461B (zh) * 2019-10-10 2022-09-30 青岛海信商用显示股份有限公司 排课方法及设备
CN111176753B (zh) * 2019-12-20 2021-01-05 贝壳找房(北京)科技有限公司 云资源优化配置方法、装置、电子设备及可读存储介质
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 (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104462079A (zh) * 2013-09-12 2015-03-25 郑州学生宝电子科技有限公司 基于加权优化算法的信息化分班、排课方法
CN104794666A (zh) * 2015-04-30 2015-07-22 重庆大学 一种排课算法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1598839A (zh) * 2004-09-23 2005-03-23 罗星凯 学校课程管理系统及运行方法
US8731983B2 (en) * 2005-02-24 2014-05-20 Sap Ag 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 大连海事大学 面向统一教学资源的人机协同启发式排课系统
CN106203712A (zh) * 2016-07-12 2016-12-07 杭州源中通信技术有限公司 基于大数据的优化决策导排系统
CN106127355A (zh) * 2016-07-19 2016-11-16 焦点科技股份有限公司 一种高效智能的排课方法及系统
CN107016632A (zh) * 2017-06-16 2017-08-04 长沙理工大学 一种基于走班分层教学的选排课方法及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104462079A (zh) * 2013-09-12 2015-03-25 郑州学生宝电子科技有限公司 基于加权优化算法的信息化分班、排课方法
CN104794666A (zh) * 2015-04-30 2015-07-22 重庆大学 一种排课算法

Also Published As

Publication number Publication date
CN107610012A (zh) 2018-01-19

Similar Documents

Publication Publication Date Title
CN107610012B (zh) 一种选课和排课系统及其选课和排课方法
KR102206256B1 (ko) 온라인 강의 시스템에서 강사를 추천하는 방법
CN104008453A (zh) 职业能力测评仿真系统
Mukan et al. The formation of school principals’ readiness to use internet technologies in their work in the system of continuous pedagogical education
Ponomareva et al. Instrumental implementation of the educational process model to improve the rating of the universities.
Hendricks et al. Perceptions about authentic leadership development: South African occupational therapy students’ camp experience
Bolívar-Botía et al. Schools principals in Spain: From manager to leader
CN110196869B (zh) 一种人才信息智能匹配方法、系统及互动终端
Saharan et al. Graph coloring based optimized algorithm for resource utilization in examination scheduling
Al-Sarem Solving course selection problem by a combination of correlation analysis and Analytic Hierarchy Process
Gillies Action research for school counselors
Azadeh et al. A multi-objective optimisation model for university course timetabling problem using a mixed integer dynamic non-linear programming
Kabari et al. An intelligent career advisor expert system
Krepych et al. Methodology of Formation of the Individual Study Plan of the Student Based on the Graph Model of the Dependence of Disciplines.
Veresné et al. Training based change management problem for social innovation
Mouta et al. Blending machines, learning, sense of agency, and ethics: Designing an in-depth framework with Experts using the Delphi Method approach
Grey et al. Interrogating discursive data: How news media narratives assemble truths about the teaching profession
Mpolomoka USING PARTICIPATORY APPROACHES TO IMPROVE ENVIRONMENTAL SUSTAINABILITY IN SELECTED PARTS OF ZAMBIA
Khoroshko et al. Automation of Distributing the Teaching Load to Increase the Effectiveness of Planning of Work of the Teaching Staff.
Suryani et al. The study of dynamic delivery adaptive learning content in e-learning personalization using text mining and ontology approach
García-Vélez et al. An intelligent system based on genetic algorithms to generate study groups using personality traits and academic profiles in higher education
Köksalmış et al. The optimal exam experience: a timetabling approach to prevent student cheating and fatigue
Zhantassova et al. Mathematical Model of Curriculum Development Taking into Account Individual Preferences of Students
Grobbink et al. Combining crowds and machines
Donnison The improvement journey

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