Evolving Fault Localisation Shin Yoo, University College London, UK - - PowerPoint PPT Presentation

evolving fault localisation
SMART_READER_LITE
LIVE PREVIEW

Evolving Fault Localisation Shin Yoo, University College London, UK - - PowerPoint PPT Presentation

Evolving Fault Localisation Shin Yoo, University College London, UK Human Competitive Award, GECCO 2012, 09 July 2012 Spectra Based Fault Localisation Program Spectra Based Fault Localisation Program Tests Spectra Based Fault Localisation


slide-1
SLIDE 1

Human Competitive Award, GECCO 2012, 09 July 2012

Evolving Fault Localisation

Shin Yoo, University College London, UK

slide-2
SLIDE 2

Spectra Based Fault Localisation

Program

slide-3
SLIDE 3

Spectra Based Fault Localisation

Program Tests

slide-4
SLIDE 4

Spectra Based Fault Localisation

Program Tests Spectrum

slide-5
SLIDE 5

Spectra Based Fault Localisation

ef − ep ep + np + 1

Risk Evaluation Formula Program Tests Spectrum

slide-6
SLIDE 6

Spectra Based Fault Localisation

ef − ep ep + np + 1

Risk Evaluation Formula Ranking Program Tests Spectrum

slide-7
SLIDE 7

Evolving SBFL

ef − ep ep + np + 1

Risk Evaluation Formula Ranking Program Tests Spectrum

slide-8
SLIDE 8

Evolving SBFL

ef − ep ep + np + 1

Risk Evaluation Formula Ranking

Program Tests Spectrum

P T S P T S

slide-9
SLIDE 9

Evolving SBFL

Ranking

Program Tests Spectrum

P T S P T S

GP

slide-10
SLIDE 10

Evolving SBFL

Program Tests Spectrum

P T S P T S

GP

Fitness

slide-11
SLIDE 11

Evolving SBFL

Program Tests Spectrum

P T S P T S

GP

Fitness

slide-12
SLIDE 12

Evolving SBFL

Program Tests Spectrum

P T S P T S

GP

Fitness

e2

f(2ep + 2ef + 3np)

e2

f(e2 f + √np)

. . .

slide-13
SLIDE 13

State of the Art

Over 30 formulæ in the literature, with various empirical studies with slightly different results

slide-14
SLIDE 14

State of the Art

ef ef + nf + ep

ef ef + 2(nf + ep)

2ef 2ef + nf + ep

2ef ef + nf + ep

ef nf + ep

1 2( ef ef + nf + ef ef + ep )

ef ef + nf + ep + np

ef + np − nf − ep ef + nf + ep + np

ef + np ef + nf + ep + np

2(ef + np) 2(ef + np) + ep + nf

ef ef + np + 2(ep + nf)

ef + np nf + ep

ef ef +nf ep ep+np + ef ef +nf

Over 30 formulæ in the literature, with various empirical studies with slightly different results

slide-15
SLIDE 15

State of the Art

Optimality Proof (Naish et al. 2011)

Op1 = ( −1 if nf > 0 np

  • therwise

Op2 = ef − ep ep + np + 1

slide-16
SLIDE 16

State of the Art

Optimality Proof (Naish et al. 2011) But the proof is against a specific model

·

if (t1()) s1(); /* S1 */ else s2(); /* S2 */ if (t2()) x = True; /* S3 */ else x = t3(); /* S4 - BUG */

Op1 = ( −1 if nf > 0 np

  • therwise

Op2 = ef − ep ep + np + 1

slide-17
SLIDE 17

State of the Art

Optimality Proof (Naish et al. 2011) But the proof is against a specific model

·

if (t1()) s1(); /* S1 */ else s2(); /* S2 */ if (t2()) x = True; /* S3 */ else x = t3(); /* S4 - BUG */

... not to mention hard.

Op1 = ( −1 if nf > 0 np

  • therwise

Op2 = ef − ep ep + np + 1

slide-18
SLIDE 18

Human Competitiveness

How many of 9 Existing Techniques can 30 GP runs match and/or outperform?

20% 13%

20% 23% 13% 10%

< 5 5 6 7 8 9

✤ 6 runs outperform 8 existing

techniques and match/outperform

  • ne of the state of the art with

proof (Op1 and Op2).

✤ 16 runs outperform all 7 existing

techniques without proof.

Four Unix tools with 92 faults: 20 random faults for training, 72 for evaluation.

slide-19
SLIDE 19

Human Competitiveness

✤ Per-fault view shows that

evolved techniques can

  • utperform ones with
  • ptimality proofs.
  • 20

40 60 80 100 20 40 60 80 100

GP15 tarantula 61 1 10

  • 20

40 60 80 100 20 40 60 80 100

GP15 tarantula 61 1 10

slide-20
SLIDE 20

Human Competitiveness

✤ Per-fault view shows that

evolved techniques can

  • utperform ones with
  • ptimality proofs.
  • 20

40 60 80 100 20 40 60 80 100

GP08

  • p2

3 10 59

  • 20

40 60 80 100 20 40 60 80 100

GP08

  • p2

3 10 59

slide-21
SLIDE 21

Human Competitiveness

✤ Per-fault view shows that

evolved techniques can

  • utperform ones with
  • ptimality proofs.
  • 20

40 60 80 100 20 40 60 80 100

GP11

  • p2

72

  • 20

40 60 80 100 20 40 60 80 100

GP11

  • p2

72

slide-22
SLIDE 22

Future of Search-Based Software Engineering

From Solutions to Generic Problems... To Techniques and Strategies for Your Problems.

slide-23
SLIDE 23

The most effective way to do it, is to do it.

✤ GP provides a structured,

automated way of doing iterative design.

✤ It can cope with a much diverse

spectra and other meta-data.

✤ GP can evolve to suit your

project.

slide-24
SLIDE 24

Think Hard Write Formula Experiment

The most effective way to do it, is to do it.

✤ GP provides a structured,

automated way of doing iterative design.

✤ It can cope with a much diverse

spectra and other meta-data.

✤ GP can evolve to suit your

project. Human

slide-25
SLIDE 25

Think Hard Write Formula Experiment

The most effective way to do it, is to do it.

✤ GP provides a structured,

automated way of doing iterative design.

✤ It can cope with a much diverse

spectra and other meta-data.

✤ GP can evolve to suit your

project.

Genetic Op. Evaluate Select

Human GP

slide-26
SLIDE 26

Think Hard Write Formula Experiment

The most effective way to do it, is to do it.

✤ GP provides a structured,

automated way of doing iterative design.

✤ It can cope with a much diverse

spectra and other meta-data.

✤ GP can evolve to suit your

project.

Genetic Op. Evaluate Select

Human GP

Spectrum

slide-27
SLIDE 27

Think Hard Write Formula Experiment

The most effective way to do it, is to do it.

✤ GP provides a structured,

automated way of doing iterative design.

✤ It can cope with a much diverse

spectra and other meta-data.

✤ GP can evolve to suit your

project.

Genetic Op. Evaluate Select

Human GP

Spectrum Spectrum

slide-28
SLIDE 28

Think Hard Write Formula Experiment

The most effective way to do it, is to do it.

✤ GP provides a structured,

automated way of doing iterative design.

✤ It can cope with a much diverse

spectra and other meta-data.

✤ GP can evolve to suit your

project.

Genetic Op. Evaluate Select

Human GP

Spectrum Spectrum Change Hist. Dependency

slide-29
SLIDE 29

Think Hard Write Formula Experiment

The most effective way to do it, is to do it.

✤ GP provides a structured,

automated way of doing iterative design.

✤ It can cope with a much diverse

spectra and other meta-data.

✤ GP can evolve to suit your

project.

Genetic Op. Evaluate Select

Human GP

Spectrum Spectrum Change Hist. Dependency Spectrum Change Hist. Dependency

slide-30
SLIDE 30
slide-31
SLIDE 31

Evolving SBFL

ef − ep ep + np + 1

Risk Evaluation Formula Ranking Program Tests Spectrum

slide-32
SLIDE 32

Evolving SBFL

ef − ep ep + np + 1

Risk Evaluation Formula Ranking Program Tests Spectrum

Human Competitiveness

How many of 9 Existing Techniques can 30 GP runs match and/or outperform?

20% 13%

20% 23% 13% 10%

< 5 5 6 7 8 9

✤ 6 runs outperform 8 existing

techniques and match/outperform

  • ne of the state of the art with

proof (Op1 and Op2).

✤ 16 runs outperform all 7 existing

techniques without proof.

Four Unix tools with 92 faults: 20 random faults for training, 72 for evaluation.
slide-33
SLIDE 33

Evolving SBFL

ef − ep ep + np + 1

Risk Evaluation Formula Ranking Program Tests Spectrum

Human Competitiveness

How many of 9 Existing Techniques can 30 GP runs match and/or outperform?

20% 13%

20% 23% 13% 10%

< 5 5 6 7 8 9

✤ 6 runs outperform 8 existing

techniques and match/outperform

  • ne of the state of the art with

proof (Op1 and Op2).

✤ 16 runs outperform all 7 existing

techniques without proof.

Four Unix tools with 92 faults: 20 random faults for training, 72 for evaluation.

Think Hard Write Formula Experiment

The most effective way to do it, is to do it.

✤ GP provides a structured,

automated way of doing iterative design.

✤ It can cope with a much diverse

spectra and other meta-data.

✤ GP can evolve to suit your

project.

Genetic Op. Evaluate Select

Human GP

Spectrum Spectrum Change Hist. Dependency Spectrum Change Hist. Dependency

slide-34
SLIDE 34

Evolving SBFL

ef − ep ep + np + 1

Risk Evaluation Formula Ranking Program Tests Spectrum

Human Competitiveness

How many of 9 Existing Techniques can 30 GP runs match and/or outperform?

20% 13%

20% 23% 13% 10%

< 5 5 6 7 8 9

✤ 6 runs outperform 8 existing

techniques and match/outperform

  • ne of the state of the art with

proof (Op1 and Op2).

✤ 16 runs outperform all 7 existing

techniques without proof.

Four Unix tools with 92 faults: 20 random faults for training, 72 for evaluation.

Think Hard Write Formula Experiment

The most effective way to do it, is to do it.

✤ GP provides a structured,

automated way of doing iterative design.

✤ It can cope with a much diverse

spectra and other meta-data.

✤ GP can evolve to suit your

project.

Genetic Op. Evaluate Select

Human GP

Spectrum Spectrum Change Hist. Dependency Spectrum Change Hist. Dependency

Detailed Statistics & Spectra Data http://www.cs.ucl.ac.uk/staff/s.yoo/ evolving-sbfl.html