自动排课

自动排课单元用于计算资源约束条件下的最佳教学日程安排方案。对于未采用“开放+选课”方式的课程,教学中心要提前安排好具体的教学日程,实验科目或者上课的班级稍微多一点,安排起来就比较困难,要同时兼顾学生、教师和场地的空闲时间。对于教师可能还得考虑其所能任教实验,负责的班级,承担的课时量,上课时间的合理分配。对学生而言,时间上不能安排的过于集中以保证学习效果,有的实验还得考虑先后次序。负责排课的老师往往花费很多时间,可能还得在晚上或周末安排一些课,才能基本解决排课的冲突。

开发自动排课单元的目的就是为了解决这些问题,将老师从繁琐的排课工作中解放出来,同时也能计算出更加合理的排课方案。

提示:如果预先排好了日程计划,则无需使用本功能,在基础单元开放选课中添加保留场次即可。

自动排课

自动排课单元分为求解器和排课工作界面两部分。求解器运行在服务端,用户主要通过排课工作界面设置排课问题,执行并查看排课进度,浏览计算出来的排课方案

排课计划

排课计划用于设置待求解的排课问题,包括待安排的日程,配置参数,可用的资源和优化的目标的设置。

待排日程

课程的待安排日程由其包含的实验和参与的学生分组决定,每组学生每个实验科目产生一条待安排的日程记录。

待排日程

配置参数

配置参数用以指定排课的方式和根据具体需要修改条件参数,包括:

  • 教师是跟班上课,还是仅负责学生的部分实验即可。
  • 学生和教师每日、每周上课次数上限等条件参数。
  • 同一时间、同一天教学中心排课数量限制等参数。

排课设置

可用资源

  • 设置实验的可任教老师范围,可以安排的场地,以及学生、教师、场地的可用时间。
  • 设置老师的任教实验范围,任教班级范围,计划分配的工作量。
  • 资源的可用性可以采用黑/白名单方式设置,及默认可用设定排除清单,或默认禁止设置可用清单。
  • 系统中已存在的日程安排所占用的资源将被自动过滤。

时间设置

优化目标

规划程序通过对一组条件进行计分来评价排课方案各方面的优劣情况,评价条件分为必要条件(必须满足)和优化条件(尽量满足)两类,目前已经提供的评价条件能支持大多数实验排课需求,用户可以根据自己的情况设置不同的条件用于排课,如果有不能解决的需求可通过定制化开发添加额外的评价条件。

必要条件

条件用途
[学生]同时仅能上一节课同一组学生同时安排了超过一场实验将会扣分。
[学生]单周实验次数限制同一组学生每周安排的实验超过最大限制次数将会扣分。
[教师]任教实验不匹配老师安排了任教范围之外的实验将会扣分。
[教师]任教班级不匹配老师安排了任教范围之外的班级将会扣分。
[教师]可用时间不匹配老师安排了可用时间之外的实验将会扣分。
[教师]同时任教场次限制老师超出同时任教限制将会扣分(正常限制为1场)。
[场地]可用时间不匹配安排了场地可用时间之外的实验将会扣分。
[场地]同时仅能排一场同一房间同时安排超过一场实验将会扣分。

优化条件

条件用途
[学生]同一天最多上一次课为保证学习效果学生一天尽量只安排一个实验。
[教师]每日上课次数限制限制老师同一天的上课次数以避免过度劳累和确保教学效果。
[教师]每周上课次数限制限制老师每周上课次数。
[教师]次选时间在老师希望尽量不上课的时间安排了实验将会扣分。
[教师]平分次选时间如需安排次选时间,不同教师次选时间分配尽量平均。
[教师]两节连上尽量将连续的两节课安排给同一个老师。
[教师]稳定上课时段教师每周上课时段尽量固定。
[教师]每周次数一致教师每周上课次数尽量接近。
[工作量]尚未分配尽量按照教师预设的工作量进行安排,有偏差将会扣分。
[工作量]分配不准和分配不准一样,未分配的同样会扣分。
[实验]次序错误有次序要求的实验可以设置先修实验,排课未按次序将会扣分。
[资源]同一时段排课数量限制通过控制同一时段排课上限,实现不同时间排课量均匀。

问题求解与结果查询

排课计划设置完之后在排课页面点击开始按钮就会将排课问题发送到后端求解器进行结算,计算过程中页面会显示最新的排课进展,包括必要条件和优化条件的最新评分和当前的最优排课方案。

排课求解

排课方案随着求解器的优化计算不断改进,计算超时或较长时间(可设置)无法改进评分将中止计算,也可以随时点击停止按钮中止计算。

如果对排课结果满意可以点击保存按钮应用当前的排课结果。如果计算中止未达到理想结果,可再次点击开始按钮继续求解。