[SCIP] Does (may be in the future) SCIP provide checkpoint/restart features?

Yuji Shinano shinano at zib.de
Fri Sep 7 09:53:51 CEST 2018


Dear Vladimir,

It is possible, but if it works well or not depends on the instance to be solved
and how to use ParaSCIP/FiberSCIP. Its check pointing only saves some important
nodes and does not save all open nodes. Therefore, it looks inefficient. However,
the instance to be solved is extremely hard and it takes extremely long time to
solve and you would like to keep running anyway, then it works well. An advantage
is that it allows us to change parameter set for SCIP at restart. If the instance
is extremely hard and SCIP generates a huge search tree, then SCIP would reach the
memory limit. To avoid this, SCIP has a memory saving setting, but it means that the
search strategy switches to depth first search more frequently. In this case,
you can use the check pointing. Until you find a good quality feasible solution,
you set SCIP parameters to focus more on primal side. After that, you can switch
to memory saving settings or even depth-first search. In this way, “ds” instance
was solved for the first time by using ParaSCIP and it was rather solved efficiently
by using check point (see:
https://ieeexplore.ieee.org/document/6969561/)

ParaSCIP/FiberSCIP work a bit differently from SCIP (internally, solving instance is different).
You can see it in the following paper.
https://pubsonline.informs.org/doi/10.1287/ijoc.2017.0762
Especially, you can see the internal instance changes in the Figure 2 in the preprint.
https://opus4.kobv.de/opus4-zib/frontdoor/index/index/docId/4259 (fiberscip-zib.pdf)
Off course, SCIP could provide a check-pointing mechanism, but its implementation should
be different from that of ParaSCIP/FiberSCIP.

You can use checkpoint by using either ParaSCIP or FiberSCIP. On a desktop computer,
FiberSCIP would be easier since you do not have to have MPI. My recommendation is
that just try to use FiberSCIP with check pointing to solve your instance and check
if it works well or not by yourself.

Best,
Yuji

On 2018/09/05 18:11, Ambros Gleixner wrote:
> Dear Vladimir,
> 
> This would certainly be nice to have, but it is not implemented.  I am wondering whether any other 
> MIP solver provides such a feature?
> 
> Your solution of using ParaSCIP probably does not work, unfortunately. ParaSCIP would only save the 
> open nodes in its load coordinator, which, if you run with one SCIP solver, would be the root note 
> of the search tree.  Yuji Shinano might correct me if I am wrong.
> 
> Best,
> Ambros
> 
> 
> Am 01.09.2018 um 00:58 schrieb Vladimir V. Voloshinov:
>> Dear SCIP Team,
>> We could not find in SCIP documentation and in SCIP-console commands anything relating to rather 
>> useful capabilities (for long solving on standalone host)  - "checkpoint/restart" features.
>> May be we missed them ?
>> Or there are some workaround to do so?
>>
>> For example, one can "invent the wheel":
>> ParaSCIP provides "chekpointing".
>> So, it is possible to install some MPI on that "standalone host" and build ParaSCIP there.
>> Now one can run ParaSCIP with only ONE working process (in addition to LoadCoordinator) and use 
>> ParaSCIP checkpoint feature...
>>
>> Why SCIP can not do the same without ParaSCIP code...?
>>
>> Best regards,
>> Vladimir Voloshinov
>>
>>
>> _______________________________________________
>> Scip mailing list
>> Scip at zib.de
>> https://listserv.zib.de/mailman/listinfo/scip
>>
> 


-- 
--------------------------------------------------
Yuji Shinano
Zuse Institute Berlin
Takustrasse 7, 14195 Berlin-Dahlem, Germany
Phone:+49 30 84185-477, Fax:+49 30 84185-269


More information about the Scip mailing list