[发明专利]约束粒度可控的排课方法及系统在审

专利信息
申请号: 201611220114.2 申请日: 2016-12-26
公开(公告)号: CN106846193A 公开(公告)日: 2017-06-13
发明(设计)人: 杨卫东;高泽民;王珂;陈文;秦鹏;王亚飞;徐振强;肖乐;徐溢凡 申请(专利权)人: 河南工业大学
主分类号: G06Q50/20 分类号: G06Q50/20
代理公司: 郑州睿信知识产权代理有限公司41119 代理人: 崔旭东
地址: 450001 河南省郑州市高新技术*** 国省代码: 河南;41
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 约束 粒度 可控 方法 系统
【说明书】:

技术领域

发明属于教学管理领域,具体涉及一种约束粒度可控的排课方法及系统。

背景技术

现有的排课方法,不论是人工排课还是计算机自动排课,都是处理教师、教室或场地、班级等资源冲突问题。

在大学和大型中学,由于人员极多,人工排课越来越无法施行。必须借助自动排课算法。

现有的自动排课算法,主要是基于规则和约束条件的贪婪算法、回溯算法、动态规划法和遗传算法等。但这些方法都有一定缺陷。比如回溯算法,其相当于先根遍历,空间复杂度,特别是时间复杂度非常大。而且算法本身复杂,变量多,在约束条件太苛刻时无可行解。贪心算法虽然时间复杂度比较低,但是比较容易出现局部最优,也可能找不到可行解。遗传算法需要通过生成大量的初始值后再不断的优胜劣汰,需要消耗大量的空间,而没有主动依据条件生成课表,存在一定的随机性,也导致大量时间的浪费。

发明内容

本发明提供了一种约束粒度可控的排课方法及系统,以解决现有的自动排课算法复杂度高、效率低且准确率不高的问题。

为解决上述技术问题,本发明的约束粒度可控的排课方法为:

1)计算课元组的空闲时间,当空闲时间的空余周课时大于课元组的周课时,查找最优的排课时间;

2)在最优排课时间BT内计算最合适的排课教室,若存在最合适的排课教室,则课元组排课成功;

3)否则,对课元组进行冲突处理,若冲突处理成功,则课元组排课成功,否则,将该课元组排课失败;

4)当所有课元组排课完成后,对排课失败课元组,调整约束粒度返回步骤1)重新排课或进行手动调整。

所述最优排课时间的计算方法包括以下步骤:

A)计算课元组的上课性质CP、周课时CT及一周内的排课次数N;

B)在全局设置中查找符合属性(CP,CT,N)的课元组最优排课时间序列BT′=[(D1,H1),(D2,H2),…,(DN,HN)],(D1,D2,…,DN)为一周内上课天数的最优序列,(H1,H2,…,HN)为一天内上课节数的最优序列;

C)若时间片(D1,H1)包含在空闲时间内,计算在该时间片下,上课教师和上课班级的时间均匀分布程度,当时间均匀分布程度高于预设值,则获得最优排课时间BT=(D1,H1),查找结束;若时间片(D1,H1)不在空闲时间内或时间均匀程度低于预设值,判断下一个时间片是否为最优排课时间。

所述最合适的排课教室的计算方法包括以下步骤:

a)计算课元组的上课校区CA、上课教室类型CL及上课教室大小CS;

b)查找符合课元组属性(CA,CL,CS)的教室列表,从教室列表中选取优先级最高的教室,计算该教室在课元组的上课起始周内的空闲时间表,当空闲时间表与最优排课时间逻辑与后等于最优排课时间,则该教室为最合理的上课教室,否则,判断下一个教室是否为最合理的上课教室。

步骤3)中对课元组进行冲突处理的方法包括以下步骤:

Ⅰ)将需要冲突处理的课元组压入堆栈,并查找该课元组的相关课元组,将相关课元组按优先级从低到高加入到队列Queue,并记录需要冲突处理的课元组为相关课元组的父课元组;

Ⅱ)取队列Queue中的首课元组,将其进行重新排课,排课成功,对其父课元组进行重排,排课成功,则冲突处理成功;否则,将首课元组的相关课元组加入队列Queue,将首课元弹出队列并压入堆栈;

Ш)重复步骤Ⅱ),当父课元组出栈且重排成功,则冲突处理成功。

所述初始输入数据包括全局设置、班级信息、教室信息、教师信息、课元组信息、课程信息、教室约束、教师约束和课元组约束。

本发明的约束粒度可控的排课系统包括自动排课单元及调整单元,所述自动排课单元包括最优排课时间计算模块、最合适排课教室计算模块、冲突处理模块;所述调整单元包括重新调整约束粒度模块或手动调整模块;

所述自动排课单元用于按优先级高低对课元组排序,根据初始输入数据,从优先级最高的课元组开始依次进行排课;

所述最优排课时间计算模块用于计算课元组的空闲时间,当空闲时间的空余周课时大于课元组的周课时,查找最优的排课时间;

所述最合适排课教室计算模块用于在最优的排课时间BT内计算最合适的排课教室;

所述冲突处理模块用于对课元组进行冲突处理。

所述最优排课时间计算模块的计算方法包括以下步骤:

A)计算课元组的上课性质CP、周课时CT及一周内的排课次数N;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于河南工业大学,未经河南工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201611220114.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top