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
Public Attributes | List of all members
SubProblem Struct Reference

The struct used to represent a SubProblem or node of the Branch and Bound tree. More...

#include <b_and_b_data.h>

Public Attributes

BBNodeType type
 The label of the SubProblem.
 
unsigned int id
 The id of the SubProblem, an incremental number.
 
unsigned int fatherId
 The id of the father of the SubProblem.
 
double value
 The cost of the SubProblem.
 
unsigned short treeLevel
 The level of the SubProblem in the Branch and Bound tree.
 
float timeToReach
 The time needed to reach the SubProblem, in seconds.
 
MST oneTree
 The 1Tree of the SubProblem.
 
unsigned short num_edges_in_cycle
 The number of edges in the cycle of the SubProblem.
 
double prob
 The probability of the SubProblem to be the best tour.
 
ConstrainedEdge cycleEdges [MAX_VERTEX_NUM]
 The edges in the cycle of the SubProblem.
 
unsigned short num_forbidden_edges
 The number of forbidden edges in the SubProblem.
 
unsigned short num_mandatory_edges
 The number of mandatory edges in the SubProblem.
 
int edge_to_branch
 The id of the edge to branch in the SubProblem.
 
ConstrainedEdge mandatoryEdges [MAX_VERTEX_NUM]
 The mandatory edges in the SubProblem.
 
ConstraintType constraints [MAX_VERTEX_NUM][MAX_VERTEX_NUM]
 The constraints of the edges in the SubProblem.
 

Detailed Description

The struct used to represent a SubProblem or node of the Branch and Bound tree.

Definition at line 42 of file b_and_b_data.h.

Member Data Documentation

◆ constraints

ConstraintType SubProblem::constraints[MAX_VERTEX_NUM][MAX_VERTEX_NUM]

The constraints of the edges in the SubProblem.

Definition at line 57 of file b_and_b_data.h.

◆ cycleEdges

ConstrainedEdge SubProblem::cycleEdges[MAX_VERTEX_NUM]

The edges in the cycle of the SubProblem.

Definition at line 52 of file b_and_b_data.h.

◆ edge_to_branch

int SubProblem::edge_to_branch

The id of the edge to branch in the SubProblem.

Definition at line 55 of file b_and_b_data.h.

◆ fatherId

unsigned int SubProblem::fatherId

The id of the father of the SubProblem.

Definition at line 45 of file b_and_b_data.h.

◆ id

unsigned int SubProblem::id

The id of the SubProblem, an incremental number.

Definition at line 44 of file b_and_b_data.h.

◆ mandatoryEdges

ConstrainedEdge SubProblem::mandatoryEdges[MAX_VERTEX_NUM]

The mandatory edges in the SubProblem.

Definition at line 56 of file b_and_b_data.h.

◆ num_edges_in_cycle

unsigned short SubProblem::num_edges_in_cycle

The number of edges in the cycle of the SubProblem.

Definition at line 50 of file b_and_b_data.h.

◆ num_forbidden_edges

unsigned short SubProblem::num_forbidden_edges

The number of forbidden edges in the SubProblem.

Definition at line 53 of file b_and_b_data.h.

◆ num_mandatory_edges

unsigned short SubProblem::num_mandatory_edges

The number of mandatory edges in the SubProblem.

Definition at line 54 of file b_and_b_data.h.

◆ oneTree

MST SubProblem::oneTree

The 1Tree of the SubProblem.

Definition at line 49 of file b_and_b_data.h.

◆ prob

double SubProblem::prob

The probability of the SubProblem to be the best tour.

Definition at line 51 of file b_and_b_data.h.

◆ timeToReach

float SubProblem::timeToReach

The time needed to reach the SubProblem, in seconds.

Definition at line 48 of file b_and_b_data.h.

◆ treeLevel

unsigned short SubProblem::treeLevel

The level of the SubProblem in the Branch and Bound tree.

Definition at line 47 of file b_and_b_data.h.

◆ type

BBNodeType SubProblem::type

The label of the SubProblem.

Definition at line 43 of file b_and_b_data.h.

◆ value

double SubProblem::value

The cost of the SubProblem.

Definition at line 46 of file b_and_b_data.h.