|
jInfer | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object cz.cuni.mff.ksi.jinfer.iss.heuristics.improvement.LocalBranching
public class LocalBranching
This heuristic works by creating a constrained sub-problem and then solving
it. The constraint is as follows: the maximum Hamming distance between the
old and new solution is limited to a constant k
.
Some implementation details:
k
is fixed to be a ratio of the total AM count.
Constructor Summary | |
---|---|
LocalBranching(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 |
---|
public LocalBranching(double ratio, int timeLimit)
ratio
- The total number of AMs is multiplied by this fraction, result
is the parameter k
- maximum Hamming distance between the
old and the new solution.timeLimit
- Time limit in seconds of the GLPK run.Method Detail |
---|
public void start(Experiment experiment, List<IdSet> feasiblePool, HeuristicCallback callback) throws InterruptedException
ImprovementHeuristic
start
in interface ImprovementHeuristic
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.
InterruptedException
public String getName()
NamedModule
getName
in interface NamedModule
public String getDisplayName()
NamedModule
getDisplayName
in interface NamedModule
public String getModuleDescription()
NamedModule
NamedModule.getDisplayName()
, but if the
module for example consists of more sub-modules, their names should be
listed here.
getModuleDescription
in interface NamedModule
|
jInfer | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |