help-glpk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to retrieve intermediate solutions of MIP problems without inter


From: Heinrich Schuchardt
Subject: Re: How to retrieve intermediate solutions of MIP problems without interrupting the solver?
Date: Mon, 10 Aug 2020 11:56:08 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0

On 10.08.20 11:47, Domingo Alvarez Duarte wrote:
> Hello Yuri !
>
> Following the code again I found this lines in examples/glpsol.c:
>
> ====
>
> #ifdef GLP_CB_FUNC /* 05/IV-2016 */
>          {  extern void GLP_CB_FUNC(glp_tree *, void *);
>             csa->iocp.cb_func = GLP_CB_FUNC;
>             csa->iocp.cb_info = NULL;
>          }
> #endif
>
> ====
>
> It seems that the user callback can be set that way but could not found
> any other reference so far.


The callback is described in chapter 5.1.1 "Using the callback routine"
of doc/glpk.pdf. There is a reason code

GLP_IBINGO — better integer solution found.

Best regards

Heinrich


>
> Cheers !
>
> On 9/8/20 20:04, Yuri wrote:
>> For my problem Glpk quickly finds some solution and then goes on to
>> find better solutions and this takes a lot of time.
>>
>>
>> I'm interested in all solutions, beginning from the first integer
>> solution in finds.
>>
>> I couldn't find a callback that is called when a better solution
>> becomes known.
>>
>>
>> For example, in this run it called glp_intopt which progressively
>> found 3 solutions, each better than the previous one:
>>
>> Long-step dual simplex will be used
>> +   633: mip =     not found yet >=              -inf (1; 0)
>> +  1006: >>>>>   1.098691667e+01 >= 5.512339583e+00  49.8% (18; 0)
>> +  4134: >>>>>   1.098525000e+01 >= 6.681520833e+00  39.2% (31; 22)
>> +  7210: >>>>>   1.098458333e+01 >= 1.043275926e+01   5.0% (24; 87)
>> +  7654: mip =   1.098458333e+01 >=     tree is empty   0.0% (0; 195)
>> INTEGER OPTIMAL SOLUTION FOUND
>>
>> I am looking for access to all of  them as they become available.
>>
>>
>> Yuri
>>
>>
>>
>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]