Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Dinamica de Sistemas Izquierdo Galan Santos Olmo 2008
Dinamica de Sistemas Izquierdo Galan Santos Olmo 2008
1. INTRODUCCIN
En las ltimas dcadas, debido en gran parte al desarrollo del microprocesador, han aparecido innovadoras tcnicas de modelado de sistemas complejos
y en particular de sistemas sociales que hacen uso de la nueva tecnologa
disponible. Dos de estas tcnicas son la simulacin basada en agentes y la dinmica de sistemas.
Tanto la simulacin basada en agentes como la dinmica de sistemas tienen
el potencial de complementar modelos no formales (normalmente verbales) de
sistemas complejos y modelos matemticos ms abstractos. A menudo la representacin verbal de sistemas complejos carece del rigor formal necesario para
valorar su coherencia lgica y para generalizar a partir de ellos, mientras que los
modelos matemticos suelen ser menos realistas debido a las fuertes restricciones impuestas por las hiptesis simplificadoras que son necesarias para poder resolverlos. Usando tcnicas de modelado computacional como la simulacin basada en agentes y la dinmica de sistemas tenemos el potencial de construir
modelos que combinan la riqueza descriptiva de los modelos verbales con el rigor formal de los modelos matemticos ms abstractos.
Para poder aprovechar al mximo el potencial que cada una de estas tcnicas
nos ofrece, debemos ser conscientes de las diferencias que existen entre ellas y
de aquellas caractersticas que las separan de los mtodos tradicionales de moEMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
86
delado cientfico. De esta forma podremos valorar cules son sus ventajas y sus
limitaciones.
En este artculo se realiza una comparacin de la simulacin basada en
agentes y de la dinmica de sistemas como metodologas de modelado cientfico de sistemas complejos. La estructura del artculo es la siguiente: la segunda
seccin presenta una breve introduccin al proceso de modelado cientfico. A
continuacin se recogen los principios esquematizados en la seccin segunda y
se particularizan para el caso del modelado computacional de sistemas complejos. La cuarta y quinta seccin describen, respectivamente, la simulacin basada
en agentes y la dinmica de sistemas. Posteriormente se destacan las diferencias
existentes entre las dos metodologas tomando como esquema general el proceso de modelado cientfico descrito en las primeras secciones. Finalmente se
presentan las conclusiones.
2. UNA ABSTRACCIN DEL PROCESO DE MODELADO
CIENTFICO
Primera aproximacin al proceso de modelado cientfico
Varios filsofos (por ejemplo, Hesse (1963) y Hughes (1997)) que han estudiado la metodologa cientfica tradicional han propuesto el mismo esquema
general del proceso de modelado. Segn estos autores, los modelos cientficos se
construyen para desarrollar procesos de inferencia sobre ciertos aspectos de
sistemas reales previamente observados. Es mediante estos procesos de inferencia, mediante la construccin y el uso de modelos cientficos, como mejoramos nuestro entendimiento de los sistemas reales observados. De hecho, man-
87
88
abstracta y general y no por ello menos til (como p. ej. una explicacin
tentativa y aproximada de los resultados de unas elecciones).
En general, las conclusiones a las que podamos llegar usando un modelo no
describirn con rigurosa exactitud lo que ocurre en el sistema real (especialmente
en sistemas con un alto grado de incertidumbre) pero, cuando menos, aportarn
un conocimiento significativamente mejor que el que obtendramos sin aplicar
modelo alguno.
El valor de un modelo no se limita necesariamente al anlisis del sistema real
para el cual el modelo fue diseado. El conocimiento adquirido mediante el estudio de un determinado modelo puede trascender a otros sistemas reales cuya
esencia quede capturada por la misma abstraccin, incluso aunque el modelo no
se desarrollase inicialmente con estos otros sistemas reales en mente. Como
ejemplo, considere el estudio de cmo un telfono mvil se aproxima al suelo
cuando uno lo deja caer desde cierta altura. El modelo de gravedad Newtoniano
nos puede ayudar considerablemente a entender esta situacin, pese a que obviamente Newton no tena en mente la cada libre de telfonos mviles cuando
desarroll su teora.
En resumen, un modelo ser til en la medida en que capture la esencia de la
situacin real objeto de estudio, facilite el desarrollo de procesos de inferencia
que no se podran llevar a cabo sin el modelo, y proporcione conocimientos que
puedan ser transferidos a diversas situaciones.
Retroalimentacin en el proceso de modelado
El proceso de modelado secuencial esquematizado en la figura 1 es una
primera aproximacin, una simplificacin didctica que conviene matizar. Resulta claro que los resultados obtenidos con un modelo y el contraste de estos
resultados con el sistema real pueden poner en evidencia aspectos mejorables
de las premisas que definen el modelo. Por ello, y sin nimo de complicar excesivamente esta exposicin, s que consideramos conveniente resaltar que el
proceso de modelado es en realidad raramente unidireccional. En la prctica, el
proceso de modelado es en general muy dinmico y no lineal.
A menudo el modelador disea un primer modelo con el cual obtiene
unos resultados iniciales. A la luz de los resultados obtenidos, el modelador
suele volver a las etapas iniciales del proceso de modelado para perfeccionar el
modelo mediante la revisin de algunas de sus premisas. Es posible que los resultados obtenidos inicialmente se considerasen insatisfactorios (a) porque
no parecieran derivarse lgicamente de las premisas del modelo (proceso de
verificacin) o (b) porque an siendo lgicamente correctos difirieran excesivamente de los resultados observados en el sistema real que se est modelando (proceso de validacin). A continuacin explicamos brevemente estos
dos procesos:
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
89
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
90
91
Sistemas complejos
Bsicamente, un sistema puede definirse como un conjunto de elementos en
interaccin (Bertalanffy, 1968). Los sistemas complejos (p. ej. organismos
pluricelulares, colonias de hormigas, ecosistemas, economas, sociedades)
estn caracterizados por tener una estructura compuesta por varios niveles. En
estos sistemas complejos (Vicsek, 2002; Gilbert, 2004):
Los componentes de niveles jerrquicos inferiores suelen mostrar un grado de autonoma significativo.
El comportamiento del sistema surge a partir de la auto-organizacin de
sus componentes, sin que esta organizacin est controlada ni dirigida
por ningn ente exterior al sistema.
Los componentes bsicos de estos sistemas complejos (clulas, hormigas,
individuos, poblaciones, empresas) perciben su entorno y responden a
cambios en l de forma potencialmente diferente.
Por si esto fuera poco, muchos sistemas complejos son tambin adaptativos.
En estos sistemas adaptativos (organismos, ecosistemas, economas, sociedades), el comportamiento de los componentes bsicos del sistema puede evolucionar en el tiempo, dando lugar a una cierta capacidad de respuesta frente a
cambios en el entorno por medio de mecanismos de:
Aprendizaje a escala individual, y/o
seleccin y reemplazo (lo cual da lugar a un aprendizaje a escala poblacional).
Todas estas caractersticas hacen que el proceso de modelado formal de
sistemas complejos difiera sustancialmente del de otros sistemas ms simples. En
particular, su naturaleza descentralizada, la presencia de bucles de causalidad y
retroalimentacin no lineales, y el hecho de contener varias unidades ms o
menos autnomas, que pueden interaccionar, evolucionar, y adaptar su comportamiento a cambios en el entorno, implica que en la mayora de los casos es muy
difcil si no imposible conseguir un modelo que pueda describir el sistema
complejo adecuadamente y que adems sea resoluble matemticamente.
La simulacin computacional como herramienta de anlisis
de modelos formales
Hasta hace pocas dcadas, no poder resolver matemticamente un modelo
formal supona una desventaja importante, puesto que carecamos de otras herramientas con las que deducir las implicaciones lgicas que de l se derivaban.
Esto cambi radicalmente con la invencin y el desarrollo del ordenador. Hoy en
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
92
da, los ordenadores nos permiten explorar y analizar modelos formales que no
podemos resolver matemticamente. De esta forma, usando las nuevas tecnologas podemos implementar y analizar rigurosamente el comportamiento de modelos formales de sistemas complejos algo inviable hasta hace poco.
Un modelo que est implementado y que puede ejecutarse en un ordenador
es un modelo necesariamente formal (Suber, 2007) y, por lo tanto, no difiere sustancialmente de un modelo matemtico tradicional. Tanto los modelos computacionales como los modelos matemticos son modelos formales; la nica diferencia fundamental es que estn expresados en lenguajes diferentes. En
particular, todo modelo computacional puede expresarse en lenguaje matemtico como un conjunto de ecuaciones potencialmente muy difcil de resolver (ver p. ej. Epstein, 2006; Leombruni & Richiardi, 2005). En esencia, un
modelo formal (sea ste computacional o matemtico) puede verse como un conjunto de proposiciones que se admiten como ciertas (axiomas) ms un conjunto
de reglas de inferencia que pueden usarse para deducir nuevas proposiciones a
partir de los axiomas y de proposiciones inferidas previamente.
Como ejemplo, uno podra escribir el programa computacional y = 2x (regla) y aplicarlo a las condiciones iniciales x = 10 (axioma) para obtener el resultado y = 20. El resultado (y = 20), que est unvoca e inequvocamente determinado por las condiciones iniciales (x = 10) y el conjunto de reglas que
definen el modelo (y = 2x) puede verse como un teorema matemtico obtenido
mediante deduccin lgica ({x = 10; y = 2x}=>
y = 20). Naturalmente, no hay
razn por la que las condiciones iniciales, las reglas o los resultados deban ser
necesariamente numricos; podran ser, por ejemplo, cadenas de caracteres con
significado en un determinado lenguaje verbal.
En el caso general, la inferencia obtenida al ejecutar un modelo computacional tiene la siguiente forma: Los resultados obtenidos al ejecutar la simulacin computacional se derivan por deduccin (y, por lo tanto, con necesidad lgica) de aplicar las reglas algortmicas que definen el modelo al conjunto de
condiciones iniciales con las que el modelo se ha parametrizado. De esta forma,
independientemente de su mayor o menor complejidad interna, una simulacin
computacional constituye un teorema de suficiencia perfectamente vlido (ver p.
ej. Axtell, 2000).
Resulta til pensar que uno siempre podra aplicar las mismas reglas de inferencia codificadas en el modelo computacional para obtener por deduccin lgica los mismos resultados dadas las mismas condiciones iniciales. Esta
afirmacin, como pensamiento, resulta til, pero a la hora de obtener resultados
es mucho ms eficiente, rpido y fiable dejar que un ordenador haga el trabajo
por nosotros. Los ordenadores son mquinas de inferencia capaces de llevar a
cabo procesos algortmicos a velocidades inalcanzables por la mente humana.
Resumiendo, un modelo computacional es un modelo formal (que por lo tanto puede expresarse en lenguaje matemtico como un conjunto de ecuaciones), y
la simulacin computacional es una herramienta que nos permite estudiarlo
ms all de los lmites actuales de las matemticas. De este modo, el resultado fiEMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
93
94
95
que s que debe recoger de manera clara e inequvoca esta primera abstraccin es
el conjunto de componentes, interacciones y variables crticas del sistema.
Diseo & Codificacin. La segunda etapa consiste en disear e implementar
un modelo formal a partir de la abstraccin llevada a cabo por el experto. Esta tarea corre a cargo de la persona que asume el rol del modelador (que potencialmente es la misma que asumi el rol de experto), y supone dos retos fundamentales que explicamos a continuacin.
El primer reto aparece cuando el modelo creado por el experto no est completamente especificado, algo que ocurre con sorprendente frecuencia. Imagine,
por ejemplo, que el experto explica que una poblacin evoluciona de forma
que los individuos con ms recursos tienden a reproducirse ms que aquellos
con menos recursos. Obviamente, existe una infinidad de algoritmos diferentes
que implementan esta idea: la relacin entre recursos y nmero de descendientes
puede ser lineal, cuadrtica, exponencial, etc. Todas estas relaciones satisfacen la
premisa del experto y por lo tanto son en principio igualmente vlidas
pero asumir una u otra conducir en general a diferentes resultados al ejecutar el
modelo formal. En otras palabras, a menudo existen multitud de modelos formales diferentes que se ajustan perfectamente a las especificaciones del experto.
El segundo reto surge cuando el modelo proporcionado por el experto carece de coherencia interna, algo que puede ocurrir perfectamente puesto que es frecuente que la abstraccin del experto est expresada en lenguaje natural. Descubrir incoherencias lgicas en modelos no formales no es una tarea trivial.
Varios autores (p. ej. Christley et al. (2004), Pignotti et al. (2005), y Polhill et al.
(2007)) han enfatizado la utilidad de ontologas para llevar a cabo esta tarea, particularmente en el dominio de las simulaciones sociales computacionales. En
cualquier caso, estos dos retos para el modelador ponen de manifiesto el enorme
valor que tiene formalizar modelos.
En resumen, el modelador deber tratar de disear e implementar un modelo
o conjunto de modelos formales tales que (a) cada uno de ellos sea una particularizacin vlida de las especificaciones del experto y (b) todos ellos en conjunto constituyan una expresin representativa de la abstraccin del experto. Para
ello, el modelador, a menudo en constante comunicacin con el experto, deber
acordar y realizar varias suposiciones de naturaleza muy diversa. Algunas suposiciones vendrn impuestas por la necesidad de producir un modelo completamente especificado, y darn lugar a particularizaciones concretas de ideas generales expresadas por el experto. Otras suposiciones sern necesarias para poder
ejecutar el modelo con la tecnologa disponible (p. ej. representar un espacio tridimensional como un conjunto de celdas bidimensionales). Finalmente, es posible que haya suposiciones implcitamente codificadas en el modelo formal y que
ni siquiera el propio modelador sea plenamente consciente de que las est imponiendo (p. ej. el uso de aritmtica de punto flotante en vez de aritmtica real).
Una vez diseado el modelo formal, el modelador podr implementarlo en
multitud de formalismos diferentes. En particular, todo modelo computacional
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
96
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
97
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
98
99
que definen a los componentes bsicos del sistema real se corresponden con las
fronteras que definen a los agentes del modelo, y las interacciones que tienen lugar entre los componentes bsicos del sistema real se corresponden con las interacciones que tienen lugar entre los agentes del modelo (Edmonds et al.,
2001; Galn et al., 2008). Esta correspondencia directa contrasta con el tradicional uso de agentes representativos y es capaz de aumentar el realismo y el rigor cientfico de los modelos formales as construidos.
Los sistemas basados en agentes se caracterizan por comprender varios
agentes que son en mayor o menor grado autnomos, heterogneos e independientes, que muestran cada uno sus propias metas y objetivos, y que generalmente son capaces de interaccionar entre s y con su entorno (Torsun, 1995).
En muchas ocasiones, pero no siempre, son sistemas caracterizados por la existencia de un nmero grande de agentes relativamente simples, que pueden evolucionar a lo largo del tiempo para adaptarse a nuevas condiciones del entorno o
a nuevos objetivos. En particular, la simulacin basada en agentes es especialmente relevante en sistemas complejos con las siguientes caractersticas:
Sistemas con componentes individuales heterogneos; especialmente aqullos en los que las implicaciones de esta heterogeneidad no se han estudiado en profundidad (Axtell, 2000). Varias disciplinas (p. ej. la economa
neoclsica) utilizan frecuentemente la hiptesis de individuo prototipo o
agente representativo, confiando en que los resultados obtenidos bajo esta
hiptesis puedan aplicarse satisfactoriamente a sistemas reales en los que
los individuos son, en realidad, heterogneos. Sin embargo, en sistemas caracterizados por fuertes externalidades (p. ej. la explotacin del medio
ambiente, la gestin de recursos comunes), los resultados obtenidos
usando modelos que asumen la existencia de un individuo representativo
estn, en muchas ocasiones, muy alejados de las observaciones empricas
(ver p ej. Ostrom et al., 1994). Ignorar por principio la existencia de heterogeneidad entre individuos es una fuerte premisa que debe ser contrastada; para ello, resulta necesario estudiar el sistema con heterogeneidad, y el
modelado basado en agentes es particularmente til para acometer este
anlisis.
Sistemas adaptativos, i.e. sistemas en los que los componentes individuales del sistema son capaces de aprender (adaptacin a escala individual), o
bien pueden ser seleccionados y reemplazados de acuerdo con algn criterio (adaptacin a nivel poblacional). En cualquiera de estos dos casos parece claro que resulta conveniente representar explcita e individualmente
cada componente del sistema.
Sistemas en los que el espacio geogrfico puede tener una influencia significativa. En muchos sistemas, el hecho de que dos individuos estn separados en el espacio supone una probabilidad de interaccin inferior. El
modelado basado en agentes facilita la representacin del espacio fsico en
el que se mueven e interactan los agentes.
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
100
101
causa parcial y que, como consecuencia de esta percepcin consciente, reaccione modificando su comportamiento. Este fenmeno conocido como emergencia de segundo orden (Gilbert, 1995; Gilbert, 2002; Squazzoni, 2008)
subyace tras la complejidad de muchos sistemas sociales.
Los mercados financieros constituyen un ejemplo claro de emergencia de segundo orden. En estos mercados, el precio (fenmeno emergente) surge de la interaccin de varios inversores (componentes individuales del sistema); los inversores perciben de forma consciente el precio que ellos mismos generan, y
modifican su comportamiento en respuesta a esta observacin, creando as un
complejo lazo de realimentacin entre los dos niveles jerrquicos del sistema.
Puesto que el nfasis en la simulacin basada en agentes est en encontrar
abstracciones apropiadas que describan los componentes bsicos del sistema y
sus interacciones (en vez de buscar abstracciones que versen directamente sobre
la dinmica global del sistema), esta tcnica de modelado es particularmente til
para modelar procesos emergentes de forma natural.
5. DINMICA DE SISTEMAS
La dinmica de sistemas es otra tcnica de modelado de sistemas complejos.
Tambin se utiliza ampliamente para modelizar sistemas en ingeniera (Ford,
1997; Ford & Sterman, 1998), economa y negocios (Sterman, 2000; Ellis,
2007), planificacin y gestin de proyectos (Rodrigues & Bowers, 1996; Lyneis
& Ford, 2007), gestin medioambiental (Martnez & Esteve, 2007), sanidad
pblica (Homer & Hirsch, 2006) e incluso historia (Cruz, 2007), por poner algunos ejemplos.
A diferencia de la simulacin basada en agentes, la filosofa de la dinmica de
sistemas gira en torno al concepto de retroalimentacin, o causalidad circular entre variables observables. Estas variables observables pueden describir algn atributo de los componentes bsicos del sistema (p. ej. la velocidad de una partcula de
gas en un recipiente), o referirse a alguna magnitud global del sistema (la presin
en el recipiente). Bien es cierto que existe una tendencia generalizada en la dinmica de sistemas a utilizar variables observables del sistema en su conjunto. En
ese caso, es importante darse cuenta desde un principio que el mero hecho de estudiar magnitudes agregadas del sistema global (en vez de estudiar magnitudes de
sus componentes bsicos directamente) supone ya un alto grado de abstraccin.
A diferencia de la simulacin basada en agentes (donde se estudian interacciones entre los componentes bsicos del sistema), el foco de atencin en la dinmica de sistemas reside en la relacin existente entre variables observables.
Estas relaciones son, en general, suficientemente complejas de por s. En la
mayora de los sistemas complejos existen variables observables que no estn ligadas por una relacin lineal causa-efecto. Las relaciones lineales causa-efecto
en el sentido tradicional del trmino se caracterizan por las siguientes propiedades (Scholl, 2001):
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
102
103
104
Otra diferencia fundamental que existe entre la simulacin basada en agentes y la dinmica de sistemas radica en el grado de refinamiento en la definicin
de componentes bsicos y de variables observables. Si bien esta diferencia no
tiene por qu darse en teora, lo cierto es que existe en la prctica. La mayora de
los modelos de dinmica de sistemas se centran en variables observables del sistema agregado (Parunak et al., 1998). En simulacin basada en agentes, por el
contrario, el nfasis radica en definir el comportamiento de los agentes, que no
est necesariamente determinado por variables agregadas del sistema, sino que
puede basarse slo en informacin local. En simulacin basada en agentes las
variables observables del sistema agregado surgen como resultado de la interaccin de los agentes. Es posible que los agentes puedan ser capaces de observar las variables agregadas y modificar su comportamiento en consecuencia
(i.e. emergencia de segundo orden), pero lo importante es darse cuenta de que en
simulacin basada en agentes el proceso de emergencia que lleva de los componentes individuales a las variables agregadas se modela explcitamente.
Como es de esperar, estas diferencias en el proceso de abstraccin y de diseo del modelo repercuten directamente en el resto de las etapas del proceso de
modelado cientfico. A la hora de codificar el modelo computacional, si bien es
cierto que ste puede expresarse en multitud de formalismos diferentes (en particular, en cualquier lenguaje de programacin suficientemente sofisticado),
tambin es cierto que la implementacin en determinados formalismos puede ser
mucho ms natural que en otros. Por ejemplo, los lenguajes de programacin
orientados a objetos (p. ej. Java, C++, Objective-C SDML (Moss et al., 1998))
son particularmente tiles para construir modelos basados en agentes.
Tambin existen formalismos y bibliotecas de cdigo que han sido creadas
especficamente para facilitar la creacin de modelos de acuerdo con un paradigma u otro. Por ejemplo, para simulacin basada en agentes son particularmente tiles las plataformas de desarrollo NetLogo (Wilensky, 1999) y Ascape
(Parker, 2001), las bibliotecas de cdigo Swarm (Nelson et al., 1996), Repast
(North et al., 2006) y Mason (Luke et al., 2005), o las recientes adaptaciones de
plataformas y metodologas de sistemas multi-agente hacia la simulacin social
(Sansores & Pavn, 2005; Sansores et al., 2006; Arroyo & Hassan, 2007).
Railsback et al. (2006) comparan Netlogo, Swarm, Repast y Mason. El proceso
de diseo y codificacin de un modelo de dinmica de sistemas es normalmente ms sencillo, en parte porque los modelos formales suelen ser menos complejos, y en parte gracias a la disponibilidad de herramientas informticas de
muy alto nivel para construir y analizar este tipo de modelos (p. ej. Vensim
(2008) y NetLogo (Wilensky, 1999)). Segn algunos autores (Parunak et al.,
1998), esta facilidad de construccin y anlisis de modelos de dinmica de sistemas mediante herramientas drag-and-drop ha sido una de las principales razones de su enorme popularidad en la comunidad cientfica.
La etapa de inferencia suele ser llevada a cabo por el ordenador. Las posibles
diferencias que puedan surgir en esta etapa entre las dos metodologas sern debidas a la plataforma escogida para implementar, ejecutar y analizar el modelo
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
105
formal. NetLogo (Wilensky, 1999) es una plataforma que nos ofrece algo particularmente interesante para nuestros propsitos: comparar en tiempo real de ejecucin, y dentro de la misma plataforma, un modelo diseado con un enfoque
basado en agentes y otro diseado bajo la ptica de dinmica de sistemas.
Posteriormente se analizan los resultados obtenidos, normalmente haciendo
uso de tcnicas estadsticas y otras herramientas informticas ms sofisticadas.
El resto de las etapas del proceso de modelado cientfico (interpretacin y aplicacin) son demasiado especficas para cada sistema complejo como para tratar
de compararlas en un ensayo general sobre metodologas.
7. CONCLUSIONES
En esta ltima seccin explicamos en detalle el principal factor que a
nuestro parecer determina cul de las dos tcnicas estudiadas en este artculo
es probable que resulte ms til a la hora de modelar un determinado sistema
complejo. Hemos mostrado que la principal diferencia entre la simulacin basada en agentes y la dinmica de sistemas radica en la forma en que se construye la primera abstraccin del sistema real objeto de estudio. Por tanto, resulta
claro que el principal factor que determina cul de las dos tcnicas ser ms til
viene determinado por lo apropiada que sea esta primera abstraccin dados los
objetivos del proceso de modelado. Sin duda, un segundo factor que tambin
afecta la eleccin en la prctica es la disponibilidad de herramientas para construir un modelo de acuerdo con un paradigma u otro (y, sobre todo, la pericia del
modelador en el uso de estas herramientas), pero entendemos que este factor no
precisa de ms explicacin.
Como hemos visto, la simulacin basada en agentes realiza abstracciones directamente sobre los componentes bsicos del sistema. La dinmica de sistemas,
por el contrario, versa sobre variables (normalmente agregadas) del sistema y sobre las relaciones causales que las ligan. Esta diferencia tiene una implicacin
fundamental en lo que se refiere al proceso de emergencia que nos lleva desde
las interacciones locales entre los componentes bsicos del sistema hasta las relaciones globales entre las variables agregadas del mismo. En simulacin basada en agentes este proceso de emergencia se modela explcitamente, mientras
que en dinmica de sistemas se presupone a priori (y son las relaciones entre las
variables agregadas las que se modelan explcitamente a una escala superior).
Si tanto (a) nuestro conocimiento previo del sistema complejo, como (b) los
objetivos que pretendemos alcanzar con el proceso de modelado, nos permiten
llevar cabo la abstraccin de este proceso de emergencia de forma slida y fundada, entonces la dinmica de sistemas ser normalmente ms conveniente. En
general, la dinmica de sistemas al ofrecer un grado de abstraccin superior al
desarrollado en los modelos basados en agentes dar lugar a modelos de
complejidad inferior, lo que facilitar su implementacin, su anlisis y su interpretacin. Sin embargo, si la abstraccin del proceso de emergencia no puede
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
106
si n(t) < N 1
si n(t) N 1
Sin embargo, si nuestro objetivo incluye adems poder identificar exactamente qu individuos conocen la noticia en un instante t (sabiendo quin la
conoca en algn instante previo), entonces ser necesario modelar la red social
de individuos explcitamente, lo que supone un enfoque basado en agentes. El
sistema real que se modela es exactamente el mismo, y es slo el objetivo del
ejercicio de modelado el que determina qu tcnica resulta ms til.
Naturalmente, hay sistemas en los que los procesos de emergencia son notablemente ms simples que en otros. Esto hace que en trminos muy generales podamos dar una idea sobre las caractersticas particulares de un sistema
que en principio pueden sugerir cul de las dos tcnicas de modelado es
probable que resulte ms til (teniendo en cuenta los objetivos que se pretenden
alcanzar con el modelo). A grandes rasgos, podemos decir que generalmente la
dinmica de sistemas resulta ms apropiada para modelizar sistemas compuestos
por entidades homogneas, dominados por leyes generales uniformes en el
tiempo y en el espacio (como las leyes fsicas), y que pueden modelizarse correctamente de una forma centralizada. En sistemas ms complejos, caracterizados por un alto grado de localizacin y heterogeneidad de sus componentes individuales, y dominados por procesos de intercambio de informacin locales,
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
107
AGRADECIMIENTOS
Los autores se han beneficiado enormemente de multitud de discusiones con
Segismundo S. Izquierdo. Este trabajo se deriva de la participacin de sus autores en los proyectos de investigacin financiados por el Ministerio de Educacin
y Ciencia con referencias DPI2004-06590 y DPI2005-05676, titulados Integracin empresarial y gestin de la cadena de suministro basada en sistemas
multiagente y Simulador basado en agentes para la gestin del agua en espacios metropolitanos.
BIBLIOGRAFA
ARMATTE, M. (2006): La Nocin de Modelo en las Ciencias Sociales. Empiria: Revista
de metodologa de ciencias sociales 11, pp. 33-70.
ARROYO, M. & HASSAN, S. (2007): Simulacin de procesos sociales basada en agentes
software. Empiria: Revista de metodologa de ciencias sociales 14, pp. 139-161.
AXELROD, R. (1997a): Advancing the Art of Simulation in the Social Sciences. En Conte
R, Hegselmann, R. & Terna, P. (Eds.) Simulating Social Phenomena, Lecture Notes
in Economics and Mathematical Systems 456: 21-40. Berlin: Springer-Verlag.
(1997b): The complexity of cooperation: Agent based models of competition and
collaboration. Princeton NJ: Princeton University Press.
AXTELL, R. (2000): Why agents? On the varied motivations for agent computing in the
social sciences. En Macal, C. M. & Sallach, D. (eds.), Proceedings of the Workshop
on Agent Simulation: Applications, Models, and Tools, pp. 3-24. Argonne, IL:
Argonne National Laboratory.
BASS, F. M. (1969): A new product growth for model consumer durables. Management
Science 15(5), pp. 215-227.
BERTALANFFY, L. (1968): General System Theory. New York: George Braziller Publisher.
BHM, C. & JACOPINI, G. (1966): Flow diagrams, turing machines and languages with
only two formation rules. Communications of the ACM 9(5), pp. 366-371.
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
108
BORSHCHEV, A., FILIPPOV, A., KENNEDY, M., WINCH, W. G., LANGER, R. S., ROWE, J. I. &
YANNI, J. M. (2004): From System Dynamics and Discrete Event to Practical
Agent Based Modeling: Reasons, Techniques,Tools. En Proceedings of the 22nd
International Conference of the System Dynamics Society. Albany, NY: Systems
Dynamics Society.
B OUSQUET, F. & L E PAGE , C. (2004): Multi-agent simulations and ecosystem
management: A review. Ecological Modelling 176(3-4), pp. 313-332.
CONTE, R., HEGSELMANN, R. & TERNA, P. (1997): Simulating Social Phenomena.
Lecture Notes in Economics and Mathematical Systems 456.
CRUZ, M. M. B. (2007): Evaluando la dinmica de sistemas como una herramienta para
ensear Historia. Revista de Dinmica de Sistemas 3(2), pp. 3-60.
CHRISTLEY, S., XIANG, X. & MADEY, G. (2004): Ontology for agent-based modeling and
simulation. Agent 2004 Conference on Social Dynamics: Interaction, Reflexivity
and Emergence, Chicago, IL. Argonne National Laboratory & The University of
Chicago.
DROGOUL, A., VANBERGUE, D. & MEURISSE, T. (2003): Multi-Agent Based Simulation:
Where are the Agents? En Sichman, J. S., Bousquet, F. & Davidsson, P. (eds.),
Lecture Notes in Computer Science 2581. Proceedings of MABS 2002 Multi-AgentBased Simulation, pp. 1-15. Bologna, Italy: Springer-Verlag.
E DMONDS , B. & H ALES , D. (2005): Computational simulation as theoretical
experiment. Journal of Mathematical Sociology 29(3), pp. 209-232.
EDMONDS, B., MOSS, S. & DAVIDSSON, P. (2001): The Use of Models - making MABS
actually work. In, Multi-Agent-Based Simulation, Lecture Notes in Artificial
Intelligence 1979, pp. 15-32. Berlin: Springer-Verlag.
ELLIS, R. E. (2007): El impacto del comercio con China en las economas y sociedades
de Amrica Latina. Revista de Dinmica de Sistemas 3(2), pp. 85-116.
EPSTEIN, J. M. (2006): Remarks on the Foundations of Agent-Based Generative Social
Science. En Amman, H. M., Kendrick, D. A. & Rust, J. (eds.), Handbook of
Computational Economics 2, pp. 1585-1604. North-Holland.
EPSTEIN, J. M. & AXTELL, R. L. (1996): Growing Artificial Societies: Social Science from
the Bottom Up. The MIT Press.
FORD, A. (1997): System dynamics and the electric power industry. System Dynamics
Review 13(1), pp. 57-85.
FORD, D. N. & STERMAN, J. D. (1998): Dynamic modeling of product development
processes. System Dynamics Review 14(1), pp. 31-68.
GALN, J. M. & IZQUIERDO, L. R. (2005): Appearances can be deceiving: Lessons
learned re-implementing Axelrods evolutionary approach to norms. Journal of
Artificial Societies and Social Simulation 8(3), Artculo 2.
GALN, J. M., IZQUIERDO, L. R., IZQUIERDO, S. S., SANTOS, J. I., OLMO, R., LPEZPAREDES , A. & E DMONDS , B. (2008): Errors and artefacts in agent-based
modelling. Enviado a Journal of Artificial Societies and Social Simulation.
GILBERT, N. (2002): Varieties of Emergence. En MACAL, C. & SALLACH, D. (eds.),
Social Agents: Ecology, Exchange, and Evolution. Agent 2002 Conference, pp. 4150. Chicago: University of Chicago and Argonne National Laboratory.
GILBERT, N. (2004): Agent-based social simulation: Dealing with complexity. Centre
for Research on Social Simulation, University of Surrey.
(2007): Agent-Based Models. Quantitative Applications in the Social Sciences.
London: SAGE Publications.
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
109
GILBERT, N. & TERNA, P. (2000): How to build and use agent-based models in social
science. Mind and Society 1(1), pp. 57-72.
GILBERT, N. & TROITZSCH, K. G. (1999): Simulation for the Social Scientist. Buckingham,
UK: Open University Press.
GOTTS, N. M., POLHILL, J. G. & LAW, A. N. R. (2003): Aspiration levels in a land use
simulation. Cybernetics & Systems 34(8), pp. 663-683.
HAREL, D. (1980): On folk theorems. Communications of the ACM 23(7), pp. 379-389.
HESSE, M. B. (1963): Models and Analogies in Science. London: Sheed and Ward.
HOLLAND, J. H. (1998): Emergence. From chaos to order. Reading, MA: AddisonWesley.
HOMER, J. B. & HIRSCH, G. B. (2006): System Dynamics Modeling for Public Health:
Background and Opportunities. American Journal of Public Health 96(3), pp.
452-458.
HUGHES, R. G. (1997): Models and Representation. Philosophy of Science 64(4), pp.
S325-S336.
IZQUIERDO, L. R., IZQUIERDO, S. S., GALN, J. M. & SANTOS, J. I. (2008a): Techniques to
understand computer simulations: Markov chain analysis. Enviado a Journal of
Artificial Societies and Social Simulation.
IZQUIERDO, L. R., IZQUIERDO, S. S., GOTTS, N. M. & POLHILL, J. G. (2007): Transient and
asymptotic dynamics of reinforcement learning in games. Games and Economic
Behavior 61(2), pp. 259-276.
IZQUIERDO, S. S., IZQUIERDO, L. R. & GOTTS, N. M. (2008b): Reinforcement learning
dynamics in social dilemmas. Journal of Artificial Societies and Social Simulation,
11(2), Articulo 1.
JOHNSON, P. E. (1999): Simulation modeling in political science. American Behavioral
Scientist 42(10), pp. 1509-1530.
JOHNSON, S. (2001): Emergence: the connected lives of ants, brains, cities, and software.
New York: Scribner.
KLEIJNEN, J. P. C. (1995): Verification and validation of simulation models. European
Journal of Operational Research, 82(1), pp. 145-162.
KLEINDORFER, G. B., ONEILL, L., & GANESHAN, R. (1998): Validation in simulation:
Various positions in the philosophy of science. Management Science, 44(8), pp.
1087-1099.
KOHLER, T. & GUMERMAN, G. J. (2000): Dynamics in human and primate societies:
Agent-based modeling of social and spatial processes. New York: Oxford University
Press & Santa Fe Institute.
LEBARON, B. (2000): Agent Based Computational Finance: Suggested Readings and
Early Research. Journal of Economic Dynamics & Control 24(5-7), pp. 679-702.
LEOMBRUNI, R. & RICHIARDI, M. (2005): Why are economists sceptical about agentbased simulations? Physica A: Statistical Mechanics and its Applications 355(1),
pp. 103-109.
LPEZ PAREDES, A. & HERNNDEZ IGLESIAS, C. (2008): Agent Based Modelling in
Natural Resource Management. Insisoc. Espaa. ISBN 978-84-205-4560-8.
LUKE, S., CIOFFI-REVILLA, C., PANAIT, L., SULLIVAN, K. & BALAN, G. (2005): MASON:
A Multiagent Simulation Environment. Simulation 81(7), pp. 517-527.
LYNEIS, J. M. & FORD, D. N. (2007): System dynamics applied to project management:
A survey, assessment, and directions for future research. System Dynamics Review
23(2-3), pp. 157-189.
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
110
MANSURY, Y. & DEISBOECK, T. S. (2004): Simulating the time series of a selected gene
expression profile in an agent-based tumor model. Physica D: Nonlinear
Phenomena 196(1-2), pp. 193-204.
MANSURY, Y., KIMURA, M., LOBO, J. & DEISBOECK, T. S. (2002): Emerging Patterns in
Tumor Systems: Simulating the Dynamics of Multicellular Clusters with an Agentbased Spatial Agglomeration Model. Journal of Theoretical Biology 219(3), pp.
343-370.
MARTNEZ, J. & ESTEVE, M. A. (2007): Gestin integrada de cuencas costeras: dinmica
de los nutrientes en la cuenca del Mar Menor (sudeste de Espaa). Revista de
Dinmica de Sistemas 3(1), pp. 2-23.
MOSS, S., EDMONDS, B., & WALLIS, S. (1997): Validation and Verification of Computational
Models with Multiple Cognitive Agents. Centre for Policy Modelling Report, No. 97-25.
MOSS, S., GAYLARD, H., WALLIS, S. & EDMONDS, B. (1998): SDML: A Multi-Agent
Language For Organizational Modelling. Computational & Mathematical
Organization Theory 4(1), pp. 43-63.
MOSS, S. (2008): Alternative Approaches to the Empirical Validation of Agent-Based
Models. Journal of Artificial Societies and Social Simulation, 11(1), Artculo 5.
NELSON, M., BURKHART, R., LANGTON, C. & ASKENAZI, M. (1996): The Swarm
Simulation System: A Toolkit for Building Multi-Agent Simulations. SFI Working
Paper 96-06-042.
NORTH, M. J., COLLIER, N. T. & VOS, J. R. (2006): Experiences Creating Three
Implementations of the Repast Agent Modeling Toolkit. ACM Transactions on
Modeling and Computer Simulation 16(1), pp. 1-25.
OSTROM, E., GARDNER, R. & WALKER, J. (1994): Rules, Games, and Common-Pool
Resources. Ann Arbor: University of Michigan Press
PARKER, M. T. (2001): What is Ascape and Why Should You Care? Journal of
Artificial Societies and Social Simulation 4(1), Artculo 5.
PARUNAK, H. V. D., SAVIT, R. & RIOLO, R. L. (1998): Agent-based modeling vs.
equation-based modeling: A case study and users guide. En SICHMAN, J. S., CONTE,
R. & GILBERT, N. (eds.), Multi-Agent Systems and Agent-Based Simulation, Lecture
Notes in Artificial Intelligence 1534, pp. 10-25. Berlin, Germany: Springer-Verlag.
PATON, R., GREGORY, R., VLACHOS, C., SAUNDERS, J. & WU, H. (2004): Evolvable
social agents for bacterial systems modeling. IEEE Transactions on Nanobioscience
3(3), pp. 208-216.
PIGNOTTI, E., EDWARDS, P., PREECE, A., POLHILL, J. G. & GOTTS, N. M. (2005): Semantic
support for computational land-use modelling. 5th International Symposium on
Cluster Computing and the Grid (CCGRID 2005), Cardiff, UK. Piscataway, NJ:
IEEE Press.
POLHILL, J. G., GOTTS, N. M. & LAW, A. N. R. (2001): Imitative and nonimitative
strategies in a land use simulation. Cybernetics & Systems 32(1-2), pp. 285-307.
POLHILL, J. G., PIGNOTTI, E., GOTTS, N. M., EDWARDS, P. & PREECE, A. (2007): A
Semantic Grid Service for Experimentation with an Agent-Based Model of LandUse Change. Journal of Artificial Societies and Social Simulation 10(2), Artculo 2.
RAILSBACK, S. F., LYTINEN, S. L. & JACKSON, S. K. (2006): Agent-based Simulation
Platforms: Review and Development Recommendations. Simulation 82(9), pp.
609-623.
REYNOLDS, C. W. (1987) Flocks, Herds, and Schools: A Distributed Behavioral Model.
Computer Graphics, 21(4), pp. 25-34.
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
111
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737
112
RESUMEN
Este trabajo compara dos tcnicas de modelado de sistemas complejos: la simulacin basada en agentes y la dinmica de sistemas. Esta comparacin se lleva a cabo dentro del marco general del proceso de modelado cientfico. Los autores concluyen que la principal diferencia entre las dos metodologas se
encuentra en el proceso de abstraccin que cada una de ellas realiza para construir el modelo formal a partir del sistema complejo observado. Esta diferencia
inicial se extiende a las restantes etapas del proceso de modelado cientfico. Finalmente, se indican los principales factores y las propiedades generales de un
sistema complejo que hacen que una u otra tcnica sea ms relevante, aunque los
autores destacan que, en la mayora de los casos, modelizar un mismo sistema
mediante las dos tcnicas es la solucin idnea.
PALABRAS CLAVE
Sistemas complejos, simulacin, simulacin basada en agentes, dinmica de
sistemas, modelado cientfico.
ABSTRACT
This paper compares two approaches in complex systems modelling: agentbased modelling and system dynamics. The comparison is undertaken within the
general framework of the process of scientific modelling. We argue that the
most important difference between the two approaches appears when the modeller builds an abstraction of the target system to develop a formal model from
it. This initial difference extends to the following stages of the modelling process, making the two approaches clearly distinctive. Finally, we outline the
main general factors that may make one approach more suitable than the other;
nevertheless, we also emphasise that modelling the same target system using
both techniques seems to be a fruitful and worthy activity.
KEY WORDS
Complex systems, Simulation, Agent-based simulation, System dynamics,
Scientific modelling.
EMPIRIA. Revista de Metodologa de Ciencias Sociales. N.o 16, julio-diciembre, 2008, pp. 85-112.
ISSN: 1139-5737