Improving Coevolution by Random Sampling

3 downloads 0 Views 1MB Size Report
Jul 8, 2013 - Performance Profiles. Round-Robin. Explaining with PP. Summary. Position Evaluation Function for Othello. Othello Board. Strategy encoding.
Improving Coevolution by Random Sampling Wojciech Jaśkowski

Paweł Liskowski Krzysztof Krawiec

Institute of Computing Science

July 8, 2013

Marcin Szubert

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Inspired by Chong, Tiˇno, Ku & Yao

statistical framework for evaluating strategies in coevolution coevolution < evolution with random sampling Improving Coevolution by Random Sampling

2 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Position Evaluation Function for Othello Othello Board

Strategy encoding .92 -.27 .55 -.10 .08 .47 -.38 .99 -.13 -.52 -.18 -.07 -.18 -.29 -.68 -.44 .55 -.24 .02 -.01 -.01 .10 -.13 .77 -.10 -.10 .01 -.01 .00 -.01 -.09 -.05 .05 -.17 .02 -.04 -.03 .03 -.09 -.05 .56 -.25 .05 .02 -.02 .17 -.35 .42 -.25 -.71 -.24 -.23 -.08 -.29 -.63 -.24 .93 -.44 .55 .22 -.15 .74 -.57 .97

1 look ahead

Improving Coevolution by Random Sampling

3 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Setups: Coevolution and Evolution with Random Sampling population

one-population coevolution (1-Coev)

population

random individuals

evolution with random sampling (Evol-RS)

ES (50+50), same settings; difference only in computing fitness Improving Coevolution by Random Sampling

4 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Results for Expected Utility

Performance (expected utility)

0

50

Generation 100

150

200

85%

Expected Utility = average result over 50 000 games

80%

Algorithm Exp. Util. [%]

75%

1-Coev

70%

65%

0

200

400 600 800 Games played (×1000)

Improving Coevolution by Random Sampling

80.34 ± 0.54

1000

5 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Results for Expected Utility

Performance (expected utility)

0

50

Generation 100

150

200

85%

Expected Utility = average result over 50 000 games

80%

Algorithm Exp. Util. [%] Evol-RS

86.46 ± 0.25

1-Coev

80.34 ± 0.54

75%

70%

65%

0

200

400 600 800 Games played (×1000)

Improving Coevolution by Random Sampling

1000

5 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Research Questions

Initial result: Evolution with RS > coevolution for expected utility Research questions: 1

Any coevolution > evolution with RS for expected utility?

2

Any performance measure for which coevolution > evolution with RS?

Improving Coevolution by Random Sampling

6 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Two population coevolution population

one-population coevolution (1-Coev)

population 1

population 2

two-population coevolution (2-Coev)

Improving Coevolution by Random Sampling

7 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

1- and 2-Coevolution vs. Evolution with Random Sampling

Performance (expected utility)

0

50

Generation 100

150

200

85%

Expected Utility = average result over 50 000 games

80%

Algorithm Exp. Util. [%] Evol-RS

86.46 ± 0.25

1-Coev

80.34 ± 0.54

75%

70%

2-Coev 65%

0

200

400 600 800 Games played (×1000)

Improving Coevolution by Random Sampling

79.97 ± 0.58

1000

8 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Coevolution with Random Sampling

2-Coev-RS

1-Coev-RS population

random individuals

population 1

population 2

random individuals

Improving Coevolution by Random Sampling

9 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

1-Coevolution with Random Sampling

Performance (expected utility)

0

50

Generation 100

150

200

85%

Expected Utility = average result over 50 000 games

80%

Algorithm Exp. Util. [%] Evol-RS

75%

86.46 ± 0.25

1-Coev-RS 83.63 ± 0.37 1-Coev

70%

2-Coev 65%

0

200

400 600 800 Games played (×1000)

Improving Coevolution by Random Sampling

80.34 ± 0.54 79.97 ± 0.58

1000

10 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

2-Coevolution with Random Sampling

Performance (expected utility)

0

50

Generation 100

150

200

85%

Expected Utility = average result over 50 000 games

80%

Algorithm Exp. Util. [%] Evol-RS

75%

86.46 ± 0.25

2-Coev-RS 86.44 ± 0.26 1-Coev-RS 83.63 ± 0.37 1-Coev

70%

2-Coev 65%

0

200

400 600 800 Games played (×1000)

Improving Coevolution by Random Sampling

80.34 ± 0.54 79.97 ± 0.58

1000

10 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Algorithms Analyzed with Performance Profiles 100%

Performance Profile — a vector measure — how a strategy copes against opponents of different strength.

95%

Method performance

90% 85% 80% 75%

Algorithm Exp. Util. [%]

70%

Evol-RS

65%

86.46 ± 0.25

60% 55% 10% 20% 30% 40% 50% 60% 70% 80% Opponent performance

Performance Profiles

Improving Coevolution by Random Sampling

11 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Performance Profile — how prepared? random individuals

Opponent performance 10% 20% 30% 40% 50% 60% 70% 80%

54-55% 55-56% 56-57%

100 buckets. bucket — at most 1000 opponents of 1% performance range. opponents generated by randomly sampling the strategy space Improving Coevolution by Random Sampling

12 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Algorithms Analyzed with Performance Profiles 100%

Performance Profile — a vector measure — how a strategy copes against opponents of different strength.

95%

Method performance

90% 85% 80% 75%

Algorithm Exp. Util. [%]

70%

Evol-RS

65%

2-Coev-RS 86.44 ± 0.26

86.46 ± 0.25

60% 55% 10% 20% 30% 40% 50% 60% 70% 80% Opponent performance

Performance Profiles

Improving Coevolution by Random Sampling

13 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Algorithms Analyzed with Performance Profiles 100%

Performance Profile — a vector measure — how a strategy copes against opponents of different strength.

95%

Method performance

90% 85% 80% 75%

Algorithm Exp. Util. [%]

70%

Evol-RS

65%

2-Coev-RS 86.44 ± 0.26

86.46 ± 0.25

1-Coev-RS 83.63 ± 0.37

60% 55% 10% 20% 30% 40% 50% 60% 70% 80% Opponent performance

Performance Profiles

Improving Coevolution by Random Sampling

13 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Algorithms Analyzed with Performance Profiles 100%

Performance Profile — a vector measure — how a strategy copes against opponents of different strength.

95%

Method performance

90% 85% 80% 75%

Algorithm Exp. Util. [%]

70%

Evol-RS

65%

2-Coev-RS 86.44 ± 0.26 1-Coev-RS 83.63 ± 0.37

60% 55% 10% 20% 30% 40% 50% 60% 70% 80% Opponent performance

Performance Profiles

Improving Coevolution by Random Sampling

86.46 ± 0.25

13 / 19

1-Coev 2-Coev

80.34 ± 0.54 79.97 ± 0.58 W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Results of Round-Robin Tournament

Algorithm

1-Coev-RS 2-Coev-RS 1-Coev Evol-RS 2-Coev Overall

1-Coev-RS

-

53.4%

53.3%

56.3%

2-Coev-RS 1-Coev

56.7%

54.9%

46.6%

-

51.2%

46.7%

48.8%

-

53.2%

53.9%

51.3%

51.8%

52.7%

50.0%

Evol-RS

43.7%

46.8%

48.2%

-

52.0%

47.7%

2-Coev

43.3%

46.1%

47.3%

48.0%

-

46.2%

each algorithm = 120 strategies method vs. method = 120 × 120 = 14 400 games

Improving Coevolution by Random Sampling

14 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Expected Utilility vs. Round-Robin Tournament Discrepancy between the order of methods in Expected Utility and Round-Robin Tournament: Algorithm

Exp. Utility [%]

Algorithm

Round Robin [%]

Evol-RS 2-Coev-RS 1-Coev-RS 1-Coev 2-Coev

86.46 86.44 83.63 80.34 79.97

1-Coev-RS 2-Coev-RS 1-Coev Evol-RS 2-Coev

54.9 51.3 50.0 47.7 46.2

Can be explain the discrepancy using Performance Profiles?

Improving Coevolution by Random Sampling

15 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Explaining Exp. Util. with Performance Profiles 100%

Method performance

90%

Algorithm Exp.Util. [%] 80%

Evol-RS 86.46 ± 0.25 2-Coev-RS 86.44 ± 0.26 1-Coev-RS 83.63 ± 0.37

70%

1-Coev 2-Coev

80.34 ± 0.54 79.97 ± 0.58

60%

50% 10% 20% 30% 40% 50% 60% 70% 80% 90% Opponent performance

Improving Coevolution by Random Sampling

16 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Explaining Round-Robin with Performance Profiles 100%

Method performance

90%

Algorithm Round Robin [%] 80%

1-Coev-RS 2-Coev-RS 1-Coev

54.9 51.3 50.0

70%

Evol-RS 2-Coev

47.7 46.2

60%

50% 10% 20% 30% 40% 50% 60% 70% 80% 90% Opponent performance

Improving Coevolution by Random Sampling

17 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Explaining Round-Robin with Performance Profiles 80%

Method performance

75%

Algorithm Round Robin [%] 70% 65% 60%

1-Coev-RS 2-Coev-RS 1-Coev

54.9 51.3 50.0

Evol-RS 2-Coev

47.7 46.2

55% 50% 50% 55% 60% 65% 70% 75% 80% 85% 90% Opponent performance

Improving Coevolution by Random Sampling

17 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Two-objectives analysis

90% Expected utility

Evol-RS 2-Coev-RS 1-Coev-RS 1-Coev 2-Coev

70% 30%

60% Round-robin result

Improving Coevolution by Random Sampling

18 / 19

W. Jaśkowski, et al.

Motivation

Coevolutionary Algorithms

Performance Profiles

Round-Robin

Explaining with PP

Summary

Summary

1 2

Coevolution with RS dominates coevolution. For strong opponents Coevolution with RS > Evol with RS bias towards playing well against strong opponents larger bias for 1-coevolution

3

Performance profiles — deeper analysis than scalar performance measures. code in Java: http://www.cs.put.poznan.pl/wjaskowski/projects/performance-profiles

Questions?

Improving Coevolution by Random Sampling

19 / 19

W. Jaśkowski, et al.

Appendix

Strategies are evaluated by their expected utility

Strategy performance is expected utility of the strategy Expected Utility is expected game result over all possible strategies 1 X performance(s) = othello(s, t), N t∈TN

where: TN

is set of N random strategies (here: N = 50 000)

othello(s, t) is result of the game (here: ∈ {0, 12 , 1})

Improving Coevolution by Random Sampling

20 / 19

W. Jaśkowski, et al.