SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
Biologically inspired design of design

                                                       Ben Bolker

                Departments of Mathematics & Statistics and Biology, McMaster University


                                                 19 December 2010




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   1 / 20
1    Introduction



   2    Biologically inspired optimization



   3    Avenues for exploration/conclusions




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   2 / 20
Outline




   1    Introduction


   2    Biologically inspired optimization


   3    Avenues for exploration/conclusions




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   3 / 20
Biologically inspired design



                                                       Examples:
                                                               micro/macro fluid dynamics:
                                                               kingfisher beaks, robot fish, sharkskin
                                                               materials (Velcro, gecko toes)
                                                               structural color
                                                       Some references:
                                                       http://www.japanfs.org/en_/newsletter/200503-2.html,

                                                       http://www.treehugger.com

                                                       http://brainz.org/15-coolest-cases-biomimicry/




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation                19 December 2010   4 / 20
Evolutionary computation




           Biologically inspired design of design:
           i.e., biologically inspired algorithms
           Can we learn from evolutionary biology? How?
           Generative systems (Genr8, Maya, Rhino . . . )




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   5 / 20
Evolutionary computation




           Biologically inspired design of design:
           i.e., biologically inspired algorithms
           Can we learn from evolutionary biology? How?
           Generative systems (Genr8, Maya, Rhino . . . )




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   5 / 20
Problem: bridge design




   http://imac.epfl.ch/Team/landolf/Rhode%20et%20al%20EG-ICE%2009.pdf


           objective function: cost, performance
           parameter space: area of layer and x-cables; outer diameter,
           diameter-to-thickness ratio of tubular struts; self-stress of layer and
           x-cables



Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   6 / 20
Problem: patio design




                                         Caldas (2008) doi:10.1016/j.aei.2007.08.012




           objective function: (?)
           parameter space: which sides have balconies
           (24 possibilities, encoded as a bit string): discrete



Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   7 / 20
Parameter space




                              http://www.iread.it/lz/hypercube.html


Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   8 / 20
Outline




   1    Introduction


   2    Biologically inspired optimization


   3    Avenues for exploration/conclusions




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   9 / 20
Adaptive landscapes




                                                    Wright 1931
                                                (from Johnson 2008)


Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   10 / 20
“No free lunch” theorem




           Across all all possible optimization problems,
           all optimization algorithms perform equally:
           none is universally best
           . . . a “good” optimization algorithm is only good for some particular
           problems
   http://en.wikipedia.org/wiki/No_free_lunch_in_search_and_optimization

   Ho (2002)        http://resolver.scholarsportal.info/resolve/00223239/v115i0003/549_seotntaii.xml




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   11 / 20
Consequences of NFL for biologically inspired design




   Question
   Does biological evolution use good optimization techniques?




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   12 / 20
Consequences of NFL for biologically inspired design




   Question
   / ///// / / / / / / / / / / / / / / /// good/////////////////// techniques?
   Does/biological/evolution/use//////// optimization///////// / / / /
    /       ////// ////// /                                             ////
   Do evolving systems face the same kinds of problems we do?




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   12 / 20
characteristics of objective functions/landscapes




                                                                                        discrete vs
                                                                                        continuous
                                                                                        single vs multiple
                                                                                        peaks
                                                                                        smooth vs jagged




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation                19 December 2010   13 / 20
Selection




                                                                                        Evolution occurs in
                                                                                        populations
                                                                                        Offspring have
                                                                                        different
                                                                                        characteristics
                                                                                        Best ones survive,
                                                                                        the population
                                                                                        “climbs the hill”




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation                  19 December 2010   14 / 20
mutation



                                                                     In order to move (and get out
                                                                     of local minima), need to
                                                                     maintain variation: mutation
                                                                            too little mutation: slow
                                                                            movement
                                                                            too much: constantly
                                                                            losing fitness
                                                                     Selection+mutation = “asexual
                                                                     reproduction”

         http://en.wikipedia.org/wiki/TMNT




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   15 / 20
crossover/recombination


                                                                            let individuals “mate”
                                                                            randomly select some
                                                                            characteristics from each
                                                                            parent
                                                                            combines features of two
                                                                            different solutions:
                                                                            building blocks
                                                                            hypothesis
                                                                            tradeoff: can also break
                                                                            up good combinations
         http://www.flickr.com/photos/ajc1/
                                                                            modularity is important
         1103490291/sizes/o/




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   16 / 20
specific algorithms


                                                         1                                              10

                           q
                                     q                   q           q              q                                      genetic algorithms
                                             q



                  q
                  q
                      qq

                                             q q
                                                                                   q           q
                                                                                                   qq   q
                                                                                                        q

                                                                                                       qq qq
                                                                                                    q qq
                                                                                                              qq
                                                                                                               q

                                                                                                                   q
                                                                                                                               translate numeric parameters
                                                                                                      qq    q
                                                                              qq

              q
                      q
                       q q
                       q
                             q

                                                        q
                                                         q
                                                         q
                                                                     qq
                                                                         q
                                                                              q
                                                                                               q
                                                                                               q
                                                                                               q
                                                                                                   q
                                                                                                   q
                                                                                                   q
                                                                                                   q qq

                                                                                                   q
                                                                                                   qq
                                                                                                    q
                                                                                                       qq
                                                                                                       q
                                                                                                       q  q
                                                                                                        q q
                                                                                                                   q

                                                                                                                   q
                                                                                                                       q
                                                                                                                               into a bit string (e.g. 0011)
                                                                 q                                            q
                                         q                                q   q q

              q                  q       qq
                                                 q
                                                     q
                                                             q


                                                                     q
                                                                             qq
                                                                                           q
                                                                                               q
                                                                                                   q          qq
                                                                                                                               good for discrete problems
                                                                                           q
                                                                                           q

                                                   q
                                                    q
                                                         q                             q

                                                                                                                               does not respect module
                                                     50                                                 999
                                                                                                                               boundaries
                                 q

                                             q
                                                                     q                             q          q    q       differential evolution
                                             q
                                             q       q
                                                     q           q
                                                                 q                                 q     q    q

                                 q           q
                                             q
                                             q

                                             q
                                             q
                                                     q
                                                     qq

                                                        q
                                                                 q
                                                                 q                                 q

                                                                                                   q
                                                                                                         q

                                                                                                         q
                                                                                                              q    q
                                                                                                                               numeric parameters as
                                             q

                                                                                                                               separate “genes”
                                                                                                                               different mutation operation
                                                                                                                               — uses direction information




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation                                                                 19 December 2010   17 / 20
Outline




   1    Introduction


   2    Biologically inspired optimization


   3    Avenues for exploration/conclusions




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   18 / 20
genetic complications (opportunities?)


                                                        genetic structure:
                                                        chromosomes, gene clusters
                                                        non-point mutations:
                                                        deletion, duplication
                                                        mating types (♂, ♀)
                                                        modifiers: dominance, canalization
                                                        genotype-phenotype map:
                                                        integrating developmental biology
                                                        (back to generative systems)
                                                 Which of these are important for
                                                 optimization, and which are accidents?
                                                 (How and why did they evolve?)


Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   19 / 20
evolving complexity




           closing the loop: development + evolution
           can we allow for evolution of complexity (evolving grammars)?
           evolution of modularity
           (adaptive recombination, gene rearrangement)
   It’s cool, but is it worth it?




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   20 / 20
tradeoffs




           general vs. problem-specific solutions (NFL)
           performance vs robustness (both in optimization algorithms and
           solutions)
           programming vs computation time
           computation vs “meta-computation”




Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University)
                                                    Evolutionary computation            19 December 2010   21 / 20

Weitere ähnliche Inhalte

Mehr von Ben Bolker

evolution of virulence: devil in the details
evolution of virulence: devil in the detailsevolution of virulence: devil in the details
evolution of virulence: devil in the detailsBen Bolker
 
model complexity and model choice for animal movement models
model complexity and model choice for animal movement modelsmodel complexity and model choice for animal movement models
model complexity and model choice for animal movement modelsBen Bolker
 
model complexity and model choice for animal movement models
model complexity and model choice for animal movement modelsmodel complexity and model choice for animal movement models
model complexity and model choice for animal movement modelsBen Bolker
 
Fundamental principles (?) of biological data
Fundamental principles (?) of biological dataFundamental principles (?) of biological data
Fundamental principles (?) of biological dataBen Bolker
 
ESS of minimal mutation rate in an evo-epidemiological model
ESS of minimal mutation rate in an evo-epidemiological modelESS of minimal mutation rate in an evo-epidemiological model
ESS of minimal mutation rate in an evo-epidemiological modelBen Bolker
 
math bio for 1st year math students
math bio for 1st year math studentsmath bio for 1st year math students
math bio for 1st year math studentsBen Bolker
 
MBRS detectability talk
MBRS detectability talkMBRS detectability talk
MBRS detectability talkBen Bolker
 
Waterloo GLMM talk
Waterloo GLMM talkWaterloo GLMM talk
Waterloo GLMM talkBen Bolker
 
Waterloo GLMM talk
Waterloo GLMM talkWaterloo GLMM talk
Waterloo GLMM talkBen Bolker
 
Bolker esa2014
Bolker esa2014Bolker esa2014
Bolker esa2014Ben Bolker
 
Davis eco-evo virulence
Davis eco-evo virulenceDavis eco-evo virulence
Davis eco-evo virulenceBen Bolker
 
intro to knitr with RStudio
intro to knitr with RStudiointro to knitr with RStudio
intro to knitr with RStudioBen Bolker
 
Stats sem 2013
Stats sem 2013Stats sem 2013
Stats sem 2013Ben Bolker
 
computational science & engineering seminar, 16 oct 2013
computational science & engineering seminar, 16 oct 2013computational science & engineering seminar, 16 oct 2013
computational science & engineering seminar, 16 oct 2013Ben Bolker
 
Disease-induced extinction
Disease-induced extinctionDisease-induced extinction
Disease-induced extinctionBen Bolker
 

Mehr von Ben Bolker (20)

evolution of virulence: devil in the details
evolution of virulence: devil in the detailsevolution of virulence: devil in the details
evolution of virulence: devil in the details
 
model complexity and model choice for animal movement models
model complexity and model choice for animal movement modelsmodel complexity and model choice for animal movement models
model complexity and model choice for animal movement models
 
model complexity and model choice for animal movement models
model complexity and model choice for animal movement modelsmodel complexity and model choice for animal movement models
model complexity and model choice for animal movement models
 
Fundamental principles (?) of biological data
Fundamental principles (?) of biological dataFundamental principles (?) of biological data
Fundamental principles (?) of biological data
 
ESS of minimal mutation rate in an evo-epidemiological model
ESS of minimal mutation rate in an evo-epidemiological modelESS of minimal mutation rate in an evo-epidemiological model
ESS of minimal mutation rate in an evo-epidemiological model
 
math bio for 1st year math students
math bio for 1st year math studentsmath bio for 1st year math students
math bio for 1st year math students
 
MBRS detectability talk
MBRS detectability talkMBRS detectability talk
MBRS detectability talk
 
Waterloo GLMM talk
Waterloo GLMM talkWaterloo GLMM talk
Waterloo GLMM talk
 
Waterloo GLMM talk
Waterloo GLMM talkWaterloo GLMM talk
Waterloo GLMM talk
 
Bolker esa2014
Bolker esa2014Bolker esa2014
Bolker esa2014
 
Montpellier
MontpellierMontpellier
Montpellier
 
Igert glmm
Igert glmmIgert glmm
Igert glmm
 
Davis eco-evo virulence
Davis eco-evo virulenceDavis eco-evo virulence
Davis eco-evo virulence
 
Google lme4
Google lme4Google lme4
Google lme4
 
intro to knitr with RStudio
intro to knitr with RStudiointro to knitr with RStudio
intro to knitr with RStudio
 
Stats sem 2013
Stats sem 2013Stats sem 2013
Stats sem 2013
 
computational science & engineering seminar, 16 oct 2013
computational science & engineering seminar, 16 oct 2013computational science & engineering seminar, 16 oct 2013
computational science & engineering seminar, 16 oct 2013
 
Threads 2013
Threads 2013Threads 2013
Threads 2013
 
Threads 2013
Threads 2013Threads 2013
Threads 2013
 
Disease-induced extinction
Disease-induced extinctionDisease-induced extinction
Disease-induced extinction
 

Evolvability

  • 1. Biologically inspired design of design Ben Bolker Departments of Mathematics & Statistics and Biology, McMaster University 19 December 2010 Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 1 / 20
  • 2. 1 Introduction 2 Biologically inspired optimization 3 Avenues for exploration/conclusions Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 2 / 20
  • 3. Outline 1 Introduction 2 Biologically inspired optimization 3 Avenues for exploration/conclusions Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 3 / 20
  • 4. Biologically inspired design Examples: micro/macro fluid dynamics: kingfisher beaks, robot fish, sharkskin materials (Velcro, gecko toes) structural color Some references: http://www.japanfs.org/en_/newsletter/200503-2.html, http://www.treehugger.com http://brainz.org/15-coolest-cases-biomimicry/ Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 4 / 20
  • 5. Evolutionary computation Biologically inspired design of design: i.e., biologically inspired algorithms Can we learn from evolutionary biology? How? Generative systems (Genr8, Maya, Rhino . . . ) Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 5 / 20
  • 6. Evolutionary computation Biologically inspired design of design: i.e., biologically inspired algorithms Can we learn from evolutionary biology? How? Generative systems (Genr8, Maya, Rhino . . . ) Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 5 / 20
  • 7. Problem: bridge design http://imac.epfl.ch/Team/landolf/Rhode%20et%20al%20EG-ICE%2009.pdf objective function: cost, performance parameter space: area of layer and x-cables; outer diameter, diameter-to-thickness ratio of tubular struts; self-stress of layer and x-cables Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 6 / 20
  • 8. Problem: patio design Caldas (2008) doi:10.1016/j.aei.2007.08.012 objective function: (?) parameter space: which sides have balconies (24 possibilities, encoded as a bit string): discrete Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 7 / 20
  • 9. Parameter space http://www.iread.it/lz/hypercube.html Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 8 / 20
  • 10. Outline 1 Introduction 2 Biologically inspired optimization 3 Avenues for exploration/conclusions Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 9 / 20
  • 11. Adaptive landscapes Wright 1931 (from Johnson 2008) Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 10 / 20
  • 12. “No free lunch” theorem Across all all possible optimization problems, all optimization algorithms perform equally: none is universally best . . . a “good” optimization algorithm is only good for some particular problems http://en.wikipedia.org/wiki/No_free_lunch_in_search_and_optimization Ho (2002) http://resolver.scholarsportal.info/resolve/00223239/v115i0003/549_seotntaii.xml Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 11 / 20
  • 13. Consequences of NFL for biologically inspired design Question Does biological evolution use good optimization techniques? Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 12 / 20
  • 14. Consequences of NFL for biologically inspired design Question / ///// / / / / / / / / / / / / / / /// good/////////////////// techniques? Does/biological/evolution/use//////// optimization///////// / / / / / ////// ////// / //// Do evolving systems face the same kinds of problems we do? Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 12 / 20
  • 15. characteristics of objective functions/landscapes discrete vs continuous single vs multiple peaks smooth vs jagged Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 13 / 20
  • 16. Selection Evolution occurs in populations Offspring have different characteristics Best ones survive, the population “climbs the hill” Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 14 / 20
  • 17. mutation In order to move (and get out of local minima), need to maintain variation: mutation too little mutation: slow movement too much: constantly losing fitness Selection+mutation = “asexual reproduction” http://en.wikipedia.org/wiki/TMNT Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 15 / 20
  • 18. crossover/recombination let individuals “mate” randomly select some characteristics from each parent combines features of two different solutions: building blocks hypothesis tradeoff: can also break up good combinations http://www.flickr.com/photos/ajc1/ modularity is important 1103490291/sizes/o/ Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 16 / 20
  • 19. specific algorithms 1 10 q q q q q genetic algorithms q q q qq q q q q qq q q qq qq q qq qq q q translate numeric parameters qq q qq q q q q q q q q q qq q q q q q q q q q qq q qq q qq q q q q q q q q into a bit string (e.g. 0011) q q q q q q q q qq q q q q qq q q q qq good for discrete problems q q q q q q does not respect module 50 999 boundaries q q q q q q differential evolution q q q q q q q q q q q q q q q q qq q q q q q q q q q numeric parameters as q separate “genes” different mutation operation — uses direction information Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 17 / 20
  • 20. Outline 1 Introduction 2 Biologically inspired optimization 3 Avenues for exploration/conclusions Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 18 / 20
  • 21. genetic complications (opportunities?) genetic structure: chromosomes, gene clusters non-point mutations: deletion, duplication mating types (♂, ♀) modifiers: dominance, canalization genotype-phenotype map: integrating developmental biology (back to generative systems) Which of these are important for optimization, and which are accidents? (How and why did they evolve?) Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 19 / 20
  • 22. evolving complexity closing the loop: development + evolution can we allow for evolution of complexity (evolving grammars)? evolution of modularity (adaptive recombination, gene rearrangement) It’s cool, but is it worth it? Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 20 / 20
  • 23. tradeoffs general vs. problem-specific solutions (NFL) performance vs robustness (both in optimization algorithms and solutions) programming vs computation time computation vs “meta-computation” Ben Bolker (Departments of Mathematics & Statistics and Biology, McMaster University) Evolutionary computation 19 December 2010 21 / 20