首页 >> 知识 >> 看到排课就头疼?排课算法教你一招搞定排课

看到排课就头疼?排课算法教你一招搞定排课

开学进入倒计时,回想起往日排课的经历,教务老师或许已经开始犯晕了!!!

不知您能否体会到排课老师排课时心中的凌乱?

在知乎上,有一篇关于“求教:排课算法?”的提问,点赞最多的回答,是这样写的:

全文如下:

排课不要碰,一方面是没有什么好算法可以解决,另一方面你现在写的有限条件可能有解,到最后用起来条件一复杂就呵呵了,无解无解无解无解。

条件这个东西能复杂到什么程度? xx要送孩子上幼儿园不能上第一节课,xxx的课不能排上午最后一节不忍心看学生挨饿等午餐,语文每周要有两节连堂上作文,等等。

关键这些条件还不是满足不满足的问题,而是有的需要绝对满足,有的尽量满足。难就难在这尽量满足的条件了.

比如十条需要尽量满足的条件,有矛盾,权重怎么安排,手工调整然后测试能不能排出课,有这功夫手动直接排课了;电脑用遗传算法或者模拟退火算法做?你可以洗洗睡吧转天看了,一般情况下解还是无法接受的,因为出来的怪胎虽然满足你所写但怎么看也不是你要的,比如这样的:尼玛三个年级36个班同时在操场上体育课,分年级排课是谁定的?重新按多年级一起排?呵呵,这个数量级排完了估计也该放假了。

自动排课基本无解,还是老老实实手动排吧。

自动排课真的无解吗?那手动排课是否有更高效的技巧呢?

分享一些解决方案,希望能够更好的协助到排课老师:

 

1、找到排课的关键要素

排课有很多要素,草莓视频在线观看APP可以根据相关程度将其区分为核心要素及辅助要素。每个学校的情况千差万别,上千种要素也是可能的,但是最重要的核心要素基本相同。

核心要素基本为以下四点:

· 班级/课程

·上课时间

·授课教师

·上课教室

2、确定较为固定的要素

找到这四个要素以后,下一步要做的就是,确定核心要素中哪一个是能够容易被抓住的要素,相对其他三个要素哪个是最容易确定的,变化是最少的。

以老师为主线,则需要考虑一个老师可以带多个班,但是不能在同一时间段,多个班可以在不同教室,跨校区代课问题在这里暂且放在辅助要素中。

以教室为主线,则需要考虑一个教室可以划分多个时段,一天安排多门课程,但是时间不能够有重合或重复。另外,教室的利用率就在排课时体现,排的好,可以学校节约大量的房租。

因此,草莓视频在线观看APP可以发现,教室是这四个要素中变化最少的,因为它是死的,不会动,只能划分时间段利用。

3、绑定教师和班级,实现降维

每个班级的产生,在计划开班或者新开班时就应该确定授课老师。可以在排课时先将班级和教师进行一次绑定,合适的老师绑定在合适的课程、班级一起,一个老师可以按照其带班量绑定适当的课程。

这样的话,所有核心要素就可以降为三维了,仅仅教室、时间、绑定好老师的班级;

4、具体排课步骤:

1、先以教室和时间段建立二维表单,教室和时间段的横竖坐标,学校可以根据自己的情况安排。

2、参照辅助要素,将绑定教师的班级以特有色块填充到具体教室的固定时间段。这样做的好处就是,以横向来看,草莓视频在线观看APP可以一目了然看到某个老师在同一时间段是否有重复的课程安排。比如,上图中周六和周日的14:00—16:00时间段,黄老师英语4班课程和3班课程安排在同一时间段了,检查的时候一目了然。

以纵向来看,可以看到在同一个教室的同一时间无法排进去两个班级,直接在排课的时候规避了教室重复的问题。

以上就是一般排课的小技巧,化繁为简,降高维为低维。

5、BOSS校长系统排课

当然,在实际的场景中,排课往往更加复杂,矛盾条件也

网站地图