dconrails gecco presentation
DESCRIPTION
Presentation for browser-based evolutionary computation.TRANSCRIPT
![Page 1: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/1.jpg)
Browser-based distributed evolutionary computation
Browser-based distributed evolutionarycomputation
Performance and scaling behavior
Merelo, Mora-Garcıa, Laredo, Lupion, Tricas
July 5, 2007
![Page 2: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/2.jpg)
Browser-based distributed evolutionary computation
Outline
1 IntroductionAd-hoc ComputingStealth Computing
2 AJAX at workBasic mechanisms
3 Ruby on RailsWhy?
4 Distributed Computation on RailsGeneral scheme
5 ExperimentsSetupTests
6 Results
7 ConclusionsAll’s well that ends well
8 The EndThanks for your attention
![Page 3: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/3.jpg)
Browser-based distributed evolutionary computation
Introduction
Ad-hoc Computing
What is your computer doing now?
Nothing!
... Probably
![Page 4: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/4.jpg)
Browser-based distributed evolutionary computation
Introduction
Ad-hoc Computing
What is your computer doing now?
Nothing!... Probably
![Page 5: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/5.jpg)
Browser-based distributed evolutionary computation
Introduction
Ad-hoc Computing
What is in every computer?
![Page 6: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/6.jpg)
Browser-based distributed evolutionary computation
Introduction
Ad-hoc Computing
What is in every computer?
![Page 7: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/7.jpg)
Browser-based distributed evolutionary computation
Introduction
Ad-hoc Computing
What is in every computer?
![Page 8: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/8.jpg)
Browser-based distributed evolutionary computation
Introduction
Ad-hoc Computing
And every browser is a virtual machine
JavaScript is a standardlanguage, withimplementations in everybrowser.
JavaScript programs areembedded in websites,and run within thebrowser
Limitations: access tolocal files
Speed? Better don’t ask.
![Page 9: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/9.jpg)
Browser-based distributed evolutionary computation
Introduction
Stealth Computing
Again, what’s your computer doing now?
Javascript programs rununnoticed
And they can call back
![Page 10: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/10.jpg)
Browser-based distributed evolutionary computation
AJAX at work
Basic mechanisms
Asynchronous Javascript and XML
AJAX includes anasynchronous mechanismof communication basedin XML
Important thing about A:does not block thebrowser.
![Page 11: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/11.jpg)
Browser-based distributed evolutionary computation
AJAX at work
Basic mechanisms
Checklist for AJAX
Most browser includeECMAScript/Javascript
Object model is mostlycompatible.
XMLHttpRequest objectrequired for async calls.
![Page 12: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/12.jpg)
Browser-based distributed evolutionary computation
AJAX at work
Basic mechanisms
Checklist for AJAX
Most browser includeECMAScript/Javascript
Object model is mostlycompatible.
XMLHttpRequest objectrequired for async calls.
![Page 13: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/13.jpg)
Browser-based distributed evolutionary computation
AJAX at work
Basic mechanisms
Checklist for AJAX
Most browser includeECMAScript/Javascript
Object model is mostlycompatible.
XMLHttpRequest objectrequired for async calls.
![Page 14: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/14.jpg)
Browser-based distributed evolutionary computation
AJAX at work
Basic mechanisms
A picture is worth a thousand...
![Page 15: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/15.jpg)
Browser-based distributed evolutionary computation
Ruby on Rails
Why?
It’s fast and small and sexy
Well, not really.
Rapid developmentenvironment based onRuby (the language),AJAX and a RDBMS(usually MySQL).
Natural communicationclient-server usingJavascript ObjectNotation (JSON).
![Page 16: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/16.jpg)
Browser-based distributed evolutionary computation
Ruby on Rails
Why?
It’s fast and small and sexy
Well, not really.
Rapid developmentenvironment based onRuby (the language),AJAX and a RDBMS(usually MySQL).
Natural communicationclient-server usingJavascript ObjectNotation (JSON).
![Page 17: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/17.jpg)
Browser-based distributed evolutionary computation
Ruby on Rails
Why?
It’s fast and small and sexy
Well, not really.
Rapid developmentenvironment based onRuby (the language),AJAX and a RDBMS(usually MySQL).
Natural communicationclient-server usingJavascript ObjectNotation (JSON).
![Page 18: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/18.jpg)
Browser-based distributed evolutionary computation
Ruby on Rails
Why?
But there could be other alternatives
Really, all you need is aweb browser, a server and(X)Emacs
Google Web Toolkit couldbe an alternative
Also Django, or otherMVC frameworks.
RoR was just the firstthing we thought aboutwe knew how to code with
![Page 19: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/19.jpg)
Browser-based distributed evolutionary computation
Distributed Computation on Rails
General scheme
There you have it
![Page 20: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/20.jpg)
Browser-based distributed evolutionary computation
Distributed Computation on Rails
General scheme
Setting up the algorithms
![Page 21: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/21.jpg)
Browser-based distributed evolutionary computation
Distributed Computation on Rails
General scheme
Downloading from server
![Page 22: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/22.jpg)
Browser-based distributed evolutionary computation
Experiments
Setup
Experimental setup
![Page 23: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/23.jpg)
Browser-based distributed evolutionary computation
Experiments
Tests
Floating-point tests usingthe 10-variable Griewankfunction.
F (x) =n∑
i=1
xi2
4000+
n∏i=1
cosxi√i+1
(1)
20-bit binarychromosome.
80% 2-point crossover,20% mutation.
![Page 24: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/24.jpg)
Browser-based distributed evolutionary computation
Results
Which JS virtual machine?
![Page 25: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/25.jpg)
Browser-based distributed evolutionary computation
Results
Effect of packet size
![Page 26: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/26.jpg)
Browser-based distributed evolutionary computation
Results
Scaling behaviour
![Page 27: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/27.jpg)
Browser-based distributed evolutionary computation
Results
Influence of debugging info on/off
![Page 28: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/28.jpg)
Browser-based distributed evolutionary computation
Conclusions
All’s well that ends well
Still at the proof-of-concept stage
Stealth/browser-based evolutionarycomputation shows its promise.
Problems at the browser level: lowperformance of the JS virtual machineas compared with state-of-the-artlanguages.
But that will be solved in the nearfuture with JIT Tamarin
Problems at the server level: highlymultiprocessing, multithreaded,load-balanced server needed.
Or reduce server load by offloadingmost things to browser
![Page 29: Dconrails Gecco Presentation](https://reader033.vdocuments.site/reader033/viewer/2022060108/55500dd5b4c90555618b4819/html5/thumbnails/29.jpg)
Browser-based distributed evolutionary computation
The End
Thanks for your attention
Any question?
Visit http://geneura.wordpress.com,our group blog!