Los diagramas causales y diagramas de flujo son herramientas escenciales para el modelado de sistemas dinámicos pero, ¿qué son? y ¿qué representan?
Los diagramas causales son, como su nombre lo indica, diagramas que muestran las relaciones cuasa y efecto que exísten entre las diferentes variables contempladas. Esto nos permite hacer 3 cosas:
Modelar la estructura del sistema.
Obervar la interacción entre las variables del sistema (es decir, cómo se afectan entre ellas) mediante las polaridades (positvo o negativo).
Detectar los ciclos de retroalimentación dentro del sistema.
En escencia, nos permite ver las consecuencias del cambio en una variable sobre el resto del sistema.
Estos diagramas se modelan utilizando flechas y signos de polaridad (+/-). La variable de donde sale la flecha es la “causa”, mientras que la variable donde termina la flecha es donde sucede el “efecto”. Por otra parte, las polaridades (o los signos al final de cada flecha) nos dicen cuál es el efecto. Si el signo es positivo (+), entonces un aumento en la variable “causa” genera un aumento en la variable “efecto” y viceversa, un signo negativo (-) indica que un aumento en la variable “causa” genera una disminución en la variable “efecto”.
Otra particularidad de estos diagramas son los ciclos. Exísten 2 tipos de ciclos, los de reforzamiento y los de balanceo. Los ciclos de reforzamiento son aquellos donde todas las polaridades son positivas entre las variables del ciclo, es decir, si una variable aumenta, las demas variables también aumenta, lo que hace que la primer variable aumente. Por otra parte, los ciclos de balanceo son aquellos donde no todas las variables tienen polaridades positivas, entonces, el aumento de una variable puede disminuir otra variable lo que disminuye el aumento de la primera variable.
Por otra parte, los diagramas de flujo nos muestran cómo fluye el sistema, modelando los flujos de entrada, salida y los inventarios. Estos diagramas contemplan 3 tipos de variables:
Variables de estado: Nos dice la cantidad acumulada de una variable dentro del sistema en momento específico. Por ejemplo, el número de autos que se produjeron en una fábrica durante enero del 2025.
Variables de flujo: Nos dice el flujo de entrada o salida de las variables de estado a traves del tiempo. Por ejemplo, el número de autos que salen de la fabrica a la agencia por mes.
Variables auxiliares: Nos da mayor claridad al momento de modelar el sistema, ya que permite visualizar variables que no son flujos ni inventario pero que afectan al sistema. Por ejemplo, el numero de camiones transportadores disponibles para envíar carros de la fabrica a la agencia.
Estos diagramas se modelan usando cajas, flechas dobles, moños, nubes, flechas simples y polaridades. Las cajas representan variables de estado, mientras que los moños representan variables de flujo. Ambas están unidas por las flechas dobles, las cuales nos dicen si se trata de un flujo de entrada (flecha doble termina en la cada) o de salida (flecha doble sale de la caja). Las nubes indican el inicio y el final del sistema. Finalmente, las flechas simples y las polaridades se usan igual que en un diagrama de causalidad, pero aquí es para unir las variables auxiliares al diagrama.
En este momento podrías preguntarte “por qué queremos 2 diagramas del msimo sistema? ¿no sería más fácil solo hacer uno y ya?”. Y si bien es válido, cada diagrama nos dicen cosas distintas sobre el mismo sistema (en otras palabras, son un mal necesario). Un diagrama de causalidades se enfoca en la estructura general del sistema y la interaccion de sus variables, pero no contempla el tiempo ni el tipo de variable (estado, flujo o auxiliar). Por otra parte, un diagrama de flujo se enfoca en los inventarios dentro del sistema y su comportamiento a traves del tiempo, pero no contempla la estructura del sistema. Entonces, ambos tipos de diagrama se complementan para describir el sistema de forma completa.
A continuación veremos 3 ejemplos de casos modelados con diagramas de causalidad y de flujo. Estos casos fueron obtenidos del libro Small System Dynamics Models for Big Issues de Erik Pruyt.
El cambio mensual en la cantidad total de cocaína (cocaine) en un país depende de la cantidad mensual de importaciones de cocaína (cocaine imports), la cantidad mensual de cocaína utilizada (cocaine used) y la cantidad mensual de cocaína confiscada por la policía (cocaine confiscated).
En este caso vemos muy claramente las diferencias entre ambos diagramas. Por ejemplo, sabemos que las importaciones de cocaína (cocaine imports) aumentan la cocaína (cocaine) total disponible en el país. En el primer diagrama, esto se representa con una flecha simple que va desde cocaine imports a cocaine con una polaridad positiva, porque si aumentan las importaciones aumenta la cocaina en el país. Mientras que en el diagrama de flujo, cocaine se representa con una caja, cocaine imports como un moño y ambas estan unidas por una flecha doble.
Otra cosa que se puede ver en el modelo son los ciclos de balanceo. Uno de ellos es el ciclo de consumo de cocaina, el cual ocurre porque a mayor cocaina disponible (cocaine) hay mayor consumo (cocaine used), pero a mayor consumo hay menos cocaina disponible.
Ahora analicemos un sistema un poco más complejo:
Supongamos que hay una plaga de ratas almizcleras (muskrats) en una zona determinada. El aumento autónomo (autonomous increase) del número de ratas almizcleras por cada rata almizclera por año equivale en promedio a 20 ratas almizcleras por rata almizclera por año. Supongamos que cada año se otorgan 10 licencias (licenses) para colocar trampas (traps) para ratas almizcleras. Las licencias son válidas solo por un año y cada persona que tiene una licencia puede colocar 10 trampas. Supongamos que el número de ratas almizcleras atrapadas por trampa (muskrats caught per trap) es proporcional al número de ratas almizcleras y que la tasa de captura por trampa (catch rate per trap) es cercana a 0.2, es decir, en promedio 0.2, siendo el mínimo 0.195 y el máximo 0.205.
En este caso obvservamos el ciclo de retroalimentación que exíste entre el incremento autonomo de ratas (autonomous increase) y la población total de ratas (muskrats). Asimismo, observamos que la población de ratas únicamente aumenta mediante el incremento autonomo (autonomous increase), el cual es el flujo de entrada, y decrece a medida que más ratas son atrapadas (muskrats caught), el cual es el flujo de salida. Es aquí donde resalta la importania de las variables auxiliares, ya que permiten ver el flujo del sistema de forma más detallada.
Dicho esto, veamos el tercer y último sistema:
Supongamos que la población (population) inicial es de 1 millón de personas y que los recursos renovables (reneable resources) iniciales son de 5 millones de unidades del recurso (por ejemplo, toneladas de pescado o acres de tierra cultivable). Supongamos que la natalidad (births) es proporcional a la población, a la disponibilidad de recursos renovables per cápita (renewable resource availability per cápita) y a la tasa normal de nacimientos (normal birth rate) del 0.35% por persona por año. Supongamos que las defunciones (deaths) es proporcional a la población e inversamente proporcional al tiempo de vida dependiente de la disponibilidad de recursos (resource dependent lifetime). Este último es igual al tiempo de vida normal (normal lifestime) multiplicado por la disponibilidad de recursos renovables per cápita.
La disponibilidad de recursos renovables per cápita es igual al inventario de recursos renovables dividido entre el tamaño de la población. Los recursos renovables solo aumentan mediante la regeneración (regeneration) y disminuyen mediante el uso de recursos (resource use). La regeneración consiste en la suma de la regeneración mínima (minimum regeneration) y la regeneración dependiente de los recursos (resource dependent regeneration). La regeneración mínima equivale a la capacidad de carga (carrying capacity multiplicada por la tasa mínima de regeneración (minimum regeneration rate). Aproxima la regeneración dependiente de los recursos con la siguiente función: tasa de regeneración (regeneration rate) ∗ recursos renovables ∗ (recursos renovables/capacidad de carga) ∗ (1 − recursos renovables/capacidad de carga).
En tiempos de abundancia, el uso de recursos es igual a la población multiplicada por el consumo de recursos renovables per cápita (reneable resource per cápita consumption), pero en tiempos de escasez está limitado a la cantidad de recursos renovables dividida entre el tiempo rápido de agotamiento de los recursos (rapid resource depletion time). La ecuación de uso de recursos podría entonces expresarse como: MIN ( recursos renovables / tiempo rápido de agotamiento de recursos , consumo de recursos renovables per cápita ∗ población).
En este caso observamos que, aunque exíste 1 diagrama de causalidades, existen 2 diagramas de flujo. Esto se debe a que exísten 2 variables de estado que interactuan entre si mediante variables auxiliares. Esto no se refleja en el diagrama de causalidades ya que este tipo de diagramas solo observa la estructura del sistema, mientras que los diagramas de flujo modelan las entradas, salidas e inventarios en el sistema.
En este sistema observamos que, a medida que la población crece, el consumo de recursos renovables también crece, pero esto hace que los recursos disponibles sean cada vez menos, lo que a su vez reduce el crecimiento poblacional, resultando en un sistema oscilatorio en donde exísten crecimientos y decrecimientos altos.
En el diagrama de causalidad se pueden detectar las relaciones individuales entre cada variable de una forma clara, lo que permite mapear los efectos de aumentos o disminuciones en cada variable. Por otra parte, el diagrama de estado permite observar como la población y los recursos naturales crecen o decrecen, así como los distintos mecanismos mediante los cuales interactúan.
Pruyt, E. (2013). Small system dynamics models for big issues: Triple jump towards real-world complexity. Delft: TU Delft Library.
Sterman, J. (2000). Business Dynamics: systems thinking and modeling for a complex world.