Solve

This command is used to perform a solver using the optimization definition with the specified optimization name.

Syntax
Solve: <optimization name>;
Log message
Messages from solver output including the progress of solver setup and solver execution, are logged.
Exception
If the specified optimization name cannot be found, this error is logged:
APACS052=Cannot find solver "{0}" for model "{1}".
Where, {0} = Optimization name, {1} = Model name

An intermediate solution from the solver can be accepted by Planning Engine, when stopping a Discrete solve during the last sub-problem, in specific situations. Possible scenarios:

  • If a Feasible discrete solution is already found during the last sub-problem (which may or may not be optimal), a message like the following is logged during the last sub-problem before the workflow is interrupted:
    Found a solution with cost 4430198.20459566 at most 26.4826248711% away from an optimal solution
    In this case, Planning Engine stops the solver, and accepts the current best feasible solution with these messages:
    • The APACS185=Solve aborted warning message is displayed indicating the solve is aborted.
    • An additional message Status: non-optimal (stopped, integer solution exists) is displayed indicating the state of the solution accepted.
  • If a partially discrete solution is found during the last sub-problem, a message like the following is logged during the last sub-problem before the workflow is interrupted:
    Found a 95% discrete solution with cost 4430198.20459566
    In this case, Planning Engine stop the solver, and accept the current partially discrete solution:
    • The APACS185=Solve aborted warning message is displayed indicating the solve is aborted.
    • These additional messages are displayed to indicate the state of the solution accepted:
      • Status: non-feasible (stopped, partially integer solution exists)
      • A solution with cost 4430198.20459566 is identified. This solution does not satisfy all the discrete constraints,  as the solver is stopped before identifying the first solution.
  • The Solve identifies a potentially reasonable solution that takes time to improve the solution further. This solution can be used instead of disregarding the potentially reasonable solution. In all other scenarios, the Solve is aborted with the APACS185=Solve aborted error message.