1 / 136

Mark Harman King’s College London

Introduction to Search Based Software Engineering SSS SEBASE Summer School, Birmingham University, July 2007. Mark Harman King’s College London. Introduction to Search Based Software Engineering SSSS Second SEBASE Summer School, Birmingham University, July 2008. Mark Harman

anana
Télécharger la présentation

Mark Harman King’s College London

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction toSearch Based Software EngineeringSSS SEBASE Summer School, Birmingham University, July 2007 Mark Harman King’s College London

  2. Introduction toSearch Based Software EngineeringSSSS Second SEBASE Summer School, Birmingham University, July 2008 Mark Harman King’s College London

  3. Introduction toSearch Based Software EngineeringHow on earth can software engineers do what John says they claim do Mark Harman King’s College London

  4. How on earth can software engineers do what John says they claim do-To engineer is to optimize Mark Harman King’s College London

  5. Introduction toSearch Based Software Engineering Thanks John Clark, University of York, Sebastian Elbaum, University of Nebraska Lincoln Rob Hierons, Brunel University Zheng Li, King’s College London Kiarash Mahdavi, King’s College London Spiros Mancoridis, Drexel University Afshin Mansouri, King’s College London Jian Ren, King’s College London Joachim Wegener, DaimlerChrysler Shin Yoo, King’s College London YuanYuan Zhang, King’s College London

  6. Where is King’s College London? 20 minutes’ walk

  7. Search Based Software Engineering SBSE what and why SBSE case studies SBSE how Current and future trends Advantages Multi Objective Search Insight through search Co Evolution

  8. Search Based Software Engineering SBSE what and why SBSE case studies SBSE how Current and future trends – personal views Advantages Multi Objective Search Insight through search Co Evolution

  9. Search Based Software Engineering SBSE what and why SBSE case studies SBSE how Current and future trends – IMHO Advantages Multi Objective Search Insight through search Co Evolution

  10. Search Based Software Engineering SBSE what and why SBSE case studies SBSE how Current and future trends – In Mark Harman’s Opinion Advantages Multi Objective Search Insight through search Co Evolution

  11. What is SBSE In SBSE we apply search techniques to search large search spaces, guided by a fitness function that captures properties of the acceptable software artefacts we seek.

  12. What is SBSE In SBSE we apply search techniques to search large search spaces, guided by a fitness function that captures properties of the acceptable software artefacts we seek. So it is merely another application of Optimization Techniques?

  13. What is SBSE In SBSE we apply search techniques to search large search spaces, guided by a fitness function that captures properties of the acceptable software artefacts we seek. So it is merely another set of applications of Optimization Techniques?

  14. What is SBSE In SBSE we apply search techniques to search large search spaces, guided by a fitness function that captures properties of the acceptable software artefacts we seek. So it is merely another rich set of applications of Optimization Techniques?

  15. What is SBSE In SBSE we apply search techniques to search large search spaces, guided by a fitness function that captures properties of the acceptable software artefacts we seek. So it is merely another rich set of applications of Optimization Techniques?

  16. What is SBSE In SBSE we apply search techniques to search large search spaces, guided by a fitness function that captures properties of the acceptable software artefacts we seek. Have nails … seek hammer

  17. What is SBSE In SBSE we apply search techniques to search large search spaces, guided by a fitness function that captures properties of the acceptable software artefacts we seek. Have nails … seek hammers

  18. What is SBSE In SBSE we apply search techniques to search large search spaces, guided by a fitness function that captures properties of the acceptable software artefacts we seek. Have nails … seek hammers Generalise, compare, develop

  19. What is SBSE In SBSE we apply search techniques to search large search spaces, guided by a fitness function that captures properties of the acceptable software artefacts we seek. Have nails … seek hammers Generalise, compare, develop in an unbiased manner

  20. What is Research? In research we apply social search techniques to search large search spaces, guided by a natural evolution of memes Have nails … seek hammers Generalise, compare, develop in an unbiased manner

  21. What is Research? In research we apply social search techniques to search large search spaces, guided by a natural evolution of memes and all the usual human frailties Have nails … seek hammers Generalise, compare, develop in an unbiased manner

  22. Why?

  23. The Eight Queens Problem

  24. The Eight Queens Problem

  25. The Eight Queens Problem

  26. The Eight Queens Problem Perfect

  27. The Eight Queens Problem Perfect Score 0

  28. The Eight Queens Problem

  29. The Eight Queens Problem

  30. The Eight Queens Problem Two Attacks

  31. The Eight Queens Problem Two Attacks Score -2

  32. The Eight Queens Problem

  33. The Eight Queens Problem

  34. The Eight Queens Problem Three Attacks

  35. The Eight Queens Problem Three Attacks Score -3

  36. That was easy

  37. Generate a solution Place 8 queens on the board so that there are no attacks

  38. Scale up: Generate a solution Place 44 queens on the board so that there are no attacks

  39. Scale up: Generate a solution Place 400 queens on the board so that there are no attacks

  40. Checking vs Generating Task One: Write a method to determine which is the better of two placements of N queens Task Two: Write a method to construct a board placement with N non attacking queens

  41. Checking vs Generating Task One: Write a method to determine which is the better of two placements of N queens Task Two: Write a method to construct a board placement with N non attacking queens

  42. Checking vs Generating Search Based Software Engineering Write a method to determine which is the better of two solutions Conventional Software Engineering Write a method to construct a perfect solution

  43. Checking vs Generating Search Based Software Engineering Write a method to determine which is the better of two solutions Conventional Software Engineering Write a method to construct a perfect solution

  44. Checking vs Generating Search Based Software Engineering Write a method to determine which is the better of two solutions Conventional Software Engineering Write a method to construct a perfect solution

  45. Checking vs Generating Search Based Software Engineering Write a fitness function to determine which is the better of two solutions Conventional Software Engineering Write a method to construct a perfect solution

  46. Checking vs Generating Search Based Software Engineering Write a fitness function to guide a search aaaa Conventional Software Engineering Write a method to construct a perfect solution

  47. Checking vs Generating Search Based Software Engineering Write a fitness function to guide automated search Conventional Software Engineering Write a method to construct a perfect solution

  48. Examples

  49. Case Studies

  50. Evolutionary Algorithms Insertion Mutation Fitness evaluation Testexecution Recombination End? Selection

More Related