Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.

Like this presentation? Why not share!

2,157 views

Published on

Published in:
Education

No Downloads

Total views

2,157

On SlideShare

0

From Embeds

0

Number of Embeds

12

Shares

0

Downloads

93

Comments

0

Likes

3

No embeds

No notes for slide

- 1. Hyper-heuristics: Past Present and Future<br />Graham Kendall<br />gxk@cs.nott.ac.uk<br />
- 2. Contents<br />Past<br /><ul><li>A selection of early work</li></ul>Present<br /><ul><li>Current State of the Art</li></ul>Future<br /><ul><li>Potential Research Directions for the Future</li></ul>Albert Einstein<br />1879 - 1955<br />“We can't solve problems by using the same kind of thinking we used when we created them.”<br />
- 3. Contents<br />Past<br /><ul><li>A selection of early work</li></ul>Present<br /><ul><li>Current State of the Art</li></ul>Future<br /><ul><li>Potential Research Directions for the Future</li></ul>Albert Einstein<br />1879 - 1955<br />“We can't solve problems by using the same kind of thinking we used when we created them.”<br />
- 4. Fisher H. and Thompson G.L. (1963) Probabilistic Learning Combinations of Local Job-shop Scheduling Rules. In Muth J.F. and Thompson G.L. (eds) Industrial Scheduling, Prentice Hall Inc., New Jersey, 225-251<br />Based on (I assume)<br />Fisher H. and Thompson G.L. (1961) Probabilistic Learning Combinations of Local Job-shop Scheduling Rules. In Factory Scheduling Conference, Carnegie Institute of Technology<br />
- 5. 6 x 6*6 Test Problem (times in brackets)<br />“The number of feasible active schedules is, by a conservative estimate, well over a million, so their complete enumeration is out of the question.”<br /><ul><li>Also 10 (jobs) x 10 (operations) and 20 (jobs) x 5 (operations) problems</li></li></ul><li>6 x 6*6 Test Problem (times in brackets)<br />Job 3, 1, 2, 5, 4, 6<br />
- 6. 6 x 6*6 Test Problem (times in brackets)<br /><ul><li>Two Rules
- 7. SIO: Shortest Imminent Operation (“First on, First Off”)
- 8. LRT: Longest Remaining Time
- 9. Only require knowledge of “your” machine</li></li></ul><li><ul><li>Monte Carlo: 58 time Units
- 10. SIO: 67 time units
- 11. LRT: 61 time units
- 12. Optimal: 55 time units
- 13. SIO should be used initially (get the machines to start work) and LRT later (work on the longest jobs)
- 14. Why not combine the two heuristics?
- 15. Four learning models, rewarding good heuristic selection</li></li></ul><li>Remarks<br /><ul><li>Not sure about reproducibility (e.g. reward/punishment functions)
- 16. An unbiased random combination of scheduling rules is better than any of them taken separately
- 17. “Learning is possible, but there is a question as to whether learning is desirable given the effectiveness of the random combination”
- 18. “It is not clear what is being learnt as the original conjecture was not strongly supported”
- 19. “It is likely that combinations of 5-10 rules would out-perform humans”</li></li></ul><li>Fang H-L., Ross P. and Corne D. (1993) A Promising genetic Algorithm Approach to Job-Shop Scheduling, Reschecduling, and Open-Shop Scheduling Problems. In Forrest S. (ed) Fifth International Conference on Genetic Algorithms, Morgan Kaufmann, San Mateo, 375-383<br />
- 20. Representation<br /><ul><li>For a j x m problem, a string represents j x mchunks.
- 21. The chunk is atomic from a GA perspective.
- 22. The chunks abc means to put the first untackled task of the ath uncompleted job into the earliest place it will fit in the developing schedule, then put the bth uncompleted job into ….
- 23. A schedule builder decodes the chromosome.
- 24. Fairly standard GA e.g. population size of 500, rank based selection, elitism, 300 generations, crossover rate 0.6, adaptive mutation rate</li></li></ul><li>Other Remarks<br /><ul><li>Considered Job-Shop Scheduling and Open-Shop Scheduling
- 25. Experimented with different GA parameters
- 26. Results compared favourably with best known or optimal</li></li></ul><li>Denzinger J. and Fuchs M. (1997) High Performance ATP Systems by Combining Several AI Methods. In proceedings of the Fifteenth International Joint Conference on Artificial Intelligence (IJCAI 97), 102-107<br />
- 27. Remarks<br /><ul><li>The first paper to use the term Hyper-heuristic
- 28. Used in the context of an automated theorem prover
- 29. A hyper-heuristic stores all the information necessary to reproduce a certain part of the proof and is used instead of a single heuristic</li></li></ul><li>O’Grady P.J. and Harrison (1985) A General Search Sequencing Rule for Job Shop Sequencing. International Journal of Production Research, 23(5), 961-973<br />
- 30. Remarks<br />Pi = (Ai x Ti) + (Bi x Si)<br />where <br />Pi the priority index for job i at its current stage<br />Ai a 1 x m coefficient vector for job i<br />Ti a m x 1 vector which contains the remaining operation times for job i in process order<br />Bi the due date priority coefficient for job i<br />Sithe due date slack for job i<br />m the maximum number of processing stages for jobs 1 to i<br />
- 31. Remarks<br />Pi = (Ai x Ti) + (Bi x Si)<br />where <br />Pi the priority index for job i at its current stage<br />Ai a 1 x m coefficient vector for job i<br />Ti a m x 1 vector which contains the remaining operation times for job i in process order<br />Bi the due date priority coefficient for job i<br />Sithe due date slack for job i<br />m the maximum number of processing stages for jobs 1 to i<br />A = (1,0,0,0,0,…,0), B = 0<br />Shortest Imminent Operation Time<br />A = (0,0,0,0,0,…,0), B = 1<br />Due Date Sequencing<br />
- 32. Remarks<br />Pi = (Ai x Ti) + (Bi x Si)<br />where <br />Pi the priority index for job i at its current stage<br />Ai a 1 x m coefficient vector for job i<br />Ti a m x 1 vector which contains the remaining operation times for job i in process order<br />Bi the due date priority coefficient for job I<br />Sithe due date slack for job i<br />m the maximum number of processing stages for jobs 1 to i<br />A search is performed over Ai and Bi in order to cause changes in the processing sequences.<br />
- 33. Norenkov I. P. and Goodman E D. (1997) Solving Scheduling Problems via Evolutionary Methods for Rule Sequence Optimization. In proceedings of the 2nd World Conference on Soft Computing (WSC2)<br />
- 34. Remarks<br /><ul><li>Similar in idea to Fang, Ross and Corne (1994)
- 35. The allele at the ith position is the heuristic to be applied at the ith step of the scheduling process.
- 36. Comparison with using eight single heuristics and the Heuristic Combination Method (HCM) was found to be superior.</li></li></ul><li>Other (Selected) Papers<br /><ul><li>Crowston W.B., Glover F., Thompson G.L. and Trawick J.D. (1963) Probabilistic and Parameter Learning Combinations of Local Job Shop Scheduling Rules. ONR Research Memorandum, GSIA, Carnegie Mellon University
- 37. Storer R.H., Wu S.D. and Vaccari R. (1992) New Search Spaces for Sequencing Problems with Application to Job Shop Scheduling. Management Science, 38(10), 1495-1509
- 38. Battiti R. (1996) Reactive Search: Toward Self Tuning Heuristics. In Rayward-Smith R.J., Osman I.H., Reeves C.R. and Smith G.D. (eds) Modern Heuristics Search methods, John Wiley, 61-83</li></li></ul><li>Contents<br />Past<br /><ul><li>A selection of early work</li></ul>Present (Heuristics to Choose Heuristics)<br /><ul><li>Current State of the Art</li></ul>Future<br /><ul><li>Potential Research Directions for the Future</li></ul>Albert Einstein<br />1879 - 1955<br />“We can't solve problems by using the same kind of thinking we used when we created them.”<br />
- 39. H2<br />Hn<br />Heuristics to Choose Heuristics<br />Hyper-heuristic<br />Data flow<br />Domain Barrier<br />Data flow<br />Set of low level heuristics<br />H1<br />……<br />Evaluation Function<br />
- 40. Choice Function<br /><ul><li>f1 + f2 + f3
- 41. f1 = How well has each heuristic performed
- 42. f2 = How well have pairs of heuristics performed
- 43. f3 = Time since last called</li></li></ul><li>Tabu Search<br /><ul><li>Low level heuristics compete with each other
- 44. Recent heuristics are made tabu
- 45. Rank low level heuristics based on their estimated performance potential</li></li></ul><li>Case Based Heuristic Selection<br /><ul><li>Find heuristics that worked well in previous similar problem solving situations
- 46. Features discovered in similarity measure – key research issue</li></li></ul><li>Adaptive Ordering Strategies<br /><ul><li>Based on Squeaky Wheel Optimisation
- 47. Consider constructive heuristics as orderings
- 48. Adapt the ordering by a heuristic modifier according to the penalty imposed by certain features
- 49. Generative</li></li></ul><li>Contents<br />Past<br /><ul><li>A selection of early work</li></ul>Present (Generating Heuristics)<br /><ul><li>Current State of the Art</li></ul>Future<br /><ul><li>Potential Research Directions for the Future</li></li></ul><li>H2<br />Hn<br />Generating heuristics<br />Hyper-heuristic<br /><ul><li>Rather than supply a set of low level heuristics, generate the heuristics automatically
- 50. Heuristics could be one off (disposal) heuristics or could be applicable to many problem instances</li></ul>Data flow<br />Domain Barrier<br />Data flow<br />Set of low level heuristics<br />H1<br />……<br />Evaluation Function<br />
- 51. Generating heuristics<br />Burke E. K., Hyde M. and Kendall G. Evolving Bin Packing Heuristics With Genetic Programming. In Proceedings of the 9th International Conference on Problem Parallel Solving from Nature (PPSN 2006), pp 860-869, LNCS 4193, Reykjavik, Iceland, 9-13 Sepetmber 2006<br />
- 52. Generating heuristics<br /><ul><li>Evolves a control program that decides whether to put a given piece into a given bin
- 53. First-fit heuristic evolved from Genetic Programming without human input on benchmark instances</li></ul>For each piece, p, not yet packed <br />For each bin, i<br />output = evaluate(p, fullness of i, capacity of i)<br />if (output > 0)<br />place piece p in bin i<br />break<br />fi<br />End For<br />End For<br />
- 54. Contents<br />Past<br /><ul><li>A selection of early work</li></ul>Present<br /><ul><li>Current State of the Art</li></ul>Future<br /><ul><li>Potential Research Directions for the Future</li></ul>Albert Einstein<br />1879 - 1955<br />“We can't solve problems by using the same kind of thinking we used when we created them.”<br />
- 55. Results on Standard Datasets<br /><ul><li>Many early papers investigated JSSP. There is an opportunity to investigate if the current state of the art is able to beat these and set new benchmarks
- 56. Why not apply hyper-heuristics to more current benchmarks (TSP, VRP, QAP etc.).</li></li></ul><li>Benchmark datasets<br /><ul><li>We need to add to resources such as OR-LIB so that we are able to compare hyper-heuristic approaches.
- 57. We need to have access to benchmarks that are understandable, perceived as fair and which are not open to many interpretations.</li></li></ul><li>Comparison against benchmarks<br /><ul><li>Using the “good enough, soon enough, cheap enough” mantra we don’t claim to be competitive with bespoke solutions, but we are interested if we can beat best known solutions.
- 58. Why are some hyper-heuristics better than others – and on what class of problems?
- 59. Robustness vs quality and how do we measure that?</li></li></ul><li>Ant Algorithm based Hyper-heuristics<br /><ul><li>Ant algorithms draw their inspiration from the way ants forage for food.
- 60. Two major elements to an ant algorithm.
- 61. Pheromone values
- 62. Heuristic values</li></li></ul><li>Visibility<br />Trail Intensity<br />Ant Algorithm based hyper-heuristics<br />
- 63. Visibility<br />Heuristic Synergy<br />Ant Algorithm based hyper-heuristics<br />
- 64. “Good enough, soon enough, cheap enough”<br /><ul><li>What does this actually mean?
- 65. Will the scientific community accept that this is a fair way to compare results?</li></ul>Different Evaluations<br />
- 66. “Good enough, soon enough, cheap enough”<br /><ul><li>How do we know if a solution is “good enough”?
- 67. User feedback?
- 68. Within a given value of best known solution?
- 69. We get bored running the algorithm?
- 70. The cost of accepting the solution is acceptable?
- 71. Two evaluation mechanisms?</li></ul>Not Good Enough!<br />
- 72. “Good enough, soon enough, cheap enough”<br /><ul><li>How do we know if a solution is “soon enough”?
- 73. Meet a critical deadline?
- 74. Run as long as we can?
- 75. Can be embedded in a realtime system?</li></ul>Soon Enough!<br />
- 76. “Good enough, soon enough, cheap enough”<br /><ul><li>How do we know if a solution is “cheap enough”?
- 77. Can be embedded in “off-the-shelf” software?
- 78. Development costs are significantly lower writing a bespoke system?
- 79. Can be run on a standard PC, rather than requiring specialised hardware?</li></ul>Cheap Enough!<br />
- 80. Comparing Hyper-heuristics<br /><ul><li>How can we compare different hyper-heuristics so that reviewers have a way of fairly judging new contributions
- 81. What do we mean by “One hyper-heuristic is better than another”?</li></li></ul><li>Anti-heuristics<br /><ul><li>There is/has been a significant amount of research investigating how we can “choose which heuristic to select at each decision point”
- 82. There could also be some benefit in investigating hyper-heuristics that are obviously bad and seeing if the hyper-heuristic is able to learn/adapt not to use them</li></li></ul><li>Minimal Heuristics<br /><ul><li>Many of the hyper-heuristic papers effectively say “choose a set of low level heuristics…”
- 83. But, can we define a minimal set of heuristics that operate well across different problems (e.g. add, delete and swap)?</li></li></ul><li>Evolve heuristics<br /><ul><li>We can ignore “choose a set of low level heuristics…” if we can generate our own set of human competitive heuristics
- 84. We have utilised genetic programming and adaptive constructive heuristics but there remains lots of scope for further investigation.</li></li></ul><li>Co-evolution<br /><ul><li>Heuristics compete for survival
- 85. Similarities with genetic algorithms etc., but there is a wide scope of possible research in this area.</li></ul>Arthur Samuel<br />1901 – 1990<br />An AI Pioneer<br />
- 86. Hybridisations<br /><ul><li>Is there anything to be gained from hybridising various methodologies?
- 87. There has been success with exact methods and meta-heuristics
- 88. What about hybridising hyper-heuristics with meta-heuristics, exact approaches, user interaction etc?</li></li></ul><li>User interaction<br /><ul><li>How can users interact with hyper-heuristics?
- 89. Introduce/delete heuristics as the search progresses?
- 90. Prohibit some areas of the search space?
- 91. Provide a time/quality trade off?</li></li></ul><li>Framework<br /><ul><li>There is a large learning curve and high buy-in to develop a hyper-heuristic
- 92. Tools such as GA-LIB help the community to utilise the tools and to carry out research
- 93. But, what should this framework enable you to do? Choose heuristics, generate heuristics?</li></li></ul><li>A unifying theory<br /><ul><li>What is the formal relationship between heuristics, meta-heuristics and hyper-heuristics (and even exact methods)?</li></ul>Stephen Hawking<br />1942 - <br />
- 94. A unifying theory<br /><ul><li>Can we analyse the landscape of the different search methodologies?
- 95. Can we move between different search spaces during the search?</li></ul>Stephen Hawking<br />1942 - <br />
- 96. A unifying theory<br /><ul><li>Can we offer convergence guarantees?
- 97. Can we offer guarantees of solution quality and/or robustness?</li></ul>Stephen Hawking<br />1942 - <br />
- 98. Questions/Discussion<br />

No public clipboards found for this slide

×
### Save the most important slides with Clipping

Clipping is a handy way to collect and organize the most important slides from a presentation. You can keep your great finds in clipboards organized around topics.

Be the first to comment