Symptoms and causes of a poor advanced basis

Top  Previous  Next

Sometimes a basis may not help and one may find the solver fails or uses excessive iterations.  This can be particularly true in a repeated set of solutions with a radically altered model.  For example, one can observe messages after a solve such as

 

sorry guys we seem to be stuck or

after 3 factorizations the basis is singular

 

or the solver may also not make significant progress.

There are a couple of possible underlying causes of such messages

One may have altered the model size using conditionals which either:
Eliminated a large number of variables in the basis.
Deleted a large number of constraints.
One may also have caused a radical alteration in the model coefficients that compromised the basis.
One may be using a basis from a model that was radically altered that possesses many features that the model on hand does not have.

There are several ways of either avoiding the problems such a basis causes or insuring that an advanced basis would be more compatible between related models

To increase compatibility don't change model size, eliminate things economically as illustrated in the Doing a Comparative Analysis with GAMS chapter.
Rather than eliminate a variable leave it in the model but alter it's objective function coefficient so it has a very high cost and will not be desirable to include in the solution.
Rather than eliminate a constraint make it non-binding by for example in the case of =L= constraints adding a very large constant to the right hand side.
Revert to a saved basis from a related but less altered model.
Tell the solver to dump the basis using the BRATIO=1 option.