Dip
0.92.4
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
tmp
Dip-0.92.4
Dip
examples
TSP
TSP_ConcordeI.h
Go to the documentation of this file.
1
//===========================================================================//
2
// This file is part of the Decomp Solver Framework. //
3
// //
4
// Decomp is distributed under the Common Public License as part of the //
5
// COIN-OR repository (http://www.coin-or.org). //
6
// //
7
// Authors: Matthew Galati, SAS Institute Inc. (matthew.galati@sas.com) //
8
// Ted Ralphs, Lehigh University (ted@lehigh.edu) //
9
// Jiadong Wang, Lehigh University (jiw408@lehigh.edu) //
10
// //
11
// Copyright (C) 2002-2019, Lehigh University, Matthew Galati, and Ted Ralphs//
12
// All Rights Reserved. //
13
//===========================================================================//
14
15
#ifndef TSP_CONCORDEI_INCLUDED
16
#define TSP_CONCORDEI_INCLUDED
17
18
// --------------------------------------------------------------------- //
19
typedef
struct
CCtsp_skeleton
{
20
int
atomcount
;
21
int
*
atoms
;
22
}
CCtsp_skeleton
;
23
24
typedef
struct
CCtsp_segment
{
25
int
lo
;
26
int
hi
;
27
}
CCtsp_segment
;
28
29
typedef
struct
CCtsp_lpclique
{
30
int
segcount
;
31
struct
CCtsp_segment
*
nodes
;
32
int
hashnext
;
33
int
refcount
;
34
}
CCtsp_lpclique
;
35
36
typedef
struct
CCtsp_lpcut_in
{
37
int
cliquecount
;
38
int
dominocount
;
39
int
rhs
;
40
char
sense
;
41
char
branch
;
42
CCtsp_lpclique
*
cliques
;
43
struct
CCtsp_lpdomino *
dominos
;
44
CCtsp_skeleton
skel
;
45
struct
CCtsp_lpcut_in
*
next
;
46
struct
CCtsp_lpcut_in
*
prev
;
47
}
CCtsp_lpcut_in
;
48
49
#define CC_FOREACH_NODE_IN_CLIQUE(i,c,tmp) \
50
for(tmp=0;tmp<(c).segcount;tmp++) \
51
for(i=(c).nodes[tmp].lo;i<=(c).nodes[tmp].hi;i++)
52
53
54
55
56
#if 0
57
58
59
typedef
struct
CCtsp_lpdomino {
60
CCtsp_lpclique
sets[2];
61
int
hashnext;
62
int
refcount;
63
} CCtsp_lpdomino;
64
65
#endif
66
67
68
extern
int
CCtsp_exact_subtours
(
CCtsp_lpcut_in
** cuts,
69
int
* cutcount,
70
int
ncount,
71
int
ecount,
72
int
*
elist
,
73
double
* x);
74
extern
void
75
CCtsp_free_lpcut_in
(
CCtsp_lpcut_in
*c);
76
77
78
#endif
CCtsp_lpcut_in::rhs
int rhs
Definition:
TSP_ConcordeI.h:39
CCtsp_lpcut_in::cliquecount
int cliquecount
Definition:
TSP_ConcordeI.h:37
CCtsp_lpcut_in
struct CCtsp_lpcut_in CCtsp_lpcut_in
CCtsp_lpclique::refcount
int refcount
Definition:
TSP_ConcordeI.h:33
CCtsp_segment
struct CCtsp_segment CCtsp_segment
CCtsp_skeleton
struct CCtsp_skeleton CCtsp_skeleton
CCtsp_lpcut_in::dominos
struct CCtsp_lpdomino * dominos
Definition:
TSP_ConcordeI.h:43
CCtsp_lpclique::hashnext
int hashnext
Definition:
TSP_ConcordeI.h:32
ELIST
Definition:
network.h:55
CCtsp_lpcut_in::branch
char branch
Definition:
TSP_ConcordeI.h:41
CCtsp_skeleton
Definition:
TSP_ConcordeI.h:19
CCtsp_lpclique::nodes
struct CCtsp_segment * nodes
Definition:
TSP_ConcordeI.h:31
CCtsp_lpcut_in::sense
char sense
Definition:
TSP_ConcordeI.h:40
CCtsp_segment::lo
int lo
Definition:
TSP_ConcordeI.h:25
CCtsp_segment
Definition:
TSP_ConcordeI.h:24
CCtsp_lpclique::segcount
int segcount
Definition:
TSP_ConcordeI.h:30
CCtsp_segment::hi
int hi
Definition:
TSP_ConcordeI.h:26
CCtsp_lpclique
Definition:
TSP_ConcordeI.h:29
CCtsp_skeleton::atoms
int * atoms
Definition:
TSP_ConcordeI.h:21
CCtsp_lpcut_in::cliques
CCtsp_lpclique * cliques
Definition:
TSP_ConcordeI.h:42
CCtsp_lpcut_in::dominocount
int dominocount
Definition:
TSP_ConcordeI.h:38
CCtsp_skeleton::atomcount
int atomcount
Definition:
TSP_ConcordeI.h:20
CCtsp_lpclique
struct CCtsp_lpclique CCtsp_lpclique
CCtsp_lpcut_in::prev
struct CCtsp_lpcut_in * prev
Definition:
TSP_ConcordeI.h:46
CCtsp_lpcut_in
Definition:
TSP_ConcordeI.h:36
CCtsp_free_lpcut_in
void CCtsp_free_lpcut_in(CCtsp_lpcut_in *c)
CCtsp_lpcut_in::skel
CCtsp_skeleton skel
Definition:
TSP_ConcordeI.h:44
CCtsp_lpcut_in::next
struct CCtsp_lpcut_in * next
Definition:
TSP_ConcordeI.h:45
CCtsp_exact_subtours
int CCtsp_exact_subtours(CCtsp_lpcut_in **cuts, int *cutcount, int ncount, int ecount, int *elist, double *x)
Generated by
1.8.5