Scippy

SCIP

Solving Constraint Integer Programs

GRAPH Struct Reference

Detailed Description

Definition at line 55 of file grph.h.

#include <grph.h>

Data Fields

int norgmodelknots
 
int flags
 
int ksize
 
int knots
 
int orgknots
 
int terms
 
int layers
 
int * locals
 
int * source
 
int * term
 
int * mark
 
int * grad
 
int * inpbeg
 
int * outbeg
 
int * maxdeg
 
IDXfixedges
 
IDX ** ancestors
 
IDX ** pcancestors
 
int norgmodeledges
 
int hoplimit
 
int esize
 
int edges
 
int orgedges
 
SCIP_Real * cost
 
SCIP_Real * prize
 
int * tail
 
int * head
 
int * orgtail
 
int * orghead
 
int * ieat
 
int * oeat
 
int * mincut_dist
 
int * mincut_head
 
int * mincut_numb
 
int * mincut_prev
 
int * mincut_next
 
int * mincut_temp
 
int * mincut_e
 
int * mincut_x
 
int * mincut_r
 
int * path_heap
 
int * path_state
 
int grid_dim
 
int * grid_ncoords
 
int ** grid_coordinates
 
int stp_type
 

Field Documentation

int GRAPH::esize
int GRAPH::flags

To store attributes

Definition at line 59 of file grph.h.

Referenced by graph_copy(), graph_flags(), graph_init(), graph_pack(), and pcgraphtrans().

int** GRAPH::grid_coordinates
int* GRAPH::head

Array [0..edges-1] of node-number of head of edge [i]

Definition at line 94 of file grph.h.

Referenced by ansadv2Reduction(), ansadvReduction(), ansReduction(), bd3_reduction(), bdr_reduction(), bea_save(), bfs(), bound_reduce(), buildsolgraph(), chain2Reduction(), cnsAdvReduction(), compTMstarts(), compute_sd(), computeDegConsTree(), computeSteinerTreeVnoi(), createPrizeConstraints(), createVariables(), cut_add(), da_reduce(), daPc_reduce(), degree_test(), degree_test_mw(), degree_test_pc(), degree_test_sap(), deleteterm(), dfsorder(), do_prizecoll_trivial(), edge_remove(), extendSteinerTreePcMw(), get2next(), get3next(), get4next(), getnext4tterms(), getRSD(), getSD(), graph_copy(), graph_edge_add(), graph_edge_del(), graph_edge_hide(), graph_edge_redirect(), graph_free(), graph_ident(), graph_init(), graph_init_history(), graph_knot_contract(), graph_knot_contractpc(), graph_mincut_exec(), graph_pack(), graph_path_exec(), graph_path_execX(), graph_path_st(), graph_resize(), graph_show(), graph_sol_valid(), graph_trail(), graph_uncover(), graph_valid(), graph_valid2(), hcrbound_reduce(), hcrcbound_reduce(), hopbound_reduce(), initialise(), lca(), ledge_reduction(), nnpReduction(), nodeIsCrucial(), npvReduction(), nv_reduction(), nv_reductionAdv(), nvsl_reduction(), pcgraphtrans(), prize_subtract(), probdataPrintGraph(), reinitialise(), SCIP_DECL_HEUREXEC(), SCIP_DECL_PARAMCHGD(), SCIP_DECL_PROPEXEC(), SCIPdualAscentPcStp(), SCIPheurComputeSteinerTree(), SCIPheurImproveSteinerTree(), SCIPheurPruneDegConsSteinerTree(), SCIPheurPrunePCSteinerTree(), SCIPheurPruneSteinerTree(), SCIPprobdataPrintGraph2(), SCIPprobdataWriteSolution(), SCIPwriteStp(), sd2_reduction(), sd_red(), sd_reduction(), sddeltable(), sdpaths(), sdpc_reduction(), sdsp_reduction(), sdsp_sap_reduction(), selectdiffsols(), sl_reduction(), stp_save(), trail(), traverseChain(), trydg1edgepc(), voronoi(), voronoi_dist(), voronoi_extend(), voronoi_extend2(), voronoi_radius(), voronoi_repair(), voronoi_repair_mult(), voronoi_slrepair(), voronoi_terms(), and voronoiSteinerTreeExt().

int GRAPH::hoplimit

maximal number of edges allowed for a solution to be feasible (only used for HCDSTPs)

Definition at line 86 of file grph.h.

Referenced by bd3_reduction(), buildsolgraph(), createHopConstraint(), graph_copy(), graph_init(), graph_load(), graph_pack(), hcrbound_reduce(), hopbound_reduce(), pcgraphtrans(), SCIP_DECL_HEUREXEC(), SCIPheurComputeSteinerTree(), and SCIPwriteStp().

int GRAPH::knots

Count of nodes in graph

Definition at line 61 of file grph.h.

Referenced by ansadv2Reduction(), ansadvReduction(), ansReduction(), bd3_reduction(), bdr_reduction(), bea_save(), bfs(), bound_reduce(), buildsolgraph(), central_terminal(), chain2Reduction(), cnsAdvReduction(), compTMstarts(), compute_sd(), computeDegConsTree(), computeSteinerTree(), computeSteinerTreeDijk(), computeSteinerTreeVnoi(), createPrizeConstraints(), createVariables(), da_reduce(), daPc_reduce(), degree_test(), degree_test_hc(), degree_test_mw(), degree_test_pc(), degree_test_sap(), extendSteinerTreePcMw(), get2next(), get3next(), get4next(), getnext3terms(), getnext4terms(), getnext4tterms(), getRSD(), getSD(), graph_copy(), graph_ident(), graph_init(), graph_init_history(), graph_knot_add(), graph_load(), graph_maxweight_transform(), graph_mincut_exec(), graph_mincut_init(), graph_MwcsToSap(), graph_pack(), graph_path_exec(), graph_path_execX(), graph_path_init(), graph_path_length(), graph_path_st(), graph_PcSapCopy(), graph_PcToSap(), graph_prize_transform(), graph_resize(), graph_rootprize_transform(), graph_show(), graph_sol_valid(), graph_valid(), graph_valid2(), hcrbound_reduce(), hcrcbound_reduce(), hopbound_reduce(), initialise(), ledge_reduction(), level0(), maxprize(), nnpReduction(), nodeIsCrucial(), npvReduction(), nv_reduction(), nv_reductionAdv(), nvsl_reduction(), pcgraphorg(), pcgraphtrans(), pricing(), probdataPrintGraph(), reduceHc(), reduceMwcs(), reducePc(), reduceSap(), reduceStp(), reinitialise(), rptReduction(), SCIP_DECL_CONSPROP(), SCIP_DECL_EVENTEXEC(), SCIP_DECL_HEUREXEC(), SCIP_DECL_PARAMCHGD(), SCIP_DECL_PROPEXEC(), SCIPdualAscentAddCutsStp(), SCIPdualAscentPcStp(), SCIPdualAscentStp(), SCIPheurComputeSteinerTree(), SCIPheurImproveSteinerTree(), SCIPheurPruneDegConsSteinerTree(), SCIPheurPrunePCSteinerTree(), SCIPheurPruneSteinerTree(), SCIPprobdataAddNewSol(), SCIPprobdataCreate(), SCIPprobdataPrintGraph2(), SCIPvalidateStpSol(), SCIPwriteStp(), sd2_reduction(), sd_red(), sd_reduction(), sdpc_reduction(), sdsp_reduction(), sdsp_sap_reduction(), selectBranchingVertex(), sep_2cut(), sep_flow(), sl_reduction(), stp_save(), trail(), voronoi(), voronoi_dist(), voronoi_extend(), voronoi_extend2(), voronoi_radius(), voronoi_repair(), voronoi_repair_mult(), voronoi_slrepair(), voronoi_terms(), and voronoiSteinerTreeExt().

int GRAPH::ksize
int* GRAPH::locals

Array [0..layers-1] of count of terminals in network [i]

Definition at line 65 of file grph.h.

Referenced by graph_copy(), graph_free(), graph_init(), graph_knot_add(), graph_knot_chg(), graph_resize(), graph_valid(), sep_2cut(), and sep_flow().

int* GRAPH::mark

Array [0..nodes-1], normaly TRUE or FALSE to mark nodes for inclusion in the shortest path / minimum spanning tree routine

Definition at line 71 of file grph.h.

Referenced by ansadv2Reduction(), ansadvReduction(), ansReduction(), bd3_reduction(), bdr_reduction(), bound_reduce(), central_terminal(), chain2Reduction(), cnsAdvReduction(), compTMstarts(), compute_sd(), computeDegConsTree(), computeSteinerTree(), computeSteinerTreeDijk(), computeSteinerTreeVnoi(), createVariables(), cut_add(), da_reduce(), daPc_reduce(), degree_test_mw(), degree_test_pc(), degree_test_sap(), deleteterm(), get2next(), get3next(), get4next(), getnext3terms(), getnext4terms(), getnext4tterms(), graph_copy(), graph_free(), graph_init(), graph_knot_add(), graph_knot_contractpc(), graph_path_exec(), graph_path_execX(), graph_path_st(), graph_resize(), graph_trail(), graph_valid(), hcrbound_reduce(), hcrcbound_reduce(), hopbound_reduce(), ledge_reduction(), level0(), maxprize(), nnpReduction(), npvReduction(), nv_reduction(), nv_reductionAdv(), nvsl_reduction(), pcgraphorg(), pcgraphtrans(), pricing(), prize_subtract(), SCIP_DECL_PROPEXEC(), SCIPdualAscentPcStp(), SCIPdualAscentStp(), SCIPheurComputeSteinerTree(), SCIPheurImproveSteinerTree(), SCIPheurPrunePCSteinerTree(), SCIPheurPruneSteinerTree(), SCIPprobdataAddNewSol(), SCIPprobdataPrintGraph2(), sd2_reduction(), sd_red(), sd_reduction(), sdpaths(), sdpc_reduction(), sdsp_reduction(), sdsp_sap_reduction(), sep_2cut(), sl_reduction(), traverseChain(), trydg1edgepc(), voronoi_dist(), voronoi_extend(), voronoi_extend2(), voronoi_radius(), voronoi_repair(), voronoi_repair_mult(), voronoi_slrepair(), and voronoi_terms().

int* GRAPH::maxdeg

Array [0..nodes-1] containing the maximal degrees of all nodes (only used for HCDSTPs)

Definition at line 79 of file grph.h.

Referenced by buildsolgraph(), computeDegConsTree(), createDegreeConstraints(), graph_copy(), graph_free(), graph_init(), graph_load(), graph_pack(), pcgraphtrans(), SCIP_DECL_CONSPROP(), SCIP_DECL_HEUREXEC(), and SCIPvalidateStpSol().

int* GRAPH::mincut_dist

dist[i] : Distance-label of Knot i

Definition at line 103 of file grph.h.

Referenced by graph_init(), graph_mincut_exec(), graph_mincut_exit(), and graph_mincut_init().

int* GRAPH::mincut_e

e[i] : Excess of Knot i

Definition at line 109 of file grph.h.

Referenced by graph_init(), graph_mincut_exec(), graph_mincut_exit(), and graph_mincut_init().

int* GRAPH::mincut_head

head[i] : Head of Active Queue with Label i

Definition at line 104 of file grph.h.

Referenced by graph_init(), graph_mincut_exec(), graph_mincut_exit(), and graph_mincut_init().

int* GRAPH::mincut_next

Definition at line 107 of file grph.h.

Referenced by graph_init(), graph_mincut_exec(), graph_mincut_exit(), and graph_mincut_init().

int* GRAPH::mincut_numb

numb[i] : numb[i] Knots with Label i

Definition at line 105 of file grph.h.

Referenced by graph_init(), graph_mincut_exec(), graph_mincut_exit(), and graph_mincut_init().

int* GRAPH::mincut_prev

Definition at line 106 of file grph.h.

Referenced by graph_init(), graph_mincut_exec(), graph_mincut_exit(), and graph_mincut_init().

int* GRAPH::mincut_r

r[k] : Capacity of Arc k

Definition at line 111 of file grph.h.

Referenced by graph_init(), graph_mincut_exec(), graph_mincut_exit(), graph_mincut_init(), and initialise().

int* GRAPH::mincut_temp

Definition at line 108 of file grph.h.

Referenced by graph_init(), graph_mincut_exec(), graph_mincut_exit(), and graph_mincut_init().

int* GRAPH::mincut_x

x[k] : Actual Flow on Arc k

Definition at line 110 of file grph.h.

Referenced by graph_init(), graph_mincut_exec(), graph_mincut_exit(), graph_mincut_init(), and initialise().

int GRAPH::norgmodeledges
int GRAPH::norgmodelknots
int* GRAPH::oeat

Array [0..edges-1], outgoing edge allocation table

Definition at line 100 of file grph.h.

Referenced by ansadv2Reduction(), ansadvReduction(), ansReduction(), bd3_reduction(), bdr_reduction(), bea_save(), bfs(), bound_reduce(), buildsolgraph(), chain2Reduction(), cnsAdvReduction(), compute_sd(), computeDegConsTree(), computeSteinerTreeVnoi(), createVariables(), da_reduce(), daPc_reduce(), degree_test(), degree_test_hc(), degree_test_mw(), degree_test_pc(), degree_test_sap(), dfsorder(), do_prizecoll_trivial(), edge_remove(), extendSteinerTreePcMw(), get2next(), get3next(), get4next(), getnext4tterms(), getRSD(), getSD(), graph_copy(), graph_edge_add(), graph_edge_del(), graph_edge_hide(), graph_edge_redirect(), graph_free(), graph_ident(), graph_init(), graph_knot_contract(), graph_knot_contractpc(), graph_mincut_exec(), graph_pack(), graph_path_exec(), graph_path_execX(), graph_path_st(), graph_resize(), graph_show(), graph_sol_valid(), graph_trail(), graph_uncover(), graph_valid(), graph_valid2(), hcrbound_reduce(), hcrcbound_reduce(), hopbound_reduce(), initialise(), lca(), ledge_reduction(), nnpReduction(), nodeIsCrucial(), npvReduction(), nv_reduction(), nv_reductionAdv(), nvsl_reduction(), pcgraphtrans(), prize_subtract(), SCIP_DECL_HEUREXEC(), SCIP_DECL_PROPEXEC(), SCIPdualAscentPcStp(), SCIPheurComputeSteinerTree(), SCIPheurImproveSteinerTree(), SCIPheurPruneDegConsSteinerTree(), SCIPheurPrunePCSteinerTree(), SCIPheurPruneSteinerTree(), SCIPprobdataPrintGraph2(), SCIPvalidateStpSol(), SCIPwriteStp(), sd2_reduction(), sd_red(), sd_reduction(), sddeltable(), sdpaths(), sdpc_reduction(), sdsp_reduction(), sdsp_sap_reduction(), sep_flow(), sl_reduction(), stp_save(), trail(), traverseChain(), trydg1edgepc(), voronoi(), voronoi_dist(), voronoi_extend(), voronoi_extend2(), voronoi_radius(), voronoi_repair(), voronoi_repair_mult(), voronoi_slrepair(), voronoi_terms(), and voronoiSteinerTreeExt().

int* GRAPH::orghead

Array [0..edges-1] of node-number of head of edge [i] prior to reduction

Definition at line 96 of file grph.h.

Referenced by graph_free(), graph_init(), graph_init_history(), graph_pack(), pcgraphtrans(), and SCIPprobdataWriteSolution().

int GRAPH::orgknots

Count of nodes prior to graph reduction

Definition at line 62 of file grph.h.

Referenced by graph_copy(), graph_init(), graph_pack(), pcgraphtrans(), SCIP_DECL_HEUREXEC(), SCIPprobdataCreate(), and SCIPprobdataWriteSolution().

int* GRAPH::orgtail

Array [0..edges-1] of node-number of tail of edge [i] prior to reduction

Definition at line 95 of file grph.h.

Referenced by graph_free(), graph_init(), graph_init_history(), graph_pack(), pcgraphtrans(), and SCIPprobdataWriteSolution().

int* GRAPH::outbeg

Array [0..nodes-1] with starting slot index for the oeat array, -1 if not used

Definition at line 77 of file grph.h.

Referenced by ansadv2Reduction(), ansadvReduction(), ansReduction(), bd3_reduction(), bdr_reduction(), bfs(), bound_reduce(), buildsolgraph(), chain2Reduction(), cnsAdvReduction(), compTMstarts(), compute_sd(), computeDegConsTree(), computeSteinerTreeVnoi(), createVariables(), da_reduce(), daPc_reduce(), degree_test(), degree_test_hc(), degree_test_mw(), degree_test_pc(), degree_test_sap(), deleteterm(), dfsorder(), do_prizecoll_trivial(), edge_remove(), extendSteinerTreePcMw(), get2next(), get3next(), get4next(), getnext4tterms(), getRSD(), getSD(), graph_copy(), graph_edge_add(), graph_edge_redirect(), graph_free(), graph_ident(), graph_init(), graph_knot_add(), graph_knot_contract(), graph_knot_contractpc(), graph_mincut_exec(), graph_path_exec(), graph_path_execX(), graph_path_st(), graph_resize(), graph_show(), graph_sol_valid(), graph_trail(), graph_uncover(), graph_valid(), graph_valid2(), hcrbound_reduce(), hcrcbound_reduce(), hopbound_reduce(), initialise(), lca(), ledge_reduction(), nnpReduction(), nodeIsCrucial(), npvReduction(), nv_reduction(), nv_reductionAdv(), nvsl_reduction(), prize_subtract(), SCIP_DECL_HEUREXEC(), SCIP_DECL_PROPEXEC(), SCIPdualAscentPcStp(), SCIPdualAscentStp(), SCIPheurComputeSteinerTree(), SCIPheurImproveSteinerTree(), SCIPheurPruneDegConsSteinerTree(), SCIPheurPrunePCSteinerTree(), SCIPheurPruneSteinerTree(), SCIPvalidateStpSol(), SCIPwriteStp(), sd2_reduction(), sd_red(), sd_reduction(), sddeltable(), sdpaths(), sdpc_reduction(), sdsp_reduction(), sdsp_sap_reduction(), sep_flow(), sl_reduction(), trail(), traverseChain(), trydg1edgepc(), voronoi(), voronoi_dist(), voronoi_extend(), voronoi_extend2(), voronoi_radius(), voronoi_repair(), voronoi_repair_mult(), voronoi_slrepair(), voronoi_terms(), and voronoiSteinerTreeExt().

IDX** GRAPH::pcancestors

list of ancestor edges to each node (to keep track of PC/MW reductions )

Definition at line 84 of file grph.h.

Referenced by graph_free(), graph_init(), graph_init_history(), graph_knot_contractpc(), graph_pack(), SCIPprobdataWriteSolution(), and trydg1edgepc().

int* GRAPH::source

Array [0..layers-1] of knot number of the root of network [i], -1 if unknown

Definition at line 67 of file grph.h.

Referenced by bd3_reduction(), bound_reduce(), buildsolgraph(), central_terminal(), compTMstarts(), computeSteinerTree(), computeSteinerTreeVnoi(), createConstraints(), createPrizeConstraints(), createVariables(), cut_add(), da_reduce(), daPc_reduce(), degree_test_hc(), degree_test_mw(), degree_test_pc(), degree_test_sap(), deleteterm(), do_prizecoll_trivial(), extendSteinerTreePcMw(), get2next(), get3next(), get4next(), graph_copy(), graph_free(), graph_grid_create(), graph_init(), graph_knot_contract(), graph_knot_contractpc(), graph_load(), graph_obstgrid_create(), graph_pack(), graph_PcSapCopy(), graph_PcToSap(), graph_prize_transform(), graph_resize(), graph_rootprize_transform(), graph_sol_valid(), graph_valid(), graph_valid2(), hcrbound_reduce(), hcrcbound_reduce(), hopbound_reduce(), ledge_reduction(), level0(), maxprize(), nodeIsCrucial(), nv_reduction(), nv_reductionAdv(), nvsl_reduction(), pcgraphorg(), pcgraphtrans(), prize_subtract(), probdataPrintGraph(), rptReduction(), SCIP_DECL_HEUREXEC(), SCIP_DECL_PARAMCHGD(), SCIP_DECL_PROPEXEC(), SCIPdualAscentAddCutsStp(), SCIPdualAscentPcStp(), SCIPdualAscentStp(), SCIPheurComputeSteinerTree(), SCIPheurImproveSteinerTree(), SCIPheurPruneDegConsSteinerTree(), SCIPheurPrunePCSteinerTree(), SCIPheurPruneSteinerTree(), SCIPprobdataAddNewSol(), SCIPprobdataCreate(), SCIPprobdataGetRoot(), SCIPprobdataPrintGraph2(), SCIPprobdataWriteSolution(), SCIPvalidateStpSol(), SCIPwriteStp(), sd_red(), sd_reduction(), sdpc_reduction(), sep_2cut(), sep_flow(), sl_reduction(), trail(), trydg1edgepc(), voronoi(), and voronoi_radius().

int* GRAPH::term

Array [0..nodes-1] of networknumber for knot [i], -1 if [i] is never a terminal

Definition at line 69 of file grph.h.

Referenced by ansadv2Reduction(), ansadvReduction(), bd3_reduction(), bdr_reduction(), bea_save(), bound_reduce(), buildsolgraph(), central_terminal(), chain2Reduction(), cnsAdvReduction(), compTMstarts(), compute_sd(), computeDegConsTree(), computeSteinerTree(), computeSteinerTreeVnoi(), createConstraints(), createVariables(), da_reduce(), daPc_reduce(), degree_test(), degree_test_hc(), degree_test_mw(), degree_test_pc(), degree_test_sap(), deleteterm(), do_prizecoll_trivial(), extendSteinerTreePcMw(), get2next(), get3next(), get4next(), getnext4tterms(), getRSD(), getSD(), graph_copy(), graph_free(), graph_ident(), graph_init(), graph_knot_add(), graph_knot_chg(), graph_knot_contract(), graph_knot_contractpc(), graph_load(), graph_maxweight_transform(), graph_MwcsToSap(), graph_pack(), graph_path_execX(), graph_path_st(), graph_PcSapCopy(), graph_PcToSap(), graph_prize_transform(), graph_resize(), graph_rootprize_transform(), graph_show(), graph_sol_valid(), graph_valid(), graph_valid2(), hcrbound_reduce(), hcrcbound_reduce(), hopbound_reduce(), ledge_reduction(), level0(), maxprize(), nodeIsCrucial(), npvReduction(), nv_reduction(), nv_reductionAdv(), nvsl_reduction(), pcgraphorg(), pcgraphtrans(), prize_subtract(), probdataPrintGraph(), rptReduction(), SCIP_DECL_CONSPROP(), SCIP_DECL_HEUREXEC(), SCIP_DECL_PARAMCHGD(), SCIP_DECL_PROPEXEC(), SCIPdualAscentAddCutsStp(), SCIPdualAscentPcStp(), SCIPdualAscentStp(), SCIPheurComputeSteinerTree(), SCIPheurImproveSteinerTree(), SCIPheurPruneDegConsSteinerTree(), SCIPheurPrunePCSteinerTree(), SCIPheurPruneSteinerTree(), SCIPprobdataAddNewSol(), SCIPprobdataCreate(), SCIPprobdataPrintGraph2(), SCIPprobdataWriteSolution(), SCIPvalidateStpSol(), SCIPwriteStp(), sd2_reduction(), sd_red(), sd_reduction(), sddeltable(), sdpaths(), sdpc_reduction(), sdsp_reduction(), selectBranchingVertex(), selectdiffsols(), sep_2cut(), sep_flow(), sl_reduction(), stp_save(), traverseChain(), trydg1edgepc(), utdist(), voronoi_dist(), voronoi_extend2(), voronoi_radius(), voronoi_slrepair(), voronoi_terms(), and voronoiSteinerTreeExt().