Skip to content

cpsolver-1.4.74

Latest
Compare
Choose a tag to compare
@tomas-muller tomas-muller released this 03 Feb 14:06
· 1 commit to master since this release

Student Scheduling: Hard Distance Conflicts

  • HardDistanceConflicts.inConflict(..) -- avoid null exceptions when call for a null section or a free-time's enrollment

Revision e705efa by tomas-muller [email protected] (30-Jan-2025 1:32 PM)

Distance Metric: Copy

  • when using new DistanceMetric(DistanceMetric), copy the new hard distance conflict parameters
  • this fixes the problem of hard distance conflicts not being enabled for unavailabilities, when they are not enabled by default

Revision 32515c6 by tomas-muller [email protected] (27-Jan-2025 3:40 PM)

Student Scheduling: Hard Distance Conflicts

  • allow hard distance conflicts between sections which allow for time overlaps

Revision 28b3e96 by tomas-muller [email protected] (16-Jan-2025 9:18 AM)

Student Scheduling: Hard Distance Conflicts

  • added an ability to make (some) student distance conflicts hard
  • to enable, set Sectioning.HardDistanceConflict to true (defaults to false)
  • a distance conflict is considered hard when
  • the distance between the two classes (or a class and an unavailability) is HardDistanceConflict.DistanceHardLimitInMinutes or more (defaults to 60)
  • the travel time exceeds the time for travel (break time + gap) by more than HardDistanceConflict.AllowedDistanceInMinutes (defaults to 30)
  • so in other words, a distance conflict with travel time of 60 or more munites will be considered hard if student has less than 30 mintes to get between the classes

Revision 11cd291 by tomas-muller [email protected] (15-Jan-2025 6:25 PM)

Course Timetabling: Instructor Unavailable Dates

  • check department of the unavailable dates
  • this is to allow for an instructor to have different unavailable dates on each of the departments they are teaching

Revision 9d7b9a5 by tomas-muller [email protected] (8-Jan-2025 5:35 PM)

Course Timetabling: Following Dates Constraint

  • new group constraint added
    FOLLOWING_DATES: Following Dates
  • given classes must be taught on dates that are back-to-back and in the given order
  • when prohibited or (strongly) discouraged: given classes must be taught on dates in the given order with at least one day between any two following classes
  • the primary use for this constraint are for classes that meet only once
  • the constraint will fail if one of the meetings falls on a holiday and the other does not

Revision d81ac71 by tomas-muller [email protected] (19-Dec-2024 3:29 PM)

Instructor Scheduling: Distributions

  • many course timetabling distributions (group constraint and flexible constraints) have been included in the instructor scheduling problem
  • namely
  • At Most N Hours A Day
  • Same Weeks
  • N Hour Workday
  • Mininal Gap Between Classes
  • Max Block
  • Max Breaks
  • Max Days
  • Break
  • Max Weeks
  • Max Holes
  • Max Half-Days
  • Max Consecutive Days

Revision 9663d04 by tomas-muller [email protected] (18-Dec-2024 7:47 PM)

Course Timetabling: New Group Constraints

  • added two new group constraints (distribution types)
    SAME_STUD_NODST: Same Students w/o Distance
  • same as the Same Students distribution, except there is no distance conflict checking and no work-day limit
  • also, the distribution gets ignored when there is Ignore Student Conflicts distribution between the two classes
  • to replace DIFF_TIME in General.AutoSameStudentsConstraint
  • same as different time, but does not ignore cases when there is Ignore Student Conflicts between two classes in parent-child relation
    DIFF_TIME_IGN_STUDS: Different Time + Ignore Student Conflicts
  • combination of two constraints, Different Time and Ignore Student Conflicts
  • given classes cannot overlap in time, replacing any student conflicts between these classes
  • when prohibited or (strongly) discouraged: every pair of classes in the constraint must overlap in time
  • still, student conflicts are ignored

Revision 84c6f7b by tomas-muller [email protected] (13-Dec-2024 2:10 PM)