Free cookie consent management tool by TermsFeed Policy Generator

Opened 7 years ago

Last modified 4 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:


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.


Attachments (1)

DataAnalysis.patch (2.3 KB) - added by bwerth 7 years ago.
Annotation of DataAnalysisAlgorithms with Interface

Download all attachments as: .zip

Change History (18)

comment:1 Changed 7 years ago by bwerth

r14735 created new branch folder

comment:2 Changed 7 years ago by bwerth

r14736 moved folder to correct place

comment:3 Changed 7 years ago by bwerth

r14741 migrated EGO from Connected Vehicles to its own branch, several modifications/simplifications along the way

comment:4 Changed 7 years ago by bwerth

r14768 fixed pausing and stopping and namespaces; Added MaximalDatasetSize and rudimentary ISurrogateAlgorithm-interface

comment:5 Changed 7 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 7 years ago by bwerth

r14833 added LatinHyperCubeDesign as possible InitialSamplingPlan

comment:7 Changed 7 years ago by bwerth

  • Milestone HeuristicLab 3.3.15 deleted

comment:8 Changed 7 years ago by bwerth

r15064 implemented EGO as EngineAlgorithm + some simplifications in the IInfillCriterion interface

comment:9 Changed 7 years ago by bwerth

r15338 fixed bug concerning new Start and StartAsync methods; passed CancellationToken to sub algorithms

comment:10 Changed 7 years ago by bwerth

r15343 added discretized EGO-version for use with IntegerVectors

Changed 7 years ago by bwerth

Annotation of DataAnalysisAlgorithms with Interface

comment:11 Changed 7 years ago by bwerth

  • Status changed from new to accepted

comment:12 Changed 6 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 6 years ago by abeham

please rename your branch by prepending it with the ticket number

comment:14 Changed 6 years ago by bwerth

r16106 renamed branch to include ticket number

comment:15 Changed 5 years ago by jkarder

r16537: updated build script

comment:16 Changed 4 years ago by bwerth

r17332 updated persistence to HEAL.Attic

comment:17 Changed 4 years ago by bwerth

r17337 forgot to add Storable Tags to Interfaces

Note: See TracTickets for help on using tickets.