searching for diverse software engineering solutions
play

Searching for Diverse Software Engineering Solutions Robert Feldt, - PowerPoint PPT Presentation

Searching for Diverse Software Engineering Solutions Robert Feldt, robert.feldt@chalmers.se 23rd of March 2012, COW18, London HOSE Lab (Human-fOcused SE) Division of Software Engineering Chalmers Univ of Tech, Sweden fredag den 13 april 2012


  1. Searching for Diverse Software Engineering Solutions Robert Feldt, robert.feldt@chalmers.se 23rd of March 2012, COW18, London HOSE Lab (Human-fOcused SE) Division of Software Engineering Chalmers Univ of Tech, Sweden fredag den 13 april 2012

  2. How make software less brittle / more robust? fredag den 13 april 2012

  3. How make software less brittle / more robust? Engineered Systems often brittle! fredag den 13 april 2012

  4. How make software less brittle / more robust? Engineered Systems Biological Systems often brittle! sometimes robust! fredag den 13 april 2012

  5. How make software less brittle / more robust? ? Engineered Systems Biological Systems often brittle! sometimes robust! fredag den 13 april 2012

  6. N-Version Programming 1 fredag den 13 april 2012

  7. N-Version Programming 1 fredag den 13 april 2012

  8. N-Version Programming 2 1 3 fredag den 13 april 2012

  9. N-Version Programming 2 1 Vote 3 fredag den 13 april 2012

  10. N-Version Programming 2 1 Vote 3 Design Diversity fredag den 13 april 2012

  11. N-Version Programming 2 1 Vote 3 Design Diversity fredag den 13 april 2012

  12. N-Version Programming 2 1 Vote 3 X Design Diversity fredag den 13 april 2012

  13. N-Version Programming 2 1 Vote 3 X Design Diversity fredag den 13 april 2012

  14. N-Version Programming GP 2 1 Vote 3 X Design Diversity fredag den 13 april 2012

  15. N-Version Programming GP 2 1 Vote 3 X Design Diversity fredag den 13 april 2012

  16. fredag den 13 april 2012

  17. fredag den 13 april 2012

  18. fredag den 13 april 2012

  19. Failure Diversity Structural Diversity Size Statistic Value Max 459 Average 100.2 Min 17 # test cases # failing programs 0 0 22 79 24 78 fredag den 13 april 2012

  20. Diversity at different levels fredag den 13 april 2012

  21. Diversity at different levels Statistic All Top 10 Pair-wise Failure Diversity between Min correlation -0.21 0.55 Programs Max Distinct failures 98.9% 59.7% fredag den 13 april 2012

  22. Diversity at different levels Statistic All Top 10 Pair-wise Failure Diversity between Min correlation -0.21 0.55 Programs Max Distinct failures 98.9% 59.7% Pair-wise Failure Most are high, 11 below 0.20, and 2 Diversity between negative (but they are worst) Methods fredag den 13 april 2012

  23. Diversity at different levels Statistic All Top 10 Pair-wise Failure Diversity between Min correlation -0.21 0.55 Programs Max Distinct failures 98.9% 59.7% Pair-wise Failure Most are high, 11 below 0.20, and 2 Diversity between negative (but they are worst) Methods Failure Diversity Inter-Method Diversity higher Inter-Method vs (p<10^-10) Intra-Method fredag den 13 april 2012

  24. Diversity at different levels Statistic All Top 10 Pair-wise Failure Diversity between Min correlation -0.21 0.55 Programs Max Distinct failures 98.9% 59.7% Pair-wise Failure Most are high, 11 below 0.20, and 2 Diversity between negative (but they are worst) Methods Failure Diversity Inter-Method Diversity higher Inter-Method vs (p<10^-10) Intra-Method 34% of all 3VP voters (worst case) improved, best was -20% fredag den 13 april 2012

  25. Explanations? fredag den 13 april 2012

  26. Explanations? Diversity Prediction Theorem [Page2007]: Crowd error = Average Individual Error - Diversity among Individuals fredag den 13 april 2012

  27. Explanations? Diversity Prediction Theorem [Page2007]: Crowd error = Average Individual Error - Diversity among Individuals Diversity trumps Ability [Hong&Page2004]: Random group of solvers often outperform a group of best solvers fredag den 13 april 2012

  28. Explanations? Diversity Prediction Theorem [Page2007]: Crowd error = Average Individual Error - Diversity among Individuals Diversity trumps Ability [Hong&Page2004]: Random group of solvers often outperform a group of best solvers Logic: Ideal group = High ability & Diverse But: Larger pool of solvers => Best solvers more similar => Highest-ability solvers are not diverse Group size matters: Too small => Random solvers overlap, Too large => Best solvers can differ fredag den 13 april 2012

  29. Explanations? Diversity Prediction Theorem [Page2007]: Crowd error = Average Individual Error - Diversity among Individuals Diversity trumps Ability [Hong&Page2004]: Random group of solvers often outperform a group of best solvers Logic: Ideal group = High ability & Diverse But: Larger pool of solvers => Best solvers more similar => Highest-ability solvers are not diverse Group size matters: Too small => Random solvers overlap, Too large => Best solvers can differ BUT, disregards Communication and Learning fredag den 13 april 2012

  30. But Diversity is not a simple concept... “Bolt Effect” [The Indepedent, March 23 2012] fredag den 13 april 2012

  31. Analysis of Failures of GP programs fredag den 13 april 2012

  32. Analysis of Failures of GP programs Main difficulty: High energies! fredag den 13 april 2012

  33. Analysis of Failures of GP programs Too High Retardation; but only slightly fredag den 13 april 2012

  34. Analysis of Failures of GP programs Slightly “under” spec points; continuous spec instead? fredag den 13 april 2012

  35. Analysis of Failures of GP programs Cable force never violated; use weaker cable!? fredag den 13 april 2012

  36. Analysis of Failures of GP programs Clustering the programs showed fundamental tradeoff: Retardation or overrun fredag den 13 april 2012

  37. Many Limitations fredag den 13 april 2012

  38. Many Limitations Small target application fredag den 13 april 2012

  39. Many Limitations Small target application Few requirements fredag den 13 april 2012

  40. Many Limitations Small target application Few requirements Low-dimensional input space fredag den 13 april 2012

  41. Many Limitations Small target application Few requirements Low-dimensional input space Existing simulator; typically not available in early phases fredag den 13 april 2012

  42. Many Limitations Small target application Few requirements Low-dimensional input space Existing simulator; typically not available in early phases Fundamental assumption: SB AutoProgramming fail in similar ways to human programmers fredag den 13 april 2012

  43. Generalization: Search-Based SW Prg Exploration fredag den 13 april 2012

  44. Questions? robert.feldt@chalmers.se http://www.cse.chalmers.se/~feldt/ fredag den 13 april 2012

Recommend


More recommend