net.sf.cpsolver.studentsct.heuristics
Class RouletteWheelRequestSelection

java.lang.Object
  extended by net.sf.cpsolver.studentsct.heuristics.RouletteWheelRequestSelection
All Implemented Interfaces:
VariableSelection

public class RouletteWheelRequestSelection
extends Object
implements VariableSelection

Variable (Request) selection using RouletteWheelSelection. Unassigned request has 10 points, an assigned request has 1 point for each section that exceeds its bound.

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

Constructor Summary
RouletteWheelRequestSelection(DataProperties properties)
          Constructor
 
Method Summary
protected  RouletteWheelSelection getRoulette(Solution solution)
          Populate roulette wheel selection, if null or empty.
 void init(Solver solver)
          Initialization
 Variable selectVariable(Solution solution)
          Variable selection.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RouletteWheelRequestSelection

public RouletteWheelRequestSelection(DataProperties properties)
Constructor

Parameters:
properties - configuration
Method Detail

init

public void init(Solver solver)
Initialization

Specified by:
init in interface VariableSelection

getRoulette

protected RouletteWheelSelection getRoulette(Solution solution)
Populate roulette wheel selection, if null or empty.


selectVariable

public Variable selectVariable(Solution solution)
Variable selection. RouletteWheelSelection is used. Unassigned request has 10 points, an assigned request has 1 point for each section that exceeds its bound.

Specified by:
selectVariable in interface VariableSelection
Parameters:
solution - current solution