image thumbnail

snake evolution, GP

version 1.0.0.0 (935 KB) by Maxim Vedenyov
Genetic programing example at snake evolution simulation.

546 Downloads

Updated 04 Nov 2011

View License

http://simulations.narod.ru/

See this anitmation here:
http://www.youtube.com/watch?v=eEvPD0pPvrk

To fast test the code run
zz_fast.m to make evolution
then run zz_motion_terst_1_snakes.m to see history of this evolution as animation of best individuals.

Snake evolution is made as Genenetic programming. Gene Expression Programming (GEP) was used. GEP is developed by FERREIRA. FERREIRA's articles is incuded in pdf files. It is parameterization of binary tree of sequence of mathematics operations.

Snake shape is represented as function f=f(d,t), where t is time. Snake is links where angles between links is controeld with angles phi=phi(t), angles phi is differences of f function. For example:
phi(1)=f(L,t)-f(0,t)
phi(2)=f(2*L,t)-f(L,t)
phi(3)=f(4*L,t)-f(2*L,t)
ect.
So if phi not too big then shape of snake is f(d,t) function.

It is classic GP with crossover and mutations. Two point crossover was used. Elitism was used. In gene head size is 24, that means that formula can have 24 operations max. + - * / sin cos sign operations was used. phi angle cannot be more then pi/2 at absolute value.

Cite As

Maxim Vedenyov (2022). snake evolution, GP (https://www.mathworks.com/matlabcentral/fileexchange/33608-snake-evolution-gp), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2010b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!