cons_storeGraph.h
Go to the documentation of this file.
29 * This file implements the constraints that are used for the branching in the coloring algorithm.
34 * First of all, it stores the type of the constraint ("same" or "differ", the root has type root)
39 * takes the graph of the constraint related to the branch-and-bound father of the current node and
44 * an edge between v and w. For a SAME(v,w) constraint, the original idea is to collapse the nodes v
45 * and w into one single vertex. Since this is not possible in the tclique-graph data structure, we
50 * This does of course not hold for sets created in a higher level of the branch-and-bound tree or
57 * The information about all fusions of nodes (caused by the SAME() operation) is stored, so that the nodes
58 * constituting a union can be accessed easily. Each union has a representative and a set of nodes, whereas
59 * each node knows the representative of the union it belongs to. At the beginning, each node forms its own
60 * union and therefore each node also represents this union, consisting of only this node. Later on, some
61 * nodes represent unions of several nodes, while other nodes are part of a union which they do not represent,
62 * so they have another node as representative. The representatives of the nodes are returned by the methods
63 * COLORconsGetRepresentative() / COLORconsGetRepresentatives(), the union represented by a node is returned
84};
87/** returns the store graph constraint of the current node, needs the pointer to the constraint handler */
124/** returns array of all unions, a union is saved in the array at the position of its representative */
152 COLOR_CONSTYPE type, /**< type of the constraint: ROOT for root-constraint, else SAME or DIFFER */
int * COLORconsGetRepresentatives(SCIP *scip)
Definition: cons_storeGraph.c:952
TCLIQUE_GRAPH * COLORconsGetCurrentGraph(SCIP *scip)
Definition: cons_storeGraph.c:893
SCIP_RETCODE COLORcreateConsStoreGraph(SCIP *scip, SCIP_CONS **cons, const char *name, SCIP_CONS *fatherconstraint, COLOR_CONSTYPE type, int node1, int node2, SCIP_NODE *stickingnode)
Definition: cons_storeGraph.c:792
void COLORconsGetUnions(SCIP *scip, int ***unions, int **lengths)
Definition: cons_storeGraph.c:1013
SCIP_CONS * COLORconsGetActiveStoreGraphConsFromHandler(SCIP_CONSHDLR *conshdlr)
Definition: cons_storeGraph.c:853
int COLORconsGetRepresentative(SCIP *scip, int node)
Definition: cons_storeGraph.c:980
void COLORconsGetUnion(SCIP *scip, int **unionSet, int *length, int node)
Definition: cons_storeGraph.c:1045
TCLIQUE_GRAPH * COLORconsGetComplementaryGraph(SCIP *scip)
Definition: cons_storeGraph.c:921
SCIP_RETCODE COLORincludeConshdlrStoreGraph(SCIP *scip)
Definition: cons_storeGraph.c:757
SCIP_CONS * COLORconsGetActiveStoreGraphCons(SCIP *scip)
Definition: cons_storeGraph.c:869
void COLORconsGetStack(SCIP *scip, SCIP_CONS ***stack, int *nstackelements)
Definition: cons_storeGraph.c:1076
Definition: objbenders.h:44
SCIP callable library.
Definition: struct_cons.h:47
Definition: struct_cons.h:127
Definition: struct_tree.h:142
Definition: struct_scip.h:70
tclique user interface