Page 1 of 1

Solver didn't provide marginals for model fulfilment

Posted: Mon Aug 06, 2018 5:27 pm
by lixlz51
Hi everyone,

I used BARON for my MINLP model (linear constraint but non linear objective function) and the solver report shows normal completion and solver did not provide marginals for model fulfilment. Does it mean the solution is not optimal? If so, how should I solve the problem? Thank you very much indeed!

Re: Solver didn't provide marginals for model fulfilment

Posted: Tue Aug 07, 2018 3:14 pm
by dirkse
Hello lixlz51,

Your post raised some questions. First, you don't say anything about yourself (name, affiliation, etc.) This forum isn't intended for anonymous usage.

Second, what do you mean by "model fulfillment"? What is it you would do with the marginal values (for a MINLP) that BARON might return?

-Steve

Re: Solver didn't provide marginals for model fulfilment

Posted: Tue Aug 07, 2018 4:14 pm
by lixlz51
Hi Steve,

Thank you for pointing that out for me! I totally forgot to complete my profile. Basically, I have developed a MINLP model for online order fulfilment for my study. I wanted to check the marginal value to see the shadow price for sensitivity analysis. I used ANTIGONE and it gives marginal but the values are like 2000ish for the decision variables. I am not sure whether I compiled the model correctly now. The solver summary for ANTIGONE says:
Solver status: 1 Normal completion
Model status: 8 Integer solution

Termination status: Global minimum.

Does it mean it is global optimal? Thank you very much indeed!

Re: Solver didn't provide marginals for model fulfilment

Posted: Wed Aug 08, 2018 5:04 pm
by dirkse
The model status of 8 Integer Solution indicates that the solver has found an integer solution, but it is not making the stronger claim that it is the globally optimal solution. This is somewhat at odds with the message "Termination status: Global minimum." that you have in your note. Without seeing the log I could not say more about what ANTIGONE has claimed to find.

The question of whether marginals are returned and how to interpret them is orthogonal to the termination status question: whether the current integer-feasible point is a global optimum or not, the marginals would be computed and interpreted in the same way: the discrete vars are fixed at their current values and the resultant NLP marginals are returned.

HTH,

-Steve

Re: Solver didn't provide marginals for model fulfilment

Posted: Fri Aug 17, 2018 11:43 am
by lixlz51
Hi dirkse,

Thank you so much for the reply. I got a screenshot for the log. I have reduced the the number of stores from 8 to 3 to hopefully understand the mechanism better.

Re: Solver didn't provide marginals for model fulfilment

Posted: Tue Aug 21, 2018 6:09 pm
by dirkse
Hi,

I can get similar output using the procsel model from the GAMS model library, so I'll use that output as an example. Running with defaults (but ANTIGONE as the solver) I get this in the .lst file:

Code: Select all

               S O L V E      S U M M A R Y

     MODEL   process             OBJECTIVE  pr
     TYPE    MINLP               DIRECTION  MAXIMIZE
     SOLVER  ANTIGONE            FROM LINE  96

**** SOLVER STATUS     1 Normal Completion         
**** MODEL STATUS      8 Integer Solution          
**** OBJECTIVE VALUE                1.9231

 RESOURCE USAGE, LIMIT          0.054      1000.000
 ITERATION COUNT, LIMIT         4    2000000000
 EVALUATION ERRORS              0             0

ANTIGONE         25.1.2 r67455 Released Aug  1, 2018 WEI x86 64bit/MS Windows 
-------------------------------------------------------------------------------
ANTIGONE: Algorithms for coNTinuous/Integer Global Optimization; Version 1.1

          Ruth Misener and Christodoulos A. Floudas

          Computer-Aided Systems Laboratory (CASL)
          Department of Chemical & Biological Engineering; Princeton University
-------------------------------------------------------------------------------
 
Termination Status : Global maximum
Best Feasible Point: +1.923099e+00
Best Possible Point: +2.115409e+00
       Relative Gap: +1.000000e-01
The MODEL STATUS of 8 Integer Solution indicates that an integer feasible solution has been found, but that no claim of global optimality is being made. This is consistent with the lines further down about Best Feasible Point, Best Possible Point, and Relative Gap. Unfortunately, the line just above that - Termination Status : Global maximum - is not consistent with what the solver is actually reporting. I'm not sure why that line is there, but I guess it has some history and that this is not the first time someone has been confused by it. If I learn more about that I'll let you know.

If you reduce the relative optimality tolerance (see https://www.gams.com/latest/docs/UG_Opt ... arch=optcr for details) you can get a better bound. If you set it to zero, you can get a model status of 1 Optimal.

HTH,

-Steve

Re: Solver didn't provide marginals for model fulfilment

Posted: Tue Aug 28, 2018 11:36 am
by lixlz51
Dear Steve,

Thank you very much indeed for the illustration and explanation! I shall try with the optimality tolerance reduction and see how it goes. Have a good week!

Cheers,
Lina