Dip  0.92.4
heur_params.h
Go to the documentation of this file.
1 /*===========================================================================*/
2 /* */
3 /* This file is part of a demonstration application for use with the */
4 /* SYMPHONY Branch, Cut, and Price Library. This application is a solver for */
5 /* the Vehicle Routing Problem and the Traveling Salesman Problem. */
6 /* */
7 /* This application was developed by Ted Ralphs (ted@lehigh.edu) */
8 /* This file was modified by Ali Pilatin January, 2005 (alp8@lehigh.edu) */
9 /* */
10 /* (c) Copyright 2000-2005 Ted Ralphs. All Rights Reserved. */
11 /* */
12 /* This software is licensed under the Eclipse Public License. Please see */
13 /* accompanying file for terms. */
14 /* */
15 /*===========================================================================*/
16 
17 #ifndef _HEUR_PARAMS_H
18 #define _HEUR_PARAMS_H
19 
20 /*--------------------------------------------------------------------*\
21 | This data structure contains parameters used to run the two savings |
22 | routines. savings_trials and savings2_trials contain the number of |
23 | "blocks" of trialss of each of these two heuristics that should be |
24 | spawned. The only difference between these two heuristics is that |
25 | savings2 uses binomial heaps and is slightly faster on most |
26 | problems. Also, they break ties differently. Mu and lamda are the |
27 | two parameters used in determining the savings for each node. As we |
28 | vary these parameters, we get different solutions. The grid size |
29 | specifies what size search grid of parameter settings we should try |
30 | for each "block" of trials. If there is more than one block of |
31 | trials to be executed, then the first one uses far_insert to begin |
32 | each new route and the second one uses random insertion |
33 \*--------------------------------------------------------------------*/
34 
35 typedef struct SAVINGS_PARAM{
38  int grid_size;
39  float mu;
40  float lamda;
42 
43 /*--------------------------------------------------------------------*\
44 | This structure contains parameters relating to the construction of |
45 | TSP tours by various simple heuristics and to the partitioning of |
46 | them into VRP solutions |
47 \*--------------------------------------------------------------------*/
48 
49 typedef struct TSP_PAR{
50  int ni_trials;
51  int fi_trials;
54 }tsp_par;
55 
56 /*--------------------------------------------------------------------*\
57 | This structure contains the values of the parameters for all the |
58 | heuristics. See the README file for an explanation of the parameters |
59 \*--------------------------------------------------------------------*/
60 
61 typedef struct HEUR_PARAMS{
70  int exchange;
71  int exchange2;
72  float fini_ratio;
73  int ni_trials;
74  int fi_trials;
78 
79 #endif
int route_opt1
Definition: heur_params.h:67
int near_cluster_trials
Definition: heur_params.h:66
struct SAVINGS_PARAM savings_param
int num_starts
Definition: heur_params.h:53
struct TSP_PAR tsp_par
int sweep_trials
Definition: heur_params.h:63
float fini_ratio
Definition: heur_params.h:72
int savings_trials
Definition: heur_params.h:36
int route_opt3
Definition: heur_params.h:69
int no_of_machines
Definition: heur_params.h:62
savings_param savings_par
Definition: heur_params.h:64
savings_param savings3_par
Definition: heur_params.h:65
int fi_trials
Definition: heur_params.h:51
int ni_trials
Definition: heur_params.h:50
struct HEUR_PARAMS heur_params
int route_opt2
Definition: heur_params.h:68
int fini_trials
Definition: heur_params.h:75
tsp_par tsp
Definition: heur_params.h:76
int fini_trials
Definition: heur_params.h:52
int savings2_trials
Definition: heur_params.h:37