Hi all,<br><div class="gmail_quote"><br>I'm trying to get working a very little column generation example (3 variables and constraints). I use the BCP_vg_user class (generate_vars,...) instead of using those methods from BCP_lp_users (generate_vars_in_lp,...). As I try to use that class (my own subclass of BCP_vg_user), my code breaks because generate_vars is never called.<br>
<br>The odd part of the problem is that USER_initialize::vg_init (my subclass) is never being called neither (and therefore it's kind of normal that generate_vars never gets called). I've been tracing Bcp's code but I didn't find why.<br>
<br>In the following debug excerpt , you can see that my lp_init and tm_init methods are called (in bold) but not the vg_init nor generate_vars (lines starting with :::::: have been added by me):<br><br>BCP_parameters::read_from_stream Scanning parameter stream.<br>
BCP_parameters::read_from_stream Scanning parameter stream.<br>BCP_parameters::read_from_stream Scanning parameter stream.<br>BCP_parameters::read_from_stream Scanning parameter stream.<b><br>:::::: Creating TreeManager</b><br>
:::::: TreeManager::initialize_core done<br>:::::: TreeManager::create_root done<br><b>:::::: Creating LinearProgramSolver<br></b> LP: Default unpack_module_data() executed.<br>:::::: LinearProgramSolver::getOsiSolverInterface done<br>
##########################################################<br>TM: Starting phase 0<br>##########################################################<br>:::::: TreeManager::init_new_phase<br><br>LP: **** Processing NODE 0 on LEVEL 0 (from TM) ****<br>
LP: Default initialize_new_search_tree_node() executed.<br> LP: Default purge_slack_pool() executed.<br><br>LP: *** Starting iteration 1 ***<br> LP: Default prepare_for_optimization() executed.<br>Clp0000I Optimal - objective value 0<br>
LP: Matrix size: 3 vars x 3 cuts<br>LP: Solution value: 0.0000 / 2 , 0 <br> LP: Default display_lp_solution() executed.<br> LP : Displaying LP solution (RelaxedSolution) :<br> LP : Displaying solution :<br> LP: Default test_feasibility() executed.<br>
LP: Default test_full() executed.<br> LP: Default pack_feasible_solution() executed.<br> TM: Default unpack_feasible_solution() executed.<br>TM: Solution found at 0.001 sec.<br>TM: Solution value: 0.000000 (best solution value so far: infinity)<br>
LP: Default logical_fixing() executed.<br>LP: Row effectiveness: rownum: 3 ineffective: 3<br>LP: Number of leftover cuts: 0<br> LP: Default generate_cuts_in_lp() executed.<br>LP: Number of cuts received from CG: 0<br>
LP: Total number of cuts in local pool: 0<br>LP: Number of leftover vars: 0<br> LP: Default generate_vars_in_lp() executed.<br>LP: Number of vars received from VG: 0<br>LP: Total number of vars in local pool: 0<br>
LP: Default generate_heuristic_solution() executed.<br>LP: In iteration 1 BCP generated 0 cuts and 0 vars before calling branch()<br> LP: Default display_lp_solution() executed.<br> LP : Displaying LP solution (FinalRelaxedSolution) :<br>
LP : Displaying solution :<br> LP: Default select_branching_candidates() executed.<br> LP : No var/cut in pool but couldn't select branching object.<br><br><br>Thanks in advance. An example using BCP_vg_user will do the trick too :-D (if I get mine's working I would be glad to contribute it to COIN-OR).<br>
<font color="#888888">
<br>Dani.<br></font><br>PS: I can show the code and the makefile on demand basis... it's too cumbersome to post it here . I'm using Bcp <a href="http://1.1.3." target="_blank">1.1.3</a><br>
<br>
</div><br><br clear="all"><br>-- <br>Dani.