22 #ifndef __SCIP_PRICER_VRP_H__ 23 #define __SCIP_PRICER_VRP_H__ 25 #include "objscip/objscip.h" 26 #include "scip/pub_var.h" 44 const int p_num_nodes,
46 const vector< int >& p_demand,
47 const vector< vector<int> >& p_distance,
48 const vector< vector<SCIP_VAR*> >& p_arc_var,
49 const vector< vector<SCIP_CONS*> >& p_arc_con,
50 const vector<SCIP_CONS* >& p_part_con
72 SCIP_RETCODE add_tour_variable(
78 double find_shortest_tour(
79 const vector< vector<double> >& length,
112 return ( i > j ? _distance[i][j] : _distance[j][i] );
121 return ( i > j ? _arc_var[i][j] : _arc_var[j][i] );
130 return ( i > j ? _arc_con[i][j] : _arc_con[j][i] );
148 return ( SCIPvarGetUbLocal( arc_var(i, j) ) > 0.5 );
154 const int _num_nodes;
156 const vector< int > _demand;
157 const vector< vector<int> > _distance;
159 vector< vector<SCIP_VAR*> > _arc_var;
160 vector< vector<SCIP_CONS*> > _arc_con;
161 vector<SCIP_CONS* > _part_con;
bool have_edge(const int i, const int j) const
double distance(const int i, const int j) const
SCIP_DECL_PRICERINIT(ObjPricerVRP::scip_init)
int demand(const int i) const
SCIP_VAR * arc_var(const int i, const int j) const
SCIP_DECL_PRICERFARKAS(ObjPricerVRP::scip_farkas)
SCIP_DECL_PRICERREDCOST(ObjPricerVRP::scip_redcost)
SCIP_CONS * part_con(const int i) const
SCIP_CONS * arc_con(const int i, const int j) const