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,
87 inline int num_nodes()
const
93 inline int capacity()
const
107 inline double distance(
112 return ( i > j ? _distance[i][j] : _distance[j][i] );
116 inline SCIP_VAR* arc_var(
121 return ( i > j ? _arc_var[i][j] : _arc_var[j][i] );
125 inline SCIP_CONS* arc_con(
130 return ( i > j ? _arc_con[i][j] : _arc_con[j][i] );
134 inline SCIP_CONS* part_con(
142 inline bool have_edge(
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;