toulbar2
|
#include <incop.h>
Public Member Functions | |
virtual void | move_execution (Configuration *configuration, Move *move) |
virtual void | incr_update_conflicts (IncrCSPConfiguration *configuration, Move *move) |
virtual void | fullincr_update_conflicts (FullincrCSPConfiguration *configuration, Move *move) |
virtual void | allocate_moves () |
virtual Move * | create_move () |
virtual void | adjust_parameters (Configuration *configuration, int &maxneighbors, int &minneighbors) |
virtual void | next_move (Configuration *configuration, Move *move, NeighborhoodSearch *nbhs) |
virtual void | random_configuration (Configuration *configuration) |
virtual void | best_config_analysis () |
virtual void | best_config_write () |
virtual void | best_config_verification () |
virtual void | init_population (Configuration **population, int populationsize) |
virtual Configuration * | create_configuration () |
virtual Long | compute_conflict (Configuration *configuration, int var, int val) |
virtual Long | config_evaluation (Configuration *configuration) |
virtual Long | move_evaluation (Configuration *configuration, Move *move) |
virtual int | index2value (int index, int var) |
virtual int | value2index (int value, int var) |
virtual void | compute_var_conflict (Configuration *configuration) |
Public Attributes | |
Configuration * | best_config |
int | nbvar |
int | domainsize |
Long | lower_bound |
Move * | currentmove |
Move * | firstmove |
Move * | bestmove |
Root class of Optimization Problems (minimization)
|
virtual |
adjustment of the neighborhood parameters (when the size of the actual neighborhood is greater than maxneighbors)
|
virtual |
creation of 3 Move objects (currentmove,bestmove,firstmove)
References bestmove, create_move(), currentmove, and firstmove.
|
virtual |
analysis of the best configuration
|
virtual |
verification of the best solution (its cost is recomputed)
References best_config, config_evaluation(), and Configuration::valuation.
|
virtual |
writing the best solution
|
virtual |
computation of the participation of (var,val) to the configuration evaluation
Reimplemented in INCOP::NaryCSProblem.
Referenced by Configuration::get_conflicts_problem().
|
virtual |
compute the variables participating to a conflict in the configuration
Reimplemented in CSProblem.
Referenced by LSAlgorithm::configurationmove().
|
virtual |
evaluation of a configuration
Reimplemented in INCOP::NaryCSProblem.
Referenced by best_config_verification().
|
virtual |
create a configuration (the exact class depends on the problem and must defined in subclasses)
Reimplemented in INCOP::NaryCSProblem.
|
virtual |
creation of 1 Move object (the class of the Move depends on the problem) : this method is implemented in subclasses
Referenced by allocate_moves().
|
virtual |
update of the conflict data structure (case FullincrCSPConfiguration)
|
virtual |
update of the conflict data structure (case IncrCSPConfiguration)
|
virtual |
valueindex in the domain to value
Referenced by CSProblem::min_conflict_value(), and CSProblem::random_value().
|
virtual |
initialization of the population of size populationsize
|
virtual |
evaluation of a configuration if the move is done
|
virtual |
move execution (modification of the current configuration)
References Configuration::valuation.
Referenced by LSAlgorithm::configurationmove().
|
virtual |
next move to be tested (implemented in subclasses)
Referenced by LSAlgorithm::configurationmove().
|
virtual |
random assignment of the variables of a configuration
|
virtual |
valueindex of value in its domain
Configuration* OpProblem::best_config |
the best configuration found
Referenced by best_config_verification(), LSAlgorithm::configurationmove(), and GWWAlgorithm::populationkeepbest().
Move* OpProblem::bestmove |
the best move found in the neighborhood
Referenced by allocate_moves(), and LSAlgorithm::configurationmove().
Move* OpProblem::currentmove |
the current move being tested
Referenced by allocate_moves(), and LSAlgorithm::configurationmove().
int OpProblem::domainsize |
maximum domain size
Referenced by CSProblem::init_domain_tabdomain().
Move* OpProblem::firstmove |
the first feasible move tried in the neighborhood
Referenced by allocate_moves(), and LSAlgorithm::configurationmove().
Long OpProblem::lower_bound |
given lower bound , is used as a stop condition when it is reached
Referenced by CSProblem::CSProblem(), GWWAlgorithm::populationrandomwalk(), GWWAlgorithm::randomwalk(), and GWWAlgorithm::run().
int OpProblem::nbvar |
the number of variables
Referenced by CSProblem::compute_var_conflict(), CSProblem::CSProblem(), CSProblem::init_domain_tabdomain(), CSProblem::init_domains(), and CSProblem::random_variable().