Páginas

sábado, 11 de agosto de 2012

Traducir del lenguaje natural al diagrama de Forrester (Stock Flow)


Los sistemas dinámicos nos permiten analizar y entender el mundo real como un todo, con interrelaciones, ciclos, retardos, etc, lo que hace posible comprender un fenómeno en su totalidad y no de manera aislada. 

Existe sin embargo un reto: plantear efectivamente un modelo mental en términos que se puedan simular mediante herramientas computacionales. Es decir, pasar un modelo mental, el cual es entendido perfectamente por el creador del modelo, a un lenguaje “formal” o que se pueda simular. Este lenguaje formal es el que se conoce como diagramas de Forrester o de stock flow. 

Las razones de esta dificultad aún se examinan. Es cierto que muchas veces es un reto el plantear adecuadamente las relaciones causales de un fenómeno por experiencia y aún es más complejo expresarlo en un lenguaje formal para poder utilizar efectivamente la simulación sobre ellos.

Son necesarios entonces, métodos prácticos de traducción.  

Existen varios métodos conocidos, desde la extracción de los sujetos de las oraciones para identificar las variables (tal como se hace en la programación orientada a objetos), hasta el uso de metáforas y el uso de lenguaje intermedio.

Existen 3 variables básicas en los diagramas de Forrester: de nivel, de flujo y auxiliares. A pesar de que en diferentes aplicaciones de simulación existen más tipos de variables, podemos decir que éstas tres son las básicas y que las demás pueden establecerse como una combinación de éstas. 

Para hacer la traducción, nos basaremos en la siguiente tabla de equivalencias: 

Diagramas de Forrester
Lenguaje natural
Variables de nivel
sustantivos que representan cosas o estados
Variables de flujo
Verbos que representan acciones o actividades
Variables auxiliares
Adverbios que cambian el volumen del flujo o combinaciones de 2 o más variables consistentes

Sin embargo, usar sólo esta tabla no nos permite modelar completamente un sistema, pues no nos permite expresar claramente si algo puede acumular valores o no. Para resolver este problema, debemos agregar 2 pasos al proceso de traducción: 

1.      Si es necesario, cambiar el nombre de una variable de flujo de un verbo o gerundio a un gerundio (o un sustantivo equivalente) + unidad de tiempo

2.      Cambiar el nombre de la variable de nivel de un sustantivo o descripción de un fenómeno a un participio + lo que fluye para afectar el nivel.
Estos cambios en los nombres de las variables hacen las características matemáticas y sus significados obvios. Como ejemplo, la figura siguiente:



La aplicación de esta traducción se ejemplifica a continuación.

Historia Original:

(1)    El número de visitantes a un parque de diversiones se ha incrementado gradualmente

(2)    El número de visitantes de este año se incremento en función del número de nuevos visitantes

(3)    El número de nuevos visitantes está ligado a los efectos de los anuncios en los medios.

(4)    El número de visitantes este año consiste de nuevos visitantes y reincidentes

(5)    La tasa de reincidencia es del 20%

(6)    El número de visitantes disminuye por el número de no reincidentes

(7)    Las persones que vivieron la experiencia aumenta por el número de nuevos visitantes

(8)    El número de nuevos visitantes disminuye por el crecimiento del número de personas que ya han visitado el parque

(9)    Esto se debe a que son parte de las personas que no han vivido la experiencia

(10)  El número de nuevos visitantes es la diferencia entre la población en el área comercial y la gente que ya vivió la experiencia

(11)  La gente que no repite es definida por la tasa de reincidencia
Para cambiar estas sentencias a un lenguaje que pueda ser simulado (formal) es necesario:
Unificar las expresiones que expresen ideas semejantes para mantener el modelo simple y claro
Los candidatos a variables deben de ser reducidos
Borrar las sentencias que no puedan ser usadas en los diagramas de forrester y las explicaciones duplicadas
Historia transformada:

(1)    Borrada

(2)    El numero de visitantes de este año se incrementa por los nuevos visitantes

(3)    El numero de nuevos visitantes se define por el efecto de los anuncios

(4)    Borrada

(5)    Borrada

(6)    El numero de visitantes disminuye por los que no regresan

(7)    El numero de personas “experimentadas” se incrementa por los nuevos visitantes

(8)    Borrada

(9)    Los nuevos visitantes son parte de los “no experimentados”

(10) Los “no experimentados” son la diferencia entre la población en el área comercial y los experimentados

(11) El porcentaje de persones que no regresan está dado por la tasa de repetición

 Esto nos permite crear un modelo de Forrester, pues contamos con sustantivos, verbos y adverbios. De entrada, podemos ver que todo tiene que ver con el número de personas.



Este modelo puede ser entendido como una especie de modelo de difusión, tal como los modelos biológicos de contagio de infecciones. Esta clase de analogías nos permite ahorrar tiempo para considerar la estructura de los modelos y evita trabajar en las ecuaciones. Sin embargo, no nos proporciona evidencia para establecer si hemos seleccionado el modelo correcto.
Los sistemas dinámicos nos animan a entender el desempeño y las relaciones causales como un todo y no como piezas. Es decir, es necesario considerar la construcción de un modelo, pero no a través del entendimiento de otras personas, es decir, con modelos existentes, sino directamente con nuestro entendimiento. Ahí la importancia de la traducción de nuestros modelos mentales en nuestros modelos formales o de Forrester.



Fuente:

Translation from Natural Language to Stock Flow Diagrams
Yutaka TAKAHASHI
School of Commerce, Senshu University

7 comentarios:

  1. Definitivamente los modelos de simulación en la dinámica de sistemas nos ayuda a una toma de decisiones adecuada en cual quier ambito donde se aplique.

    ResponderEliminar
  2. Buena información la que expones en esta ocasión, esta muy completo y el ejemplo aunque lo veo complejo esta entendible.

    ResponderEliminar
  3. Interesante! hubiera sido bueno leer esto desde el inicio de la clase!

    ResponderEliminar
  4. Muy buena información sobre como traducir del lenguaje natural a diagramas de Forester, esto simplifica mucho el proceso

    ResponderEliminar
  5. super interesante tu publicación

    ResponderEliminar