gado: a genetic algorithm for design optimizationcobweb.cs.uga.edu/~khaled/gado.pdfgado: genetic...

42
GADO: A Genetic Algorithm for Design Optimization Khaled Rasheed Computer Science Dept. University of Georgia [email protected] http://www.cs.uga.edu/~khaled

Upload: ngodan

Post on 05-Apr-2018

219 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

GADO: A Genetic Algorithm for Design Optimization

Khaled RasheedComputer Science Dept.

University of [email protected]

http://www.cs.uga.edu/~khaled

Page 2: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Presentation outline

• Introduction• Architecture of GADO• Comparison to other methods• Ongoing work

• Gnerating and using reduced models• Multi-objective optimization

• Conclusion

Page 3: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

The engineering design optimization problem

• Objective• Given a tool that evaluates designs, find the best design

according to some measure of merit and subject to some constraints

• Parametric design

• Example• Given an aircraft simulator• Design a supersonic aircraft capable of taking 70

passengers from Chicago to Paris in 3 hours• The aircraft should have the minimum takeoff mass

(measure of merit)• The wings should be strong enough to hold the weight of

the aircraft in all stages (constraint)

Page 4: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Objective: Optimization Method Tailored to Design

• Properties of complex design domains:• Many unevaluable points

• Simulators are designed for use by humans• Many infeasible points• Expensive evaluation functions• Discontinuity of design space• Many local optima

• Physical or numerical

Page 5: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Domain 1: Supersonic aircraft design

0

17.5813

45.0132

62.5945

01.6764

5.53123

-12.8733 0 12.8733

• 12 parameters • 37 inequality constraints• 0.6% of the space is

evaluable

Page 6: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Aircraft search space cross section

Exhaust Nozzle Design: Isosurface Visualization

Page 7: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Domain 2: Missile inlet design (NIDA)

ab c d e

f gh

l

m nj

k

i

D/2

throat "constant" cross-section(cross section increases slightly)

uniform cross-section

subsonic diffuser

shock

• 8 parameters• 20 inequality constraints• 3% evaluable, 0.147% feasible

Page 8: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

NIDA search space cross section

0.338

0.34

0.342

0.344

0.346

0.348

0.35

0.352

0.354

23.5 24 24.5 25 25.5

Tota

l Pre

ssur

e R

ecov

ery

Feasible

Xd

Page 9: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Genetic Algorithm Based Design Optimization

• Maintains a population of potential designs (individuals)

• Better designs are generated using• Crossover: 2 designs from the current population combine

attributes• Mutation: 1 design changes attributes

• Fitness of a design is based on measure of merit and constraint violation(penalty)

Page 10: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Elements of a steady state genetic algorithm

• Representation• Fitness function• Initialization strategy• Selection strategy• Crossover operators• Mutation operators• replacement strategy

Population

Newborn

C1 C2

Mutation

Crossover

Selection

Replacement

Page 11: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

GADO: Genetic Algorithm for Design Optimization

Crossover Mutation Replacement Search-ControlPointLineDouble LineUniformGuided

UniformNon-UniformGreedyShrinking-Window

Crowding Screening ModuleDiversity Maintainance

Representation Fitness Initialization Selection Repeated RandomFloating point Adaptive Penalty Rank-Based

Page 12: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

GADO: Genetic Algorithm for Design Optimization

• Most Novel ideas:• Guided crossover• Screening module• Diversity maintenance module• Adaptive penalty functions

Page 13: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Guided Crossover

• Method:• Select one point• Find second point in "best" direction• Pick a point along the line connecting them

• Motivation:• Add gradient-like functionality without

expense of computing gradients

Page 14: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Screening Module

• Method:• Find k nearest neighbors• Discard if all k are below threshold• Threshold = Function of current population

• Motivation:• Decreases number of evaluations by avoiding

unevaluable regions, as identified in past evaluations

• Can eliminate >30% of evaluations• Negligible overhead

Page 15: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Diversity Maintenance Module

• Method:• At start compute inter-solution distances• If inter-solution distances are too small relative

to this, reseed from earlier population elements• Reject points near past points

• Motivation:• Maintains diversity• Fewer evaluations

Page 16: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Adaptive Penalties

• Method:• Fitness = Measure of merit + Penalty• Penalty = c(t) × ∑ constraint violations• c(t) increases whenever the best element of the

population does not have the least constraint violation• c(t) can also decrease to inject "slightly" infeasible

points into the population

Optimum

Feasible

Infeasible

Page 17: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Comparison of methods: Conceptual Design of Aircraft

• Random probes:• No feasible points in 50,000 tries

• Multistart CFSQP:• Inferior on average• High variance in quality of solutions

• Genocop III (GENetic algOrithm for Constrained OPtimization),

• ASA (Adaptive Simulated Annealing):• Require feasible starting points• Inferior from "good" starting points

Page 18: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

GADO vs. CFSQP in Aircraft design (domain 1)

170

180

190

200

210

220

230

240

0 2000 4000 6000 8000 10000 12000

Take

off

mas

s(to

n)

Evaluations

’GADO_Aircraft’’CFSQP_Aircraft’

Page 19: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

GADO runs

170

180

190

200

210

220

230

240

0 2000 4000 6000 8000 10000 12000

Take

off

mas

s(to

n)

Evaluations

’GADO_Aircraft_traces’

Page 20: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Multistart CFSQP runs

170

180

190

200

210

220

230

240

0 2000 4000 6000 8000 10000 12000

Take

off

mas

s(to

n)

Evaluations

’CFSQP_Aircraft_traces’

Page 21: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

GADO vs. Genocop III and ASA in Aircraft design domain

180

200

220

240

260

280

300

320

0 2000 4000 6000 8000 10000 12000

Take

off

mas

s(to

n)

Evaluations

’GADO_Aircraft_1’’ASA_Aircraft’

’GCOPIII_Aircraft’

Page 22: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Results in Missile Inlet Design (domain 2)

0.32

0.34

0.36

0.38

0.4

0 500 1000 1500 2000 2500 3000 3500 4000

Tota

l pre

ssur

e re

cove

ry

Evaluations

’GADO_NIDA’’ASA_NIDA’

’GCOPIII_NIDA’’CFSQP_NIDA’

’RP_NIDA’

Page 23: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Case Study: Redesign of a two-dimensional supersonic inlet

• Original designs by ITAM (Russia), redesign by Michael Blaize (Aérospatiale,France)

• First inlet• ITAM design: Total pressure recovery=0.134• GADO: Total pressure recovery=0.194 (1.25 CPU hours)• CFSQP:

• From GADO’s optimum: no improvement• From original (ITAM) design: Total pressure

recovery=0.160• Multistart: no better than the original design (1 CPU

day)

Page 24: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

GADO achieved

• Faster optimizations• Better final designs• lower variance in final design quality• low sensitivity to internal parameters

and setup

Page 25: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Ongoing research directions

• New application domains• Using reduced models for speedup• Multi-objective GADO

Page 26: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Generating and using reduced models for design optimization

• Reduced models and their sources• Generation of reduced models• Using reduced models through

informed operators• Future directions

Page 27: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Reduced models

• Pre-existent:• Simpler physical models• Coarse grids

• Generated:• Functional Approximations (Response

Surfaces)• Least Squares• Neural Networks• Genetic Programming

Page 28: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Observation

• Previous methods do not take properties of design domains into consideration• Unevaluable points• Numerical problems: discontinuity, high non-linearity

• Some approaches make strong assumptions about reduced model accuracy

Page 29: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Generating reduced models by incremental approximate clustering

• Maintain previously encountered points divided into dynamic clusters

• Periodically introduce new clusters and refresh all clusters

• Periodically compute quadratic approximations• Separate approximations for measure of merit and constraints• Global approximation: all points• Cluster approximations: large enough clusters

Page 30: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Approximate evaluation of a new point

• If point’s cluster has approximations, use them, otherwise use global approximations

• Two phase approach:• Classify point using K nearest

neighbors (feasible, infeasible, unevaluable)

• Use classification and proper approximation functions to form fitness

Feasible

Unevaluable

Infeasible

Page 31: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Informed operators

• Idea: replace randomness with decisions informed by the reduced model

• Examples:• Informed initialization• Informed crossover (parents,method)• informed mutation (type,amplitude)

Page 32: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Informed mutation

• Crossover done, followed by several random mutations

• Random mutations are evaluated using reduced model best becomes newborn

Parent 1

parent 2

Crossover

Random mutations

Best mutation becomes newborn

Page 33: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Utility of informed operators in aircraft design

170

180

190

200

210

220

230

240

0 500 1000 1500 2000 2500 3000 3500 4000

Take

off

mas

s(to

n)

Evaluations

’GADO_Aircraft’’GADO_Aircraft_informed’

Page 34: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Speedup with informed operators in aircraft design

170

180

190

200

210

220

230

240

0 2000 4000 6000 8000 10000 12000

Take

off

mas

s(to

n)

Evaluations

’GADO_Aircraft_long’’GADO_Aircraft_informed’

Page 35: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Utility of informed operators in missile inlet design

0.32

0.34

0.36

0.38

0.4

100 200 300 400 500 600 700 800 900 1000

Tota

l pre

ssur

e re

cove

ry

Evaluations

’GADO_NIDA’’GADO_NIDA_informed’

Page 36: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Ongoing and future directions in Reduced Model Utilization

• Dynamic adjustment of degree of reliance on the reduced model• Cost• Recent accuracy

• More systematic ways of using very cheap reduced models

• Use of decomposability and sensitivity information for speedup

• Other strategies (genetic engineering)• Other approximation methods (NNs)

Page 37: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Multi-objective optimization

• Most realistic problems are multi-objective• The goal is to sample the set of non-

dominated solutions (Pareto front)• A solution dominates another if it outperforms it in at least one

objective and is not outperformed by it in any objective• On the Pareto front no solution is better than another when all

objectives are considered simultaneously

• A better multi-objective optimizer is one that provides a dense, well-spread, accurate sampling of the Pareto front

Page 38: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Genetic Algorithms for multi-objective optimization

• A natural approach (population-based)• Several methods exist in two basic

categories• Methods that evaluate all-objectives for each solution• Methods that evaluate only one objective for each solution

• One of the best known methods is NSGA-II by Kalyanmoy Deb

Page 39: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

OEGADO for two objective optimization

• Idea: to use one GADO optimizer for each objective

• The optimizer of each objective forms a reduced model of it (native model)

• The optimizers exchange their reduced models at specified intervals

• Each optimizer uses the imported reduced model (instead of the native model) with informed operators

Page 40: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Comparison of methods in the Welded Beam design domain

0

0.001

0.002

0.003

0.004

0.005

0.006

0.007

0.008

0.009

0 5 10 15 20 25 30 35 40

f 2

f 1

6808 objective evaluations

OEGA

0

0.001

0.002

0.003

0.004

0.005

0.006

0.007

0.008

0.009

0 5 10 15 20 25 30 35 40

f 2

f 1

8000 objective evaluations

NSGA-II

Page 41: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Comparison of methods in the Truss design domain

0

20000

40000

60000

80000

100000

0 0.01 0.02 0.03 0.04 0.05

f 2

f 1

5882 objective evaluations

OEGA

0

20000

40000

60000

80000

100000

0 0.01 0.02 0.03 0.04 0.05

f 2

f 1

6000 objective evaluations

NSGA-II

Page 42: GADO: A Genetic Algorithm for Design Optimizationcobweb.cs.uga.edu/~khaled/gado.pdfGADO: Genetic Algorithm for ... Genetic Algorithms for multi-objective optimization • A natural

Conclusion

• GADO is a GA tailored for design optimization

• Its merit was demonstrated in several realistic and benchmark domains

• Further improvement expected using reduced models

• Several extensions (example: OEGADO)