课程安排入门

在此博客中,我们将演示如何设置输入和运行课程计划程序。

Sacinta课程安排系统需要两个输入:
  1. 输入文件 – 讲师,课程,课程,房间和房间设施。
  2. 约束 – 一天中的课程、首选讲师工作量、房间要求等。

输入输入后,您可以自由开始计划。这是一个耗时的过程,一旦计划完成并带有结果,您将收到一封电子邮件,确认计划何时完成。您可以通过单击链接下载时间表。

可以随时查看有关当前状态的信息。 该文件最多可供下载 7 天,之后将被删除。


输入文件

文件输入文件需要上传,如下所示:
教师
该文件包含有关讲师,他们教授的课程等的所有信息。此文件中有七个字段,如下所示:
  1. InstructorId – 此字段表示教师的 ID。它可以是字符和数字的组合。
  2. InstructorName – 此字段表示教师姓名。
  3. MaxSessionsPerWeek – 这是为了指定教师每周可以上课的最大课程数。
  4. MaxSessionsPerDay – 这是为了指定教师每天可以上课的最大课程数。
  5. CanTeachCourses – 教师可以教授的课程 ID 列表以逗号分隔。这些 ID 必须存在于课程文件中。
  6. PreferredDaysOfWeek – 讲师的首选工作日。值为周一、周二、周三、周四、周五、周六、周日
  7. PreferredHalfOfDay – 首选半天,1 代表前半天,2 代表下半天。

课程
此文件包含有关课程,课程中学生等的信息。此文件中有六个字段,如下所示:
  1. CourseId – 这是为了指定课程 ID。此 ID 必须与其他文件中使用的课程 ID 匹配。
  2. CourseName – 这是为了指定课程名称。
  3. Credits – 这是为了指定课程的学分。
  4. SessionsOfInstructionPerWeek – 这是为了指定本课程每周的最小课程数。
  5. IsOnline – 这是为了指定所进行的课程是否在线。
  6. TypesOfRoomFacilitiesNeeded – 这是为了指定本课程所需的房间设施 ID。这必须与房间设施类型文件中的设施 ID 匹配。
程序
此文件包含有关要安排的程序的所有信息。一个程序可以包含多个课程。此文件中有四个字段,如下所示:
  1. ProgramId – 此字段表示程序 ID。
  2. ProgramName – 此字段表示程序名称。
  3. ProgramCourses – 这是为了指定作为程序一部分的课程 ID,此 ID 必须与课程文件中的课程 ID 匹配。
  4. Enrollments – 该计划的学生注册人数。
房间
此文件包含有关可用房间和每个房间设施的信息。此文件中有四个字段,如下所示:
  1. RoomId – 这是为了指定房间 ID。此会议室 ID 必须与课程文件中的 ID 匹配。
  2. RoomName – 这是为了指定房间名称
  3. RoomCapacity – 这是为了指定房间容量
  4. TypesOfRoomFacilitiesAvailable – 这是为了指定房间中可用的房间设施ID。这必须与课程文件中所需的设施 ID 匹配。
房间设施类型
此文件包含有关可用设施的所有信息。此文件中有两个字段,如下所示:
  1. FacilityId – 这是为了指定设施的 ID,此 ID 必须与房间文件中使用的设施 ID 匹配。
  2. FacilityName – 这是为了指定设施名称。

如果服务器中存在预先存在的文件可用,您将看到“删除”和“现有 [文件名]”选项。对于任何更改,您只需要上传那些已更改的文件。您还可以通过单击链接下载现有文件进行查看. 请注意,只能访问从您的帐户上传的文件。

您还可以使用删除链接从数据库中手动删除文件。下面的示例屏幕截图演示了当我们没有现有文件时 UI 的外观,以及当数据库中存在所有文件时的另一个 UI 的外观。

Success Error

上传输入后,将执行数据完整性检查,以确定是否正确输入了所有必要的参数。如果一切正常,您将收到一条成功消息,否则将显示错误。下面提供了示例屏幕截图。

Success
Error

约束

文件输入文件需要上传,如下所示:
约束字段
用户需要设置八个字段。在第一次访问时,您需要设置这些参数。但是,对于您随后的访问,它将自动加载上次输入的约束,并且只需要上传文件。
约束如下(下一节将介绍“相关”、“必需”、“首选”或“不相关”的说明。:
  1. How many sessions in a day? – 这是为了指定一天内可以进行的会话数。
  2. Select the days the classes will be held – 这是为了指定可以进行会话的日期。有七种可能的选项(周一、周二、周三、周四、周五、周六、周日)。用户可以选择多天。
  3. Sessions of instruction per week mentioned for each course is: 这是为了指定教师文件中提到的教师每周首选项是必需的、首选的还是不相关的。
  4. All the sessions for each course must be allocated in the same room. 此语句是: 这是为了指定在同一房间中为每门课程分配课程的首选项是强制性的、首选的还是不相关的。
  5. Maximum session per week workload mentioned for instructors is: 这是为了指定讲师文件中提到的讲师每周课程工作量是必需的、首选的还是不相关的。
  6. Maximum sessions per day workload mentioned for instructors is: 这是为了指定讲师文件中提到的讲师每日会话工作量是必需的、首选的还是不相关的。
  7. Preferred working days in a week mentioned for instructors is: 这是为了指定教师文件中提到的讲师首选工作日是强制性的、首选的还是非相关的。
  8. Preferred working half of the day mentioned for instructors is: 这是为了指定教师文件中提到的教师首选工作一半工作量是强制性的、首选的还是不相关的。
约束选择
  1. Mandatory – 这被视为硬约束。这些被认为是最高优先级,算法将尝试优化以满足这些条件。即使不满足这些条件之一,计划也被视为不成功。
  2. Preferred – 这被视为软约束。这些被认为是可取的,但不是强制性的。该算法也将尝试针对这些条件进行优化,但优先级不如强制要求高。即使不满足其中一个或多个条件,计划也被视为成功。
  3. Not Relevant – 这意味着约束没有相关性,在优化计划时不会考虑。

调度

生成计划
您可以在时间表部分生成新课程。该过程需要时间,课程安排完成后您将收到一封电子邮件。任何时候只能运行一个生成的实例。
当前运行的状态可见。如果计划尚未启动,则可以中止它。如果它已启动,则需要等待才能生成新计划。
下载结果
如果您有上次运行的结果,则可以下载该文件。请注意,当您生成新计划时,旧结果文件将被覆盖。
试一试!
您可以免费试用全速课程安排服务。一旦您确信我们的解决方案符合您的要求,您就可以无缝升级您的许可证以获得更多功能。
想要开始吗?请点击这里。

想要更多?

让我们知道您的要求,我们将提供易于使用且具有成本效益的定制解决方案。请点击这里与我们联系。

查看其他博客!

在下面查找更多博客以及其他有趣的视频和技术论文!

其他链接

  1. 优酷
  2. IEEE出版物
  3. GitHub

联系我们

有问题吗?给我们留言,我们会尽快回复您!

有效名称为必填项。
请输入有效的电子邮件地址。
主题:
邮件主题为必填项。
请输入您的留言