Using the AOA Algorithm
AOA module \(\ldots\)
The basis GMP implementation of the AIMMS Outer Approximation (AOA)
algorithm can be found in a single AIMMS module, called
GMP Outer Approximation, that is provided as part of the AIMMS
system. You can install this module using the Install System Module
command in the AIMMS Settings menu.
DoOuterApproximation inside the module implements the
basic algorithm from the previous section. The procedure
DoOuterApproximation has one input argument, namely:
MyGMP, an element parameter with range
This procedure is called as follows:
generatedMP := GMP::Instance::Generate( SymbolicMP );
GMPOuterApprox::DoOuterApproximation( generatedMP );
SymbolicMP is the symbolic mathematical program containing the
MINLP model, and
generatedMP is an element parameter in the
is the prefix of the AOA module. The implementation of this procedure
will be discussed in A First and Basic Implementation.
Modifying the algorithm
Because the AIMMS Outer Approximation algorithm is completely implemented using functionality provided the GMP library, you have the complete freedom to modify the math program instances generated by the basic AOA algorithm using the matrix manipulation routines discussed in Matrix Manipulation Procedures. Such problem-specific modifications to the basic algorithm may help you to find a better overall solution to your MINLP model, or to find a good solution faster.