Projet du cours MPRI 2.24.2 "Résolution de problèmes d'optimisation avec heuristiques de recherche" : https://wikimpri.dptinfo.ens-cachan.fr/doku.php?id=cours:c-2-24-2
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

main.cpp 1.8KB

  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <ctime>
  4. #include <numeric>
  5. #include <algorithm>
  6. #include <vector>
  7. #include <random>
  8. #include <chrono>
  9. #include <cmath>
  10. #include <windows.h>
  11. #include <limits>
  12. #include <fstream>
  13. #include <sstream>
  14. #include <stdlib.h>
  15. #include "heuristics/RLS.h"
  16. #include "heuristics/EA.h"
  17. #include "heuristics/PEA.h"
  18. #include "analysis/analysis.h"
  19. #include "experiences/complexity-rls.h"
  20. #include "experiences/complexity-ea.h"
  21. #include "experiences/complexity-ga.h"
  22. #include "experiences/crossover-rate.h"
  23. #include "experiences/scripts.h"
  24. #include "experiences/bestPGA.h"
  25. #include "experiences/bestPEA.h"
  26. using namespace std;
  27. int main(int argc, char** argv) {
  28. srand(time(NULL));
  29. std::default_random_engine randomizer{static_cast<long unsigned int>(time(0))};
  30. study_complexity_of_ga_treat(randomizer, "bin/Release/complexity-ga.csv", 3, 30);
  31. return 0;
  32. if(argc >= 2) {
  33. int num_experiment = atoi(argv[1]);
  34. switch(num_experiment) {
  35. case 1:
  36. cout << "Experiment: Optimal Crossover probability" << endl;
  37. crossover_model(randomizer, atoi(argv[2]), argc, argv);
  38. return 0;
  39. case 2:
  40. cout << "Experiment: RLS Complexity" << endl;
  41. study_complexity_of_rls(randomizer, atoi(argv[2]), argc, argv);
  42. return 0;
  43. case 3:
  44. cout << "Experiment: EA Complexity" << endl;
  45. study_complexity_of_ea(randomizer, atoi(argv[2]), argc, argv);
  46. return 0;
  47. case 4:
  48. cout << "Experiment: GA Complexity" << endl;
  49. study_complexity_of_ga(randomizer, atoi(argv[2]), argc, argv);
  50. return 0;
  51. }
  52. }
  53. return 0;
  54. }