8#include "core/tb2types.hpp"
97 int var_conflict_size;
101 set<int> set_var_conflict;
116 virtual void incr_conflicts(
int var,
int val,
int index, Long incr);
120 virtual void set_conflicts(
int var,
int val,
int index, Long nbconf);
154 void init_conflicts();
155 void incr_conflicts(
int var,
int val,
int index, Long incr);
156 void set_conflicts(
int var,
int val,
int index, Long nbconf);
157 Long get_conflicts(
int var,
int val,
int index);
158 Long get_conflicts_problem(
OpProblem* problem,
int var,
int val);
159 virtual void set_variableconflicts(
int var,
int nbconf);
176 void init_conflicts();
177 void incr_conflicts(
int var,
int val,
int index, Long incr);
178 void set_conflicts(
int var,
int val,
int index, Long nbconf);
182 Long get_conflicts_problem(
OpProblem* problem,
int var,
int val);
192 virtual ~Move() { ; };
212 int eqmove(
Move* move);
213 void copymove(
Move* move);
307 virtual int tabuinverseindex(
Move* move,
Configuration* configuration) {
return 0; };
308 virtual int nbtabuindex() {
return 0; };
335 NeighborhoodSearch(
int maxneigh,
int minneigh,
int finish,
int var_conf,
int val_conf,
double nbbr);
336 int returnbestmove();
337 void adjust_neighborhood(
Configuration* configuration,
OpProblem* problem,
int& maxneigh,
int& minneigh,
int nbmoves);
338 virtual void dynamicmaxneighbors(
int& maxneigh,
int& minneigh,
int nbmoves);
339 virtual void initsearch();
366 DynamicSpareneighbor(
int maxneigh,
int minneigh,
int finish,
int var_conf,
int val_conf,
double nbbr);
386 virtual void initthreshold(
Configuration** population,
int popsize) { ; };
436 LSAlgorithmGWW(
int nbmov);
454 virtual void adjustparameter(
int parameter) { ; };
482 void adjustparameter(
int length);
487 TabuGreedySearch(
int tabul);
493 IncrTabuSearch(
int tabul);
495 vector<int> tabutime;
502class IncrTabuGreedySearch :
public IncrTabuSearch {
504 IncrTabuGreedySearch(
int tabul);
518 void adjustparameter(
int parameter);
582 void adjustparameter(
int parameter);
705 void thresholdupdate();
706 void thresholdchangesupdate();
722 StandardGWWAlgorithm(
int population_size,
int grtest,
int lastmove,
int elitisme,
int stop,
double thresdescent, Long threshmin);
731 FastStandardGWWAlgorithm(
int population_size,
int grtest,
int lastmove,
int elitisme,
int stop,
double thresdescent, Long threshmin);
788 int killed,
int nbiter);
int nbkilled
Definition incop.h:740
double bestdescent
Definition incop.h:778
Move * computetabumove(Configuration *config)
Definition incopalgo.cpp:1149
virtual void incr_conflicts(int var, int val, int index, Long incr)
Definition incopalgo.cpp:222
virtual Long get_conflicts_problem(OpProblem *problem, int var, int val)
Definition incopalgo.cpp:225
int * config
Definition incop.h:93
virtual void copy_element(Configuration *config2)
Definition incopalgo.cpp:321
virtual void init_conflicts()
Definition incopalgo.cpp:221
virtual void update_conflicts(OpProblem *problem, Move *move)
Definition incopalgo.cpp:230
virtual Long get_conflicts(int var, int val, int index)
Definition incopalgo.cpp:224
virtual void set_conflicts(int var, int val, int index, Long nbconf)
Definition incopalgo.cpp:223
vector< int > var_conflict
Definition incop.h:100
Long valuation
Definition incop.h:96
int regrouped
Definition incop.h:104
int initmaxneighbors
Definition incop.h:351
int adjustperiod
Definition incop.h:357
void dynamicmaxneighbors(int &maxneigh, int &minneigh, int nbmoves)
Definition incopalgo.cpp:438
int initminneighbors
Definition incop.h:354
double thresholddescent
Definition incop.h:754
Long get_conflicts(int var, int val, int index)
Definition incopalgo.cpp:299
virtual void thresholdcomputedelta(Configuration **population)
Definition incopalgo.cpp:778
void initthreshold(Configuration **population, int popsize)
Definition incopalgo.cpp:852
int lastmovedescent
Definition incop.h:642
void run(OpProblem *problem, Configuration **population)
Definition incopalgo.cpp:722
int total_nbmoves
Definition incop.h:663
Long thresholddelta
Definition incop.h:651
int regrouptest
Definition incop.h:638
int elitism
Definition incop.h:645
int populationsize
Definition incop.h:633
virtual void thresholdchangesupdate()
Definition incopalgo.cpp:863
void randomwalk(OpProblem *problem, Configuration *configuration)
Definition incopalgo.cpp:679
LSAlgorithm * walkalgorithm
Definition incop.h:666
virtual int nb_threshold_population(Configuration **population)
Definition incopalgo.cpp:708
int nomovestop
Definition incop.h:648
virtual void thresholdupdate()
Definition incopalgo.cpp:837
int total_nhtries
Definition incop.h:660
int thresholdchanges
Definition incop.h:657
virtual void populationrandomwalk(OpProblem *problem, Configuration **population)
Definition incopalgo.cpp:874
void populationkeepbest(OpProblem *problem, Configuration **population)
Definition incopalgo.cpp:766
int nbiteration
Definition incop.h:654
virtual void regrouping(Configuration **population)
Definition incopalgo.cpp:890
Long threshold
Definition incop.h:381
virtual void run(OpProblem *problem, Configuration **population)
Definition incopalgo.cpp:356
virtual void randomwalk(OpProblem *problem, Configuration *configuration)
Definition incopalgo.cpp:351
virtual int configurationmove(OpProblem *problem, Configuration *configuration)
Definition incopalgo.cpp:525
int test_bestfound(Move *move)
Definition incopalgo.cpp:372
int walklength
Definition incop.h:401
Metaheuristic * mheur
Definition incop.h:407
int nhtries
Definition incop.h:410
int nbmoves
Definition incop.h:415
NeighborhoodSearch * nbhsearch
Definition incop.h:404
virtual int isfeasible(Move *move)
Definition incopalgo.cpp:628
int acceptance(Move *move, Configuration *config)
Definition incopalgo.cpp:992
virtual void copymove(Move *move)
Definition incopalgo.cpp:1136
virtual int eqmove(Move *move1)
Definition incopalgo.cpp:1158
virtual Move * computetabumove(Configuration *config)
Definition incop.h:201
int finished
Definition incop.h:327
int maxneighbors
Definition incop.h:322
int minneighbors
Definition incop.h:319
int var_conflict
Definition incop.h:330
int val_conflict
Definition incop.h:333
int nbkilled
Definition incop.h:792
int nbvar
Definition incop.h:229
virtual void best_config_write()
Definition incop.h:277
virtual void move_execution(Configuration *configuration, Move *move)
Definition csproblem.cpp:197
virtual void init_population(Configuration **population, int populationsize)
Definition incop.h:284
virtual void compute_var_conflict(Configuration *configuration)
Definition incop.h:305
virtual void fullincr_update_conflicts(FullincrCSPConfiguration *configuration, Move *move)
Definition incop.h:255
Move * currentmove
Definition incop.h:238
virtual void next_move(Configuration *configuration, Move *move, NeighborhoodSearch *nbhs)
Definition incop.h:268
virtual void adjust_parameters(Configuration *configuration, int &maxneighbors, int &minneighbors)
Definition incop.h:265
int domainsize
Definition incop.h:232
virtual void random_configuration(Configuration *configuration)
Definition incop.h:271
Move * firstmove
Definition incop.h:241
Move * bestmove
Definition incop.h:244
virtual Long config_evaluation(Configuration *configuration)
Definition incop.h:293
virtual Long compute_conflict(Configuration *configuration, int var, int val)
Definition incop.h:290
virtual void best_config_verification()
Definition csproblem.cpp:257
virtual void allocate_moves()
Definition csproblem.cpp:249
virtual int value2index(int value, int var)
Definition incop.h:302
virtual Move * create_move()
Definition incop.h:262
virtual void best_config_analysis()
Definition incop.h:274
virtual Long move_evaluation(Configuration *configuration, Move *move)
Definition incop.h:296
Long lower_bound
Definition incop.h:235
virtual int index2value(int index, int var)
Definition incop.h:299
virtual Configuration * create_configuration()
Definition incop.h:287
virtual void incr_update_conflicts(IncrCSPConfiguration *configuration, Move *move)
Definition incop.h:252
Configuration * best_config
Definition incop.h:226
double temperature
Definition incop.h:565
double inittemperature
Definition incop.h:559
double delta
Definition incop.h:562
void executebeforemove(Move *move, Configuration *configuration, OpProblem *problem)
Definition incopalgo.cpp:1114
int acceptance(Move *move, Configuration *config)
Definition incopalgo.cpp:1103
Long thresholdmin
Definition incop.h:720
double thresholddescent
Definition incop.h:717
float P0
Definition incop.h:597
int acceptance(Move *move, Configuration *config)
Definition incopalgo.cpp:1185
float Pd
Definition incop.h:594
int nontabumove(Move *move)
Definition incopalgo.cpp:1050
list< Move * > move_list
Definition incop.h:468
int acceptance(Move *move, Configuration *config)
Definition incopalgo.cpp:1028
int tabulength
Definition incop.h:465
void reinit(OpProblem *problem)
Definition incopalgo.cpp:1010
void executebeforemove(Move *move, Configuration *configuration, OpProblem *problem)
Definition incopalgo.cpp:1059
void reinit(OpProblem *problem)
Definition incopalgo.cpp:1095
int acceptance(Move *move, Configuration *config)
Definition incopalgo.cpp:1084
double thresholdinit
Definition incop.h:530
double thresholdaccept
Definition incop.h:536
void executebeforemove(Move *move, Configuration *configuration, OpProblem *problem)
Definition incopalgo.cpp:1089
double delta
Definition incop.h:533