lemon/cost_scaling.h
changeset 932 773dd96ecdd8
parent 922 9312d6c89d02
parent 931 f112c18bc304
child 934 fe283caf6414
equal deleted inserted replaced
16:15969db965bd 18:2c29d9f4900f
   909       switch (method) {
   909       switch (method) {
   910         case PUSH:
   910         case PUSH:
   911           startPush();
   911           startPush();
   912           break;
   912           break;
   913         case AUGMENT:
   913         case AUGMENT:
   914           startAugment();
   914           startAugment(_res_node_num - 1);
   915           break;
   915           break;
   916         case PARTIAL_AUGMENT:
   916         case PARTIAL_AUGMENT:
   917           startAugment(MAX_PATH_LENGTH);
   917           startAugment(MAX_PATH_LENGTH);
   918           break;
   918           break;
   919       }
   919       }
  1086         }
  1086         }
  1087       }
  1087       }
  1088     }
  1088     }
  1089 
  1089 
  1090     /// Execute the algorithm performing augment and relabel operations
  1090     /// Execute the algorithm performing augment and relabel operations
  1091     void startAugment(int max_length = std::numeric_limits<int>::max()) {
  1091     void startAugment(int max_length) {
  1092       // Paramters for heuristics
  1092       // Paramters for heuristics
  1093       const int EARLY_TERM_EPSILON_LIMIT = 1000;
  1093       const int EARLY_TERM_EPSILON_LIMIT = 1000;
  1094       const double GLOBAL_UPDATE_FACTOR = 3.0;
  1094       const double GLOBAL_UPDATE_FACTOR = 3.0;
  1095 
  1095 
  1096       const int global_update_freq = int(GLOBAL_UPDATE_FACTOR *
  1096       const int global_update_freq = int(GLOBAL_UPDATE_FACTOR *