3.16. 考试时间稳定(ITC 2007 跟踪 1 - 检查)


将每个考试计划在一个时段和房间。多个考试在同一期间内共享相同的房间。

examinationTimetablingUseCase

硬限制:

  • 冲突:两个共享学员的考试不能在同一期间内发生。
  • 房间容量:房间容量必须随时可用。
  • 周期持续时间:其所有考试的期限必须有效。
  • 相关硬约束(每个数据集指定):

    • coincidence:两个指定的考试必须使用相同的期间(但可能还有其他房间)。
    • 排除:两个指定的考试不能使用相同的期间。
    • 之后:在另一指定考试期后,必须进行指定的考试。
  • 与房间相关的硬约束(每个数据集指定):

    • 排他:指定一个指定考试不必与任何其他考试共享其房间。

软限制(每个限制具有重要影响):

  • 同一学员不应连续两个考试。
  • 同一名学员不应在同一天拥有两个考试。
  • 布置:两门共享学员的考试是以下几个时期。
  • 混合持续时间:共享房间的两个考试不应具有不同的持续时间。
  • 前端负载:在计划前应提前安排大的考试。
  • 周期损失(每个数据集指定):一些句点在使用时会有损失。
  • 房间罚款(每个数据集指定):一些空间在使用时会有损失。

它使用大型测试数据集。

问题由 2007 年国际时间稳定注释 1 进行定义。Geoffrey De Smet 通过 OptaPlanner 的早期版本完成 4 个竞争。自那时起,我们做出了很多改进。

问题大小

exam_comp_set1 has  7883 students,  607 exams, 54 periods,  7 rooms,  12 period constraints and  0 room constraints with a search space of 10^1564.
exam_comp_set2 has 12484 students,  870 exams, 40 periods, 49 rooms,  12 period constraints and  2 room constraints with a search space of 10^2864.
exam_comp_set3 has 16365 students,  934 exams, 36 periods, 48 rooms, 168 period constraints and 15 room constraints with a search space of 10^3023.
exam_comp_set4 has  4421 students,  273 exams, 21 periods,  1 rooms,  40 period constraints and  0 room constraints with a search space of  10^360.
exam_comp_set5 has  8719 students, 1018 exams, 42 periods,  3 rooms,  27 period constraints and  0 room constraints with a search space of 10^2138.
exam_comp_set6 has  7909 students,  242 exams, 16 periods,  8 rooms,  22 period constraints and  0 room constraints with a search space of  10^509.
exam_comp_set7 has 13795 students, 1096 exams, 80 periods, 15 rooms,  28 period constraints and  0 room constraints with a search space of 10^3374.
exam_comp_set8 has  7718 students,  598 exams, 80 periods,  8 rooms,  20 period constraints and  1 room constraints with a search space of 10^1678.

3.16.1. 考试时间组的域模型

下图显示了主要的考试域类:

图 3.11. 检查域类图

examinationDomainDiagram

请注意,我们已将考试概念分成 考试 课程和主题课程。在解决时(这是计划实体类)的考试实例在它们的期间或房间属性发生变化时发生了变化。主题 PeriodRoom 实例在解决过程中不会改变(就像其它类一样是问题事实。)

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.