Commit 7a6352de authored by HUMEAU Jéremie's avatar HUMEAU Jéremie

Fix nb cours init

parent 0d6209d6
......@@ -5,6 +5,7 @@ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src)
# 2) Define targets: executable and dependencies
ADD_EXECUTABLE(ceao main.cpp)
ADD_EXECUTABLE(ceao2 main2.cpp)
ADD_EXECUTABLE(ceao_competency ceao_competency.cpp)
ADD_EXECUTABLE(ceao_course ceao_course.cpp)
ADD_EXECUTABLE(ceao_profession ceao_profession.cpp)
......@@ -16,6 +17,7 @@ ADD_EXECUTABLE(tryCrossover tryCrossover.cpp)
ADD_EXECUTABLE(tryEval tryEval.cpp)
ADD_DEPENDENCIES(ceao lQueen lModel lEA lCstr)
ADD_DEPENDENCIES(ceao2 lQueen lModel lEA lCstr)
ADD_DEPENDENCIES(ceao_competency lQueen lModel)
ADD_DEPENDENCIES(ceao_course lQueen lModel)
ADD_DEPENDENCIES(ceao_profession lQueen lModel)
......@@ -29,6 +31,7 @@ ADD_DEPENDENCIES(tryEval lQueen)
# 3) Link the librairies for your executable
TARGET_LINK_LIBRARIES(ceao ${PARADISEO_LIBRARIES} lQueen lModel lEA lCstr)
TARGET_LINK_LIBRARIES(ceao2 ${PARADISEO_LIBRARIES} lQueen lModel lEA lCstr)
TARGET_LINK_LIBRARIES(ceao_competency ${PARADISEO_LIBRARIES} lQueen lModel)
TARGET_LINK_LIBRARIES(ceao_course ${PARADISEO_LIBRARIES} lQueen lModel)
TARGET_LINK_LIBRARIES(ceao_profession ${PARADISEO_LIBRARIES} lQueen lModel)
......
......@@ -87,6 +87,7 @@ int main(int argc, char* argv[]){
// ===== PB CONFIG ZONE =====
CSDVP pb;
Profession job;
std::cout << "nb cours: ---> " << NBCOURSES << std::endl;
pb.set_cfg_quantityCourses(NBCOURSES);
pb.set_cfg_quantityCompetencies(NBCOMP);
pb.set_cfg_minimalTimeFrames(MINTF);
......@@ -350,7 +351,7 @@ int main(int argc, char* argv[]){
// ---------- ALGO HERE
eoEasyEA<QUEEN> algo(cont,eval,select,transform,replace);
eoEasyEA<Cursus> algo(cont,eval,select,transform,replace);
//WRITE CURRENT POP
pop.best_element().printOn(outputfile4);
......
......@@ -355,7 +355,7 @@ int main(int argc, char* argv[]){
// ---------- ALGO HERE
eoEasyEA<QUEEN> algo(cont,eval,select,transform,replace);
eoEasyEA<Cursus> algo(cont,eval,select,transform,replace);
//WRITE CURRENT POP
/*
......
File added
${cbyTF}_${minCbyTF}_${maxCbyTF}_${nbGen}"
sbatch --array=1-${run} --job-name=${RESDIR} --output=${RESDIR}.out --export=C=$nbCours,c=$nbComps,R=$maxCbyC,Q=$maxPre,A=$cbyTF,n=$minCbyTF,N=$maxCbyTF,r=1,q=0,O=$RESDIR,B=20,x=0.75,X=0.75,F=3,G=$nbGen job.sh
echo "-C=${nbCours} -c=${nbComps} -R=${maxCbyC} -Q=${maxPre} -A=${cbyTF} -n=${minCbyTF} -N=${maxCbyTF} -r=1 -q=0" >> case
done
done
done
done
done
done
done
done
22.3794 70 4 23 62 95 39 81 0 16 66 57 103 47 61 63 26 3 82 93 44 97 14 37 65 83 41 60 87 72 69 80 36 40 74 32 2 11 38 52 46 30 53 77 64 75 31 5 21 50 25 51 43 86 28 34 67 98 49 102 101 54 94 76 33 73 48 18 91 13 70 59
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
100
0.969849 1 0.333333 0.554974
1 1 0 0.488506
1 1 0.333333 0.513369
1 1 0 0.511299
1 1 0 0.48
0.969849 1 0.333333 0.49711
0.994975 1 0 0.5
1 1 0 0.474138
1 1 0 0.486264
1 1 0.666667 0.521622
0.994975 1 0 0.513812
0.979899 1 0.333333 0.521739
1 1 0.333333 0.455621
1 1 0 0.49435
0.994975 1 0 0.474227
0.98995 1 0 0.486188
1 1 0.333333 0.486486
0.954774 1 0.333333 0.561798
0.904523 1 0.333333 0.5
1 1 0 0.515707
1 1 0 0.520231
0.974874 1 0.333333 0.544693
1 1 0 0.497326
1 1 0.333333 0.489247
1 1 0 0.491935
0.944724 1 0.666667 0.48324
1 1 0 0.486486
1 1 0 0.457627
1 1 0 0.541436
0.994975 1 0 0.434524
0.969849 1 0 0.519663
1 1 0 0.448276
0.979899 1 0.333333 0.516393
1 1 0.333333 0.494444
0.954774 1 0 0.478378
1 1 0 0.469444
0.934673 1 0.333333 0.527933
0.974874 1 0 0.52907
1 1 0 0.466102
0.969849 1 0 0.442308
0.974874 1 0 0.483333
1 1 0.333333 0.468208
1 1 0 0.519774
1 1 0.333333 0.519663
0.979899 1 0.333333 0.502825
1 1 0.333333 0.547486
0.98995 1 0 0.546154
1 1 0.333333 0.463483
0.974874 1 0 0.502778
0.939698 1 0.333333 0.478378
1 1 0.666667 0.513889
1 1 0.333333 0.529586
1 1 0 0.488827
1 1 0 0.481183
1 1 0.666667 0.53352
1 1 0.666667 0.528571
1 1 0 0.464674
1 1 0.333333 0.565341
1 1 0.333333 0.474093
1 1 0 0.497207
1 1 0.333333 0.519663
1 1 0 0.532258
0.994975 1 0 0.480978
1 1 0.666667 0.472892
0.98995 1 0 0.480226
1 1 0 0.509036
1 1 0 0.497326
0.979899 1 0.333333 0.459239
1 1 0.333333 0.463277
1 1 0 0.513089
0.984925 1 0 0.542614
0.984925 1 0 0.453804
1 1 0.333333 0.444149
1 1 0.333333 0.434211
0.984925 1 0 0.518717
0.979899 1 0 0.5
1 1 0 0.558333
1 1 0 0.488889
0.984925 1 0 0.555263
1 1 0.333333 0.502907
1 1 0.333333 0.522222
1 1 0.333333 0.472678
1 1 0.333333 0.472222
1 1 0.666667 0.483051
1 1 0.333333 0.494565
0.979899 1 0 0.505618
1 1 0 0.48895
1 1 0 0.46648
0.979899 1 0 0.463277
1 1 0 0.494505
0.98995 1 0 0.508876
0.994975 1 0 0.475676
1 1 0 0.535326
0.969849 1 0.333333 0.47619
1 1 0.666667 0.485207
0.984925 1 0 0.467568
0.984925 1 0 0.462567
0.924623 1 0.666667 0.491892
1 1 0 0.532787
0.994975 1 0.333333 0.566298
100
1 1 0.666667 0.794944
1 1 0.666667 0.784483
1 1 0.666667 0.786127
1 1 0.666667 0.796089
1 1 0.666667 0.79661
1 1 0.666667 0.79661
1 1 0.666667 0.768786
1 1 0.666667 0.79023
1 1 0.666667 0.797753
1 1 0.666667 0.79661
1 1 0.666667 0.780702
1 1 0.666667 0.791176
1 1 0.666667 0.795977
1 1 0.666667 0.793785
1 1 0.666667 0.784091
1 1 0.666667 0.796089
1 1 0.666667 0.779412
1 1 0.666667 0.801724
1 1 0.666667 0.779412
1 1 0.666667 0.792135
1 1 0.666667 0.791429
1 1 0.666667 0.782486
1 1 0.666667 0.768786
1 1 0.666667 0.792614
1 1 0.666667 0.788235
1 1 0.666667 0.782353
1 1 0.666667 0.784884
1 1 0.666667 0.764706
1 1 0.666667 0.789017
1 1 0.666667 0.801724
1 1 0.666667 0.789017
1 1 0.666667 0.77907
1 1 0.666667 0.785294
1 1 0.666667 0.78012
1 1 0.666667 0.787709
1 1 0.666667 0.777778
1 1 0.666667 0.79096
1 1 0.666667 0.764535
1 1 0.666667 0.795977
1 1 0.666667 0.801676
1 1 0.666667 0.784091
1 1 0.666667 0.772472
1 1 0.666667 0.784024
1 1 0.666667 0.771429
1 1 0.666667 0.783237
1 1 0.666667 0.792398
1 1 0.666667 0.762857
1 1 0.666667 0.770115
1 1 0.666667 0.783333
1 1 0.666667 0.793605
1 1 0.666667 0.795455
1 1 0.666667 0.789326
1 1 0.666667 0.788571
1 1 0.666667 0.793605
1 1 0.666667 0.801676
1 1 0.666667 0.795455
1 1 0.666667 0.778736
1 1 0.666667 0.776163
1 1 0.666667 0.786145
1 1 0.666667 0.790698
1 1 0.666667 0.792614
1 1 0.666667 0.793605
1 1 0.666667 0.78125
1 1 0.666667 0.789941
1 1 0.666667 0.801676
1 1 0.666667 0.801676
1 1 0.666667 0.79023
1 1 0.666667 0.800562
1 1 0.666667 0.755952
1 1 0.666667 0.790698
1 1 0.666667 0.801676
1 1 0.666667 0.801676
1 1 0.666667 0.774566
1 1 0.666667 0.774854
1 1 0.666667 0.768362
1 1 0.666667 0.801724
1 1 0.666667 0.778409
1 1 0.666667 0.786127
1 1 0.666667 0.801724
1 1 0.666667 0.767857
1 1 0.666667 0.796512
1 1 0.666667 0.801724
1 1 0.666667 0.79661
1 1 0.666667 0.789773
1 1 0.666667 0.794444
1 1 0.666667 0.793785
1 1 0.666667 0.787356
1 1 0.666667 0.79661
1 1 0.666667 0.794444
1 1 0.666667 0.786932
1 1 0.666667 0.797753
1 1 0.666667 0.789773
1 1 0.666667 0.79661
1 1 0.666667 0.793785
1 1 0.666667 0.787425
1 1 0.666667 0.780556
1 1 0.666667 0.794118
1 1 0.666667 0.788571
1 1 0.666667 0.79096
1 1 0.666667 0.784091
23.8085 70 28 22 7 39 79 85 81 63 103 57 90 34 66 12 93 36 30 59 0 82 8 64 23 15 83 68 72 65 17 74 69 5 2 61 32 38 52 55 9 42 62 43 58 25 31 75 49 101 21 40 46 35 26 41 3 20 84 6 4 27 104 94 10 37 24 98 73 102 13 54 1 1 0.666667 0.53352
22.3794 70 4 23 62 95 39 81 0 16 66 57 103 47 61 63 26 3 82 93 44 97 14 37 65 83 41 60 87 72 69 80 36 40 74 32 2 11 38 52 46 30 53 77 64 75 31 5 21 50 25 51 43 86 28 34 67 98 49 102 101 54 94 76 33 73 48 18 91 13 70 59 1 1 0.666667 0.801724
-C=105 -c=52 -R=7 -Q=5 -A=5 -n=10 -N=35 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=5 -A=5 -n=10 -N=35 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=5 -n=10 -N=35 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=6 -n=10 -N=35 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=7 -n=10 -N=35 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=8 -n=10 -N=35 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=9 -n=10 -N=35 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=10 -n=10 -N=35 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=5 -n=10 -N=26 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=6 -n=10 -N=26 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=7 -n=10 -N=26 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=8 -n=10 -N=26 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=9 -n=10 -N=26 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=10 -n=10 -N=26 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=5 -n=10 -N=21 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=6 -n=10 -N=21 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=7 -n=10 -N=21 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=8 -n=10 -N=21 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=9 -n=10 -N=21 -r=1 -q=0
-C=105 -c=52 -R=7 -Q=2 -A=10 -n=10 -N=21 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=5 -n=10 -N=35 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=6 -n=10 -N=35 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=7 -n=10 -N=35 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=8 -n=10 -N=35 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=9 -n=10 -N=35 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=10 -n=10 -N=35 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=5 -n=10 -N=26 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=6 -n=10 -N=26 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=7 -n=10 -N=26 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=8 -n=10 -N=26 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=9 -n=10 -N=26 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=10 -n=10 -N=26 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=5 -n=10 -N=21 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=6 -n=10 -N=21 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=7 -n=10 -N=21 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=8 -n=10 -N=21 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=9 -n=10 -N=21 -r=1 -q=0
-C=105 -c=104 -R=7 -Q=2 -A=10 -n=10 -N=21 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=5 -n=10 -N=35 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=6 -n=10 -N=35 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=7 -n=10 -N=35 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=8 -n=10 -N=35 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=9 -n=10 -N=35 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=10 -n=10 -N=35 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=5 -n=10 -N=26 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=6 -n=10 -N=26 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=7 -n=10 -N=26 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=8 -n=10 -N=26 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=9 -n=10 -N=26 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=10 -n=10 -N=26 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=5 -n=10 -N=21 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=6 -n=10 -N=21 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=7 -n=10 -N=21 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=8 -n=10 -N=21 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=9 -n=10 -N=21 -r=1 -q=0
-C=105 -c=156 -R=7 -Q=2 -A=10 -n=10 -N=21 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=5 -n=10 -N=35 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=6 -n=10 -N=35 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=7 -n=10 -N=35 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=8 -n=10 -N=35 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=9 -n=10 -N=35 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=10 -n=10 -N=35 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=5 -n=10 -N=26 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=6 -n=10 -N=26 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=7 -n=10 -N=26 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=8 -n=10 -N=26 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=9 -n=10 -N=26 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=10 -n=10 -N=26 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=5 -n=10 -N=21 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=6 -n=10 -N=21 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=7 -n=10 -N=21 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=8 -n=10 -N=21 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=9 -n=10 -N=21 -r=1 -q=0
-C=105 -c=208 -R=7 -Q=2 -A=10 -n=10 -N=21 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
-C=400 -c=400 -R=3 -Q=3 -A=15 -n=16 -N=40 -r=1 -q=0
for nbCours in 15
do
for nbComps in 10 20
do
for cbyTF in 2
do
for rEngine in 25 50 75
do
for pMut in 0.25 0.5 0.75
do
for pCross in 0.25 0.5 0.75
do
for tSize in 2 5 7
do
RESDIR="../results/${nbCours}_${nbComps}_${cbyTF}_${rEngine}_${pMut}_${pCross}_${tSize}"
mkdir $RESDIR
for run in 5
do
RESDIR="../results/${nbCours}_${nbComps}_${cbyTF}_${rEngine}_${pMut}_${pCross}_${tSize}"
sbatch --array=1-${run} --job-name=${RESDIR} --output=${RESDIR}.out --export=C=$nbCours,c=$nbComps,A=$cbyTF,O=$RESDIR,B=$rEngine,x=$pMut,X=$pCross,F=$tSize job.sh
done
done
done
done
done
done
done
done
#
for nbCours in 400 #LATER 300 310 320 330 340 350 360 370 380 390 410 420 430 440 450 460 470 480 490 500
do
for cbyTF in 15
do
for maxCbyC in 3
do
for maxPre in 3
do
for nbGen in 1000
do
nbComps=400
RESDIR="../results/${nbCours}_${nbComps}_${maxCbyC}_${maxPre}_${cbyTF}_${nbGen}"
mkdir $RESDIR
for run in 1
do
nbComps=400
minCbyTF=16
maxCbyTF=40
RESDIR="../results/${nbCours}_${nbComps}_${maxCbyC}_${maxPre}_${cbyTF}_${nbGen}"
sbatch --array=1-${run} --job-name=${RESDIR} --output=${RESDIR}.out --export=C=$nbCours,c=$nbComps,R=$maxCbyC,Q=$maxPre,A=$cbyTF,n=$minCbyTF,N=$maxCbyTF,r=1,q=0,O=$RESDIR,B=50,x=0.75,X=0.75,F=3,G=$nbGen job.sh
echo "-C=${nbCours} -c=${nbComps} -R=${maxCbyC} -Q=${maxPre} -A=${cbyTF} -n=${minCbyTF} -N=${maxCbyTF} -r=1 -q=0" >> case
done
done
done
done
done
done
#
for nbCours in 400 #LATER 300 310 320 330 340 350 360 370 380 390 410 420 430 440 450 460 470 480 490 500
do
for cbyTF in 15
do
for maxCbyC in 3
do
for maxPre in 3
do
for nbGen in 100000
do
nbComps=400
RESDIR="../results/${nbCours}_${nbComps}_${maxCbyC}_${maxPre}_${cbyTF}_${nbGen}"
mkdir $RESDIR
for run in 1
do
nbComps=400
minCbyTF=16
maxCbyTF=40
RESDIR="../results/${nbCours}_${nbComps}_${maxCbyC}_${maxPre}_${cbyTF}_${nbGen}"
sbatch --array=1-${run} --job-name=${RESDIR} --output=${RESDIR}.out --export=C=$nbCours,c=$nbComps,R=$maxCbyC,Q=$maxPre,A=$cbyTF,n=$minCbyTF,N=$maxCbyTF,r=1,q=0,O=$RESDIR,B=50,x=0.75,X=0.75,F=3,G=$nbGen job.sh
echo "-C=${nbCours} -c=${nbComps} -R=${maxCbyC} -Q=${maxPre} -A=${cbyTF} -n=${minCbyTF} -N=${maxCbyTF} -r=1 -q=0" >> case
done
done
done
done
done
done
......@@ -5,7 +5,7 @@
#SBATCH --mem=4G
#SBATCH -p defq
/home/jeremie.humeau/private/gitProject/csdvp-evolutionary-algorithm-optimization/build/application/ceao -G=10000 -P=100 -S=$SLURM_ARRAY_TASK_ID -C=$C -c=$c -A=$A --outputfile=$O -n=$A -B=$B -x=$x -X=$X -F=$F
/home/jeremie.humeau/private/gitProject/csdvp-evolutionary-algorithm-optimization/build/application/ceao -G=$G -P=10 -S=$SLURM_ARRAY_TASK_ID -C=$C -c=$c -R=$R -Q=$Q -A=$A --outputfile=$O -n=$n -N=$N -r=$r -q=$q -B=$B -x=$x -X=$X -F=$F -T=10
exit 0
push with error 98
push with error 58
push with error 72
push with error 67
push with error 42
push with error 70
push with error 60
push with error 1
push with error 21
push with error 97
push with error 73
push with error 101
push with error 66
push with error 75
push with error 1
push with error 7
push with error 28
push with error 66
push with error 1
push with error 31
push with error 21
push with error 1
push with error 54
push with error 72
push with error 101
push with error 80
push with error 94
push with error 83
push with error 54
push with error 84
push with error 16
push with error 1
push with error 89
push with error 27
push with error 84
push with error 24
push with error 87
push with error 21
push with error 54
push with error 72
push with error 51
push with error 98
#!/bin/bash
for nbCours in 15
do
for nbComps in 10 20
do
for cbyTF in 2
do
RESDIR="../results/${nbCours}_${nbComps}_${cbyTF}"
mkdir $RESDIR
for run in 5
do
RESDIR="../results/${nbCours}_${nbComps}_${cbyTF}"
sbatch --array=1-${run} --job-name=${RESDIR} --output=${RESDIR}.out --export=C=$nbCours,c=$nbComps,A=$cbyTF,O=$RESDIR job.sh
done
done
done
done
for nbCours in 25
do
for nbComps in 10
do
for cbyTF in 3
do
RESDIR="../results/${nbCours}_${nbComps}_${cbyTF}"
mkdir $RESDIR
for run in 5
do
RESDIR="../results/${nbCours}_${nbComps}_${cbyTF}"
sbatch --array=1-${run} --job-name=${RESDIR} --output=${RESDIR}.out --export=C=$nbCours,c=$nbComps,A=$cbyTF,O=$RESDIR job.sh
done
done
done
done
for nbCours in 20
do
for nbComps in 20
do
for cbyTF in 3
do
RESDIR="../results/${nbCours}_${nbComps}_${cbyTF}"
mkdir $RESDIR
for run in 5
do
RESDIR="../results/${nbCours}_${nbComps}_${cbyTF}"
sbatch --array=1-${run} --job-name=${RESDIR} --output=${RESDIR}.out --export=C=$nbCours,c=$nbComps,A=$cbyTF,O=$RESDIR job.sh
done
done
done
done
for nbCours in 30
do
for nbComps in 40
do
for cbyTF in 4
do
RESDIR="../results/${nbCours}_${nbComps}_${cbyTF}"
mkdir $RESDIR
for run in 5
do
RESDIR="../results/${nbCours}_${nbComps}_${cbyTF}"
sbatch --array=1-${run} --job-name=${RESDIR} --output=${RESDIR}.out --export=C=$nbCours,c=$nbComps,A=$cbyTF,O=$RESDIR job.sh
done
done
done
done
exit 0
......@@ -23,10 +23,14 @@ class eoInitConstraintCSDVP: public eoInit<EOT>
eoInitConstraintCSDVP(CSDVP& _pb): pb(_pb){
std::vector<int> tmp;
chromSize=pb.getQuantityCoursesToPick();
std::cout << "nombre de cours à prendre: " << chromSize << std::endl;
maxVal=pb.coursesCatalogue().size();
std::cout << "nb Cours total dans le catalogue: " << maxVal << std::endl;
seed=pb.seed();
TF = pb.timeFrames();
nbTF=TF.size();
nbTF=TF.size();
std::cout << "nb de Semestres" << nbTF << std::endl;
sizeTF=chromSize/nbTF;
catalogue = pb.coursesCatalogue();
possibleIDbyTF.resize(nbTF);
......@@ -36,22 +40,22 @@ class eoInitConstraintCSDVP: public eoInit<EOT>
possibleIDbyTF[tmp[j]-pb.cfg_minimalTimeFrame()].push_back(i);
}
}
// for(int i=0; i<possibleIDbyTF.size(); i++){
// std::cout << "Possible course in TF " << i+pb.cfg_minimalTimeFrame() << ": ";
// for(int j=0; j<possibleIDbyTF[i].size(); j++){
// std::cout << possibleIDbyTF[i][j] << " ";
// }
// std::cout << std::endl;
// }
for(int i=0; i<possibleIDbyTF.size(); i++){
std::cout << "Possible course in TF " << i+pb.cfg_minimalTimeFrame() << ": ";
for(int j=0; j<possibleIDbyTF[i].size(); j++){
std::cout << possibleIDbyTF[i][j] << " ";
}
std::cout << std::endl;
}
}
virtual void operator()(EOT& chrom){
int cpt=0;
//std::cout << "Enter init" << std::endl;
std::cout << "Enter init" << std::endl;
unsigned int r=eo::rng.random(possibleIDbyTF[0].size());
chrom.resize(0);
chrom.push_back(possibleIDbyTF[0][r]);
//std::cout << "push " << possibleIDbyTF[0][r] << std::endl;
std::cout << "push " << possibleIDbyTF[0][r] << std::endl;
for(int i = 1; i < chromSize; i++){
cpt=0;
r=eo::rng.random(possibleIDbyTF[i/sizeTF].size());
......
#ifndef SRC_MODEL_EA_INITIALIZER_H_
#define SRC_MODEL_EA_INITIALIZER_H_
#include<queue>
#include<vector>
#include<cassert>
#include<algorithm>
#include<random>
#include<functional>
#include <eoInit.h>
#include "model/problem.h"
#include "cursus.h"
template <class EOT>
class eoInitCSDVP: public eoInit<EOT>
{
public:
typedef typename EOT::AtomType AtomType;
eoInitCSDVP(unsigned _chromSize, unsigned _maxVal, int _seed)
: chromSize(_chromSize), maxVal(_maxVal), seed(_seed)
{}
virtual void operator()(EOT& chrom)
{
chrom.resize(0);
for(int i = 0; i < maxVal; i++)
chrom.push_back(i);
std::random_shuffle(chrom.begin(), chrom.end());
chrom.resize(chromSize);
chrom.invalidate();
}
private :
unsigned chromSize;
unsigned maxVal;
UF_random_generator<unsigned int> gen;
int seed;
};
typedef eoInitCSDVP<Cursus> CursusInit;
#endif // SRC_MODEL_EA_INITIALIZER_H_
......@@ -258,7 +258,6 @@ int CSDVP::CSDVP_COUNTER = 0;
{
tmpCourses.push_back(Course::build(CSDVP::_randomizeIn(pb.cfg_ectsMin(), pb.cfg_ectsMax())));
}
/* We obtain how many courses n by semester s
* then we create an idxCourses vector of size n * s
* then we shuffle it
......@@ -266,13 +265,22 @@ int CSDVP::CSDVP_COUNTER = 0;
*/
std::vector<int> idxCourses;
std::vector<int> nbCoursesByTF;
for(unsigned int i = 0 ; i < pb.timeFrames().size(); i++)
int somme=0;
for(unsigned int i = 0 ; i < pb.timeFrames().size(); i++){
nbCoursesByTF.push_back(CSDVP::_randomizeIn(pb._minimalCoursesByTimeFrame, pb._maximalCoursesByTimeFrame));
somme+=nbCoursesByTF[i];
}
while(somme<tmpCourses.size()){
int r=CSDVP::_randomizeIn(0, pb.timeFrames().size()-1);
nbCoursesByTF[r]++;
somme++;
}
int idxCoursesCounter = 0;
for(unsigned int i = 0; i < nbCoursesByTF.size(); i++)
{
for(int j = 0; j < nbCoursesByTF.at(i); j++)
{
{
idxCourses.push_back(idxCoursesCounter % pb._quantityAvailableCourses);
idxCoursesCounter++;
}
......@@ -318,10 +326,11 @@ int CSDVP::CSDVP_COUNTER = 0;
// }
// }
for(unsigned int i = 0; i < tmpCourses.size(); i++)
for(unsigned int i = 0; i < tmpCourses.size(); i++){
if(tmpCourses.at(i).timeFrame().size() > 0)
pb.addCourseToCatalogue(tmpCourses.at(i));
}
//From here, coursesCatalogue can still be < to minCourseTF * nbTF (due to the fact that a same course can belongs to )
pb._makeCoursesSortedByTF();
......@@ -408,4 +417,4 @@ int CSDVP::CSDVP_COUNTER = 0;
Stream << s;
return Stream;
}
// === END OPERATOR
\ No newline at end of file
// === END OPERATOR
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment