diff --git a/r2sol.cc b/r2sol.cc index 01e4c059246736b651bbd295d5c8b49d5235b8f5..d581ec287f1ccf9c2dc41564fc1b56f74814a8bf 100644 --- a/r2sol.cc +++ b/r2sol.cc @@ -30,8 +30,8 @@ using namespace std; #define HMAX 151 #define NMAX 201 #define MAXNODES 3000 -#define TMAX 2567 -#define MAX_NUM_THREADS 1//4 +#define TMAX 3007//2567 +#define MAX_NUM_THREADS 2//4 #define MAX_CTURNS 5 #define INF 10000 #define ZERO 0.000001 @@ -760,8 +760,8 @@ bool OverlapsOngoingMove(int t1, int t2, int node, const short int covered_by[][ //return false; - const int min_tstart = t2;//USE_STRICT_SPACING_TO_AVOID_DEADLOCKS ? t2 : t1; - //const int min_tstart = t1;//USE_STRICT_SPACING_TO_AVOID_DEADLOCKS ? t2 : t1; + //const int min_tstart = t2;//USE_STRICT_SPACING_TO_AVOID_DEADLOCKS ? t2 : t1; + const int min_tstart = t1;//USE_STRICT_SPACING_TO_AVOID_DEADLOCKS ? t2 : t1; const int aid_t1 = is_covered[t1][node] == is_covered_idx ? covered_by[t1][node] : -1; @@ -2182,8 +2182,8 @@ void GetMoves(const char* testid, bool replay_mode = false) { ReinitDataStructures(); ComputeShortestPaths(); } - SCORE_EXPONENT1 = 0.5;//2.0; - SCORE_EXPONENT2 = 0.5;//4.0; + SCORE_EXPONENT1 = 0.5;//0.5;//2.0; + SCORE_EXPONENT2 = 0.5;//0.5;//4.0; DBG(2, "testid=%s TINIT=%d: resc=%d nda=%d npl=%d\n", testid, TINIT, reschedule, num_done_agents, num_planned); if (reschedule) { if (TINIT >= MIN_TINIT_FOR_SAVE_DATA_FOR_REPLAY) SaveDataForReplay(testid); @@ -2195,11 +2195,11 @@ void GetMoves(const char* testid, bool replay_mode = false) { const int kMaxNumAdjustIPathsWithoutFullPlanRegenartion = 5; const bool full_regenerate_paths = !updated_paths_ok || num_adjust_ipaths_without_full_plan_regeneration > kMaxNumAdjustIPathsWithoutFullPlanRegenartion; if (full_regenerate_paths) { - RegenerateFullPlan(4, TINIT == 0 ? 18 : 10); + RegenerateFullPlan(4, TINIT == 0 ? 20 : 10); num_adjust_ipaths_without_full_plan_regeneration = 0; } else { assert(TINIT >= 1); - RegenerateFullPlan(1, 2); + RegenerateFullPlan(1, 1); } if (TINIT >= 1 && any_best_solution_updates) AdjustIPaths(); } @@ -2221,25 +2221,20 @@ int main() { } /* -0 119 88.1481481481 -48781.5000000313 4 2.9629629630 2.9629629630 -1 109 77.8571428571 -43081.9166666835 9 6.4285714286 4.6957671958 -2 64 52.8925619835 -46199.7500000267 -2 -1.6528925620 2.5795472765 -3 80 100.0000000000 -11739.2500000021 0 0.0000000000 1.9346604574 -4 124 80.0000000000 -89490.1666665898 1 0.6451612903 1.6767606240 -5 131 100.0000000000 -38661.0833333310 1 0.7633587786 1.5245269831 -6 165 95.3757225434 -58405.5000000463 0 0.0000000000 1.3067374141 -7 116 85.2941176471 -39543.4166666742 9 6.6176470588 1.9706011197 -8 84 70.0000000000 -42566.0833333510 5 4.1666666667 2.2146084027 +0 114 84.4444444444 -50443.5000000380 -6 -4.4444444444 -4.4444444444 +1 110 78.5714285714 -41208.8333333436 2 1.4285714286 -1.5079365079 +2 63 52.0661157025 -49503.0833333628 -4 -3.3057851240 -2.1072193799 +3 80 100.0000000000 -12103.2500000025 0 0.0000000000 -1.5804145350 +4 134 86.4516129032 -92102.3333332341 2 1.2903225806 -1.0062671118 +5 128 97.7099236641 -37359.9166666591 -3 -2.2900763359 -1.2202353158 +6 161 93.0635838150 -64314.6666667263 0 0.0000000000 -1.0459159850 +7 116 85.2941176471 -41825.2500000115 9 6.6176470588 -0.0879706045 +8 86 71.6666666667 -42182.8333333483 -6 -5.0000000000 -0.6337516485 +9 57 37.2549019608 -81168.9166666624 -14 -9.1503267974 -1.4854091634 +10 110 65.4761904762 -87335.9166666238 -6 -3.5714285714 -1.6750472914 +11 100 96.1538461538 -17626.8333333361 -3 -2.8846153846 -1.7758446325 +12 72 65.4545454545 -46933.2500000213 -2 -1.8181818182 -1.7791013391 +13 137 86.1635220126 -50230.8333333654 5 3.1446540881 -1.4274045228 +14 94 76.4227642276 -51649.7500000278 0 0.0000000000 -1.3322442213 +15 86 45.2631578947 -149843.5833332979 -4 -2.1052631579 -1.3805579049 */ - -/* -0 115 85.1851851852 -49653.9166667006 10 7.4074074074 7.4074074074 -1 100 71.4285714286 -43604.9166666858 -6 -4.2857142857 1.5608465608 -2 66 54.5454545455 -47303.2500000250 11 9.0909090909 9.0909090909 -3 80 100.0000000000 -12082.7500000020 0 0.0000000000 0.0000000000 -4 123 79.3548387097 -84319.9166666058 19 12.2580645161 6.1290322581 -5 130 99.2366412214 -39629.9166666687 7 5.3435114504 5.8671919888 -6 165 95.3757225434 -60916.1666667209 35 20.2312138728 9.4581974598 -7 107 78.6764705882 -41366.8333333417 14 10.2941176471 9.6253814973 -*/ - diff --git a/run_local.py b/run_local.py index 1022800f0f751d55ce1b0b87de03ea98dd3b0559..78cfbb12e506db5ec92212cb66e4d79903dc4eb9 100644 --- a/run_local.py +++ b/run_local.py @@ -25,7 +25,7 @@ def GetTestParams(tid): return (seed, width, height, nr_trains, nr_cities, max_rails_between_cities, max_rails_in_cities, malfunction_rate, malfunction_min_duration, malfunction_max_duration) def ShouldRunTest(tid): - #return tid == 7 + return tid >= 7 #return tid >= 3 return True diff --git a/tmp-scores.txt b/tmp-scores.txt index c6ffa02be90f8071025540cda27241646065c118..44fc426c71ce2ad391e04f2ef83d2ab1642e28e0 100644 --- a/tmp-scores.txt +++ b/tmp-scores.txt @@ -1,6 +1,8 @@ -0 114 84.4444444444 -50443.5000000380 -6 -4.4444444444 -4.4444444444 -1 110 78.5714285714 -41208.8333333436 2 1.4285714286 -1.5079365079 -2 63 52.0661157025 -49503.0833333628 -4 -3.3057851240 -2.1072193799 -3 80 100.0000000000 -12103.2500000025 0 0.0000000000 -1.5804145350 -4 134 86.4516129032 -92102.3333332341 2 1.2903225806 -1.0062671118 -5 128 97.7099236641 -37359.9166666591 -3 -2.2900763359 -1.2202353158 +7 106 77.9411764706 -41039.8333333419 -1 -0.7352941176 -0.7352941176 +8 89 74.1666666667 -38377.8333333369 -3 -2.5000000000 -1.6176470588 +9 70 45.7516339869 -74273.9166666784 -1 -0.6535947712 -1.2962962963 +10 105 62.5000000000 -87083.1666666212 -11 -6.5476190476 -2.6091269841 +11 101 97.1153846154 -16509.0000000046 -2 -1.9230769231 -2.4719169719 +12 74 67.2727272727 -47107.0000000187 0 0.0000000000 -2.0599308099 +13 138 86.7924528302 -54212.0833333818 6 3.7735849057 -1.2265714220 +14 108 87.8048780488 -48798.6666666931 14 11.3821138211 0.3495142334