org.coinor.opents
Interface AspirationCriteria

All Superinterfaces:
java.io.Serializable
All Known Implementing Classes:
BestEverAspirationCriteria

public interface AspirationCriteria
extends java.io.Serializable

The optional aspiration criteria allows you to override a move's tabu status if it offers something good such as resulting in a new best solution. A null value implies no aspiration criteria.

This code is licensed for public use under the Common Public License version 0.5.
The Common Public License, developed by IBM and modeled after their industry-friendly IBM Public License, differs from other common open source licenses in several important ways:

Copyright 2001 Robert Harder

Since:
1.0

Method Summary
 boolean overrideTabu(Solution baseSolution, Move proposedMove, double[] proposedValue, TabuSearch tabuSearch)
          Determine if the proposed tabu move should in fact be allowed because of some aspiration criteria such as being better than the previously-known best solution.
 

Method Detail

overrideTabu

public boolean overrideTabu(Solution baseSolution,
                            Move proposedMove,
                            double[] proposedValue,
                            TabuSearch tabuSearch)
Determine if the proposed tabu move should in fact be allowed because of some aspiration criteria such as being better than the previously-known best solution. The proposed move, the solution it would operate on, and the resulting objective function value are passed along with the TabuSearch itself in case there's some other data you want.

Parameters:
tabuSearch - The TabuSearch controlling the transaction
Since:
1.0
See Also:
Solution, Move, TabuSearch