Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PAPIME Manual Stella PDF
PAPIME Manual Stella PDF
dinámica en Biología
Stella©, software para modelación dinámica
en Biología
México 2009
Primera edición: 2009
ISBN: 978-607-00007-0
Contenido
Pág.
Capítulo 1
Capítulo 2
i
Capítulo 3
Capítulo 4
ii
Presentación
Esta es una guía práctica para conocer y manejar el software de modelación visual Stella.
De manera gráfica se revisa el entorno de trabajo, su manejo y se desarrollan algunos
ejemplos de modelos básicos en biología y ecología, todo ello sin escribir una sola
ecuación, aunque si se requieren conocimientos mínimos de matemáticas.
Los autores
iii
iv
Capítulo 1
Aspectos generales
Cuéntame y olvidare
Muéstrame y puede que recuerde
Involúcrame y entenderé
La interfase se puede utilizar para describir y analizar sistemas biológicos, físicos, químicos o
sociales muy complejos. Complejidad que se puede representar muy bien, con sólo 4 elementos
o bloques de construcción: stock, flujo, conector y convertidor.
Convertidor 1
Stock Flujo Conector
Convertidor 2
1
Aspectos generales
Stock: Es un símbolo genérico para cualquier cosa que acumula o consume recursos. Por
ejemplo. Agua acumulada en una tina de baño. En cualquier tiempo, la cantidad de agua en la
tina refleja la acumulación del agua que fluye desde la llave, menos lo que fluye hacía el
drenaje. La cantidad de agua es una medida del stock de agua.
Flujo: Un flujo es la tasa de cambio de un stock. En el ejemplo de la tina de baño, los flujos son
el agua que entra y el agua que sale.
El cuadro 1 proporciona ejemplos de variables que se pueden clasificar como stock’s y flujos
(entre muchas otras).
2
Aspectos generales
Los bloques de construcción son los 4 íconos con los que se construye los diagramas de un
sistema.
3
Aspectos generales
Para mostrar cómo se trabaja en el entorno Stella: “navegar” entre las diferentes capas y el uso
de cada una de ellas, se desarrolla un ejemplo de ecología.
E.1.1. Representar la variable población, mediante un bloque de construcción “stock”. Este tipo
de variables representa cualquier cosa que se acumula o declina y que puede ser física o
conceptual (cuadro 1).
Para esto, seleccionar el icono de stock ( ) y hacer un arrastre hacía el centro de la pantalla
El bloque stock tiene el nombre Noname 1, el cual se puede cambiar al dar un clic sobre el
nombre y como en cualquier procesador de palabras dar el nombre población. En este momento
la población no cambia, ya que no presenta flujos de entrada o salida.
E.1.2. Agregar un flujo, en este caso de entrada. Seleccionar el icono de flujo ( ) dando
un clic sobre él. Posicionar el “mouse” a la izquierda del bloque que ya se tiene y hacer un
arrastre hasta hacer contacto con dicho bloque (asegurarse que el stock se coloree al contacto).
4
Aspectos generales
Si no se hace contacto los dos bloques quedan desconectados, en cuyo caso se recomienda
eliminar el flujo con la herramienta “cartucho de dinamita”. Para esto dar un clic sobre esta
herramienta (la tercera), después ir al centro del bloque a eliminar y dar un clic, presionado el
Mouse hasta que desaparezca.
El flujo consiste de un tubo hueco con una flecha en un extremo y una nube en el otro. El tubo
es para representar el acarreo del flujo de materia o de información, estos son regulados por las
pequeñas espitas en la parte superior de cada tubo (simbolizado por una estructura en forma de
“T”). El círculo colgado al fondo de la espita es el receptáculo para especificar la lógica que
deberá regular la posición de la espita y de ahí el volumen del flujo. De manera conjunta, el
círculo y la espita controlan la tasa de flujo.
Con respecto a las nubes que se presentan, estas se utilizan para indicar que nada viene o va a
parar a las nubes, es una forma de indicarle al modelador que debe cuidar los orígenes o
destinos del flujo. También sirven para delimitar las fronteras del sistema.
5
Aspectos generales
3. Definir las relaciones algebraicas del modelo. Como ya se dijo, en STELLA hay dos formas de
visualizar un modelo: en el modo de mapeo (dibujo) y en el de datos. Para cambiar de modo
2
basta con dar un clic sobre el “globo” o sobre la como un “switch”. Arriba de
estos símbolos se encuentran unas flechas (hacia arriba y hacia abajo), que permiten “navegar”
entre las diferentes capas o niveles de Stella.
Se debe notar el signo ? en el stock y en el flujo. Esto indica que no se han dado valores
iniciales o que no se han definido las correspondientes relaciones matemáticas. Para esto se
debe establecer el escenario a modelar. Para este ejemplo se propone una pequeña ciudad con
5000 habitantes, donde cada año, por lo menos en los últimos años, nacen unos 150 niños al
año. La tarea es estimar que le sucede a esta población en los siguientes años.
Dar un doble-clic sobre el flujo nacimientos, con lo que aparece la siguiente caja de diálogo
6
Aspectos generales
En la esquina superior izquierda se tiene el nombre del flujo, después aparece la opción para
hacer el flujo bi-direccional (por default, estos son unidireccionales). Algunos autores
consideran buena práctica manejar todos los flujos como bidireccionales, lo que garantiza que
no se tomen valores negativos en el flujo (en este ejemplo, es absurdo pensar en nacimientos
negativos).
En el lado izquierdo al centro se tiene una lista titulada Required Inputs. Que contiene una
lista de los elementos que se pueden utilizar en la ecuación (en esta caso todavía esta vacía). Al
centro se tiene una calculadora que permite ingresar números u operadores aritméticos para
generar ecuaciones, aunque también se puede hacer con el teclado. A la derecha de la
calculadora se tiene una lista de funciones (simples o complejas), Builtins, que se pueden
utilizar en la definición de ecuaciones.
Al fondo se tiene una caja de diálogo para definir la ecuación de este flujo. En este ejemplo se
“teclea” el valor de 150.
Dar un clic sobre el botón Document, para que aparezca un campo texto donde se puede
documentar el flujo, de manera que otros puedan seguir la lógica de modelación.
Después de hacer esto desaparece el signo de interrogación, lo que indica que la variable o flujo
están definidos.
7
Aspectos generales
Considerar, ahora, la variable población, para esto dar un doble clic sobre ella, para que
aparezca la siguiente pantalla.
Es importante notar la diferencia con relación al diálogo del flujo. En la parte superior hay una
lista de los posibles tipos de stock, los tres últimos son variaciones del primer tipo. La opción
Non-negative obliga a que la variable tome valores positivos o cero. Luego se tiene la lista
Allowable Inputs que lista las variables que se pueden o no utilizar en la definición de los
valores iniciales del stock.
Al fondo de la pantalla se tiene una caja de diálogo que solicita el valor inicial del stock (no se
pide una ecuación como en el flujo). Los stocks solo pueden cambiar por flujos de entrada o
salida. En este caso se tiene un valor inicial de 5000. Entonces hay que dar el valor de 5000,
también se puede (o se debe) documentar la definición dando un clic sobre el Document.
Cuando ya no se tienen signos ? el modelo está listo para “correr”. Sin olvidarse de generar un
bloque donde se “vean” los resultados, en este caso seleccionar el icono de gráficos y “ponerlo”
en el área de trabajo. Una vez que se tiene el gráfico dar un doble clic sobre él para editar sus
opciones, apareciendo la siguiente pantalla.
8
Aspectos generales
En la caja de la izquierda aparece una lista de todas las variables en el modelo. La caja de la
derecha contiene todas las variables que se hayan seleccionado para incluir en el gráfico. Las
variables se pueden mover fácilmente de Allowable a Selected, ya sea con un doble clic o
seleccionando la variable y dando un clic sobre el botón de las flechas de dirección. También se
le puede dar un título al gráfico, en la caja Title.
El modelo ahora está listo para “correr”. Para esto, dar un clic sobre el “corredor” de la esquina
inferior izquierda de la ventana de trabajo y luego seleccionar el botón “play”.
9
Aspectos generales
Se debe notar el signo ? en el flujo muertes. Pero se tiene el dato de que 75 personas
(principalmente ancianos) mueren cada año.
En las propiedades del flujo definirlo como biflow y en la caja de ecuación teclear el valor 75,
además de documentar la variable con la opción Document.
El siguiente paso es dar un doble clic sobre el gráfico para agregarle la variable muertes (como
se mostró en la figura 8). Entonces se tiene un gráfico con 3 variables, cada una identificada por
un color diferente y con su propia escala, figura 1.11.
10
Aspectos generales
Es importante notar que por cuestiones de escala no se diferencian los nacimientos de las
muertes, por lo que se recomienda cambiar la escala.
Para esto, dar un doble clic sobre la gráfica y después seleccionar las dos variable a escalar (con
clic y con Ctrl o Shift clic). Después dar un clic sobre la doble flecha vertical que se presenta a la
derecha de alguna de las variables seleccionadas, con lo que se permite definir la escala de las
variables, en este caso Min = 0 y Max = 200.
11
Aspectos generales
En esta última gráfica se puede apreciar que el valor de nacimientos es mayor que el de
muertes, de ahí la tendencia de la población a crecer.
12
Capítulo 2
En este capítulo, a manera de ejercicio se muestran algunos de los modelos ecológicos más
comunes. Algunos de los cuales se revisan con más detalle en el siguiente capítulo.
2.1. Exponencial
13
Modelos más comunes
Este es un modelo con tendencia a crecer de manera no lineal, ya que la entrada se construye
con el producto de la población y de la tasa de nacimientos.
La modificación del modelo anterior conduce a una versión del modelo logístico, como se
muestra a continuación.
14
Modelos más comunes
En este modelo hay un autocontrol del crecimiento, por efecto del mismo tamaño poblacional,
cuyo comportamiento se aprecia en el siguiente gráfico.
15
Modelos más comunes
Cuando aparece el diálogo del gráfico se definen los límites de población de 2 a 200 y la tasa
de 0 a 0.06. Se puede hacer un “arrastre” de la esquina superior izquierda a la esquina inferior
derecha, o teclear los valores directamente. Es importante considerar el valor de Data Points.
N
ΔN = R*N*(1 - )
K
16
Modelos más comunes
Notar la escala del eje X, que va de 0 a 120. Esto se logra con RUN.
La opción Run Specs despliega una caja de diálogo que permite modificar los 12 tiempos
(meses) que por omisión se ejecutan.
17
Modelos más comunes
Para este modelo se definen los valores From: 0, To: 120 y DT =1.
Se pueden comparar diferentes valores de las variables incluidas en el modelo. En este caso
diferentes valores de R (0, 0.5, 1.0, 1.5 y 2.0)
Esto se logra con la opción Sensi Specs de RUN. Desplegándose la siguiente caja de diálogo
18
Modelos más comunes
Estos modelos se repiten constantemente en diversos procesos de áreas tan diferentes como la
ingeniería, biología e incluso en ciencias sociales. De ahí la importancia de revisarlos a detalle.
La población se mide en número de individuos. La inmigración neta es una medida del número
de personas por período de tiempo. Las unidades del factor de inmigración aquí son iguales a
los de inmigración neta.
19
Modelos más comunes
NOTA: La variable tiempo es una variable del sistema que se puede teclear directamente, al
definir el conjunto de valores de la variable Inmigración_neta.
20
Modelos más comunes
21
Modelos más comunes
En este caso una población destino es el objetivo y la diferencia entre la población actual y la
destino conduce la población hacia el destino. Aquí explícitamente se busca llegar a un valor
predefinido. Por ejemplo, el decaimiento de una sustancia radioactiva (el destino es radiación
cero), el enfriamiento de un tabique caliente (el destino es la temperatura ambiente) o la
difusión de un gas concentrado (el destino es la concentración de un cuarto, para controlar el
escape del gas de su contenedor).
22
Modelos más comunes
Aquí el flujo de entrada depende no sólo del stock sino también de la población destino definida
exógenamente. En este modelo, conforme la población crece, la diferencia entre la población y
la destino se aproxima a cero.
23
Modelos más comunes
Este es el más sofisticado de los cuatro modelos básicos. Aquí la variable de estado Población se
involucra en la definición de la densidad poblacional, junto con otras fuerzas externas. Donde la
densidad poblacional se calcula simplemente como el cociente de número de individuos por
área.
24
Modelos más comunes
25
Modelos más comunes
26
Capítulo 3
Es común que al desarrollar un modelo surjan preguntas del tipo: ¿qué pasa si …? Y entonces se
pruebe o experimente con el modelo, cambiando los valores iniciales, las tasas de cambio o
inclusive “viendo” que pasa si se hace que los valores de una variable cambien en un intervalo
definido. A esto actualmente se le conoce como experimentación, aunque en al algún tiempo se
le llamó simulación. Aspecto que se revisa en este capítulo mediante algunos ejemplos.
3.1. El Bio-Bomb
27
Experimentación (simulación) en Stella
3.1.1. Formulación
La mayoría de los modelos poblacionales son simplemente materia de vida y muerte. Esto es, la
tasa de crecimiento del número de miembros de la especie depende solamente del balance de
las tasas de nacimiento y de muerte. En el primer problema estas tasas se consideran
constantes. Por ejemplo, considere una población de conejos, si del 25% de la población nace
un solo descendiente al año, entonces la tasa de crecimiento debido a nacimientos será del
0.25*N por año, donde N es el número de conejos. De hecho, la muerte también es importante
y la tasa de muerte puede depender de otra constante. Por ejemplo, si el 5% de los conejos
muere por año la tasa será -0.25*N.
De manera más general, se puede asumir que la tasa de nacimientos constante es b y la tasa
constante de muertes es d, por lo tanto el cambio total por año en la población es.
dN
= bN − dN . . . . . . (1)
dt
donde r = b – d. De tal forma que ahora se tiene un solo parámetro, la tasa neta de
crecimiento, r. En modelación siempre es útil reducir el número de parámetros verdaderos a su
número más pequeño, para no malgastar esfuerzo en soluciones aparentemente diferentes.
Una vez que se simplifica el modelo se tiene la pregunta crucial: ¿cuál es el comportamiento del
sistema entero para diferentes valores de r y de la población inicial No?
Para contestar esta pregunta se requiere un gráfico que muestre el significado de la ecuación 2.
28
Experimentación (simulación) en Stella
Para resolver se necesita un valor inicial de población, así como las tasas constantes de
natalidad y mortalidad (b y d).
El modelo (2) requiere solamente de la tasa r (b-d), por lo que su representación es más
sencilla, como se muestra a continuación.
29
Experimentación (simulación) en Stella
En este modelo se resuelve el conjunto dirección con r = 0.2 y No = 0, 8, 16, 24, 32 y 40.
Así que la forma de investigar estos sistemas consiste en primero encontrar todos los puntos
fijos en el problema (esto es, los valores de N donde todas las ecuaciones se igualan a cero) y
entonces se investiga su estabilidad.
30
Experimentación (simulación) en Stella
Para el problema del Bio-bomb es claro que No = 0 es un punto fijo inestable cuando la tasa, r,
es positiva, pero estable si la tasa de crecimiento es negativa. Para el problema de decaimiento
todas las soluciones terminan en N = 0 sin importar donde inicien.
N
r ( N ) = r0 (1 − )
K
Donde:
r0 = tasa que se puede esperar para poblaciones pequeñas
K = capacidad de carga
31
Experimentación (simulación) en Stella
dN K
= r0 (1 − ) N
dt N
Donde se nota que la tasa de crecimiento depende tanto de la población como del cuadrado de
la población. Este es ya un problema no-lineal y más difícil de resolver analíticamente.
32
Experimentación (simulación) en Stella
b. Visualizar el conjunto dirección para este modelo con r = 0.2 y K = 100, discutiendo la
estabilidad de los dos puntos fijos. Recomendación: realizar un gráfico con t de 0 a 40 y
N de 0 a 150
Al extender los problemas a sistemas donde interactúan dos variables, por ejemplo: problemas
presa-depredador, competencia de dos especies, modelos epidemiológicos, osciladores no-
lineales, láser’s y encuentros amorosos; se pueden agregar uno o más grados de libertad
generando más comportamientos.
33
Experimentación (simulación) en Stella
Por otro lado, las herramientas desarrolladas para entender sistemas 1-D ayudan a entender los
sistemas 2-D, por la belleza de la fase plana nunca más se querrá hacer gráficos contra el
tiempo, sino que al estar en 2-D el truco es hacer gráficos de las variables entre ellas.
dx
= f 1 ( x, y )
dt
dy
= f 2 ( x, y )
dt
donde x e y son las dos variables de interés. Los ejemplos pueden incluir: conejos-hierba;
huéspedes-parásitos o pueden ser Romeo y Julieta. Los conceptos más importantes a entender,
con respecto a los sistemas 2-D (y los sistemas dinámicos en general), son:
- La fase plana
- Flujo(s) sobre la fase plana
- “Retratos” de fase
- Puntos fijos
- Estabilidad
La fase plana es un gráfico donde los ejes son justo las variables x e y, de manera que en vez
de hacer gráficos de conejos o hierbas contra el tiempo, es más importante ver el
comportamiento de conejos vs hierba.
Si se tienen 3 variables, el volumen a obtener se conoce como un espacio fase. El flujo sobre
la fase plana es exactamente la misma idea de la construcción de conjuntos dirección. Las
soluciones individuales simplemente trazan trayectorias en el espacio fase.
En general, donde las funciones de cambio no son cero el sistema evoluciona en el tiempo sobre
varias trayectorias, aspecto más interesante que el comportamiento alrededor de los puntos fijos
34
Experimentación (simulación) en Stella
donde las cosas no cambian. En un punto fijo el aspecto más interesante es ver que sucede si al
empezar cerca de un punto fijo si se pueden tener atractores estables o repeledores inestables,
en problemas 2-D se puede analizar aspectos como los que se presentan en las siguientes reglas
básicas
1. Formular un problema 2-D interesante
2. Encontrar los puntos fijos y categorizar su estabilidad
3. Esquematizar una imagen de fase
4. Usar Stella para resolver para unas pocas trayectorias cruciales
Cuando se hace esto, se cuenta con un “pintura” que dice exactamente como el sistema entero
evoluciona en el tiempo. Muchas veces se puede conjeturar qué sucedía aún sin resolver las
ecuaciones.
En general hay cuatro comportamientos cualitativos diferentes (más uno que no es un punto
fijo), estos son:
- Nodos estables y espirales
- Nodos inestables y espirales
- Centros neutrales
- Puntos silla
35
Experimentación (simulación) en Stella
(Atractores)
36
Capítulo 4
El objetivo es proporcionar las herramientas básicas para modelar y entender los sistemas
dinámicos lineales simples y algunos no tan simples.
Es una guía para adquirir práctica y guiarse en los trucos básicos, de tal forma que se adquiera
capacidad para:
37
Comentarios finales
De hecho muchos sistemas cambian con el tiempo y en el espacio, aunque en este caso sólo se
considera el cambio en el tiempo. Por ejemplo, se habla del número de animales en una
población, pero no de cómo estos se distribuyen en el espacio.
dx1
= f1 ( x1 , x 2 , . . . , x n , t)
dt
dx 2
= f 2 ( x1 , x 2 , . . . , x n , t)
dt
.
.
.
dx n
= f n ( x1 , x 2 , . . . , x n , t)
dt
Supóngase que las especies están dadas por las x1, x2, . . ., xn y las f1, f2, . . ., fn indican qué tan
rápido cambian las variables con el tiempo.
En general, las tasas de cambio dependen de los valores de otras variables y esto es lo hace
interesante este tema. Y si la dependencia es de forma no-lineal esto hace las cosas realmente
más interesantes.
Un aspecto importante es que plantear las ecuaciones, aún sin contar con su solución siempre
dice algo de cómo funciona y evoluciona un sistema.
Por último, es importante recordar los pasos básicos requeridos para crear y entender modelos
cuantitativos.
38
Comentarios finales
1. Formular el modelo
2. Analizar el modelo
3. Resolver el modelo (ecuaciones, valores iniciales, etc.)
4. Entender el modelo
5. Aceptar (o en algunos casos rechazar) el modelo
39
Comentarios finales
40
Bibliografía comentada
Bruce Hannon and Matthias Ruth, 1997, Modeling Dynamic Biological Systems, Springer
Verlag, New Cork, Inc, 399 pp.
Este es un libro enfocado al manejo de Stella, con ejemplos de aplicación en Biología general,
todos ellos relativamente simples. Incluye un CD con los archivos en formato Stella (.STM) de
todos los ejemplos presentados.
Bruce Hannon and Matthias Ruth, 2001, Dynamic Modeling, 2ª edición, Springer Verlag,
New Cork, Inc, 409 pp.
Este es un libro enfocado al manejo de Stella, con ejemplos de aplicación en diferentes áreas
del conocimiento. Incluye un CD con los archivos en formato Stella (.STM) de todos los
ejemplos presentados.
41
Comentarios finales
Hall, A. S. Ch., and Day, W. J., 1977, Ecosystem Modeling in Theory and Practice: An
introduction with Case Histories, John Wiley and Sons, U.S.A., 684 pp.
Leslie A. M., 1997, The First Step, Prepared for the MIT System Dynamics in Education
Project under the supervisión of Dr. Jay W. Forrester., 59 pp.
Material accesible desde el sitio oficial de Stella, que describe de manera sencilla como
empezar a trabajar con Stella, si hay algún pero es que está enfocado al área de la educación.
Levins, R., 1966. The strategy of model building in population biology, Amer, Sci.,
54:421-431
También e sun clásico que vale la pena revisar como información general de cómo se enfocaba
este vasto campo de la modelación, hace un poco más de 40 años.
Matthias Ruth and James Lindholm, 2002, Dynamic Modeling for Marine Conservation,
Springer Verlag, New Cork, Inc, 449 pp.
Este es un libro enfocado al manejo de Stella, con ejemplos de aplicación en sistemas marinos,
los modelos no son muy sencillos pues en su mayoría manejan arreglos de variables de estado
y el código que presenta no permite re.hacer los ejemplos sin problemas.
42
Comentarios finales
En este sitio se encuentra un curso on-line donde se revisan los aspectos teóricos básicos de la
modelación matemática, incluye tareas y actividades que le permiten al usuario monitorear su
propio grado de avance y aprendizaje.
Wiegert, G. R., 1996, Compartment Models, pp. 345-379, en Fry, J.C.(editor), Biological
Data Analysis, Oxford University Press.
Es un libro que en cada capítulo revisa un tema diferente del análisis de datos biológicos, lo
interesante de este capítulo es la forma en que maneja el concepto de dividir un problema
grande en pequeños compartimientos o módulos.
enlinea.zaragoza.unam.mx/biomat
43
Comentarios finales
44
Stella ©, software para modelación dinámica en Biología
1ª. Edición
www.sisal.unam.mx
enlinea.zaragoza.unam.mx/biomat