Uses of Class
net.sf.cpsolver.exam.model.Exam

Packages that use Exam
net.sf.cpsolver.exam Examination Timetabling Solver. 
net.sf.cpsolver.exam.criteria Examination Timetabling: Criteria. 
net.sf.cpsolver.exam.criteria.additional Examination Timetabling: Additional (Experimental) Criteria. 
net.sf.cpsolver.exam.heuristics Examination Timetabling: Solution Heuristics. 
net.sf.cpsolver.exam.model Examination Timetabling: Model. 
net.sf.cpsolver.exam.neighbours Examination Timetabling: Various Neighbourhoods. 
net.sf.cpsolver.exam.reports Examination Timetabling: Reports. 
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. 
 

Uses of Exam in net.sf.cpsolver.exam
 

Constructor parameters in net.sf.cpsolver.exam with type arguments of type Exam
Test.ShutdownHook(Solver<Exam,ExamPlacement> solver)
           
 

Uses of Exam in net.sf.cpsolver.exam.criteria
 

Method parameters in net.sf.cpsolver.exam.criteria with type arguments of type Exam
 double[] RoomPenalty.getBounds(Collection<Exam> variables)
           
 double[] PeriodSizePenalty.getBounds(Collection<Exam> variables)
           
 double[] PeriodPenalty.getBounds(Collection<Exam> variables)
           
 double[] LargeExamsPenalty.getBounds(Collection<Exam> variables)
           
 double[] ExamCriterion.getBounds(Collection<Exam> exams)
           
 boolean StudentDistanceBackToBackConflicts.init(Solver<Exam,ExamPlacement> solver)
           
 boolean StudentBackToBackConflicts.init(Solver<Exam,ExamPlacement> solver)
           
 boolean RoomSizePenalty.init(Solver<Exam,ExamPlacement> solver)
           
 boolean RoomPenalty.init(Solver<Exam,ExamPlacement> solver)
           
 boolean PerturbationPenalty.init(Solver<Exam,ExamPlacement> solver)
           
 boolean PeriodPenalty.init(Solver<Exam,ExamPlacement> solver)
           
 boolean LargeExamsPenalty.init(Solver<Exam,ExamPlacement> solver)
           
 boolean DistributionPenalty.init(Solver<Exam,ExamPlacement> solver)
           
 

Uses of Exam in net.sf.cpsolver.exam.criteria.additional
 

Method parameters in net.sf.cpsolver.exam.criteria.additional with type arguments of type Exam
 double[] RoomViolation.getBounds(Collection<Exam> variables)
           
 double[] PeriodViolation.getBounds(Collection<Exam> variables)
           
 

Uses of Exam in net.sf.cpsolver.exam.heuristics
 

Methods in net.sf.cpsolver.exam.heuristics that return Exam
 Exam ExamUnassignedVariableSelection.selectVariable(Solution<Exam,ExamPlacement> solution)
          Variable selection
 

Methods in net.sf.cpsolver.exam.heuristics that return types with arguments of type Exam
 Neighbour<Exam,ExamPlacement> ExamConstruction.checkLocalOptimality(ExamModel model)
          Find a new assignment of one of the assigned exams that improves the time cost ExamPlacement.getTimeCost() and for which there is a set of available rooms findBestAvailableRooms(ExamPeriodPlacement).
 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
 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)
           
 

Methods in net.sf.cpsolver.exam.heuristics with parameters of type Exam
 Set<ExamRoomPlacement> ExamColoringConstruction.findRooms(Exam exam, ExamPeriodPlacement period)
           
 ExamPlacement ExamTabuSearch.selectValue(Solution<Exam,ExamPlacement> solution, Exam exam)
          Value selection
 

Method parameters in net.sf.cpsolver.exam.heuristics with type arguments of type Exam
 boolean ExamSimulatedAnnealing.accept(LazyNeighbour<Exam,ExamPlacement> neighbour, double value)
          Accept lazy neighbour
 boolean ExamHillClimbing.accept(LazyNeighbour<Exam,ExamPlacement> neighbour, double value)
          Accept lazy neighbour
 boolean ExamGreatDeluge.accept(LazyNeighbour<Exam,ExamPlacement> neighbour, double value)
          Accept lazy neighbour
protected  boolean ExamSimulatedAnnealing.accept(Solution<Exam,ExamPlacement> solution, Neighbour<Exam,ExamPlacement> neighbour)
          True if the given neighboir is to be be accepted
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
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 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 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)
           
 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
 void ExamUnassignedVariableSelection.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 void ExamTabuSearch.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 void ExamSimulatedAnnealing.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 void ExamNeighbourSelection.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 void ExamHillClimbing.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 void ExamGreatDeluge.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 void ExamConstruction.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 void ExamColoringConstruction.init(Solver<Exam,ExamPlacement> solver)
           
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 Exam in net.sf.cpsolver.exam.model
 

Methods in net.sf.cpsolver.exam.model that return Exam
 Exam ExamOwner.getExam()
          An exam for this course/section
 

Methods in net.sf.cpsolver.exam.model that return types with arguments of type Exam
 Set<Exam> ExamStudent.getExams(ExamPeriod period)
          Exam(s) enrolled by the student that are scheduled in the given period
 Set<Exam> ExamInstructor.getExams(ExamPeriod period)
          Exam(s) enrolled by the instructor that are scheduled in the given period
 Set<Exam> ExamStudent.getExamsADay(ExamPeriod period)
          Exam(s) enrolled by the student that are scheduled in the given day
 Set<Exam> ExamInstructor.getExamsADay(ExamPeriod period)
          Exam(s) enrolled by the instructor that are scheduled in the given day
 Set<Exam> ExamStudent.getExamsADay(int day)
          Exam(s) enrolled by the student that are scheduled in the given day
 Set<Exam> ExamInstructor.getExamsADay(int day)
          Exam(s) enrolled by the instructor that are scheduled in the given day
 Map<Exam,List<ExamStudent>> Exam.getJointEnrollments()
          Joint enrollments
 HashSet<Exam> Exam.getStudentConflicts(ExamPeriod period)
          List of exams that are assigned to the given period and share one or more students with this exam (that does not have direct conflicts allowed, see ExamStudent.canConflict(Exam, Exam)).
 Set<Exam> Exam.getStudentCorrelatedExams()
          Exams that are correlated with this exam (there is at least one student attending both exams).
 

Methods in net.sf.cpsolver.exam.model with parameters of type Exam
 void PredefinedExamRoomSharing.addPair(Exam x1, Exam x2)
          Add a pair of exams that are allowed to share a room
 boolean ExamStudent.canConflict(Exam ex1, Exam ex2)
          True if the given two exams can have a direct student conflict with this student, i.e., they can be placed at the same period.
 boolean SimpleExamRoomSharing.canShareRoom(Exam x1, Exam x2)
           
 boolean PredefinedExamRoomSharing.canShareRoom(Exam x1, Exam x2)
           
abstract  boolean ExamRoomSharing.canShareRoom(Exam x1, Exam x2)
          True if given two exams can share a room
 int Exam.compareTo(Exam o)
          An exam with more correlated exams is preferred ( nrStudentCorrelatedExams()).
 void ExamRoomSharing.computeConflicts(Exam exam, Collection<ExamPlacement> other, ExamRoom room, Set<ExamPlacement> conflicts)
          Compute conflicting placement for the case when a given examination needs to be placed in the same room at the same period as the other examinations
 boolean ExamRoomSharing.inConflict(Exam exam, Collection<ExamPlacement> other, ExamRoom room)
          True if given examination can not be placed in the same room at the same period as the other examinations
 void PredefinedExamRoomSharing.load(Exam exam, org.dom4j.Element element)
           
 void ExamRoomSharing.load(Exam exam, org.dom4j.Element element)
          Load sharing information (if needed) for a given exam
 void PredefinedExamRoomSharing.save(Exam exam, org.dom4j.Element element, IdConvertor idConvertor)
           
 void ExamRoomSharing.save(Exam exam, org.dom4j.Element element, IdConvertor idConvertor)
          Save sharing information (if needed) for a given exam
 

Method parameters in net.sf.cpsolver.exam.model with type arguments of type Exam
 void Exam.addContstraint(Constraint<Exam,ExamPlacement> constraint)
          Adds a constraint.
 int ExamStudent.compareTo(Constraint<Exam,ExamPlacement> o)
          Compare two students (by student ids)
 int ExamRoom.compareTo(Constraint<Exam,ExamPlacement> o)
          Compare two rooms (by unique id)
 void Exam.removeContstraint(Constraint<Exam,ExamPlacement> constraint)
          Removes a constraint.
 

Constructors in net.sf.cpsolver.exam.model with parameters of type Exam
ExamOwner(Exam exam, long id, String name)
          Constructor.
ExamPlacement(Exam exam, ExamPeriodPlacement periodPlacement, Set<ExamRoomPlacement> roomPlacements)
          Constructor
 

Constructor parameters in net.sf.cpsolver.exam.model with type arguments of type Exam
ExamRoomSharing(Model<Exam,ExamPlacement> model, DataProperties config)
           
PredefinedExamRoomSharing(Model<Exam,ExamPlacement> model, DataProperties config)
           
SimpleExamRoomSharing(Model<Exam,ExamPlacement> model, DataProperties config)
           
 

Uses of Exam in net.sf.cpsolver.exam.neighbours
 

Methods in net.sf.cpsolver.exam.neighbours that return types with arguments of type Exam
 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 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 getPeriodPlacements()), select rooms using findRoomsRandom(ExamPeriodPlacement)
 Neighbour<Exam,ExamPlacement> ExamRandomMove.selectNeighbour(Solution<Exam,ExamPlacement> solution)
          Select an exam randomly, select an available period randomly (from getPeriodPlacements()), select rooms using 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 findBestAvailableRooms(ExamPeriodPlacement) if not (exam is unassigned, a room is not available or used).
 

Methods in net.sf.cpsolver.exam.neighbours with parameters of type Exam
 boolean ExamPeriodSwapMove.checkDistributionConstraints(Exam exam, ExamPeriodPlacement period, Map<Exam,ExamPlacement> placements)
           
 boolean ExamPeriodSwapMove.checkDistributionConstraints(Exam exam, ExamRoomPlacement room, Set<ExamPlacement> conflictsToIgnore, Map<Exam,ExamPlacement> placements)
           
 Set<ExamRoomPlacement> ExamPeriodSwapMove.findBestAvailableRooms(Exam exam, ExamPeriodPlacement period, Set<ExamPlacement> conflictsToIgnore, Map<Exam,ExamPlacement> placements)
           
 int ExamPeriodSwapMove.getDistributionConstraintPenalty(Exam exam, ExamRoomPlacement room, Set<ExamPlacement> conflictsToIgnore, Map<Exam,ExamPlacement> placements)
           
 

Method parameters in net.sf.cpsolver.exam.neighbours with type arguments of type Exam
 boolean ExamPeriodSwapMove.checkDistributionConstraints(Exam exam, ExamPeriodPlacement period, Map<Exam,ExamPlacement> placements)
           
 boolean ExamPeriodSwapMove.checkDistributionConstraints(Exam exam, ExamRoomPlacement room, Set<ExamPlacement> conflictsToIgnore, Map<Exam,ExamPlacement> placements)
           
 Set<ExamRoomPlacement> ExamPeriodSwapMove.findBestAvailableRooms(Exam exam, ExamPeriodPlacement period, Set<ExamPlacement> conflictsToIgnore, Map<Exam,ExamPlacement> placements)
           
 int ExamPeriodSwapMove.getDistributionConstraintPenalty(Exam exam, ExamRoomPlacement room, Set<ExamPlacement> conflictsToIgnore, Map<Exam,ExamPlacement> placements)
           
 void ExamTimeMove.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 void ExamRoomMove.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 void ExamRandomMove.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 void ExamPeriodSwapMove.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 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 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 getPeriodPlacements()), select rooms using findRoomsRandom(ExamPeriodPlacement)
 Neighbour<Exam,ExamPlacement> ExamRandomMove.selectNeighbour(Solution<Exam,ExamPlacement> solution)
          Select an exam randomly, select an available period randomly (from getPeriodPlacements()), select rooms using 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 findBestAvailableRooms(ExamPeriodPlacement) if not (exam is unassigned, a room is not available or used).
 

Uses of Exam in net.sf.cpsolver.exam.reports
 

Constructors in net.sf.cpsolver.exam.reports with parameters of type Exam
ExamRoomComparator(Exam exam, boolean asc)
          Constructor
 

Uses of Exam in net.sf.cpsolver.exam.split
 

Methods in net.sf.cpsolver.exam.split that return Exam
 Exam ExamSplitMoves.ExamSplitNeighbour.exam()
          Exam to be split.
 Exam ExamSplitMoves.ExamMergeNeighbour.exam()
          Exam to be merged.
 Exam ExamSplitMoves.ExamShuffleNeighbour.exam()
          Exam to be shuffled.
 Exam ExamSplitter.merge(Exam child, long iteration)
          Merge an exam
 Exam ExamSplitter.parent(Exam exam)
          Parent of an exam that has been split.
 Exam ExamSplitter.split(Exam parent, long iteration, ExamPlacement placement)
          Split an exam
 

Methods in net.sf.cpsolver.exam.split that return types with arguments of type Exam
 List<Exam> ExamSplitter.children(Exam parent)
          Children exams of an exam that has been split.
 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).
 

Methods in net.sf.cpsolver.exam.split with parameters of type Exam
 ExamSplitMoves.ExamSplitNeighbour ExamSplitMoves.bestSplit(Exam exam)
          Find a best split for the given exam.
 boolean ExamSplitter.canMerge(Exam exam)
          True, if the given exam can be merged (it has been split)
 boolean ExamSplitter.canSplit(Exam exam)
          True, if an exam can be split
 List<Exam> ExamSplitter.children(Exam parent)
          Children exams of an exam that has been split.
 Set<ExamRoomPlacement> ExamSplitMoves.findBestAvailableRooms(Exam exam, ExamPeriodPlacement period, int examSize)
          Find best available rooms for a new exam (that is to be split from the given one), if is is assigned into the given examination period.
 Exam ExamSplitter.merge(Exam child, long iteration)
          Merge an exam
 Exam ExamSplitter.parent(Exam exam)
          Parent of an exam that has been split.
 void ExamSplitter.shuffle(Exam exam, long iteration)
          Shuffle students between the given exam and all the other exams in the split (if there are any).
 Exam ExamSplitter.split(Exam parent, long iteration, ExamPlacement placement)
          Split an exam
 

Method parameters in net.sf.cpsolver.exam.split with type arguments of type Exam
 double[] ExamSplitter.getBounds(Collection<Exam> exams)
          Not used
 boolean ExamSplitter.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 void ExamSplitMoves.init(Solver<Exam,ExamPlacement> solver)
          Initialization
 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).
 

Constructors in net.sf.cpsolver.exam.split with parameters of type Exam
ExamSplitMoves.ExamMergeNeighbour(Exam exam)
          Child exam to be removed.
ExamSplitMoves.ExamShuffleNeighbour(Exam exam)
          Exam to be shuffled.
ExamSplitMoves.ExamSplitNeighbour(Exam exam, ExamPlacement placement)
          Split an exam into two, assign the new exam into the given placement.
 



Copyright © 2014 UniTime LLC. All Rights Reserved.