Você está na página 1de 7

Ajuste paramétrico de un simulador multiagente de la

infección del virus de Zika por medio del algoritmo de


temple simulado
Oscar Azofeifa1 , Luis Diego Mora2 y Carlos Portuguez3
CI-1441 Paradigmas computacionales
Escuela de Ciencias de la Computación e Informática
Universidad de Costa Rica
1
oscar.azofeifasegura@ucr.ac.cr,2 diego.morajimenez@ucr.ac.cr,3 carlos.portuguezubeda@ucr.ac.cr
Noviembre, 2018

Resumen existe la dificultad de encontrar los parámetros ade-


cuados que hacen que los resultados obtenidos se ase-
Se propone implementar el algoritmo de búsqueda mejen a los resultados del laboratorio.
de temple simulado según Russell and Norvig (2004) El semestre pasado se presentó el proyecto reali-
para optimizar la similaridad del porcentaje de célu- zado por Porras and Muñoz (2018), el cual intentó
las muertas, células con cromatina condensada y célu- buscar una mejora por medio de algoritmos genéti-
las vivas que da como salida una simulación de la cos, sin embargo, a pesar de que se lograron resulta-
infección del virus del Zika, implementada semestres dos muy positivos, no habı́a sido posible saber si con
atrás, y los resultados experimentales de laboratorio. otro método se alcanzarı́an incluso mejores resulta-
Con esto se pretende aproximar cada vez más el mo- dos, por lo que surge la necesidad de realizar alguna
delo de la simulación con el comportamiento real de clase de comparación.
la infección del virus. Además, se desea comparar con
el método de algoritmos genéticos implementado por
Porras and Muñoz el semestre anterior y conocer cuál 1.2. Pregunta de investigación
combinación de parámetros es mejor.
¿Genera el algoritmo de temple simulado mejores
Palabras clave: optimización, temple simulado, fla-
resultados que el algoritmo genético implementado
vivirus, virus, simulación, infección, Zika.
por Porras and Muñoz (2018) para la búsqueda de
los parámetros del simulador de infecciones del virus
del Zika que más se ajusten a los resultados experi-
1. Problema mentales?
1.1. Antecedentes
Anteriormente en el curso de Paradigmas Compu- 2. Estado del Arte
tacionales se ha tratado con el proyecto de Corrales
et al. (2018), el cual simula el comportamiento de una Según Jorge Arias del Centro de Investigaciones
infección viral del Zika. A pesar de que su compor- de Enfermedades Tropicales (CIET), se está desarro-
tamiento representa de forma verosı́mil el real, aún llando un reportero fluorescente de la infección por

1
Flavivirus en células animales, este consiste en la in- Tasa de fluorescencia: Probabilidad de que au-
corporación de ARN en la estructura del virus con la mente la fluorescencia de una célula infectada
proteı́na fluorescente Caspase activatable-GFP (CA-
GFP) obtenida del Aequorea Victoria, una medusa Tasa de muerte: Probabilidad de que una célu-
bioluminiscente. Con esta fluorescencia es posible ha- la infectada muera. Para esto usa una variable
cer marcaje y hacer observaciones sobre el avance de aleatoria geométrica
un virus en sus distintas etapas. El método está en Tiempo total: Cantidad de ticks que pasarán en
etapa de mejoramiento respecto a otros métodos (ver la simulación
figura 1).
Finalmente, se comparten observaciones interesan-
tes sobre cambios en los valores de los parámetros, las
cuales serı́an útiles para hacer una inferencia por ab-
ducción e idear qué parámetros se obtendrı́an según
el comportamiento observado:
Variar la tasa de infección puede causar defor-
maciones en la figura visible en la simulación en
caso de que se establezca muy alta
Normalmente hay más células infectadas fluores-
centes que muertas, pero una tasa de fluorescen-
cia muy baja da el caso contrario
Una tasa de muerte muy alta hace que la simula-
Figura 1: Marcaje multiparamétrico de placas virales. ción finalice de forma prematura, pues los focos
infectados matan muy rápido las células y por lo
En el trabajo original hecho por Corrales and Leal tanto ya no pueden transmitir más el virus
(2017) se establece bastante información relevante
para el desarrollo de nuestro proyecto, puesto que co- Como se ha mencionado anteriormente, el traba-
rresponden a conceptos fundamentales o detalles a jo con el que se están comparando resultados es con
considerar de la simulación. el de Porras and Muñoz (2018). En este trabajo se
Para empezar, algunas caracterı́sticas generales del utilizó un algoritmo genético para obtener un indivi-
sistema: duo más apto. El resultado final fue muy bueno, pues
se obtuvieron valores cercanos a los establecidos de
La cuadrı́cula de la simulación es de 400 x 400 forma teórica con un margen de error de ±20.
En tanto al algoritmo que se usará en esta oca-
Los estados de las células son: sanas, infectadas sión, Kirkpatrick et al. definen como objetivo de la
y muertas optimización combinacional el desarrollo de técnicas
eficientes para hallar valores mı́nimos o máximos de
Las células solo pueden empezar como sanas o
una función de muchas variables independientes, la
infectadas. Esto se decide entre elegir las células
cual representa una medida cuantitativa de calidad
a infectar con clicks en la cuadrı́cula o asignar
de un sistema complejo. También mencionan que pa-
las infectadas de forma aleatoria
ra esta clase de problemas, denominados problemas
Luego, se mencionan los parámetros de la simula- de tiempo polinomial no determinista completo, se
ción: han desarrollado heurı́sticas, que son especı́ficas para
cada problema, debido a que el esfuerzo computacio-
Tasa de infección: Probabilidad de que una célula nal que requieren los métodos exactos incrementa ex-
infecte a sus vecinos ponencialmente con la cantidad de datos de entrada,

2
haciendo que en la práctica solo se puedan aplicar La configuración es aceptada con una pro-
para una limitada cantidad de datos de entrada. babilidad P (∆E) = exp (−∆E/kB T ), don-
Por otro lado, Kirkpatrick et al. afirman que hay de kB es la constante de Boltzmann.
una conexión entre la mecánica estadı́stica (el com- Los números aleatorios distribuidos unifor-
portamiento de sistemas con varios grados de liber- memente en el intervalo (0,1) son un me-
tad en equilibrio térmico a una temperatura finita) dio conveniente para implementar la parte
y la optimización multivariable o combinacional. En aleatoria del algoritmo.
cuanto a mecánica estadı́stica, hablan de lo que le su-
cede a un sistema al lı́mite de baja temperatura y afir- Se selecciona un número obtenido de forma
man que, en contextos prácticos, la baja temperatura aleatoria y se compara con P (∆E).
no es una condición suficiente para encontrar estados Si el número es menor:
fundamentales de la materia, los experimentos que • La configuración se conserva.
determinan estados fundamentales de un material se
realizan mediante un recocido cuidadoso, fundiendo Si no:
primero la sustancia, luego bajando la temperatura • La configuración original se usa al ini-
lentamente y pasando mucho tiempo a temperaturas ciar el siguiente paso.
cercanas al punto de congelación. Si esto no se hace,
y se permite que la sustancia salga del equilibrio, el Al usar la función objetivo en lugar de la energı́a
cristal resultante tendrá muchos defectos, o la sus- y definir configuraciones mediante un conjunto de
tancia puede formar un vidrio, sin orden cristalino parámetros xi , con el procedimiento anterior se ge-
y solo estructuras metaestables, localmente óptimas. nera una población de configuraciones de un proble-
Esto lleva a la afirmación de que encontrar el estado ma de optimización a una temperatura efectiva. Esta
de baja temperatura de un sistema cuando se dan los temperatura es simplemente un parámetro de control
pasos para calcular su energı́a es un problema de op- en las mismas unidades que la función objetivo.
timización no distinto a los que se encuentran en la Según Henderson et al. la implementación del al-
optimización combinatoria, a pesar de que el concep- goritmo puede presentar problemas por uno de dos
to de temperatura de un sistema fı́sico no tiene un caminos, unos es por la especificación de las deci-
equivalente obvio en sistemas que están siendo opti- siones especı́ficas del problema, que consisten en la
mizados. definición de los vecinos, la función objetivo y las
Kirkpatrick et al. se refieren a un algoritmo que restricciones, y por otra parte por la especificación
puede ser utilizado para proveer una simulación efi- de decisiones genéricas, tales como la definición de
ciente de una colección de átomos en equilibrio a una las funciones de probabilidad de generación y acep-
temperatura dada. Este consiste en: tación, y el horario de enfriamiento. Las mismas se
describen a continuación.
1. En cada paso, a un átomo se le da un pequeño
desplazamiento, resultando en un cambio, ∆E, Decisiones especı́ficas del problema
en la energı́a del sistema computado.
1. Función objetivo: Se recomienda una función
2. Si ∆E ≤ 0: heurı́stica de penalización dependiente a la tem-
peratura en lugar de la función real objetivo para
El estado es aceptado y la configuración ac- los problemas donde soluciones de bajo costo tie-
tual del átomo desplazado es usada en el nen vecinos de mucho mayor costo, o en casos de
siguiente paso. degeneración (por ejemplo, muchos vecinos con
soluciones iguales, pero con altos costos). Una
3. Si ∆E > 0, el caso es tratado probabilı́sticamen- forma de acelerar la evaluación de esta es calcu-
te: lar la diferencia en las funciones objetivo, ∆w,w0

3
en lugar de usar f (w) y f (w0 ). También se sugie- a) Iniciar con una temperatura inicial t0 para
re que cuando no hay una fórmula cerrada para la cual una buena de la aproximación de las
la función objetivo, se usa una simulación proba- distribución estacionaria πt0 es rápidamen-
bilı́stica para generar un valor para una entrada te alcanzada.
a la solución y se acepta si cae dentro de los lı́mi- b) Reducir t0 por una cantidad δ(t) los sufi-
tes predeterminados. cientemente peque;o para que πt0 sea un
2. Funciones de generación de probabilidad: Usual- buen punto inicial para aproximar πt0 −δ(t) .
mente son distribuciones de probabilidad uni- c) Ajustar la temperatura a un valor constante
formes con probabilidades proporcionales al ta- durante las iteraciones necesitadas para la
maño del vecindario. Tı́picamente no depende de distribución de la solución para aproximar
temperatura. Se sugiere que en lugar de ligarse a πt0 −δ(t) .
una distribución uniforme, que se adopte una ge-
neración inteligente que modifique el vecindario Estos horarios están agrupados en dos clases:
y su distribución de probabilidad para acomodar Estáticos, que deben ser especificados comple-
la intensificación o diversificación de búsqueda. tamente desde el inicio; y adaptativos, los cuales
se ajustan a la tasa de decrecimiento de tem-
3. Funciones de probabilidad de aceptación: La peratura de la información obtenida durante la
más popular es la forma exponencial ejecución del algoritmo. Siempre son heurı́sticos
P (Aceptar w0 como siguiente solución)
( = y no necesariamente la primera clase es mejor o
exp(−(f (w0 ) − f (w))/tk ) f (w0 ) − f (w) > 0 peor que la otra.
1 f (w0 ) − f (w) ≤ 0 5. Elección del vecino: La eficiencia está fuertemen-
Se recomienda reemplazar la función básica por te relacionada con la elección del vecino. Sirve
un decremento geométrico que es independiente para obligar una topologı́a, una estructura de
de la función objetivo, por ejemplo se ha usado vecindad que es más suave es preferida antes
una técnica heurı́stica que vecinos aleatorios que una ”brusca”donde encontrarı́amos muchos
elegidos son examinados y todas sus soluciones mı́nimos locales profundos.
son anotadas, solo la última aceptada serı́a
el nuevo estado. En este enfoque se explora Hernández et al. utilizaron el algoritmo de tem-
un área cercana del espacio de solución. La ple simulado para obtener una solución del problema
probabilidad e aceptación estarı́a definida por del reaprovisionamiento multiproducto. Este consiste
todas las soluciones w, w0 para k = 1, 2, ..., K en el control del inventario que aplica tanto al abas-
como ( tecer de suministros a una empresa, para lo que la
0 ak−1
1 f (w0 ) > f (w) tendencia actual consiste en reducir el número de en-
ak (w, w ) = ak =
1 si no tidades que suministran los recursos en una empre-
donde a1 es el valor de probabilidad de acepta- sa, como también para la distribución cuando, por
ejemplo, es necesario envasar un mismo producto en
ción inicial, x ⊂ (0, 1) es un factor de reducción,
y K es el número de fases (equivalente al horariodistintos tipos de contenedores, en ambos casos se
de enfriamiento). debe determinar la frecuencia del envasado o de pe-
dido de cada producto, ası́ como el tiempo entre cada
4. Elección del horario de enfriamiento: En el al- solicitud o activación. En su implementación definie-
goritmo original se tiene una temperatura ini- ron la probabilidad de aceptación de nuevo caso, si
cial, un horario para reducir o cambiar la tem- ∆E > 0 según la definición de Kirkpatrick et al., co-
peratura y un criterio de parada. Este horario mo exp (−(f (xi ) − f (xj ))/c), donde f (x) es la fun-
es esencial para reducir el tiempo requerido para ción objetivo y a c le llaman parámetro de control,
encontrar una solución óptima. Se sugiere que: equivalente a la temperatura, y que en cada iteración

4
se define por cq+1 = α ∗ cq para q = 0, 1, 2, . . . y don- a) Revisión de literatura.
de α corresponde a un valor a seleccionar entre 0, 9 y
b) Detección de la literatura.
0, 99. El parámetro de control desciende hasta que se
considera que el sistema está congelado. Para el algo- c) Obtención de la literatura.
ritmo implementado, fijaron un valor tal que cq <  d ) Consulta de la literatura.
donde  = 0, 01. Este artı́culo, además de proporcio-
nar un ejemplo claro de la aplicación del algoritmo e) Extracción y recopilación de la información
de temple simulado, también proporciona una forma de interés.
más clara de seleccionar los parámetros del algoritmo, f ) Construcción del marco teórico.
como lo es la temperatura y el método de selección
de un estado vecino. 3. Implementación del método

a) Revisión del código


3. Objetivos b) Diseño de implementación

3.1. Objetivo general c) Desarrollo de la implementación

Contrastar el ajuste de la simulación de infección 4. Recolección de datos:


del virus del Zika respecto a los resultados ex-
perimentales utilizando una implementación del a) Elaborar el instrumento de medición y apli-
algoritmo de temple simulado con respecto a la carlo.
implementación de algoritmo genético de Porras b) Codificar los datos
and Muñoz (2018).
c) Crear un archivo que contenga los datos.
3.1.1. Objetivos especı́ficos 5. Analizar los datos:
Desarrollar el algoritmo de temple simulado en
a) Seleccionar las pruebas estadı́sticas.
el simulador de infecciones del virus del Zika.
b) Elaborar el problema de análisis.
Evaluar la diferencia de los resultados de la si-
mulación optimizada con respecto a los del labo- c) Realizar los análisis de la comparación.
ratorio.
6. Presentar los resultados:
Comparar el ajuste obtenido con el algoritmo de
a) Elaborar y presentar el reporte de investi-
temple simulado respecto al algoritmo genético
gación.
utilizado el semestre pasado.

4. Metodologı́a 5. Diseño del experimento


1. Plantear el problema de investigación. 5.1. Diseño de la implementación
a) Establecer objetivos de investigación. Lenguajes de programación: Se utilizará una in-
tegración entre el Lenguaje Java y NetLogo por
b) Desarrollar las preguntas de investigación. medio de la biblioteca NetLogo API 6.0.
c) Justificar la investigación y su viabilidad.
Código de la simulación: tomado de Corrales
2. Elaborar el marco teórico. et al.

5
vez, de forma que se pueda llevar a cabo el cálculo de
la función de energı́a utilizando los valores reportados
por dicha ejecución. Posteriormente, se evalúa si el
estado debe mantenerse o descartarse mediante el uso
de la función de aceptación descrita por Kirkpatrick
et al..
Respecto a la función objetivo se compondrá por
dos partes: Una ejecución del algoritmo con unos
parámetros determinados y el cálculo de la diferen-
cia de una corrida y el modelo experimental. Esa di-
ferencia se realizará con el método de los mı́nimos
cuadrados con los puntos de las gráfica.
Figura 2: Implementación de Corrales et al.. La función de generación de probabilidad sı́ utili-
zara una distribución uniforme inicialmente, depen-
Modelo UML de clases del experimento (ver fi- diendo del resultado se pasará a utilizar otros méto-
gura 3). dos como se describió anteriormente.
Respecto a la función de de aceptación se utilizará
la más conocida, igualmente, la función variada de
Boltzmann.
0
( P (Aceptar w como siguiente solución) =
exp(−(f (w ) − f (w))/tk ) f (w0 ) − f (w) > 0
0

1 f (w0 ) − f (w) ≤ 0
Para la elección del horario de enfriamiento, en este
caso en cada época la temperatura variará linealmen-
te hasta llegar a la temperatura mı́nima descrita. Se
espera utilizar este, más si cambiando da un mejor
resultado serı́a mejor.

6. Resultados
Figura 3: Diagrama UML de la implementación del
algoritmo. 6.1. Información de aplicaciones simi-
lares
5.2. Descripción de la implementación
A pesar de que no se encontraron aplicaciones o
Se realiza la integración con Java con el fin de poder experimentos similares, no se encontraron aplicacio-
ejecutar múltiples veces la simulación de forma que nes para la optimización de una simulación, sı́ se en-
en cada ejecución se puedan modificar los parámetros contraron casos donde se hace uso del algoritmo de
de la forma adecuada según el algoritmo de temple temple simulado. Dentro de estos se hallaron aplica-
simulado. El modelo del temple simulado a implemen- ciones para optimización de caminos en mapas, rela-
tar pretende ser una estructura generalizada, por lo cionados con el problema del viajero, también, como
que la implementación de esta solución solo será una se mencionó anteriormente, sistemas de optimización
en particular. de reaprovisionamiento multiproducto en el manejo
En la implementación se realiza una ejecución a la de inventarios.

6
6.2. Respecto a preguntas o dudas sin
respuesta y pueden poner en ries-
go el proyecto
Se consideran los siguientes aspectos que podrı́an
poner el riesgo el proyecto:
Falta de guı́a y retroalimentación en el proceso.
Obstáculos técnicos no previstos.

Referencias
Ricardo Corrales and Marı́a José Leal. Simulación de
virus transmitidos por mosquitos usando un siste-
ma multiagente, 2017.

Ricardo Corrales, Marı́a José Leal, Andreı́na Alva-


rado, Alvaro de la Ossa, Rodrigo Mora, Manuel
Arroyo, Andrea Gómez, Alan Calderón, and Jor-
ge L. Arias. Cellular-level characterization of den-
gue and zika virus infection using multiagent simu-
lation, 2018.

Darrall Henderson, Sheldon H. Jacobson, and


Alan W. Johnson. The theory andn practice of
simulated annealing, 2006.
Salvador Hernández, Miguel A. Gutiérrez, and Sergio
de los Cobos. Algoritmo recocido simulado–sección
dorada para el problema de reaprovisionamiento
multiproducto con demanda estocástica, 2010.
S. Kirkpatrick, Jr. C. D. Gelatt, and M. P. Vecchi.
Optimization by simulated annealing, 1993.

Jeifer Porras and Anthony Muñoz. Aplicación de


métodos computacionales en la optimización de
búsqueda de parámetros para la simulación del
dengue., 2018.
Stuart J. Russell and Peter Norvig. Inteligencia Ar-
tificial: Un enfoque moderno. Pearson, 2da edition,
2004.

Você também pode gostar