Introducción
En esta página el lector encontrará una compilación de lecciones para aprender a simular. La gran mayoría de aplicaciones son resueltas utilizando el software especializado AnyLogic PLE que es la versión gratuita que puede ser descargada en el siguiente link. He elegido este software pues pese a que existen otros muy buenos en el mercado (ver software), es importante elegir uno para explotar al máximo su potencial y expandir sus aplicaciones. Adicionalmente existen otras razones técnicas que explico a continuación.
Por qué AnyLogic?
AnyLogic es el único softwre de simulación que integra todos los paradigmas de simulación en un único ambiente, lo que permite controlar el modelo por eventos, actividades, estados, ubicaciones, etc. Esto aunque suene irrelevante es en realidad una gran ventaja en términos de aplicaciones pues permite al modelador construir todo tipo de modelos e integrarlos en una misma plataforma si es necesario.
Los siguientes videos son solo algunos de los ejemplos del tipo de aplicaciones que se pueden construir:
- Hub de transporte
- Planta de manufactura
- Modelo de recogida de siembra (Agricultura)
- Modelo de defensa tierra-aire
- Sala de emergencias de un hospital
- Publicidad en el Times Square de Nueva York
- Demostración de la integración GIS en AnyLogic
También es posible acceder a estos y muchos más modelos de forma interactiva en el portal runthemodel.com, el cuál contiene una compilación extensa de modelos realizados en AnyLogic por usuarios de todo el mundo. Es importante que el usuario tenga la última versión del plug-in Java en su computador para poder ejecutar los modelos (ver ayuda).
Qué es AnyLogic
AnyLogic es un software de simulación de origen Ruso fabricado por la compañía XJL Technologies, creado a comienzos de los años 90's por Andrey Borshchev actual CEO de la empresa. Esta plataforma de simulación integra diferentes paradigmas como la simulación de eventos discretos, los sistemas dinámicos y la simulación a base de agentes.
Si bien existen diferentes software de simulación, AnyLogic es uno de mis preferidos por su flexibilidad dado que está construído sobre un ambiente Eclipse en Java, lo que le permite incorporar no solo las funciones propias del software, sino muchas librerías externas y por ende ampliar aun más la gama de aplicaciones.
Desafortunadamente no existen muchos recursos de AnyLogic en Español por lo tanto es necesario remitirse a mucha documentación en Inglés para ampliar ejemplos, conceptos y explicaciones.
Versiones de AnyLogic
Desde Noviembre de 2014 AnyLogic dio el salto hacia su version 7.x, en la cuál se unifican los conceptos de entidades, peatones, recursos, etc, para ser tratados como agentes y darle finalmente un enfoque unificado a los objetos.
Nuevas funcionalidades se incluyeron, entre otras, la integración con sistemas geográficos (GIS por sus siglas en inglés), lo que permite integrar mapas extraídos directamente de servicios de referencia como google maps en los modelos y extraer rutas, regiones y locaciones como referencias en la simulación (ver nueva versión AL).
En cuanto al tipo de edición a obtener, muchas ediciones existen donde varía su funcionalidad (como librerias accesibles, número de agentes a crear, exportación del modelo, etc) y su precio (desde versiones gratuitas hasta licencias de 15mil dólares). Para conocer los alcances detallados es aconsejable leer la comparación de versiones,
Para efectos de aprendizaje del software, es aconsejable comenzar con la versión PLE que es una gratuita con todas las funcionalidades de la licencia personal pero con limitaciones en cuanto al número de agentes a utilizar y la exportación de modelos (ver PLE).
Tutoriales
Los siguientes son algunos tutoriales que he elaborado utilizando la versión 7.x edición PLE de AnyLogic. Si usted tiene algún caso que quisiera ver desarrollado por favor deje su comentario.
- Introducción al ambiente AnyLogic
- Modelo simple de colas
- Centro de Copiado
- Carpintería El Roble
- Cómo crear agentes con rangos de visión en AnyLogic
- Manufactura (empresa de juguetes)
- Comparación modelos de producción
- Cadena de abastecimiento
- Modelo de aprovisionamiento
Otros ejemplos y recursos
- Algunos recursos para el aprendizaje de AnyLogic
- Cuándo usar Java Class y cuándo Agentes en AnyLogic
- Comparación de distribuciones de llegada y procesamiento por simulación
- Integrando AnyLogic y R Parte 1
- Integrando AnyLogic y R Parte 2: Gráfico de control
- Muestreo y análisis de resultados usando AnyLogic PLE
- Flow Shop Scheduling
- Simulación de redes con capacidad y velocidad variable
- Triage sala de urgencias
- Simulación de sala de operaciones y carros quirúrgicos
- Modelación flujos peatonales hospitalarios
- Modelo genérico de ascensores
- Simulador Terminal de Petróleos
Me gustaria aprender a utilizar anylogic
Saludos Eduardo
Hay muchos recursos para aprender, desafortunadamente no muchos en Español. Te sugiero descargar el la version PLE que es gratuita y tiene casi todas las funcionalidades de AnyLogic profesional. También puedes consultar en la página de AnyLogic donde se encuentran algunas presentaciones y libros con tutoriales. El libro de AnyLogic 7 en 3 días es también un buen comienzo, hay una version Kindle en la página de Amazon.
Por mi parte voy a comenzar una serie de posts explicando modelos sencillos en AnyLogic.
Saludos
Alvaro
muy interesante la información que presentas de Anylogic sobre los tutoriale, tendras mas tutoriales, me interesa la parte de eventos discretos.
Hola. me gustaria saber como puedo guardar en un txt una cantidad fija de numeros generados aleatoriamente por anylogic.
Ejemplo: guardar 25 numeros aleatorios en un .txt
Hola María
El archivo txt puede añadirse por código o como objeto de AnyLogic. Supongamos que se añade como objeto y lo llamamos file. Una función, botón o evento debe entonces activar la escritura. La función puede verse parecida a lo siguiente:
for(int i=0; i<25; i++){
file.println(uniform(min, max));
}
Espero te sirva
Alvaro
Estoy empezando a incursionar en esto de Anylogic, en cuanto a simulacion de procesos de produccion o mantenimiento en lineas de produccion, y me seria de mucha ayuda el que me pueda brindar informacion sobre esto, ya que no tengo nigun tipo de conocimiento sobre el software. Gracias saludos.
Hola Jose
Gracias por tu comentario. Espero poder montar más modelos y tutoriales en este período de vacaciones donde se traten casos de manufactura.
Saludos
Agradesco el interes prestado a mi cometario, basicmente en lo que me encuentro trabajando en la simulacion comportamiento nacional de mercado a causa de politicas o factores, todo esto llevado al ambiente Anyligc y basada en agentes. si poria general un ejemplo basico en este sentido agradecere infinitamente su ayuda.
Hola Jose
Suena interesante el caso, sugiero me envies algo mas de información sobre el modelo y con gusto podemos hacer un pequeño demo que te sirva como base para tu proyecto. Envíame un correo a [alvaro] @ [agiltools].[com] con detalles.
Saludos,
Alvaro
Saludos cordiales, soy profesor de la Universidad Marítima Internacional de Panamá, estoy interesado en aprender y conocer esta herramienta, en la universidad se dicta la materia de Simulación Aplicada a la Logística, para enseñar a los estudiantes de IV año en Gestión Logística. Qué me recomiendas.
Hola Eduardo, gracias por el mensaje.
Existen varias maneras de aprender la herramienta, en primer lugar descargar la versión PLE del sitio web de AnyLogic la cuál es gratuita te permite tener acceso al programa de primera mano. Descargar y seguir los tutoriales del libro AnyLogic in 3 days también ayuda. Finalmente comenzar a modelar casos con los cuales estés familiarizado, esto te permite aplicar lo que vas aprendiendo en situaciones que conoces y puedes rápidamente entender. Hay un grupo de usuarios en LinkedIn y otro en StackOverflow donde puedes hacer preguntas específicas cuando tengas dudas. También me puedes escribir con casos puntuales.
En síntesis, creo que abundan recursos, solo es cuestión de comenzar a explorar y modelar.
Buena suerte
Dear Mr. Gil,
I am a student and I am working on my master thesis. The topic is MMAL and Flow Shop and I am supposed to optimize the lead time of an assembly line with 5 workstations. I have done some experiments and I would like to evaluate this data in your flow shop model. To do this I need to explicitly insert my processing times and run them for 3 variants. How can I add this data explicitly in Anylogic in your model? I would appreciate a helpful response.
With kind regards
Mohammad
Hello Mohammad, thanks for your message.
Changing the processing time is not an issue, it requires to modify the delay object inside the model. Can you please explain what do you mean by 3 variants?
Thanks,
Alvaro
Dear Mr. Gil,
I have a mixed modell assembly line in which 3 models of one vehicle are assembled. These variants have different processing times. For this I have a tested the Mixed-Model-Assembly-Line with 20 runs. I have noted the assembly times for the individual trials in a table. Now I must run these data in your program, so that I find a suitable arrangement of orders. This is a flow assembly line where each order runs through the 5 work stations. However, options also occur here that do not affect every variant. In addition, variations in the processing times also occur in the tests. Unfortunately I did not manage to embed these different variants with the different times in your program.
With kind regards
Mohammad
Dear Mr. Gil,
I have a mixed modell assembly line in which 3 models of one vehicle are assembled. These variants have different processing times. For this I have a tested the Mixed-Model-Assembly-Line with 20 runs. I have noted the assembly times for the individual trials in a table. Now I must run these data in your program, so that I find a suitable arrangement of orders. This is a flow assembly line where each order runs through the 5 work stations. However, options also occur here that do not affect every variant. In addition, variations in the processing times also occur in the tests. Unfortunately I did not manage to embed these different variants with the different times in your program.
With kind regards
Mohammad