[SCIP] Minlp doesn't finish running

Marc Pfetsch pfetsch at mathematik.tu-darmstadt.de
Fri Feb 23 19:34:01 CET 2024



Dear Pedro,

I suppose there is no easy answer to your question. In general one 
cannot guarantee a limited running time.

Two - rather high level - possibilities for improvement are:

- You can try to design a primal heuristic that helps SCIP if the 
problem lies in finding a good solution.

- You can check whether you can strengthen the formulation in order to 
improve the dual bounds. The easiest possibility is to check whether you 
can improve the variable bounds.

Best

Marc




On 20/02/2024 21:28, Pedro Matias Carrancio wrote:
> Hello all.
> 
> I am working with a MINLP. It has N variables, a linear objective 
> function (actually it is the sum of N 5-parameter logistics curves but 
> by substitution of variables the non-linearities were taken to 
> constraints) and N+1 constraints (N to linearize the function objective 
> and 1 specific to the problem)
> 
> I ran several instances of the same problem ok.  Around 90 cases, with 
> gap <=1e-04 and obtaining maximum response times of 15 sec. Even some of 
> them have more than 100 variables.
> 
> But particularly this example of 85 variables is giving me problems to 
> obtain a quality response and desirable time. It executes it with a time 
> limit of 360,000 seconds (100 hours) and it stops for timeout with a gap 
> of 2.5%, far from the gap that we consider to be good quality.
> 
> I attach a .cip file with the example and the log.
> 
> In Python it can be executed with this code.
> 
> ######################################
> 
> /import pyscipopt as pyscip/
> 
> /import os /
> 
> /if os.path.exists('log_scip_5pl.log'):/
> 
> /    os.remove('log_scip_5pl.log')/
> 
> /model=pyscip.Model()/
> 
> /model.hideOutput(quiet=True)/
> 
> /model.setParam('limits/gap', 1e-04)/
> 
> /model.setParam('display/verblevel', 5)/
> 
> /model.setParam('limits/time', 300)/
> 
> /model.setLogfile('log_scip_5pl.log')/
> 
> /model.setParam('numerics/feastol', 1e-04)/
> 
> /model.setParam('numerics/dualfeastol', 1e-04)/
> 
> /model.readProblem('model_5pl.cip')/
> 
> /model.optimize()/
> 
> ######################################
> 
> Can you help me understand what alternatives I have to improve this 
> condition?
> 
> Thank you in advance for your help.
> 
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> https://listserv.zib.de/mailman/listinfo/scip


More information about the Scip mailing list