[GIT] ppl/ppl(sparse_matrices): MIP_Problem: fix bug in steepest_edge_float_entering_index().

Module: ppl/ppl Branch: sparse_matrices Commit: 4647ea26e0af205e0c63547c4e5a3a0b23bc8ec3 URL: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=4647ea26e0af2...
Author: Marco Poletti poletti.marco@gmail.com Date: Wed Apr 14 21:20:49 2010 +0200
MIP_Problem: fix bug in steepest_edge_float_entering_index().
---
src/MIP_Problem.cc | 31 ++++++++++++++++--------------- 1 files changed, 16 insertions(+), 15 deletions(-)
diff --git a/src/MIP_Problem.cc b/src/MIP_Problem.cc index cb8d7c0..a7892fb 100644 --- a/src/MIP_Problem.cc +++ b/src/MIP_Problem.cc @@ -991,23 +991,24 @@ PPL::MIP_Problem::steepest_edge_float_entering_index() const { = tableau_i.unordered_end(); if (j != j_end && (*j).first == 0) ++j; - for ( ; j != j_end && (*j).first < tableau_num_columns_minus_1; ++j) { - const dimension_type j_index = (*j).first; - const Coefficient& cost_j = working_cost[j_index]; - const Coefficient& tableau_ij = (*j).second; - if (sgn(cost_j) == cost_sign) { - WEIGHT_BEGIN(); - if (tableau_ij != 0) { - PPL_ASSERT(tableau_i_base_i != 0); - assign(float_tableau_value, tableau_ij); - assign(float_tableau_denum, tableau_i_base_i); - float_tableau_value /= float_tableau_denum; - float_tableau_value *= float_tableau_value; - challenger_dens[j_index] += float_tableau_value; + for ( ; j != j_end; ++j) + if ((*j).first < tableau_num_columns_minus_1) { + const dimension_type j_index = (*j).first; + const Coefficient& cost_j = working_cost[j_index]; + const Coefficient& tableau_ij = (*j).second; + if (sgn(cost_j) == cost_sign) { + WEIGHT_BEGIN(); + if (tableau_ij != 0) { + PPL_ASSERT(tableau_i_base_i != 0); + assign(float_tableau_value, tableau_ij); + assign(float_tableau_denum, tableau_i_base_i); + float_tableau_value /= float_tableau_denum; + float_tableau_value *= float_tableau_value; + challenger_dens[j_index] += float_tableau_value; + } + WEIGHT_ADD_MUL(338, tableau_num_rows); } - WEIGHT_ADD_MUL(338, tableau_num_rows); } - } } for (dimension_type j = tableau.num_columns() - 1; j-- > 1; ) { const Coefficient& cost_j = working_cost[j];
participants (1)
-
Marco Poletti