AIMMS Knowledge Base Article – KB000017
There are several ways to find out why your model is infeasible.
After executing a solve statement in your model, AIMMS returns with the message that your model is infeasible.
There are different causes for an infeasible model. The problem is to find out what the exact cause is.
- Math program inspector
The math program inspector (available in AIMMS 3.5 and higher) contains a collection of tools that can help you to find the cause of errors in your linear model. There is a chapter in the AIMMS User’s Guide about the ‘Math Program Inspector’.
- Listing file
You can create a constraint-listing file to see the actual generated constraints and to see which ones are infeasible (by searching on ****). You can do this by setting the following option.
Solvers general – Standard reports – Constraints – Constraint listing -> At an infeasible solve.
Furthermore, you can activate the infeasibility finder of the solver. This is an option that writes extra information to the listing file when the model is infeasible or unbounded. Check the Help on this option to see for which solvers the Infeasibility Finder is available. You can set the option as follows.
Solvers general – Standart reports – Solution – Infeasibility finder -> On
After setting the options, run your model and open the listing file via the menu: File – Open – Listing File, or via the explorer in the log-folder of your AIMMS project (*.lis).
In chapter ‘Solving Mathematical Programs’ in the AIMMS Language Reference, there is a section ‘Infeasibility analysis’. In this section another way to find infeasibilities is explained. The used method is based on adding excess variables to your model and AIMMS offers support to automatically extend your mathematical program with excess variables during the generation of the matrix for the solver. How to use this feature is described in the mentioned section.
For more information, please contact us at firstname.lastname@example.org.