An Introduction to Applied Evolutionary Metaheuristics Jonny Anderson Image: http://www.43things.com/people/progress/dogonwheels/251399 A strange attractor
An Introduction to Applied Evolutionary Metaheuristics Define “metaheuristic” Examine evolutionary algorithms Explore problem constraints Apply an evolutionary algorithm to a farm Discuss the implications for farm sustainability
What is a metaheuristic?
What is a metaheuristic? A  heuristic  is a function that finds an  approximate  result, it is an algorithmic  rule of thumb A  metaheuristic  is a function that consists of heuristic sub-routines. It is a compound heuristic. Metaheuristics are useful for hard problems that resist brute-force techniques A metaheuristic algorithm can quickly return results that are  good enough An example of a metaheuristic is an  evolutionary algorithm
What is a metaheuristic? A  heuristic  is a function that finds an  approximate  result, it is an algorithmic  rule of thumb A  metaheuristic  is a function that consists of heuristic sub-routines. It is a compound heuristic. Metaheuristics are useful for hard problems that resist brute-force techniques A metaheuristic algorithm can quickly return results that are  good enough An example of a metaheuristic is an  evolutionary algorithm
What is a metaheuristic? A  heuristic  is a function that finds an  approximate  result, it is an algorithmic  rule of thumb A  metaheuristic  is a function that consists of heuristic sub-routines. It is a compound heuristic. Metaheuristics are useful for hard problems that resist brute-force techniques A metaheuristic algorithm can quickly return results that are  good enough An example of a metaheuristic is an  evolutionary algorithm
What is a metaheuristic? A  heuristic  is a function that finds an  approximate  result, it is an algorithmic  rule of thumb A  metaheuristic  is a function that consists of heuristic sub-routines. It is a compound heuristic. Metaheuristics are useful for hard problems that resist brute-force techniques A metaheuristic algorithm can quickly return results that are  good enough An example of a metaheuristic is an  evolutionary algorithm
What is a metaheuristic? A  heuristic  is a function that finds an  approximate  result, it is an algorithmic  rule of thumb A  metaheuristic  is a function that consists of heuristic sub-routines. It is a compound heuristic. Metaheuristics are useful for hard problems that resist brute-force techniques A metaheuristic algorithm can quickly return results that are  good enough An example of a metaheuristic is an  evolutionary algorithm
What is an evolutionary algorithm?
What is an evolutionary algorithm Natural selection  discovers  solutions to the problem of being alive If we can translate this evolutionary process into a  computer algorithm  Then we would have a powerful  heuristic tool  for discovering  solutions to highly complex problems An evolutionary algorithm  encodes  the process of natural selection  So that solutions to complex problems may be  evolved Image: http://en.wikipedia.org/wiki/Image:Charles_Darwin_by_Julia_Margaret_Cameron_2.jpg Charles Darwin
What is an evolutionary algorithm Natural selection  discovers  solutions to the problem of being alive If we can translate this evolutionary process into a  computer algorithm  Then we would have a powerful  heuristic tool  for discovering  solutions to highly complex problems An evolutionary algorithm  encodes  the process of natural selection  So that solutions to complex problems may be  evolved Image: http://en.wikipedia.org/wiki/Image:Charles_Darwin_by_Julia_Margaret_Cameron_2.jpg Charles Darwin
What is an evolutionary algorithm Natural selection  discovers  solutions to the problem of being alive If we can translate this evolutionary process into a  computer algorithm  Then we would have a powerful  heuristic tool  for discovering  solutions to highly complex problems An evolutionary algorithm  encodes  the process of natural selection  So that solutions to complex problems may be  evolved Image: http://en.wikipedia.org/wiki/Image:Charles_Darwin_by_Julia_Margaret_Cameron_2.jpg Charles Darwin
What is an evolutionary algorithm Natural selection  discovers  solutions to the problem of being alive If we can translate this evolutionary process into a  computer algorithm  Then we would have a powerful  heuristic tool  for discovering  solutions to highly complex problems An evolutionary algorithm  encodes  the process of natural selection   So that solutions to complex problems may be  evolved Image: http://en.wikipedia.org/wiki/Image:Charles_Darwin_by_Julia_Margaret_Cameron_2.jpg Charles Darwin
What is an evolutionary algorithm Natural selection  discovers  solutions to the problem of being alive If we can translate this evolutionary process into a  computer algorithm  Then we would have a powerful  heuristic tool  for discovering  solutions to highly complex problems An evolutionary algorithm  encodes  the process of natural selection  So that solutions to complex problems may be  evolved Image: http://en.wikipedia.org/wiki/Image:Charles_Darwin_by_Julia_Margaret_Cameron_2.jpg Charles Darwin
A general evolutionary algorithm
A general evolutionary algorithm Initialization Create a population of solutions with  randomly generated  characteristics Fitness assignment Assign a fitness value to each solution according to the  problem-specific  definition of fitness  Termination If stopping condition is met then  Stop Breeding and Variation Select the fittest solutions and c ombine  them to create novel children (with a small chance of random mutation)   Go to  Fitness Assignment  The result is an increase in average population fitness over time
A general evolutionary algorithm Initialization Create a population of solutions with  randomly generated  characteristics Fitness assignment Assign a fitness value to each solution according to the  problem-specific  definition of fitness   Termination If stopping condition is met then  Stop Breeding and Variation Select the fittest solutions and c ombine  them to create novel children (with a small chance of random mutation)   Go to  Fitness Assignment  The result is an increase in average population fitness over time
A general evolutionary algorithm Initialization Create a population of solutions with  randomly generated  characteristics Fitness assignment Assign a fitness value to each solution according to the  problem-specific  definition of fitness  Termination If stopping condition is met then  Stop Breeding and Variation Select the fittest solutions and c ombine  them to create novel children (with a small chance of random mutation)   Go to  Fitness Assignment   The result is an increase in average population fitness over time
A general evolutionary algorithm Initialization Create a population of solutions with  randomly generated  characteristics Fitness assignment Assign a fitness value to each solution according to the  problem-specific  definition of fitness  Termination If stopping condition is met then  Stop Breeding and Variation Select the fittest solutions and c ombine  them to create novel children (with a small chance of random mutation)   Go to  Fitness Assignment  The result is an increase in average population fitness over time
A general evolutionary algorithm Initialization Create a population of solutions with  randomly generated  characteristics Fitness assignment Assign a fitness value to each solution according to the  problem-specific  definition of fitness  Termination If stopping condition is met then  Stop Breeding and Variation Select the fittest solutions and c ombine  them to create novel children (with a small chance of random mutation)   Go to  Fitness Assignment  The result is an increase in average population fitness over time
A general evolutionary algorithm Initialization Create a population of solutions with  randomly generated  characteristics Fitness assignment Assign a fitness value to each solution according to the  problem-specific  definition of fitness  Termination If stopping condition is met then  Stop Breeding and Variation Select the fittest solutions and c ombine  them to create novel children (with a small chance of random mutation)   Go to  Fitness Assignment   The result is an increase in average population fitness over time
Searching state-space
Searching state-space State-space is the set of all possible solution states Certain problems have a large state-space making them difficult to solve Evolutionary algorithms will evaluate many points in the state-space  at the same time This is called  Implicit Parallelism It allows evolutionary algorithms to remain effective for problems with a large state-space 4-D state-space Image: https://wci.llnl.gov/codes/visit/gallery_22.html
Searching state-space State-space is the set of all possible solution states Certain problems have a large state-space making them difficult to solve Evolutionary algorithms will evaluate many points in the state-space  at the same time This is called  Implicit Parallelism It allows evolutionary algorithms to remain effective for problems with a large state-space 4-D state-space Image: https://wci.llnl.gov/codes/visit/gallery_22.html
Searching state-space State-space is the set of all possible solution states Certain problems have a large state-space making them difficult to solve Evolutionary algorithms will evaluate many points in the state-space  at the same time This is called  Implicit Parallelism It allows evolutionary algorithms to remain effective for problems with a large state-space 4-D state-space Image: https://wci.llnl.gov/codes/visit/gallery_22.html
Searching state-space State-space is the set of all possible solution states Certain problems have a large state-space making them difficult to solve Evolutionary algorithms will evaluate many points in the state-space  at the same time This is called  Implicit Parallelism It allows evolutionary algorithms to remain effective for problems with a large state-space 4-D state-space Image: https://wci.llnl.gov/codes/visit/gallery_22.html
Searching state-space State-space is the set of all possible solution states Certain problems have a large state-space making them difficult to solve Evolutionary algorithms will evaluate many points in the state-space  at the same time This is called  Implicit Parallelism It allows evolutionary algorithms to remain effective for problems with a large state-space 4-D state-space Image: https://wci.llnl.gov/codes/visit/gallery_22.html
Single objective evolutionary algorithms
Single objective evolutionary algorithms A single objective evolutionary algorithm exists to solve  single objective problems A standard single objective problem is the  Travelling Salesperson Problem  or TSP. This states: Given a number of cities and the distance from any city to any other city.  What is the shortest round-trip route that visits each city exactly once and then returns to the starting city?   Objective = [minimise route length] Image: http://www.cs.princeton.edu/courses/archive/spr05/cos126/assignments/tsp.html TSP : 1000 Cities
Single objective evolutionary algorithms A single objective evolutionary algorithm exists to solve  single objective problems A standard single objective problem is the  Travelling Salesperson Problem  or TSP. This states: Given a number of cities and the distance from any city to any other city.  What is the shortest round-trip route that visits each city exactly once and then returns to the starting city?   Objective = [minimise route length] Image: http://www.cs.princeton.edu/courses/archive/spr05/cos126/assignments/tsp.html TSP : 1000 Cities
Single objective evolutionary algorithms A single objective evolutionary algorithm exists to solve  single objective problems A standard single objective problem is the  Travelling Salesperson Problem  or TSP. This states: Given a number of cities and the distance from any city to any other city.   What is the shortest round-trip route that visits each city exactly once and then returns to the starting city?   Objective = [minimise route length] Image: http://www.cs.princeton.edu/courses/archive/spr05/cos126/assignments/tsp.html TSP : 1000 Cities
Single objective evolutionary algorithms A single objective evolutionary algorithm exists to solve  single objective problems A standard single objective problem is the  Travelling Salesperson Problem  or TSP. This states: Given a number of cities and the distance from any city to any other city.  What is the shortest round-trip route that visits each city exactly once and then returns to the starting city?   Objective = [minimise route length] Image: http://www.cs.princeton.edu/courses/archive/spr05/cos126/assignments/tsp.html TSP : 1000 Cities
Single objective evolutionary algorithms A single objective evolutionary algorithm exists to solve  single objective problems A standard single objective problem is the  Travelling Salesperson Problem  or TSP. This states: Given a number of cities and the distance from any city to any other city.  What is the shortest round-trip route that visits each city exactly once and then returns to the starting city?   Objective = [ minimise route length ] Image: http://www.cs.princeton.edu/courses/archive/spr05/cos126/assignments/tsp.html TSP : 1000 Cities
Single objective evolutionary algorithms Exact algorithms will give the shortest possible route but only work for  200  cities  Although evolutionary algorithms only promise a  usefully  short route They work for  10,000  cities and beyond Implicit parallelism  allows evolutionary algorithms to search  vast  state-spaces Image: https://wci.llnl.gov/codes/visit/gallery_22.html TSP : 100   cities
Single objective evolutionary algorithms Exact algorithms will give the shortest possible route but only work for  200  cities  Although evolutionary algorithms only promise a  usefully  short route They work for  10,000  cities and beyond Implicit parallelism  allows evolutionary algorithms to search  vast  state-spaces Image: https://wci.llnl.gov/codes/visit/gallery_22.html TSP : 100   cities
Single objective evolutionary algorithms Exact algorithms will give the shortest possible route but only work for  200  cities  Although evolutionary algorithms only promise a  usefully  short route They work for  10,000  cities and beyond Implicit parallelism  allows evolutionary algorithms to search  vast  state-spaces Image: https://wci.llnl.gov/codes/visit/gallery_22.html TSP : 100   cities TSP : 13509   cities
Single objective evolutionary algorithms Exact algorithms will give the shortest possible route but only work for  200  cities  Although evolutionary algorithms only promise a  usefully  short route They work for  10,000  cities and beyond Implicit parallelism  allows evolutionary algorithms to search  vast  state-spaces Image: https://wci.llnl.gov/codes/visit/gallery_22.html TSP : 100   cities TSP : 13509   cities
Multi-objective evolutionary algorithms
Multi-objective evolutionary algorithms A multi-objective evolutionary algorithm exists to solve multi-objective problems A multi-objective problem has two or more  conflicting  objectives - Maximising  strength  and minimising  weight This results in many solutions that balance the objectives in different ways Such  trade-off  solutions are called  Pareto optimal Strength v Weight Image : http://www.emergentarchitecture.com/analogies_images/analogy_18/medium.jpg
Multi-objective evolutionary algorithms A multi-objective evolutionary algorithm exists to solve multi-objective problems A multi-objective problem has two or more  conflicting  objectives -  Maximising  strength  and minimising  weight This results in many solutions that balance the objectives in different ways Such  trade-off  solutions are called  Pareto optimal Strength v Weight Image : http://www.emergentarchitecture.com/analogies_images/analogy_18/medium.jpg
Multi-objective evolutionary algorithms A multi-objective evolutionary algorithm exists to solve multi-objective problems A multi-objective problem has two or more  conflicting  objectives - Maximising  strength  and minimising  weight This results in many solutions that balance the objectives in different ways Such  trade-off  solutions are called  Pareto optimal Strength v Weight Image : http://www.emergentarchitecture.com/analogies_images/analogy_18/medium.jpg
Multi-objective evolutionary algorithms A multi-objective evolutionary algorithm exists to solve multi-objective problems A multi-objective problem has two or more  conflicting  objectives - Maximising  strength  and minimising  weight This results in many solutions that balance the objectives in different ways Such  trade-off  solutions are called  Pareto optimal Strength v Weight Image : http://www.emergentarchitecture.com/analogies_images/analogy_18/medium.jpg
What is pareto optimality? [pa-rih-toe]
What is pareto optimality? A solution is pareto-optimal if it has been  fully optimised   Optimising any objective will simply  degrade  the other objectives While pareto-optimal solutions are equally  optimal  they are not equally  useful Therefore a  human decision maker  must make the final choice Image: http://www.longtail.typepad.com Image: Multi-objective Evolutionary Algorithms - A practical presentation of MOEA with examples from mechanical engineering Dr. Jörn Mehnen Vilfredo Pareto
What is pareto optimality? A solution is pareto-optimal if it has been  fully optimised   Optimising any objective will simply  degrade  the other objectives While pareto-optimal solutions are equally  optimal  they are not equally  useful Therefore a  human decision maker  must make the final choice Image: http://www.longtail.typepad.com Image: Multi-objective Evolutionary Algorithms - A practical presentation of MOEA with examples from mechanical engineering Dr. Jörn Mehnen Vilfredo Pareto
What is pareto optimality? A solution is pareto-optimal if it has been  fully optimised   Optimising any objective will simply  degrade  the other objectives While pareto-optimal solutions are equally  optimal  they are not equally  useful Therefore a  human decision maker  must make the final choice Image: http://www.longtail.typepad.com Image: Multi-objective Evolutionary Algorithms - A practical presentation of MOEA with examples from mechanical engineering Dr. Jörn Mehnen Vilfredo Pareto
What is pareto optimality? A solution is pareto-optimal if it has been  fully optimised   Optimising any objective will simply  degrade  the other objectives While pareto-optimal solutions are equally  optimal  they are not equally  useful Therefore a  human decision maker  must make the final choice Image: http://www.longtail.typepad.com Image: Multi-objective Evolutionary Algorithms - A practical presentation of MOEA with examples from mechanical engineering Dr. Jörn Mehnen Vilfredo Pareto
Demo #1 The Pareto Front
Multi-objective evolutionary algorithms  Elitism
Multi-objective evolutionary algorithms Elitism Elitism is used to help  guide  the evolving pareto front The best solutions are retained in a secondary population called the  archive Solutions now  compete  to enter the  elite  archive Only elite members are used for breeding The archive acts a memory preventing the loss of fit solutions   Image:  http://www.irishrunner.com/jamesnwc.jpg Elite Competition
Multi-objective evolutionary algorithms Elitism Elitism is used to help  guide  the evolving pareto front The best solutions are retained in a secondary population called the  archive Solutions now  compete  to enter the  elite  archive Only elite members are used for breeding The archive acts a memory preventing the loss of fit solutions Image:  http://www.irishrunner.com/jamesnwc.jpg Elite Competition
Multi-objective evolutionary algorithms Elitism Elitism is used to help  guide  the evolving pareto front The best solutions are retained in a secondary population called the  archive Solutions now  compete  to enter the  elite  archive Only elite members are used for breeding The archive acts a memory preventing the loss of fit solutions Image:  http://www.irishrunner.com/jamesnwc.jpg Elite Competition
Multi-objective evolutionary algorithms Elitism Elitism is used to help  guide  the evolving pareto front The best solutions are retained in a secondary population called the  archive Solutions now  compete  to enter the  elite  archive Only elite members are used for breeding The archive acts a memory preventing the loss of fit solutions Image:  http://www.irishrunner.com/jamesnwc.jpg Elite Competition
Multi-objective evolutionary algorithms Elitism Elitism is used to help  guide  the evolving pareto front The best solutions are retained in a secondary population called the  archive Solutions now  compete  to enter the  elite  archive Only elite members are used for breeding The archive acts a memory preventing the loss of fit solutions Image:  http://www.irishrunner.com/jamesnwc.jpg Elite Competition
Multi-Objective Evolutionary Algorithms   Maximise the diversity
Multi-objective evolutionary algorithms Maximise the diversity  An evolving front tends to generate  clusters  and so lose  diversity Clusters  waste  resources by confining the search to a small areas Leaving the gaps in between poorly  investigated Image adapted : Zitzler, Eckart and Laumanns, Marco and Thiele, Lothar (2001) SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Evolutionary Methods for Design, Optimisation, and Control.
Multi-objective evolutionary algorithms Maximise the diversity  An evolving front tends to generate  clusters  and so lose  diversity Clusters  waste  resources by confining the search to a small areas Leaving the gaps in between poorly  investigated Image adapted : Zitzler, Eckart and Laumanns, Marco and Thiele, Lothar (2001) SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Evolutionary Methods for Design, Optimisation, and Control.
Multi-objective evolutionary algorithms Maximise the diversity  An evolving front tends to generate  clusters  and so lose  diversity Clusters  waste  resources by confining the search to a small areas Leaving the gaps in between poorly  investigated Image adapted : Zitzler, Eckart and Laumanns, Marco and Thiele, Lothar (2001) SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Evolutionary Methods for Design, Optimisation, and Control.
Multi-objective evolutionary algorithms Maximise the diversity Diversity can be maintained through  pruning Solutions that lie  too clos e to their neighbours are  removed The goal is to have each solution  evenly spaced  with respect to its neighbours Image adapted : Zitzler, Eckart and Laumanns, Marco and Thiele, Lothar (2001) SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Evolutionary Methods for Design, Optimisation, and Control.
Multi-objective evolutionary algorithms Maximise the diversity Diversity can be maintained through  pruning Solutions that lie  too clos e to their neighbours are  removed The goal is to have each solution  evenly spaced  with respect to its neighbours Image adapted : Zitzler, Eckart and Laumanns, Marco and Thiele, Lothar (2001) SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Evolutionary Methods for Design, Optimisation, and Control.
Multi-objective evolutionary algorithms Maximise the diversity Diversity can be maintained through  pruning Solutions that lie  too clos e to their neighbours are  removed The goal is to have each solution  evenly spaced  with respect to its neighbours Image adapted : Zitzler, Eckart and Laumanns, Marco and Thiele, Lothar (2001) SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Evolutionary Methods for Design, Optimisation, and Control.
Demo #2 Diversity & Constraints
What is a constraint?
What is a Constraint? Solution Feasibility All real world problems are bounded by physical limits Solutions that lie outside of these limits are  infeasible Constraints model the physical limits of a problem If a solution  violates  one or more of its constraints then it is considered  infeasible Image adapted: http://www.britannica.com/EBchecked/topic-art/430575/3028/Constraint-set-bounded-by-the-five-lines-x1-0-x2
What is a Constraint? Solution Feasibility All real world problems are bounded by physical limits Solutions that lie outside of these limits are  infeasible Constraints model the physical limits of a problem If a solution  violates  one or more of its constraints then it is considered  infeasible Image adapted: http://www.britannica.com/EBchecked/topic-art/430575/3028/Constraint-set-bounded-by-the-five-lines-x1-0-x2
What is a Constraint? Solution Feasibility All real world problems are bounded by physical limits Solutions that lie outside of these limits are  infeasible Constraints model the physical limits of a problem If a solution  violates  one or more of its constraints then it is considered  infeasible Image adapted: http://www.britannica.com/EBchecked/topic-art/430575/3028/Constraint-set-bounded-by-the-five-lines-x1-0-x2
What is a Constraint? Solution Feasibility All real world problems are bounded by physical limits Solutions that lie outside of these limits are  infeasible Constraints model the physical limits of a problem If a solution  violates  one or more of its constraints then it is considered  infeasible Image adapted: http://www.britannica.com/EBchecked/topic-art/430575/3028/Constraint-set-bounded-by-the-five-lines-x1-0-x2
What is a Constraint? The Problem with Constraints It is hard to randomly search for an  initial population  of feasible solutions Better to  generate  an  infeasible  population and  evolve  it towards feasibility This is done by adding a new  infeasibility objective  to the multi-objective problem: Infeasibility Objective = [minimise population infeasibility] Image: http://en.wikipedia.org/wiki/Image:Random_walk_in2D_closeup.png Image: http://www.outbacksoftware.com/mathematica/mathematica-intro.html Random walk - 3D Random walk - 2D
What is a Constraint? The Problem with Constraints It is hard to randomly search for an  initial population  of feasible solutions Better to  generate  an  infeasible  population and  evolve  it towards feasibility This is done by adding a new  infeasibility objective  to the multi-objective problem: Infeasibility Objective = [minimise population infeasibility] Image: http://en.wikipedia.org/wiki/Image:Random_walk_in2D_closeup.png Image: http://www.outbacksoftware.com/mathematica/mathematica-intro.html Random walk - 3D Random walk - 2D
What is a Constraint? The Problem with Constraints It is hard to randomly search for an  initial population  of feasible solutions Better to  generate  an  infeasible  population and  evolve  it towards feasibility This is done by adding a new  infeasibility objective  to the multi-objective problem: Infeasibility Objective = [ minimise population infeasibility ] Image: http://en.wikipedia.org/wiki/Image:Random_walk_in2D_closeup.png Image: http://www.outbacksoftware.com/mathematica/mathematica-intro.html Random walk - 3D Random walk - 2D
Summary Defined “metaheuristic” Examined evolutionary algorithms Explored problem constraints Apply an evolutionary algorithm to a farm Discuss the implications for farm sustainability
Applying an evolutionary algorithm IC-SPEA2
Applying an evolutionary algorithm IC-SPEA2 IC-SPEA2 is a powerful  multi-objective  evolutionary metaheuristic It uses an  infeasibility objective  to evolve feasible solutions And  elitism  to guide the search And  pruning  to maximise the diversity
Applying an evolutionary algorithm IC-SPEA2 IC-SPEA2 is a powerful  multi-objective  evolutionary metaheuristic It uses an  infeasibility objective  to evolve feasible solutions And  elitism  to guide the search And  pruning  to maximise the diversity
Applying an evolutionary algorithm IC-SPEA2 IC-SPEA2 is a powerful  multi-objective  evolutionary metaheuristic It uses an  infeasibility objective  to evolve feasible solutions And  elitism  to guide the search And  pruning  to maximise the diversity
Applying an evolutionary algorithm IC-SPEA2 IC-SPEA2 is a powerful  multi-objective  evolutionary metaheuristic It uses an  infeasibility objective  to evolve feasible solutions And  elitism  to guide the search And  pruning  to maximise the diversity
Applying an evolutionary metaheuristic A beef farm model
Applying an evolutionary metaheuristic A beef farm model A farm is a complex  dynamic system It is bounded by multiple  trade-offs ,  constraints  and variable  measures of success These characteristics can be encoded into a software model And the model can be  optimised  using IC-SPEA2
Applying an evolutionary metaheuristic A beef farm model A farm is a complex  dynamic system It is bounded by multiple  trade-offs ,  constraints  and variable  measures of success These characteristics can be encoded into a software model And the model can be  optimised  using IC-SPEA2
Applying an evolutionary metaheuristic A beef farm model A farm is a complex  dynamic system It is bounded by multiple  trade-offs ,  constraints  and variable  measures of success These characteristics can be encoded into a software model And the model can be  optimised  using IC-SPEA2
Applying an evolutionary metaheuristic A beef farm model A farm is a complex  dynamic system It is bounded by multiple  trade-offs ,  constraints  and variable  measures of success These characteristics can be encoded into a software model And the model can be  optimised  using IC-SPEA2
Applying an evolutionary metaheuristic The farm loop
Applying an evolutionary metaheuristic The farm loop 1 .The farmer selects and implements a strategy 2 .The farm provides real-world values for the model 3 .The model provides a template for IC-SPEA2 4 .IC-SPEA2 evolves a population of model instances 5 .IC-SPEA2 presents a Pareto set of optimal models. Return to Step 1
Applying an evolutionary metaheuristic The farm loop 1 .The farmer selects and implements a strategy 2 .The farm provides real-world values for the model 3 .The model provides a template for IC-SPEA2 4 .IC-SPEA2 evolves a population of model instances 5 .IC-SPEA2 presents a Pareto set of optimal models. Return to Step 1
Applying an evolutionary metaheuristic The farm loop 1 .The farmer selects and implements a strategy 2 .The farm provides real-world values for the model 3 .The model provides a template for IC-SPEA2 4 .IC-SPEA2 evolves a population of model instances 5 .IC-SPEA2 presents a Pareto set of optimal models. Return to Step 1
Applying an evolutionary metaheuristic The farm loop 1 .The farmer selects and implements a strategy 2 .The farm provides real-world values for the model 3 .The model provides a template for IC-SPEA2 4 .IC-SPEA2 evolves a population of model instances 5 .IC-SPEA2 presents a Pareto set of optimal models. Return to Step 1
Applying an evolutionary metaheuristic The farm loop 1 .The farmer selects and implements a strategy 2 .The farm provides real-world values for the model 3 .The model provides a template for IC-SPEA2 4 .IC-SPEA2 evolves a population of model instances 5 .IC-SPEA2 presents a Pareto set of optimal models. Return to Step 1
Applying an evolutionary metaheuristic The farm's objectives
Applying an evolutionary metaheuristic The farms' objectives The farm makes money by converting food into  live animal weight Different food types have different  nutritional  benefits and different and purchase / production  costs IC-SPEA2 will search for combinations of feed type and amounts to create optimal  feeding schedules Live Weight Gain
Applying an evolutionary metaheuristic The farms' objectives The farm makes money by converting food into  live animal weight Different food types have different  nutritional  benefits and different and purchase / production  costs IC-SPEA2 will search for combinations of feed type and amounts to create optimal  feeding schedules Live Weight Gain
Applying an evolutionary metaheuristic The farms' objectives The farm makes money by converting food into  live animal weight Different food types have different  nutritional  benefits and different and purchase / production  costs IC-SPEA2 will search for combinations of feed type and amounts to create optimal  feeding schedules Live Weight Gain
Applying an evolutionary metaheuristic The farms' objectives The  conflicting  objectives for the farm model are 1. Maximise net revenue By creating the heaviest animals using the cheapest feed 2. Maximise average daily weight gain This  conflicts  with “maximise net revenue” since heavier animals cost more to keep 3. Minimise the cost of the diet This  conflicts  with “maximise average daily weight gain” since cheap food have low nutritional value
Applying an evolutionary metaheuristic The farms' objectives The  conflicting  objectives for the farm model are 1. Maximise net revenue By creating the heaviest animals using the cheapest feed 2. Maximise average daily weight gain This  conflicts  with “maximise net revenue” since heavier animals cost more to keep 3. Minimise the cost of the diet This  conflicts  with “maximise average daily weight gain” since cheap food have low nutritional value
Applying an evolutionary metaheuristic The farms' objectives The  conflicting  objectives for the farm model are 1. Maximise net revenue By creating the heaviest animals using the cheapest feed 2. Maximise average daily weight gain This  conflicts  with “maximise net revenue” since heavier animals cost more to keep 3. Minimise the cost of the diet This  conflicts  with “maximise average daily weight gain” since cheap food have low nutritional value
Applying an evolutionary metaheuristic The farms' objectives The  conflicting  objectives for the farm model are 1. Maximise net revenue By creating the heaviest animals using the cheapest feed 2. Maximise average daily weight gain This  conflicts  with “maximise net revenue” since heavier animals cost more to keep 3. Minimise the cost of the diet This  conflicts  with “maximise average daily weight gain” since cheap food have low nutritional value
Applying an evolutionary metaheuristic Discovering counter intuitive solutions
Applying an evolutionary metaheuristic Discovering counter intuitive solutions As expected IC-SPEA2 returned multiple, pareto-optimal strategies Two solutions were of particular interest 1.  The feeding strategy that maximised  net revenue. 2.  The feeding strategy that maximised  live weight gain . Intuition  suggests that heavy animals should sell for more money [maximum live weight gain] = [maximum net revenue] Yet IC-SPEA2 found a way to maximise net revenue while delivering  lighter  animals This  counter-intuitive  result has potential implications for farm  sustainability
Applying an evolutionary metaheuristic Discovering counter intuitive solutions As expected IC-SPEA2 returned multiple, pareto-optimal strategies Two solutions were of particular interest 1.  The feeding strategy that maximised  net revenue. 2.  The feeding strategy that maximised  live weight gain . Intuition  suggests that heavy animals should sell for more money [maximum live weight gain] = [maximum net revenue] Yet IC-SPEA2 found a way to maximise net revenue while delivering  lighter  animals This  counter-intuitive  result has potential implications for farm  sustainability
Applying an evolutionary metaheuristic Discovering counter intuitive solutions As expected IC-SPEA2 returned multiple, pareto-optimal strategies Two solutions were of particular interest 1.  The feeding strategy that maximised  net revenue. 2.  The feeding strategy that maximised  live weight gain . Intuition  suggests that heavy animals should sell for more money [maximum live weight gain] = [maximum net revenue] Yet IC-SPEA2 found a way to maximise net revenue while delivering  lighter  animals This  counter-intuitive  result has potential implications for farm  sustainability
Applying an evolutionary metaheuristic Discovering counter intuitive solutions As expected IC-SPEA2 returned multiple, pareto-optimal strategies Two solutions were of particular interest 1.  The feeding strategy that maximised  net revenue. 2.  The feeding strategy that maximised  live weight gain . Intuition  suggests that heavy animals should sell for more money [ maximum live weight gain ] = [ maximum net revenue ] Yet IC-SPEA2 found a way to maximise net revenue while delivering  lighter  animals This  counter-intuitive  result has potential implications for farm  sustainability
Applying an evolutionary metaheuristic Discovering counter intuitive solutions As expected IC-SPEA2 returned multiple, pareto-optimal strategies Two solutions were of particular interest 1.  The feeding strategy that maximised  net revenue. 2.  The feeding strategy that maximised  live weight gain . Intuition  suggests that heavy animals should sell for more money [maximum live weight gain] = [maximum net revenue] Yet IC-SPEA2 found a way to maximise net revenue while delivering  lighter  animals This  counter-intuitive  result has potential implications for farm  sustainability
Applying an evolutionary metaheuristic Discovering counter intuitive solutions As expected IC-SPEA2 returned multiple, pareto-optimal strategies Two solutions were of particular interest 1.  The feeding strategy that maximised  net revenue. 2.  The feeding strategy that maximised  live weight gain . Intuition  suggests that heavy animals should sell for more money [maximum live weight gain] = [maximum net revenue] Yet IC-SPEA2 found a way to maximise net revenue while delivering  lighter  animals This  counter-intuitive  result has potential implications for farm  sustainability
Applying an evolutionary metaheuristic Implications  for farm sustainability
Applying an evolutionary metaheuristic Implications  for farm sustainability 1. Reduce stress Maintaining net revenue while reducing live weight gain will  reduce  the  stress  on the farm system Profit  obligations are met even as the farm operates below its  carrying capacity 2. Prevent over-shoot Real-time software allows frequent strategic re-evaluations Frequent adjustments may help  buffer  against performance  over-shoot
Applying an evolutionary metaheuristic Implications  for farm sustainability 1. Reduce stress Maintaining net revenue while reducing live weight gain will  reduce  the  stress  on the farm system Profit  obligations are met even as the farm operates below its  carrying capacity 2. Prevent over-shoot Real-time software allows frequent strategic re-evaluations Frequent adjustments may help  buffer  against performance  over-shoot
Applying an evolutionary metaheuristic Implications  for farm sustainability 1. Reduce stress Maintaining net revenue while reducing live weight gain will  reduce  the  stress  on the farm system Profit  obligations are met even as the farm operates below its  carrying capacity 2. Prevent over-shoot Real-time software allows frequent strategic re-evaluations Frequent adjustments may help  buffer  against performance  over-shoot
Applying an evolutionary metaheuristic Implications  for farm sustainability 1. Reduce stress Maintaining net revenue while reducing live weight gain will  reduce  the  stress  on the farm system Profit  obligations are met even as the farm operates below its  carrying capacity 2. Prevent over-shoot Real-time software allows frequent strategic re-evaluations Frequent adjustments may help  buffer  against performance  over-shoot
Applying an evolutionary metaheuristic Implications  for farm sustainability 3. Providing choice A Pareto set of optimal strategies gives the farmer a choice Allowing the farm's objectives to be  dynamically  re-balanced 4. Enhancing control Frequent re-evaluation plus a choice of optimal solutions gives the farmer flexibility  This allows control to be exerted in a  measured  and informed manner
Applying an evolutionary metaheuristic Implications  for farm sustainability 3. Providing choice A Pareto set of optimal strategies gives the farmer a choice Allowing the farm's objectives to be  dynamically  re-balanced 4. Enhancing control Frequent re-evaluation plus a choice of optimal solutions gives the farmer flexibility  This allows control to be exerted in a  measured  and informed manner
Applying an evolutionary metaheuristic Implications  for farm sustainability 3. Providing choice A Pareto set of optimal strategies gives the farmer a choice Allowing the farm's objectives to be  dynamically  re-balanced 4. Enhancing control Frequent re-evaluation plus a choice of optimal solutions gives the farmer flexibility  This allows control to be exerted in a  measured  and informed manner
Applying an evolutionary metaheuristic Implications  for farm sustainability 3. Providing choice A Pareto set of optimal strategies gives the farmer a choice Allowing the farm's objectives to be  dynamically  re-balanced 4. Enhancing control Frequent re-evaluation plus a choice of optimal solutions gives the farmer flexibility  This allows control to be exerted in a  measured  and informed manner
Summary Defined “metaheuristic” Examined evolutionary algorithms Explored problem constraints Applied an evolutionary algorithm to a farm Discussed the implications for farm sustainability
The End Images courtesy of http://www.goldennumber.net, Gary B. Meisner, Copyright 2006. Fibonacci numbers

An Introduction To Applied Evolutionary Meta Heuristics

  • 1.
    An Introduction toApplied Evolutionary Metaheuristics Jonny Anderson Image: http://www.43things.com/people/progress/dogonwheels/251399 A strange attractor
  • 2.
    An Introduction toApplied Evolutionary Metaheuristics Define “metaheuristic” Examine evolutionary algorithms Explore problem constraints Apply an evolutionary algorithm to a farm Discuss the implications for farm sustainability
  • 3.
    What is ametaheuristic?
  • 4.
    What is ametaheuristic? A heuristic is a function that finds an approximate result, it is an algorithmic rule of thumb A metaheuristic is a function that consists of heuristic sub-routines. It is a compound heuristic. Metaheuristics are useful for hard problems that resist brute-force techniques A metaheuristic algorithm can quickly return results that are good enough An example of a metaheuristic is an evolutionary algorithm
  • 5.
    What is ametaheuristic? A heuristic is a function that finds an approximate result, it is an algorithmic rule of thumb A metaheuristic is a function that consists of heuristic sub-routines. It is a compound heuristic. Metaheuristics are useful for hard problems that resist brute-force techniques A metaheuristic algorithm can quickly return results that are good enough An example of a metaheuristic is an evolutionary algorithm
  • 6.
    What is ametaheuristic? A heuristic is a function that finds an approximate result, it is an algorithmic rule of thumb A metaheuristic is a function that consists of heuristic sub-routines. It is a compound heuristic. Metaheuristics are useful for hard problems that resist brute-force techniques A metaheuristic algorithm can quickly return results that are good enough An example of a metaheuristic is an evolutionary algorithm
  • 7.
    What is ametaheuristic? A heuristic is a function that finds an approximate result, it is an algorithmic rule of thumb A metaheuristic is a function that consists of heuristic sub-routines. It is a compound heuristic. Metaheuristics are useful for hard problems that resist brute-force techniques A metaheuristic algorithm can quickly return results that are good enough An example of a metaheuristic is an evolutionary algorithm
  • 8.
    What is ametaheuristic? A heuristic is a function that finds an approximate result, it is an algorithmic rule of thumb A metaheuristic is a function that consists of heuristic sub-routines. It is a compound heuristic. Metaheuristics are useful for hard problems that resist brute-force techniques A metaheuristic algorithm can quickly return results that are good enough An example of a metaheuristic is an evolutionary algorithm
  • 9.
    What is anevolutionary algorithm?
  • 10.
    What is anevolutionary algorithm Natural selection discovers solutions to the problem of being alive If we can translate this evolutionary process into a computer algorithm Then we would have a powerful heuristic tool for discovering solutions to highly complex problems An evolutionary algorithm encodes the process of natural selection So that solutions to complex problems may be evolved Image: http://en.wikipedia.org/wiki/Image:Charles_Darwin_by_Julia_Margaret_Cameron_2.jpg Charles Darwin
  • 11.
    What is anevolutionary algorithm Natural selection discovers solutions to the problem of being alive If we can translate this evolutionary process into a computer algorithm Then we would have a powerful heuristic tool for discovering solutions to highly complex problems An evolutionary algorithm encodes the process of natural selection So that solutions to complex problems may be evolved Image: http://en.wikipedia.org/wiki/Image:Charles_Darwin_by_Julia_Margaret_Cameron_2.jpg Charles Darwin
  • 12.
    What is anevolutionary algorithm Natural selection discovers solutions to the problem of being alive If we can translate this evolutionary process into a computer algorithm Then we would have a powerful heuristic tool for discovering solutions to highly complex problems An evolutionary algorithm encodes the process of natural selection So that solutions to complex problems may be evolved Image: http://en.wikipedia.org/wiki/Image:Charles_Darwin_by_Julia_Margaret_Cameron_2.jpg Charles Darwin
  • 13.
    What is anevolutionary algorithm Natural selection discovers solutions to the problem of being alive If we can translate this evolutionary process into a computer algorithm Then we would have a powerful heuristic tool for discovering solutions to highly complex problems An evolutionary algorithm encodes the process of natural selection So that solutions to complex problems may be evolved Image: http://en.wikipedia.org/wiki/Image:Charles_Darwin_by_Julia_Margaret_Cameron_2.jpg Charles Darwin
  • 14.
    What is anevolutionary algorithm Natural selection discovers solutions to the problem of being alive If we can translate this evolutionary process into a computer algorithm Then we would have a powerful heuristic tool for discovering solutions to highly complex problems An evolutionary algorithm encodes the process of natural selection So that solutions to complex problems may be evolved Image: http://en.wikipedia.org/wiki/Image:Charles_Darwin_by_Julia_Margaret_Cameron_2.jpg Charles Darwin
  • 15.
  • 16.
    A general evolutionaryalgorithm Initialization Create a population of solutions with randomly generated characteristics Fitness assignment Assign a fitness value to each solution according to the problem-specific definition of fitness Termination If stopping condition is met then Stop Breeding and Variation Select the fittest solutions and c ombine them to create novel children (with a small chance of random mutation) Go to Fitness Assignment The result is an increase in average population fitness over time
  • 17.
    A general evolutionaryalgorithm Initialization Create a population of solutions with randomly generated characteristics Fitness assignment Assign a fitness value to each solution according to the problem-specific definition of fitness Termination If stopping condition is met then Stop Breeding and Variation Select the fittest solutions and c ombine them to create novel children (with a small chance of random mutation) Go to Fitness Assignment The result is an increase in average population fitness over time
  • 18.
    A general evolutionaryalgorithm Initialization Create a population of solutions with randomly generated characteristics Fitness assignment Assign a fitness value to each solution according to the problem-specific definition of fitness Termination If stopping condition is met then Stop Breeding and Variation Select the fittest solutions and c ombine them to create novel children (with a small chance of random mutation) Go to Fitness Assignment The result is an increase in average population fitness over time
  • 19.
    A general evolutionaryalgorithm Initialization Create a population of solutions with randomly generated characteristics Fitness assignment Assign a fitness value to each solution according to the problem-specific definition of fitness Termination If stopping condition is met then Stop Breeding and Variation Select the fittest solutions and c ombine them to create novel children (with a small chance of random mutation) Go to Fitness Assignment The result is an increase in average population fitness over time
  • 20.
    A general evolutionaryalgorithm Initialization Create a population of solutions with randomly generated characteristics Fitness assignment Assign a fitness value to each solution according to the problem-specific definition of fitness Termination If stopping condition is met then Stop Breeding and Variation Select the fittest solutions and c ombine them to create novel children (with a small chance of random mutation) Go to Fitness Assignment The result is an increase in average population fitness over time
  • 21.
    A general evolutionaryalgorithm Initialization Create a population of solutions with randomly generated characteristics Fitness assignment Assign a fitness value to each solution according to the problem-specific definition of fitness Termination If stopping condition is met then Stop Breeding and Variation Select the fittest solutions and c ombine them to create novel children (with a small chance of random mutation) Go to Fitness Assignment The result is an increase in average population fitness over time
  • 22.
  • 23.
    Searching state-space State-spaceis the set of all possible solution states Certain problems have a large state-space making them difficult to solve Evolutionary algorithms will evaluate many points in the state-space at the same time This is called Implicit Parallelism It allows evolutionary algorithms to remain effective for problems with a large state-space 4-D state-space Image: https://wci.llnl.gov/codes/visit/gallery_22.html
  • 24.
    Searching state-space State-spaceis the set of all possible solution states Certain problems have a large state-space making them difficult to solve Evolutionary algorithms will evaluate many points in the state-space at the same time This is called Implicit Parallelism It allows evolutionary algorithms to remain effective for problems with a large state-space 4-D state-space Image: https://wci.llnl.gov/codes/visit/gallery_22.html
  • 25.
    Searching state-space State-spaceis the set of all possible solution states Certain problems have a large state-space making them difficult to solve Evolutionary algorithms will evaluate many points in the state-space at the same time This is called Implicit Parallelism It allows evolutionary algorithms to remain effective for problems with a large state-space 4-D state-space Image: https://wci.llnl.gov/codes/visit/gallery_22.html
  • 26.
    Searching state-space State-spaceis the set of all possible solution states Certain problems have a large state-space making them difficult to solve Evolutionary algorithms will evaluate many points in the state-space at the same time This is called Implicit Parallelism It allows evolutionary algorithms to remain effective for problems with a large state-space 4-D state-space Image: https://wci.llnl.gov/codes/visit/gallery_22.html
  • 27.
    Searching state-space State-spaceis the set of all possible solution states Certain problems have a large state-space making them difficult to solve Evolutionary algorithms will evaluate many points in the state-space at the same time This is called Implicit Parallelism It allows evolutionary algorithms to remain effective for problems with a large state-space 4-D state-space Image: https://wci.llnl.gov/codes/visit/gallery_22.html
  • 28.
  • 29.
    Single objective evolutionaryalgorithms A single objective evolutionary algorithm exists to solve single objective problems A standard single objective problem is the Travelling Salesperson Problem or TSP. This states: Given a number of cities and the distance from any city to any other city. What is the shortest round-trip route that visits each city exactly once and then returns to the starting city? Objective = [minimise route length] Image: http://www.cs.princeton.edu/courses/archive/spr05/cos126/assignments/tsp.html TSP : 1000 Cities
  • 30.
    Single objective evolutionaryalgorithms A single objective evolutionary algorithm exists to solve single objective problems A standard single objective problem is the Travelling Salesperson Problem or TSP. This states: Given a number of cities and the distance from any city to any other city. What is the shortest round-trip route that visits each city exactly once and then returns to the starting city? Objective = [minimise route length] Image: http://www.cs.princeton.edu/courses/archive/spr05/cos126/assignments/tsp.html TSP : 1000 Cities
  • 31.
    Single objective evolutionaryalgorithms A single objective evolutionary algorithm exists to solve single objective problems A standard single objective problem is the Travelling Salesperson Problem or TSP. This states: Given a number of cities and the distance from any city to any other city. What is the shortest round-trip route that visits each city exactly once and then returns to the starting city? Objective = [minimise route length] Image: http://www.cs.princeton.edu/courses/archive/spr05/cos126/assignments/tsp.html TSP : 1000 Cities
  • 32.
    Single objective evolutionaryalgorithms A single objective evolutionary algorithm exists to solve single objective problems A standard single objective problem is the Travelling Salesperson Problem or TSP. This states: Given a number of cities and the distance from any city to any other city. What is the shortest round-trip route that visits each city exactly once and then returns to the starting city? Objective = [minimise route length] Image: http://www.cs.princeton.edu/courses/archive/spr05/cos126/assignments/tsp.html TSP : 1000 Cities
  • 33.
    Single objective evolutionaryalgorithms A single objective evolutionary algorithm exists to solve single objective problems A standard single objective problem is the Travelling Salesperson Problem or TSP. This states: Given a number of cities and the distance from any city to any other city. What is the shortest round-trip route that visits each city exactly once and then returns to the starting city? Objective = [ minimise route length ] Image: http://www.cs.princeton.edu/courses/archive/spr05/cos126/assignments/tsp.html TSP : 1000 Cities
  • 34.
    Single objective evolutionaryalgorithms Exact algorithms will give the shortest possible route but only work for 200 cities Although evolutionary algorithms only promise a usefully short route They work for 10,000 cities and beyond Implicit parallelism allows evolutionary algorithms to search vast state-spaces Image: https://wci.llnl.gov/codes/visit/gallery_22.html TSP : 100 cities
  • 35.
    Single objective evolutionaryalgorithms Exact algorithms will give the shortest possible route but only work for 200 cities Although evolutionary algorithms only promise a usefully short route They work for 10,000 cities and beyond Implicit parallelism allows evolutionary algorithms to search vast state-spaces Image: https://wci.llnl.gov/codes/visit/gallery_22.html TSP : 100 cities
  • 36.
    Single objective evolutionaryalgorithms Exact algorithms will give the shortest possible route but only work for 200 cities Although evolutionary algorithms only promise a usefully short route They work for 10,000 cities and beyond Implicit parallelism allows evolutionary algorithms to search vast state-spaces Image: https://wci.llnl.gov/codes/visit/gallery_22.html TSP : 100 cities TSP : 13509 cities
  • 37.
    Single objective evolutionaryalgorithms Exact algorithms will give the shortest possible route but only work for 200 cities Although evolutionary algorithms only promise a usefully short route They work for 10,000 cities and beyond Implicit parallelism allows evolutionary algorithms to search vast state-spaces Image: https://wci.llnl.gov/codes/visit/gallery_22.html TSP : 100 cities TSP : 13509 cities
  • 38.
  • 39.
    Multi-objective evolutionary algorithmsA multi-objective evolutionary algorithm exists to solve multi-objective problems A multi-objective problem has two or more conflicting objectives - Maximising strength and minimising weight This results in many solutions that balance the objectives in different ways Such trade-off solutions are called Pareto optimal Strength v Weight Image : http://www.emergentarchitecture.com/analogies_images/analogy_18/medium.jpg
  • 40.
    Multi-objective evolutionary algorithmsA multi-objective evolutionary algorithm exists to solve multi-objective problems A multi-objective problem has two or more conflicting objectives - Maximising strength and minimising weight This results in many solutions that balance the objectives in different ways Such trade-off solutions are called Pareto optimal Strength v Weight Image : http://www.emergentarchitecture.com/analogies_images/analogy_18/medium.jpg
  • 41.
    Multi-objective evolutionary algorithmsA multi-objective evolutionary algorithm exists to solve multi-objective problems A multi-objective problem has two or more conflicting objectives - Maximising strength and minimising weight This results in many solutions that balance the objectives in different ways Such trade-off solutions are called Pareto optimal Strength v Weight Image : http://www.emergentarchitecture.com/analogies_images/analogy_18/medium.jpg
  • 42.
    Multi-objective evolutionary algorithmsA multi-objective evolutionary algorithm exists to solve multi-objective problems A multi-objective problem has two or more conflicting objectives - Maximising strength and minimising weight This results in many solutions that balance the objectives in different ways Such trade-off solutions are called Pareto optimal Strength v Weight Image : http://www.emergentarchitecture.com/analogies_images/analogy_18/medium.jpg
  • 43.
    What is paretooptimality? [pa-rih-toe]
  • 44.
    What is paretooptimality? A solution is pareto-optimal if it has been fully optimised Optimising any objective will simply degrade the other objectives While pareto-optimal solutions are equally optimal they are not equally useful Therefore a human decision maker must make the final choice Image: http://www.longtail.typepad.com Image: Multi-objective Evolutionary Algorithms - A practical presentation of MOEA with examples from mechanical engineering Dr. Jörn Mehnen Vilfredo Pareto
  • 45.
    What is paretooptimality? A solution is pareto-optimal if it has been fully optimised Optimising any objective will simply degrade the other objectives While pareto-optimal solutions are equally optimal they are not equally useful Therefore a human decision maker must make the final choice Image: http://www.longtail.typepad.com Image: Multi-objective Evolutionary Algorithms - A practical presentation of MOEA with examples from mechanical engineering Dr. Jörn Mehnen Vilfredo Pareto
  • 46.
    What is paretooptimality? A solution is pareto-optimal if it has been fully optimised Optimising any objective will simply degrade the other objectives While pareto-optimal solutions are equally optimal they are not equally useful Therefore a human decision maker must make the final choice Image: http://www.longtail.typepad.com Image: Multi-objective Evolutionary Algorithms - A practical presentation of MOEA with examples from mechanical engineering Dr. Jörn Mehnen Vilfredo Pareto
  • 47.
    What is paretooptimality? A solution is pareto-optimal if it has been fully optimised Optimising any objective will simply degrade the other objectives While pareto-optimal solutions are equally optimal they are not equally useful Therefore a human decision maker must make the final choice Image: http://www.longtail.typepad.com Image: Multi-objective Evolutionary Algorithms - A practical presentation of MOEA with examples from mechanical engineering Dr. Jörn Mehnen Vilfredo Pareto
  • 48.
    Demo #1 ThePareto Front
  • 49.
  • 50.
    Multi-objective evolutionary algorithmsElitism Elitism is used to help guide the evolving pareto front The best solutions are retained in a secondary population called the archive Solutions now compete to enter the elite archive Only elite members are used for breeding The archive acts a memory preventing the loss of fit solutions Image: http://www.irishrunner.com/jamesnwc.jpg Elite Competition
  • 51.
    Multi-objective evolutionary algorithmsElitism Elitism is used to help guide the evolving pareto front The best solutions are retained in a secondary population called the archive Solutions now compete to enter the elite archive Only elite members are used for breeding The archive acts a memory preventing the loss of fit solutions Image: http://www.irishrunner.com/jamesnwc.jpg Elite Competition
  • 52.
    Multi-objective evolutionary algorithmsElitism Elitism is used to help guide the evolving pareto front The best solutions are retained in a secondary population called the archive Solutions now compete to enter the elite archive Only elite members are used for breeding The archive acts a memory preventing the loss of fit solutions Image: http://www.irishrunner.com/jamesnwc.jpg Elite Competition
  • 53.
    Multi-objective evolutionary algorithmsElitism Elitism is used to help guide the evolving pareto front The best solutions are retained in a secondary population called the archive Solutions now compete to enter the elite archive Only elite members are used for breeding The archive acts a memory preventing the loss of fit solutions Image: http://www.irishrunner.com/jamesnwc.jpg Elite Competition
  • 54.
    Multi-objective evolutionary algorithmsElitism Elitism is used to help guide the evolving pareto front The best solutions are retained in a secondary population called the archive Solutions now compete to enter the elite archive Only elite members are used for breeding The archive acts a memory preventing the loss of fit solutions Image: http://www.irishrunner.com/jamesnwc.jpg Elite Competition
  • 55.
  • 56.
    Multi-objective evolutionary algorithmsMaximise the diversity An evolving front tends to generate clusters and so lose diversity Clusters waste resources by confining the search to a small areas Leaving the gaps in between poorly investigated Image adapted : Zitzler, Eckart and Laumanns, Marco and Thiele, Lothar (2001) SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Evolutionary Methods for Design, Optimisation, and Control.
  • 57.
    Multi-objective evolutionary algorithmsMaximise the diversity An evolving front tends to generate clusters and so lose diversity Clusters waste resources by confining the search to a small areas Leaving the gaps in between poorly investigated Image adapted : Zitzler, Eckart and Laumanns, Marco and Thiele, Lothar (2001) SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Evolutionary Methods for Design, Optimisation, and Control.
  • 58.
    Multi-objective evolutionary algorithmsMaximise the diversity An evolving front tends to generate clusters and so lose diversity Clusters waste resources by confining the search to a small areas Leaving the gaps in between poorly investigated Image adapted : Zitzler, Eckart and Laumanns, Marco and Thiele, Lothar (2001) SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Evolutionary Methods for Design, Optimisation, and Control.
  • 59.
    Multi-objective evolutionary algorithmsMaximise the diversity Diversity can be maintained through pruning Solutions that lie too clos e to their neighbours are removed The goal is to have each solution evenly spaced with respect to its neighbours Image adapted : Zitzler, Eckart and Laumanns, Marco and Thiele, Lothar (2001) SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Evolutionary Methods for Design, Optimisation, and Control.
  • 60.
    Multi-objective evolutionary algorithmsMaximise the diversity Diversity can be maintained through pruning Solutions that lie too clos e to their neighbours are removed The goal is to have each solution evenly spaced with respect to its neighbours Image adapted : Zitzler, Eckart and Laumanns, Marco and Thiele, Lothar (2001) SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Evolutionary Methods for Design, Optimisation, and Control.
  • 61.
    Multi-objective evolutionary algorithmsMaximise the diversity Diversity can be maintained through pruning Solutions that lie too clos e to their neighbours are removed The goal is to have each solution evenly spaced with respect to its neighbours Image adapted : Zitzler, Eckart and Laumanns, Marco and Thiele, Lothar (2001) SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Evolutionary Methods for Design, Optimisation, and Control.
  • 62.
    Demo #2 Diversity& Constraints
  • 63.
    What is aconstraint?
  • 64.
    What is aConstraint? Solution Feasibility All real world problems are bounded by physical limits Solutions that lie outside of these limits are infeasible Constraints model the physical limits of a problem If a solution violates one or more of its constraints then it is considered infeasible Image adapted: http://www.britannica.com/EBchecked/topic-art/430575/3028/Constraint-set-bounded-by-the-five-lines-x1-0-x2
  • 65.
    What is aConstraint? Solution Feasibility All real world problems are bounded by physical limits Solutions that lie outside of these limits are infeasible Constraints model the physical limits of a problem If a solution violates one or more of its constraints then it is considered infeasible Image adapted: http://www.britannica.com/EBchecked/topic-art/430575/3028/Constraint-set-bounded-by-the-five-lines-x1-0-x2
  • 66.
    What is aConstraint? Solution Feasibility All real world problems are bounded by physical limits Solutions that lie outside of these limits are infeasible Constraints model the physical limits of a problem If a solution violates one or more of its constraints then it is considered infeasible Image adapted: http://www.britannica.com/EBchecked/topic-art/430575/3028/Constraint-set-bounded-by-the-five-lines-x1-0-x2
  • 67.
    What is aConstraint? Solution Feasibility All real world problems are bounded by physical limits Solutions that lie outside of these limits are infeasible Constraints model the physical limits of a problem If a solution violates one or more of its constraints then it is considered infeasible Image adapted: http://www.britannica.com/EBchecked/topic-art/430575/3028/Constraint-set-bounded-by-the-five-lines-x1-0-x2
  • 68.
    What is aConstraint? The Problem with Constraints It is hard to randomly search for an initial population of feasible solutions Better to generate an infeasible population and evolve it towards feasibility This is done by adding a new infeasibility objective to the multi-objective problem: Infeasibility Objective = [minimise population infeasibility] Image: http://en.wikipedia.org/wiki/Image:Random_walk_in2D_closeup.png Image: http://www.outbacksoftware.com/mathematica/mathematica-intro.html Random walk - 3D Random walk - 2D
  • 69.
    What is aConstraint? The Problem with Constraints It is hard to randomly search for an initial population of feasible solutions Better to generate an infeasible population and evolve it towards feasibility This is done by adding a new infeasibility objective to the multi-objective problem: Infeasibility Objective = [minimise population infeasibility] Image: http://en.wikipedia.org/wiki/Image:Random_walk_in2D_closeup.png Image: http://www.outbacksoftware.com/mathematica/mathematica-intro.html Random walk - 3D Random walk - 2D
  • 70.
    What is aConstraint? The Problem with Constraints It is hard to randomly search for an initial population of feasible solutions Better to generate an infeasible population and evolve it towards feasibility This is done by adding a new infeasibility objective to the multi-objective problem: Infeasibility Objective = [ minimise population infeasibility ] Image: http://en.wikipedia.org/wiki/Image:Random_walk_in2D_closeup.png Image: http://www.outbacksoftware.com/mathematica/mathematica-intro.html Random walk - 3D Random walk - 2D
  • 71.
    Summary Defined “metaheuristic”Examined evolutionary algorithms Explored problem constraints Apply an evolutionary algorithm to a farm Discuss the implications for farm sustainability
  • 72.
    Applying an evolutionaryalgorithm IC-SPEA2
  • 73.
    Applying an evolutionaryalgorithm IC-SPEA2 IC-SPEA2 is a powerful multi-objective evolutionary metaheuristic It uses an infeasibility objective to evolve feasible solutions And elitism to guide the search And pruning to maximise the diversity
  • 74.
    Applying an evolutionaryalgorithm IC-SPEA2 IC-SPEA2 is a powerful multi-objective evolutionary metaheuristic It uses an infeasibility objective to evolve feasible solutions And elitism to guide the search And pruning to maximise the diversity
  • 75.
    Applying an evolutionaryalgorithm IC-SPEA2 IC-SPEA2 is a powerful multi-objective evolutionary metaheuristic It uses an infeasibility objective to evolve feasible solutions And elitism to guide the search And pruning to maximise the diversity
  • 76.
    Applying an evolutionaryalgorithm IC-SPEA2 IC-SPEA2 is a powerful multi-objective evolutionary metaheuristic It uses an infeasibility objective to evolve feasible solutions And elitism to guide the search And pruning to maximise the diversity
  • 77.
    Applying an evolutionarymetaheuristic A beef farm model
  • 78.
    Applying an evolutionarymetaheuristic A beef farm model A farm is a complex dynamic system It is bounded by multiple trade-offs , constraints and variable measures of success These characteristics can be encoded into a software model And the model can be optimised using IC-SPEA2
  • 79.
    Applying an evolutionarymetaheuristic A beef farm model A farm is a complex dynamic system It is bounded by multiple trade-offs , constraints and variable measures of success These characteristics can be encoded into a software model And the model can be optimised using IC-SPEA2
  • 80.
    Applying an evolutionarymetaheuristic A beef farm model A farm is a complex dynamic system It is bounded by multiple trade-offs , constraints and variable measures of success These characteristics can be encoded into a software model And the model can be optimised using IC-SPEA2
  • 81.
    Applying an evolutionarymetaheuristic A beef farm model A farm is a complex dynamic system It is bounded by multiple trade-offs , constraints and variable measures of success These characteristics can be encoded into a software model And the model can be optimised using IC-SPEA2
  • 82.
    Applying an evolutionarymetaheuristic The farm loop
  • 83.
    Applying an evolutionarymetaheuristic The farm loop 1 .The farmer selects and implements a strategy 2 .The farm provides real-world values for the model 3 .The model provides a template for IC-SPEA2 4 .IC-SPEA2 evolves a population of model instances 5 .IC-SPEA2 presents a Pareto set of optimal models. Return to Step 1
  • 84.
    Applying an evolutionarymetaheuristic The farm loop 1 .The farmer selects and implements a strategy 2 .The farm provides real-world values for the model 3 .The model provides a template for IC-SPEA2 4 .IC-SPEA2 evolves a population of model instances 5 .IC-SPEA2 presents a Pareto set of optimal models. Return to Step 1
  • 85.
    Applying an evolutionarymetaheuristic The farm loop 1 .The farmer selects and implements a strategy 2 .The farm provides real-world values for the model 3 .The model provides a template for IC-SPEA2 4 .IC-SPEA2 evolves a population of model instances 5 .IC-SPEA2 presents a Pareto set of optimal models. Return to Step 1
  • 86.
    Applying an evolutionarymetaheuristic The farm loop 1 .The farmer selects and implements a strategy 2 .The farm provides real-world values for the model 3 .The model provides a template for IC-SPEA2 4 .IC-SPEA2 evolves a population of model instances 5 .IC-SPEA2 presents a Pareto set of optimal models. Return to Step 1
  • 87.
    Applying an evolutionarymetaheuristic The farm loop 1 .The farmer selects and implements a strategy 2 .The farm provides real-world values for the model 3 .The model provides a template for IC-SPEA2 4 .IC-SPEA2 evolves a population of model instances 5 .IC-SPEA2 presents a Pareto set of optimal models. Return to Step 1
  • 88.
    Applying an evolutionarymetaheuristic The farm's objectives
  • 89.
    Applying an evolutionarymetaheuristic The farms' objectives The farm makes money by converting food into live animal weight Different food types have different nutritional benefits and different and purchase / production costs IC-SPEA2 will search for combinations of feed type and amounts to create optimal feeding schedules Live Weight Gain
  • 90.
    Applying an evolutionarymetaheuristic The farms' objectives The farm makes money by converting food into live animal weight Different food types have different nutritional benefits and different and purchase / production costs IC-SPEA2 will search for combinations of feed type and amounts to create optimal feeding schedules Live Weight Gain
  • 91.
    Applying an evolutionarymetaheuristic The farms' objectives The farm makes money by converting food into live animal weight Different food types have different nutritional benefits and different and purchase / production costs IC-SPEA2 will search for combinations of feed type and amounts to create optimal feeding schedules Live Weight Gain
  • 92.
    Applying an evolutionarymetaheuristic The farms' objectives The conflicting objectives for the farm model are 1. Maximise net revenue By creating the heaviest animals using the cheapest feed 2. Maximise average daily weight gain This conflicts with “maximise net revenue” since heavier animals cost more to keep 3. Minimise the cost of the diet This conflicts with “maximise average daily weight gain” since cheap food have low nutritional value
  • 93.
    Applying an evolutionarymetaheuristic The farms' objectives The conflicting objectives for the farm model are 1. Maximise net revenue By creating the heaviest animals using the cheapest feed 2. Maximise average daily weight gain This conflicts with “maximise net revenue” since heavier animals cost more to keep 3. Minimise the cost of the diet This conflicts with “maximise average daily weight gain” since cheap food have low nutritional value
  • 94.
    Applying an evolutionarymetaheuristic The farms' objectives The conflicting objectives for the farm model are 1. Maximise net revenue By creating the heaviest animals using the cheapest feed 2. Maximise average daily weight gain This conflicts with “maximise net revenue” since heavier animals cost more to keep 3. Minimise the cost of the diet This conflicts with “maximise average daily weight gain” since cheap food have low nutritional value
  • 95.
    Applying an evolutionarymetaheuristic The farms' objectives The conflicting objectives for the farm model are 1. Maximise net revenue By creating the heaviest animals using the cheapest feed 2. Maximise average daily weight gain This conflicts with “maximise net revenue” since heavier animals cost more to keep 3. Minimise the cost of the diet This conflicts with “maximise average daily weight gain” since cheap food have low nutritional value
  • 96.
    Applying an evolutionarymetaheuristic Discovering counter intuitive solutions
  • 97.
    Applying an evolutionarymetaheuristic Discovering counter intuitive solutions As expected IC-SPEA2 returned multiple, pareto-optimal strategies Two solutions were of particular interest 1. The feeding strategy that maximised net revenue. 2. The feeding strategy that maximised live weight gain . Intuition suggests that heavy animals should sell for more money [maximum live weight gain] = [maximum net revenue] Yet IC-SPEA2 found a way to maximise net revenue while delivering lighter animals This counter-intuitive result has potential implications for farm sustainability
  • 98.
    Applying an evolutionarymetaheuristic Discovering counter intuitive solutions As expected IC-SPEA2 returned multiple, pareto-optimal strategies Two solutions were of particular interest 1. The feeding strategy that maximised net revenue. 2. The feeding strategy that maximised live weight gain . Intuition suggests that heavy animals should sell for more money [maximum live weight gain] = [maximum net revenue] Yet IC-SPEA2 found a way to maximise net revenue while delivering lighter animals This counter-intuitive result has potential implications for farm sustainability
  • 99.
    Applying an evolutionarymetaheuristic Discovering counter intuitive solutions As expected IC-SPEA2 returned multiple, pareto-optimal strategies Two solutions were of particular interest 1. The feeding strategy that maximised net revenue. 2. The feeding strategy that maximised live weight gain . Intuition suggests that heavy animals should sell for more money [maximum live weight gain] = [maximum net revenue] Yet IC-SPEA2 found a way to maximise net revenue while delivering lighter animals This counter-intuitive result has potential implications for farm sustainability
  • 100.
    Applying an evolutionarymetaheuristic Discovering counter intuitive solutions As expected IC-SPEA2 returned multiple, pareto-optimal strategies Two solutions were of particular interest 1. The feeding strategy that maximised net revenue. 2. The feeding strategy that maximised live weight gain . Intuition suggests that heavy animals should sell for more money [ maximum live weight gain ] = [ maximum net revenue ] Yet IC-SPEA2 found a way to maximise net revenue while delivering lighter animals This counter-intuitive result has potential implications for farm sustainability
  • 101.
    Applying an evolutionarymetaheuristic Discovering counter intuitive solutions As expected IC-SPEA2 returned multiple, pareto-optimal strategies Two solutions were of particular interest 1. The feeding strategy that maximised net revenue. 2. The feeding strategy that maximised live weight gain . Intuition suggests that heavy animals should sell for more money [maximum live weight gain] = [maximum net revenue] Yet IC-SPEA2 found a way to maximise net revenue while delivering lighter animals This counter-intuitive result has potential implications for farm sustainability
  • 102.
    Applying an evolutionarymetaheuristic Discovering counter intuitive solutions As expected IC-SPEA2 returned multiple, pareto-optimal strategies Two solutions were of particular interest 1. The feeding strategy that maximised net revenue. 2. The feeding strategy that maximised live weight gain . Intuition suggests that heavy animals should sell for more money [maximum live weight gain] = [maximum net revenue] Yet IC-SPEA2 found a way to maximise net revenue while delivering lighter animals This counter-intuitive result has potential implications for farm sustainability
  • 103.
    Applying an evolutionarymetaheuristic Implications for farm sustainability
  • 104.
    Applying an evolutionarymetaheuristic Implications for farm sustainability 1. Reduce stress Maintaining net revenue while reducing live weight gain will reduce the stress on the farm system Profit obligations are met even as the farm operates below its carrying capacity 2. Prevent over-shoot Real-time software allows frequent strategic re-evaluations Frequent adjustments may help buffer against performance over-shoot
  • 105.
    Applying an evolutionarymetaheuristic Implications for farm sustainability 1. Reduce stress Maintaining net revenue while reducing live weight gain will reduce the stress on the farm system Profit obligations are met even as the farm operates below its carrying capacity 2. Prevent over-shoot Real-time software allows frequent strategic re-evaluations Frequent adjustments may help buffer against performance over-shoot
  • 106.
    Applying an evolutionarymetaheuristic Implications for farm sustainability 1. Reduce stress Maintaining net revenue while reducing live weight gain will reduce the stress on the farm system Profit obligations are met even as the farm operates below its carrying capacity 2. Prevent over-shoot Real-time software allows frequent strategic re-evaluations Frequent adjustments may help buffer against performance over-shoot
  • 107.
    Applying an evolutionarymetaheuristic Implications for farm sustainability 1. Reduce stress Maintaining net revenue while reducing live weight gain will reduce the stress on the farm system Profit obligations are met even as the farm operates below its carrying capacity 2. Prevent over-shoot Real-time software allows frequent strategic re-evaluations Frequent adjustments may help buffer against performance over-shoot
  • 108.
    Applying an evolutionarymetaheuristic Implications for farm sustainability 3. Providing choice A Pareto set of optimal strategies gives the farmer a choice Allowing the farm's objectives to be dynamically re-balanced 4. Enhancing control Frequent re-evaluation plus a choice of optimal solutions gives the farmer flexibility This allows control to be exerted in a measured and informed manner
  • 109.
    Applying an evolutionarymetaheuristic Implications for farm sustainability 3. Providing choice A Pareto set of optimal strategies gives the farmer a choice Allowing the farm's objectives to be dynamically re-balanced 4. Enhancing control Frequent re-evaluation plus a choice of optimal solutions gives the farmer flexibility This allows control to be exerted in a measured and informed manner
  • 110.
    Applying an evolutionarymetaheuristic Implications for farm sustainability 3. Providing choice A Pareto set of optimal strategies gives the farmer a choice Allowing the farm's objectives to be dynamically re-balanced 4. Enhancing control Frequent re-evaluation plus a choice of optimal solutions gives the farmer flexibility This allows control to be exerted in a measured and informed manner
  • 111.
    Applying an evolutionarymetaheuristic Implications for farm sustainability 3. Providing choice A Pareto set of optimal strategies gives the farmer a choice Allowing the farm's objectives to be dynamically re-balanced 4. Enhancing control Frequent re-evaluation plus a choice of optimal solutions gives the farmer flexibility This allows control to be exerted in a measured and informed manner
  • 112.
    Summary Defined “metaheuristic”Examined evolutionary algorithms Explored problem constraints Applied an evolutionary algorithm to a farm Discussed the implications for farm sustainability
  • 113.
    The End Imagescourtesy of http://www.goldennumber.net, Gary B. Meisner, Copyright 2006. Fibonacci numbers