论文部分内容阅读
课程编排对每个大学的管理部门来说都是每个学期不得不面对的一个挑战。大学课程编排问题是一个NP完全问题。对大多数大学教育机构来说,课程编排是最普通最难的问题之一。课程编排不仅仅是要编排出一张可用的课程表,更是要编排出一张尽量满足老师和学生们需求的课程表。由于不同的大学对课程编排有不同的需求,所以不同的大学面对着不一致的课程编排问题。另外,尽管有些排课的问题规模不大,然而由于可能存在的课程表的数量是如此之多,为教育机构设计灵活的课程表是一项非常困难的工作。即使在课程编排面对问题规模不大的情况下,大规模的搜索空间也不得不被探索。大学课程编排问题是一个被广泛研究的优化问题,这个优化问题要求在满足一系列的约束条件下,在给定的时间将课程分配给给定的房间。这些约束条件可以分为很多硬约束和软约束,硬约束是为了获得可行的课程表必须要满足的那一类约束条件,软约束是那些应该尽可能被满足的约束条件。硬约束包括诸如教室之类的变量,一些软约束可能是老师偏好的教学时间、学生偏爱的上课时间等。The post enrolment-based coursetimetabling problem(PECTP)是大学课程编排问题中研究最为广泛的一类问题。对于PECTP,现已经有大量的实验数据和研究方法。在PECTP中,有很多学生登记的事件将在一些允许的时间内被编排到合适的教室中。 在这篇论文,元启发方法被引入用于解决大学课程编排问题。首先,通过一个启发式算法,PECTP的有效的课程表被生成。该启发式算法分为两阶段:先是一个构造阶段,然后是一个爬山过程。在这两阶段中,这篇论文提出了一个有用的数据结构用于储存解的结果。其次,一个有效的模拟退火过程被提出用于提高先前构造的解的质量。这篇论文的方法并不保证能产生最优解,但是能在合理的时间内生成一个好的解。最后,这篇论文采用第二届国际时间表竞赛的PECTP的数据集进行算法测试。并通过这篇论文的方法和当前一些最好的方法比较,表明这篇论文的方法可以产生高质量的解,并且效率相对比较高。