NetLogo é um programa e um ambiente de modelagem que foi desenvolvido por Uri Wilesnky na Universidade de Northwestern. Foi criado para ensinar pessoas como construir modelos, e também para ser usado em pesquisa em sistemas complexos. Netlogo é baseado em outras duas linguagens, Logo e StarLogo. Todas as três têm sido usadas extensivamente em educação, desde o ensino básico até a graduação. Neste curso, usaremos o NetLogo para demonstrar algumas ideias centrais em sistemas complexos e algumas das ferramentas usadas no estudo de sistemas complexos. Em várias tarefas de casa nesta aula, você usará o Netlogo para experimentar e modificar algumas simulações, e se escolher a opção de tarefas de casa avançadas, você fara as suas próprias simulações. No resto desta unidade, Vou mostrar como baixar e usar o Netlogo. Se você não tiver experiência em programação, não se preocupe. Netlogo é fácil de usar e acessível a novos usuários, bem como é útil para experts. No entanto, se você já programou em NetLogo, a estiver familiarizado com ele, pode pular os outros vídeos desta unidade, e ir direto para a tarefa de casa da Unidade 1. Ok, vamos começar. Primeiro, vamos baixar o NetLogo. É grátis, e funciona no Windows, Mac OS, e Linux. Vou abrir um browser, e ir ao site de download, que é: http://ccl.northwestern.edu/netlogo Este link também é nossa página de material do curso Ele abre a página de download, e tem algumas informações sobre o NetLogo. Vou clicar em download. Você pode continuar e fazer o download. Pode entrar sua informação se quiser, é opcional. Ok, estou usando o Mac OS X, então eu baixo, ok. Vou salvar no meu desktop. Então abro este aqui. Ok, Aqui tem uma pasta chamada NetLogo 5.0.3. Se você estiver baixando depois de terem feito uma versão mais nova, pode ser que tenha números maiores, mas eu vou arrastar este para meu Desktop, e me livrar destes dois arquivos de instalação. Agora tenho esta pasta, e nela, tenho este NetLogo 5.0.3, então você vai ver isso, ou possivelmente uma versão mais nova. Este é o arquivo que quero abrir. Esta é a versão bidimensional do NetLogo, há também uma tridimensional, NetLogo 3D, que vamos ver mais tarde. Então, clique duas vezes para abrir, sim quero abrir. Leva um tempinho pra abrir, depende do seu computador. E aí está. Agora vou mostrar como rodar um modelo existente no NetLogo. NetLogo vem com uma livraria de modelos. Pode ir nela indo ao menu "File" (arquivo), e escolhendo "Models Library" (livraria de modelos). Lá você pode olhar todas as diferentes disciplinas e os diferentes modelos de cada uma. Eu vou em biologia, e no modelo "Ants" (formigas), e você pode ler isso, neste projeto há uma colônia de formigas em busca de comida. Cada formiga segue um conjunto simples de regras, A colônia como um todo age de uma forma sofisticada. Vamos abrir esse modelo, ok, então, a primeira coisa a fazer quando você abre um novo modelo é ir aqui em cima no "Info". Note que há um tab "interface", um tab "info", e um para "Code". Então a tab "info" em cima nos diz um pouco sobre o modelo. OK, vamos ver como isso funciona, como usá-lo, algumas coisas a saber sobre o modelo, algumas ideias de como estendê-lo, etc... Você pode olhar. Vou voltar pra interface. E você vai notar que há 2 botões aqui, "Setup" e "Go". Eles aparecem na maioria dos modelos NetLogo, e a primeira coisa que você sempre faz é apertar "Setup". Isso vai configurar uma simulação. Então aqui temos um ninho de formigas, que é esta mancha roxa com este círculo vermelho no meio, que é onde as formigas vivem. Este comando, "slider", aqui, "Population", nos diz que há 125 formigas. E as outras três manchas são pilhas de comida, e o que vamos ver é um gráfico de quanta comida há em cada pilha com o passar do tempo. Então as formigas vão sair do ninho e procurar comida. Vou clicar em "Go" (ir) e você pode vê-las movendo-se. Vou parar o modelo aqui, ao clicar em "Go" novamente, e apontar algumas coisas. Então você vê as formiguinhas se movendo. Elas movem-se aleatoriamente até alguma delas encontrar comida, há este pequeno quadrado aqui, de azul, ou uma das outras pilhas. Então elas pegam a comida e levam de volta ao ninho. Mas conforme elas retornam ao ninho, deixam uma trilha química, chamada de feromônio no mudo real, e outras formigas podem pegar essa trilha. Então, uma formiga deixa uma trilha, como que guiando outras para o lugar onde a comida foi encontrada. Agora essa trilha química se difunde de acordo com esta taxa de difusão, Aqui neste slider, isso significa que elas se dispersam da trilha original pela distância, e evaporam, de acordo com esta taxa. Quando as trilhas evaporam, deixamos de ver uma trilha aqui. Então deixe-me ir um pouco mais devagar, este slider lhe dá a velocidade com que o modelo evolui, então vou clicar "Go" de novo. Vamos um pouco mais devagar aqui, e você pode ver as trilhas sendo reforçadas, evaporando, se difundindo, mas se apenas uma formiga encontrar comida e puder voltar ao ninho, e outras formigas encontrarem essa trilha antes de evaporar, elas podem seguir esse caminho. E você pode ver aqui a comida de cada pilha abaixando. Aqui está a última pilha. Vou deixar mais rápido novamente. E você pode ver as formigas, e vou colocar mais rápido. agora elas estão indo bem rápido. E agora toda a comida se foi, as formigas não têm mais o que procurar, então estão apenas se movendo aleatoriamente. Vou clicar em "Go" para parar, e você pode ver de acordo com este gráfico que as formigas encontraram toda a comida de forma que podemos ver qual é o timestamp, em torno de 900 e poucos períodos. Isso para este conjunto de parâmetros. Na verdade podemos mudar isso um pouco, então o que acontece se nós aumentarmos a população? Vou colocar isso aqui no máximo de 200. Vou clicar em "Setup" novamente, e então "Go". Você vai ver se isso muda o comportamento. Claro, há muita aleatoriedade neste modelo. As formigas estão se movendo aleatoriamente até encontrar comida, e seguem a trilha se encontrarem. E podemos ver que a população é maior, e que parece, pelo menos nesta simulação, que encontraram comida muito mais rápido. Mas como há muita aleatoriedade você deveria repetir estas simulações muitas vezes para poder obter alguma estatística para saber se elas estão encontrando mais rápido quando a população é maior. Uma das coisas legais sobre o NetLogo é que você pode desenvolver esses modelos, e pode fazer experimentos com eles, usando estes componentes da interface para configurar diferentes variáveis. Uma coisa útil que eu devo apontar é este tab "Help" no menu que permite ir a várias fontes de ajuda, particularmente, o Manual do usuário do NetLogo, e o dicionario NetLogo. Se você clicar no "User Manual", ele vai a uma página na internet, que te dá um conjunto de tutoriais de como aprender a programar em NetLogo, e muitas ferramentas de referência. Então deixe-me voltar a ele. Já olhamos atab "Interface". e a tab "Info", então vamos olhar a tab "Code". O código é escrito em linguagem NetLogo de programação, que é sua própria linguagem, muito fácil de aprender. Vamos aprender um pouco sobre isso no curso, não tudo, é claro, pois levaria um curso inteiro só pra isso, mas você vai pegar o espírito do que é escrever esses modelos, e como debugá-los, e como rodá-los. Pra quem tiver interesse, NetLogo é baseado em Java. É escrito em Java, então é isso que está escondido aqui. Mas você não precisa saber isso para usar e programar NetLogo.