- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

# /home/coin/svn-release/Blis-0.94.1/Blis/examples/VRP/VrpConstants.h

Go to the documentation of this file.

    00001 /*===========================================================================*
    00002  * This file is part of a solver for the Vehicle Routing Problem             *
    00003  * developed using the BiCePS Linear Integer Solver (BLIS).                  *
    00004  *                                                                           *
    00005  * This solver is distributed under the Eclipse Public License as part of    *
    00006  * the COIN-OR repository (http://www.coin-or.org).                          *
    00007  *                                                                           *
    00008  * Authors: Yan Xu, Lehigh University                                        *
    00009  *          Ted Ralphs, Lehigh University                                    *
    00010  *                                                                           *
    00011  * Copyright (C) 2007 Yan Xu and Ted Ralphs.                                 *
    00012  * All Rights Reserved.                                                      *
    00013  *===========================================================================*/
    00014
    00015 #ifndef VrpConstants_h_
    00016 #define VrpConstants_h_
    00017
    00018 #define LENGTH 255
    00019 #define KEY_NUM 43
    00020 #define DEAD 2
    00021 #define NEAR_INS -1
    00022 #define FAR_INS -2
    00023 #define DEPOT_PENALTY 20
    00024 #define RRR 6378.388
    00025 #define MY_PI 3.141592
    00026 #define LINE_LEN 80
    00027
    00028 /*---------------- distance types -------------------------------------------*/
    00029 #define _EXPLICIT 0
    00030 #define _EUC_2D   1
    00031 #define _EUC_3D   2
    00032 #define _MAX_2D   3
    00033 #define _MAX_3D   4
    00034 #define _MAN_2D   5
    00035 #define _MAN_3D   6
    00036 #define _CEIL_2D  7
    00037 #define _GEO      8
    00038 #define _ATT      9
    00039
    00040 /*---------------- message types --------------------------------------------*/
    00041 #define VRP_LB_DATA                1
    00042 #define VRP_LB_DATA2               2
    00043 #define VRP_BROADCAST_DATA         3
    00044 #define EXCHANGE_HEUR_TOUR         4
    00045 #define ROUTE_FINS_START_RULE      5
    00046 #define ROUTE_NINS_START_RULE      6
    00047 #define ROUTE_FNINS_START_RULE     7
    00048 #define FINI_RATIO                 8
    00049 #define TSP_FINI_RATIO             9
    00050 #define ROUTE_FINS_VRP_DATA        10
    00051 #define ROUTE_NINS_VRP_DATA        11
    00052 #define ROUTE_FNINS_VRP_DATA       12
    00053 #define SWEEP_TRIALS               13
    00054 #define TSP_NI_TRIALS              14
    00055 #define TSP_FI_TRIALS              15
    00056 #define TSP_FINI_TRIALS            16
    00057 #define S3_NUMROUTES               17
    00058 #define NC_NUMROUTES               18
    00059 #define TSP_START_POINT            19
    00060 #define SAVINGS_DATA               20
    00061 #define SAVINGS2_DATA              21
    00062 #define SAVINGS3_DATA              22
    00063 #define DISPLAY_DATA               23
    00064 #define STOP                       24
    00065
    00066 /*__BEGIN_EXPERIMENTAL_SECTION__*/
    00067
    00068 #define HEUR_TOUR                  25
    00069 #define HEUR_TOUR_WITH_ROUTES      26
    00070 #define LOWER_BOUND                27
    00071
    00072 /*--------------- algorithms ------------------------------------------------*/
    00073 #define EXCHANGE      28
    00074 #define EXCHANGE2     29
    00075 #define FARNEAR_INS   30
    00076 #define FARTHEST_INS  31
    00077 #define MST           32
    00078 #define NEAREST_INS   33
    00079 #define NEAR_CLUSTER  34
    00080 #define SAVINGS       35
    00081 #define SAVINGS2      36
    00082 #define SAVINGS3      37
    00083 #define SWEEP         38
    00084 #define TSP_FI        39
    00085 #define TSP_FINI      40
    00086 #define TSP_NI        41
    00087 /*--------------- algorithms ------------------------------------------------*/
    00088 #define S_EXCHANGE      42
    00089 #define S_EXCHANGE2     43
    00090 #define S_FARNEAR_INS   44
    00091 #define S_FARTHEST_INS  45
    00092 #define S_MST           46
    00093 #define S_NEAREST_INS   47
    00094 #define S_NEAR_CLUSTER  48
    00095 #define S_SAVINGS       49
    00096 #define S_SAVINGS2      50
    00097 #define S_SAVINGS3      51
    00098 #define S_SWEEP         52
    00099 #define S_TSP_FI        53
    00100 #define S_TSP_FINI      54
    00101 #define S_TSP_NI        55
    00102
    00103 #define IN_TOUR      -1
    00104 #define IN_TREE      -1
    00105 #define NOT_NEIGHBOR  0
    00106 /*___END_EXPERIMENTAL_SECTION___*/
    00107
    00108 /*---------------- cut types ------------------------------------------------*/
    00109 #define SUBTOUR_ELIM_SIDE    0
    00110 #define SUBTOUR_ELIM_ACROSS  1
    00111 #define SUBTOUR_ELIM         2
    00112 #define CLIQUE               3
    00113 /*__BEGIN_EXPERIMENTAL_SECTION__*/
    00114 #define FARKAS               4
    00115 #define NO_COLUMNS           5
    00116 #define GENERAL_NONZEROS     6
    00117 /*___END_EXPERIMENTAL_SECTION___*/
    00118
    00119 /*---------------- tsp cut routines -----------------------------------------*/
    00120
    00121 #define NO_TSP_CUTS    0
    00122 #define SUBTOUR        1
    00123 #define BLOSSOM        2
    00124 #define COMB           4
    00125 #define ALL_TSP_CUTS   7
    00126
    00127 #define NUM_RANDS 6
    00128
    00129 #define ACTIVE_NODE_LIST_BLOCK_SIZE 100
    00130 #define DELETE_POWER 3
    00131 #define DELETE_AND 0x07
    00132
    00133 /*-------------- base variable selection rules ------------------------------*/
    00134 #define EVERYTHING_IS_EXTRA 0
    00135 #define SOME_ARE_BASE       1
    00136 #define EVERYTHING_IS_BASE  2
    00137
    00138 /*--------- constants used in creating the edges lists for the root ---------*/
    00139 #define CHEAP_EDGES      0
    00140 #define REMAINING_EDGES  1
    00141
    00142 /*--------- constants for saving the small graph ----------------------------*/
    00143 #define SAVE_SMALL_GRAPH 1
    00144 #define LOAD_SMALL_GRAPH 2
    00145
    00146 /*--------- constants for defining which set of exchange heuristics to do --*/
    00147 #define FIRST_SET        1
    00148 #define SECOND_SET       2
    00149
    00150 /*---------  which_connected_routine choices --------------------------------*/
    00151 #define CONNECTED    0
    00152 #define BICONNECTED  1
    00153 #define BOTH         2
    00154
    00155 #define VRP_NOT_SET  -1
    00156
    00157 #endif