Skip to main content

I want to to solve several instances of a model with modified input data. This varied input data usually only affects the coefficients; but, it might affect the number of variables and constraints as well. Ideally, the varied instance of the model should use a warm start from the last solution to reduce run-times. 

I am a bit familiar with GMP functions. However, I am not sure how to effectively implement such procedure. 

I was wondering if AIMMS has something similar to Gather-Update-Solve-Scatter (GUSS) syntax in GAMS. 

I would appreciate your comments :)

Hi ​@afattahi. How to warm start a model depends on the model type (LP or MIP). For LP, if the solver is using the primal or dual simplex algorithm then you should set the Solvers General option 'accept basis’ to 1 (AIMMS will store the basis automatically by default). The barrier algorithm cannot efficiently use a warm start. You could use barrier for the first solve and then use the primal or dual simplex algorithm for the successive solves (assuming barrier does a crossover step, which is normally done by default).

For MIP you can provide a MIP start using the procedure GMP::Solution::SetMIPStartFlag. Note that using a MIP start will not help much if the "proving optimality” part takes the most time.

How to efficiently do model updates using GMP functionality depends on your AIMMS project. Please send an email to our support to discuss in detail.

I am not familiar with the GUSS functionality of AIMMS but, after taking a glance at it, it seems that AIMMS does not have something similar.


Hi ​@Marcel Hunting,
Thanks for your explanation.

I am dealing with a large LP and usually only aim for the barrier solution. However, if it can reduce the runtime of successive GMPs through warm start, it would make sense to have the crossover enabled for the first run. 

I (or my colleague) will send an email to support for further discussing this.  


Reply


Didn't find what you were looking for? Try searching on our documentation pages:

AIMMS Developer & PRO | AIMMS How-To | AIMMS SC Navigator