Hace una temporada os enseñamos la diferencia entre modelos basados en datos y modelos basados en física. El trabajo que os hemos ido presentado en el área de Gemelo Digital se ha centrado siempre mas en modelos basados en datos, por las complicaciones que los modelos basados en física traían, hoy sin embargo queremos refrescar un poco el blog y traeros un tipo de modelos que podríamos situar en medio de ambos, los modelos basados en Agentes o Agent Based Models.
Los modelos basados en agentes se describen como:
Agentes que interactúan en un entorno a lo largo del tiempo
Podemos describir cada uno de estos componentes:
- Agentes: Que representan a las personas u organismos que toman decisiones en el entorno.
Estos agentes pueden ser descritos con actitudes específicas que los llevan a tomar decisiones por encima de otras, al igual que estas decisiones pueden ser determinísticas o probabilísticas.
- Interacciones: Una serie de reglas que introducimos y representan las relaciones entre los agentes, y los agentes con el medio.
Es importante entender también que, aunque haya modelos con un solo agente que se encarga del medio, es muy usual tener a muchos agentes que interactúan entre sí, es esta interacción que directa o indirectamente lleva al entorno a desarrollarse y crear situaciones que no estaban explícitamente programadas. Normalmente las decisiones que tomarán vienen dadas por una serie de reglas que introducimos, sin embargo, es posible también introducir reglas flexibles, de tal manera que aprendan y se adapten a la situación y desarrollen el modelo.
- Entorno: La representación en el ordenador del lugar o situación de interés.
Esto puede ser una representación sencilla, o compleja, dependiendo de la situación que queramos simular y la dificultad de simularla.
Por ejemplo, podemos tener un agente que tome las decisiones para ir conduciendo un coche de un punto a otro. Podríamos hacer que tomase las decisiones deterministamente (como siguiendo al GPS) o añadir cierta probabilidad (por ejemplo, que se equivoque de salida). Podríamos hacer que siguiera exclusivamente al GPS, o introducir reglas flexibles, en las que con el tiempo y aprendiendo el entorno, decida tomar otras rutas o atajos que conoce. Si ahora ponemos a más coches en el entorno, estos interactuarían entre si directamente (por ejemplo, dejando pasar a un coche para no tener un accidente) o indirectamente (un coche que toma mal una salida puede afectar al tráfico) y además esto puede llevar a situaciones que no habíamos planteado en un comienzo y que el agente tiene que aprender (como por ejemplo que se forme un atasco de tráfico).
La parte de la simulación es un modelo basado en física, pero la manera en la que el agente aprende de los datos es algo que podemos introducir nosotros con un modelo basado en datos. Al final el agente recibirá datos del estado actual de la simulación, y tomando en cuenta las interacciones con otros agentes tomará una decisión que llevará al entorno a evolucionar a otro estado diferente.
Aunque muy interesante, este tipo de modelos requieren de un gran conocimiento en el área para poder recrear un caso de uso específico y correctamente. Es por esto por lo que nos centraremos en modelos basados en datos, que os iremos trayendo los siguientes días al blog.