## Solver Configuration File ## Name: Validate ## Description: Validation of input data and/or solution. ## Solver is not executed, data are just loaded into the solver and saved again. ## Date: Wed Mar 28 16:20:24 EDT 2007 ###################################### ## Basic Settings ###################################### ## Allow breaking of hard constraints ## Type: boolean Basic.DisobeyHard=false ## Student final sectioning ## Type: boolean General.SwitchStudents=true ## General Settings ###################################### ## Minimal Perturbation Problem (minimize changes from initial solution) ## Type: boolean General.MPP=false ## Solver extensions ## Type: semicolon separated list of classes ## Conflict-based statistics: net.sf.cpsolver.ifs.extension.ConflictStatistics ## Search intensification: net.sf.cpsolver.ifs.extension.SearchIntensification ## Violated initial values: net.sf.cpsolver.ifs.extension.ViolatedInitials Extensions.Classes=net.sf.cpsolver.ifs.extension.SearchIntensification;net.sf.cpsolver.ifs.extension.ConflictStatistics ## Save solution when done ## Default: true General.Save=true ## Minimal number of unassigned variables to save best solution found (-1 always save) ## Type: integer General.SaveBestUnassigned=-1 ## Use building distances ## Type: boolean General.UseDistanceConstraints=true ## Use same subpart balancing ## Type: boolean General.Spread=true ## Use automatic same_students constraints ## Type: boolean General.AutoSameStudents=true ## Time preference normalization decrease factor ## Type: double General.NormalizedPrefDecreaseFactor=0.77 ## Use departmental balancing ## Type: boolean General.DeptBalancing=false ## Automatic same student constraint ## Type: enum(SAME_STUDENTS,DIFF_TIME) General.AutoSameStudentsConstraint=SAME_STUDENTS ## Ignore Room Sharing ## Type: boolean General.IgnoreRoomSharing=false ## Minimal-perturbation Setting ###################################### ## Perturbation Penalty ###################################### ## Different value than initial is assigned ## Type: double Perturbations.DifferentPlacement=0.0 ## Number of students which are enrolled in a class which is placed to a different location than initial ## Type: double Perturbations.AffectedStudentWeight=0.1 ## Number of classes which are placed to a different room than initial ## Type: double Perturbations.AffectedInstructorWeight=0.0 ## Number of classes which are placed to a different room than initial ## Type: double Perturbations.AffectedInstructorWeight=0.0 ## Number of classes which are placed to a different room than initial ## Type: double Perturbations.DifferentRoomWeight=0.0 ## Number of classes which are placed to a different building than initial ## Type: double Perturbations.DifferentBuildingWeight=0.0 ## Number of classes which are placed in a different time than initial ## Type: double Perturbations.DifferentTimeWeight=0.0 ## Number of classes which are placed in a different days than initial ## Type: double Perturbations.DifferentDayWeight=0.0 ## Number of classes which are placed in a different hours than initial ## Type: double Perturbations.DifferentHourWeight=0.0 ## Difference of student conflicts of classes assigned to current placements instead of initial placements ## Type: double Perturbations.DeltaStudentConflictsWeight=0.0 ## New created student conflicts -- particular students are taken into account ## Type: double Perturbations.NewStudentConflictsWeight=0.0 ## New placement of a class is too far from the intial placement (instructor-wise) ## Type: double Perturbations.TooFarForInstructorsWeight=0.0 ## New placement of a class is too far from the intial placement (student-wise) ## Type: double Perturbations.TooFarForStudentsWeight=0.0 ## Difference between number of instructor distance preferences of the initial ## Type: double Perturbations.DeltaInstructorDistancePreferenceWeight=0.0 ## Difference between room preferences of the initial and the current solution ## Type: double Perturbations.DeltaRoomPreferenceWeight=0.0 ## Difference between time preferences of the initial and the current solution ## Type: double Perturbations.DeltaTimePreferenceWeight=0.0 ## Number of students which are enrolled in a class which is placed to a different time than initial ## Type: double Perturbations.AffectedStudentByTimeWeight=0.0 ## Number of instructors which are assigned to classes which are placed to different time than initial ## Type: double Perturbations.AffectedInstructorByTimeWeight=0.0 ## Number of students which are enrolled in a class which is placed to a different room than initial ## Type: double Perturbations.AffectedStudentByRoomWeight=0.0 ## Number of instructors which are assigned to classes which are placed to different room than initial ## Type: double Perturbations.AffectedInstructorByRoomWeight=0.0 ## Number of students which are enrolled in a class which is placed to a different building than initial ## Type: double Perturbations.AffectedStudentByBldgWeight=0.0 ## Number of instructors which are assigned to classes which are placed to different building than initial ## Type: double Perturbations.AffectedInstructorByBldgWeight=0.0 ## Departmental Balancing ###################################### ## Initial allowance of the slots for a particular time ## Type: double DeptBalancing.SpreadFactor=1.2 ## Increase the initial allowance when it causes the given number of unassignments ## Type: integer DeptBalancing.Unassignments2Weaken=0 ## Conflict-based Statistics ###################################### ## Ageing (koef) ## Type: double ConflictStatistics.Ageing=1.0 ## Ageing -- half time (number of iteration) ## Type: integer ConflictStatistics.AgeingHalfTime=0 ## Print conflict statistics ## Type: boolean ConflictStatistics.Print=true ## Number of iterations to print CBS (-1 just keep in memory and save within the solution) ## Type: integer ConflictStatistics.PrintInterval=-1 ## Termination Conditions ###################################### ## Minimal allowed number of perturbances (-1 not use) ## Type: integer Termination.MinPerturbances=-1 ## Maximal number of iteration ## Type: integer ## Default: -1 Termination.MaxIters=0 ## Maximal solver time (in sec) ## Type: integer Termination.TimeOut=1800 ## Stop computation when a complete solution is found ## Type: boolean Termination.StopWhenComplete=false ## Solution Comparator Weights ###################################### ## Weight of hard student conflict ## Type: double Comparator.HardStudentConflictWeight=0.8 ## Weight of student conflict ## Type: double Comparator.StudentConflictWeight=0.2 ## Time preferences weight ## Type: double Comparator.TimePreferenceWeight=0.3 ## Distribution preferences weight ## Type: double Comparator.ContrPreferenceWeight=2.0 ## Room preferences weight ## Type: double Comparator.RoomPreferenceWeight=1.0 ## Useless slots weight ## Type: double Comparator.UselessSlotWeight=0.1 ## Too big room weight ## Type: double Comparator.TooBigRoomWeight=0.1 ## Back-to-back instructor preferences weight ## Type: double Comparator.DistanceInstructorPreferenceWeight=1.0 ## Perturbation penalty weight ## Type: double Comparator.PerturbationPenaltyWeight=1.0 ## Department balancing weight ## Type: double Comparator.DeptSpreadPenaltyWeight=1.0 ## Same subpart balancing weight ## Type: double Comparator.SpreadPenaltyWeight=1.0 ## Commited student conflict weight ## Type: double Comparator.CommitedStudentConflictWeight=1.0 ## Lecture Selection ###################################### ## Roulette wheel selection ## Type: boolean Lecture.RouletteWheelSelection=true ## Random walk probability ## Type: double Lecture.RandomWalkProb=1.0 ## Domain size weight ## Type: double Lecture.DomainSizeWeight=30.0 ## Number of assignments weight ## Type: double Lecture.NrAssignmentsWeight=10.0 ## Initial assignment weight ## Type: double Lecture.InitialAssignmentWeight=20.0 ## Number of constraint weight ## Type: double Lecture.NrConstraintsWeight=0.0 ## Hard student conflict weight ## Type: double ## Default: %Comparator.HardStudentConflictWeight% Lecture.HardStudentConflictWeight=0.8 ## Student conflict weight ## Type: double ## Default: %Comparator.StudentConflictWeight% Lecture.StudentConflictWeight=0.2 ## Time preference weight ## Type: double ## Default: %Comparator.TimePreferenceWeight% Lecture.TimePreferenceWeight=0.3 ## Constraint preference weight ## Type: double ## Default: %Comparator.ContrPreferenceWeight% Lecture.ContrPreferenceWeight=2.0 ## Room preference weight ## Type: double ## Default: %Comparator.RoomPreferenceWeight% Lecture.RoomPreferenceWeight=1.0 ## Useless slot weight ## Type: double ## Default: %Comparator.UselessSlotWeight% Lecture.UselessSlotWeight=0.1 ## Too big room weight ## Type: double ## Default: %Comparator.TooBigRoomWeight% Lecture.TooBigRoomWeight=0.1 ## Back-to-back instructor preferences weight ## Type: double ## Default: %Comparator.DistanceInstructorPreferenceWeight% Lecture.DistanceInstructorPreferenceWeight=1.0 ## Department balancing weight ## Type: double ## Default: %Comparator.DeptSpreadPenaltyWeight% Lecture.DeptSpreadPenaltyWeight=1.0 ## Selection among subset of lectures (faster) ## Type: boolean Lecture.SelectionSubSet=true ## Minimal subset size ## Type: integer Lecture.SelectionSubSetMinSize=10 ## Subset size in percentage of all lectures available for selection ## Type: double Lecture.SelectionSubSetPart=0.2 ## Same subpart balancing weight ## Type: double ## Default: %Comparator.SpreadPenaltyWeight% Lecture.SpreadPenaltyWeight=1.0 ## Commited student conflict weight ## Type: double ## Default: %Comparator.CommitedStudentConflictWeight% Lecture.CommitedStudentConflictWeight=1.0 ## Placement Selection ###################################### ## Random walk probability ## Type: double Placement.RandomWalkProb=0.00 ## MPP initial selection probability ## Type: double Placement.MPP_InitialProb=0.20 ## MPP limit (-1 for no limit) ## Type: integer Placement.MPP_Limit=-1 ## Limit of the perturbations penalty (-1 for no limit) ## Type: double Placement.MPP_PenaltyLimit=-1.0 ## Number of assignments weight (level 1) ## Type: double Placement.NrAssignmentsWeight1=0.0 ## Number of conflicts weight (level 1) ## Type: double Placement.NrConflictsWeight1=1.0 ## Weighted conflicts weight (CBS, level 1) ## Type: double Placement.WeightedConflictsWeight1=2.0 ## Number of potential conflicts weight (CBS, level 1) ## Type: double Placement.NrPotentialConflictsWeight1=0.0 ## Delta initial assigments weight (MPP, level 1) ## Type: double Placement.MPP_DeltaInitialAssignmentWeight1=0.1 ## Hard student conflicts weight (level 1) ## Type: double Placement.NrHardStudConfsWeight1=0.3 ## Student conflicts weight (level 1) ## Type: double Placement.NrStudConfsWeight1=0.05 ## Time preference weight (level 1) ## Type: double Placement.TimePreferenceWeight1=0.0 ## Time preference delta weight (level 1) ## Type: double Placement.DeltaTimePreferenceWeight1=0.2 ## Constraint preference weight (level 1) ## Type: double Placement.ConstrPreferenceWeight1=0.25 ## Room preference weight (level 1) ## Type: double Placement.RoomPreferenceWeight1=0.1 ## Useless slot weight (level 1) ## Type: double Placement.UselessSlotsWeight1=0.0 ## Too big room weight (level 1) ## Type: double Placement.TooBigRoomWeight1=0.01 ## Back-to-back instructor preferences weight (level 1) ## Type: double Placement.DistanceInstructorPreferenceWeight1=0.1 ## Department balancing: penalty of when a slot over initial allowance is used (level 1) ## Type: double Placement.DeptSpreadPenaltyWeight1=0.1 ## Threshold koeficient (level 1) ## Type: double Placement.ThresholdKoef1=0.1 ## Number of assignments weight (level 2) ## Type: double Placement.NrAssignmentsWeight2=0.0 ## Number of conflicts weight (level 2) ## Type: double Placement.NrConflictsWeight2=0.0 ## Weighted conflicts weight (CBS, level 2) ## Type: double Placement.WeightedConflictsWeight2=0.0 ## Number of potential conflicts weight (CBS, level 2) ## Type: double Placement.NrPotentialConflictsWeight2=0.0 ## Delta initial assigments weight (MPP, level 2) ## Type: double ## Default: %Comparator.PerturbationPenaltyWeight% Placement.MPP_DeltaInitialAssignmentWeight2=1.0 ## Hard student conflicts weight (level 2) ## Type: double ## Default: %Comparator.HardStudentConflictWeight% Placement.NrHardStudConfsWeight2=0.8 ## Student conflicts weight (level 2) ## Type: double ## Default: %Comparator.StudentConflictWeight% Placement.NrStudConfsWeight2=0.2 ## Time preference weight (level 2) ## Type: double ## Default: %Comparator.TimePreferenceWeight% Placement.TimePreferenceWeight2=0.3 ## Time preference delta weight (level 2) ## Type: double Placement.DeltaTimePreferenceWeight2=0.0 ## Constraint preference weight (level 2) ## Type: double ## Default: %Comparator.ContrPreferenceWeight% Placement.ConstrPreferenceWeight2=2.0 ## Room preference weight (level 2) ## Type: double ## Default: %Comparator.RoomPreferenceWeight% Placement.RoomPreferenceWeight2=1.0 ## Useless slot weight (level 2) ## Type: double ## Default: %Comparator.UselessSlotWeight% Placement.UselessSlotsWeight2=0.1 ## Too big room weight (level 2) ## Type: double ## Default: %Comparator.TooBigRoomWeight% Placement.TooBigRoomWeight2=0.1 ## Back-to-back instructor preferences weight (level 2) ## Type: double ## Default: %Comparator.DistanceInstructorPreferenceWeight% Placement.DistanceInstructorPreferenceWeight2=1.0 ## Department balancing: penalty of when a slot over initial allowance is used (level 2) ## Type: double ## Default: %Comparator.DeptSpreadPenaltyWeight% Placement.DeptSpreadPenaltyWeight2=1.0 ## Threshold koeficient (level 2) ## Type: double Placement.ThresholdKoef2=0.1 ## Number of assignments weight (level 3) ## Type: double Placement.NrAssignmentsWeight3=0.0 ## Number of conflicts weight (level 3) ## Type: double Placement.NrConflictsWeight3=0.0 ## Weighted conflicts weight (CBS, level 3) ## Type: double Placement.WeightedConflictsWeight3=0.0 ## Number of potential conflicts weight (CBS, level 3) ## Type: double Placement.NrPotentialConflictsWeight3=0.0 ## Delta initial assigments weight (MPP, level 3) ## Type: double Placement.MPP_DeltaInitialAssignmentWeight3=0.0 ## Hard student conflicts weight (level 3) ## Type: double Placement.NrHardStudConfsWeight3=0.0 ## Student conflicts weight (level 3) ## Type: double Placement.NrStudConfsWeight3=0.0 ## Time preference weight (level 3) ## Type: double Placement.TimePreferenceWeight3=0.0 ## Time preference delta weight (level 3) ## Type: double Placement.DeltaTimePreferenceWeight3=0.0 ## Constraint preference weight (level 3) ## Type: double Placement.ConstrPreferenceWeight3=0.0 ## Room preference weight (level 3) ## Type: double Placement.RoomPreferenceWeight3=0.0 ## Useless slot weight (level 3) ## Type: double Placement.UselessSlotsWeight3=0.0 ## Too big room weight (level 3) ## Type: double Placement.TooBigRoomWeight3=0.0 ## Back-to-back instructor preferences weight (level 3) ## Type: double Placement.DistanceInstructorPreferenceWeight3=0.0 ## Department balancing: penalty of when a slot over initial allowance is used (level 3) ## Type: double Placement.DeptSpreadPenaltyWeight3=0.0 ## Same subpart balancing: penalty of when a slot over initial allowance is used (level 1) ## Type: double Placement.SpreadPenaltyWeight1=0.1 ## Same subpart balancing: penalty of when a slot over initial allowance is used (level 2) ## Type: double ## Default: %Comparator.SpreadPenaltyWeight% Placement.SpreadPenaltyWeight2=1.0 ## Same subpart balancing: penalty of when a slot over initial allowance is used (level 3) ## Type: double Placement.SpreadPenaltyWeight3=0.0 ## Commited student conlict weight (level 1) ## Type: double Placement.NrCommitedStudConfsWeight1=0.5 ## Commited student conlict weight (level 2) ## Type: double ## Default: %Comparator.CommitedStudentConflictWeight% Placement.NrCommitedStudConfsWeight2=1.0 ## Commited student conlict weight (level 3) ## Type: double Placement.NrCommitedStudConfsWeight3=0.0 ## Can unassign a singleton value ## Type: boolean Placement.CanUnassingSingleton=true ## Implementations ###################################### ## Perturbations counter ## Type: text PerturbationCounter.Class=net.sf.cpsolver.coursett.heuristics.UniversalPerturbationsCounter ## Termination condition ## Type: text Termination.Class=net.sf.cpsolver.ifs.termination.MPPTerminationCondition ## Solution comparator ## Type: text Comparator.Class=net.sf.cpsolver.coursett.heuristics.TimetableComparator ## Lecture selection ## Type: text Variable.Class=net.sf.cpsolver.coursett.heuristics.LectureSelection ## Placement selection ## Type: text Value.Class=net.sf.cpsolver.coursett.heuristics.PlacementSelection ## Loader class ## Type: text TimetableLoader=net.sf.cpsolver.coursett.TimetableXMLLoader ## Saver class ## Type: text TimetableSaver=net.sf.cpsolver.coursett.TimetableXMLSaver ## Neighbour Selection ## Type: text Neighbour.Class=net.sf.cpsolver.coursett.heuristics.NeighbourSelectionWithSuggestions ## Same Subpart Balancing ###################################### ## Initial allowance of the slots for a particular time ## Type: double Spread.SpreadFactor=1.2 ## Increase the initial allowance when it causes the given number of unassignments ## Type: integer Spread.Unassignments2Weaken=50 ## Search Intensification ###################################### ## Iteration limit (number of iteration after which the search is restarted to the best known solution) ## Type: integer SearchIntensification.IterationLimit=100 ## Number of consecutive restarts to increase iteration limit (if this number of restarts is reached, iteration limit is increased) ## Type: integer SearchIntensification.ResetInterval=5 ## Iteration limit incremental coefficient (when a better solution is found, iteration limit is changed back to initial) ## Type: integer SearchIntensification.MultiplyInterval=2 ## Reset conflict-based statistics (number of consecutive restarts after which CBS is cleared, zero means no reset of CBS) ## Type: integer SearchIntensification.Multiply=2 ## Default Time Preferences ###################################### ## Time preferences weight ## Type: double TimePreferences.Weight=0.0 ## Time preferences ## Type: timepref TimePreferences.Pref=2222222222222224222222222222222223333222222222222222222222222224222222222222222223333222222222222222222222222224222222222222222223333222222222222222222222222224222222222222222223333222222222222222222222222224222222222222222223333222222222222222222222 ## Distances ###################################### ## Instructor Constraint: No Preference Limit ## Type: double Instructor.NoPreferenceLimit=0.0 ## Instructor Constraint: Discouraged Limit ## Type: double Instructor.DiscouragedLimit=5.0 ## Instructor Constraint: Prohibited Limit ## Type: double Instructor.ProhibitedLimit=20.0 ## Student Conflict: Distance Limit ## Type: double Student.DistanceLimit=67.0 ## Student Conflict: Distance Limit (after 75min class) ## Type: double Student.DistanceLimit75min=100.0 ## Neighbour Selection ###################################### ## Probability of using suggestions ## Type: double Neighbour.SuggestionProbability=0.1 ## Suggestions timeout ## Type: integer Neighbour.SuggestionTimeout=500 ## Suggestions depth ## Type: integer Neighbour.SuggestionDepth=4 ## Probability of using suggestions (when all classes are assigned) ## Type: double Neighbour.SuggestionProbabilityAllAssigned=0.5 Xml.ShowNames=false Xml.ExportStudentSectioning=false