[SCIP] reoptimization

James Cussens james.cussens at york.ac.uk
Tue Sep 20 16:59:08 CEST 2016


Hi Jakob,

I got the patch applied by doing:

git apply --check --ignore-space-change --ignore-whitespace
0001-fix-bug-while-separating-previous-optimal-solution-i.patch

And the reoptimization/sepabestsol parameter is now working.

Thanks again for the patch!

James


On 20 September 2016 at 12:00, Jakob Witzig <witzig at zib.de> wrote:

> Hi James!
>
> Please use the attached patch to fix the issue in your SCIP installation.
>
> Please check whether the patch is applicable first:
>
>   git apply --check 0001-fix-bug-while-separating-
> previous-optimal-solution-i.patch
>
> If everything works, execute the command again without '--check' and
> compile your SCIP installation subsequently.
>
> Cheers,
> Jakob
>
>
> Am 15.09.2016 um 17:19 schrieb Jakob Witzig:
>
>> Hi James,
>>
>> this sounds strange. Which SCIP version do you use? Could you send me
>> the original problem file? Otherwise it is hard to see what goes wrong.
>>
>> Cheers,
>> Jakob
>>
>>
>> Am 15.09.2016 um 16:47 schrieb James Cussens:
>>
>>> Dear Jakob,
>>>
>>>
>>> On 15 September 2016 at 14:14, Jakob Witzig <witzig at zib.de
>>> <mailto:witzig at zib.de>> wrote:
>>>
>>>     Hi James,
>>>
>>>     what do you mean exactly with you suspect you doing it wrong? Do you
>>>     got wrong results?
>>>
>>>     Yes, the parameter mentioned below should exactly do the same as you
>>>     are doing by hand. Do you observe any differences between using the
>>>     parameter and separating OPTSOL by hand?
>>>
>>>
>>>
>>> I do observe a difference. When I set reoptimization/sepabestsol = TRUE
>>> and just do:
>>> Do k times:
>>> ---Solve problem    SCIP_CALL( SCIPsolve(scip) );
>>> ---Inspect best solution: SCIP_CALL( SCIPprintSol(scip,
>>> SCIPgetBestSol(scip), NULL, FALSE) );
>>> ---Inspect best solution another way: SCIP_CALL( SCIPprintSol(scip,
>>> SCIPgetReoptLastOptSol(scip), NULL, FALSE) );
>>> ---SCIP_CALL( SCIPfreeTransform(scip) );
>>>
>>> With one exception, I just get the same optimal solution on each
>>> iteration. It is as if the parameter is having no effect.
>>> The exception is that the first call to SCIP_CALL( SCIPprintSol(scip,
>>> SCIPgetReoptLastOptSol(scip), NULL, FALSE) );  prints out an infeasible
>>> solution.
>>>
>>> Perhaps I am looking in the wrong place for optimal solutions for k>1 or
>>> somehow preventing the best solutions from each iteration being
>>> separated.
>>>
>>> James
>>>
>>>
>>>
>>>
>>>     Cheers,
>>>     Jakob
>>>
>>>
>>>     Am 15.09.2016 um 14:03 schrieb James Cussens:
>>>
>>>         Dear SCIPers,
>>>
>>>         I am using reoptimization to solve a series of binary IPs, and I
>>>         suspect
>>>         I am doing it wrong.
>>>
>>>         My problem is analogous, I think, to the k-Constrained
>>> Shortest Path
>>>         Problem mentioned in Section 4.2 of Jakob Witzig's master
>>>         thesis. For my
>>>         original IP I want to get the optimal solution, then the 2nd
>>>         best, then
>>>         3rd best and so on. The objective function never changes.
>>>
>>>         I have set reoptimization/enable to TRUE and then do the
>>> following:
>>>
>>>         Do k times:
>>>         ---Solve problem    SCIP_CALL( SCIPsolve(scip) );
>>>         ---store information sufficient to identify optimal solution
>>> OPTSOL
>>>         ---SCIP_CALL( SCIPfreeTransform(scip) );
>>>         ---add in constraint ruling out just OPTSOL
>>>
>>>         I notice that there is a parameter
>>>         # separate the optimal solution, i.e., for constrained
>>> shortest path
>>>         # [type: bool, range: {TRUE,FALSE}, default: FALSE]
>>>         reoptimization/sepabestsol = FALSE
>>>
>>>         which, I suspect, can be used to do what I am doing 'by hand'.
>>>         Is this
>>>         the case?
>>>
>>>         More generally, I would appreciate knowing the correct recipe
>>>         for doing
>>>         this sort of thing (when using the SCIP callable library).
>>>
>>>         James
>>>
>>>         --
>>>         James Cussens
>>>         Dept of Computer Science &
>>>         York Centre for Complex Systems Analysis
>>>         Room 326, The Hub, Deramore Lane            Tel    +44 (0)1904
>>>         325371 <tel:%2B44%20%280%291904%20325371>
>>>         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
>>>         <http://www.york.ac.uk/docs/disclaimer/email.htm>
>>>
>>>
>>>         _______________________________________________
>>>         Scip mailing list
>>>         Scip at zib.de <mailto:Scip at zib.de>
>>>         http://listserv.zib.de/mailman/listinfo/scip
>>>         <http://listserv.zib.de/mailman/listinfo/scip>
>>>
>>>
>>>
>>>     --
>>>     Jakob Witzig
>>>
>>>     Zuse Institute Berlin (ZIB)
>>>
>>>     Division Mathematical Optimization and Scientific Information
>>>     Research Group Mathematical Optimization Methods
>>>
>>>     Takustrasse 7
>>>     14195 Berlin
>>>
>>>     Tel. : +49 (0)30 84185-416 <tel:%2B49%20%280%2930%2084185-416>
>>>     Fax  : +49 (0)30 84185-269 <tel:%2B49%20%280%2930%2084185-269>
>>>     email: witzig at zib.de <mailto:witzig at zib.de>
>>>
>>>
>>>
>>>
>>> --
>>> 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
>>>
>>
>>
>>
>
> --
> Jakob Witzig
>
> Zuse Institute Berlin (ZIB)
>
> Division Mathematical Optimization and Scientific Information
> Research Group Mathematical Optimization Methods
>
> Takustrasse 7
> 14195 Berlin
>
> Tel. : +49 (0)30 84185-416
> Fax  : +49 (0)30 84185-269
> email: witzig at zib.de
>



-- 
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.zib.de/pipermail/scip/attachments/20160920/91442d89/attachment.html>


More information about the Scip mailing list