This means that Solver has found a series of “best” solutions that satisfy the constraints, and that have very similar objective function values; however, no single solution strictly satisfies the Solver’s test for optimality. The exact meaning depends on whether you are solving a smooth nonlinear problem with the GRG Solver or the Interval Global Solver, or a non-smooth problem with the Evolutionary Solver.

When the GRG Solver or the Interval Global Solver is being used, this message means that the objective function value is changing very slowly as the Solver progresses from point to point. More precisely, the Solver stops if the absolute value of the relative (i.e. percentage) change in the objective function, in the last few iterations, is less than the Convergence tolerance on the Task Pane Engine tab. A poorly scaled model is more likely to trigger this stopping condition, even if Use Automatic Scaling is set to True on the Task Pane Engine tab. If you are sure that your model is well scaled, you should consider why it is that the objective function is changing so slowly. For more information, see the discussion of “GRG Solver Stopping Conditions” below.

When the Evolutionary Solver is being used, this message means that the “fitness” of members of the current population of candidate solutions is changing very slowly. More precisely, the Evolutionary Solver stops if 99% or more of the members of the population have “fitness” values whose relative (i.e. percentage) difference is less than the Convergence tolerance on the Task Pane Engine tab. The “fitness” values incorporate both the objective function and a penalty for infeasibility, but since the Solver has found some feasible solutions, this test is heavily weighted towards the objective function values. If you believe that the Solver is stopping prematurely when this test is satisfied, you can make the Convergence tolerance smaller, but you may also want to increase the Mutation Rate and/or the Population Size, in order to increase the diversity of the population of trial solutions. For more information, see the discussion of “Evolutionary Solver Stopping Conditions” below.