Getting Started With Course Scheduling
In this blog, we demonstrate how to set up the inputs and run the Course Scheduler.
- Sacinta course scheduling system requires two inputs:
-
- Input Files – Instructors, Programmes, Courses, Rooms and Room facilities .
- Constraints – Sessions in a day, preferred instructor workload, room requiremts and more.
- File input files need to be uploaded and are as follows:
- Instructors
- This file has all the information regarding the instructors, courses they teach etc. There are seven fields in this file and are as follows:
- InstructorId – This field represents the id for the instructor. It can be a combination of characters and numbers.
- InstructorName – This field represents the instructor name.
- MaxSessionsPerWeek – This is to specify the maximum sessions per week the instructor can take classes.
- MaxSessionsPerDay – This is to specify the maximum sessions per day the instructor can take classes.
- CanTeachCourses – Comma separated list of course ids that the instructors can teach. These ids must exist in the courses file.
- PreferredDaysOfWeek – Preferred days for the instructors to work. Values are mon, tue, wed, thu, fri, sat, sun
- PreferredHalfOfDay – Preferred half of day, 1 represents first half and 2 represents second half of the day.
- Courses
- This file has the information regarding the courses, students in course etc. There are six fields in this file and are as follows:
- CourseId – This is to specify the course id. This id has to match the course ids used in other files.
- CourseName – This is to specify course name.
- Credits – This is to specify the credits for the course.
- SessionsOfInstructionPerWeek – This is to specify the Minimum number of sessions per week for this course.
- IsOnline – This is to specify if the course conducted is Online.
- TypesOfRoomFacilitiesNeeded – This is to specify the room facility id needed for this course. This has to match the facility id in Types of room facilities file.
- Programs
- This file has all the information regarding the programs that are to be scheduled. A program can contains multiple courses. There are four fields in this file and are as follows:
- ProgramId – This field represents the program id.
- ProgramName – This field represents the program name.
- ProgramCourses – This is to specify the course ids that are part of the programe, this id has to match the course id in courses file.
- Enrollments – Number of student enrollments in the program.
- Rooms
- This file has the information regarding the rooms that are available and the facilities in each room. There are four fields in this file and are as follows:
- RoomId – This is to specify the room id. This room id has to match the id in courses file.
- RoomName – This is to specify the room name
- RoomCapacity – This is to specify the room capacity
- TypesOfRoomFacilitiesAvailable – This is to specify the room facilities id available in the room. This has to match the required facility id in courses file.
- Types of room facilities
- This file all the information regarding the facilities that are available. There are two fields in this file and are as follows:
- FacilityId – This is to specify the Id for the facility, this id has to match the facility id used in rooms file.
- FacilityName – This is to specify the facility name.
If preexisting files are available in the server, you will see Remove and the Existing [filename] option. For any changes, you need to upload only those files that have been changed. You can also download existing files to view by clicking on the link. Note that only files uploaded from your account can be accessed.
You can also manually remove the files from database using the remove link. Sample screenshot below demonstrates how the UI looks when we have no existing files and the other when all the files exist in the database.
Once the inputs are uploaded, data sanity checks are performed to identify if all necessary parameters are entered correctly. If everything is okay, you will get a success message, otherwise, the error will be displayed. Sample screenshots are provided below.
Constraints
- File input files need to be uploaded and are as follows:
- Constraint Fields
- There are eight field that the user needs to set. In the first visit, you need to set these parameters. However, for your subsequent visits, it will load the last entered constraint automatically and only the files need to be uploaded.
- The constraints are as follows (The descriptions for Relevant, Mandatory, Preferred or Not Relevant are described in the next section.):
- How many sessions in a day? – This is to specify the number of sessions that can be conducted in a day.
- Select the days the classes will be held – This is to specify the days when sessions are possible. There are seven possible options (mon, tue, wed, thu, fri, sat, sun). The user can select multiple days.
- Sessions of instruction per week mentioned for each course is: This is to specify if the instructor weekly preference mentioned in instructors file is Mandatory, Preferred or Not Relevant.
- All the sessions for each course must be allocated in the same room. This statement is: This is to specify if the preference for allocating the sessions for each course in the same room is Mandatory, Preferred or Not Relevant.
- Maximum session per week workload mentioned for instructors is: This is to specify if the instructor weekly session workload mentioned in instructors file is Mandatory, Preferred or Not Relevant.
- Maximum sessions per day workload mentioned for instructors is: This is to specify if the instructor daily session workload mentioned in instructors file is Mandatory, Preferred or Not Relevant.
- Preferred working days in a week mentioned for instructors is: This is to specify if the instructor preferred working days mentioned in instructors file is Mandatory, Preferred or Not Relevan.
- Preferred working half of the day mentioned for instructors is: This is to specify if the instructor preferred working half workload mentioned in instructors file is Mandatory, Preferred or Not Relevant.
- Constraint Selection
-
- Mandatory – This is considered a hard constraint. These are considered highest priority and the algorithm will try to optimize so that these conditions are met. The schedule is considered unsuccessful even if one these conditions are not met.
- Preferred – This is considered a soft constraint. These are considered preferable, but not mandatory. The algorithm will try to optimize for these conditions too, but the preference is not as high as Mandatory. The schedule is considered successful even if one or more of these conditions are not met.
- Not Relevant – This means that the constraint has no relevance and will not be considered in optimizing the schedule.
- Generate Schedule
- You can generate new course in the schedule section. The process takes time and you will receive an email when the course scheduling is complete. You can run only one instance of generate at anytime.
- The status for the current run is visible. If the scheduling has not started, you can abort it. If it has started, you need to wait before you can generate a new schedule.
- Download Result
- If you have a result from the previous run, you can download the file.Please note that the old result file is over written when you generate a new schedule.
Once the inputs are entered, you are free to start scheduling. This is a time consuming process, once the scheduling is complete with result, you will get an email confirming when the scheduling is done. You can download the schedule by clicking on the link.
Information regarding the current status can be check anytime. The file will be available for download for up to seven days and will be deleted after that.
Input Files
Scheduling
- Give It A Try!
- You can try the course scheduling service at full speed for free. Once you're confident that our solution fits your requiremnt, you can seamlessly upgrade your license to get more features.
- Want to get started? please click here.
Want more?
Let us know your requirement and we will provide a easy to use and cost effective customized solution.Please click here to contact us.