net.sf.cpsolver.studentsct.heuristics.selection
Class ResectionUnassignedStudentsSelection

java.lang.Object
  extended by net.sf.cpsolver.studentsct.heuristics.selection.BranchBoundSelection
      extended by net.sf.cpsolver.studentsct.heuristics.selection.ResectionUnassignedStudentsSelection
All Implemented Interfaces:
NeighbourSelection<Request,Enrollment>

public class ResectionUnassignedStudentsSelection
extends BranchBoundSelection

Resection studends with empty schedule. An extension of BranchBoundSelection, where only students that have no enrollments ( Student.nrAssignedRequests() is zero) are resectioned.

Version:
StudentSct 1.2 (Student Sectioning)
Copyright (C) 2007 - 2010 Tomas Muller
muller@unitime.org
http://muller.unitime.org

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not see http://www.gnu.org/licenses/.

Nested Class Summary
 
Nested classes/interfaces inherited from class net.sf.cpsolver.studentsct.heuristics.selection.BranchBoundSelection
BranchBoundSelection.BranchBoundNeighbour, BranchBoundSelection.Selection
 
Field Summary
 
Fields inherited from class net.sf.cpsolver.studentsct.heuristics.selection.BranchBoundSelection
iDistanceConflict, iDistConfWeight, iMinimizePenalty, iModel, iOrder, iStudentsEnumeration, iTimeout, iTimeOverlaps, sDebug
 
Constructor Summary
ResectionUnassignedStudentsSelection(DataProperties properties)
           
 
Method Summary
 void init(Solver<Request,Enrollment> solver)
          Criterion initialization
 Neighbour<Request,Enrollment> selectNeighbour(Solution<Request,Enrollment> solution)
          Select neighbour.
 
Methods inherited from class net.sf.cpsolver.studentsct.heuristics.selection.BranchBoundSelection
getSelection, init, setModel
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ResectionUnassignedStudentsSelection

public ResectionUnassignedStudentsSelection(DataProperties properties)
Method Detail

init

public void init(Solver<Request,Enrollment> solver)
Description copied from interface: NeighbourSelection
Criterion initialization

Specified by:
init in interface NeighbourSelection<Request,Enrollment>
Overrides:
init in class BranchBoundSelection

selectNeighbour

public Neighbour<Request,Enrollment> selectNeighbour(Solution<Request,Enrollment> solution)
Select neighbour. All students with an empty schedule are taken, one by one in a random order. For each student a branch & bound search is employed.

Specified by:
selectNeighbour in interface NeighbourSelection<Request,Enrollment>
Overrides:
selectNeighbour in class BranchBoundSelection
Parameters:
solution - given solution
Returns:
a neighbour assignment


Copyright © 2014 UniTime LLC. All Rights Reserved.