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

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.1 (Student Sectioning)
Copyright (C) 2007 Tomáš Müller
muller@unitime.org
Lazenska 391, 76314 Zlin, Czech Republic

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 2.1 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, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

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, iOrder, iStudentsEnumeration, iTimeout, sDebug
 
Constructor Summary
ResectionUnassignedStudentsSelection(DataProperties properties)
           
 
Method Summary
 void init(Solver solver)
          Criterion initialization
 Neighbour selectNeighbour(Solution solution)
          Select neighbour.
 
Methods inherited from class net.sf.cpsolver.studentsct.heuristics.selection.BranchBoundSelection
getSelection, init
 
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 solver)
Description copied from interface: NeighbourSelection
Criterion initialization

Specified by:
init in interface NeighbourSelection
Overrides:
init in class BranchBoundSelection

selectNeighbour

public Neighbour selectNeighbour(Solution 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
Overrides:
selectNeighbour in class BranchBoundSelection
Parameters:
solution - given solution
Returns:
a neighbour assignment