Skip to content

Commit 2642753

Browse files
authored
fix: primal obj value bug at postsolve (#57)
1 parent bc4219b commit 2642753

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

src/presolve.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ void pslp_postsolve(cupdlpx_presolve_info_t *info,
184184
memcpy(result->primal_solution, info->presolver->sol->x, original_prob->num_variables * sizeof(double));
185185
memcpy(result->dual_solution, info->presolver->sol->y, original_prob->num_constraints * sizeof(double));
186186
memcpy(result->reduced_cost, info->presolver->sol->z, original_prob->num_variables * sizeof(double));
187-
result->primal_objective_value = info->presolver->sol->obj;
187+
// result->primal_objective_value = info->presolver->sol->obj; // This is a bug in PSLP. We don't need to updated primal_objective_value since offset has been updated during presolve. Therefore, the original problem and reduced problem have the same objective value.
188188
result->presolve_time = info->presolve_time;
189189
// if (info->presolver->stats != NULL) {
190190
// result->presolve_stats = *(info->presolver->stats);

0 commit comments

Comments
 (0)