03964.com

文档资料库 文档搜索专家

文档资料库 文档搜索专家

Global Optimization Toolbox 3.0

Solve multiple maxima, multiple minima, and nonsmooth optimization problems

Global Optimization Toolbox provides methods that search for global solutions to problems that contain multiple maxima or minima. It includes global search, multistart, pattern search, genetic algorithm, and simulated annealing solvers. You can use these solvers to solve optimization problems where the objective or constraint function is continuous, discontinuous, stochastic, does not possess derivatives, or includes simulations or black-box functions with undefined values for some parameter settings. Genetic algorithm and pattern search solvers support algorithmic customization. You can create a custom genetic algorithm variant by modifying initial population and fitness scaling options or by defining parent selection, crossover, and mutation functions. You can customize pattern search by defining polling, searching, and other functions.

Key Features

? ? ? ? ? ? Interactive tools for defining and solving optimization problems and monitoring solution progress Global search and multistart solvers for finding single or multiple global optima Genetic algorithm solver that supports linear, nonlinear, and bound constraints Multiobjective genetic algorithm with Pareto-front identification, including linear and bound constraints Pattern search solver that supports linear, nonlinear, and bound constraints Simulated annealing tools that implement a random search method, with options for defining annealing process, temperature schedule, and acceptance criteria ? ? Parallel computing support in multistart, genetic algorithm, and pattern search solvers Custom data type support in genetic algorithm, multiobjective genetic algorithm, and simulated annealing solvers

1

Plot of different types of problems Global Optimization Toolbox can solve: nonsmooth (top), single global minimum nested inside multiple local minima (left), multiple local minima with no global minimum (right).

2

Plot of a nonsmooth objective function (bottom) that is not easily solved using traditional gradient-based optimization techniques. The Optimization Tool (middle) shows the solution found using pattern search in Global Optimization Toolbox. Iterative results for function value and mesh size are shown in the top figure.

Defining, Solving, and Assessing Optimization Problems Global Optimization Toolbox provides functions that you can access from the command line and from the Optimization Tool graphical user interface (GUI) in Optimization Toolbox?. Both the command line and GUI let you: ? Select a solver and define an optimization problem ? Set and inspect optimization options ? Run optimization problems and visualize intermediate and final results ? Use Optimization Toolbox solvers to refine genetic algorithm, simulated annealing, and pattern search results ? Import and export optimization problems and results to your MATLAB? workspace ? Capture and reuse work performed in the GUI using MATLAB code generation You can also customize the solvers by providing your own algorithm options and custom functions. Multistart and global search solvers are accessible only from the command line.

3

Visualization of Rastrigin’s function (right) that contains many local minima and one global minimum (0,0). The genetic algorithm helps you determine the best solution for functions with several local minima, while the Optimization Tool (left) provides access to all key components for defining your problem, including the algorithm options.

The toolbox includes a number of plotting functions for visualizing an optimization. These visualizations give you live feedback about optimization progress, enabling you to make decisions to modify some solver options or stop the solver. The toolbox provides custom plotting functions for both the genetic algorithm and pattern search algorithms. They include objective function value, constraint violation, score histogram, genealogy, mesh size, and function evaluations. You can show multiple plots together, open specific plots in a new window for closer examination, or add your own plotting functions.

4

Run-time visualizations (right) generated while the function is being optimized using genetic algorithm plot functions selected in the Optimization Tool (left).

Using the output function, you can write results to files, create your own stopping criteria, and write your own application-specific GUIs to run toolbox solvers. When working from the Optimization Tool, you can export the problem and algorithm options to the MATLAB workspace, save your work and reuse it in the GUI at a later time, or generate MATLAB code that captures the work you’ve done.

5

MATLAB file of an optimization created using the automatic code generation feature in the Optimization Tool. You can export an optimization from the GUI as commented code that can be called from the command line and used to automate routines and preserve your work.

While an optimization is running, you can change some options to refine the solution and update performance results in genetic algorithm, multiobjective genetic algorithm, simulated annealing, and pattern search solvers. For example, you can enable or disable plot functions, output functions, and command-line iterative display during run time to view intermediate results and query solution progress, without the need to stop and restart the solver. You can also modify stopping conditions to refine the solution progression or reduce the number of iterations required to achieve a desired tolerance based upon run-time performance feedback. Global Search and Multistart Solvers The global search and multistart solvers use gradient-based methods to return local and global minima. Both solvers start a local solver (in Optimization Toolbox) from multiple starting points and store local and global solutions found during the search process. The global search solver: ? Uses a scatter-search algorithm to generate multiple starting points ? Filters nonpromising start points based upon objective and constraint function values and local minima already found ? Runs a constrained nonlinear optimization solver to search for a local minimum from the remaining start points The multistart solver uses either uniformly distributed start points within predefined bounds or user-defined start points to find multiple local minima, including a single global minimum if one exists. The multistart solver runs the local solver from all starting points and can be run in serial or in parallel (using Parallel Computing

6

Toolbox?). The multistart solver also provides flexibility in choosing different local nonlinear solvers. The available local solvers include unconstrained nonlinear, constrained nonlinear, nonlinear least-squares, and nonlinear least-squares curve fitting. Genetic Algorithm Solver The genetic algorithm solves optimization problems by mimicking the principles of biological evolution, repeatedly modifying a population of individual points using rules modeled on gene combinations in biological reproduction. Due to its random nature, the genetic algorithm improves your chances of finding a global solution. It enables you to solve unconstrained, bound-constrained, and general optimization problems, and it does not require the functions to be differentiable or continuous. The following table shows the standard genetic algorithm options provided by Global Optimization Toolbox.

Step Creation Fitness scaling Selection Crossover Mutation Plotting Genetic Algorithm Option Uniform, feasible Rank-based, proportional, top (truncation), shift linear Roulette, stochastic uniform selection (SUS), tournament, uniform, remainder Arithmetic, heuristic, intermediate, scattered, single-point, two-point Adaptive feasible, Gaussian, uniform Best fitness, best individual, distance among individuals, diversity of population, expectation of individuals, max constraint, range, selection index, stopping conditions

Global Optimization Toolbox also lets you specify: ? Population size ? Number of elite children ? Crossover fraction ? Migration among subpopulations (using ring topology) ? Bounds, linear, and nonlinear constraints for an optimization problem You can customize these algorithm options by providing user-defined functions and represent the problem in a variety of data formats, for example by defining variables that are integers, mixed integers, categorical, or complex. You can base the stopping criteria for the algorithm on time, stalling, fitness limit, or number of generations. And you can vectorize your fitness function to improve execution speed or execute the objective and constraint functions in parallel (using Parallel Computing Toolbox).

7

Output that shows solutions reached when using only the genetic algorithm (right, bar chart) and when using the genetic algorithm with a gradient-based solver from Optimization Toolbox (final point in Optimization Tool, left). Combining algorithms can produce more accurate results while reducing the number of function evaluations required by the genetic algorithm alone.

Multiobjective Genetic Algorithm Solver Multiobjective optimization is concerned with the minimization of multiple objective functions that are subject to a set of constraints. The multiobjective genetic algorithm solver is used to solve multiobjective optimization problems by identifying the Pareto front—the set of evenly distributed nondominated optimal solutions. You can use this solver to solve smooth or nonsmooth optimization problems with or without bound and linear constraints. The multiobjective genetic algorithm does not require the functions to be differentiable or continuous. The following table shows the standard multiobjective genetic algorithm options provided by Global Optimization Toolbox.

Step Creation Fitness scaling Selection Crossover Multiobjective Genetic Algorithm Option Uniform, feasible Rank-based, proportional, top (truncation), linear scaling, shift Tournament Arithmetic, heuristic, intermediate, scattered, single-point, two-point

8

Mutation Plotting

Adaptive feasible, Gaussian, uniform Average Pareto distance, average Pareto spread, distance among individuals, diversity of population, expectation of individuals, Pareto front, rank histogram, selection index, stopping conditions

Global Optimization Toolbox also lets you specify: ? Population size ? Crossover fraction ? Pareto fraction ? Distance measure across individuals ? Migration among subpopulations (using ring topology) ? Linear and bound constraints for an optimization problem You can customize these algorithm options by providing user-defined functions and represent the problem in a variety of data formats, for example by defining variables that are integers, mixed integers, categorical, or complex. You can base the stopping criteria for the algorithm on time, fitness limit, or number of generations. And you can vectorize your fitness function to improve execution speed or execute the objective functions in parallel (using Parallel Computing Toolbox).

Multiobjective genetic algorithm defined in the Optimization Tool (top), used to identify the Pareto front containing disconnected regions (middle) for the Kursawe function (bottom).

9

Pattern Search Solver Global Optimization Toolbox contains three direct search algorithms: generalized pattern search (GPS), generating set search (GSS), and mesh adaptive search (MADS). While more traditional optimization algorithms use exact or approximate information about the gradient or higher derivatives to search for an optimal point, these algorithms use a pattern search method that implements a minimal and maximal positive basis pattern. The pattern search method handles optimization problems with nonlinear, linear, and bound constraints, and does not require functions to be differentiable or continuous. The following table shows the pattern search algorithm options provided by Global Optimization Toolbox. You can change any of the options from the command line or the Optimization Tool.

Pattern Search Option Polling methods Description Decide how to generate and evaluate the points in a pattern and the maximum number of points generated at each step. You can also control the polling order of the points to improve efficiency. Choose an optional search step that may be more efficient than a poll step. You can perform a search in a pattern or in the entire search space. Global search methods, like the genetic algorithm, can be used to obtain a good starting point. Control how the pattern changes over iterations and adjusts the mesh for problems that vary in scale across dimensions. You can choose the initial mesh size, mesh refining factor, or mesh contraction factor. The mesh accelerator speeds up convergence when it is near a minimum. Store points evaluated during optimization of computationally expensive objective functions. You can specify the size and tolerance of the cache that the pattern search algorithm uses and vary the cache tolerance as the algorithm proceeds, improving optimization speed and efficiency. Specify a penalty parameter for the nonlinear constraints as well as a penalty update factor.

Search methods

Mesh

Cache

Nonlinear constraint algorithm settings

10

Using the Optimization Tool (top) to find the peak, or global optima, of the White Mountains (middle and bottom) using pattern search.

Simulated Annealing Solver Simulated annealing solves optimization problems using a probabilistic search algorithm that mimics the physical process of annealing, in which a material is heated and then the temperature is slowly lowered to decrease defects, thus minimizing the system energy. By analogy, each iteration of a simulated annealing algorithm seeks to improve the current minimum by slowly reducing the extent of the search. The simulated annealing algorithm accepts all new points that lower the objective, but also, with a certain probability, points that raise the objective. By accepting points that raise the objective, the algorithm avoids being trapped in local minima in early iterations and is able to explore globally for better solutions. Simulated annealing allows you to solve unconstrained or bound-constrained optimization problems and does not require that the functions be differentiable or continuous. From the command line or Optimization Tool you can use toolbox functions to: ? Solve problems using adaptive simulated annealing, Boltzmann annealing, or fast annealing algorithms ? Create custom functions to define the annealing process, acceptance criteria, temperature schedule, plotting functions, simulation output, or custom data types ? Perform hybrid optimization by specifying another optimization method to run at defined intervals or at normal solver termination

11

Using simulated annealing to solve a challenging problem that contains flat regions between basins.

Solving Optimization Problems Using Parallel Computing You can use Global Optimization Toolbox in conjunction with Parallel Computing Toolbox to solve problems that benefit from parallel computation. By using built-in parallel computing capabilities or defining a custom parallel computing implementation of your optimization problem, you decrease time to solution. Built-in support for parallel computing accelerates the objective and constraint function evaluation in genetic algorithm, multiobjective genetic algorithm, and pattern search solvers. You can accelerate the multistart solver by distributing the multiple local solver calls across multiple MATLAB workers or by enabling the parallel gradient estimation in the local solvers.

12

Demonstration of Using the Genetic Algorithm with Parallel Computing Toolbox

A custom parallel computing implementation involves explicitly defining the optimization problem to use parallel computing functionality. You can define either your objective function or constraint function to use parallel computing, letting you decrease the time required to evaluate the objective or constraint.

Resources

Product Details, Demos, and System Requirements www.mathworks.com/products/global-optimization Trial Software www.mathworks.com/trialrequest Sales www.mathworks.com/contactsales Technical Support www.mathworks.com/support Online User Community www.mathworks.com/matlabcentral Training Services www.mathworks.com/training Third-Party Products and Services www.mathworks.com/connections Worldwide Contacts www.mathworks.com/contact

? 2010 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.

13

相关文章:

- matlab_global_optimization_toolbox3.0_图文.pdf
*matlab_global_optimization_toolbox3.0*-

- 最优化算法与MATLAB的Global Optimization Toolbox_图文.ppt
- 最优化算法与
*MATLAB*的*Global**Optimization**Toolbox*_计算机软件及应用_IT/计算机_专业资料。最优化算法与*MATLAB*...

- Matlab optimization-toolbox_图文.pdf
- Automatically generate
*MATLAB*code to capture work and automate tasks ? Access*Global**Optimization**Toolbox*solvers Nonlinear Programming*Optimization**Toolbox*...

- 2、MATLAB优化工具箱(Optimization Toolbox)_图文.pdf
- 2、
*MATLAB*优化工具箱(*Optimization**Toolbox*)_工学_高等教育_教育专区。*MATLAB*优化...*MATLAB*优化工具箱 机械优化设计*MATLAB*优化工具箱 z z z z z z z z z z...

- MATLAB Optimization Toolbox_图文.pdf
*MATLAB**Optimization**Toolbox*_工学_高等教育_教育专区。将*matlab*里面*optimization**toolbox*库里的功能做了简要的介绍,适合初学者领会*matlab*的优化思想和基本功能。共45页...

- Optimization Toolbox MATLAB优化工具箱.doc
*matlab*优化工具箱的一个比较详细的介绍*Optimization**Toolbox*--求解常规和大型...*Global**Optimization**Toolbox*为非线性优化 问题提供额外的不使用导数的优化算法。...

- MATLAB Optimization Toolbox应用基础.doc
*MATLAB**Optimization**Toolbox*应用基础专题Ⅰ 单变量函数最小值问题(一维问题) 一、上机目的: 1、掌握一维搜索方法的基本概念、算法等知识点; 2、熟悉*Matlab*软件...

- Optimization_Algorithms_in_MATLAB_图文.pdf
*Optimization*_Algorithms_in_*MATLAB*_信息与通信_工程科技_专业资料。*Optimization*?...p If you have h a*Global*Gl b l*Optimization*O ti i ti*Toolbox*T ...

- Matlab_optimization_1_图文.ppt
- Matlab/
*Optimization*USTB, 2011 优化的数学描述: 优化的数学描述:机械优化设计中...YALMIP - A*toolbox*for... 6页 1下载券*matlab_global_optimiza*... ...

- MATLAB优化问题_图文.ppt
- 其他
*MATLAB*优化工具箱能求解的优化模型优化工具箱*3.0*(*MATLAB*7.0 R14) 连续...*MATLAB*优化工具箱使用简介 (*Optimization**Toolbox*) 无约束优化模型: Min f ( x...

- Matlab优化工具箱使用方法.pdf
*Matlab*的优化工具箱(*Optimization**Toolbox*)被放在 ...对于优化工具箱 V*3.0*,共有 44 项,其内容可-11-...//www.*matlab*-*world*.com/ FangQ 的个人网址...

- 多目标优化 MATLAB_图文.ppt
- 改进:阅读
*Matlab**Optimization**Toolbox*改进:阅读*3.0*.1 User‘s Guide中Algorithm 中 Improvements for Goal Attainment Method一节内容。 一节内容。 一节内容 ...

- 张量分解与MATLAB Tensor Toolbox_图文.pdf
- 张量分解与
*MATLAB*Tensor*Toolbox*_IT/计算机_专业资料。Tensor Decompositions,张量...www.dash*optimization*.com .11 OFFICE .02 www.forms.gov .30 .05 SEARCH ...

- 基于MATLAB遗传工具箱的多目标函数优化_图文.pdf
*MATLAB*. GeneticAlgorithm*OptimizationToolbox*Pei-junl,LiXiao-xial,JlZhiqiangz...better*globaloptimization*method. Keywords:genetic algorithm;*MATLAB*;Multiobjective...

- a MATLAB Toolbox for Optimization over Symmetric Cones.pdf
- a
*MATLAB**Toolbox*for*Optimization*over Symmetric Cones_IT/计算机_专业资料。...GloptiPoly*Global*Opti... 28页 免费 PRTools Version*3.0*A ... 25页 ...

- matlab工具箱介绍_图文.ppt
- 第六讲
*Matlab*工具箱*Matlab*工具箱已经成为一 个...*Optimization**Toolbox*优化工具箱 ? Partial ...

- matlab_optimization.pdf
- matlab_
*optimization*_工学_高等教育_教育专区。编写matlab代码的优化方法,教你如何...*matlab_global_optimiza*... 13页 1下载券*Optimization**Toolbox*M... 7...

- MATLAB各类工具箱.doc
*Toolbox**Optimization**Toolbox**Global**Optimization**Toolbox*Neural Network*Toolbox*...*MATLAB*[size=+0]代码生成 Data Acquisition*Toolbox*Instrument Control*Toolbox*...

- Matlab各工具箱功能简介(部分).doc
*Matlab*各工具箱功能简介(部分)_计算机软件及应用_IT/计算机_专业资料。*Toolbox*...6*Global**Optimization**Toolbox*全局优化工具箱*Global**Optimization**Toolbox*所...

- Matlab_optimization_1_图文.ppt
- Matlab/
*Optimization*USTB, 2011 优化的数学描述: ? 机械优化设计中的问题,优化...YALMIP - A*toolbox*for... 6页 1下载券*matlab_global_optimiza*... ...

- 最优化算法与MATLAB的Global Optimization Toolbox
- Matlab Global Optimization
- Matlab optimization-toolbox
- Matlab Optimization Tool Box
- MATLAB Optimization Toolbox应用基础
- Optimization Toolbox MATLAB优化工具箱
- Matlab_optimization_1
- YALMIP - A toolbox for modeling and optimization in Matlab
- 2、MATLAB优化工具箱(Optimization Toolbox)
- GloptiPoly Global Optimization over Polynomials with Matlab and SeDuMi