5 #include "core/tb2types.hpp"
94 int var_conflict_size;
98 set<int> set_var_conflict;
113 virtual void incr_conflicts(
int var,
int val,
int index, Long incr);
117 virtual void set_conflicts(
int var,
int val,
int index, Long nbconf);
151 void init_conflicts();
152 void incr_conflicts(
int var,
int val,
int index, Long incr);
153 void set_conflicts(
int var,
int val,
int index, Long nbconf);
154 Long get_conflicts(
int var,
int val,
int index);
155 Long get_conflicts_problem(
OpProblem* problem,
int var,
int val);
156 virtual void set_variableconflicts(
int var,
int nbconf);
173 void init_conflicts();
174 void incr_conflicts(
int var,
int val,
int index, Long incr);
175 void set_conflicts(
int var,
int val,
int index, Long nbconf);
179 Long get_conflicts_problem(
OpProblem* problem,
int var,
int val);
189 virtual ~
Move() { ; };
209 int eqmove(
Move* move);
210 void copymove(
Move* move);
304 virtual int tabuinverseindex(
Move* move,
Configuration* configuration) {
return 0; };
305 virtual int nbtabuindex() {
return 0; };
332 NeighborhoodSearch(
int maxneigh,
int minneigh,
int finish,
int var_conf,
int val_conf,
double nbbr);
333 int returnbestmove();
334 void adjust_neighborhood(
Configuration* configuration,
OpProblem* problem,
int& maxneigh,
int& minneigh,
int nbmoves);
335 virtual void dynamicmaxneighbors(
int& maxneigh,
int& minneigh,
int nbmoves);
336 virtual void initsearch();
363 DynamicSpareneighbor(
int maxneigh,
int minneigh,
int finish,
int var_conf,
int val_conf,
double nbbr);
383 virtual void initthreshold(
Configuration** population,
int popsize) { ; };
433 LSAlgorithmGWW(
int nbmov);
451 virtual void adjustparameter(
int parameter) { ; };
479 void adjustparameter(
int length);
484 TabuGreedySearch(
int tabul);
490 IncrTabuSearch(
int tabul);
492 vector<int> tabutime;
499 class IncrTabuGreedySearch :
public IncrTabuSearch {
501 IncrTabuGreedySearch(
int tabul);
515 void adjustparameter(
int parameter);
579 void adjustparameter(
int parameter);
702 void thresholdupdate();
703 void thresholdchangesupdate();
719 StandardGWWAlgorithm(
int population_size,
int grtest,
int lastmove,
int elitisme,
int stop,
double thresdescent, Long threshmin);
728 FastStandardGWWAlgorithm(
int population_size,
int grtest,
int lastmove,
int elitisme,
int stop,
double thresdescent, Long threshmin);
785 int killed,
int nbiter);
virtual Configuration * create_configuration()
Definition: incop.h:284
int domainsize
Definition: incop.h:229
virtual Long compute_conflict(Configuration *configuration, int var, int val)
Definition: incop.h:287
virtual int index2value(int index, int var)
Definition: incop.h:296
int acceptance(Move *move, Configuration *config)
Definition: incopalgo.cpp:1084
virtual void set_conflicts(int var, int val, int index, Long nbconf)
Definition: incopalgo.cpp:223
virtual void fullincr_update_conflicts(FullincrCSPConfiguration *configuration, Move *move)
Definition: incop.h:252
int finished
Definition: incop.h:324
void initthreshold(Configuration **population, int popsize)
Definition: incopalgo.cpp:852
SimulatedAnnealing(double initialtemperature, int walklength)
Definition: incopalgo.cpp:89
float Pd
Definition: incop.h:591
int total_nhtries
Definition: incop.h:657
void run(OpProblem *problem, Configuration **population)
Definition: incopalgo.cpp:722
virtual void init_population(Configuration **population, int populationsize)
Definition: incop.h:281
virtual void thresholdupdate()
Definition: incopalgo.cpp:837
double thresholdaccept
Definition: incop.h:533
int lastmovedescent
Definition: incop.h:639
double thresholdinit
Definition: incop.h:527
int populationsize
Definition: incop.h:630
virtual void regrouping(Configuration **population)
Definition: incopalgo.cpp:890
virtual void copy_element(Configuration *config2)
Definition: incopalgo.cpp:321
int acceptance(Move *move, Configuration *config)
Definition: incopalgo.cpp:1185
virtual int configurationmove(OpProblem *problem, Configuration *configuration)
Definition: incopalgo.cpp:525
Configuration * best_config
Definition: incop.h:223
int nbvar
Definition: incop.h:226
virtual Long get_conflicts(int var, int val, int index)
Definition: incopalgo.cpp:224
void dynamicmaxneighbors(int &maxneigh, int &minneigh, int nbmoves)
Definition: incopalgo.cpp:438
int test_bestfound(Move *move)
Definition: incopalgo.cpp:372
int adjustperiod
Definition: incop.h:354
Long valuation
Definition: incop.h:93
virtual void random_configuration(Configuration *configuration)
Definition: incop.h:268
NeighborhoodSearch * nbhsearch
Definition: incop.h:401
virtual void populationrandomwalk(OpProblem *problem, Configuration **population)
Definition: incopalgo.cpp:874
double delta
Definition: incop.h:530
virtual void adjust_parameters(Configuration *configuration, int &maxneighbors, int &minneighbors)
Definition: incop.h:262
int nbkilled
Definition: incop.h:789
virtual void randomwalk(OpProblem *problem, Configuration *configuration)
Definition: incopalgo.cpp:351
int var_conflict
Definition: incop.h:327
Long threshold
Definition: incop.h:378
int initminneighbors
Definition: incop.h:351
int val_conflict
Definition: incop.h:330
virtual void incr_update_conflicts(IncrCSPConfiguration *configuration, Move *move)
Definition: incop.h:249
int elitism
Definition: incop.h:642
virtual int nb_threshold_population(Configuration **population)
Definition: incopalgo.cpp:708
vector< int > var_conflict
Definition: incop.h:97
Long lower_bound
Definition: incop.h:232
Move * computetabumove(Configuration *config)
Definition: incopalgo.cpp:1149
int acceptance(Move *move, Configuration *config)
Definition: incopalgo.cpp:1028
double temperature
Definition: incop.h:562
void executebeforemove(Move *move, Configuration *configuration, OpProblem *problem)
Definition: incopalgo.cpp:1089
int maxneighbors
Definition: incop.h:319
int nhtries
Definition: incop.h:407
void populationkeepbest(OpProblem *problem, Configuration **population)
Definition: incopalgo.cpp:766
int nbkilled
Definition: incop.h:737
virtual int value2index(int value, int var)
Definition: incop.h:299
virtual Long move_evaluation(Configuration *configuration, Move *move)
Definition: incop.h:293
virtual void best_config_analysis()
Definition: incop.h:271
virtual void next_move(Configuration *configuration, Move *move, NeighborhoodSearch *nbhs)
Definition: incop.h:265
virtual Long config_evaluation(Configuration *configuration)
Definition: incop.h:290
double thresholddescent
Definition: incop.h:714
int acceptance(Move *move, Configuration *config)
Definition: incopalgo.cpp:992
int total_nbmoves
Definition: incop.h:660
int thresholdchanges
Definition: incop.h:654
LSAlgorithm * walkalgorithm
Definition: incop.h:663
virtual void move_execution(Configuration *configuration, Move *move)
Definition: csproblem.cpp:197
virtual void thresholdchangesupdate()
Definition: incopalgo.cpp:863
int nomovestop
Definition: incop.h:645
int nbiteration
Definition: incop.h:651
int regrouped
Definition: incop.h:101
virtual void update_conflicts(OpProblem *problem, Move *move)
Definition: incopalgo.cpp:230
list< Move * > move_list
Definition: incop.h:465
Metaheuristic * mheur
Definition: incop.h:404
Long thresholddelta
Definition: incop.h:648
virtual void compute_var_conflict(Configuration *configuration)
Definition: incop.h:302
int nbmoves
Definition: incop.h:412
void reinit(OpProblem *problem)
Definition: incopalgo.cpp:1010
virtual void best_config_write()
Definition: incop.h:274
double bestdescent
Definition: incop.h:775
double inittemperature
Definition: incop.h:556
virtual void best_config_verification()
Definition: csproblem.cpp:257
float P0
Definition: incop.h:594
Move * currentmove
Definition: incop.h:235
int acceptance(Move *move, Configuration *config)
Definition: incopalgo.cpp:1103
Move * bestmove
Definition: incop.h:241
virtual int isfeasible(Move *move)
Definition: incopalgo.cpp:628
virtual Move * computetabumove(Configuration *config)
Definition: incop.h:198
double delta
Definition: incop.h:559
virtual void copymove(Move *move)
Definition: incopalgo.cpp:1136
Long thresholdmin
Definition: incop.h:717
Long get_conflicts(int var, int val, int index)
Definition: incopalgo.cpp:299
int minneighbors
Definition: incop.h:316
int tabulength
Definition: incop.h:462
virtual Long get_conflicts_problem(OpProblem *problem, int var, int val)
Definition: incopalgo.cpp:225
virtual void init_conflicts()
Definition: incopalgo.cpp:221
int walklength
Definition: incop.h:398
void reinit(OpProblem *problem)
Definition: incopalgo.cpp:1095
void executebeforemove(Move *move, Configuration *configuration, OpProblem *problem)
Definition: incopalgo.cpp:1114
int * config
Definition: incop.h:90
int nontabumove(Move *move)
Definition: incopalgo.cpp:1050
Move * firstmove
Definition: incop.h:238
virtual void run(OpProblem *problem, Configuration **population)
Definition: incopalgo.cpp:356
virtual void incr_conflicts(int var, int val, int index, Long incr)
Definition: incopalgo.cpp:222
void randomwalk(OpProblem *problem, Configuration *configuration)
Definition: incopalgo.cpp:679
virtual void thresholdcomputedelta(Configuration **population)
Definition: incopalgo.cpp:778
virtual Move * create_move()
Definition: incop.h:259
virtual void allocate_moves()
Definition: csproblem.cpp:249
double thresholddescent
Definition: incop.h:751
void executebeforemove(Move *move, Configuration *configuration, OpProblem *problem)
Definition: incopalgo.cpp:1059
virtual int eqmove(Move *move1)
Definition: incopalgo.cpp:1158
ThresholdAccepting(double maxthreshold, int walklength)
Definition: incopalgo.cpp:82
int regrouptest
Definition: incop.h:635
int initmaxneighbors
Definition: incop.h:348