[SCIP] Scaling the OF and differences between primal bound and resulting OF value

Stefan Vigerske svigerske at gams.com
Fri Mar 12 18:02:16 CET 2021


Hi,

if SCIP solved with a different objective function than AMPL (because 
SCIP treats very small numbers as 0, but AMPL doesn't), then the primal 
bound reported in the SCIP log can be different than the one calculated 
by AMPL.

Stefan

On 3/12/21 1:35 PM, Oreste Fecarotta wrote:
> Dear Stefan,
> thank you for your fast reply. If I understand, the behavior of SCIP 
> with small numbers (x=0 if -10^-9<=x<=10^-9), explains why it 
> differently performs as I use a different number to scale the OF.
> Nevertheless, I do not understand why this implies that the primal bound 
> is different from the final solution. E.g., during the calculation, it 
> shows a primal bound equal to -1.54E-07; then reaches the time limit; 
> finally, the printed OF is -1.04E-07, which is very close to the guess 
> point, without significant improvements.
> 
> Thank you for your help,
> 
> Oreste Fecarotta
> PhD in Hydraulic Engineering
> Assistant Professor in Hydraulic Engineering
> University of Naples "Federico II"
> Via Claudio 21, 80125 Napoli (ITALY)
> - ScopusID:36503779200  
> <https://www.scopus.com/authid/detail.uri?authorId=36503779200>
> - ORCID:0000-0003-0471-8821  <https://orcid.org/0000-0003-0471-8821>
> - WoSID:P-7250-2016  
> <https://publons.com/researcher/1354138/oreste-fecarotta/>
> - web:Docenti unina  <www.docenti.unina.it/oreste.fecarotta>
> - Ord.Ing.NA Sez.A 20328
> - tel: +39-081-7683462
> - fax: +39-081-1683456
> 
> Il 11/03/2021 17:53, Stefan Vigerske ha scritto:
>> Hi,
>>
>> SCIP treats numbers within 1e-9 of zero as zero. If you divided your 
>> objective by 1e12, this would mean that objective coefficients that 
>> were within [-1000,1000] before are now treated as 0 by SCIP.
>>
>> I don't think that there is anything to automatically print the best 
>> solution while solving or to write all solutions to a file at the end, 
>> but if you let AMPL generate a .nl file and then run scipampl on this 
>> .nl file with additional option -i, i.e.,
>>   /path/to/scipampl /path/to/myproblem.nl -i
>> then you will get into the interactive shell of SCIP 
>> (https://www.scipopt.org/doc/html/SHELL.php).
>> In the shell, there is a "display solutions" command that you can use 
>> to print all solutions that were found after a solve to the screen.
>>
>> Stefan
>>
>> On 3/11/21 12:24 PM, Oreste Fecarotta wrote:
>>> Hi,
>>> I'm using SCIP with AMPL, and I have a large problem involving 
>>> thousands of variables and contraints.
>>> I found that I can get some good results
>>> 1) by setting heuristics to aggressive and
>>> 2) Dividing the objective function by a large number (let me say 10^12)
>>>
>>> With my surprise, the improvement in the primal bound that is shown 
>>> during the calculation is lost as I print the OF value once I reach 
>>> the time limit. I cannot understand why this happens. Furthermore, 
>>> this does not happen if I divide the OF by a smaller number (i.e. 
>>> 10^6). Unfortunately, in the latter case, I cannot get the same 
>>> improvement in the solution.
>>>
>>> Could you please help me?
>>> Is there any option to print the best solution found during the 
>>> calculation?
>>> Or to store the whole solution pool?
>>> I found the option gams/dumpsolutions for GAMS, but I'm using AMPL...
>>>
>>> Thank you,
>>>
>>> Oreste Fecarotta
>>> PhD in Hydraulic Engineering
>>> Assistant Professor in Hydraulic Engineering
>>> University of Naples "Federico II"
>>> Via Claudio 21, 80125 Napoli (ITALY)
>>> - ScopusID:36503779200 
>>> <https://www.scopus.com/authid/detail.uri?authorId=36503779200>
>>> - ORCID:0000-0003-0471-8821 <https://orcid.org/0000-0003-0471-8821>
>>> - WoSID:P-7250-2016 
>>> <https://publons.com/researcher/1354138/oreste-fecarotta/>
>>> - web:Docenti unina <www.docenti.unina.it/oreste.fecarotta>
>>> - Ord.Ing.NA Sez.A 20328
>>> - tel: +39-081-7683462
>>> - fax: +39-081-1683456
>>>
>>> Il 20/01/2021 09:31, Franzen, Christian ha scritto:
>>>>
>>>> Hi Ambros.
>>>>
>>>>
>>>> Thanks for your reponse and sorry for answering late. I have 
>>>> "switched off" presolving by including no presolver plugins, hence I 
>>>> only got the presolving code from the propagators and constraint 
>>>> handlers. That seems to work properly. I started to include one 
>>>> presolver plugin after the other and there seems to be a problem 
>>>> with "domcol". It fixed a lot of variables and afterwards my problem 
>>>> is reported to be unbounded. I did not test all presolver plugins 
>>>> yet, but I will try to test all of them by the end of this week. Any 
>>>> idea concerning "domcol"?
>>>>
>>>>
>>>> Regards
>>>> Christian
>>>>
>>>> ------------------------------------------------------------------------ 
>>>>
>>>> *Von:* Scip <scip-bounces at zib.de> im Auftrag von Ambros Gleixner 
>>>> <gleixner at zib.de>
>>>> *Gesendet:* Mittwoch, 13. Januar 2021 21:15
>>>> *An:* scip at zib.de
>>>> *Betreff:* Re: [SCIP] After stopping pricing and doing restart, 
>>>> model is becoming unbounded during presolve?
>>>> Hi Christian,
>>>>
>>>> Strange indeed.  Have you tried to turn off presolving?  Does it still
>>>> happen?  Have you tried to successively activate individual presolvers
>>>> to see when it starts failing?
>>>>
>>>> Best,
>>>> Ambros
>>>>
>>>>
>>>> Am 04.01.21 um 17:10 schrieb Franzen, Christian:
>>>> > Hi Scip Team.
>>>> >
>>>> >
>>>> > Thanks to the help of Gregor, I managed to make SCIP stop pricing 
>>>> after
>>>> > some iterations and doing a restart on the reduced master without
>>>> > pricing. Unfortunately, I am facing some really strang behaviour.
>>>> > Sometime it happens, that my model (for that I already have found a
>>>> > feasible solution), is reported to be unbound. I wrote the 
>>>> corresponding
>>>> > LP files before and after presolving to disk and I see that some
>>>> > variable bounds vanished, which seems to be the reason for the
>>>> > unboundness. Furthermore, some of the objective coefficients changed
>>>> > their sign. Any ideas how or why that is happening during presolving?
>>>> >
>>>> >
>>>> > Regards
>>>> >
>>>> > Christian
>>>> >
>>>> >
>>>> > P.S.: I attach the SCIP log for one of these runs.
>>>> >
>>>> >
>>>> > _______________________________________________
>>>> > Scip mailing list
>>>> > Scip at zib.de
>>>> > https://listserv.zib.de/mailman/listinfo/scip 
>>>> <https://listserv.zib.de/mailman/listinfo/scip>
>>>> >
>>>> _______________________________________________
>>>> Scip mailing list
>>>> Scip at zib.de
>>>> https://listserv.zib.de/mailman/listinfo/scip 
>>>> <https://listserv.zib.de/mailman/listinfo/scip>
>>>>
>>>> _______________________________________________
>>>> Scip mailing list
>>>> Scip at zib.de
>>>> https://listserv.zib.de/mailman/listinfo/scip
>>>
>>>
>>>
>>> _______________________________________________
>>> Scip mailing list
>>> Scip at zib.de
>>> https://listserv.zib.de/mailman/listinfo/scip
>>>
>>
>> _______________________________________________
>> Scip mailing list
>> Scip at zib.de
>> https://listserv.zib.de/mailman/listinfo/scip
> 
> 
> 
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> https://listserv.zib.de/mailman/listinfo/scip
> 



More information about the Scip mailing list