Skip to content

Commit 40d27fc

Browse files
committed
Merge branch '3749-fix-consprop-count' into 'v91-bugfix'
fix count of bound changes from propagators in SCIPnodeGetConsProps() See merge request integer/scip!3513
2 parents 2c18607 + 485c545 commit 40d27fc

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

Diff for: CHANGELOG

+2-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ Fixed bugs
2929
- fixed write of strings with at least 1024 characters when compiling with MSVS 2015 (14.0) or later (still an issue with earlier MSVS, which will not be fixed)
3030
- keep epsilon coefficients in applyFixings() of cons_linear.c until multiples are merged to avoid loss of relevant contributions
3131
- fixed that some variable type changes were not accounted correctly in presolve of linear constraints
32-
- fix constraint sorting in pp-orbitope upgrade in symmetry code
32+
- fix constraint sorting in setpp-orbitope upgrade in symmetry code
33+
- fixed that SCIPnodeGetConsProps() also counted bound changes from propagators
3334

3435
Performance improvements
3536
------------------------

Diff for: src/scip/tree.c

+6-7
Original file line numberDiff line numberDiff line change
@@ -7967,28 +7967,27 @@ void SCIPnodeGetConsProps(
79677967

79687968
first_dual = i;
79697969

7970-
/* count the number of bound changes because of constraint propagation and propagation */
7971-
for(i = nskip; i < first_dual; i++)
7970+
/* count the number of bound changes because of constraint propagation */
7971+
for( i = nskip; i < first_dual; i++ )
79727972
{
79737973
assert(boundchgs[i].boundchgtype != SCIP_BOUNDCHGTYPE_BRANCHING);
79747974

7975-
if( (boundchgs[i].boundchgtype == SCIP_BOUNDCHGTYPE_CONSINFER && boundchgs[i].data.inferencedata.reason.cons != NULL)
7976-
|| (boundchgs[i].boundchgtype == SCIP_BOUNDCHGTYPE_PROPINFER && boundchgs[i].data.inferencedata.reason.prop != NULL) )
7975+
if( (boundchgs[i].boundchgtype == SCIP_BOUNDCHGTYPE_CONSINFER && boundchgs[i].data.inferencedata.reason.cons != NULL) )
79777976
{
79787977
if( boundchgs[i].var->vartype != SCIP_VARTYPE_CONTINUOUS )
79797978
(*nconspropvars)++;
79807979
}
79817980
else if( (boundchgs[i].boundchgtype == SCIP_BOUNDCHGTYPE_CONSINFER && boundchgs[i].data.inferencedata.reason.cons == NULL)
7982-
|| (boundchgs[i].boundchgtype == SCIP_BOUNDCHGTYPE_PROPINFER && boundchgs[i].data.inferencedata.reason.prop == NULL))
7981+
|| (boundchgs[i].boundchgtype == SCIP_BOUNDCHGTYPE_PROPINFER && boundchgs[i].data.inferencedata.reason.prop == NULL) )
79837982
break;
79847983
}
79857984

7986-
/* if the arrays have enough space store the branching decisions */
7985+
/* if the arrays have enough space store the constraint propagations */
79877986
if( conspropvarssize >= *nconspropvars )
79887987
{
79897988
int pos;
79907989

7991-
for(i = nskip, pos = 0; i < first_dual; i++)
7990+
for( i = nskip, pos = 0; i < first_dual; i++ )
79927991
{
79937992
if( boundchgs[i].boundchgtype == SCIP_BOUNDCHGTYPE_CONSINFER && boundchgs[i].data.inferencedata.reason.cons != NULL )
79947993
{

0 commit comments

Comments
 (0)