Your SlideShare is downloading. ×
  • Like
  • Save
An Introduction To Applied Evolutionary Meta Heuristics
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

An Introduction To Applied Evolutionary Meta Heuristics

  • 1,087 views
Published

This presentation introduces some of the main themes in modern evolutionary algorithm research while emphasising their application to problems that exhibit real-world complexity.

This presentation introduces some of the main themes in modern evolutionary algorithm research while emphasising their application to problems that exhibit real-world complexity.

Published in Technology , Economy & Finance
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,087
On SlideShare
0
From Embeds
0
Number of Embeds
2

Actions

Shares
Downloads
0
Comments
0
Likes
4

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. An Introduction to Applied Evolutionary Metaheuristics Jonny Anderson
      • Image: http://www.43things.com/people/progress/dogonwheels/251399
    A strange attractor
  • 2. 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
  • 3. What is a metaheuristic?
  • 4. 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
  • 5. 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
  • 6. 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
  • 7. 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
  • 8. 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
  • 9. What is an evolutionary algorithm?
  • 10. 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
  • 11. 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
  • 12. 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
  • 13. 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
  • 14. 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
  • 15. A general evolutionary algorithm
  • 16. 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
  • 17. 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
  • 18. 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
  • 19. 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
  • 20. 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
  • 21. 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
  • 22. Searching state-space
  • 23. 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
  • 24. 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
  • 25. 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
  • 26. 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
  • 27. 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
  • 28. Single objective evolutionary algorithms
  • 29. 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
  • 30. 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
  • 31. 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
  • 32. 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
  • 33. 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
  • 34. 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
  • 35. 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
  • 36. 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
  • 37. 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
  • 38. Multi-objective evolutionary algorithms
  • 39. 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
  • 40. 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
  • 41. 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
  • 42. 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
  • 43. What is pareto optimality? [pa-rih-toe]
  • 44. 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
  • 45. 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
  • 46. 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
  • 47. 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
  • 48. Demo #1 The Pareto Front
  • 49. Multi-objective evolutionary algorithms Elitism
  • 50. 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
  • 51. 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
  • 52. 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
  • 53. 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
  • 54. 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
  • 55. Multi-Objective Evolutionary Algorithms Maximise the diversity
  • 56. 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.
  • 57. 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.
  • 58. 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.
  • 59. 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.
  • 60. 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.
  • 61. 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.
  • 62. Demo #2 Diversity & Constraints
  • 63. What is a constraint?
  • 64. 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
  • 65. 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
  • 66. 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
  • 67. 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
  • 68. 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
  • 69. 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
  • 70. 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
  • 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 evolutionary algorithm IC-SPEA2
  • 73. 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
  • 74. 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
  • 75. 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
  • 76. 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
  • 77. Applying an evolutionary metaheuristic A beef farm model
  • 78. 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
  • 79. 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
  • 80. 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
  • 81. 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
  • 82. Applying an evolutionary metaheuristic The farm loop
  • 83. 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
  • 84. 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
  • 85. 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
  • 86. 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
  • 87. 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
  • 88. Applying an evolutionary metaheuristic The farm's objectives
  • 89. 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
  • 90. 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
  • 91. 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
  • 92. 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
  • 93. 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
  • 94. 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
  • 95. 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
  • 96. Applying an evolutionary metaheuristic Discovering counter intuitive solutions
  • 97. 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
  • 98. 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
  • 99. 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
  • 100. 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
  • 101. 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
  • 102. 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
  • 103. Applying an evolutionary metaheuristic Implications for farm sustainability
  • 104. 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
  • 105. 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
  • 106. 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
  • 107. 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
  • 108. 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
  • 109. 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
  • 110. 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
  • 111. 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
  • 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 Images courtesy of http://www.goldennumber.net, Gary B. Meisner, Copyright 2006. Fibonacci numbers