## Uses of Classnet.sf.cpsolver.ifs.solver.Solver

• Packages that use Solver
Package Description
net.sf.cpsolver.coursett
University Course Timetabling.
net.sf.cpsolver.coursett.criteria
University Course Timetabling: Criteria.
net.sf.cpsolver.coursett.criteria.additional
University Course Timetabling: Additional (Experimental) Criteria.
net.sf.cpsolver.coursett.criteria.placement
University Course Timetabling: Placement Selection Criteria.
net.sf.cpsolver.coursett.heuristics
University Course Timetabling: Heuristics.
net.sf.cpsolver.coursett.model
University Course Timetabling: Model.
net.sf.cpsolver.coursett.neighbourhoods
University Course Timetabling: Various Neighbourhoods.
net.sf.cpsolver.exam
Examination Timetabling Solver.
net.sf.cpsolver.exam.criteria
Examination Timetabling: Criteria.
net.sf.cpsolver.exam.heuristics
Examination Timetabling: Solution Heuristics.
net.sf.cpsolver.exam.neighbours
Examination Timetabling: Various Neighbourhoods.
net.sf.cpsolver.exam.split
This package contains an an experimental criterion that allows an exam to be split into two if it decreases the number of student conflicts.
net.sf.cpsolver.ifs.algorithms
IFS Neighbourhood Search Algorithms
net.sf.cpsolver.ifs.algorithms.neighbourhoods
IFS: Various Problem-Independent Neighbourhoods.
net.sf.cpsolver.ifs.criteria
IFS Criteria.
net.sf.cpsolver.ifs.dbt
Dynamic backtracking extension of IFS solver
net.sf.cpsolver.ifs.extension
IFS Extensions (conflict-based statistics, maintenance of arc consistency)
net.sf.cpsolver.ifs.heuristics
IFS Heuristics (value and variable selection criteria)
net.sf.cpsolver.ifs.model
IFS Model (description of a problem)
net.sf.cpsolver.ifs.perturbations
Minimal Perturbation Problem: counting of perturbations
net.sf.cpsolver.ifs.solution
IFS Solution (also contains solution comparator)
net.sf.cpsolver.studentsct
Student Sectioning Solver.
net.sf.cpsolver.studentsct.extension
Student Sectioning: Various Extensions.
net.sf.cpsolver.studentsct.heuristics
Student Sectioning: Heuristics.
net.sf.cpsolver.studentsct.heuristics.selection
Student Sectioning: Various Neighbour Selection Criteria.
• ### Uses of Solver in net.sf.cpsolver.coursett

Subclasses of Solver in net.sf.cpsolver.coursett
Modifier and Type Class and Description
`class ` `TimetableSolver`
University course timetabling solver.
Methods in net.sf.cpsolver.coursett that return Solver
Modifier and Type Method and Description
`Solver<Lecture,Placement>` TimetableSaver.`getSolver()`
Solver
`Solver<Lecture,Placement>` TimetableXMLLoader.`getSolver()`
Methods in net.sf.cpsolver.coursett with parameters of type Solver
Modifier and Type Method and Description
`void` Test.`init(Solver<Lecture,Placement> solver)`
Solver initialization
`void` TimetableXMLLoader.`setSolver(Solver<Lecture,Placement> solver)`
Constructors in net.sf.cpsolver.coursett with parameters of type Solver
Constructor and Description
`TimetableSaver(Solver<Lecture,Placement> solver)`
Constructor
`TimetableXMLSaver(Solver<Lecture,Placement> solver)`
• ### Uses of Solver in net.sf.cpsolver.coursett.criteria

Methods in net.sf.cpsolver.coursett.criteria with parameters of type Solver
Modifier and Type Method and Description
`boolean` FlexibleConstraintCriterion.`init(Solver<Lecture,Placement> solver)`
`boolean` Perturbations.`init(Solver<Lecture,Placement> solver)`
`boolean` StudentConflict.`init(Solver<Lecture,Placement> solver)`
`boolean` TimetablingCriterion.`init(Solver<Lecture,Placement> solver)`
• ### Uses of Solver in net.sf.cpsolver.coursett.criteria.additional

Methods in net.sf.cpsolver.coursett.criteria.additional with parameters of type Solver
Modifier and Type Method and Description
`boolean` InstructorLunchBreak.`init(Solver<Lecture,Placement> solver)`
`boolean` RoomSizePenalty.`init(Solver<Lecture,Placement> solver)`
`boolean` StudentLuchBreak.`init(Solver<Lecture,Placement> solver)`
• ### Uses of Solver in net.sf.cpsolver.coursett.criteria.placement

Methods in net.sf.cpsolver.coursett.criteria.placement with parameters of type Solver
Modifier and Type Method and Description
`boolean` DeltaTimePreference.`init(Solver<Lecture,Placement> solver)`
`boolean` WeightedHardConflicts.`init(Solver<Lecture,Placement> solver)`
• ### Uses of Solver in net.sf.cpsolver.coursett.heuristics

Methods in net.sf.cpsolver.coursett.heuristics with parameters of type Solver
Modifier and Type Method and Description
`void` LectureSelection.`init(Solver<Lecture,Placement> solver)`
`void` NeighbourSelectionWithSuggestions.`init(Solver<Lecture,Placement> solver)`
`void` PlacementSelection.`init(Solver<Lecture,Placement> solver)`
Constructors in net.sf.cpsolver.coursett.heuristics with parameters of type Solver
Constructor and Description
`NeighbourSelectionWithSuggestions(Solver<Lecture,Placement> solver)`
• ### Uses of Solver in net.sf.cpsolver.coursett.model

Methods in net.sf.cpsolver.coursett.model with parameters of type Solver
Modifier and Type Method and Description
`boolean` OnFlySectioning.`init(Solver<Lecture,Placement> solver)`
Initialization
• ### Uses of Solver in net.sf.cpsolver.coursett.neighbourhoods

Methods in net.sf.cpsolver.coursett.neighbourhoods with parameters of type Solver
Modifier and Type Method and Description
`void` RoomSwap.`init(Solver<Lecture,Placement> solver)`
`void` TimeSwap.`init(Solver<Lecture,Placement> solver)`
• ### Uses of Solver in net.sf.cpsolver.exam

Constructors in net.sf.cpsolver.exam with parameters of type Solver
Constructor and Description
`ShutdownHook(Solver<Exam,ExamPlacement> solver)`
• ### Uses of Solver in net.sf.cpsolver.exam.criteria

Methods in net.sf.cpsolver.exam.criteria with parameters of type Solver
Modifier and Type Method and Description
`boolean` DistributionPenalty.`init(Solver<Exam,ExamPlacement> solver)`
`boolean` LargeExamsPenalty.`init(Solver<Exam,ExamPlacement> solver)`
`boolean` PeriodPenalty.`init(Solver<Exam,ExamPlacement> solver)`
`boolean` PerturbationPenalty.`init(Solver<Exam,ExamPlacement> solver)`
`boolean` RoomPenalty.`init(Solver<Exam,ExamPlacement> solver)`
`boolean` RoomSizePenalty.`init(Solver<Exam,ExamPlacement> solver)`
`boolean` StudentBackToBackConflicts.`init(Solver<Exam,ExamPlacement> solver)`
`boolean` StudentDistanceBackToBackConflicts.`init(Solver<Exam,ExamPlacement> solver)`
• ### Uses of Solver in net.sf.cpsolver.exam.heuristics

Methods in net.sf.cpsolver.exam.heuristics with parameters of type Solver
Modifier and Type Method and Description
`void` ExamColoringConstruction.`init(Solver<Exam,ExamPlacement> solver)`
`void` ExamConstruction.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
`void` ExamGreatDeluge.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
`void` ExamHillClimbing.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
`void` ExamNeighbourSelection.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
`void` ExamSimulatedAnnealing.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
`void` ExamTabuSearch.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
`void` ExamUnassignedVariableSelection.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
• ### Uses of Solver in net.sf.cpsolver.exam.neighbours

Methods in net.sf.cpsolver.exam.neighbours with parameters of type Solver
Modifier and Type Method and Description
`void` ExamPeriodSwapMove.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
`void` ExamRandomMove.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
`void` ExamRoomMove.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
`void` ExamTimeMove.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
• ### Uses of Solver in net.sf.cpsolver.exam.split

Methods in net.sf.cpsolver.exam.split with parameters of type Solver
Modifier and Type Method and Description
`void` ExamSplitMoves.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
`boolean` ExamSplitter.`init(Solver<Exam,ExamPlacement> solver)`
Initialization
• ### Uses of Solver in net.sf.cpsolver.ifs.algorithms

Methods in net.sf.cpsolver.ifs.algorithms with parameters of type Solver
Modifier and Type Method and Description
`void` HillClimber.`init(Solver<V,T> solver)`
Initialization
`void` NeighbourSearch.`init(Solver<V,T> solver)`
`void` NeighbourSelector.`init(Solver<V,T> solver)`
Initialization
`void` SimpleSearch.`init(Solver<V,T> solver)`
Initialization
• ### Uses of Solver in net.sf.cpsolver.ifs.algorithms.neighbourhoods

Methods in net.sf.cpsolver.ifs.algorithms.neighbourhoods with parameters of type Solver
Modifier and Type Method and Description
`void` RandomMove.`init(Solver<V,T> solver)`
`void` RandomSwapMove.`init(Solver<V,T> solver)`
`void` SuggestionMove.`init(Solver<V,T> solver)`
• ### Uses of Solver in net.sf.cpsolver.ifs.criteria

Methods in net.sf.cpsolver.ifs.criteria with parameters of type Solver
Modifier and Type Method and Description
`boolean` AbstractCriterion.`init(Solver<V,T> solver)`
• ### Uses of Solver in net.sf.cpsolver.ifs.dbt

Methods in net.sf.cpsolver.ifs.dbt with parameters of type Solver
Modifier and Type Method and Description
`void` DbtValueSelection.`init(Solver<V,T> solver)`
Heuristics initialization
`void` DbtVariableSelection.`init(Solver<V,T> solver)`
Heuristics initialization
Constructors in net.sf.cpsolver.ifs.dbt with parameters of type Solver
Constructor and Description
```DbtPropagation(Solver<V,T> solver, DataProperties properties)```
Constructor.
• ### Uses of Solver in net.sf.cpsolver.ifs.extension

Methods in net.sf.cpsolver.ifs.extension that return Solver
Modifier and Type Method and Description
`Solver<V,T>` Extension.`getSolver()`
Returns the solver
Methods in net.sf.cpsolver.ifs.extension with parameters of type Solver
Modifier and Type Method and Description
`boolean` Extension.`init(Solver<V,T> solver)`
Initialization -- called before the solver is started
`boolean` MacPropagation.`init(Solver<V,T> solver)`
Initialization.
`boolean` MacRevised.`init(Solver<V,T> solver)`
Initialization.
`boolean` SearchIntensification.`init(Solver<V,T> solver)`
Constructors in net.sf.cpsolver.ifs.extension with parameters of type Solver
Constructor and Description
```ConflictStatistics(Solver<V,T> solver, DataProperties properties)```
```Extension(Solver<V,T> solver, DataProperties properties)```
Constructor
```MacPropagation(Solver<V,T> solver, DataProperties properties)```
Constructor
```MacRevised(Solver<V,T> solver, DataProperties properties)```
Constructor
```SearchIntensification(Solver<V,T> solver, DataProperties properties)```
```ViolatedInitials(Solver<V,T> solver, DataProperties properties)```
• ### Uses of Solver in net.sf.cpsolver.ifs.heuristics

Methods in net.sf.cpsolver.ifs.heuristics with parameters of type Solver
Modifier and Type Method and Description
`void` BacktrackNeighbourSelection.`init(Solver<V,T> solver)`
Solver initialization
`void` GeneralValueSelection.`init(Solver<V,T> solver)`
Initialization
`void` GeneralVariableSelection.`init(Solver<V,T> solver)`
Initialization
`void` NeighbourSelection.`init(Solver<V,T> solver)`
Criterion initialization
`void` RoundRobinNeighbourSelection.`init(Solver<V,T> solver)`
Initialization
`void` StandardNeighbourSelection.`init(Solver<V,T> solver)`
`void` ValueSelection.`init(Solver<V,T> solver)`
Initialization
`void` VariableSelection.`init(Solver<V,T> solver)`
Initialization
• ### Uses of Solver in net.sf.cpsolver.ifs.model

Methods in net.sf.cpsolver.ifs.model with parameters of type Solver
Modifier and Type Method and Description
`boolean` Model.`init(Solver<V,T> solver)`
Model initialization
`boolean` ModelListener.`init(Solver<V,T> solver)`
Notification that the model was initialized by the solver.
• ### Uses of Solver in net.sf.cpsolver.ifs.perturbations

Methods in net.sf.cpsolver.ifs.perturbations with parameters of type Solver
Modifier and Type Method and Description
`void` DefaultPerturbationsCounter.`init(Solver<V,T> solver)`
Initialization
`void` PerturbationsCounter.`init(Solver<V,T> solver)`
Initialization
• ### Uses of Solver in net.sf.cpsolver.ifs.solution

Methods in net.sf.cpsolver.ifs.solution with parameters of type Solver
Modifier and Type Method and Description
`void` Solution.`init(Solver<V,T> solver)`
Initialization
• ### Uses of Solver in net.sf.cpsolver.studentsct

Methods in net.sf.cpsolver.studentsct that return Solver
Modifier and Type Method and Description
`Solver<Request,Enrollment>` StudentSectioningSaver.`getSolver()`
Solver
Constructors in net.sf.cpsolver.studentsct with parameters of type Solver
Constructor and Description
`StudentSectioningSaver(Solver<Request,Enrollment> solver)`
Constructor
`StudentSectioningXMLSaver(Solver<Request,Enrollment> solver)`
Constructor
• ### Uses of Solver in net.sf.cpsolver.studentsct.extension

Methods in net.sf.cpsolver.studentsct.extension with parameters of type Solver
Modifier and Type Method and Description
`boolean` DistanceConflict.`init(Solver<Request,Enrollment> solver)`
Initialize extension
`boolean` TimeOverlapsCounter.`init(Solver<Request,Enrollment> solver)`
Initialize extension
Constructors in net.sf.cpsolver.studentsct.extension with parameters of type Solver
Constructor and Description
```DistanceConflict(Solver<Request,Enrollment> solver, DataProperties properties)```
Constructor.
```StudentConflictStatistics(Solver<Request,Enrollment> solver, DataProperties properties)```
```TimeOverlapsCounter(Solver<Request,Enrollment> solver, DataProperties properties)```
Constructor.
• ### Uses of Solver in net.sf.cpsolver.studentsct.heuristics

Methods in net.sf.cpsolver.studentsct.heuristics with parameters of type Solver
Modifier and Type Method and Description
`void` EnrollmentSelection.`init(Solver<Request,Enrollment> solver)`
Initialization
`void` RouletteWheelRequestSelection.`init(Solver<Request,Enrollment> solver)`
Initialization
`void` StudentSctNeighbourSelection.`init(Solver<Request,Enrollment> solver)`
`void` TwoPhaseStudentSctNeighbourSelection.`init(Solver<Request,Enrollment> solver)`
Initialization -- also remove all the dummy students from the problem
`void` TwoPhaseStudentSctNeighbourSelection.RestoreDummyStudents.`init(Solver<Request,Enrollment> solver)`
`void` StudentSctNeighbourSelection.`setup(Solver<Request,Enrollment> solver)`
• ### Uses of Solver in net.sf.cpsolver.studentsct.heuristics.selection

Methods in net.sf.cpsolver.studentsct.heuristics.selection with parameters of type Solver
Modifier and Type Method and Description
`void` BacktrackSelection.`init(Solver<Request,Enrollment> solver)`
`void` BranchBoundSelection.`init(Solver<Request,Enrollment> solver)`
`void` OnlineSelection.`init(Solver<Request,Enrollment> solver)`
`void` PriorityConstructionSelection.`init(Solver<Request,Enrollment> solver)`
Initialize
`void` RandomUnassignmentSelection.`init(Solver<Request,Enrollment> solver)`
Initialization
`void` ResectionIncompleteStudentsSelection.`init(Solver<Request,Enrollment> solver)`
`void` ResectionUnassignedStudentsSelection.`init(Solver<Request,Enrollment> solver)`
`void` RndUnProblStudSelection.`init(Solver<Request,Enrollment> solver)`
`void` StandardSelection.`init(Solver<Request,Enrollment> solver)`
Initialization
`void` SwapStudentSelection.`init(Solver<Request,Enrollment> solver)`
Initialization
`void` BacktrackSelection.```init(Solver<Request,Enrollment> solver, String name)```
`void` BranchBoundSelection.```init(Solver<Request,Enrollment> solver, String name)```
Initialize