SlideShare una empresa de Scribd logo
1 de 53
Computación evolutiva en entornos no tradicionales JJ Merelo Universidad de Granada Http://facebook.com/jjmerelo
Entorno tradicional
Entorno  no  tradicional
¿Por qué? ,[object Object]
Conseguir ciclos de computación en desuso.
Entender la esencia de los algoritmos bioinspirados.
¿Qué vamos a ver? Diferentes formas de llevar a cabo EAs en entornos no tradicionales
Un ejemplo parásito para abrir boca $parcial =( $parcial ? &quot;$parcial+&quot; : &quot;&quot; ) . &quot;log($i*$i*exp($i))+sqrt($i)&quot; ; if   (   $opt   ) { print eval  $parcial ,   &quot;  &quot; ; }   else   { my   $s   =   uri_escape ( $parcial ); my   $url = &quot;http://google.com/search?q=$s amp; btnG=B  C3  BAsqueda&quot; ; my   $response   =   $browser -> get (   $url   ); die  &quot;Canâ't get $url -- &quot; ,   $response -> status_line  unless   $response -> is_success ; my   ( $resultado )= ( $response -> decoded_content  = ~ m {< b > . + ?  = ( . + ? )</ b ></ td >}); $resultado   = ~ s {(< font size =- 2 > </ font >)}{} g ; print  &quot;$i => Resultado es $resultado  &quot; ;
Otro par de ejemplos secuenciales ,[object Object]
Y también en una  cámara Canon .
Las mulas no nadan ,[object Object]
Las redes P2P (entre pares) reflejan la complejidad del mundo actual..
Son redes dinámicas, ad-hoc, y superpuestas a las redes normales.
Topología P2P Red superpuesta Red física
Modelo de capas para computación evolutiva distribuida P2P PCs conectados a internet Red superpuesta P2P Sistema de agentes Computación evolutiva
Agentes evolutivos: ¿Cómo funcionan? ,[object Object]
Algoritmo evolutivo estructurado espacialmente
Cada agente estructura un sólo individuo
La vecindad se autoorganiza usando el protocolo  Newscast ,[object Object],[object Object]
Pero ¿esto funciona?
¿Y porqué no en AJAX? function   migrate (   pop   ) { request  =   new   XMLHttpRequest (); var  peticion_str  =   'http://geneura.ugr.es/~jmerelo/proyectos/ga-js/cgi/get_guy.cgi?chromosome='   +   pop [ 0 ]. chromosome  + &quot;&fitness=&quot; + pop [ 0 ]. fitness ; masca  =   null ; request . open ( 'GET' ,  peticion_str  ,   true ); request . onreadystatechange =  add_to_population  ; request . send ( null ); } function   add_to_population   () { if   (  request . readyState  ==   4   ) { if   (  request . status  ==   200   ) { var  json  =  request . responseText ; eval (   &quot;masca = &quot; + json  ); document . getElementById ( 'ga-2' ). innerHTML   =  json ; if   (  masca [ 'generaciones' ] >   0   ) { run_ga (  masca [ 'generaciones' ] ); } } } }
AJAX al rescate ,[object Object]
Hace falta un sistema de comunicación asíncrono
AJAX=Asynchronous Javascript & XML.
AJAX al alcance de todos ,[object Object]
El modelo de objetos también es compatible.
Requisito: objeto  XMLHttpRequest  en el navegador.
Venga, va, ¿cómo funciona?
Por las vías pasa el tren ,[object Object]
¿Qué es DCoR? ,[object Object]
La distribución se realiza entre cliente/servidor, y también podría hacerse entre diferentes servidores.
Las pruebas nos permitirán establecer su factibilidad, y el entorno más favorable para la misma, así como una línea base de prestaciones. Se busca logo molón. Razón, aquí.
Los experimentos, en casa y con gaseosa ,[object Object],=3 1 1 1 =0 1 0 1
Montaje experimental ,[object Object]
Resultados distribución carga
Vámonos de excursión ,[object Object]
Escalado
Presentando AGAJAJ ,[object Object]
Se trata, una vez más, de usar el navegador para computación distribuida masiva.
En este caso, todo el algoritmo evolutivo se ejecuta en el navegador
O volviendo a la carretera real
El efecto Microsiervos
Be fluid, my friend “ FluidDB is an openly writable shared database” http://fluidinfo.com/about
FluidDB nació de la computación evolutiva ,[object Object],[object Object]
“ FluidDB  permite que los datos sean sociales.”
“ Modelo de control único pero potente”
Reutilización simple de la información.
¿Cómo funciona? Thing fluiddb/about Another Thing http://wcci2010.org jjmerelo/likes dwcorne/stars 5 The sound of music
Fluidificando algoritmos evolutivos Thing fluiddb/about Another Thing 0100 1001 1100 1101 jjmerelo/exp-xyz/fitness dwcorne/exp-abc/fitness 33 22 0110 0001 1111 1101 jjmerelo/exp-xyz/current
Ejecutando un EA fluido 0010101100 001010000 0010101100 0010101100 1110101100 1101101100 0011101100 0010101100 0010101100 1011101100 0011101100 0010101100
Software libre ,[object Object]
Implementado en Perl
1600 evaluaciones

Más contenido relacionado

Destacado

PréSentatique version 2
PréSentatique version 2PréSentatique version 2
PréSentatique version 2
jopilon
 
Vincent duport le dragon catalan
Vincent duport le dragon catalanVincent duport le dragon catalan
Vincent duport le dragon catalan
Marc De Jongy
 
Séance n°2 diagnostic de l'annonceur
Séance n°2   diagnostic de l'annonceurSéance n°2   diagnostic de l'annonceur
Séance n°2 diagnostic de l'annonceur
Meneur de Jeu
 
Josephs Voyage Ppt
Josephs Voyage PptJosephs Voyage Ppt
Josephs Voyage Ppt
jyb21
 
Publicidad
PublicidadPublicidad
Publicidad
realidad
 

Destacado (19)

What's up Digital #02 - by ELAN
What's up Digital #02 - by ELANWhat's up Digital #02 - by ELAN
What's up Digital #02 - by ELAN
 
En 2014, qui change de métier / secteur et pour quelles raisons ?
En 2014, qui change de métier / secteur et pour quelles raisons ?En 2014, qui change de métier / secteur et pour quelles raisons ?
En 2014, qui change de métier / secteur et pour quelles raisons ?
 
PréSentatique version 2
PréSentatique version 2PréSentatique version 2
PréSentatique version 2
 
Carta a Santa Claus
Carta a Santa ClausCarta a Santa Claus
Carta a Santa Claus
 
Ce qui compte c'est les valeurs ! Introduction à la programmation fonctionnelle
Ce qui compte c'est les valeurs ! Introduction à la programmation fonctionnelleCe qui compte c'est les valeurs ! Introduction à la programmation fonctionnelle
Ce qui compte c'est les valeurs ! Introduction à la programmation fonctionnelle
 
Vincent duport le dragon catalan
Vincent duport le dragon catalanVincent duport le dragon catalan
Vincent duport le dragon catalan
 
El belen
El belenEl belen
El belen
 
Medios digitales
Medios digitalesMedios digitales
Medios digitales
 
Séance n°2 diagnostic de l'annonceur
Séance n°2   diagnostic de l'annonceurSéance n°2   diagnostic de l'annonceur
Séance n°2 diagnostic de l'annonceur
 
LE VIN 2.0 '11 - Débat 02 Intervenant 01 - "Internet les nouveaux usages : mo...
LE VIN 2.0 '11 - Débat 02 Intervenant 01 - "Internet les nouveaux usages : mo...LE VIN 2.0 '11 - Débat 02 Intervenant 01 - "Internet les nouveaux usages : mo...
LE VIN 2.0 '11 - Débat 02 Intervenant 01 - "Internet les nouveaux usages : mo...
 
Dimueble_CaSd_Hugo
Dimueble_CaSd_HugoDimueble_CaSd_Hugo
Dimueble_CaSd_Hugo
 
Cts+v+a
Cts+v+aCts+v+a
Cts+v+a
 
Josephs Voyage Ppt
Josephs Voyage PptJosephs Voyage Ppt
Josephs Voyage Ppt
 
Indicateurs web
Indicateurs webIndicateurs web
Indicateurs web
 
Publicidad
PublicidadPublicidad
Publicidad
 
Presentación1 nadal
Presentación1 nadalPresentación1 nadal
Presentación1 nadal
 
Presentación tercera parte
Presentación tercera partePresentación tercera parte
Presentación tercera parte
 
Divulgacion2
Divulgacion2Divulgacion2
Divulgacion2
 
aquitaine
aquitaineaquitaine
aquitaine
 

Similar a Computación evolutiva no tradicional

Mootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JSMootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JS
Ian Monge Pérez
 
J2 Ee Para Seres Humanos Slides
J2 Ee Para Seres Humanos SlidesJ2 Ee Para Seres Humanos Slides
J2 Ee Para Seres Humanos Slides
mundojava
 
Jesús Olmos - ChromeHack, a html5/chrome webhack tool [Rooted CON 2013]
Jesús Olmos - ChromeHack, a html5/chrome webhack tool [Rooted CON 2013]Jesús Olmos - ChromeHack, a html5/chrome webhack tool [Rooted CON 2013]
Jesús Olmos - ChromeHack, a html5/chrome webhack tool [Rooted CON 2013]
RootedCON
 
Actividades De I.B. De Software.
Actividades De I.B. De Software.Actividades De I.B. De Software.
Actividades De I.B. De Software.
Emilio
 
Actividades de I.B. De Software.
Actividades de I.B. De Software.Actividades de I.B. De Software.
Actividades de I.B. De Software.
Emilio
 
1.3.1.3 lab mapping the internet
1.3.1.3 lab   mapping the internet1.3.1.3 lab   mapping the internet
1.3.1.3 lab mapping the internet
15440582
 

Similar a Computación evolutiva no tradicional (20)

Cesnavarra 2009-boletín 3
Cesnavarra 2009-boletín 3Cesnavarra 2009-boletín 3
Cesnavarra 2009-boletín 3
 
Mootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JSMootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JS
 
01 Ext Js Introduccion
01 Ext Js   Introduccion01 Ext Js   Introduccion
01 Ext Js Introduccion
 
[Run Reloaded] Innovación y liderazgo (Pablo C. García + Jorge Rodríguez)
[Run Reloaded] Innovación y liderazgo (Pablo C. García + Jorge Rodríguez)[Run Reloaded] Innovación y liderazgo (Pablo C. García + Jorge Rodríguez)
[Run Reloaded] Innovación y liderazgo (Pablo C. García + Jorge Rodríguez)
 
J2 Ee Para Seres Humanos Slides
J2 Ee Para Seres Humanos SlidesJ2 Ee Para Seres Humanos Slides
J2 Ee Para Seres Humanos Slides
 
AJAX EN CURSO PHP
AJAX EN CURSO PHPAJAX EN CURSO PHP
AJAX EN CURSO PHP
 
Code Blast 2012 - Node.js
Code Blast 2012 - Node.jsCode Blast 2012 - Node.js
Code Blast 2012 - Node.js
 
Jesús Olmos - ChromeHack, a html5/chrome webhack tool [Rooted CON 2013]
Jesús Olmos - ChromeHack, a html5/chrome webhack tool [Rooted CON 2013]Jesús Olmos - ChromeHack, a html5/chrome webhack tool [Rooted CON 2013]
Jesús Olmos - ChromeHack, a html5/chrome webhack tool [Rooted CON 2013]
 
Barcelona Workshop 2008
Barcelona Workshop 2008Barcelona Workshop 2008
Barcelona Workshop 2008
 
Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007
 
Contenidoinformaticaenlaeducacion
ContenidoinformaticaenlaeducacionContenidoinformaticaenlaeducacion
Contenidoinformaticaenlaeducacion
 
Contenidoinformaticaenlaeducacion
ContenidoinformaticaenlaeducacionContenidoinformaticaenlaeducacion
Contenidoinformaticaenlaeducacion
 
Actividades De I.B. De Software.
Actividades De I.B. De Software.Actividades De I.B. De Software.
Actividades De I.B. De Software.
 
Actividades de I.B. De Software.
Actividades de I.B. De Software.Actividades de I.B. De Software.
Actividades de I.B. De Software.
 
Ajax
AjaxAjax
Ajax
 
Automatizando el aprendizaje basado en datos
Automatizando el aprendizaje basado en datosAutomatizando el aprendizaje basado en datos
Automatizando el aprendizaje basado en datos
 
Aprendizaje profundo y Aprendizaje por refuerzo.pdf
Aprendizaje profundo y Aprendizaje por refuerzo.pdfAprendizaje profundo y Aprendizaje por refuerzo.pdf
Aprendizaje profundo y Aprendizaje por refuerzo.pdf
 
Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007
 
1.3.1.3 lab mapping the internet
1.3.1.3 lab   mapping the internet1.3.1.3 lab   mapping the internet
1.3.1.3 lab mapping the internet
 
Servicios web
Servicios webServicios web
Servicios web
 

Más de Juan J. Merelo

Redes sociales-en-un-rato-piiisa
Redes sociales-en-un-rato-piiisaRedes sociales-en-un-rato-piiisa
Redes sociales-en-un-rato-piiisa
Juan J. Merelo
 

Más de Juan J. Merelo (20)

Acta de defunción de juan monserrat vergés
Acta de defunción de juan monserrat vergésActa de defunción de juan monserrat vergés
Acta de defunción de juan monserrat vergés
 
Ciencia y videojuegos v4
Ciencia y videojuegos v4Ciencia y videojuegos v4
Ciencia y videojuegos v4
 
Como triunfar con tu proyecto en un hackatón
Como triunfar con tu proyecto en un hackatónComo triunfar con tu proyecto en un hackatón
Como triunfar con tu proyecto en un hackatón
 
Benchmarking languages for evolutionary computation
Benchmarking languages for evolutionary computationBenchmarking languages for evolutionary computation
Benchmarking languages for evolutionary computation
 
Benchmarking languages for evolutionary algorithms
Benchmarking languages for evolutionary algorithmsBenchmarking languages for evolutionary algorithms
Benchmarking languages for evolutionary algorithms
 
8º hackatón de proyectos libres de la UGR: Ayuda para los participantes
8º hackatón de proyectos libres de la UGR: Ayuda para los participantes8º hackatón de proyectos libres de la UGR: Ayuda para los participantes
8º hackatón de proyectos libres de la UGR: Ayuda para los participantes
 
Creación de panorámicas con Hugin
Creación de panorámicas con HuginCreación de panorámicas con Hugin
Creación de panorámicas con Hugin
 
Introducción a HDR y Tonemapping con Luminance
Introducción a HDR y Tonemapping con LuminanceIntroducción a HDR y Tonemapping con Luminance
Introducción a HDR y Tonemapping con Luminance
 
Introducción al 7º hackathon UGR
Introducción al 7º hackathon UGRIntroducción al 7º hackathon UGR
Introducción al 7º hackathon UGR
 
Nuevas tecnologías, Modas y docencia en el siglo XXI
Nuevas tecnologías, Modas y docencia en el siglo XXINuevas tecnologías, Modas y docencia en el siglo XXI
Nuevas tecnologías, Modas y docencia en el siglo XXI
 
Open Access and Copyleft
Open Access and CopyleftOpen Access and Copyleft
Open Access and Copyleft
 
Luminance 2014 presentaciión sobre luminance
Luminance 2014 presentaciión sobre luminanceLuminance 2014 presentaciión sobre luminance
Luminance 2014 presentaciión sobre luminance
 
Enforcing Corporate Security Policies via Computational Intelligence Techniques
Enforcing Corporate Security Policies via Computational Intelligence TechniquesEnforcing Corporate Security Policies via Computational Intelligence Techniques
Enforcing Corporate Security Policies via Computational Intelligence Techniques
 
Evostar 2014 Introduction to the conference
Evostar 2014 Introduction to the conferenceEvostar 2014 Introduction to the conference
Evostar 2014 Introduction to the conference
 
Presentación Open Data Day en Granada, 2014
Presentación Open Data Day en Granada, 2014Presentación Open Data Day en Granada, 2014
Presentación Open Data Day en Granada, 2014
 
Introducción al uso de git, el sistema de control de fuentes más molón.
Introducción al uso de git, el sistema de control de fuentes más molón. Introducción al uso de git, el sistema de control de fuentes más molón.
Introducción al uso de git, el sistema de control de fuentes más molón.
 
Redes sociales-en-un-rato-piiisa
Redes sociales-en-un-rato-piiisaRedes sociales-en-un-rato-piiisa
Redes sociales-en-un-rato-piiisa
 
¿Necesitas a la oficina de software libre de la Universidad de Granada?
¿Necesitas a la oficina de software libre de la Universidad de Granada?¿Necesitas a la oficina de software libre de la Universidad de Granada?
¿Necesitas a la oficina de software libre de la Universidad de Granada?
 
Presentación 8º CUSL/6º CUSL granadino
Presentación 8º CUSL/6º CUSL granadinoPresentación 8º CUSL/6º CUSL granadino
Presentación 8º CUSL/6º CUSL granadino
 
El software libre contado a los universitarios
El software libre contado a los universitariosEl software libre contado a los universitarios
El software libre contado a los universitarios
 

Último

RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
amelia poma
 
Las Preguntas Educativas entran a las Aulas CIAESA Ccesa007.pdf
Las Preguntas Educativas entran a las Aulas CIAESA  Ccesa007.pdfLas Preguntas Educativas entran a las Aulas CIAESA  Ccesa007.pdf
Las Preguntas Educativas entran a las Aulas CIAESA Ccesa007.pdf
Demetrio Ccesa Rayme
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 

Último (20)

Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
PP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomasPP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomas
 
Los dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la VerdadLos dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la Verdad
 
10-08 Avances tecnológicos del siglo XXI.pdf
10-08 Avances tecnológicos del siglo XXI.pdf10-08 Avances tecnológicos del siglo XXI.pdf
10-08 Avances tecnológicos del siglo XXI.pdf
 
Programa dia de las madres para la convi
Programa dia de las madres para la conviPrograma dia de las madres para la convi
Programa dia de las madres para la convi
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
Santa Criz de Eslava, la más monumental de las ciudades romanas de Navarra
Santa Criz de Eslava, la más monumental de las ciudades romanas de NavarraSanta Criz de Eslava, la más monumental de las ciudades romanas de Navarra
Santa Criz de Eslava, la más monumental de las ciudades romanas de Navarra
 
El liderazgo en la empresa sostenible, introducción, definición y ejemplo.
El liderazgo en la empresa sostenible, introducción, definición y ejemplo.El liderazgo en la empresa sostenible, introducción, definición y ejemplo.
El liderazgo en la empresa sostenible, introducción, definición y ejemplo.
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
 
Las Preguntas Educativas entran a las Aulas CIAESA Ccesa007.pdf
Las Preguntas Educativas entran a las Aulas CIAESA  Ccesa007.pdfLas Preguntas Educativas entran a las Aulas CIAESA  Ccesa007.pdf
Las Preguntas Educativas entran a las Aulas CIAESA Ccesa007.pdf
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
 
TÉCNICAS OBSERVACIONALES Y TEXTUALES.pdf
TÉCNICAS OBSERVACIONALES Y TEXTUALES.pdfTÉCNICAS OBSERVACIONALES Y TEXTUALES.pdf
TÉCNICAS OBSERVACIONALES Y TEXTUALES.pdf
 
12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU
12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU
12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU
 
Lecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigosLecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigos
 
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptxAEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
 
GRUPO 2 - LA GRAN TRIBULACIÓN 25-03-2024 vf.pdf
GRUPO 2 - LA GRAN TRIBULACIÓN 25-03-2024 vf.pdfGRUPO 2 - LA GRAN TRIBULACIÓN 25-03-2024 vf.pdf
GRUPO 2 - LA GRAN TRIBULACIÓN 25-03-2024 vf.pdf
 
Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 

Computación evolutiva no tradicional

Notas del editor

  1. Foto de J. Bakker Ijmuiden en http://www.flickr.com/photos/joost-ijmuiden/3613829273/in/photostream/
  2. Un sólo ordenador/procesador, secuencial, o incluso si es paralelo usando una configuración homogénea, estática. Imagen de http://www.flickr.com/photos/wizzer/5357865167/ por wizzer2801
  3. Casi cualquier entorno que no sea ese: lenguajes no tradicionales, soportes no tradicionales (una cámara de fotos, por ejemplo, o incluso un teléfono móvil), computación basada en hebras, P2P, asíncrona.. Foto de .m for mathijs en http://www.flickr.com/photos/matthijs/3514892055/.
  4. Foto por The U. S. Army http://www.flickr.com/photos/soldiersmediacenter/4685688778/ Por supuesto, también hay una razón importante: publicar trabajos. Igual la más importante.
  5. Algoritmo genético que usa a Google para hacer cálculos. Va a ser más lento, porque hay que tener en cuenta la capacidad de la red, pero es cuestión de aprovecharlo. Ojo, esto es Perl, es para hombres de pelo en pecho. Y mujeres de pecho en pecho.
  6. En este caso, lo que se hace es que se usa el mecanismo asíncrono de AJAX para enviar un individuo a un servidor. El servidor responde con otro, escogido entre los mejores.
  7. JavaScript está construido alrededor de una serie de estándares ECMA. En realidad, hay otras formas de interaccionar de forma asíncrona entre el navegador y el servidor; ahora mismo, ésta es la más popular.
  8. Se podría haber usado un entorno diferente. En realidad, tampoco se usa excesivamente RoR y puede ser incluso una rémora a la hora de conseguir altas prestaciones. La gran ventaja que tiene es la integración con ajax. Es muy fácil hacer llamadas AJAX. Pero quizás hoy lo haría en otro lenguaje: Perl o usando el Google Web Toolkit. También se podría usar un entorno totalmente diferente: Microsoft .Net, por ejemplo, o Ruby. Pero no sería tan ubicuo.
  9. En principio, se podría usar otro cualquiera. De hecho, es posible que lo cambiemos, según el “peso” de la aplicación vaya del servidor al cliente. Pero el desarrollo en RoR es rápido, y tiene una comunidad activa
  10. En mi casa, con mi ordenador de sobremesa, y dos portátiles, el mío y el que le compramos a Lourdes, dos VAIO.
  11. No es como para tirar cohetes, pero algo se consigue. El problema es que RoR (mongrel) tiene una sola hebra de salida, y en estas condiciones se producen bloqueos para servir al cliente los resultados. Tampoco está optimizado en este sentido. Está en modo debug y no producción (aunque esto afectaría sobre todo a las prestaciones por nodo, no al escalado). En pruebas hechas con clusters de nodos se han conseguido mejores resultados, pero la aplicación no está hecha para trabajar con muchos nodos clientes. Así que hay que plantearse un cambio en el servidor, o en la distribución cliente-servidor
  12. Microsiervos lo publicó aquí: http://www.microsiervos.com/archivo/ordenadores/experimento-computacion-distribuida.html
  13. Objects are shared, can&apos;t be deleted. Graph link values are not, and depend on the permissions you have granted them. By default, just the creator can do anything on them.That&apos;s why they are shown in blue. Since the “about” tag belongs to fluiddb, once it&apos;s created it can&apos;t be changed (write-only)
  14. Take into account that the population must remain constant, and that it&apos;s ensured that every member in the population is unique. If the newly generated chromosome is repeated, it is dropped. The new chromosomes do have already its fitness attached, but in pinciple this is not needed; one client could do the evolutionary operators, and another the evaluation.
  15. It&apos;s free as in freedom, not as in free beer. Scientific software should be free from the get go, becasue it encourages reproctibility Image from: http://www.flickr.com/photos/zarwan/79822984/sizes/l/in/photostream/ It&apos;s the Perl camel drinking from the fluid evolutionary algorithm. Take into account that the concept of population does not really apply here. We have a “current” population, and also a “local” population, and a number of evaluations before each immigration.
  16. Since individuals are unique, the number of them added each generation goes down, which is only obvious. It could be done some other way, but it would involve many more database queries. It never goes down to 0, anyways.
  17. This is a sequential run; take into account that the number of evaluations is rather low; even so, it reaches the maximum due to high diversity in the pool
  18. Due to the alpha state of FluidDB and the concurrency problems, we have used sequential runs, with the second run starting after the first.The second gets random chromosomes from the pool, which increasingly mean that former solutions are reused. Esta es una de las ventajas de usar un sistema en el cual todas las soluciones son persistentes; siempre se va mejorando sobre lo ya obtenido. Lo único que tienes que preocuparte es de etiquetar correctamente cuales son las mejores soluciones.
  19. Batch size is 2 in this case; two are taken from the current population and put back into it (if new). Since inmigration is much more frequent, improvement is faster and steadier. This probably means that making more fluidinfo queries increases probability of obtaining good results
  20. Describe basic working principles of Dropbox as a free file synchronization service, how it monitors certain files and how they are copied when modifed under its own schedule. It&apos;s got a permission system that regulates who&apos;s got access to which resources; it&apos;s usually done per directory, and you can also make directory results publicly available.
  21. Every node runs independently, although they are started (roughly) at the same time. After an appointed number of generations, an individual (the best) is logged into the common directory, and another one is taken. A file with the total number of evaluations is also created, and the sum of all evaluations is checked as a termination condition. To speed up processing and reduce overhead speeding up synchronization, the individual is codified into the filename, so that the only thing that is read is the directory, not the content of the file itself. We use different kinds of codifications depending on the chromosome length, but lengths of several hundreds are not a problem. As it can be seen, the fitness is also codified into the name.
  22. Deberías usar los del paper. Se ven mejor...
  23. Picture from Andrew Rivett, Veggiefrog