Introducción

Modelación basada en agentes

Cuando necesitamos estudiar un sistema real compuesto de elementos interconectados , donde cada uno de estos tiene su propia dinámica, a menudo es imposible prever el surgimiento de una dinámica global para el sistema. En este caso, lo que está en juego es un sistema complejo, cualquier modificación ,incluso si es marginal, en términos de uno o varios de sus elementos constitutivos puede conducir a un cambio dramático en la operación general del sistema. Es claro que estos fenómenos pueden ser observados y entendidos solo a través de la construcción de un modeloy a pesar de que en ciertos casos particulares el modelo puede resolverse analíticamente, como es el caso del modelo depredador-presa (Lotka-Voltera), la simulación por computador es indispensable en casi todos los demás casos. Un amplio e interdisciplinar campo de conocimiento llamado “sistemas complejos” (complex systems) es cada vez más indispensable para entender nuestro mundo, este libro interactivo es una introducción a una de las disciplinas centrales que han surgido de la investigación en sistemas complejos. Esta metodología, llamada modelado basado en agentes (MOBA), para muchos es una nueva forma de hacer ciencia,organiza nuestro pensamiento por analogía con el mundo alrededor de nosotros. Es una forma elegante e intuitiva de visualizar y representar un fenómeno complejo, el principio fundamental sobre el cual se basa es la desagregación de objetos complejos ( poblaciones u otros agregados) en otors que son más sencillos y fáciles de modelar (individuos u otros tipos de “agentes”) . Esta es una de los razones por las cuales este enfoque se ha adoptado en una amplia gama de disciplinas como ciencias sociales, ecología y finanzas, entre otras. Por otro lado, el progreso de la computación ha llevado a una explosión de nuevos datos, La cantidad de nueva información y conocimiento sobre nuestro mundo están creciendo exponencialmente.(Esto es cierto independientemente del área temática). De la física a la química, de la biología a la ecología, de las ciencias políticas a la economía, científicos e investigadores recopilan datos de manera rutinaria a un ritmo que supera con creces el de los científicos en el pasado. A medida que se capturan estos nuevos datos, podemos comenzar a hacer nuevas preguntas y construir nuevos modelos que hasta ahora no se podían abordar, Por ejemplo:

  • ¿Cómo interactúan y compiten múltiples especies (miles?) para formar un ecosistema estable?
  • ¿Cómo afectan las instituciones políticas las decisiones individuales, especialmente cuando esas personas tienen la capacidad de manipular las instituciones políticas?
  • ¿Cómo podemos diseñar robots que puedan trabajar e interactuar con procesos sociales complejos?

El conocimiento de herramientas para el modelamiento de sistemas complejos se convertirá en una necesidad hacia el futuro, y el modelado basado en agentes (MOBA) es una de las maneras de modelar más poderosas de modelar este tipo de sistemas.

¿Para quién es este libro?

El campo de la modelación basada en agentes (MOBA) es aplicable a muchos dominios y se puede usar en una amplia variedad de contextos. Este texto interactivo Puede servir como texto principal para un curso universitario interdisciplinario, un curso sobre sistemas complejos o una clase de informática con énfasis en el modelado basado en agentes. Puede ser utilizado como texto complementario en una amplia gama de clases de pregrado, incluido cualquier clase donde el modelado basado en agentes se puede aplicar a áreas como las ciencias naturales: ( física, química y biología) , ciencias sociales (como psicología,sociología y lingüística) y clases de ingeniería como ciencia de materiales, ingeniería industrial e ingeniería civil. El principio rector que tendremos a lo largo del libro es:

“Piso bajo, techo alto” (low floor , high ceiling)

Con esto, queremos decir que es poco el requisito previo para comenzar a entender, construir y analizar un modelo basado en agentes, pero al mismo tiempo hay pocos límites para lo que se puede lograr una vez se construye el modelo. MOBA es una herramienta que nos ayuda a comprender sistemas complejos y proporciona lo necesario para permitirle construir y usar modelos basados en agentes para investigar sus propias preguntas. El material para este libro de texto ha surgido y probado durante varios años en cursos de pregrado en la Escuela Colombiana de Ingeniería Julio Garavito,no se asume ningún conocimiento matemático, más allá del álgebra básica y conceptos básicos de estadística, y noningún conocimiento previo de programación de computadores, a proposito de esto las herramientas computacionales que usaremos extensivamente en el curso son dos:

Netlogo:

Existen muchos lenguajes de modelado basados en agentes, pero NetLogo sigue siendo el más ampliamente utilizado. De los otros actualmente en uso, Swarm, desarrollado en Santa Fe Institute, Repast, desarrollado en Argonne National Laboratory, y MASON, desarrollado en George Mason University, son mucho más avanzados y requieren de una empinada curva de aprendizaje.La mayoría de los kits de herramientas ABM (incluido NetLogo) son de código abierto y están disponibles de forma gratuita. AnyLogic es un paquete comercial que también ha tenido éxito. NetLogo es código abierto y se encuentra disponible de forma gratuita, ningún otro lenguaje de MOBA existente está cerca del “piso bajo” . Como tal es un lenguaje ideal para aprender a construir MOBAs y se usa ampliamente en las aulas de todo el mundo. Sin embargo, NetLogo también alcanza un “techo alto”. ya que es usado un gran número de científicos y profesionales y es empleado regularmente en investigación de vanguardia. Aprender esta nueva manera de enfocar los problemas complejos y de hacer ciencia con ellos, lo hará un mejor investigador en su área de interés.

R y RStudio:

Para analizar modelos basados en agentes, es importante generar datos de los modelos construidos y efectuar “Ciencia de Datos” sobre estos, esto incluye visualizar los datos, generar hipóteseis y validarlas, para ello usaremos poderosas herramientas de visualización encontradas en el lenguaje R.

Trabajar en este libro requerirá leer y escribir código de computadora. Esto puede ser desconocido o no para algunos lectores. Aunque muchas personas creen que la programación de computadores es difícil de aprender,hay que decir que la investigación de educadores construccionistas y décadas de experiencia han demostrado que prácticamente todos los estudiantes pueden aprender a programar en NetLogo y a usar R para análisis estadísticos básicos. Esperamos que no se intimide con todo el código del libro de texto, y que se tome el tiempo de aprender a leer y escribir el código. Estamos muy seguros de que usted puede hacerlo y que tomarse el tiempo para aprenderlo pagará grandes dividendos.