![]() |
Frontline Systems, Inc. |
||||||||||||||||||
|
|||||||||||||||||||
|
Global OptimizationIn the Solver Platform SDK, the GRG nonlinear Solver is augmented with "multistart" or "clustering" methods for global optimization. It can be automatically run many times from judiciously chosen starting points, and the best solution found will be returned as the optimal solution. For some smooth nonlinear problems, multistart methods will converge in probability to the globally optimal solution. For other problems, they often yield very good solutions in an acceptable amount of time -- and of course, they are far easier to use than a manual exploratory process. And you don't have to change your model at all to take advantage of these new global optimization capabilities! In the SDK's object-oriented API, you simply set a "parameter" property of the GRG Solver engine:
If you're programming in a procedural language such as C, you can accomplish the same thing with:
Faster Solution of Nonlinear ProblemsNonlinear problems often have some decision variables that occur linearly in the objective and constraints, while other variables occur nonlinearly (making the problem nonlinear overall). The Solver Platform SDK includes a new option for the GRG nonlinear solver, "Recognize Linear Variables," which allows the Solver to save time at each step when it computes partial derivatives of the problem functions. This option can make solution of nonlinear problems considerably faster, depending on the number of variables occurring linearly in the problem. Just set the correct "parameter" property of the GRG Solver engine::
or in a procedural language:
|
|||||