antes de que entremos a ver el código con algún detalle, quiero hablar un poco sobre
como podemos controlar el código de NetLogo; hemos hablado bastante sobre los
agentes y su estructura y todo lo que los rodea; pero no hemos hablado bastante
sobre como controlar el flujo; una cosa que es fundamental a la noción de un
Modelo Basado en Agentes y que está incrustada en NetLogo, pero que no es un
requisito, es la noción de una fase de iniciación y de una fase de iteración, la
inicialización y la iteración; en NetLogo la forma en que se sugiere que debemos
hacerlo es cuando creamos un procedimiento de Set Up y un procedimiento de Go; pueden
notar que antes ya teníamos estos botones de Set Up y de Go y ya hablamos un poco
del código del Set Up y del Go; esos fueron muy buenos ejemplos acerca de como
realizar las fases de inicialización y de iteración; vamos mostrarles como dividir
el modelo y separarlo en una fase de Set Up y una fase de Go
pero hay otro conjunto de comandos que también controlan y que están relacionados
con estas fases de inicialización y de iteración; la primera de todas es la de
Tick; Tick es un comando que básicamente lo que avisa es que es el final de la fase
de iteración, la que separa y avisa de la siguiente fase; le permite saber a NetLogo
cuando debe cambiar, por ejemplo, los gráficos, cuando debe actualizar el
contador que se encuentra arriba de la ventana del mundo de NetLogo
Luego tenemos el If y el Ifelse; If es esencialmente un condicional, nos dice que
si esto es verdadero entonces haga tal cosa; Ifelse dice que si esto es verdadero
entonces haga tal cosa; sino es entonces haga otra cosa; hay también un comando
que se llama Repeat, que ya vimos un poco antes, que lo que hace es repetir algo un
cierto número de veces y el comando final que vamos a ver es uno que se llama While
que dice que mientras algo sea verdadero corré el siguiente ciclo; estos son
comandos con los que podemos jugar a medida que avanzamos por el código de
NetLogo, pero dado este contexto, déjenme que frene un segundo y que les muestre los
comandos de Set Up y Go en el modelo bien simple de la economía y como contienen
algunos de estos elementos que acabamos de discutir
entonces acá abrí el modelo de la economía simple y este modelo está disponible en la
carpeta IABM Text Book, Capítulo 2 en la biblioteca de modelos de NetLogo, entonces
van arriba y en el menú eligen biblioteca de modelos, van abajo hasta el Capítulo 2
IABM Text Book, y del Capítulo 2 eligen el de economía simple; ok, lo abren y lo van
a ver en la aplicación de NetLogo; lo que vamos a hacer a lo largo de los próximos
videos es ver este modelo en detalle, les voy a mostrar como está construido, sólo
para darles un ejemplo, como ya dijimos, hay un código de Set Up y hay un código de
Go en este procedimiento y cuando usamos el código de Go, vemos que hay un comando
Ask Turtles, del que ya hablamos un poco antes, para ejecutarlo usa el With para
tener una colección de esas tortugas y hacer que ellas realizan alguna tarea, acá
tenemos el comando if, del que ya hablé, si la riqueza es igual o menor que el
máximo núcleo de px, en otras palabras, si se mueven por fuera de la pantalla, están
exportando; no voy a entrar en los detalles sobre qué significa exactamente
esto y acá hay otro de los comandos de los que ya hablamos que se llama tick, van a
ver que el tick se usa al final de la rutina go y le dice al modelo cuando
quiere el próximo tick; si ven el final de la rutina setup hay un comando reset-ticks
que también controla cuando debe reiniciar los ticks y en general eso sucede casi
siempre al final de cada comando de setup al comienzo de cada comando de setup hay
en general un comando clear all; entonces la 1ra cosa que tengo que hacer cuando
estoy creando un nuevo modelo es escribir to setup, limpiar todo, reiniciar los
ticks, ok y esto sirve para empezar a crear el modelo y luego escribimos to go
tick y así tenemos un marco de trabajo básico que funciona para cada modelo de
NetLogo; tomémosnos un segundo y vamos atrás para mirar este procedimiento de
setup para este modelo en particular