AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10....
Transcript of AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10....
![Page 1: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/1.jpg)
AN INTRODUCTION TO
GENE EXPRESSION
PROGRAMMINGNigel Browne Ryerson University
[email protected] Department of Computer Science
![Page 2: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/2.jpg)
Agenda
Evolutionary Computation Overview
The Gene Expression Programming Algorithm
What I’m doing with it
Demonstration
Conclusions
2
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 3: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/3.jpg)
A brief introduction
Evolutionary Computation3
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 4: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/4.jpg)
Evolutionary Computation
Biologically inspired algorithms
Survival of the fittest
Not attempting to duplicate nature
Evolves populations of “programs”
Effectively explores problem space
Handles “noisy” environments
4
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 5: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/5.jpg)
Evolutionary Computation
Parallel by definition
Easily distributed
Very good at optimization
Can perform multi-objective and coevolutinoary
searches
5
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 6: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/6.jpg)
Some applications:
Financial modeling
Symbolic regression
Circuit design
Antenna design
Evolving Neural Networks
Evolutionary Computation6
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 7: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/7.jpg)
A not so brief introduction
Gene Expression Programming7
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 8: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/8.jpg)
Gene Expression Programming
Developed by Candida Ferreira
Always produces valid programs
Separates genotype and phenotype
8
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 9: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/9.jpg)
Gene Expression Programming
Linear Genotype Representation
012345678901234567890+Q-/b*+*Qbaabaabbaaab
9
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 10: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/10.jpg)
Gene Expression Programming
Tree-based phenotype representation
10
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 11: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/11.jpg)
Gene Expression Programming
Fixed length chromosome
Genes make up chromosome
Genes composed of Codons
11
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 12: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/12.jpg)
Gene Expression Programming
Genes divided into a Head and Tail
Functions and terminals in Head
Only terminals in Tail
Tail Length = Head Length x (Max Arity-1) + 1
Open read frame is executed
12
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 13: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/13.jpg)
Gene Expression Programming
Replication
Fitness Proportional Selection with Elitism
13
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 14: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/14.jpg)
Gene Expression Programming
Chromosome selection by operators
GP = Individual based
GEP = Population based
14
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 15: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/15.jpg)
Gene Expression Programming
Mutation
012345678012345678012345678-+-+abaaa/bb/ababb*Q*+aaaba
012345678012345678012345678Q+-+abaaa/bbQababb*b*+aaaba
15
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 16: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/16.jpg)
Gene Expression Programming
Inversion
012345678012345678012345678-+-+abaaa/bb/ababb*Q*+aaaba
012345678012345678012345678-+-+abaaa/bb/ababb*+*Qaaaba
16
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 17: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/17.jpg)
Gene Expression Programming
Insertion Sequence Transposition
012345678901234567890012345678901234567890*-+*a-+a*bbabbaabababQ**+abQbb*aabbaaaabba
012345678901234567890012345678901234567890*-+*a-bba+babbaabababQ**+abQbb*aabbaaaabba
17
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 18: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/18.jpg)
Gene Expression Programming
Root IS Transposition
012345678901234567890012345678901234567890-ba*+-+-Q/abababbbaaaQ*b/+bbabbaaaaaaaabbb
012345678901234567890012345678901234567890-ba*+-+-Q/abababbbaaa+bbQ*b/+bbaaaaaaaabbb
18
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 19: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/19.jpg)
Gene Expression Programming
Gene Transposition
012345678012345678012345678*a-*abbab-QQ/aaabbQ+abababb
012345678012345678012345678-QQ/aaabb*a-*abbabQ+abababb
19
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 20: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/20.jpg)
Gene Expression Programming
One Point Recombination
012345678012345678-b+Qbbabb/aQbbbaab/-a/ababb-ba-abaaa
012345678012345678-b+/ababb-ba-abaaa/-aQbbabb/aQbbbaab
20
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 21: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/21.jpg)
Gene Expression Programming
Two Point Recombination
0123456789001234567890+*a*bbcccac*baQ*acabab-*cbb+cccbcc++**bacbaab-
0123456789001234567890+*a*bbccbcc++*Q*acabab-*cbb+ccccac*ba*bacbaab-
21
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 22: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/22.jpg)
Gene Expression Programming
Gene Recombination
012345678012345678012345678/aa-abaaa/a*bbaaab/Q*+aaaab/-*/abbabQ+aQbabaa-Q/Qbaaba
012345678012345678012345678/aa-abaaaQ+aQbabaa/Q*+aaaab/-*/abbab/a*bbaaab-Q/Qbaaba
22
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 23: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/23.jpg)
Gene Expression Programming
More advanced GEP techniques
ADFs (Automatically Defined Functions)
GEP-RNC
23
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 25: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/25.jpg)
What I’m doing with it…
Studying migration
25
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 26: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/26.jpg)
What I’m doing with it…
Studying diversity
26
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 27: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/27.jpg)
What I’m doing with it…
Studying
self-adaptation
27
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 28: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/28.jpg)
What I’m doing with it…
Self Adaptive Distributed GEP algorithm
Syrah
28
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 29: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/29.jpg)
Cross you fingers…
A Brief Demonstration29
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 30: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/30.jpg)
Conclusions
GEP is fast
GEP separates genotype and phenotype
GEP is easily distributed
GEP always created valid programs
30
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 31: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/31.jpg)
Further Reading
Gene Expression Programming: A New Adaptive Algorithm for Solving
Problems: Candida Ferreira, 2001, Complex Systems
Gene Expression Programming, Mathematical Modeling by and Artificial
Intelligence: Candida Ferreira, 2006, Springer
31
Nigel Browne - Ryerson University - [email protected] - Oct 7, 2008
![Page 32: AN INTRODUCTION TO GENE EXPRESSION PROGRAMMINGasadeghi/teaching/Presentation_5.pdf · 2008. 10. 21. · AN INTRODUCTION TO GENE EXPRESSION PROGRAMMING Nigel Browne Ryerson University](https://reader033.fdocuments.net/reader033/viewer/2022051904/5ff6349218c363157d58e806/html5/thumbnails/32.jpg)
AN INTRODUCTION TO
GENE EXPRESSION
PROGRAMMINGNigel Browne Ryerson University
[email protected] Department of Computer Science