Este documento presenta Insight Maker, una herramienta de modelado y simulación basada en la web de propósito general. Insight Maker integra tres enfoques de modelado - Dinámica de Sistemas, Modelado Basado en Agentes y programación imperativa - en un marco unificado e implementa su interfaz gráfica de construcción de modelos únicamente en código de cliente. La herramienta ha ganado más de 20.000 usuarios registrados desde su lanzamiento en 2009 y demuestra que las tecnologías basadas en la web ahora permiten el desarrollo
0 calificaciones0% encontró este documento útil (0 votos)
237 vistas33 páginas
Este documento presenta Insight Maker, una herramienta de modelado y simulación basada en la web de propósito general. Insight Maker integra tres enfoques de modelado - Dinámica de Sistemas, Modelado Basado en Agentes y programación imperativa - en un marco unificado e implementa su interfaz gráfica de construcción de modelos únicamente en código de cliente. La herramienta ha ganado más de 20.000 usuarios registrados desde su lanzamiento en 2009 y demuestra que las tecnologías basadas en la web ahora permiten el desarrollo
Este documento presenta Insight Maker, una herramienta de modelado y simulación basada en la web de propósito general. Insight Maker integra tres enfoques de modelado - Dinámica de Sistemas, Modelado Basado en Agentes y programación imperativa - en un marco unificado e implementa su interfaz gráfica de construcción de modelos únicamente en código de cliente. La herramienta ha ganado más de 20.000 usuarios registrados desde su lanzamiento en 2009 y demuestra que las tecnologías basadas en la web ahora permiten el desarrollo
Este documento presenta Insight Maker, una herramienta de modelado y simulación basada en la web de propósito general. Insight Maker integra tres enfoques de modelado - Dinámica de Sistemas, Modelado Basado en Agentes y programación imperativa - en un marco unificado e implementa su interfaz gráfica de construcción de modelos únicamente en código de cliente. La herramienta ha ganado más de 20.000 usuarios registrados desde su lanzamiento en 2009 y demuestra que las tecnologías basadas en la web ahora permiten el desarrollo
Descargue como DOCX, PDF, TXT o lea en línea desde Scribd
Descargar como docx, pdf o txt
Está en la página 1de 33
Insight Creador: una herramienta de propsito general
para el modelado basado en la web y la simulacin
Abstracto Una herramienta basada en la web, la simulacin de propsito general y el modelado se presenta en este documento. La herramienta, Insight Maker, ha sido diseado para hacer el modelado y la simulacin accesible a un pblico ms amplio de usuarios. Insight Maker integra el modelado en tres enfoques generales - Dinmica de Sistemas, Modelado Basado en Agentes y programacin imperativa - en un marco de modelado unificado. El medio ambiente proporciona una interfaz grfica de construccin del modelo que se implementa nicamente en cdigo del lado del cliente que se ejecuta en los equipos de los usuarios. Las funciones avanzadas, tales como el modelo de secuencias de comandos y una herramienta de optimizacin, tambin se describen. Insight Maker, en desarrollo desde hace varios aos, ha ganado la adopcin significativa en la actualidad con ms de 20.000 usuarios registrados. Adems de detallar la herramienta y su filosofa que gua, este primer documento sobre Insight Maker describe las lecciones aprendidas en el desarrollo de una herramienta de simulacin basado en la web y de diseo complejo. 1. Introduccin El campo de las herramientas de modelado y simulacin es diversa y emergente. Herramientas de modelado de propsito general (Simulink ejemplo de MATLAB o el lenguaje Modelica [1] ) se sientan las aplicaciones junto altamente enfocados y especficos de dominio (por ejemplo, [2] para los sistemas de control de la red de modelado, [3] para la simulacin del comportamiento de los protocolos de enrutamiento de red inalmbrica, o [4] para la simulacin y el control de las turbinas). El inters en y los trabajos publicados sobre este tipo de herramientas ha crecido con el tiempo. El ISI Web of Knowledge reporta un crecimiento sustancial en los trabajos publicados en la modelizacin o simulacin de herramientas con 299 esos trabajos publicados en el lapso de 1985 a 1989, 1482 publica a partir de 1995 a 1999, y 3727 publicados desde 2005 hasta 2009. 1
Para los usuarios finales, la simulacin y el modelado herramientas se disean generalmente como ejecutables que se ejecutan en un sistema operativo de consumo, tales como Windows o Mac OS X. Con la expansin de Internet y la ubicuidad de la World Wide Web, nuevas posibilidades para aprovechar esta tecnologa de la comunicacin y la plataforma para desarrollar ricas herramientas de modelado de colaboracin se han convertido en disponible. Una importante revisin de las oportunidades y los problemas que enfrentan al utilizar tecnologas basadas en Internet como parte de una simulacin o modelado de aplicaciones ha sido [5] . Sin embargo, la tecnologa ha avanzado rpidamente en el perodo transcurrido desde la publicacin de dicha revisin. La competencia entre las empresas de tecnologa como Apple, Microsoft y Google ha llevado a un rpido aumento de la disponibilidad de funciones avanzadas en los navegadores web y mejoras de rendimiento significativas en estos mismos navegadores (estas mejoras estn documentados en sitios como http://AreWeFastYet.com y http://html5test.com ). Estas mejoras han cambiado lo que es efectivamente posible en el navegador. Donde [5] en cuenta que las tecnologas basadas en Internet no estaban bien adaptadas a la "simulacin y visualizacin local" - que ejecuta todo el cdigo de simulacin en la mquina de un usuario final - que ya no es el caso ya que el trabajo presentado aqu demuestra. Otros trabajos en la interseccin entre las herramientas de simulacin y modelado y tecnologas basadas en la Web incluye pero no se limita a, [6] que desarrollan una plataforma de simulacin-optimizacin para aplicaciones industriales, [7] que proponen un marco para la colaboracin en lnea de modelado y simulacin de un enfoque para el medio ambiente la construccin adaptable a travs de mltiples dominios, [8] que estudian la ejecucin de simulaciones en las plataformas basadas en la nube, y [9] que explorar integracin del modelo de colaboracin en un entorno distribuido. Lo que falta en el trabajo anterior, sin embargo, es una realizacin de un entorno de simulacin de propsito general desarrollado utilizando tecnologas basadas en Internet dirigidos primero a un pblico general. Tecnologas basadas en la Web son especialmente beneficiosas para los no expertos, ya que pueden reducir significativamente los costos requeridos para un usuario nuevo para experimentar y aprender acerca de una simulacin y una herramienta de modelado. Las herramientas de simulacin y modelizacin han demostrado ser dispositivos didcticos tiles (por ejemplo, [10] que utilizaron una herramienta de simulacin en el aula o la economa [11] para ejemplos de trabajo en las escuelas primarias). Mediante el desarrollo de la simulacin basada en web y herramientas de modelado, la accesibilidad de estas herramientas se puede incrementar tanto dentro del aula y fuera de ella. Una persona comn considerar el modelado puede ser adverso para descargar e instalar el modelado y la simulacin de software en un ordenador personal (debido al miedo de los virus y otras preocupaciones). Por otro lado, la misma persona puede estar ms dispuesta a abrir una pgina web simple que contiene un modelo de simulacin o de la interfaz de la construccin modelo integrado. La reduccin de las barreras de entrada permite participar ms personas en el modelado y la simulacin, que puede conducir a beneficios para la sociedad, como resultado de un aumento en el uso y la comprensin de los modelos. El resto de este trabajo se presenta la simulacin y la herramienta de modelado Insight Maker (disponible enhttp://InsightMaker.com ). Es un pas libre, de cdigo abierto de modelado y simulacin herramienta desarrollada utilizando tecnologas basadas en Internet y es compatible con la construccin de modelo grfico utilizando mltiples paradigmas. El software est diseado principalmente para ser lo ms accesible para el lego como sea posible, pero tambin contiene importantes herramientas de modelado avanzadas como capacidades de scripting integrados y un conjunto de herramientas de optimizacin. Insight Maker se hizo pblico a finales de 2009 y ha experimentado un continuo desarrollo y evolucin desde entonces. Desde su lanzamiento, la herramienta ha ganado ms de 20.000 usuarios registrados. La respuesta de estos usuarios ha ayudado a establecer el curso para la direccin y el desarrollo de la herramienta. Las secciones restantes de este documento primero se describen la filosofa y los principios de diseo de la herramienta de simulacin y modelado. Siguiente la arquitectura de la herramienta se detalla. Como una tecnologa basada en la web, la herramienta incluye tantos componentes del lado del servidor y del lado del cliente y se discute esta arquitectura. Se presta especial atencin a los beneficios que ofrece y los compromisos necesarios para implementar con xito una herramienta compleja, como Insight Maker en un entorno basado en web. Por ltimo, dado que la herramienta ha sido objeto de mltiples aos de iteracin y el desarrollo basado en la retroalimentacin de los usuarios y los puntos de referencia de la adopcin del usuario, tambin se presentan las conclusiones y las lecciones aprendidas de esta evolucin. 2. Principios rectores Se puede argumentar que los tres criterios bsicos deben ser utilizados en la evaluacin de una herramienta o medio utilizado para desarrollar la simulacin y modelos: rendimiento, caractersticas y accesibilidad. Un entorno de alto rendimiento es el que ejecuta simulaciones rpidamente con los requisitos mnimos de recursos. Las caractersticas son las capacidades y funcionalidades de alto nivel en la herramienta de simulacin y modelado. Accesibilidad indica lo fcil que es aprender o utilizar un entorno. En general, existen soluciones de compromiso entre estos criterios en la cara de una cantidad fija de recursos para el desarrollo: Actuacin frente a las caractersticas: Adicin de funciones a la herramienta de simulacin a menudo puede resultar en un impacto negativo en el rendimiento. Adems del software de "hinchazn", ciertas caractersticas pueden producir una sobrecarga computacional durante las simulaciones o hacer ms difcil la aplicacin de algunos tipos de optimizaciones. Actuacin frente a la accesibilidad: Realizar un programa de simulacin accesible a los usuarios a menudo requiere la utilizacin de conceptos de alto nivel divorciadas del hardware de la mquina subyacente. La capacidad de un entorno para convertir conceptos de alto nivel a cdigo mquina eficiente variar, pero en general, los entornos de mayor nivel de acceso se habr reducido el rendimiento en comparacin con los ambientes menos accesibles, de bajo nivel. Accesibilidad frente a las caractersticas: una lnea de base de las caractersticas es importante para hacer un programa de simulacin accesible para los usuarios (por ejemplo, una interfaz grfica de usuario). Sin embargo, muchas caractersticas aadidas al software de simulacin estn dirigidas a subconjuntos especficos de los usuarios y ofrecen poco valor para el usuario medio. El exceso de funciones que llevan a "hinchar" puede resultar en la frustracin del usuario o la sensacin de estar abrumado [12] . Actuacin frente a la precisin: Una solucin de compromiso final es entre el rendimiento y la precisin, ya que suelen ser inversamente correlacionados. Esta solucin de compromiso a menudo puede estar expuesta directamente a los usuarios que les permite determinar cmo equilibrar estos objetivos en competencia. Aunque las compensaciones pueden ser mitigadas a travs de un mayor tiempo de desarrollo o los recursos, los desarrolladores decisiones que tomen sobre estos intercambios son clave en la definicin de sus programas y entornos (simulacin . Figura 1 ). A modo de ejemplo, los modelos y las simulaciones pueden desarrollarse en el montaje en bruto como instrucciones de procesador de la mquina. Estos modelos deben tener un rendimiento excelente, pero su desarrollo sera muy difcil, ya que el montaje es inaccesible y tiene un conjunto de caractersticas incorporadas mnima. A costa de algo de rendimiento, entornos de desarrollo de alto nivel como C + + son alternativas. Herramientas de nivel superior ofrecen mayor accesibilidad y caractersticas, pero a cambio a menudo no son capaces de igualar el rendimiento de un altamente optimizado, alternativa de menor nivel.
Higo. 1. Ilustracin conceptual de concesiones prioritarias de herramientas de simulacin y modelado. Opciones Figura Insight Maker prioriza soluciones de compromiso entre el rendimiento, accesibilidad y caractersticas de la siguiente manera. La accesibilidad se dar prioridad principal, seguida de caractersticas, con un rendimiento asignado la prioridad ms baja. La accesibilidad es el objetivo principal de Insight Maker y es fundamental para el diseo de la herramienta desde el punto de vista de la arquitectura del programa en general (es decir, la eleccin de la aplicacin como una aplicacin web para aumentar la disponibilidad de la aplicacin), a las opciones de diseo de idiomas pequeos (como el uso de maysculas y la insensibilidad en la lengua), a las opciones cosmticas. La inclusin de un rico conjunto de caractersticas es la segunda prioridad del Insight Maker. Muchas de las herramientas y capacidades se incluyen en el programa como un lenguaje de secuencias de comandos y optimizador incorporado. En la adicin de caractersticas, se intenta no aumentar significativamente la aparente complejidad del software; esto ha significado hacer esas funciones disponibles para los usuarios que ellos desean, pero destacando un conjunto bsico de funcionalidades para los usuarios nuevos que no son inmediatamente interesado o capaz de utilizar las funciones ms compleja. Un ejemplo de este enfoque es el apoyo de Insight Maker para unidades de medida. El motor de simulacin contiene la capacidad de asociar unidades con cada nmero en la simulacin que luego se comprueba automticamente y se valida cuando la simulacin se ejecuta. Esta capacidad til se puede coger una clase de errores de la ecuacin y mejorar la fiabilidad de los modelos. Sin embargo, tambin puede disminuir la accesibilidad del software, ya que requiere que los usuarios especificar las unidades adelantado en la construccin de un modelo, que puede ser una carga innecesariamente compleja para muchas aplicaciones. Por lo tanto, el simulador hace que las unidades una caracterstica puramente opcional en la construccin del modelo, que el usuario puede ignorar o comprometerse con, dependiendo de su nivel de habilidad individual y las necesidades plenamente. La prioridad que se centr en menos de Insight Maker es el rendimiento. Una labor importante ha entrado en la optimizacin de la aplicacin. Sin embargo, decisiones tomadas como resultado de priorizar la accesibilidad primera y segunda caractersticas hacen que sea imposible lograr una velocidad que sera posible si el rendimiento ha sido la prioridad principal. Por ejemplo, la eleccin de una arquitectura de aplicaciones web impone limitaciones significativas en el rendimiento de la aplicacin. Como una aplicacin web pura, el simulador debe utilizar ECMAScript como lenguaje de programacin principal 2 que tiene una buena, pero no excelente, caractersticas de funcionamiento, siendo aproximadamente 2-8 veces ms lento que C + + para el trabajo numrico [13] . Del mismo modo, las caractersticas especficas pueden tener un costo de rendimiento. Por ejemplo, el apoyo de las unidades de Insight Maker requiere un objeto de datos agregados que se mantenga en representacin de los resultados de los clculos. Este objeto de datos tiene costos de rendimiento significativas en comparacin con el uso de nmeros genricos. 3. La aplicacin Insight Maker como una aplicacin web significa que el usuario lo ejecuta mediante el acceso a una URL a travs de su navegador web. La aplicacin ofrece una gran variedad de servicios que tanto el espejo de lo que se encontrara en una aplicacin de escritorio tradicional - construccin de modelo y modelo de simulacin - sino que tambin se extiende ms all en reas ms especficas para un entorno web - gestin de cuentas de usuario, as como el modelo de bsqueda y uso compartido. Aunque estos ltimos servicios son importantes para el buen funcionamiento de la aplicacin, sirven un papel puramente contable y no son intelectualmente interesantes en el contexto de la modelizacin y la simulacin. En lugar de ello, son los aspectos novedosos de simulacin y modelado de la aplicacin que son el foco de esta seccin y el papel. Higo. 2 ilustra la interfaz de modelo de construccin principal de Insight Maker ejecuta dentro del navegador web Google Chrome. La interfaz se divide en tres componentes principales: el diagrama de modelo, la barra de herramientas y el panel de configuracin. El diagrama de modelo es una ilustracin interactiva de la estructura del modelo actual, junto con caractersticas de interfaz de usuario adicionales, tales como descripciones textuales, fotos y botones interactivos. Los usuarios pueden seleccionar, la posicin y el tamao de los elementos en el diagrama de modelo utilizando un dispositivo de entrada como el ratn o, en dispositivos tctiles como las tabletas, su dedo. Cada elemento en el diagrama de modelo tiene un conjunto de atributos asociados que controlan sus conductas. Los atributos pueden ser configurados en el panel de configuracin. La barra de herramientas en la parte superior de la ventana proporciona una serie de funciones. Contiene un selector para aadir diferentes tipos de objetos al diagrama de modelo (tanto para la simulacin y con fines descriptivos), herramientas estndar para la edicin de documentos (deshacer / rehacer, copiar y pegar, etc), las opciones de estilo para ajustar la apariencia de los objetos en el diagrama (caractersticas de coloracin y de la fuente), herramientas para interactuar con la simulacin, y los botones para guardar el modelo completo o empezar una simulacin del modelo.
Higo. 2. La interfaz principal de la construccin del modelo se ejecuta dentro del navegador web Google Chrome. Opciones Figura La construccin de modelos y simulacin aspecto entero de la aplicacin se ejecuta dentro de una sola ventana de navegador web. Cuando una simulacin completa, los resultados se muestran en la misma ventana del navegador. Un nmero de diferentes tipos de visualizacin para los resultados estn disponibles, incluyendo grficos de series de tiempo, tablas, histogramas, diagramas de dispersin, y mapas de dos dimensiones ( . Fig. 3 ). Para anlisis fuera de lnea, los usuarios pueden exportar los resultados a archivos CSV. Adems de la visualizacin de los resultados, un nmero de otras ventanas y dilogos configuracin abierta dentro de esta ventana principal. A modo de ejemplo, los dilogos para configurar ecuacin matemtica de un objeto, establecer los ajustes de tiempo de simulacin, y llevan a cabo carreras de optimizacin o pruebas de sensibilidad todos abiertos dentro de esta ventana primaria.Todo el contenido de esta ventana se definen utilizando tecnologas web estndar como Hypertext Markup Language (HTML) y hojas de estilo en cascada (CSS).
Higo. 3. Ejemplo de salida muestra la simulacin. Las agujas del reloj desde arriba a la izquierda: la simulacin de la propagacin de la enfermedad en una comunidad, la distribucin de los dos atributos de los agentes individuales en una simulacin, una simulacin de crecimiento de la poblacin mundial, la simulacin de la ubicacin y las conexiones entre los agentes individuales en un modelo. Opciones Figura 4. Arquitectura del sistema La aplicacin utiliza una arquitectura cliente-servidor ( . Fig. 4 ), donde los clientes (dispositivos de computacin del usuario) estn conectados al servidor a travs de Internet. Los usuarios pueden utilizar el navegador web en su mquina para conectarse al servidor y cargar el entorno de la construccin y la simulacin del modelo. Los componentes de servidor son los responsables de la gestin de cuentas de usuario, el almacenamiento de datos de usuario y modelos, y la provisin de infraestructura de bsqueda.Los componentes del cliente proporcionan capacidades modelo de edicin junto con el modelo de simulacin y anlisis funcionalidades. Los clientes no se comunican entre s directamente y en lugar de toda la comunicacin pasa a travs del servidor centralizado.
Higo. 4. Descripcin general de la arquitectura cliente-servidor de la herramienta. Opciones Figura Es importante tener en cuenta que el cdigo del lado del cliente se ejecuta la simulacin. Una alternativa sera colocar la lgica de la simulacin y el cdigo en el servidor y slo tiene que utilizar el cliente para la construccin del modelo y la informacin de los resultados. Esta ltima estructura era, de hecho, cmo la aplicacin fue diseado originalmente. Hay soluciones de compromiso entre estos dos enfoques. En general, las simulaciones de servidor optimizados deberan ser ms rpido que el lado del cliente, simulaciones ECMAScript potencia. Para los modelos pequeos, sin embargo, la latencia de envo de datos de ida y vuelta al servidor puede dar lugar a una simulacin en el servidor siendo efectivamente ms lento que las simulaciones del lado del cliente. Otras soluciones de compromiso entre el lado del servidor y del lado del cliente simulaciones implican problemas con modelos propios (simulacin del lado del cliente da al cliente el acceso al modelo, lo que hace imposible lanzar un modelo sin liberando tambin el acceso a los detalles del modelo) y los efectos de la popularidad del software (simulaciones en el servidor puedan ser costoso y requerir la compra de servidores adicionales, si el software experimenta una demanda significativa; simulacin del lado del cliente reduce esta presin). Idealmente, tanto del lado del servidor y opciones de simulacin del lado del cliente estaran disponibles para el usuario para elegir entre.Desafortunadamente, esto lo ms probable es necesario mantener dos bases de cdigo de simulacin, que es en la actualidad ms all del alcance de los recursos disponibles para este proyecto. En cuanto a las opciones tecnolgicas, la herramienta utiliza las tecnologas de cdigo abierto estndar y se ejecuta en un servidor genrico Linux / Unix. En lo posible, se han utilizado las tecnologas y soluciones de cdigo abierto existentes para minimizar los costos y aumentar la portabilidad del sistema. Los datos se almacenan en el servidor de la base de datos MySQL de cdigo abierto, mientras que el lenguaje PHP de cdigo abierto y el sistema de gestin de contenido de cdigo abierto Drupal se utilizan para almacenar datos y ejecutar lgica de la aplicacin en el servidor. La aplicacin de fuente abierta Lighttpd se utiliza como el software del servidor real. 5. Arquitectura y capacidades Simulador La parte de simulador de Insight fabricante est diseada de forma modular de mltiples capas, donde las capas de nivel superior dependen de la funcionalidad proporcionada por los niveles ms bajos ( . Fig. 5 ). Las capas pueden ser agrupados en niveles separados que representan amplias clases de funcionalidad. Nivel 0, el nivel ms bajo nivel que proporciona la base para el simulador, es el lenguaje de programacin ECMAScript (coloquialmente conocido como "JavaScript"). ECMAScript es un lenguaje de programacin dinmico con implementaciones de alto rendimiento disponibles en todos los navegadores modernos. El simulador utiliza ECMAScript 5 o superior y es compatible con todos los navegadores modernos.
Higo. 5. Descripcin general de la arquitectura del simulador. Opciones Figura 5.1. Tier 1 Nivel 1 proporciona las matemticas y los motores de idiomas ecuacin para evaluar las ecuaciones introducidas por los usuarios. Los motores en s son, herramientas computacionales genricos y no proporcionan la simulacin y el modelado de caractersticas especficas. Tales caractersticas son proporcionados por los niveles ms altos que se basarn en este nivel. 5.1.1. Motor de Matemticas El motor de la matemtica se analiza y evala los enunciados matemticos. Hay dos bibliotecas numricas subyacentes distintos que el simulador puede utilizar. Un motor de clculo genrico es proporcionada por el entorno de ECMAScript s. Se trata de una precisin biblioteca puramente doble punto flotante sin nmero entero, los tipos de datos fraccionarios o decimales. La segunda biblioteca es una arbitraria biblioteca matemtica precisin implementado en ECMAScript. Esta segunda biblioteca es compatible con las matemticas y los nmeros decimales exactos de tamao arbitrario sin errores o imprecisiones numricas.El equilibrio entre las dos bibliotecas es uno de rendimiento frente a la precisin. La biblioteca de precisin arbitraria requiere una gran penalizacin en el rendimiento sobre la matemtica de ECMAScript nativas. Por otro lado, la biblioteca nativa tendr pequeos errores debido a las inexactitudes inherentes en los nmeros de punto flotante. 3 El simulador de cdigo abierto puede ser configurado para utilizar cualquiera de biblioteca. Para el despliegue de la base de cdigo de fabricante de Insight en InsightMaker.com , slo la biblioteca numrica ECMAScript nativa est disponible para los usuarios con el fin de maximizar el rendimiento de los modelos de usuario (a costa de un poco de precisin). Adems, el motor de la matemtica admite los nmeros de marcado con las unidades de medida arbitrarias (por ejemplo, en lugar de decir la longitud de un objeto en el modelo como "5", que se puede declarar como "5 metros"). El motor permite la conversin transparente entre unidades equivalentes y tambin la resurreccin de excepciones cuando se intentan operaciones unitarias incompatibles. Esto es especialmente til para los usuarios finales, ya que proporciona una comprobacin adicional de que las ecuaciones se han introducido correctamente. 5.1.2. Lenguaje motor Ecuacin El simulador incluye un lenguaje de motor ecuacin general que se encuentra por encima del motor matemtico. Este lenguaje motor ecuacin es un lenguaje de programacin de propsito general con las caractersticas especficas de dominio orientados hacia el modelado y la simulacin de la utilizacin. Las caractersticas del lenguaje son: el uso y creacin de variables de mbito de bloque; el uso y la creacin de funciones; control de flujo, incluyendo las declaraciones If-Then-Else, Mientras bucles y bucles For; y la construccin de vectores (arrays). Aunque el motor ecuacin tiene un rico conjunto de caractersticas, en los casos ms prcticos que sirve como una capa delgada sobre el motor de las matemticas con el fin de permitir a los usuarios introducir expresiones matemticas sencillas. Las caractersticas ms complejas generalmente slo se requiere en la construccin de complicados modelos Agent-Based. Un ejemplo de la ecuacin de motor utilizado para un clculo recursivo simple se muestra en la Tabla 1 y proporciona al lector una idea de las caractersticas del lenguaje. De nuevo, es importante subrayar que el lenguaje del motor ecuacin se aplica exclusivamente en ECMAScript (incluyendo tokenizer del lenguaje motor ecuacin, parser y el intrprete) y se puede ejecutar en un navegador web. Tabla 1. Ejemplo de uso del motor de la ecuacin para definir y utilizar una funcin personalizada. Funcin Fib ( n ) Si n = 1 o n = 0 Entonces 1 Ms Fib (n - 1) + Fib (n - 2) End If End Function # Calcula el dcimo nmero de Fibonacci Fib (10) Opciones de la tabla 5.2. Nivel 2 Nivel 2 del simulador es un entorno de modelado multi-paradigma que soporta varios enfoques diferentes para el modelado ( Tabla 2 ). Cada mtodo tiene una desventaja distinta entre la flexibilidad y la facilidad de uso. Dinmica de Sistemas es muy abstracto y global. Modelado Basado en Agentes es a menudo mucho ms granular, lo que permite un mayor control sobre el sistema, pero al costo potencial de la disminucin del rendimiento y un mayor esfuerzo de modelado. Programacin imperativa, por otro lado, no tiene restricciones de modelado especfico y puede ser flexible para hacer frente a cualquier tarea de modelado, pero potencialmente a un alto costo en tiempo de desarrollo. El simulador permite la perfecta integracin de los tres enfoques dentro de un mismo modelo, lo que permite diferentes resoluciones y mtodos para las diferentes partes del modelo segn sea necesario. Tabla 2. Paradigmas de modelado admitidas por el simulador. Principio bsico Fortalezas Debilidades Dinmica de Sistemas Sistema de modelos en un nivel altamente agregado utilizando las tasas de cambio y las variables de estado Los resultados son generalmente fciles de interpretar. Los modelos pueden ser simulados con rapidez No es apropiado para modelar la heterogeneidad Modelado Basado en Agentes Modelos individuos, cada uno con sus propias caractersticas y las interacciones entre los individuos Resultados altamente relacionables tiles para la comunicacin. Puede modelar sistemas con gran detalle Potencialmente lento y puede ser difcil de interpretar los resultados, debido a la estocasticidad Programacin imperativa Desarrollar la lgica utilizando conceptos de programacin estndar Altamente flexible. La ejecucin del modelo potencialmente muy rpido Abstraccin Limited. Puede requerir un esfuerzo significativo desarrollo Opciones de la tabla 5.2.1. Entorno de la Dinmica de Sistemas Dinmica de Sistemas es un paradigma de modelado desarrollado en la dcada de 1950 para estudiar los sistemas industriales [15] . La tcnica es general y desde entonces se ha aplicado a una variedad de diferentes sistemas, incluyendo, en particular, el desarrollo de los sistemas urbanos [16] y la previsin de las tendencias mundiales [17] . Matemticamente, los modelos de dinmica de sistemas son a menudo sistemas de ecuaciones diferenciales no lineales. Lo que diferencia a la Dinmica de Sistemas, aparte del anlisis analtico estndar de ecuaciones diferenciales es que la comunidad de la Dinmica de Sistemas se centra en herramientas grficas fciles de usar y el anlisis numrico de los resultados de la simulacin.Dinmica de Sistemas modeladores tambin se centran principalmente en circuitos de retroalimentacin y las funciones que desempean en la evolucin de un sistema. 5.2.1.1. Primitivas Modelos de Dinmica de Sistemas se construyen grficamente de primitivas: bloques de construccin, cada uno con una funcin nica. El paradigma bsico es el de un modelo de nivel y caudal (denominado en algunos campos como un modelo de celdas), donde el material se mueve por las primitivas de flujo entre las primitivas de acciones. Esto mapea conceptual y directamente en la ecuacin diferencial estndar o modelos de sistemas dinmicos se utilizan en muchos campos. En esta correspondencia, las existencias representan variables de estado y los flujos representan los derivados (o tasas de variacin) de estas variables de estado. Las primitivas claves proporcionadas por el simulador se describen en la Tabla 3 . Tabla 3. Panorama de los primitivos Dinmica de Sistemas en la herramienta. Primitivo Uso Ejemplo usos Valores Para almacenar un material. Equivalente a una variable de estado en una ecuacin diferencial Un lago que almacena agua. Una cuenta de banco que almacena dinero. Una poblacin que almacena personas Flujo Para mover material entre las poblaciones.Equivalente a un trmino derivado de las ecuaciones diferenciales Un ro en un lago. Los retiros de una cuenta bancaria.Las muertes en una poblacin Variable Para almacenar un valor de parmetro o calcular dinmicamente una caracterstica del modelo El caudal de un ro. La tasa de inters de una cuenta bancaria. La tasa de mortalidad de una poblacin Convertidor Para cargar los datos tabulares. Para llevar a cabo una funcin de transformacin no paramtrico Un horario de caudales por poca del ao. Una funcin no paramtrica relativa tasa de mortalidad de la poblacin al tamao de la poblacin Opciones de la tabla 5.2.1.2. Funciones Aunque no es estrictamente formal, la comunidad de la Dinmica de Sistemas ha desarrollado convenios para las funciones y los patrones de la construccin del modelo. Estas numerosas convenciones son generalmente compartidos entre diferentes herramientas de software de simulacin de Dinmica de Sistemas, junto con Dinmica de Sistemas recursos educativos. Las convenciones se siguen en el entorno de Dinmica de Sistemas del simulador incluyendo funciones de Dinmica de Sistemas estndar, tales como los de la generacin de entradas cannicas (rampa, funciones escaln y pulsos de entrada) y funciones para hacer que las diversas formas de los retrasos y la retroalimentacin (por ejemplo Delay1 y Delay3 , siendo el primero y segundo orden retrasos exponenciales respectivamente). Tales convenios facilitan el movimiento de los modelos e ideas entre los entornos de software de Dinmica de Sistemas y cuentan con el apoyo en la implementacin del simulador. 5.2.1.3. Numrico de resolucin de ecuaciones diferenciales El simulador incluye dos solucionadores numricos para estimar soluciones a las ecuaciones diferenciales definidas por el usuario que se basan los modelos de dinmica de sistemas: el mtodo de Euler y un mtodo para la orden de Runge-Kutta de cuarto. Generalmente, el mtodo Orden de Runge-Kutta de cuarto debera ser la opcin preferida sobre el mtodo de Euler debido a su mayor precisin por unidad de esfuerzo computacional. No obstante, el mtodo de Euler puede ser preferible en dos casos - en primer lugar, cuando hay una serie de discontinuidades en las tasas de cambio de los sistemas variables de estado. En este caso, el proceso de promediado del mtodo de Runge-Kutta podra no ser deseable. El segundo caso de uso para el mtodo de Euler es para los ambientes de aprendizaje y educativos, ya que es conceptualmente ms simple y fcil de entender, en comparacin con el mtodo de Runge- Kutta Orden cuarto. 5.2.2. Ambiente Modelado Basado en Agentes Modelado Basado en Agentes simula los actores individuales o agentes en un modelo [18] . Cada agente tiene la capacidad potencial de modificar de forma independiente de su estado, basado en reglas o algoritmos. Los agentes pueden modificar su estado en relacin con otros agentes, los sistemas de formacin y desarrollo de complejos comportamientos a nivel de sistema [19] y [20] . Esto representa una diferencia significativa de la dinmica de sistemas, que se ocupa de la conducta agregada y resultados. La simulacin de los agentes individuales permite que los modelos de grano ms fino y una mayor flexibilidad, pero tiene un costo de un mayor esfuerzo computacional y potencialmente conduce a resultados que son ms difciles de interpretar. 5.2.2.1. Primitivas El simulador incluye una aproximacin a la construccin de modelos basados en agentes que, en trminos de elementos de interfaz de usuario, es muy similar a la utilizada para construir modelos de Dinmica de Sistemas. Al igual que en los modelos de dinmica de sistemas, modelos basados en agentes se construyen grficamente utilizando un conjunto de primitivas, cada una de las cuales cumple una funcin de modelado especfico. Mientras que en el modelado de paradigma Dinmica de Sistemas el producto principal era el diagrama stock y flujo, en el modelado basado en agentes es un diagrama de transicin de estado, donde un agente puede ocupar uno o ms estados y transicin entre ellos en funcin de las reglas mecanicistas o estocsticos. Tabla 4 resume las primitivas utilizadas para construir modelos basados en agentes en el simulador. Tabla 4. Informacin general de las primitivas de modelado de agentes basados en claves en la herramienta. Primitivo Uso Ejemplo usos Poblacin Agent Una coleccin de agentes de un tipo dado Una poblacin de personas. Un bosque de rboles Estado Definir el estado de un agente determinado. Un atributo binario un
Teniendo en cuenta que una persona, son un hombre o mujer? Dada una simulacin de la enfermedad, es la persona en el estado sano o infectado? Transicin Mueve agentes entre los estados El proceso de infeccin se mueve a una persona del estado de salud de estado infectada Accin Ejecuta las acciones arbitrarias de un agente Una accin para mover el agente alejado de agentes infectados. Una accin para cambiar un estado basado en una condicin global un Para las variables de estado continuo, las acciones pueden ser utilizados dentro de un agente. Opciones de la tabla Aunque Modelos basados en agentes puede ser concebida como algo distinto del paradigma de la Dinmica de Sistemas, son, de hecho, completamente integrada en el simulador y se hace la distincin entre ellos nicamente para facilitar el debate en cuanto a los paradigmas existentes. Dinmica de Sistemas primitivas pueden ser fcilmente incluidos en principalmente modelos basados en agentes (por ejemplo, un modelo de valores y el flujo se puede crear dentro de un agente individual) y viceversa. Por lo tanto, mientras que los estados slo representan valores binarios, las acciones pueden ser incluidos dentro de agentes para rastrear variables de estado continuas. 5.2.2.2. Funciones Una serie de funciones incluidas en el simulador estn dirigidos especficamente a la construccin de modelos de agente basada en funciones. Una categora de funciones trata con agentes que coincidan con determinados criterios de una poblacin de seleccionar. Por ejemplo, la funcin FINDSTATE devolver un vector de todos los agentes en un modelo que tiene activado un estado dado. Encuentra las declaraciones se pueden anidar permitiendo binario y la lgica, y los resultados de find-estados separados pueden fusionarse permitiendo binario OR lgica. Modelado Basado en Agentes en el simulador soporta dos formas de relaciones geogrficas entre agentes: la geografa de dos dimensiones y la geografa de la red. Los agentes pueden dar una posicin fsica dentro del plano. Su posicin puede consultarse o utilizarse como un selector (por ejemplo, las funciones FINDNEAREST o FINDFURTHEST para seleccionar agentes que son, respectivamente, cerca o lejos de un objetivo determinado) y la posicin tambin puede ser modificado (por ejemplo, movimiento o funciones MOVETOWARDS). Con respecto a la geometra de la red, cada agente puede tener una o ms conexiones a otros agentes. Cada conexin es binario y puede ser consultada o modificada como la simulacin progresa (por ejemplo, con el CONNECT o funciones FINDCONNECTED). 5.2.2.3. Entorno de programacin imperativa El lenguaje del motor ecuacin es un lenguaje de programacin imperativo. Este lenguaje se usar generalmente para escribir ecuaciones matemticas elementales. Tambin puede ser usado para implementar algoritmos o modelo lgico que no caben dentro de los paradigmas de modelado basado en agentes de Dinmica de Sistemas o. Estas funciones personalizadas y cdigo desarrollado utilizando el entorno imperativo pueden aumentar la Dinmica de Sistemas o entornos de modelado basado en agentes, proporcionando una funcionalidad adicional dentro de ellos. Por ejemplo, una funcin podra ser definida en el entorno imprescindible para llevar a cabo algn algoritmo numrico y que la funcin se convertir automticamente disponibles para uso por las ecuaciones en los otros entornos. 5.3. Tier 3 El tercer nivel consiste en el modelo en s, junto con las herramientas y servicios que operan en un determinado modelo. Tres herramientas primarias son ofrecidos por el simulador: un optimizador que maximiza o minimiza un objetivo, una herramienta de prueba de la sensibilidad, y una API que se puede utilizar para el comportamiento del modelo de la escritura o analizar los resultados del modelo. 5.3.1. Optimizer El simulador incluye un optimizador para determinar el conjunto de valores de parmetros que minimizar o maximizar una funcin objetivo. El usuario especifica la funcin objetivo, los parmetros que deben ser ajustados y los intervalos respectivos de estos parmetros. El optimizador explora el espacio de parmetros especificados en la bsqueda del conjunto de parmetros que se logra el objetivo. El estudio de los mtodos de optimizacin es un amplio, campo multidisciplinar con numerosas tcnicas y enfoques disponibles.Optimizaciones de los modelos especificados por el usuario arbitrarias en el simulador son, sin embargo, limitado por tres caractersticas principales:
Funciones objetivo no convexos: Aunque algunos modelos y optimizacin de tareas asociadas pueden dar lugar a problemas de optimizacin convexa, en general, se debe asumir que el espacio de parmetros para un modelo determinado tiene mnimos locales mltiples.
No lisas funciones objetivo: Dado el uso de funciones lgicas en un modelo (por ejemplo, las declaraciones if-then-else), es muy posible que la funcin objetivo de tener discontinuidades agudas.Incluso sin el uso de tales funciones, los lmites numricos del motor de matemticas de punto flotante podran crear discontinuidades en escala fina.
No se utilizan derivados de anlisis: Aunque los derivados o matriz hessiana en un punto dado en el espacio de parmetros se pueden estimar numricamente, generalmente es imposible calcular directamente. Una amplia clase de tcnicas que se utilizan para tratar este tipo de problemas de optimizacin que se conoce como "bsqueda directa" mtodos [21] , [22] y [23] . Esta categora comprende los mtodos que no dependen de las diferencias, como la clsica bsqueda Nelder-Mead simplex [24] , los algoritmos genticos[25] y el recocido simulado [26] . Existen comparaciones publicadas entre las tcnicas (por ejemplo [27] );Sin embargo, los resultados suelen ser dependiente del contexto y varan de una aplicacin. Para el simulador, una forma de bsqueda directa basada en el mtodo de Powell [28] se lleva a cabo. En pocas palabras, el mtodo de Powell toma un punto de partida inicial y un conjunto de vectores de bsqueda que abarcan todo el espacio de parmetros. La funcin objetivo se evala en el punto de partida.Luego, para cada vector de bsqueda el objetivo es, a su vez evala en una nueva posicin que es un tamao de paso de bsqueda dado en la direccin positiva a lo largo de ese vector y, si no se encuentra una solucin mejorada, posteriormente en la direccin negativa. Tan pronto como se identifica una solucin mejorada, el centro de la bsqueda se traslada a lo largo de dicho vector de bsqueda a una distancia dos veces el tamao de paso de bsqueda (el supuesto optimista es que si una mejora se encuentra en una direccin, la solucin continuar para mejorar si el optimizador contina en esa direccin). Despus de que se complete una iteracin completa a travs de todos los vectores de bsqueda, un vector de bsqueda combinada se construye como un compuesto a partir de todos los movimientos que se tomaron en esa iteracin. Esta bsqueda de vectores de material compuesto a continuacin, reemplaza uno de los vectores existentes en el conjunto de vectores de la bsqueda. Si no se hizo ningn movimiento, el tamao de paso se reduce o la bsqueda puede ser terminada de acuerdo con una condicin de parada. Tenga en cuenta que el algoritmo de bsqueda como se describe es puramente determinista. El algoritmo encontrar un solo valor mnimo que, si existen varios mnimos, puede o no ser el mnimo global. Muchas de las tcnicas de optimizacin de abordar este problema mediante la introduccin de la estocasticidad en el proceso de optimizacin (por ejemplo, el recocido simulado o algoritmos genticos). Teniendo en cuenta los problemas convexas, tales estocasticidad puede, sin embargo, reducir la eficiencia en la bsqueda de la mnima. Como tal, el simulador utiliza el algoritmo determinista tal como se describe, pero se ocupa de los mnimos locales ofreciendo ubicaciones de partida al azar para el patrn de bsqueda. Por ejemplo, dado un problema de optimizacin donde los mnimos locales se conocen ni esperan de existir, el optimizador podra ejecutar diez veces, cada vez a partir de una ubicacin aleatoria diferente. Si todas las secuencias de diez optimizacin convergen a la misma mnimo, es altamente probable que se haya encontrado el mnimo global. Si todas las secuencias de diez optimizacin convergen hasta los mnimos por separado, y luego poca evidencia hay que concluir que el mnimo global ha sido localizado. 5.3.2. Las pruebas de sensibilidad Herramienta de prueba de sensibilidad del simulador se ejecuta repetidamente una simulacin y agregados resultados. Puede mostrar el resultado agregado por el trazado de los resultados de cada carrera o un promedio de las carreras y el clculo de su distribucin. La herramienta de sensibilidad de la prueba tiene varios casos de uso general:
Promedio de las respuestas y las varianzas de los modelos estocsticos: Dada una modificacin en los valores de los parmetros de un modelo, la mayora de los modelos se exhiben una trayectoria cambiante de los resultados. Para los modelos estocsticos, puede ser difcil determinar cuando los cambios en la trayectoria fueron causadas por las modificaciones de los parmetros y cuando los cambios fueron causados por la estocasticidad inherente del modelo. La herramienta de pruebas de sensibilidad permite la simulacin para ejecutar muchas veces y se promediaron los resultados de estimar numricamente una respuesta independiente de las variaciones estocsticas.
Barridos de parmetros: Parmetros barridos pueden determinar la respuesta del modelo a una gama de diferentes valores de los parmetros. Pueden ser tiles para explorar el comportamiento del modelo, y la herramienta de la sensibilidad de pruebas pueden automatizar el proceso de esta exploracin.
Incertidumbre en los valores de los parmetros: valores de los parmetros del modelo son a menudo conocidos con certeza limitada. Los datos utilizados para estimar las mismas pueden ser limitados o en algunos casos inexistente. Herramienta de la sensibilidad de pruebas del simulador permite la formulacin de un modelo de probabilidad para definir la incertidumbre para uno o ms parmetros y luego obtener una estimacin numrica de la distribucin resultante de los resultados dada esta incertidumbre. Esta forma de anlisis se recomienda como parte del proceso de validacin de modelos y la verificacin para determinar si los resultados del modelo y las conclusiones son robustas a la incertidumbre paramtrica [29] y [30] . El simulador incluye un conjunto de funciones para generar nmeros aleatorios de acuerdo con una gama de distribuciones comunes (por ejemplo, la distribucin normal, la distribucin uniforme, y la distribucin logartmica normal, entre otros) para modelar la incertidumbre de conocimiento acerca de un parmetro. La simulacin se repite entonces, cada vez que el muestreo de un conjunto de unos valores de los parmetros de sus distribuciones. Este mtodo de Monte Carlo permite la propagacin de la incertidumbre de los valores de los parmetros para los resultados. 5.3.3. API / scripting El simulador incluye una API que se puede utilizar para construir modelos de programacin y analizar sus resultados. El API se implementa en ECMAScript y hay varios mecanismos por los que se puede acceder.La ms bsica es a travs de una primitiva especial llamado Button que se puede agregar al modelo. Cuando un usuario pulsa un botn primitiva, se ejecutan el cdigo asociado y comandos API. Otro mecanismo que se puede utilizar para acceder a la API es la consola del navegador que permite a los usuarios introducir directamente los comandos de la API de una manera interactiva. La gama de funciones de la API incluye las de la construccin del modelo (por ejemplo CREATEPRIMITIVE o SetValue), que para el estilo del modelo (por ejemplo SETLINECOLOR o SetSize), los de la ejecucin del modelo (RUNMODEL), y los comandos de entrada y salida (por ejemplo showData o PROMPT ). Como los comandos se ejecutan en ECMAScript, cualquiera de las funciones de anlisis de datos de ECMAScript o de comunicacin estndar puede, por supuesto, tambin ser utilizado. Estas capacidades permiten a los modelos de guiones a, por ejemplo, datos de parmetros descarga desde un servidor externo sobre la marcha, correr el modelo, analizar los resultados y / o cargar el resumen de resultados a otro servidor. 6. Integracin y portabilidad Dado el uso de tecnologas web estndar (HTML, CSS y ECMAScript) por las interfaces de construccin del simulador y de modelo, estos aspectos de la aplicacin son porttiles y se pueden instalar en cualquier entorno compatible con renderizado y visualizacin de pginas web. El uso ms comn de esta capacidad es el despliegue de contenido dentro de otras pginas web. Modelos construidos dentro de Insight Maker puede ser embebido dentro de las pginas web externas y pueden conservar la plena interactividad dentro de estos ambientes externos. Usuarios incrustacin modelos tambin pueden aprovechar la API del simulador para desarrollar una interfaz de usuario personalizada para un modelo y simulacin. Estas interfaces de usuario personalizadas se pueden utilizar para desarrollar "juegos serios" (por ejemplo, [31] , un juego de explorar el conflicto entre Israel y Palestina) o "simuladores de vuelo" (por ejemplo, [32] y [33] para los debates de los simuladores de vuelo en relacin con gestin de la educacin y la formacin). 7. Validacin y verificacin Aunque el proceso de desarrollo de la aplicacin no se sigue el ensayo de enfoques tales como Test Driven Development [34] , un conjunto automatizado de pruebas internas tiene un papel clave para asegurar el comportamiento de simulacin adecuado y la prevencin de las regresiones. Una extensa gama de ms de 1.000 pruebas individuales es parte del simulador que evala exhaustivamente la correccin de todos los aspectos de la conducta del simulador. Las pruebas van desde lo trivial (no el motor ecuacin evala correctamente que 2 + 2 es igual a 4?) Para las pruebas agregadas a nivel superior (no un modelo dado que contiene mltiples ecuaciones primitivas y evaluar el resultado correcto?). Las pruebas se escriben como una nueva funcionalidad se aade al programa y tambin en respuesta a los informes de problemas de los usuarios. Cuando se encuentra un problema, el problema se ha corregido primero y luego una prueba de la emisin est escrito para asegurarse de que no vuelve a aparecer en una regresin despus. El desarrollo de este conjunto de pruebas ha demostrado ser invaluable para asegurar el buen funcionamiento de la herramienta. 8. Estudio de caso 8.1. Visin de conjunto Para ilustrar el uso aplicado de la herramienta, un estudio de caso se presenta en el cual Insight Maker fue utilizado por un grupo de laicos, como parte de un proceso de desarrollo de modelos de colaboracin para explorar el impacto de las polticas econmicas. Teniendo en cuenta el objetivo principal de Insight Maker en la accesibilidad y la colaboracin - especialmente entre los laicos - este ejemplo es muy adecuado para ilustrar las fortalezas y debilidades en el logro de este objetivo principal de Insight Maker. El caso de estudio es una revisin del trabajo realizado por un grupo ad-hoc formado bajo los auspicios del Pensamiento Sistmico Mundial [35] , una organizacin sin fines de lucro enfocada en la exploracin de la aplicacin prctica y la realizacin de sistemas de pensamiento, un enfoque holstico para el anlisis y la la resolucin de problemas que se centra en la comprensin de las relaciones e interacciones entre los componentes de un sistema. Fuera de la organizacin ms grande, quince laicos organizados para comprender mejor la crisis financiera 2007-2008 y sus consecuencias mediante un enfoque basado en el modelado. El grupo utiliza Insight Maker para este modelado debido a su conjunto de caractersticas y la naturaleza basada en la web, que les permite compartir modelos fcilmente. Esta ltima capacidad era crtica para el grupo en que estaban dispersos geogrficamente y toda su comunicacin y coordinacin se produjeron a travs de Internet. En las siguientes secciones del estudio de caso, presentamos en primer lugar el proceso del grupo de modelado, a continuacin, los detalles de su modelo final, y el ltimo, explorar los resultados y conclusiones. Mientras que el estudio de caso slo utiliza una parte de las caractersticas de Insight Maker (que no hace uso de las caractersticas de modelado basado en agentes, el optimizador, o la herramienta de prueba de sensibilidad, por ejemplo), que habla de la accesibilidad y las posibilidades de colaboracin de Insight Hacedor que , como se subray anteriormente, es el propsito principal de la herramienta. 8.2. Proceso de modelado El grupo se organiz no jerrquicamente. Despus de la formacin, el progreso del grupo sigui un "divergente / convergente" patrn. Los miembros del grupo podran independientemente investigar o estudiar un tema antes de regresar y compartir sus conclusiones con el resto del grupo, a su vez, hacer frente a lo que el resto del grupo se haba producido en ese perodo. El grupo encontr que este protocolo sea altamente efectiva; tanto es as que en el perodo de casi siete meses de su trabajo tuvo, no haba ni una sola reunin del grupo entre los miembros. Despus de haber desarrollado algunos modelos docena, el grupo descubri un modelo del sector de la economa desarrollada por Stephanie Kelton, director del Departamento de Economa de la Universidad de Missouri-Kansas City [36] . Este modelo tena un impacto profundo en el pensamiento del grupo y en los tres meses restantes de la labor del grupo, que tom este modelo base y experiment con las modificaciones a la misma. 8.3. Detalles del modelo La versin final de la inversin del Grupo en comparacin con el modelo de austeridad se presenta en la figura. 6 . 4 Esta cifra representa un modelo de valores y el flujo combinado con una serie de botones que los usuarios pueden utilizar para ejecutar diferentes escenarios o desplegar el modelo en un revelador estructurada de los componentes clave del modelo. El modelo es una representacin conceptual de la economa de una nacin. Debido a que la mayora de los miembros del grupo se encontraban en los Estados Unidos de Amrica, el grupo utiliz el trmino "dlares" para representar unidades monetarias. Sin embargo, el modelo no fue calibrado para representar una economa especfica y en cambio se centra en las dinmicas generalizadas. No hay ni una moneda especfica asociada con el modelo y, por tanto, el trmino "dlares" como se usa aqu se refiere a dlares nominales. Las primitivas rectangulares en el diagrama de modelo representan las existencias. Por ejemplo, la firma de dlares social representa la cantidad de dinero actualmente en manos de las empresas de la economa. Las lneas continuas son los flujos y en este modelo de caso el movimiento de dlares entre las distintas poblaciones de la economa. La direccin de la flecha indica la direccin del flujo. Los valos son variables que en este modelo se utiliza principalmente para representar los parmetros del modelo.
Higo. 6. Diagrama esquemtico de la versin final de la inversin frente al modelo de austeridad. Las acciones estn representadas por rectngulos; las variables de valos; y fluye por las lneas slidas. Los rectngulos sombreados de la izquierda son botones interactivos aadidos por los modelistas. Opciones Figura Tabla 5 muestra el despliegue del modelo, junto con las descripciones de las conexiones principales del modelo y la lgica detrs de estas conexiones. Tabla 5. Despliegue de la inversin en comparacin con el modelo de austeridad.
Esta primera conexin se basa en la perspectiva simplificada que el gasto del gobierno inyecta dinero en la economa a travs de las compras de las empresas.Mientras que el gobierno inyecta dinero en la economa a travs de otras corrientes, tales como Medicare, Medicaid y el Seguro Social; las compras de las empresas fueron utilizadas como una primera aproximacin a cmo el dinero entra en la economa por parte del Gobierno
Este segundo flujo representa el hecho de que las empresas emplean a los miembros del hogar para producir los bienes y servicios adquiridos por las empresas. Las empresas no compran servicios con la totalidad de sus fondos como algunos se utilizan para pagar los impuestos y otras se guardan y se distribuyen a los accionistas cuando sea apropiado
Esta parte del modelo representa el hecho de que las familias crean la demanda para las empresas, aunque los fondos que tienen para las compras son menos de sus ingresos como parte de los fondos se guardan ( hsave ), algunos se utilizan para pagar los impuestos ( htax ) y algunos de sus los fondos se utilizan para comprar las importaciones ( mpmt ), que crea una demanda en dlares del comercio
Estos flujos representan el hecho de que algunos de los dlares de los hogares se utilizan para hacer las compras al exterior resultantes de las importaciones ( pmt importacin ). Al mismo tiempo, los gobiernos extranjeros, las empresas y los individuos compran a las empresas del pas, lo que se traduce en la exportacin pagados con los pagos por exportacin
Estos flujos agregados representan 'el pago de impuestos (empresas f-impositivos ) en sus beneficios y de los hogares los pagos de impuestos ( htax ). Ambos de estos impuestos representan ingresos para el gobierno y se utilizan para apoyar el gasto del gobierno ( G-gasto ).Cuando los ingresos del gobierno es menor que el gasto del gobierno, se produce un dficit. La acumulacin de este gasto deficitario con el tiempo se representa como la deuda nacional
Estos flujos indican que los hogares tienden a ahorrar una parte de sus ingresos ( hsave ) para su uso futuro. Esto reduce los fondos que gastan en compras de empresas.Tambin cuando las empresas mantienen ganancias acumuladas ( FSAVE ), reduce los fondos que tienen disponibles para comprar mano de obra de los hogares
Este segmento final del modelo representa el hecho de que si los hogares requieren fondos adicionales, que toman prestado de sus ahorros o de las instituciones financieras (hborrow ). Cuando las empresas requieren fondos adicionales que les piden prestado a sus ahorros o de las instituciones financieras ( fborrow ) Opciones de la tabla Primitivas de modelo y las ecuaciones se dan en el Apndice A . Un desafo en la aplicacin de este modelo en Insight Creador era que Insight Hacedor no incluye soporte para guardar distintas combinaciones de valores de parmetros. Para emular este apoyo, la inversin en comparacin con el modelo de austeridad hace uso de las capacidades API / scripting de Insight Maker para desarrollar escenarios y experimentos que se puede cambiar entre los usuarios finales. Por ejemplo, el cdigo se ilustra en la Tabla 6 se ejecuta cuando un usuario hace clic en el botn de escenario de "Economa de Semillas" en el modelo. Este cdigo configura el valor de la gspend variable y luego ejecuta el modelo. Tabla 6. Script para configurar un escenario y luego ejecutar el modelo. El findName funcin toma un nombre primitivo y devuelve una referencia al objeto primitivo con ese nombre. El setValue funcin toma un objeto primitivo y establece su ecuacin a un valor dado. El runModel funcin inicia una simulacin y muestra los resultados para el usuario. La ecuacin pasa a setValueresultados en una salida de impulsos que es 0 hasta t = 1 ao y luego es de 0,5 para los prximos 3 aos antes de convertirse 0 nuevo despus de t = 4 aos. setValue ( findName ("gspend"), "Pulso (1, 0.5, 3)"); runModel (); Opciones de la tabla 8.4. Simulaciones y resultados Una serie de experimentos de simulacin y escenarios fueron manejadas por el grupo con diferentes valores y configuraciones de parmetros con el fin de comprender mejor el comportamiento de la economa de modelado. Tabla 7 se enumeran los escenarios principales desarrolladas por el grupo. Cada escenario se defini por un modelo de parametrizacin que se diferenciaba de los otros escenarios, lo que conduce a comportamientos diferentes. La comparacin de los comportamientos entre estos escenarios mayor comprensin modeladores 'de la economa simulada. La columna de la izquierda muestra el nombre del escenario y la motivacin, la segunda columna indica la ecuacin cambia que se hicieron para el modelo para implementar el escenario, y la tercera columna se enumeran los principales resultados de ejecutar el escenario. Las sustituciones en cada escenario de nuevas ecuaciones para un primitivo que se utilizan en lugar de la ecuacin del modelo inicial para ese primitivo. 5 Los reemplazos en cada escenario en la tabla son acumulativos con los escenarios mencionados anteriormente l. As, por ejemplo, el escenario Econ Recovery tambin incluye las anulaciones desde el escenario y Ganancias de ahorros. Tabla 7. Escenarios principales desarrolladas por el grupo. Las sustituciones en la segunda columna de implementar los cambios necesarios para explorar las preguntas de la primera columna. Guin Anulaciones de ecuaciones Principales resultados Economa Seed - Escenario Base gspend = Pulso (1, 0.5, 3) Gasto deficitario Sets gobierno para sembrar la economa con recursos para cebar la simulacin Gasto Sets gobierno (gspend) a un valor distinto de cero a partir de un ao y de proceder durante 3 aos. Para que la economa funcione, el gobierno tiene que realizar inicialmente el gasto del dficit que se acumula como la deuda nacional Ganancias y Ahorros FSAVE = Paso (6, 0,05) Las empresas y los hogares tienden a ahorrar una parte de sus ingresos, lo que a su vez toma el dinero de la circulacin lo que resulta en una disminucin constante en la economa Cul es la implicacin de las empresas que se sienta en los beneficios y el ahorro de los hogares los fondos? hsave = Paso (7, 0.1) A partir de 6 y 7 aos, tienen ambas empresas (FSAVE) y los hogares (hsave) ahorrar una fraccin de su capital Recuperacin Econ gspend = Pulso (1, 0.5, 3) + Paso (7, 0.15) Para compensar el ahorro de las empresas y los hogares, el gobierno debe continuar el gasto de dficit a un nivel equivalente a lo que las empresas y los hogares estn sacando de la economa. El problema es que el gasto deficitario tambin aumenta la deuda nacional De qu manera el gasto deficitario a compensar los ahorros por las empresas y los hogares? Aumentar el gasto pblico (gspend) ms all del pulso inicial por el gasto de una cantidad constante a partir de 7 aos Impuestos ftax = Paso (6, 0,05) El gobierno de exigir el pago de los impuestos reduce el nivel de gasto deficitario, en igualdad de circunstancias, sino que tambin reduce los fondos en circulacin bajando de este modo la economa Qu efecto tiene el cobro de impuestos del gobierno tienen en la economa? htax = Paso (7, 0.1) Aadir una carga fiscal diferente a cero para ambas empresas (ftax) y los hogares (htax) de partida en los aos 6 y 7 Recuperacin Econ 2 gspend = Pulso (1, 0.5, 3) + Paso (7, 0.2)
Guin Anulaciones de ecuaciones Principales resultados Cul es el efecto de un mayor gasto de dficit, dada la presencia de los impuestos? Aumente el nivel de gasto del gobierno (gspend) ms all de la del primer nivel de escenario de recuperacin Econ Este escenario aumenta la larga el gasto deficitario del gobierno en un 33% para corregir el deterioro econmico creado a partir de la percepcin de impuestos Opciones de la tabla Ejemplo resultados de simulacin para dos de los escenarios se presentan en la figura. 7 . El panel izquierdo muestra el escenario de Economa de Semillas, donde el gobierno se compromete gasto deficitario durante unos aos para cebar la economa. La lnea de color negro slido muestra el gasto adicional del gobierno en funcin de pulso largo de tres aos, que se traduce en los fondos que circulan entre empresas (lnea discontinua) y los hogares (lnea de puntos) en un estado de equilibrio. El gasto pblico deficitario acumulado (lnea gris slido) refleja la deuda nacional. Si nada cambia, el gobierno no tendra que inyectar fondos adicionales en la economa y los dlares que circulan entre las empresas y los hogares sera mantener a la economa en un estado de equilibrio. El panel derecho muestra el escenario de recuperacin Econ ms realista que los ahorros no son cero. Cuando las empresas y los hogares ahorran una parte de sus ingresos, que en esencia restarlo de la economa. Esta extraccin reduce los fondos disponibles para las empresas y los hogares para hacer circular en la economa (de trazos y lneas de puntos). A menos que el gobierno lleva a cabo a continuacin, el gasto deficitario, la economa se reducir, por definicin, en una recesin y luego en una depresin. La recuperacin econmica requiere el gasto continuo dficit por parte del gobierno para compensar los fondos obtenidos por las empresas y los hogares, en igualdad de circunstancias (por ejemplo, se supone aumentos exgenos en el factor de productividad se estn produciendo). El dinero puesto en circulacin para garantizar la recuperacin ms se suma a la deuda nacional (lnea gris slido).
Higo. 7. Del panel izquierdo, resultados del escenario Economa Semilla; Haga panel, los resultados de los escenarios de recuperacin Econ. Dlares nocionales es la unidad abstracta de la moneda utilizada por el grupo en su modelo de una economa general. En consonancia con la Dinmica de Sistemas comn la prctica de modelado, el grupo se centr en la dinmica y tendencias ms que magnitudes y valores cuantitativos especficos. Opciones Figura Estos hallazgos, junto con todo el proceso de modelado se reunieron con entusiasmo entre los miembros del grupo. Gene Bellinger, el organizador del grupo, informa que los miembros del grupo consideraron que ahora entienden mejor cmo funciona la economa. Uno puede especular que el aumento de la comprensin de la modelo facilitado entre los participantes del grupo se debi directamente al hecho de que fueron ellos los que construyen en lugar de que sea un modelo dictada contra ellos por los expertos en la materia. 9. Discusin y conclusiones Este estudio ha sido complejo y de larga duracin que logra cuatro objetivos principales a la fecha: 1. Una herramienta de simulacin y modelado de propsito general fue construido utilizando tecnologas basadas en web que soporta el modelado multi-paradigma mediante una interfaz grfica de construccin de modelos. 2. La herramienta de simulacin y modelado combina ambas caractersticas dirigidas a los laicos y las personas nuevas en el campo de modelado (por ejemplo, una interfaz grfica) con los destinados a los usuarios ms avanzados (por ejemplo, la API de scripting y el conjunto de herramientas de optimizacin) dentro de una interfaz unificada. 3. La herramienta fue reiterado basado en la retroalimentacin del usuario y su direccin fue formada por las necesidades y los problemas que enfrentan los usuarios. Esto condujo a una evolucin del software que, aunque ahora un poco diferente de la visin original, mejor responda a las necesidades de la mayora de los usuarios interesados en el uso de una herramienta general de modelado basado en web. 4. Uso de la herramienta sigue creciendo, lo que indica la existencia de una necesidad y el deseo de una herramienta general de modelado basado en la web y la validacin de la web como una plataforma para el desarrollo de la simulacin compleja y herramientas de modelado. En febrero de 2014, el software tiene unos 20.000 usuarios registrados, con ms de 12.000 modelos construidos y guardados en su base de datos. En el camino, se encontraron con dificultades y puntos de resistencia por parte de los usuarios en el desarrollo de la aplicacin que se deriva de su naturaleza utilizando tecnologas basadas en Internet. Cuatro desafos claves han sido: 1. Seguridad de la propiedad intelectual: Los modelos se almacenan en un servidor centralizado que no est controlado por los usuarios. 6 Para la mayora de los usuarios esto es aceptable (y ellos tienen la capacidad de copia de seguridad del modelo de su mquina local). Sin embargo, para ciertos usuarios - especialmente aquellos dentro de un entorno corporativo - la falta de control sobre el modelo puede ser visto como un riesgo de seguridad. Aunque Insight Hacedor incorpora ajustes de grano fino para controlar el acceso de modelo, el hecho de que el modelo se almacena en un servidor externo hizo inadecuado para algunos usuarios potenciales. 2. Rendimiento: tecnologas basadas en la Web estn fundamentalmente limitados en el rendimiento que pueden obtener en comparacin con sus homlogos desarrollados en lenguajes ms tradicionales.Dicho esto, el rendimiento de Insight Maker es bastante bueno en la prctica y ms que adecuado para sus principales casos de uso de destino. 3. La falta de familiaridad de los ambientes basados en la Web: Muchos usuarios en la actualidad no se siente cmodo usando una simulacin y una herramienta de modelado dentro de su navegador web. Se espera que esto cambie ya que la gente se familiarice con el uso de aplicaciones ricas en navegadores.Esta tendencia se vio histricamente con clientes de correo electrnico donde los clientes una vez Escritorio eran la norma, pero ahora los clientes basados en web son ubicuos. 4. Percepcin de calidad de las aplicaciones: Un ltimo reto se centra en la percepcin de que las aplicaciones basadas en la Web son inferiores a sus contrapartes de escritorio. En el caso de la herramienta de modelado y simulacin presentada aqu, es en algunos aspectos superior en las capacidades y caractersticas para incluso homlogos comerciales. Sin embargo, el estigma y la experiencia de las aplicaciones web restrictivos que los usuarios puedan haber estado en contacto con en el pasado es difcil de superar. De nuevo, esto es una dificultad que se espera que disminuya con el tiempo ya que los usuarios se familiaricen con las aplicaciones basadas en web interactivas de alta calidad. A pesar de los desafos, herramientas de modelado y simulacin desarrollados utilizando tecnologas basadas en Internet tienen un futuro claramente positivo. La solicitud se presenta en este documento demuestra las posibilidades de crear amplias herramientas de modelado y simulacin en un entorno basado en la Web. Dada la mejora constante de las tecnologas web, las posibilidades disponibles para construir este tipo de aplicaciones no har sino crecer con el tiempo. Los beneficios que se ofrecen a los desarrolladores el uso de tecnologas basadas en la web - aumentaron la accesibilidad, la capacidad de impulsar cambios a los usuarios de forma inmediata, un rico conjunto de herramientas de las bibliotecas de cdigo abierto, etc - estn empezando a ser mayores que los costos de las tecnologas basadas en la Web, en casos distintos de los donde el rendimiento es el factor clave. No es difcil imaginar un futuro en el que las tecnologas basadas en la Web son la plataforma principal para el desarrollo de herramientas de simulacin y fuera de la de las aplicaciones crticas de desempeo modelar. Agradecimientos Este trabajo fue apoyado por un nmero de Ciencia Nacional de los Estados Unidos Beca de la FundacinDGE 1.106.400 . Los dos revisores annimos se les agradece por sus comentarios y numerosas sugerencias que mejoraron en gran medida este papel. Un reconocimiento especial se debe dar a los usuarios de Insight Maker y la retroalimentacin invaluable que han aportado que ha dado forma a su evolucin, en particular, Gene Bellinger y Geoff McDonnell. Grandes gracias se le da al grupo que desarroll la inversin en comparacin con el modelo de austeridad se describe en el estudio de caso, y para Gene Bellinger para organizar y animar al grupo. Apndice A Este apndice presenta el conjunto completo de ecuaciones utilizadas en la inversin en comparacin con el modelo de austeridad y sus valores teniendo en cuenta la aplicacin de los escenarios. Nombres primitivos pueden aparecer dentro de mltiples ecuaciones, si la misma primitiva est referenciada mltiples veces.Esto se ve, por ejemplo, cuando se aplica el efecto de los impuestos. La fraccin del capital pagado en firme de impuestos - ftax - se utiliza para calcular tanto cunto se paga al gobierno por las empresas y cunto es consecuencia disponibles para el ahorro de las empresas. Las siguientes funciones y notaciones Maker Insight se utilizaron en el modelo: Paso (inicio, Altura) : Devuelve 0 hasta t = Start , despus de lo cual vuelve Altura . Pulso (inicio, alto, ancho) : Devuelve 0 hasta t = Start y despus de t = Start + Ancho . En medio de estos lmites, devuelve Altura . INTEGRAR (Ecuacin) : Se integra la ecuacin diferencial por el mtodo de la integracin y el paso de tiempo especificado para el modelo. Esto no est escrito dentro de Insight Maker, sin embargo, se incluye aqu para dejar en claro el proceso de integracin se lleva a cabo durante la simulacin. Se aplica slo a las existencias. Opciones de la tabla Completo ecuaciones del modelo: Nombre primitivo Descripcin Valor inicial / ecuacin (escenarios pueden cambiar las ecuaciones) fborrow Fraccin de f-finanzas dlares prestados 0 FSAVE Fraccin de dlares despus de impuestos firmes guardan Paso (6, 0,05) ftax Fraccin del impuesto pagado por la firma Paso (6, 0,05) gspend Variable utilizada para alterar el gasto gubernamental durante la ejecucin de la simulacin Pulso (1, 0.5, 3) + Paso (7, 0.15) hborrow Fraccin de las finanzas del hogar ( h- finanzas dlares) prestados 0 hsave Fraccin de los ingresos del hogar guardado Paso (7, 0.1) htax Fraccin del ingreso familiar pagado en impuestos Paso (7, 0.1) mpmt Fraccin de dlares del hogar gastados en bienes y servicios importados 0 XPMT Fraccin de dlares comerciales que se traducen en dlares en firme de los bienes y servicios exportados 0 pmt Los pagos de las exportaciones 0 Nombre primitivo Descripcin Valor inicial / ecuacin (escenarios pueden cambiar las ecuaciones) exportacin dlares f- finanzas Equilibrio entre el ahorro menos firmes del hogar y de las inversiones para el hogar y la empresa INTEGRAR ([f-save] - [f-prstamo]) Valor t 0 = 0 dlares firmes Los fondos disponibles de los pagos a la exportacin, los pagos de artculos del hogar, y las inversiones que estn disponibles para el pago de entrada y los ahorros INTEGRAR ([f-prstamo] - [PMT f- entrada] - [salvar f-] - [f de impuestos] + [g-gasto] + [pmt exportacin] + [PMT h de bienes]) Valor t 0 = 0 dlares del gobierno Diferencia entre el gasto pblico y la recaudacin fiscal INTEGRAR ([f de impuestos] + [h de impuestos] - [g-gasto]) Valor t 0 = 0 dlares h- finanzas Equilibrio entre el ahorro menos firmes del hogar y de las inversiones para el hogar y la empresa INTEGRAR ([h-save] - [h-prstamo]) Valor t 0 = 0 dlares para el hogar Los fondos disponibles para el gasto de los hogares INTEGRAR ([PMT f-entrada] + [h- prstamo] - [h-save] - [h de impuestos] - [PMT h de bienes] - [pmt importacin]) Valor t 0 = 0 dlares de comercio Diferencia entre los pagos de importaciones y los pagos a la exportacin INTEGRAR ([pmt importacin] - [pmt exportacin]) Valor t 0 = 0 f-Obtencin de Prstamos Los fondos prestados como inversin [dlares f-finanzas] * [fborrow] PMT f-entrada Introducir pagos en firme. Se trata de insumos menos ahorros en firme [dlares firmes] * (1 - [FSAVE]) f-save Porcin de dlares de la firma utiliza para pagar la deuda o de las utilidades retenidas [dlares firmes] * [FSAVE] * (1 - [ftax]) f de impuestos Firma impuestos pagados sobre las utilidades retenidas [dlares firmes] * [FSAVE] * [ftax] g-gasto Los fondos inyectados en la economa por parte del gobierno. Esto es como las compras directas, apoyo a los programas, y programas sociales [Gspend] Nombre primitivo Descripcin Valor inicial / ecuacin (escenarios pueden cambiar las ecuaciones) h-Obtencin de Prstamos Los fondos prestados para complementar dlares de gasto de los hogares [dlares h-finanzas] * [hborrow] PMT h de bienes Gasto de los hogares productores de la demanda. Este es el hogar de dlares menos impuestos para el hogar y ahorro [Dlares domsticos] * (1 - [hsave] - [htax] - [mpmt]) h-save Porcin de dlares de los hogares utiliza para pagar la deuda o se guarda [Dlares del hogar] * [hsave] h de impuestos Impuestos para el hogar [Dlares del hogar] * [htax] pmt importacin Los pagos de las importaciones 0 Opciones de la tabla Referencias