genetic improvement
play

Genetic Improvement Justyna Petke C entre for R esearch in E - PowerPoint PPT Presentation

Genetic Improvement Justyna Petke C entre for R esearch in E volution, S earch and T esting University College London CREST Thank you Yue Jia Alexandru Marginean Mark Harman CREST Genetic Improvement Justyna Petke What does the word


  1. Genetic Improvement Genetic Improvement Justyna Petke

  2. Filtering Mutations in best individuals are often independent Greedy approach used to combine best individuals Genetic Improvement Justyna Petke

  3. Question Can we improve the efficiency of an already highly-optimised piece of software using genetic programming? Genetic Improvement Justyna Petke

  4. Motivation for choosing a SAT solver Boolean satisfiability (SAT) example: x 1 ∨ x 2 ∨ ¬ x 4 ¬ x 2 ∨ ¬ x 3 • x i : a Boolean variable • x i , ¬ x i : a literal • ¬ x 2 ∨ ¬ x 3 : a clause Genetic Improvement Justyna Petke

  5. Motivation for choosing a SAT solver Bounded Model Checking Planning Software Verification Automatic Test Pattern Generation Combinational Equivalence Checking Combinatorial Interaction Testing and many other applications.. Genetic Improvement Justyna Petke

  6. Motivation for choosing a SAT solver MiniSAT -hack track in SAT solver competitions - good source for software transplants Genetic Improvement Justyna Petke

  7. Question Can we evolve a version of the MiniSAT solver that is faster than any of the human-improved versions of the solver? Genetic Improvement Justyna Petke

  8. Experiments: Setup Solvers used: MiniSAT2-070721 T est cases used: ∼ 2.5% improvement for general benchmarks (SSBSE’13) Genetic Improvement Justyna Petke

  9. Motivation for choosing a SAT solver MiniSAT -hack track in SAT solver competitions - good source for software transplants Genetic Improvement Justyna Petke

  10. Question Can we evolve a version of the MiniSAT solver that is faster than any of the human-improved versions of the solver for a particular problem class? Genetic Improvement Justyna Petke

  11. Experiments: Setup Solvers used: MiniSAT2-070721 T est cases used: from Combinatorial Interaction Testing field Genetic Improvement Justyna Petke

  12. Combinatorial Interaction Testing Use of SAT -solvers limited due to poor scalability SAT benchmarks containing millions of clauses It takes hours to days to generate a CIT test suite using SAT Genetic Improvement Justyna Petke

  13. Experiments: Setup Host program: MiniSAT2-070721 (478 lines in main algorithm) Donor programs: MiniSAT -best09 (winner of ’09 MiniSAT -hack competition) MiniSAT -bestCIT (best for CIT from ’09 competition) - total of 104 new lines Genetic Improvement Justyna Petke

  14. Results Solver Donor Lines Seconds MiniSAT (original) — 1.00 1.00 MiniSAT -best09 — 1.46 1.76 MiniSAT -bestCIT — 0.72 0.87 MiniSAT -best09+bestCIT — 1.26 1.63 Genetic Improvement Justyna Petke

  15. Question How much runtime improvement can we achieve? Genetic Improvement Justyna Petke

  16. Results Solver Donor Lines Seconds MiniSAT (original) — 1.00 1.00 MiniSAT -best09 — 1.46 1.76 MiniSAT -bestCIT — 0.72 0.87 MiniSAT -best09+bestCIT — 1.26 1.63 MiniSAT -gp best09 0.93 0.95 Genetic Improvement Justyna Petke

  17. Results Donor: best09 13 delete, 9 replace, 1 copy Among changes: 3 assertions removed 1 deletion on variable used for statistics Genetic Improvement Justyna Petke

  18. Results Mainly if and for statements switched off Decreased iteration count in for loops Genetic Improvement Justyna Petke

  19. Results Solver Donor Lines Seconds MiniSAT (original) — 1.00 1.00 MiniSAT -best09 — 1.46 1.76 MiniSAT -bestCIT — 0.72 0.87 MiniSAT -best09+bestCIT — 1.26 1.63 MiniSAT -gp best09 0.93 0.95 MiniSAT -gp bestCIT 0.72 0.87 Genetic Improvement Justyna Petke

  20. Results Donor: bestCIT 1 delete, 1 replace Among changes: 1 assertion deletion 1 replace operation triggers 95% of donor code Genetic Improvement Justyna Petke

  21. Results Solver Donor Lines Seconds MiniSAT (original) — 1.00 1.00 MiniSAT -best09 — 1.46 1.76 MiniSAT -bestCIT — 0.72 0.87 MiniSAT -best09+bestCIT — 1.26 1.63 MiniSAT -gp best09 0.93 0.95 MiniSAT -gp bestCIT 0.72 0.87 MiniSAT -gp best09+bestCIT 0.94 0.96 Genetic Improvement Justyna Petke

  22. Results Donor: best09+bestCIT 50 delete, 20 replace, 5 copy Among changes: 5 assertions removed 4 semantically equivalent replacements 3 operations used for statistics removed ∼ half of the mutations remove dead code Genetic Improvement Justyna Petke

  23. Results Solver Donor Lines Seconds MiniSAT (original) — 1.00 1.00 MiniSAT -best09 — 1.46 1.76 MiniSAT -bestCIT — 0.72 0.87 MiniSAT -best09+bestCIT — 1.26 1.63 MiniSAT -gp best09 0.93 0.95 MiniSAT -gp bestCIT 0.72 0.87 MiniSAT -gp best09+bestCIT 0.94 0.96 MiniSAT -gp-combined best09+bestCIT 0.54 0.83 Genetic Improvement Justyna Petke

  24. Results Combining results: 37 delete, 15 replace, 4 copy 56 out of 100 mutations used Among changes: 8 assertion removed 95% of the bestCIT donor code executed Genetic Improvement Justyna Petke

  25. Conclusions Introduced multi-donor software transplantation Used genetic improvement as means to specialise software Achieved 17% runtime improvement on MiniSAT for the Combinatorial Interaction Testing domain by combining best individuals Genetic Improvement Justyna Petke

  26. Inter version transplantation v1 MiniSat Sensitivity Progra Progra v2 Progra Analysis MiniSat GP ms MiniSat ms ms Improv Test vn MiniSat Fitne Multi-doner transplant Non-functional Specialized for CIT property Test e i m 17% faster u l H a d Justyna Petke, Mark Harman, William B. Langdon and Westley Weimer O e C m Using Genetic Improvement & Code Transplants to Specialise a C++ C r E e program G v l i s to a Problem Class (EuroGP’14) CREST Genetic Improvement Justyna Petke

  27. Genetic Improvement of Programs Sensitivity Progra Progra Bowtie Progra Analysis Bowtie GP ms ms 2 ms 2 Test Fitne 70 times faster Non-functional 30+ interventions property Test HC clean up: 7 slight semantic improvement W. B. Langdon and M. Harman Optimising Existing Software with Genetic Programming. TEC 2015 CREST Genetic Improvement Justyna Petke

  28. Genetic Improvement of Programs Sensitivity Progra Progra Progra Analysis Cuda GP Cuda ms ms ms Improv Test Fitne 7 times faster Non-functional updated for new hardware property Test automated updating W. B. Langdon and M. Harman Genetically Improved CUDA C++ Software, EuroGP 2014 CREST Genetic Improvement Justyna Petke

  29. Memory speed trade offs System System Sensitivity optimised Analysis malloc GP malloc Test Fitne Improve execution time by 12% or achieve a 21% Non-functional memory consumption property Test reduction Fan Wu, Westley Weimer, Mark Harman, Yue Jia and Jens Krinke 
 Deep Parameter Optimisation 
 Conference on Genetic and Evolutionary Computation (GECCO 2015) CREST Genetic Improvement Justyna Petke

  30. Reducing energy consumption Improved MiniSat MiniSat CIT CIT Sensitivity Improved MiniSat MiniSat Analysis GP Ensemble Ensemble Test Improved MiniSat MiniSat AProVE AProVE Fitne Energy consumption can Non-functional property Test be reduced by as much as 25% Bobby R. Bruce Justyna Petke Mark Harman Reducing Energy Consumption Using Genetic Improvement Conference on Genetic and Evolutionary Computation (GECCO 2015) CREST Genetic Improvement Justyna Petke

  31. Grow and graft new functionality Graft Grow Sensitivi Host System Human ty GP GP Feature Feature Knowledge Test Test Fitne Fitne Non-functional Non-functional k property Test c property Test a r T e g d Mark Harman, Yue Jia and Bill Langdon, 
 n r e a l w Babel Pidgin: SBSE can grow and graft entirely new functionality into a real world system 
 l a A h Symposium on Search-Based Software Engineering SSBSE 2014. (Challenge track) C CREST Genetic Improvement Justyna Petke

  32. Real world cross system transplantation Donor feature Sensitivity Host’ Analysis GP feature Host Test Successfully Fitne autotransplanted new functionality and passed Non-functional all regression tests for property Test 12 out of 15 real world systems Earl T. Barr, Mark Harman, Yue Jia, Alexandru Marginean, and Justyna Petke 
 Automated Software Transplantation (ISSTA 2015) CREST Genetic Improvement Justyna Petke

  33. Automated Software Transplantation E.T. Barr, M. Harman, Y. Jia, A. Marginean & J. Petke ACM Distinguished Paper Award at ISSTA 2015 2647 shares of article in coverage in CREST Genetic Improvement Justyna Petke

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend