tutorial on evolutionary multiobjective optimization

Upload: humejias

Post on 04-Apr-2018

233 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    1/34

    A Tutorial on EvolutionaryA Tutorial on EvolutionaryMultiobjectiveMultiobjective OptimizationOptimization

    Eckart Zitzler

    Computer Engineering and Networks Lab

    Swiss Federal Institute of Technology (ETH) Zurich

    Computer EngineeringComputer Engineering

    and Networks Laboratoryand Networks Laboratory

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    2/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMOverviewOverview

    n The Big Picture:Optimization and evolutionary computation

    o The Construction Kit:

    Design issues and algorithmic concepts

    p The Pieces Put Together:

    Example of an algorithm variantq The Big Question:

    Performance of evolutionary algorithms

    r The Challenge:

    Standard interface for search algorithms

    sThe End:Conclusions and outlook

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    3/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMDecision and Objective SpaceDecision and Objective Space

    y2

    y1

    x2

    x1

    (x1, x2, , xn) f (y1, y2, , yk)

    decisionspace

    objectivespace

    search evaluation

    Pareto setPareto set approximation Pareto frontPareto front approximation

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    4/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMOptimization and Decision MakingOptimization and Decision Making

    y1

    y2 Pareto optimality:defines set of optimal trade-offs

    (all objectives equally important)

    Decision making:

    choose best compromise

    (based on preference information)

    n Decision making before search (define single objective)

    o Decision making after search (find/approximate Pareto set first)

    p Decision making during search (guide search interactively)

    q Combinations of the above

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    5/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMStochastic Search AlgorithmsStochastic Search Algorithms

    selection

    environmental

    selection

    mating

    selection

    variationmemory

    EA 1 both 1 N : M

    1 randomized

    TS 1 no mating selection 1 1 : M

    1 deterministic

    SA 1 no mating selection 1 1 : M

    1 randomized

    ACO 1 neither 1 1 : 11 randomized

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    6/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMOutline of a Simple Evolutionary AlgorithmOutline of a Simple Evolutionary Algorithm

    0100

    0011 = 1 solution

    fitness

    evaluation

    0111 fitness = 19

    mating selection

    recombination

    0011

    0000

    mutation

    0011

    1011

    environmentalselection

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    7/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMOverviewOverview

    n The Big Picture:Optimization and evolutionary computation

    o The Construction Kit:

    Design issues and algorithmic concepts

    p The Pieces Put Together:

    Example of an algorithm variantq The Big Question:

    Performance of evolutionary algorithms

    r The Challenge:Standard interface for search algorithms

    sThe End:Conclusions and outlook

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    8/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMIssues in EMOIssues in EMO

    y2

    y1

    Diversity

    Convergence

    How to maintain a diverse

    Pareto set approximation?

    odensity estimation

    How to prevent nondominated

    solutions from being lost?

    p environmental selection

    How to guide the population

    towards the Pareto set?

    nmating selection

    i i i

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    9/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMFitness Assignment StrategiesFitness Assignment Strategies

    y1

    y2

    y1

    y2y2

    y1

    aggregation-based criterion-based dominance-based

    parameter-orientedscaling-dependent set-orientedscaling-independent

    weighted sum VEGA SPEA2

    iD i d kiB d R ki

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    10/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMDominanceDominance--Based RankingBased Ranking

    Types of information:dominance rank by how many individuals is an

    individual dominated?

    dominance count how many individuals does an

    individual dominate?

    dominance depth at which front is an individual

    located?

    Examples:MOGA, NPGA dominance rank

    NSGA/NSGA-II dominance depth

    SPEA/SPEA2 dominance count + rank

    E k t Zit l MOMH 200

    Di i P iDi it P ti

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    11/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMDiversity PreservationDiversity Preservation

    Density estimation techniques: [Silverman: 1986]

    ff

    f

    Kernel

    MOGA

    density estimate=

    sum of f values

    where f is afunction of the

    distance

    Nearest neighbor

    SPEA2

    density estimate=

    volume of the

    sphere defined bythe nearest

    neighbor

    Histogram

    PAES

    density estimate=

    number of

    solutions in thesame box

    Eckart Zitzler MOMH 200

    E i t l S l tiE i t l S l ti

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    12/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMEnvironmental SelectionEnvironmental Selection

    old population offspring

    newpopulation

    offspring archive

    newarchive

    old population

    newpopulation

    Variant 1: without archive Variant 2: with archive

    Selection criteria:

    Dominance: only nondominated solutions are kept

    Density: less crowded regions are preferred to crowded regions

    Time: old archive members are preferred to new solutions

    Chance: each solution has the same probability to enter the archive

    Eckart Zitzler MOMH 200

    O iO i

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    13/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMOverviewOverview

    n The Big Picture:Optimization and evolutionary computation

    o The Construction Kit:

    Design issues and algorithmic concepts

    p The Pieces Put Together:

    Example of an algorithm variantq The Big Question:

    Performance of evolutionary algorithms

    r The Challenge:Standard interface for search algorithms

    s The End:

    Conclusions and outlook

    Eckart Zitzler MOMH 200

    SPEA2 Al ithSPEA2 Algorithm

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    14/34

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EM

    Step 1: Generate initial population P0 and empty archive

    (external set) A0. Set t = 0.

    Step 2: Calculate fitness values of individuals in Pt and At.

    Step 3: At+1 = nondominated individuals in Pt and At.

    If size of At+1 > N then reduce At+1, else ifsize of At+1 < N then fill At+1 with dominated

    individuals in Pt and At.

    Step 4: If t > T then output the nondominated set of At+1.Stop.

    Step 5: Fill mating pool by binary tournament selection

    with replacement on At+1.Step 6: Apply recombination and mutation operators to

    the mating pool and set Pt+1 to the resulting

    population. Set t = t + 1 and go to Step 2.

    SPEA2 AlgorithmSPEA2 Algorithm

    [Zitzler, Laumanns, Thiele: 2001]

    Eckart Zitzler MOMH 200

    Pareto Fitness AssignmentPareto Fitness Assignment

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    15/34

    ETH Zrich Tutorial on EMPareto Fitness AssignmentPareto Fitness Assignment

    y2

    y1

    2

    14

    5+45+7

    5+2

    SPEA

    y2

    y1

    0

    00

    4+3+2

    2+1+4+3+2

    2

    4

    4+3

    SPEA2

    S (strength) =

    #dominated solutions

    R (raw fitness) = N +

    strengths of dominators

    S (strength) =

    #dominated solutions

    R (raw fitness) =

    strengths of dominators

    Eckart Zitzler MOMH 200

    Diversity PreservationDiversity Preservation

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    16/34

    ETH Zrich Tutorial on EMDiversity PreservationDiversity Preservation

    Density Estimation

    k-th nearest neighbor method:

    Fitness = R + 1 / (2 + Dk)

    Dk = distance to the k-th

    nearest individual

    k = popsize + archivesize

    Truncation

    Incremental approach:

    Remove individual A for which

    A

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    17/34

    ETH Zrich Tutorial on EMOverviewOverview

    n The Big Picture:Optimization and evolutionary computation

    o The Construction Kit:

    Design issues and algorithmic concepts

    p The Pieces Put Together:

    Example of an algorithm variantq The Big Question:

    Performance of evolutionary algorithms

    r The Challenge:Standard interface for search algorithms

    s The End:

    Conclusions and outlook

    Eckart Zitzler MOMH 200

    lPerformance Assessment: ApproachesPerformance Assessment: Approaches

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    18/34

    ETH Zrich Tutorial on EMPerformance Assessment: ApproachesPerformance Assessment: Approaches

    n Theoretically (by analysis): difficult

    Limit behavior

    Is the Pareto set found, if there are unlimited run-timeresources?

    Run-time analysis

    How long does it take to generate the Pareto set with high

    probability?

    o Empirically (by simulation): standard

    Eckart Zitzler MOMH 200

    T t i l EMLimit BehaviorLimit Behavior

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    19/34

    ETH Zrich Tutorial on EMLimit BehaviorLimit Behavior

    Basic assumptions:Every solution can be generated from every other solution by

    mutation

    The number of iterations tgoes to infinity (t)

    Studies:

    Convergence: [Hanne: 1999][Rudolph, Agapie: 2000]

    Diversity: e.g., [Knowles, Corne: 2000][Deb et al.: 2001]

    Convergence + diversity:

    Unlimited memory resources [Rudolph and Agapie: 2000]

    Limited memory resources [Laumanns et al.: 2002]

    Eckart Zitzler

    ETH Z i h

    MOMH 200

    Tutorial on EMEpsilon DominanceEpsilon Dominance

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    20/34

    ETH Zrich Tutorial on EMEpsilon DominanceEpsilon Dominance

    Definition 1: -DominanceA -dominates B iff f(A) f(B)

    (known since 1987)

    Definition 2: -Pareto set

    subset of the Pareto set

    which -dominates all Pareto-optimal solutions

    -dominated

    dominated

    Pareto front

    -Pareto front

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMAchieving Convergence and DiversityAchieving Convergence and Diversity

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    21/34

    ETH Zrich Tutorial on EMAchieving Convergence and DiversityAchieving Convergence and Diversity

    Goal: Maintain -Pareto setIdea: -grid, i.e. maintain a

    set of nondominated

    boxes (one solutionper box)

    Algorithm: (-update)

    Accept a child if

    n the corresponding box is not

    dominated by any box that

    contains an individual

    AND

    o any other individual in the samebox is dominated by the new

    solution

    y2

    y1

    2

    2

    3

    3

    1

    1

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMRunRun--Time Analysis of aTime Analysis of a MultiobjectiveMultiobjective EAEA

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    22/34

    ETH Zrich Tutorial on EMRunRun Time Analysis of aTime Analysis of a MultiobjectiveMultiobjective EAEA

    Basic question: [Laumanns et al.: 2002]

    What is the worst case run-time of a multiobjective EA to find

    the Pareto set with high probability?

    Scenario:Problem: leading ones,

    trailing zeros (LOTZ)

    Variation: single

    point mutation

    1 1 0 1 0 0 0

    1 1 1 0 0 0

    1 1 1 0 0 01

    0

    y2

    y1

    0 0 0 0 0 0 0

    trailing 0s

    leading 1s

    1 1 1 1 1 1 1

    1 1 1 1 0 0 0

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMTwo SimpleTwo Simple Multiobjective EAsMultiobjective EAs

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    23/34

    ETH Zrich Two SimpleTwo Simple Multiobjective EAsMultiobjective EAs

    select

    individualfrom archive

    insert

    into archive

    if not dominated

    remove

    dominatedfrom archive

    flip

    randomlychosen bit

    Variant 1: SEMOEach individual in the

    archive is selected with

    the same probability

    (uniform selection)

    Variant 2: FEMOSelect individual with

    minimum number of

    children

    (fair selection)

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMResults of AnalysisResults of Analysis

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    24/34

    ETH Zrich Results of AnalysisResults of Analysis

    Simple multiobjective EA with uniform selection (SEMO): (n )To get to the Pareto front requires n steps

    To cover the entire front needs n steps

    Simple multiobjective EA with fair selection (FEMO): (n log n)

    Fair selection helps to spread over the Pareto front

    Multistart single-objective optimizer: (n )

    In average, one out ofn mutations successful

    To get to the Pareto front, n successful mutations needed

    Overall n Pareto-optimal solutions have to be found

    3

    3

    2

    2

    3

    multiobjective EA faster than multistart strategy

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMEmpirical Performance AssessmentEmpirical Performance Assessment

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    25/34

    Empirical Performance AssessmentEmpirical Performance Assessment

    Issues: quality measures, statistical testing, benchmark problems,visualization,

    Popular approach: unary quality measures

    Assign each outcome a real number

    Outcomes are compared by comparing the corresponding values

    Hypervolume

    [Zitzler, Thiele: PPSN1998]

    Generational Distance

    [Van Veldhuizen: 1999]

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMQuality Measures: Theoretical Results IQuality Measures: Theoretical Results I

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    26/34

    Quality Measures: Theoretical Results IQ y

    There is no combination of unary quality measures such thatS is better than T in all criteria is equivalent to S dominates T

    ST

    application of

    quality measures

    Basic question: Can we say on the basis of the quality measures

    whetheror thatan algorithm outperforms another?

    hypervolume 432.34 420.13

    distance 0.3308 0.4532

    diversity 0.3637 0.3463

    spread 0.3622 0.3601

    cardinality 6 5

    S T

    Unary quality measures usually do not tell thatS dominates T; at maximum that S does not dominate T

    [Zitzler et al.: 2002]

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMQuality Measures: Theoretical Results IIQuality Measures: Theoretical Results II

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    27/34

    Q yQ y

    Many popular quality measures are not compliantwith the dominance relation

    [Hansen, Jaszkiewicz: 1998][Knowles, Corne: 2002][Zitzler et al.: 2002]

    Example: diversity measures

    Needed: appropriate binary quality measures that indicatewhetheran outcome dominates another, e.g., -measure

    ST

    S better diversityvalue than T

    ST

    T better diversityvalue than S

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMEpsilon Quality MeasureEpsilon Quality Measure

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    28/34

    p Q yp Q y

    Definition 3: single solutionsI(A,B) = minimum such that

    A -dominates B

    Definition 4: sets of solutions

    I(S,T) = minimum such thateach solution in T is

    -dominated by at leastone solution in S

    AB

    S

    T[Zitzler et al.: 2002]

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMOverviewOverview

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    29/34

    nThe Big Picture:Optimization and evolutionary computation

    o The Construction Kit:

    Design issues and algorithmic concepts

    p The Pieces Put Together:

    Example of an algorithm variant

    q The Big Question:

    Performance of evolutionary algorithms

    r The Challenge:Standard interface for search algorithms

    s The End:

    Conclusions and outlook

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMImplementation: Current SituationImplementation: Current Situation

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    30/34

    pp

    Application engineerknowledge in the algorithm

    domain necessary

    state-of-the-art algorithms getmore and more complex

    many algorithms

    Algorithm designercomparison to competing

    algorithms mandatory

    tests on various benchmarkproblems necessary

    algorithms and applications

    become increasingly complex

    high implementation effort / risk of implementation errors

    Programming libraries:

    valuable tools to tailor a particular technique to a specific application

    exchange of optimization algorithm or application still difficult

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMThe Concept of PISAThe Concept of PISA

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    31/34

    SPEA2

    NSGA-II

    PAES

    Algorithms Applications

    knapsack

    TSP

    network

    design

    text-based

    Platform and programming language independent Interface

    for Search Algorithms [Bleuler et al.: 2002]

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMPISA: ImplementationPISA: Implementation

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    32/34

    selector

    process

    selector

    process

    text

    files

    sharedfile system

    sharedfile system

    variator

    process

    variator

    process

    application independent:

    mating / environmentalselection

    individuals are described

    by IDs and objective

    vectors

    handshake protocol:

    state / actionindividual IDs

    objective vectors

    parameters

    application dependent:

    variation operatorsstores and manages

    individuals

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMConclusionsConclusions

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    33/34

    Why using an evolutionary algorithm?Flexibility: problem formulation can be easily modified /

    extended (minimum requirements)

    Multiple objectives: the solution space can be explored in asingle optimization run

    Feasibility: EAs are applicable to complex and huge search

    spacesWhy multiobjective optimization?

    Robustness: aggregation of several objectives into a single one

    requires setting of parametersConfidence: it is easier to select a solution if alternatives are

    known

    Main application of EMO: design space exploration

    Eckart Zitzler

    ETH Zrich

    MOMH 200

    Tutorial on EMMore onMore on EMOEMO

  • 7/30/2019 Tutorial on Evolutionary Multiobjective Optimization

    34/34

    Links:

    EMO mailing list:http://w3.ualg.pt/lists/emo-list/

    EMO bibliography:

    http://www.lania.mx/~ccoello/EMOO/PISA website:http://www.tik.ee.ethz.ch/pisa/

    Events:

    Conference on Evolutionary Multi-Criterion Optimization (EMO 2003),

    April 8-11, 2003, Algarve, Portugal:http://conferences.ptrede.com/emo03/

    Acknowledgments:

    Stefan Bleuler, Marco Laumanns, Lothar Thiele