geneura-papers / 2015-evostar Goto Github PK
View Code? Open in Web Editor NEWPapers to be published in Evostar 2015
Papers to be published in Evostar 2015
escribir la introducción en inglés. Cuando se haga, mencionar en el commit quien lo revisa.
@raiben tienes que lanzar lo siguiente:
Criterio de parada: la media de la población se acerca al mejor individuo (con un umbral). Esto quiere decir que se ha estancado. Imprimir tiempos por pantalla porque los usaremos para comparar!
Fitness:
Mundo: Número de días D: 128, 256, 512
Algoritmo genético: población de tamaño S: 64, 128, 256
O sea, 3x3x3x3 combinaciones. Saca los logs de la forma run_[1-30]F[1-3]P[1,2,4]D[128,256,512]S[64,128,256].log (mete fors en el script)
Te daré acceso al cluster bioatc.ugr.es para que lances en paralelo.
Esto hay que terminarlo y sacar alguna conclusión del mismo. Para empezar, la condición de terminación de los mundos creo que es incorrecta. Igual que en el otro trabajo, yo creo que tendríamos que basarnos en algún evento y no simplemente en el número de días. Para seguir, trabajar con una rejilla y con eventos que suceden en esa rejilla aleatoriamente provoca una serie de artefactos (ya se lo dije a @raiben ) que al final significa que hay que explorar el espacio de parámetros más de lo que desearíamos. Los agentes no tienen inteligencia suficiente como para crear territorios, por ejemplo, así que yo creo que sustituir todo por eventos aleatorios con una estructura determinada sería más fácil que trabajar con una rejilla cuyo tamaño va a depender de la naturaleza de la historia y de muchas cosas más. El problema es que no se me ocurre un sustituto. Por otro lado, cambiamos el tamaño de la rejilla pero no el de la población. Al final, uno tiene que estar en relación con el otro, así que no sé si habría que investigar la densidad de población (la inicial) en vez de el tamaño de rejilla.
En todo caso, @raiben tendría que escribir estas conclusiones. Y hacerlo, si es posible, ya.
Preparar el cámera ready teniendo en cuenta las revisiones. Las instrucciones están aquí (es secreto todavía, se enviará el texto a los correos en breve): http://www.evostar.org/2015/submission_camera_ready.php
Hay que poner en los agradecimientos lo siguiente:
This work has been supported in part by SIPESCA (Programa Operativo FEDER de Andalucía 2007-2013), TIN2011-28627-C04-02 (Spanish Ministry of Economy and Competitivity), SPIP2014-01437 (Dirección General de Tráfico), PRY142/14 (Fundación Pública Andaluza Centro de Estudios Andaluces en la IX Convocatoria de Proyectos de Investigación) and PYR-2014-17 GENIL project (CEI-BIOTIC Granada).
Mostrar los encuentros entre agentes, la evolución de los arquetipos, etc... Hacerlo cuando termine el issue #22 a ser posible.
Antonio, te asigno a ti el envío de la versión final, por lo que más quieras hazlo durante el día. Que antes @unintendedbear le de un repaso a todo el inglés, porque hay muchísimas frases incorrectas, que lo haga contigo y @deantares cerca, por si alguna cosa hay que explicarla.
Escribir en inglés lo que hemos hablado esta tarde para motivar al lector del paper y que le parezca estupendísimo (en la introducción) y así justificar de paso los parámetros a estudiar (en la sección experimental):
"Los sistemas para crear historias necesitan de un mundo, una cantidad de tiempo, un número de personajes y el objeto/tema que define la historia... Estos parámetros son muy importantes, y su modificación podría cambiar la ejecución de las historias... Nosotros hemos definido un sistema generador concreto y simplificado que es MADE (presentado en [tal]), cuyos personajes son ratas, el mundo es una rejilla, el tiempo son días y el objeto es la comida. Vamos a estudiar distintos valores de estos parámetros para ver su mejor combinación y su efecto, y así poder extenderlo a otros problemas que..."
Principio de la sección 3.1
Preparar el cámera ready teniendo en cuenta las revisiones. Las instrucciones están aquí (es secreto todavía, se enviará el texto a los correos en breve): http://www.evostar.org/2015/submission_camera_ready.php
Hay que poner en los agradecimientos lo siguiente:
This work has been supported in part by SIPESCA (Programa Operativo FEDER de Andalucía 2007-2013), TIN2011-28627-C04-02 (Spanish Ministry of Economy and Competitivity), SPIP2014-01437 (Dirección General de Tráfico), PRY142/14 (Fundación Pública Andaluza Centro de Estudios Andaluces en la IX Convocatoria de Proyectos de Investigación) and PYR-2014-17 GENIL project (CEI-BIOTIC Granada).
A ver si se nos va a olvidar
Asigno a @raiben a este issue, aunque deberíamos colaborar todos los miembros de @geneura-papers/made-team
Título: Usando X para resolver el problema Y en generación de tramas
Hipótesis: usar Z (medible) ayuda a...
Conclusiones: Hemos hecho esto, que funciona por la razón Z, ya que Z mide...
@raiben ve proponiendo los objetivos que quieres cumplir con este paper, y una métrica (medible) que permita llegar a unas conclusiones. Deberías actualizar el estado del arte a ver si hay alguna métrica ya propuesta para medir el "interés", por ejemplo (mira el correo de @JJ de este finde). Vamos a ir actualizando el texto de arriba en este issue para tenerlo siempre a la vista.
Pues eso, igual no deberíamos introducir Suvbot todavía en el artículo y emplear en su lugar GpBot. Es que si no hay que presentar el algoritmo basado en justas en el propio artículo, ya que no está publicado en ningún lado
Título: Usando X para resolver el problema Y
Hipótesis: usar Z (medible) ayuda a...
Conclusiones: Hemos hecho esto, que funciona por la razón Z, ya que Z mide...
Nota: no se pueden asignar a más de una persona en los issues, así que hago mention a @geneura-papers/gpbot-team .
Id poniendo en los comentarios de abajo lo que se va a hacer en este paper (ideas) e ir actualizando este comentario para tenerlo siempre a la vista.
Escribir título y abstract teniendo en cuenta las decisiones del issue #2
Vamos con retraso, así que ojico con esto.
He reservado la sala de Juntas el lunes a las 12:30 para que nos pongamos a escribir esto. Ya sabemos cosas concretas, así que es cuestión de ponerse. @fergunet @amorag @deantares @mgarenas nos vemos para ponernos a trabajar en esto.
Pensar qué experimentos vamos a ejecutar para demostrar lo que queremos demostrar, obviamente. Para el miércoles está el milestone, a ver si lo pensamos todos para que @raiben pueda lanzarlo todo ese fin de semana.
Cambiar el criterio de parada: en vez de un número fijo de iteraciones medir la convergencia (parar tras X iteraciones sin mejora) y así podemos comparar mejor por ejemplo el impacto del número de perfiles (recordemos que a más perfiles más longitud de cromosoma).
Aunque he asignado a @pacastillo también puede hacerlo @mgarenas .
Ya han terminado todas las ejecuciones en bioatc. Si entráis en bioatc en la carpeta /home/pgarcia/MADEevostar2015/log veréis 29160 archivos .log (tenéis permiso de lectura)
Los archivos son de la forma:
run_06_E5_P8_D256_W5_F4_S64.log (por ejemplo)
run = de 01 a 30
E=No es un parámetro del EA, son los 3 problemas a resolver: E1, E2, E5 (por lo que todas las cosas E1 no se deben comparar con las de E2, obviamente, ya que son fitness distintos)
P=Nº de perfiles [1,2,4,8]
D=Nº de dias [64,128,256]
W=Tamaño del mundo [5,10,20]
F= [2,4,8] Cantidad de Comida (por favor @raiben confirma que esto está bien, que no está comentado en el issue #13 )
S=Tamaño de la población del GA (64,128, 256)
Exactamente no sé qué resultados se sacan con los tests que usáis (ANOVA y todos esos), supongo que mostrar cuales son los parámetros que más afectan al EA. También sería buena idea hacer 3 tablacas (una por problema) con todos los resultados, pero la tablaca iba a tener 324 casillas (y sería una tabla por cada función fitness!). ¿Ideas para mostrar resultados y compararlos bien? @JJ @amorag ?
También lo pueden hacer @deantares y @amorag , cada cuál la suya. O cualquiera.
Describe experimental setup in the paper, and start doing it. Experimental setup must include the conditions laid out in the introduction and meet the objectives. @deantares can also participate.
Mientras se ejecuta la batería y antes de ponerme a comentar los gráficos y algoritmo a fondo, me he puesto un ratito después de comer a hacer test estadísticos a los distintos poblaciones de cada condiciones de parada. Los hemos realizado dependiente de las dos métricas que estamos evaluando: SCORE y GENERACIONES
Se ha hecho un estudio para la normalidad de las poblaciones usando el test shapiro.
SC PVALUE NORMAL?
1 NG_030.0 0.797705242 FALSE
2 NG_050.0 0.259613364 FALSE
3 NG_100.0 0.208169037 FALSE
4 NG_200.0 0.338280276 FALSE
5 AO_1.0 0.734087342 FALSE
6 AO_1.5 0.723125092 FALSE
7 AO_2.0 0.149466300 FALSE
8 AO_2.5 0.147896932 FALSE
9 RT_n/02 0.221549157 FALSE
10 RT_n/04 0.549727460 FALSE
11 RT_n/08 0.232623143 FALSE
12 RT_n/16 0.762824384 FALSE
13 FT_20.0 0.005723205 TRUE
14 FT_22.0 0.017653775 TRUE
15 FT_24.0 0.002610763 TRUE
16 FT_26.0 0.877981188 FALSE
17 FI_03.0 0.361896981 FALSE
18 FI_07.0 0.127646690 FALSE
19 FI_10.0 0.083034367 FALSE
20 FI_15.0 0.310384324 FALSE
21 NG_030.0 0.797705242 FALSE
22 NG_050.0 0.259613364 FALSE
23 NG_100.0 0.208169037 FALSE
24 NG_200.0 0.338280276 FALSE
25 AO_1.0 0.734087342 FALSE
26 AO_1.5 0.723125092 FALSE
27 AO_2.0 0.149466300 FALSE
28 AO_2.5 0.147896932 FALSE
29 RT_n/02 0.221549157 FALSE
30 RT_n/04 0.549727460 FALSE
31 RT_n/08 0.232623143 FALSE
32 RT_n/16 0.762824384 FALSE
33 FT_20.0 0.005723205 TRUE
34 FT_22.0 0.017653775 TRUE
35 FT_24.0 0.002610763 TRUE
36 FT_26.0 0.877981188 FALSE
37 FI_03.0 0.361896981 FALSE
38 FI_07.0 0.127646690 FALSE
39 FI_10.0 0.083034367 FALSE
40 FI_15.0 0.310384324 FALSE
La mayoría de ellos son NO NORMALES por lo que se realiza un test no paramétrico. En nuestro caso hemos decidido hacer un Kruskal-Wallis que hace un Wilcoxon dos a dos.
Como la matrix es enorme, lo he pintado que queda más claro. En "clarito" los que si son distintos y en "oscuro" los no distintos según el test.
Con la condición de AO, se ve que no es significativamente distinto con el "siguiente" paso. Así el AO_1.0 no es distinto del AO_1.5, pero si del AO_2.0... Dice @fergunet que eso es normal xD
Pero yo pregunto. Una duda Al no ser todos normales se usa un no-paramétrico. Pero, ¿para comparar los normales? ¿Se tendría que usar ANOVA entre esos dos? Yo creo que el "no paramétrico" funciona bien con los normales, pero mejor pregunto
Se ha hecho un estudio para la normalidad de las poblaciones usando el test shapiro.
Tengo un problema, ¿Una distribución con todos los valores iguales es normal? Porque con las "generaciones" el test no me funciona
SC PVALUE NORMAL?
1 AO_1.5 1.271399e-03 TRUE
2 AO_2.0 1.320903e-02 TRUE
3 AO_2.5 1.226793e-04 TRUE
4 AO_1.5 1.271399e-03 TRUE
5 AO_2.0 1.320903e-02 TRUE
6 AO_2.5 1.226793e-04 TRUE
7 AO_1.5 1.271399e-03 TRUE
8 AO_2.0 1.320903e-02 TRUE
9 AO_2.5 1.226793e-04 TRUE
10 RT_n/04 9.407424e-04 TRUE
11 RT_n/08 2.010654e-06 TRUE
12 RT_n/16 7.839191e-01 FALSE
13 FT_20.0 8.367864e-01 FALSE
14 FT_22.0 2.255456e-03 TRUE
15 FT_24.0 2.737956e-01 FALSE
16 FT_26.0 3.081927e-01 FALSE
17 FI_03.0 1.354375e-02 TRUE
18 FI_07.0 8.760981e-03 TRUE
19 FI_10.0 1.044968e-01 FALSE
20 FI_15.0 9.216625e-05 TRUE
Voy a considerar que NO son normales, por la misma duda de antes, es decir, que Así que mismo test que antes:
Escribir las conclusiones a partir de los gráficos de @deantares . Podemos usar este issue para discutirlas, si queréis. RT_n/08
parece el maś guay por porcentaje de aciertos y ratio (1.11, no como para tirar cohetes pero de los mejores).
Evaluar 100 veces 10 individuos al principio de la evaluación, en mitad y al final para el estudio del ruido.
En el paper no mencionamos el tema "videojuegos" por ningún lado. Los de EvoGames podrían echarlo para atrás, ¿no? Si lo enviamos a Evostar, hay que añadir un párrafo comentando su aplicación en videojuegos.
Leer artículo y comprobar si es aplicable a MADE.
Cioffi-Revilla, Claudio, De Jong, Kenneth & Bassett, JeffreyK. (2012). Evolutionary computation and agent-based modeling: biologically-inspired approaches for understanding complex social systems. Computational and Mathematical Organization Theory, 18, 356-373.
En función del wiki buscar una serie de artículos que correspondan al estado del arte, resumirlos (en inglés) y añadirlos a un .bib
En el paper, añadir la parte donde se está describiendo el procedimiento experimental y reescribir los diferentes tipos de condición de terminación probados. Cuando se termine, reasignar a @fergunet o @unintendedbear para revisar.
Dejar los otros sets de parámetros variables y fijo el de días a 512. @mgarenas posiblemente si terminan a tiempo te tendremos que pedir que vuelvas a generar los boxplots, sorry!
Ya están en el #14 incluirlos en el formato correcto en el artículo.
No se pueden comparar bien algunos boxplots, @mgarenas ¿puedes generarlos de nuevo con lo siguiente?
En función del wiki definir título y abstract.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.