Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking...

63
Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013

Transcript of Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking...

Page 1: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Benchmarking CellularGenetic Algorithms on theBBOB Noiseless Testbed

Neal Holtschulte

July 6, 2013

Page 2: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Cellular Genetic Algorithm

Page 3: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Cellular Genetic Algorithm

Page 4: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Cellular Genetic Algorithm

Page 5: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Hardware-motivatedtopology

Page 6: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Neighborhoods

Page 7: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Neighborhoods

Page 8: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

One generation at onenode

Page 9: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Migration

Page 10: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Crossover

Page 11: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Mutation

Page 12: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Update

Page 13: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Migration in a Ring CGA

Page 14: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Conventional GAPopulation

Page 15: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Explore vs. Exploit

Page 16: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Explore vs. Exploit

Page 17: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Explore vs. Exploit

Page 18: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

So you want to use a GA on

your distributed hardware.

Which GA should you use?

Page 19: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Questions

I Which CGA topology is better? Grid or

ring?

I How does CGA compare to classic GA or

random search?

I How does CGA compare to a

state-of-the-art GA? (Tran and Jin)

I How much does operator choice affect

performance?

Page 20: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Questions

I Which CGA topology is better? Grid or

ring?

I How does CGA compare to classic GA or

random search?

I How does CGA compare to a

state-of-the-art GA? (Tran and Jin)

I How much does operator choice affect

performance?

Page 21: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Questions

I Which CGA topology is better? Grid or

ring?

I How does CGA compare to classic GA or

random search?

I How does CGA compare to a

state-of-the-art GA? (Tran and Jin)

I How much does operator choice affect

performance?

Page 22: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Questions

I Which CGA topology is better? Grid or

ring?

I How does CGA compare to classic GA or

random search?

I How does CGA compare to a

state-of-the-art GA? (Tran and Jin)

I How much does operator choice affect

performance?

Page 23: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Experimental DesignI Algorithms: CGA, GA, random search

I Population Sizes: 16, 49, and 100

I Mutation rate: 1/dimensionality

I Mutation Op: Gaussian with 20%

variance

I Crossover rate: 90%

I Crossover Op: Two point crossover

I Evaluation limit: 50,000*dimensionality

Page 24: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Two-point Crossover

http://fga.sourceforge.net/doc/tutorial.html

Page 25: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Gaussian Mutation

Value to be mutated

Page 26: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Gaussian Mutation

Sample from a normal distribution

Page 27: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Gaussian Mutation

Add the sampled value to the value to be

mutated

Page 28: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Evaluated algorithms

I Cellular Genetic AlgorithmI GridI Ring

I Standard Genetic Algorithm

I Random search

Page 29: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Which CGA topologyto use?

Use Ring

Page 30: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

5-D All Functions

Page 31: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

20-D All Functions

Page 32: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

20-D Weakly Structured

Page 33: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Brief aside: What isWeakly Structured?

Gallagher’s Gaussian 101-me Peaks Function

Page 34: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Brief aside: What isWeakly Structured?

Schaffers F7 Function

Page 35: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

20-D Separable

Page 36: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Apples to Apples

Real-coded genetic algorithm benchmarked

on noiseless black-box optimization testbed

by Thanh-Do Tran and Gang-Gyoo Jin

GECCO 2010

Page 37: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Tran & Jin’s RCGA

Population Size 100

Crossover rate 0.95

Tournament size 2

Mutation rate 0.05, 0.1, 0.2

Restart trigger A After a fixed

number of iterations

Restart trigger B Based on lack of

improvement in

population fitness

Page 38: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Restarts

Mutation rate 0.05, 0.1, 0.2

Restart trigger A floor(100 + 3800D√D)

iterations

Restart trigger B best population fitness

varying less than

10−12 in (50 + 25D)

generations

Page 39: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Arithmetic crossover

Page 40: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Adaptive range mutation

This operator is a modification of

Michalewicz non-uniform mutation from:

An adaptive range mutation operator for

real-coded genetic algorithms

by Kevin Austin and Peter Jacobs

2001

Page 41: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Adaptive range mutation

Page 42: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

CGA comparedunfavorably overall (20-D)

Page 43: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

...particularly onill-conditioned (20-D)

Page 44: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

...and multi-modalfunctions (20-D)

Page 45: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

CGA outperformed RCGA on weaklystructured functions (20-D)

Page 46: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Interesting operator

Page 47: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Operator comparison

Algorithm Crossover Mutation Restarts

name Operator Operator

2ptAdp 2-point Adaptive no

2ptGau 2-point Gaussian no

ArthAdp Arithmetic Adaptive no

ArthGau Arithmetic Gaussian no

TranJin Arithmetic Adaptive yes

Population size 100

Page 48: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

20-D All Functions

Page 49: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

5-D Separable

Page 50: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

So what happens if we bolster ring CGA with

adaptive range mutation?

Page 51: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

20-D All functions

Page 52: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

20-D Multi-modal

Page 53: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

20-D Separable

Page 54: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

20-D Weakly structured

Page 55: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Conclusion

Which algorithm is best?

It depends on the function to be optimized.

Page 56: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Conclusion

Which algorithm is best?

It depends on the function to be optimized.

Page 57: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Conclusion

Random search can be highly effective on

separable functions.

Page 58: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Conclusion

Single-population, panmictic GAs are

competitive with grid CGAs run on a single

core.

Page 59: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Conclusion

Adaptive range mutation is an effective

mutation operator for closing the distance to

the optimal solution.

Arithmetic crossover is not particularly

effective on these benchmarks.

Page 60: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Conclusion

Ring CGA outperforms single-population GAs

on weakly-structured, multi-modal functions

most likely due to the Ring CGA’s greater

emphasis on exploration over exploitation.

Page 61: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Conclusion

Ring CGAs outperform Grid CGAs.

Bonus! Lower communication overhead

Page 62: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Conclusion

Ring CGAs outperform Grid CGAs.

Bonus! Lower communication overhead

Page 63: Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless … 2013. 7. 9. · Benchmarking Cellular Genetic Algorithms on the BBOB Noiseless Testbed Neal Holtschulte July 6, 2013.

Thank you for your time.

Questions?