[Scip] maxstallrounds question

James Cussens james.cussens at york.ac.uk
Fri Oct 24 10:00:17 CEST 2014


Hi SCIPers,

I don't understand the maxstallrounds parameter properly.

The documentation says:
# maximal number of consecutive separation rounds without objective or
integrality improvement (-1: no additional restriction)

"objective" I think I understand. I assume it means that if we get a
new primal solution then the separation round at which it is found is
not counted as "stalled".
Correct me if I'm wrong.

But I don't understand "integrality improvement". Is this connected to
the number of fractional variables in LP solutions?
Suppose maxstallrounds is at its default value of 5. Does this mean
that for the past 5 separation rounds the number of fractional
variables does not go down.
Or does it mean that on a given round, if the number of fractional
variables 5 rounds earlier was smaller it is time to truncate
(assuming no new primal solution)?

Here is an example, which may help with an explanation.

  68.0s|     1 |     0 | 15315 | 477M|   0 |   0 | 808 |5474 |
18k|9650 |7069 |5881 |  46 |   0 |-1.738554e+05 |-1.741823e+05 |
0.19%
  68.3s|     1 |     0 | 15315 | 477M|   0 |   0 | 808 |5474 |
18k|9650 |7069 |5881 |  46 |   0 |-1.738554e+05 |-1.741823e+05 |
0.19%
  70.5s|     1 |     0 | 15703 | 499M|   0 |   0 | 786 |5474 |  18k|
10k|7468 |6213 |  46 |   0 |-1.738589e+05 |-1.741823e+05 |   0.19%
k70.7s|     1 |     0 | 15703 | 500M|   1 |   0 |   - |5474 |  18k|
10k|7468 |6213 |  46 |   0 |-1.738589e+05 |-1.741582e+05 |   0.17%
time | node  | left  |LP iter| mem |depth|mdpt |frac |cons |cols |rows
|cuts |pool |confs|strbr|  dualbound   | primalbound  |  gap
  70.8s|     1 |     0 | 15703 | 499M|   0 |   0 | 786 |5474 |  18k|
10k|7468 |6213 |  46 |   0 |-1.738589e+05 |-1.741582e+05 |   0.17%
  71.2s|     1 |     0 | 15703 | 499M|   0 |   0 | 786 |5474 |  18k|
10k|7468 |6213 |  46 |   0 |-1.738589e+05 |-1.741582e+05 |   0.17%
  73.4s|     1 |     0 | 16186 | 521M|   0 |   0 | 855 |5474 |  18k|
10k|7837 |6528 |  46 |   0 |-1.738643e+05 |-1.741582e+05 |   0.17%
 73.8s|     1 |     0 | 16186 | 521M|   0 |   0 | 855 |5474 |  18k|
10k|7837 |6528 |  46 |   0 |-1.738643e+05 |-1.741582e+05 |   0.17%
 75.6s|     1 |     0 | 16490 | 530M|   0 |   0 | 827 |5474 |  18k|
10k|8050 |6720 |  46 |   0 |-1.738658e+05 |-1.741582e+05 |   0.17%
 75.9s|     1 |     0 | 16490 | 530M|   0 |   0 | 827 |5474 |  18k|
10k|8050 |6720 |  46 |   0 |-1.738658e+05 |-1.741582e+05 |   0.17%
Truncate separation round because of stalling (5 stall rounds).

I am looking for a way to start branching when cutting makes little or
no progress in reducing (I'm maximising) the dual bound.
maxstallrounds seems an indirect way of doing
this - is there something more direct?

Thanks,

James

-- 
James Cussens
Dept of Computer Science &
York Centre for Complex Systems Analysis
Room 326, The Hub, Deramore Lane            Tel    +44 (0)1904 325371
University of York                                        Fax  +44
(0)1904 500159
York YO10 5GE, UK                               http://www.cs.york.ac.uk/~jc
http://www.york.ac.uk/docs/disclaimer/email.htm


More information about the Scip mailing list