Graph Convolutional Branch and Bound
v1.0.0
A TSP solver that combines a graph convolutional network with a 1-Tree branch-and-bound.
Loading...
Searching...
No Matches
GraphConvolutionalBranchandBound
src
HybridSolver
main
problem_settings.h
Go to the documentation of this file.
1
17
#ifndef BRANCHANDBOUND1TREE_PROBLEM_SETTINGS_H
18
#define BRANCHANDBOUND1TREE_PROBLEM_SETTINGS_H
19
#include <stdio.h>
20
#include <limits.h>
21
#include <float.h>
22
#include <string.h>
23
#include <stdarg.h>
24
#include <stdbool.h>
25
#include <stdlib.h>
26
#include <math.h>
27
#include <time.h>
28
#include <errno.h>
29
#include <pthread.h>
30
31
33
#define INFINITE DBL_MAX
34
35
37
//#define MAX_VERTEX_NUM 20//-- no longer in this file, but in the CMakeLists.txt to be able to change it from the command line.
38
39
41
//#define HYBRID 0 //-- no longer in this file, but in the CMakeLists.txt to be able to change it from the command line.
42
43
45
#define PRIM 1
46
47
49
#define MAX_EDGES_NUM (MAX_VERTEX_NUM * (MAX_VERTEX_NUM - 1) / 2)
50
51
53
#define GHOSH_UB (sqrt(MAX_VERTEX_NUM) * 1.27f)
54
55
57
#define TRACE() fprintf(stderr, "%s (%d): %s\n"
, __FILE__, __LINE__, __func__)
58
59
61
65
#define EPSILON (GHOSH_UB / 1000)
66
67
69
73
#define EPSILON2 (0.1f * EPSILON)
74
75
77
82
#define BETTER_PROB 0.05f
83
84
86
92
#define PROB_BRANCH 0.5f
93
94
96
#define TIME_LIMIT_SECONDS 600
97
98
100
#define NUM_HK_INITIAL_ITERATIONS (((((float) MAX_VERTEX_NUM * MAX_VERTEX_NUM)/50) + 0.5f) + MAX_VERTEX_NUM + 15)
101
102
104
#define NUM_HK_ITERATIONS (((float) MAX_VERTEX_NUM / 4) + 5)
105
106
107
#endif
//BRANCHANDBOUND1TREE_PROBLEM_SETTINGS_H
Generated by
1.9.6