Opened 5 years ago
Last modified 2 years ago
#2745 accepted feature request
Implement EGO
Reported by: | bwerth | Owned by: | bwerth |
---|---|---|---|
Priority: | medium | Milestone: | |
Component: | Algorithms | Version: | branch |
Keywords: | EGO, Surrogate | Cc: |
Description
Implement Efficient Global Optimization(EGO)
In many engineering optimization problems, the number of function evaluations is severely limited by time or cost. These problems pose a special challenge to the field of global optimization, since existing methods often require more function evaluations than can be comfortably afforded. One way to address this challenge is to fit response surfaces to data collected by evaluating the objective and constraint functions at a few points. These surfaces can then be used for visualization, tradeoff analysis, and optimization. In this paper, we introduce the reader to a response surface methodology that is especially good at modeling the nonlinear, multimodal functions that often occur in engineering. We then show how these approximating functions can be used to construct an efficient global optimization algorithm with a credible stopping rule. The key to using response surfaces for global optimization lies in balancing the need to exploit the approximating surface (by sampling where it is minimized) with the need to improve the approximation (by sampling where prediction error may be high). Striking this balance requires solving certain auxiliary problems which have previously been considered intractable, but we show how these computational obstacles can be overcome.
[1] http://www.ressources-actuarielles.net/ext/isfa/1226.nsf/9c8e3fd4d8874d60c1257052003eced6/f84f7ac703bf5862c12576d8002f5259/$FILE/Jones98.pdf
Attachments (1)
Change History (18)
comment:1 Changed 5 years ago by bwerth
comment:2 Changed 5 years ago by bwerth
r14736 moved folder to correct place
comment:3 Changed 5 years ago by bwerth
r14741 migrated EGO from Connected Vehicles to its own branch, several modifications/simplifications along the way
comment:4 Changed 5 years ago by bwerth
r14768 fixed pausing and stopping and namespaces; Added MaximalDatasetSize and rudimentary ISurrogateAlgorithm-interface
comment:5 Changed 5 years ago by bwerth
r14818 added several new InfillCriteria and moved Parameters from the InfillProblem to the Criteria themselves; added Sanitiy checks for GaussianProcessRegression
comment:6 Changed 5 years ago by bwerth
r14833 added LatinHyperCubeDesign as possible InitialSamplingPlan
comment:7 Changed 5 years ago by bwerth
- Milestone HeuristicLab 3.3.15 deleted
comment:8 Changed 5 years ago by bwerth
r15064 implemented EGO as EngineAlgorithm + some simplifications in the IInfillCriterion interface
comment:9 Changed 4 years ago by bwerth
r15338 fixed bug concerning new Start and StartAsync methods; passed CancellationToken to sub algorithms
comment:10 Changed 4 years ago by bwerth
r15343 added discretized EGO-version for use with IntegerVectors
comment:11 Changed 4 years ago by bwerth
- Status changed from new to accepted
comment:12 Changed 4 years ago by jkarder
r15976: worked on EGO implementation
- added parameter for initial sample set (only for D-EGO)
- fixed project references and output paths
- minor changes
comment:13 Changed 3 years ago by abeham
please rename your branch by prepending it with the ticket number
comment:14 Changed 3 years ago by bwerth
r16106 renamed branch to include ticket number
comment:15 Changed 3 years ago by jkarder
r16537: updated build script
comment:16 Changed 2 years ago by bwerth
r17332 updated persistence to HEAL.Attic
comment:17 Changed 2 years ago by bwerth
r17337 forgot to add Storable Tags to Interfaces
r14735 created new branch folder