TrabajoFinalIEEEv2.pdf

Please download to get full document.

View again

All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
 7
 
  Experimento en NetLogo desde R: Robot recolector de “Materiales” en zona focalizada ¿Es más importante la cantidad o la calidad del robot? Autor: Wilder Alex Inga López. UNIDAD DE POSTGRADO FACULTAD DE INGENIERIA DE SISTEMAS E INFORMATICA NIVERSIDAD NACIONAL MAYOR DE SAN MARCOS Email
Related documents
Share
Transcript
    Experimento en NetLogo desde R: Robot recolector de “ Materiales ” en zona focalizada  ¿Es más importante la cantidad o la calidad del robot? Autor: Wilder Alex Inga López. UNIDAD DE POSTGRADO FACULTAD DE INGENIERIA DE SISTEMAS E INFORMATICA  NIVERSIDAD NACIONAL MAYOR DE SAN MARCOS Email: wilder.inga@pucp.pe   Resumen - La simulación basada en agentes tiene muchas aplicaciones en el ámbito social y en sistemas complejos con varios actores involucrados. Por otro lado, lo modelos que se construyen tienen muchos supuestos que deben ser probados para llegar a cierto grado de confianza, además de poder sacar conclusiones infiriendo o experimentando en base a dichos modelos. Con el apoyo computacional hemos realizado este experimento utilizando un modelo basado en agentes y aplicando el método de Latin Hypercube Sampling para analizar los resultados del experimento. I.   I  NTRODUCCIÓN  Muchas veces nos encontramos ante situaciones que creemos obvias. Como puede ser el caso de esta situación en la que anticipadamente podemos estar tentados a creer que en una situación de búsqueda, si colocamos más agentes  buscadores entonces podremos resolver la situación en menor tiempo. La pregunta ¿Es más importante la cantidad o la calidad del robot? se planteó cuando revisamos el modelo del explorador de marte basado en una máquina de estados, trabajado por el Dr. Ilias Sakellariou (Department of Applied Informatics, University of Macedonia). Planteado el problema a resolver, con el apoyo de  bibliografía del tema, se diseñó el experimento que finalmente nos llevó a una respuesta interesante, que espero también el lector encuentre interesante. Para el experimento se utilizó el método de Latin Hypercube Sampling y el coeficiente de correlación parcial para realizar el análisis de sensibilidad de los resultados. Pasamos a realizar una descripción detallada de todo lo actuado. II.   DESCRIPCIÓN   DEL   MODELO Fig 1.- Diagrama de estados del robot recolector. Modificado respecto al diagrama srcinal presentado por el Dr. Ilias Sakellariou (Department of Applied Informatics, University of Macedonia).  NetLogo es una herramienta de fácil aprendizaje para realizar simulaciones basadas en agentes sin demasiada complejidad, así mismo existe el lenguaje R que es muy útil  para trabajos estadísticos. Para el estudio que presentamos vamos a realizar el análisis de sensibilidad utilizando R con su librería pse integrado con NetLogo, “ver [2]”. El objetivo es identificar qué elementos impactan más en la búsqueda de materiales en una zona específica como puede ser una urbanización o complejo habitacional. En el modelo, se tienen como variables de ingreso:    Robots: cantidad de robots que se utiliza para la búsqueda    Eficiencia: Asociada a la efectividad del robot al reconocer el material buscado.    no_of_samples: cantidad de materiales que se deben recolectar    no_of_obstacles: cantidad de obstáculos esparcidos en la zona de búsqueda El modelo, elaborado tomando como base el trabajo del Dr. Ilias Sakellariou “ Communicating MARS Explorer  ”  (Sakellariou, 2012), funciona en base a una máquina de estados elaborada para el robot-agente, en la figura 1 se  presenta la máquina de estado adaptado al recolector-agente. Al inicio todos los robots parten de cualquiera de los estados, es decir el estado inicial puede ser el que este transportando una muestra hallada, sin que esto afecte el número de muestras que se debe hallar. Se considera una base en la cual se recolectan todas las muestras, es decir luego que un robot halla el material, debe transportarlo a la base, ubicada dentro de la zona de búsqueda. En el código srcinal en NetLogo se considera una efectividad del 100% en el reconocimiento cuando el robot ubica una muestra; para el estudio se ha considerado que este debe ser parte de las variables de estudio, de esta manera el código adicional es el siguiente: to pick-samples ;;; with-local-randomness [ if (random 100) < Eficiencia [set color red ask samples-here [die]] ] end   Es decir, solo si la eficiencia del robot es alta el tiempo de  búsqueda será menor.    III.   P LANTEAMIENTO EXPERIMENTAL CON DESCRIPCIÓN DE LA METODOLOGÍA Y EL LHS    /    PRCC  La interacción entre R y NetLogo lo trabajamos tomando como base los ejemplos que trae la librería RNetLogo del lenguaje R, y para el análisis de sensibilidad del experimento se utilizó Latin Hypercube Sampling/Partial Rank Correlation Coefficient (LHS/PRCC) que muestra ser una herramienta muy útil para analizar situaciones inciertas y explorar el comportamiento de parámetros dentro de un modelo, “ver [3]”. R, como lenguaje estadístico, tiene facilidades para realizar diversos tipos de análisis, en este caso en particular también para el análisis LHS/PRCC a través del uso de la librería pse, que nos ayuda a focalizar nuestros esfuerzos en el modelo, el experimento y los resultados. Para el uso de las dos librerías se debe incluir dentro del código en lenguaje R los siguientes comandos: library(rJava) library(rNetLogo) library(pse) library(Rarity) Para los que desean realizar experimentos similares, los inconvenientes pueden estar con la versión de Java y si se está trabajando con una máquina de 64 bits, es importante revisar. Para el experimento, se definieron como variables de estudio:    Robots: cantidad de robots que se utiliza para la búsqueda    Eficiencia: Asociada a la efectividad del robot al reconocer una muestra de metal. Adicionalmente se añadieron el número de muestras y la cantidad de obstáculos para establecer cuan relacionado están las variables de estudio con el modelo:    no_of_samples: cantidad de materiales que se deben recolectar    no_of_obstacles: cantidad de obstáculos esparcidos en la zona de búsqueda El uso del método LHS/PRCC requiere que se defina la distribución de probabilidad para cada uno de las variables; en el estudio cada uno de las variables tiene un comportamiento de distribución uniforme, con diferencias en los límites:  Robots: min=20, max=50  Eficiencia: min=50,max=100 no_of_samples: min=40, max=100 no_of_obstacles: min=0,max=40 El uso de la librería pse nos facilita el uso del método LHS/PRCC, para su uso debemos establecer claramente la secuencia de pasos que se deben realizar para cada una de los muestreos LHS que se va a ejecutar como parte del  procedimiento. En el código en lenguaje R se realiza la ejecución del modelo en Netlogo, hasta que todas las muestras se hayan encontrado. Para el experimento el código utilizado es: oneRun2 <- function (robots,no_of_samples, no_of_obstacles, Probabilidad ) {  NLCommand( setup ) # call the setup routine  NLCommand( set robots , robots, setup )  NLCommand( set no-of-samples , no_of_samples)  NLCommand( set no-of-obstacles , no_of_obstacles)  NLCommand( set Probabilidad , Probabilidad)  NLCommand( setup ) # call the setup routine  for (i in 0:200) {  NLDoCommandWhile( any? samples , run-experiment ); ret <- NLReport( ticks )  } return (ret)  } Las primeras pruebas con hasta 10 muestras tomaron aproximadamente entre 20 y 25 minutos, en una PC con un CPU con procesador i5 y 8Gb de RAM, lo cual nos daba una idea de la cantidad de horas que se debía esperar al trabajar las iteraciones necesarias para llegar a resultados confiables. Finalmente trabajamos con 200 como el tamaño de la muestra  para nuestro experimento, con un tiempo final de aproximadamente 4 horas de ejecución. IV.   RESULTADOS En la figura 2 se presenta un extracto de los resultados de la matriz LHS, Fig 2.- tabla de la matriz LHS y sus resultados. Para cada experimento se controla el número de iteraciones que debe ejecutar el modelo hasta encontrar los materiales  buscados, que finalmente nos da una idea directa respecto al tiempo que puede tomar este tipo de búsquedas. Fig 3.- Gráfica empírica de la distribución de las iteraciones que toma el modelo hasta que se encuentren todos los metales.  La distribución de probabilidad del tiempo que puede tomar la búsqueda se gráfica en la figura 3, expresada en ticks según la terminología de NetLogo. Los rangos van desde 1,600 hasta 14,000 ticks. Nro Resultado robots no_of_samples no_of_obstacles Eficiencia 1 2580 50 60 30 86.8752 8177 41 99 5 70.1253 3863 34 63 5 73.6254 2697 37 59 6 97.1255 8030 43 81 4 61.125. . . . . .. . . . . .. . . . . .197 6483 44 95 36 93.375198 7327 48 82 38 59.625199 5245 42 54 25 56.875200 4083 34 64 14 72.875    Fig 4.- Coeficiente de correlación parcial entre el nro de iteraciones y cada una de las siguientes variables: nro. de robots, nro de metales, nro de obstáculos y la eficiencia del robot El coeficiente de correlación parcial nos da la medida de relación lineal entre la variable de estudio y la variable resultado (tiempo que los robots se demoran en encontrar todas las muestras). La fórmula matemática es la siguiente:  x j,  y =Cov(x j,  y) √  Var(x j )Var(y)  Los resultados se muestran gráficamente en la figura 4 para las cuatro variables de estudio. Adicionalmente los Coeficientes de inclinación parcial hallados son: robots 0.51812901 no_of_samples 0.91474563 no_of_obstacles -0.01657464 eficiencia -0.93478058 Corroborando lo que se muestra en la figura 4. Los resultados arrojan que en una búsqueda focalizada la cantidad de robots y la cantidad de obstáculos son secundarios para el tiempo que puede tomar la búsqueda de materiales o muestras. V.   C ONCLUSIONES  El método LHS se enfoca en escoger correctamente las muestras que finalmente incide en tener menos iteraciones en los experimentos con resultados confiables, para ello es importante definir la distribución de probabilidades de las variables de estudio. Con ello, la cantidad de ejecuciones del modelo se reduce en comparación al método de Montecarlo. Respecto al experimento, en una zona focalizada la cantidad de robots no influye considerablemente en el tiempo de búsqueda, es mejor invertir en un buen robot, confiable a la hora de detectar una muestra, antes que en la cantidad. Finalmente, como era de esperar, la cantidad de muestras a encontrar influye directamente en el tiempo que va a tomar la búsqueda, más no así la cantidad de obstáculos que se deben eludir. R  EFERENCIAS   [1] Ilias Sakellariou, Turtles as State Machines , in Proceedings of the 4th International Conference on Agents and Artificial Intelligence ( ICAART 2012), Volume 2, pages 373-378 Villamoura Portugal, Feb 2012 [2] Chalom, A.; Mandai, C.Y. & Prado, P.I.K.L.. “ Sensitivity analyses: a  brief tutorial with R package pse ” , version 0.1.2. October 15, 2013 [3] Gomero, Boloye, Latin Hypercube Sampling and Partial Rank Correlation Coefficient Analysis Applied to an Optimal Control Problem. Master's Thesis, University of Tennessee, 2012. [4]  Nuñez. Jorge & Barón Jorge, “Técnicas avanzadas en el análisis de   grandes modelos computacionales” Instituto CEDIAC, Facultad de Ingeniería, Universidad del Cuyo, Mendoza, Argentina. 1999 [5] A. Chalom and P.I.K.L. Prado, Parameter space exploration of ecological models, arXiv:1210.6278 [q-bio.QM], 2012.
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks