jInfer

cz.cuni.mff.ksi.jinfer.iss.heuristics.improvement
Class Mutation

java.lang.Object
  extended by cz.cuni.mff.ksi.jinfer.iss.heuristics.improvement.Mutation
All Implemented Interfaces:
NamedModule, Heuristics, ImprovementHeuristic

public class Mutation
extends Object
implements ImprovementHeuristic

A slightly more complex improvement heuristic. Finds the best (incumbent) solution in the solution pool, fixes a fraction of its AMs and runs the GLPK on the resulting sub-problem. Its solution is then added to the pool and returned.


Constructor Summary
Mutation(double ratio, int timeLimit)
          Constructs an instance of this heuristic.
 
Method Summary
 String getDisplayName()
          Returns a user friendly name of the module.
 String getModuleDescription()
          Returns the information about this module's inner workings.
 String getName()
          Returns a user friendly yet unique name of the module.
 void start(Experiment experiment, List<IdSet> feasiblePool, HeuristicCallback callback)
          Start the heuristic run.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Mutation

public Mutation(double ratio,
                int timeLimit)
Constructs an instance of this heuristic.

Parameters:
ratio - Fraction of AMs in the incumbent solution to be fixed.
timeLimit - Time limit in seconds of the GLPK run.
Method Detail

start

public void start(Experiment experiment,
                  List<IdSet> feasiblePool,
                  HeuristicCallback callback)
           throws InterruptedException
Description copied from interface: ImprovementHeuristic
Start the heuristic run. Use the information in the provided experiment to improve the provided pool (possibly only one) of feasible solutions.

Specified by:
start in interface ImprovementHeuristic
Parameters:
experiment - Experiment in context of which to run the heuristic.
feasiblePool - List of feasible solutions found so far.
callback - Callback to be invoked when finished.
Throws:
InterruptedException

getName

public String getName()
Description copied from interface: NamedModule
Returns a user friendly yet unique name of the module.

Specified by:
getName in interface NamedModule
Returns:
Unique module name.

getDisplayName

public String getDisplayName()
Description copied from interface: NamedModule
Returns a user friendly name of the module. This name is not neccessary unique.

Specified by:
getDisplayName in interface NamedModule
Returns:
Displayable module name.

getModuleDescription

public String getModuleDescription()
Description copied from interface: NamedModule
Returns the information about this module's inner workings. Most of the time will be equal to a call to NamedModule.getDisplayName(), but if the module for example consists of more sub-modules, their names should be listed here.

Specified by:
getModuleDescription in interface NamedModule
Returns:
String describing inner structure of the module.

jInfer

Generated on Fri Dec 9 00:01:25 CET 2011