Contents Previous Next Index
|
2 Global Optimization Toolbox
|
|
|
2.1 Introduction to the Global Optimization Toolbox
|
|
|
Overview
|
|
The Global Optimization Toolbox provides world-class global optimization technology to return the best answer to your optimization model, robustly and efficiently.
Features of this toolbox include:
•
|
Several solver modules for nonlinear optimization problems, including branch-and-bound global search, global adaptive random search, multi-start based global random search, and a generalized reduced gradient local search.
|
•
|
The ability to solve models with thousands of variables and constraints, with Maple's arbitrary precision capabilities in their calculations, to greatly reduce numerical instability.
|
•
|
Support for arbitrary objective and constraint functions, including those defined in terms of special functions (for example, Bessel or hypergeometric), derivatives and integrals, piecewise functions, and Maple procedures.
|
•
|
The interactive GlobalOptimization Assistant, an easy-to-use interface for entering your problem and choosing the solving method.
|
•
|
Maple's built-in model visualization capabilities for viewing one- or two-dimensional subspace projections of the objective function, with visualization of the constraints as planes or lines on the objective surface.
|
|
|
Requirements
|
|
Before installing the Global Optimization Toolbox, you must install and activate Maple 16. For details and installation instructions, see the Install.html file on the product CD.
You need a purchase code to activate the Global Optimization Toolbox. This code has been emailed to you. If you have not received your purchase code, contact Maplesoft Customer Service at custservice@maplesoft.com (US and Canada), or the Maplesoft reseller in your region. For a list of resellers, visit http://www.maplesoft.com/contact/international/index.aspx.
After installation, enter ?GlobalOptimization in Maple to see an overview of the toolbox.
|
|
|
2.2 Getting Started with the Global Optimization Toolbox
|
|
|
Initialization
|
|
To start using the Global Optimization Toolbox, open a new Maple window and load the GlobalOptimization package by using the following command.
>
|
|
| (1.2.1.1) |
You can either use the commands to solve your pre-defined global optimization problem, or use the Global Optimization Assistant, shown below. The following examples demonstrate the use of the commands, but the assistant could also be used to solve any of the problems presented.
|
|
Help with the Global Optimization Toolbox
|
|
For help with the commands in the Global Optimization Toolbox, see the GlobalOptimization help page. You may also find the related commands in the built-in OptimizationOptimization package helpful for solving optimization problems.
|
|
|
2.3 Working with the Global Optimization Toolbox
|
|
In many optimization problems, simple methods are not sufficient to find the best solution. They will only find a local optimum, usually the one closest to the search starting point, which is often given by the user. For example, consider the expression
>
|
|
You could likely approximate the global minimum in the given domain, and find that minimum easily, by simply looking at the plot. But if you were unable to properly approximate it, or if you approximated incorrectly, you would not find the global minimum by using the usual optimization techniques.
>
|
|
| (1.3.1) |
According to the Minimize command, the minimum is at approximately x = 30. However, you can see in the plot above that this is not the global minimum.
By using the global optimization equivalent of this command, you can be assured that you have found the global minimum in the specified interval.
>
|
|
>
|
|
| (1.3.2) |
To view the solving methods that were used to determine the global minimum, change the infolevel variable and re-execute the command. At infolevel = 3, the command displays the input model size and type, solver operational mode and parameter, and detailed runtime information.
>
|
|
>
|
|
GlobalSolve: calling NLP solver
SolveGeneral: calling global optimization solver
SolveGeneral: number of problem variables 1
SolveGeneral: number of nonlinear inequality constraints 0
SolveGeneral: number of nonlinear equality constraints 0
SolveGeneral: method multistart
SolveGeneral: merit function evaluation limit 1000
SolveGeneral: non-improving merit function evaluation limit 200
SolveGeneral: constraint penalty multiplier 100.0
SolveGeneral: target merit function value -0.10e11
SolveGeneral: local search target objective function value -0.10e11
SolveGeneral: local search feasibility tolerance 0.10e-5
SolveGeneral: local search optimality tolerance 0.10e-5
SolveGeneral: time limit in seconds 100
SolveGeneral: trying evalhf mode
SolveGeneral: total number of function evaluations 1120
SolveGeneral: runtime in external solver 0.
SolveGeneral: maximum constraint infeasibility 0.
SolveGeneral: cycling or stall detected in solver
| |
| (1.3.3) |
Typically, the infolevel is set to 0, the default.
>
|
|
The following is an example of a situation in which you cannot approximate the global minimum by using linear methods; however, the global solver finds the best solution.
|
Example
|
|
Consider a non-linear system of equations.
>
|
|
>
|
|
The induced least-squares error function is highly multi-extremal, making it difficult to minimize the error of the least squares approximation.
>
|
|
To determine the global minimum of the least-squares error, define the objective function and constraints to be optimized.
>
|
|
>
|
|
First, try to find a local solution by using Maple's built-in Optimization package. This system is sufficiently complex that linear optimization solvers cannot find a feasible solution.
>
|
|
However, global optimization techniques can be used to find a global minimum.
>
|
|
| (1.3.1.1) |
Substitution into the constraints shows that the least squares approximation can be a fairly precise solution. That is, the error of the least squares approximation is very small at the minimum point.
>
|
|
| (1.3.1.2) |
|
With the examples demonstrated here, you are now ready to use the Global Optimization Toolbox to solve many complex mathematical problems. See the Maple help system for more information about the commands used in this guide, or more ways in which the Global Optimization Toolbox can help you.
|
|
Contents Previous Next Index
|