Procedure GMP::Solver::FreeEnvironment(solver)


The procedure GMP::Solver::FreeEnvironment can be used to free a solver environment. By using the procedure GMP::Solver::InitializeEnvironment you can initialize a solver environment; by using this procedure you can free it again.

Normally AIMMS initializes solver environments at startup and frees them when it is closed. The procodures GMP::Solver::InitializeEnvironment and GMP::Solver::FreeEnvironment can be used to initialize and free a solver environment multiple times inside one AIMMS sesstion. Both procedures are typically used for solvers running on a remote server or a cloud system.
     solver      ! (input) a solver



An element in the set AllSolvers.

Return Value

The procedure returns 1 on success, or 0 otherwise.


  • This procedure can be used in combination with a normal solve statement.

  • This procedure is only supported by Gurobi.

  • This procedure cannot be called inside a solver callback procedure.

  • This procedure cannot be called if one of the solver sessions is asynchronous executing.


MIPSolver := 'Gurobi 9.5';

GMP::Solver::InitializeEnvironment( MIPSolver );

solve MP1;

GMP::Solver::FreeEnvironment( MIPSolver );

GMP::Solver::InitializeEnvironment( MIPSolver );

mgGMP := GMP::Instance::Generate( MP2 );
GMP::Instance::Solve( myGMP );

GMP::Solver::FreeEnvironment( MIPSolver );

See also

The procedure GMP::Solver::InitializeEnvironment.