|
||||||||||
PREV NEXT | FRAMES NO FRAMES |
Packages that use Solution | |
---|---|
net.sf.cpsolver.coursett | University Course Timetabling. |
net.sf.cpsolver.coursett.criteria.placement | University Course Timetabling: Placement Selection Criteria. |
net.sf.cpsolver.coursett.heuristics | University Course Timetabling: Heuristics. |
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.dbt | Dynamic backtracking extension of IFS solver |
net.sf.cpsolver.ifs.example.tt | Simple Timetabling Problem. |
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.solution | IFS Solution (also contains solution comparator) |
net.sf.cpsolver.ifs.solver | IFS Solver |
net.sf.cpsolver.ifs.termination | IFS Termination (termination condition) |
net.sf.cpsolver.studentsct | Student Sectioning Solver. |
net.sf.cpsolver.studentsct.heuristics | Student Sectioning: Heuristics. |
net.sf.cpsolver.studentsct.heuristics.selection | Student Sectioning: Various Neighbour Selection Criteria. |
net.sf.cpsolver.studentsct.weights | Student Sectioning Weightings: various students weight models
|
Uses of Solution in net.sf.cpsolver.coursett |
---|
Methods in net.sf.cpsolver.coursett that return Solution | |
---|---|
protected Solution<Lecture,Placement> |
TimetableSaver.getSolution()
Solution to be saved |
Methods in net.sf.cpsolver.coursett with parameters of type Solution | |
---|---|
void |
Test.bestCleared(Solution<Lecture,Placement> solution)
|
void |
Test.bestRestored(Solution<Lecture,Placement> solution)
|
void |
Test.bestSaved(Solution<Lecture,Placement> solution)
|
void |
Test.getInfo(Solution<Lecture,Placement> solution,
Map<String,String> info)
|
void |
Test.getInfo(Solution<Lecture,Placement> solution,
Map<String,String> info,
Collection<Lecture> variables)
|
void |
TimetableXMLLoader.load(Solution<Lecture,Placement> currentSolution)
|
void |
Test.notify(Solution<Lecture,Placement> solution)
Add a line into the output CSV file when a enw best solution is found. |
static void |
Test.printSomeStuff(Solution<Lecture,Placement> solution)
Create info.txt with some more information about the problem |
static void |
Test.saveOutputCSV(Solution<Lecture,Placement> s,
File file)
|
void |
Test.solutionUpdated(Solution<Lecture,Placement> solution)
|
Uses of Solution in net.sf.cpsolver.coursett.criteria.placement |
---|
Methods in net.sf.cpsolver.coursett.criteria.placement with parameters of type Solution | |
---|---|
void |
WeightedHardConflicts.bestCleared(Solution<Lecture,Placement> solution)
|
void |
WeightedHardConflicts.bestRestored(Solution<Lecture,Placement> solution)
|
void |
WeightedHardConflicts.bestSaved(Solution<Lecture,Placement> solution)
|
void |
WeightedHardConflicts.getInfo(Solution<Lecture,Placement> solution,
Map<String,String> info)
|
void |
WeightedHardConflicts.getInfo(Solution<Lecture,Placement> solution,
Map<String,String> info,
Collection<Lecture> variables)
|
void |
WeightedHardConflicts.solutionUpdated(Solution<Lecture,Placement> solution)
|
Uses of Solution in net.sf.cpsolver.coursett.heuristics |
---|
Methods in net.sf.cpsolver.coursett.heuristics with parameters of type Solution | |
---|---|
int |
NeighbourSelectionWithSuggestions.SuggestionNeighbour.compareTo(Solution<Lecture,Placement> solution)
|
double |
TimetableComparator.currentValue(Solution<Lecture,Placement> currentSolution)
Deprecated. |
double |
TimetableComparator.getBest(Solution<Lecture,Placement> currentSolution)
Deprecated. |
Neighbour<Lecture,Placement> |
NeighbourSelectionWithSuggestions.selectNeighbour(Solution<Lecture,Placement> solution)
|
Neighbour<Lecture,Placement> |
NeighbourSelectionWithSuggestions.selectNeighbourWithSuggestions(Solution<Lecture,Placement> solution,
Lecture lecture,
int depth)
|
Placement |
PlacementSelection.selectValue(Solution<Lecture,Placement> solution,
Lecture var)
|
Lecture |
LectureSelection.selectVariable(Solution<Lecture,Placement> solution)
|
Uses of Solution in net.sf.cpsolver.exam.heuristics |
---|
Methods in net.sf.cpsolver.exam.heuristics with parameters of type Solution | |
---|---|
protected boolean |
ExamSimulatedAnnealing.accept(Solution<Exam,ExamPlacement> solution,
Neighbour<Exam,ExamPlacement> neighbour)
True if the given neighboir is to be be accepted |
protected boolean |
ExamGreatDeluge.accept(Solution<Exam,ExamPlacement> solution,
Neighbour<Exam,ExamPlacement> neighbour)
Accept neighbour |
void |
ExamSimulatedAnnealing.bestCleared(Solution<Exam,ExamPlacement> solution)
|
void |
ExamHillClimbing.bestCleared(Solution<Exam,ExamPlacement> solution)
|
void |
ExamGreatDeluge.bestCleared(Solution<Exam,ExamPlacement> solution)
|
void |
ExamSimulatedAnnealing.bestRestored(Solution<Exam,ExamPlacement> solution)
|
void |
ExamHillClimbing.bestRestored(Solution<Exam,ExamPlacement> solution)
|
void |
ExamGreatDeluge.bestRestored(Solution<Exam,ExamPlacement> solution)
|
void |
ExamSimulatedAnnealing.bestSaved(Solution<Exam,ExamPlacement> solution)
Memorize the iteration when the last best solution was found. |
void |
ExamHillClimbing.bestSaved(Solution<Exam,ExamPlacement> solution)
Memorize the iteration when the last best solution was found. |
void |
ExamGreatDeluge.bestSaved(Solution<Exam,ExamPlacement> solution)
Update last improving iteration count |
boolean |
ExamNeighbourSelection.canContinue(Solution<Exam,ExamPlacement> currentSolution)
Termination condition (i.e., has final phase finished) |
protected void |
ExamSimulatedAnnealing.cool(Solution<Exam,ExamPlacement> solution)
Cool temperature |
Neighbour<Exam,ExamPlacement> |
ExamSimulatedAnnealing.genMove(Solution<Exam,ExamPlacement> solution)
Generate neighbour -- select neighbourhood randomly, select neighbour |
Neighbour<Exam,ExamPlacement> |
ExamGreatDeluge.genMove(Solution<Exam,ExamPlacement> solution)
Generate neighbour -- select neighbourhood randomly, select neighbour |
void |
ExamSimulatedAnnealing.getInfo(Solution<Exam,ExamPlacement> solution,
Map<String,String> info)
|
void |
ExamHillClimbing.getInfo(Solution<Exam,ExamPlacement> solution,
Map<String,String> info)
|
void |
ExamGreatDeluge.getInfo(Solution<Exam,ExamPlacement> solution,
Map<String,String> info)
|
void |
ExamSimulatedAnnealing.getInfo(Solution<Exam,ExamPlacement> solution,
Map<String,String> info,
Collection<Exam> variables)
|
void |
ExamHillClimbing.getInfo(Solution<Exam,ExamPlacement> solution,
Map<String,String> info,
Collection<Exam> variables)
|
void |
ExamGreatDeluge.getInfo(Solution<Exam,ExamPlacement> solution,
Map<String,String> info,
Collection<Exam> variables)
|
protected void |
ExamSimulatedAnnealing.incIter(Solution<Exam,ExamPlacement> solution)
Increment iteration counter, cool/reheat/restoreBest if necessary |
protected void |
ExamGreatDeluge.incIter(Solution<Exam,ExamPlacement> solution)
Increment iteration count, update bound |
protected void |
ExamGreatDeluge.info(Solution<Exam,ExamPlacement> solution)
Print some information |
protected void |
ExamSimulatedAnnealing.reheat(Solution<Exam,ExamPlacement> solution)
Reheat temperature |
protected void |
ExamSimulatedAnnealing.restoreBest(Solution<Exam,ExamPlacement> solution)
restore best ever found solution |
Neighbour<Exam,ExamPlacement> |
ExamTabuSearch.selectNeighbour(Solution<Exam,ExamPlacement> solution)
Neighbor selection |
Neighbour<Exam,ExamPlacement> |
ExamSimulatedAnnealing.selectNeighbour(Solution<Exam,ExamPlacement> solution)
Select neighbour -- generate a move ExamSimulatedAnnealing.genMove(Solution) until an acceptable
neighbour is found
ExamSimulatedAnnealing.accept(Solution, Neighbour) , keep
increasing iteration ExamSimulatedAnnealing.incIter(Solution) . |
Neighbour<Exam,ExamPlacement> |
ExamNeighbourSelection.selectNeighbour(Solution<Exam,ExamPlacement> solution)
Neighbour selection. |
Neighbour<Exam,ExamPlacement> |
ExamHillClimbing.selectNeighbour(Solution<Exam,ExamPlacement> solution)
Select one of the given neighbourhoods randomly, select neighbour, return it if its value is below or equal to zero (continue with the next selection otherwise). |
Neighbour<Exam,ExamPlacement> |
ExamGreatDeluge.selectNeighbour(Solution<Exam,ExamPlacement> solution)
A neighbour is generated randomly untill an acceptable one is found. |
Neighbour<Exam,ExamPlacement> |
ExamConstruction.selectNeighbour(Solution<Exam,ExamPlacement> solution)
Select a neighbour. |
Neighbour<Exam,ExamPlacement> |
ExamColoringConstruction.selectNeighbour(Solution<Exam,ExamPlacement> solution)
|
ExamPlacement |
ExamTabuSearch.selectValue(Solution<Exam,ExamPlacement> solution,
Exam exam)
Value selection |
Exam |
ExamUnassignedVariableSelection.selectVariable(Solution<Exam,ExamPlacement> solution)
Variable selection |
void |
ExamSimulatedAnnealing.solutionUpdated(Solution<Exam,ExamPlacement> solution)
|
void |
ExamHillClimbing.solutionUpdated(Solution<Exam,ExamPlacement> solution)
|
void |
ExamGreatDeluge.solutionUpdated(Solution<Exam,ExamPlacement> solution)
|
Uses of Solution in net.sf.cpsolver.exam.neighbours |
---|
Methods in net.sf.cpsolver.exam.neighbours with parameters of type Solution | |
---|---|
Neighbour<Exam,ExamPlacement> |
ExamTimeMove.selectNeighbour(Solution<Exam,ExamPlacement> solution)
Select an exam randomly, select an available period randomly (if it is not assigned), use rooms if possible, select rooms using Exam.findBestAvailableRooms(ExamPeriodPlacement) if not (exam is unassigned, a room is not available or used). |
Neighbour<Exam,ExamPlacement> |
ExamRoomMove.selectNeighbour(Solution<Exam,ExamPlacement> solution)
Select an exam randomly, select an available period randomly (if it is not assigned, from Exam.getPeriodPlacements() ), select rooms
using Exam.findRoomsRandom(ExamPeriodPlacement) |
Neighbour<Exam,ExamPlacement> |
ExamRandomMove.selectNeighbour(Solution<Exam,ExamPlacement> solution)
Select an exam randomly, select an available period randomly (from Exam.getPeriodPlacements() ), select rooms using
Exam.findBestAvailableRooms(ExamPeriodPlacement) . |
Neighbour<Exam,ExamPlacement> |
ExamPeriodSwapMove.selectNeighbour(Solution<Exam,ExamPlacement> solution)
Select an exam randomly, select an available period randomly (if it is not assigned), use rooms if possible, select rooms using Exam.findBestAvailableRooms(ExamPeriodPlacement) if not (exam is unassigned, a room is not available or used). |
Uses of Solution in net.sf.cpsolver.exam.split |
---|
Methods in net.sf.cpsolver.exam.split with parameters of type Solution | |
---|---|
Neighbour<Exam,ExamPlacement> |
ExamSplitMoves.selectNeighbour(Solution<Exam,ExamPlacement> solution)
Select a split (split an exam into two), a merge (merge two split exams back together) or shuffle operation (move students between two exams that has been split before). |
Uses of Solution in net.sf.cpsolver.ifs.dbt |
---|
Methods in net.sf.cpsolver.ifs.dbt with parameters of type Solution | |
---|---|
T |
DbtValueSelection.selectValue(Solution<V,T> solution,
V selectedVariable)
Value selection |
V |
DbtVariableSelection.selectVariable(Solution<V,T> solution)
Variable selection |
Uses of Solution in net.sf.cpsolver.ifs.example.tt |
---|
Methods in net.sf.cpsolver.ifs.example.tt with parameters of type Solution | |
---|---|
void |
TimetableModel.saveAsXML(DataProperties cfg,
boolean gen,
Solution<Activity,Location> solution,
File outFile)
|
Uses of Solution in net.sf.cpsolver.ifs.extension |
---|
Methods in net.sf.cpsolver.ifs.extension with parameters of type Solution | |
---|---|
void |
SearchIntensification.bestCleared(Solution<V,T> solution)
|
void |
SearchIntensification.bestRestored(Solution<V,T> solution)
|
void |
SearchIntensification.bestSaved(Solution<V,T> solution)
|
void |
SearchIntensification.getInfo(Solution<V,T> solution,
Map<String,String> info)
|
void |
SearchIntensification.getInfo(Solution<V,T> solution,
Map<String,String> info,
Collection<V> variables)
|
void |
SearchIntensification.solutionUpdated(Solution<V,T> solution)
|
Uses of Solution in net.sf.cpsolver.ifs.heuristics |
---|
Fields in net.sf.cpsolver.ifs.heuristics declared as Solution | |
---|---|
protected Solution<V,T> |
BacktrackNeighbourSelection.iSolution
|
Methods in net.sf.cpsolver.ifs.heuristics with parameters of type Solution | |
---|---|
void |
RoundRobinNeighbourSelection.changeSelection(Solution<V,T> solution)
Change selection |
int |
BacktrackNeighbourSelection.BackTrackNeighbour.compareTo(Solution<V,T> solution)
Compare two neighbours |
Neighbour<V,T> |
StandardNeighbourSelection.selectNeighbour(Solution<V,T> solution)
Select neighbour. |
Neighbour<V,T> |
RoundRobinNeighbourSelection.selectNeighbour(Solution<V,T> solution)
Select neighbour. |
Neighbour<V,T> |
NeighbourSelection.selectNeighbour(Solution<V,T> solution)
select a neighbour of a given solution |
Neighbour<V,T> |
BacktrackNeighbourSelection.selectNeighbour(Solution<V,T> solution)
Select neighbour. |
Neighbour<V,T> |
BacktrackNeighbourSelection.selectNeighbour(Solution<V,T> solution,
V variable)
Select neighbour -- starts from the provided variable. |
T |
ValueSelection.selectValue(Solution<V,T> solution,
V selectedVariable)
Value selection |
T |
StandardNeighbourSelection.selectValue(Solution<V,T> solution,
V variable)
Use the provided value selection criterion to select a value to the selected variable |
T |
GeneralValueSelection.selectValue(Solution<V,T> solution,
V selectedVariable)
Value selection |
V |
VariableSelection.selectVariable(Solution<V,T> solution)
Variable selection |
V |
StandardNeighbourSelection.selectVariable(Solution<V,T> solution)
Use the provided variable selection criterion to select a variable |
V |
GeneralVariableSelection.selectVariable(Solution<V,T> solution)
Variable selection |
Uses of Solution in net.sf.cpsolver.ifs.solution |
---|
Methods in net.sf.cpsolver.ifs.solution with parameters of type Solution | |
---|---|
void |
SolutionListener.bestCleared(Solution<V,T> solution)
Called by the solution when method clearBest() is
called. |
void |
SolutionListener.bestRestored(Solution<V,T> solution)
Called by the solution when method restoreBest() is
called. |
void |
SolutionListener.bestSaved(Solution<V,T> solution)
Called by the solution when method saveBest() is called. |
void |
SolutionListener.getInfo(Solution<V,T> solution,
Map<String,String> info)
Called by the solution when it is asked to produce info table, see getInfo() . |
void |
SolutionListener.getInfo(Solution<V,T> solution,
Map<String,String> info,
Collection<V> variables)
Called by the solution when it is asked to produce info table, see getInfo() . |
boolean |
SolutionComparator.isBetterThanBestSolution(Solution<V,T> currentSolution)
Compares two solutions. |
boolean |
MPPSolutionComparator.isBetterThanBestSolution(Solution<V,T> currentSolution)
|
boolean |
GeneralSolutionComparator.isBetterThanBestSolution(Solution<V,T> currentSolution)
|
void |
SolutionListener.solutionUpdated(Solution<V,T> solution)
Called by the solution when it is updated, see update(double) . |
Uses of Solution in net.sf.cpsolver.ifs.solver |
---|
Fields in net.sf.cpsolver.ifs.solver declared as Solution | |
---|---|
protected Solution<V,T> |
Solver.iCurrentSolution
current solution |
protected Solution<V,T> |
Solver.iLastSolution
last solution (after IFS Solver finishes) |
Methods in net.sf.cpsolver.ifs.solver that return Solution | |
---|---|
Solution<V,T> |
Solver.currentSolution()
Current solution (during the search) |
Solution<V,T> |
Solver.lastSolution()
Last solution (when solver finishes) |
Methods in net.sf.cpsolver.ifs.solver with parameters of type Solution | |
---|---|
void |
Solver.setInitalSolution(Solution<V,T> solution)
Sets initial solution |
Uses of Solution in net.sf.cpsolver.ifs.termination |
---|
Methods in net.sf.cpsolver.ifs.termination with parameters of type Solution | |
---|---|
boolean |
TerminationCondition.canContinue(Solution<V,T> currentSolution)
Returns true when the solver can continue with the next iteration |
boolean |
MPPTerminationCondition.canContinue(Solution<V,T> currentSolution)
|
boolean |
GeneralTerminationCondition.canContinue(Solution<V,T> currentSolution)
|
Uses of Solution in net.sf.cpsolver.studentsct |
---|
Methods in net.sf.cpsolver.studentsct that return Solution | |
---|---|
static Solution<Request,Enrollment> |
Test.batchSectioning(DataProperties cfg)
Batch sectioning test |
protected Solution<Request,Enrollment> |
StudentSectioningSaver.getSolution()
Solution to be saved |
Solution<Request,Enrollment> |
StudentSctBBTest.getSolution()
Compute and return the sectioning solution. |
static Solution<Request,Enrollment> |
Test.onlineSectioning(DataProperties cfg)
Online sectioning test |
static Solution<Request,Enrollment> |
Test.solveModel(StudentSectioningModel model,
DataProperties cfg)
Solve the student sectioning problem using IFS solver |
Methods in net.sf.cpsolver.studentsct with parameters of type Solution | |
---|---|
void |
Test.TestSolutionListener.bestCleared(Solution<Request,Enrollment> solution)
|
void |
Test.TestSolutionListener.bestRestored(Solution<Request,Enrollment> solution)
|
void |
Test.TestSolutionListener.bestSaved(Solution<Request,Enrollment> solution)
|
void |
Test.TestSolutionListener.getInfo(Solution<Request,Enrollment> solution,
Map<String,String> info)
|
void |
Test.TestSolutionListener.getInfo(Solution<Request,Enrollment> solution,
Map<String,String> info,
Collection<Request> variables)
|
static void |
Test.printInfo(Solution<Request,Enrollment> solution,
boolean computeTables,
boolean computeSectInfos,
boolean runChecks)
Print some information about the solution |
static void |
Test.saveInfoToXML(Solution<Request,Enrollment> solution,
HashMap<String,String> extra,
File file)
Save solution info as XML |
void |
Test.TestSolutionListener.solutionUpdated(Solution<Request,Enrollment> solution)
|
Uses of Solution in net.sf.cpsolver.studentsct.heuristics |
---|
Methods in net.sf.cpsolver.studentsct.heuristics with parameters of type Solution | |
---|---|
void |
StudentSctNeighbourSelection.changeSelection(Solution<Request,Enrollment> solution)
|
protected RouletteWheelSelection<Request> |
RouletteWheelRequestSelection.getRoulette(Solution<Request,Enrollment> solution)
Populate roulette wheel selection, if null or empty. |
Neighbour<Request,Enrollment> |
TwoPhaseStudentSctNeighbourSelection.RestoreDummyStudents.selectNeighbour(Solution<Request,Enrollment> solution)
Return all (removed) dummy students into the problem |
Enrollment |
EnrollmentSelection.selectValue(Solution<Request,Enrollment> solution,
Request selectedVariable)
Value selection |
Request |
RouletteWheelRequestSelection.selectVariable(Solution<Request,Enrollment> solution)
Variable selection. |
Uses of Solution in net.sf.cpsolver.studentsct.heuristics.selection |
---|
Methods in net.sf.cpsolver.studentsct.heuristics.selection with parameters of type Solution | |
---|---|
Neighbour<Request,Enrollment> |
PriorityConstructionSelection.branchAndBound(Solution<Request,Enrollment> solution)
Find best solution for the next student using BranchBoundSelection . |
protected void |
PriorityConstructionSelection.nextCycle(Solution<Request,Enrollment> solution)
Increment cycle |
Neighbour<Request,Enrollment> |
SwapStudentSelection.selectNeighbour(Solution<Request,Enrollment> solution)
For each student that does not have a complete schedule, try to find a request and a student that can be moved out of an enrollment so that the selected student can be assigned to the selected request. |
Neighbour<Request,Enrollment> |
StandardSelection.selectNeighbour(Solution<Request,Enrollment> solution)
Employ the provided VariableSelection and ValueSelection
and return the selected value as SimpleNeighbour . |
Neighbour<Request,Enrollment> |
RndUnProblStudSelection.selectNeighbour(Solution<Request,Enrollment> solution)
With the given probabilty, a problematic student is randomly selected to be unassigned. |
Neighbour<Request,Enrollment> |
ResectionUnassignedStudentsSelection.selectNeighbour(Solution<Request,Enrollment> solution)
Select neighbour. |
Neighbour<Request,Enrollment> |
ResectionIncompleteStudentsSelection.selectNeighbour(Solution<Request,Enrollment> solution)
Select neighbour. |
Neighbour<Request,Enrollment> |
RandomUnassignmentSelection.selectNeighbour(Solution<Request,Enrollment> solution)
With the given probabilty, a student is randomly selected to be unassigned. |
Neighbour<Request,Enrollment> |
PriorityConstructionSelection.selectNeighbour(Solution<Request,Enrollment> solution)
Select neighbor. |
Neighbour<Request,Enrollment> |
BranchBoundSelection.selectNeighbour(Solution<Request,Enrollment> solution)
Select neighbour. |
Neighbour<Request,Enrollment> |
BacktrackSelection.selectNeighbour(Solution<Request,Enrollment> solution)
|
Uses of Solution in net.sf.cpsolver.studentsct.weights |
---|
Methods in net.sf.cpsolver.studentsct.weights with parameters of type Solution | |
---|---|
boolean |
PriorityStudentWeights.isBetterThanBestSolution(Solution<Request,Enrollment> currentSolution)
|
boolean |
OriginalStudentWeights.isBetterThanBestSolution(Solution<Request,Enrollment> currentSolution)
|
boolean |
EqualStudentWeights.isBetterThanBestSolution(Solution<Request,Enrollment> currentSolution)
|
|
||||||||||
PREV NEXT | FRAMES NO FRAMES |