Home

Tutorial: Exploração do ambiente NetLogo

image

Contents

1. o Turtles gt set heading random 360 grau variando de 0 a 359 Herilopo mese model HHE niyeon Froese car e em E adm DE Smith Eee FO iee O po FE cid pe lei A Ed E DGE ums ia mamas Command Cami ta as l G W ChE Das ERR Caa LEI h A T gt ast color lims T ser hesding randim 360 z TE CI d marrer E Command Center AAI Es J EAEL Figura 28 Atribui o de dire o 30 Bem agora queremos fazer com que uma turtle fique doente contaminada Simularemos isso mudando a cor de uma turtle estabelecendo uma condi o if who 1 set color red observe o espa o ante e depois do sinal de obs Cada turtle tem uma ID nesse caso espec fico estou chamando a turtle de ID 1 Heilo o hew model Mie Edt Tous Zoom Tabs Help k rise riormat bn Procehnas i Tie hon SSN Sike FE swtch ED coer f Montor FT ma ES Oupa S Tou o gt A mom sie 63x45 Figura 29 Diferenciando um dos agentes usando seu identificador Observe que entre todas as turtles apenas a de ID 1 ficou de cor vermelha Todos esses comandos executados at o momento podem compor o procedimento inicial setup Vamos recapitular o que fizemos ate agora Observer gt crt 100 Turtles gt forward random 100 31 Turtles gt set color lime Turtles gt set heading random 360 Turtles gt if who 1 set color red Na janela principal escolha na barra de ferramenta
2. screen size x Corresponde a 2 x screen edge x y screen size y turtle n mero Para chamar uma turtle especifica back n mero bk n mero Solicita a turtle andar numero passos turtle para tr s random n mero Escolhe um numero randomicamente random 3 Escolhe um valor entre 0 1 e 2 Obs H varia es Comando do tipo de n meros a serem selecionados inteiro Geral float exponencial jump n mero Soita tuesta lt lt heading ngulo right rt ngulo Indica a dire o ngulo para a qual esta a turtle Turtl left lt ngulo adia forward n mero Solicita a turtle andar numero passos turtle para fd 10 frente to procedure name Para iniciar um procedimento end Finaliza um procedimento ask ask patches comando Define vari veis globais deve ser no inicio do programa
3. sempre iniciar com o comando ca na primeira linha do seu procedimento setup assim Untitled Netlogo File Edit Tools Zoom Tabs Help Interface Information Procedures S Fina agf check Procedures to setup ca cet l ask turtles forward random 1l10 set color lime set heading random 360 i who et color red Figura 32 Defini o de procedimento 33 Para facilitar ainda mais nosso trabalho ao inv s de digitar todas s vezes o comando setup para executar o procedimento vamos criar um bot o para disparar esse procedimento conforme apresentado na se o 6 Voltamos para a janela principal e selecione na barra de ferramentas a op o Interface clique sobre o button em seguida clique em qualquer lugar da tela branca aparecera o bot o e uma janela para descrimina o do mesmo File Edit Tools Zoom Tabs Help Interface Information Procedures Eat Delete ax Button BEE Sider g switch EA chooser ES Montor J Piot EI Output GM Text yos TR P GS More size 63x 45 E A Editing Button Agents Observer v Comman ds Action key Force display update after each run Checking this box produces smoother animation but may make the button run more slowly Commana Center 121 12 SEU CULUL LIme T gt set heading random 360 T gt if who 1 set color red v T gt
4. d marrer E x er a Mini curso NetLogo E L amp H Power Transla E Ae AESA UOL Houaiss Micr Figura 33 Uso de bot es Escreva setup no box chamado comando da caixa Editing Buton em seguida clique OK Agora teste o procedimento para ver o que ocorre teclando no bot o setup Observe que nesta caixa de dialogo voc pode especificar o s comando s a serem executados e pode nomear o bot o com o nome que achar mais conveniente para acionar o seu procedimento poss vel alterar o tamanho da tela de exibi o para isso clique com o bot o direito do mouse sobre a tela preta e selecione Edit Assim poss vel alterar o tamanho da tela Para mover a tela ou qualquer um dos bot es colocados na interface basta clicar sobre ele com o bot o direito do mouse e escolher select e arrastar para o local desejado Procedimento id ntico para parar a sele o ou editar 34 7 2 Criando novos procedimentos Dando sequ ncia ao problema proposto mencionamos que os habitantes da comunidade movimentavam livremente e interagiam uns com os outros Assim vamos agora criar procedimentos para dar movimento go aos agentes e se quiser parar a execu o Queremos definir um procedimento que fa a nosso modelo interagir v rias vezes Voltemos para a rea de procedimentos B i i Untitled NetLogo mj ES File Edit Tools Zoom Tabs Help Interface Information Procedures SD Find agf check Procedures E
5. o f sico definido pelo tabuleiro do NetLogo e os seus habitantes s o os agentes que se deslocam livremente sobre este Em seus percursos aleat rios os habitantes se encontram e interagem uns com os outros Enquanto todos gozam de bom estado f sico suas intera es n o desencadeiam nenhuma desarmonia na comunidade Por m vamos supor que um dos agentes desta comunidade seja infectado por um corpo estranho a este ambiente Os agentes desconhecendo o fato continuam se deslocando livremente sobre o ambiente e interagindo uns com os outros Entretanto a cada encontro do agente infectado com um agente sadio este infectado 21 Num processo cont nuo podemos prever que essa contamina o se alastrar por toda comunidade num r pido crescimento caso n o seja combatida esse modelo que pretendemos descrever no nosso ambiente de simula o 7 1 1 Desenvolvendo o modelo O espa o f sico do micro mundo j est definido tabuleiro do ambiente NetLogo Vamos definir a popula o que habita essa comunidade Neste caso necess rio estabelecer um n mero de habitantes No ambiente NetLogo esse procedimento realizado como segue Na janela do comando central criamos 200 turtles supondo que nossa comunidade tenha 200 habitantes Do CcrvEr gt rC 200 Todas as turtles criadas est o posicionadas uma sobre a outra no ponto 0 0 da tela Elas s o iniciadas com uma variedade de cores Te tE re Fer
6. padr o e write valor resulta em valor Exemplo observer gt type shape of turtle 10 resulta em default string com aspas se a turtle 10 tem a forma padr o Estes comandos podem ser usados com qualquer express o que possa ser avaliada pelo NetLogo e resultar em um numeral string lista valor l gico constante Experimente e observe os resultados de observer gt show 10 observer gt type sky CR gt representa Carriage Return retorno de carro ou seja quebra de linha 17 observer gt print Jo o e Maria observer gt type Jo o e Maria observer gt write Jo o e Maria observer gt show sky blue observer gt write sky 95 0 observer gt write yellow observer gt type turtles at 1000 1000 Experimente enviar estes mesmos comandos atrav s dos agentes turtles e patches e observe em que diferem os resultados 5 Biblioteca NetLogo Quando desejamos analisar um modelo pronto basta abrirmos a biblioteca de modelos selecionando o menu File op o Models Library que abre uma nova janela Figura 17 que disponibiliza uma rela o de modelos em v rias reas arte biologia qu mica ci ncia da computa o ci ncias da terra entre outros Cada modelo da biblioteca traz instru es sobre o mesmo qual seu objetivo como utilizar o que pode ser observado etc NetLogo new model File Edit Tools Zoom Tabs Help Interface Information Procedures 2 k ac
7. turiles patches observer can actually run each command consult each individual entry in the dictionary Turtle related back bk BREED at BREFL here BREED on clear turtles ct create BREED create custom BREED create custom turtles cct create turtles crt die distance distance nowrap distancexy distancexy nowrap downhill downhill4 dx dy forward fd hatch hatch BREEO hideturtle ht home inspect is turtle jump left lt myself no label nobody of other turtles here other BREED here patch ahead patch at heading and distance patch here patch left and ahead patch right and ahead pen down pd pen up pu right rt self set default shape sety shapes showturtle st sprou sprout BREED stamp subtract headings towards towards nowrap towardsxy tovvardsxy nowrap Jus Internet Figura 5 Dicion rio de primitivas da programa o NetLogo Para cada comando no dicion rio h uma indica o gr fica de quem pode us los A indica o dos comandos de utiliza o do observer semelhante a um olho Figura 6 Os comandos de utiliza o das turtles s o representados por uma tartaruguinha verde MK e os comandos de uso dos bd patches s o representados por um quadradinho vermelho Figura 7 neighbors4 clear all E ca neighbors neighborsd4 clear all Pr Reports an agentset containing th neighbors y Resets all global variables tc ashor sm walues Erom ne igh Output 2 printa the total nur
8. Button SEE Sider oa switch E Chooser ES Monitor Plot AOS E De GSE More si Models Library E Sample Models Art E C Biology E C Chemistry amp Physics E C Computer Science Cellular Automata amp Dining Philosophers Pairnted Desert Challenge Turing Machine 2D amp Wandering Letters C Earth Science C Games C Mathematics C Social Science A Curricular Models E E EACH C GasLab C ProbLab his project is based on the model called Termites In ermites the agents follow a set of simple rules that y results in them moving all ofthe wood chips into a Go to User Community Models web page Com m I E E E E E E E v o gt Figura 17 Biblioteca de modelos NetLogo Para visualizar algum modelo basta selecion lo para que este fique pronto para execu o interessante antes da execu o ler a pasta de 18 informa o para saber como o modelo funciona suas caracter sticas como usar o que pode ser observado Geralmente os modelos apresentam dois bot es b sicos bot o setup que utilizado para iniciar o modelo e o bot o go para que o modelo seja executado Se tiver sido selecionada a op o forever as instru es associadas com o bot o s o executadas repetidamente caso contr rio s o executadas uma nica vez por clique Os modelos podem trazer tamb m bot es de controle e visualiza o de par metros e informa es Slider Switch Cho
9. a primitiva with permite a defini o do que o NetLogo chama de AgentSet Note que turtles e patches s o os AgentSets b sicos da linguagem mutuamente exclusivos entre si e portanto n o podem ser misturados num mesmo AgentSet NetLogo apresenta tamb m comandos considerados rep rteres que na pr tica facilitam a contagem de elementos em um AgentSet O rep rter mais 16 b sico o comando count Por exemplo podemos contar quantas turtles existem atrav s do comando count turtles ou contar quantos patches s o azuis com o comando count patches with pcolor blue Se voc tentou estes comandos rep rteres deve ter recebido mensagens de erro do tipo ERROR Expected command ou seja comando esperado Isso porque devemos indicar de maneira expl cita que o resultado deve ser mostrado H quatro comandos distintos para indicar ao NetLogo que algum resultado deve ser mostrado na janela de comandos e show valor resulta em agente chamador valor lt CR gt Exemplo observer gt show count turtles resulta em observer 0 lt CR gt se nenhuma turtle foi criada ainda e print valor resulta em valor lt CR gt Exemplo observer gt print count patches with pcolor blue resulta em 20 lt CR gt n o precedido de observer se h 20 patches azuis e type valor resulta em valor Exemplo observer gt type shape of turtle 10 resulta em default string sem aspas se a turtle 10 tem a forma
10. escrever alguns conte dos nele usando os comandos output valor para relembrar a diferen a entre print show type e write Varie o envio pela janela de comandos ou associado a bot es 26 f Desenvolvendo uma atividade com NetLogo Vamos desenvolver uma atividade com o NetLogo para simular uma epidemia Antes de desenvolver qualquer atividade importante ter claro gt a que proposta o modelo servir gt pretende auxiliar na explora o de um novo t pico ou entender melhor um fen meno que esta sendo observado gt ele servir para mostrar alguma id ia da qual esteja pensando ou descrever sobre dados coletados A resposta a essas e muitas outras perguntas s o v lidas para se construir um modelo Normalmente consideramos epidemia algo ou doen a que se alastra rapidamente Como doen a essa geralmente infecciosa e de car ter transit rio atacando simultaneamente um grande n mero de pessoas de uma determinada localidade Geralmente ocorre da seguinte maneira primeiro alguma pessoa contrai a doen a e atrav s do contato dessa com outras pessoas h uma dissemina o do problema Atrav s desse modelo muitas rela es podem ser exploradas o car ter interdisciplinar do problema aspectos biol gicos matem ticos sociais entre outros 7 1 Criando um exemplo Epidemia nome do nosso projeto Estamos observando nosso micro mundo que est sendo representado por uma comunidade cujo espa
11. inicial de turtles infectadas usando bot es de controle para isso Experimente Modelo Epidemia2 veja o modelo em execu o 39 Obs At este momento programamos a simula o para parar quando todos os agentes forem infectados epidemia Netlogo C Documents and Settings ivialMeus documentostartigo com Credinelversoes finai Pex Fie Edit Tools Zoom Tabs Help Interface Information Procedures abc Button SE siger Jor Swich ET Chooser E Monitor o Plot Output Sea Text F inicio modelo distribui ao E 4b O gt epi agentes Movimento acionado pelo observador Movimento acionado pelo Re agente turtles N mero de agentes interagindo no modelo Epidemia a DJ ha o N infectados tempo OO agentes infectados 136 Command Center Figura 39 Adicionar mais bot es na rea de trabalho 7 3 Coment rios Bem da forma como o problema foi abordado at o momento a tend ncia que a epidemia se alastre e infecte toda a popula o Entretanto muitas outras quest es podem ser levantadas baseada neste problema por exemplo uma vez que se detecte uma epidemia que m todos podem ser adotados para combat la importante salientar que n o pretendemos que o problema termine simplesmente com a infec o de toda a popula o isto seria um modo muito simplista de encarar o problema Algumas alternativas para combater o problema poderiam
12. linguagem de programa o do NetLogo apresenta v rios recursos tais como atribuir diferentes formas shapes para as turtles os modelos podem ser selecionados na biblioteca do ambiente ou criados pelo pr prio usu rio atrav s de uma janela de edi o de modelos definir diferentes esp cies breeds para as turtles que tenham comportamentos diferenciados Por exemplo definidas as esp cies denominadas lobo e ovelha atrav s da programa o poss vel escrever uma regra que fa a o lobo comer as ovelhas Essa diferencia o das esp cies faz tamb m com que o modelo fique visualmente mais atraente e esclarecedor Ainda com rela o programa o o NetLogo disp e de uma caracter stica diferenciada dos demais ambientes da mesma categoria que denominada Agentset que permite definir um conjunto de agentes Um Agentset pode conter tanto turtles quanto patches mas n o ambos ao mesmo tempo O que importante no conceito de Ageniset que ele possibilita construir conjuntos de apenas algumas turtles ou patches com regras espec ficas Por exemplo todas as turtles com ID divis vel por cinco ou todos os patches com pxcor valor da coordenada x par 3 Instala o do ambiente NetLogo Para baixar download os arquivos de instala o do Netlogo basta ir ao site http ccl northwestern edu netlogo No site h explica es do equipamento e sistema requerido para instala o do pacote O sistema
13. o para Windows o Manual do Usu rio fica localmente acess vel a partir do arquivo PastaLocalNetLogo docs index html A vers o on line e mais recente desse manual pode ser acessada em http ccl northwestern edu netlogo docs O manual apresenta informa es gerais FAQ Frequently Asked Questions tutoriais e guias de refer ncia sobre a interface e a programa o NetLogo Al m disso oferece um dicion rio das primitivas dispon veis para interagir com o NetLogo e para a constru o de programas na forma de uma extensa rela o de comandos vari veis internas padr o dos agentes palavras chave e constantes Faremos uma breve apresenta o do conte do deste dicion rio no Ap ndice A apresentamos uma rela o de comandos mais utilizados A Figura 5 apresenta a tela inicial do dicion rio de primitivas E NetLogo User Manual Microsoft Internet Explorer rquivo Editar Exibir Favoritos Ferramentas Ajuda O Endere o http ffccl northwestern edufnetlogofdocs NetLogo Primitives Dictionary User Manual version 2 1 December 13 2004 NetLogo User Manual Categories Turtle Patch Agentset Color Control Logic Display HublNet Input Output Files List String Math Plotting Movie Special Yariables Keywords Constants AA This is an approximate grouping Remember that a turtle related primitive might still be called by patches or observers and vice versa To see which agent
14. os agentes do modelo Vari veis l gicas podem assumir os valores true verdadeiro quando swich On ou false falso quando switch Off Para criar um switch clicamos em e em seguida na rea de trabalho Isso abrir a caixa de di logo Switch Figura 21 que permite definir o nome da vari vel l gica global associada ex LimparAntesDeCriarNovas Par metros l gicos vari veis podem ser usados como crit rio de decis o sobre a execu o ou n o de partes do modelo quando usadas em associa o com o comando condicional if condi o comandos que significa que os comandos somente ser o executados se a condi o for verdadeira File Edit Tools Zoom Tabs Help TT 4 z Interface Information Procedures Global variable Limpar amp ntesDeCriarNovas Command Ceni rr Fa ohbzerver gt Y E 1 Figura 21 Cria o de switch para controlar par metros l gicos Ap s criar um switch como o da Figura 18 modifique o Bot o Teste original Figura 16 substituindo ca por if LimparAntesDeCriarNovas ca Isso far com que os comandos entre colchetes no exemplo ca sejam 22 executados apenas se o valor de LimparAntesDeCriarNovas for verdadeiro switch On Experimente criar switches para controlar outros par metros l gicos do modelo lembre se de modificar os comandos nos respectivos bot es Par metros associados a switches tam
15. poder trabalhar em qualquer plataforma na qual esteja instalada a m quina virtual Java JVM Java Virtual Machine vers o 1 4 1 ou superior Na vers o para Windows existe a op o de baixar o pacote que j inclui a JVM necess ria o que mais recomendado para usu rios menos experientes Sugerimos que seja escolhida a vers o 3 0 recomendada JVM 1 4 2 08 com novas caracter sticas e a mais atual at o momento F Download Netlogo Microsoft Internet Explorer grquivo Editar Exibir Favoritos Ferramentas Ajuda O onddPHOB pa LB MetLogo 3 0 v Figura 1 P gina de download do NetLogo O pacote de instala o inclui todos os m dulos necess rios o que permite uma r pida visualiza o dos elementos instalados Figura 2 e a consulta local documenta o do programa Meilogo 2 0 Aho Egis Exibir Emeortos Forramentos guia 3 APE Eghan de pray ainas Nellogo 3 0 TE r dcinibes l 1 01 gt Perspartame m ample Findeks ge Meda mundo Egas E Bando C Chemistry amp Presos Netloga 3 ese i T pin E LS Exrth Seeron E im i i s Nelloga 3 0k NAS a MetLogo J 0l Figura 2 Pacote NetLogo instalado Imediatamente ap s a instala o do ambiente poss vel come ar a LA trabalhar sobre ele Quando o NetLogo iniciado a Interface principal apresentada Figura 3 Nesta janela poss vel visualizar a execu o dos modelos de simul
16. 1 para come ar crie apenas alguns cupins e o material para ser deslocado Implemente esse exemplo no NetLogo Fa a uso das facilidades do NetLogo para varia es de par metros contadores exibi o de gr ficos etc 41 2 fa a varia es no modelo incluindo as diferentes castas e as fun es de cada uma D forma diferente para cada um dos representantes da casta Analise o modelo Observe o comportamento que emerge dessas intera es comando manual Modelo 1 comando manual Modelo 2 com procedimento Modelo 3 com procedimento e apenas uma esp cie Modelo 4 com procedimento e duas esp cies trabalhando Modelo 5 8 2 Aprisionamento Suponha que exista um territ rio livre onde est constru do um castelo habitado por um monstro hostil que aprisiona todos os invasores que por l apare a um mago poderoso e inofensivo ao ataque do monstro que transita livremente pelo territ rio e her is destemidos que ficam desafiando o monstro tentando entrar e sair do castelo sem o monstro perceber O castelo tem apenas duas aberturas por onde o mago e os her is podem passar O mostro c rcere permanente do territ rio isto ele n o pode ir ao mundo exterior O mago fica transitando livremente pelo territ rio e libertando os her is aprisionados Ap s o inicio do jogo um novo her i s surge se todos os demais estiverem aprisionados O movimento das criaturas aleat rio Construa esse modelo e obser
17. TIO to do ask turtles 1 comando da turtle right random 40 virar para direita randonicamente 40 0 a 39 left random 40 virar para esquerda randomicamente 40 0 a 39 forward 1 z para frente 1 passo wait 0 05 esperar 5 cent simos de segundo end Figura 34 Defini o de procedimento de movimento da mesma forma vamos criar o bot o go A nica diferen a que selecionaremos o cone forever para tornar o modelo numa execu o sem interrup o Esse mesmo movimento pode ser acionado pelo agente turtles com pequena modifica o na forma de acionar pois sendo um movimento descrito pelo pr prio agente n o h necessidade de usar o comando ask ficando 35 Untitled Netlogo File Edit Tools Zoom Tabs Help Intertace Information Procedures BP Find agf check Procedures right random 40 virar para direita rcandonicamente 40 0 a 39 left random 40 virar para esquerda randomicamente 40 0 a 39 forward 1 para frente 1 passo wait 0 05 esperar 5 segundos Figura 35 Mesmo comando da janela anterior porem chamado pelo agente turtles Criando o bot o go conforme item anterior de gera o de bot o File Edit Tools Zoom Tabs Help Interface Information Procedures PE F Delete ac Button BE Sider JA switch E Chooser ES Montor Plot FEI Output Goa Text UOS gt 3 ce 3 setup IE GO ER Editing Button Ag
18. Tutorial Explora o do ambiente NetLogo Edit a0 j Eait 30 Beatriz Corso Magdalena beamag terra com br Credin Silva de Menezes credine minf ufes br Edilson Pantarolo edi mpb cefetpr br L via Lopes Azevedo Iivia dcpd ufmt br Indice INFO QU O span ais o o A a 3 2 Ambiente de programa o NetLLOS O assis as Rea Edo LIES OR baga EaD E da DESEN a ns ndo 3 21 Proorama o cm NGLLODO aa paia aii Aa 4 S Anstala o do ambiente NetLOSO rreren con paia digna GRE 4 PIO STA ACAO Passo a PASSO nior a A E a 7 5 DIONG CA NILO pO niera one E EAE E EEE E E A 17 O Pementos deine aCE ei aa A a a 18 O DIO reni T A a 18 O MICO E E DR GR 19 CON a a E A ae 21 E E E E E T N E E T A EA A E E A T 22 0S MONOT iea O ON 23 OO DONT e a MID RD SER SIR RS APR 24 PAR ed GR NR RR T EA RONCO RO E 25 6S CUL DUM is E E a NE 25 7 Desenvolvendo uma atividade com NetLogo eeeeereeeeererereeeeeea 26 7 1 Criando um exemplo Epidemia nome do nosso projeto 26 Td Desenvoly endo o Modelo asa NAL SED Da GOES 2 T2 Orlando Novos procedimentos sus netissa e a ad 34 TACOMA OE ceranae Aonde Ls ea sf 39 8 Problemas para desenvolvimento posterior nsessseseseeennssssssseeeenessssssreeresssssssse 40 Sle COLOnIardo CUPS nense ni E e 40 SL APES TOR ANACI TO 3d as its ns Dt po Dt RS S 41 E de ADI O a a a D Da 41 9 gt Recursos avan ados do NECLO SO aa ata niveis Ea E EA 42 XE xperimentos Contro
19. a o baseada em agentes Na parte inferior da janela encontra se a palheta Command Center que permite a edi o de comandos Para executar mais de um comando basta escrev los na sequ ncia separados por espa o Untitled NetlLogo File Edit Tools Zoom Tabs Help Interface Information Procedures EB abc Button FE Sider P8 switch BE Chooser ES Monitor plot FE Output o E gt is Ea so Command Center observer gt ca crt 10 ask turtles fd 5 set color red observer Figura 3 Tela inicial do ambiente Netlogo 4 Programa o passo a passo Agora vamos experimentar fazer um modelo usando comandos simples Para fazer isso selecionamos File seguido de New Feito isso abrir a tela principal com a janela gr fica e a janela de comandos Command Center A janela gr fica serve para visualizar as criaturas turtles e a base do ambiente patches que elas habitam enquanto a janela de comandos utilizada para digitar as instru es a serem executadas pelos agentes turtles e patches Command Center Esta janela aceita os comandos em tr s contextos definidos pelo Observer definidos pelas Turtles e definidos pelos Patches Observe que a janela de comandos possibilita para o usu rio uma das tr s op es atrav s de um menu drop down Figura 4 Command Center o Observer mm Turtles Figura 4 Janela de comandos destaque agentes Segundo a instala o padr
20. ais b sicos do ambiente e da linguagem de programa o Entretanto medida que voc for se familiarizando com o NetLogo poder sentir a necessidade de explorar recursos mais avan ados Em seguida abordaremos ainda que de maneira bastante superficial alguns recursos e formas avan adas de utiliza o do NetLogo que consideramos mais importantes Estes e outros recursos avan ados est o detalhados no Manual do Usu rio NetLogo http ccl northwestern edu netlogo docs 9 1 Experimentos controlados Imagine que tenhamos um modelo de simula o com tr s par metros que possam variar de 100 valores distintos cada Isso d 1 milh o 100 de combina es Algo praticamente imposs vel de testar uma a uma O NetLogo oferece uma ferramenta acess vel atrav s do menu Tools op o BehaviorSpace para automatizar a constru o e execu o de experimentos controlados Atrav s deste recurso possivel determinar de que forma variar os par metros de um modelo por quanto tempo insistir em cada 43 combina o ou outra condi o de parada ou mesmo quantas vezes o mesmo experimento deve ser repetido 9 2 HubNet O recurso HubNet possibilita a autoria e aplica o de atividades de simula o participativa na sala de aula ou laborat rio de inform tica Esta ferramenta acess vel atrav s do menu Tools op o HubNet Control Center transforma o NetLogo em um servidor de simula es que funciona numa rede de
21. b m s o acess veis atrav s da janela de comando Por exemplo como observer digite show LimparAntesDeCriarNovas 6 4 Chooser Um chooser define uma vari vel global a qual atribu do o valor selecionado pelo usu rio em um menu drop down lista de sele o desdobr vel Para criar um chooser clicamos em e em seguida na rea de trabalho Isso abrir a caixa de di logo Chooser Figura 22 que permite definir o nome da vari vel global ex Forma e uma lista de op es que o menu apresentar separadas por espa os ou linhas ex circle square triangle default Podemos testar o chooser Forma modificando no Bot o Teste os comandos crt NumeroDeCriaturas para cct NumeroDeCriaturas set shape Forma gt Fie Edit Tools Zoom Tabs Help E E e e r Interface Information Procedures eat f Delete ax Button F sider Foi Switch P Ect im T Bot o Teste Global variable Forma Choices Toircle aqguare eriangle default ai Command Center example SEG SAS Dhserver gt Figura 22 Cria o de chooser para controlar listas de par metros 6 5 Monitor Um monitor mostra o conte do din mico de uma vari vel um rep rter ou uma express o composta Para criar um monitor
22. clicamos em ES Monitor 6 em seguida na rea de trabalho Isso abrir a caixa de di logo Monitor Figura 23 que permite definir e a vari vel rep rter ou express o que ser avaliada e cujo valor ser mostrado ex count turtles with pxcor lt 0 e o nome do monitor ex Turtles na metade esquerda da tela e se num rico decimal quantas casas decimais devem ser consideradas Para observar a mudan a din mica de Turtles na metade esquerda da tela podemos por exemplo criar um bot o de comando go para os agentes turtles do tipo forever com os comandos rt random 360 fd 1 24 lalis File Edit Tools Zoom Tabs Help pa E Interface Information Procedures Fi Eit Delete ate Button SEE Slider Rm chooser BS monitor M Plot EE OS mi ag cor 50 Em E Reporter count turtles with p cor 0 E L Seea m C ES aji E gt E i COD Display name Turtles na metade esquerda da tela NE Com Decimal places 0 ear RR patch Figura 23 Cria o de monitor para mostrar valores de express es 6 6 Text Um elemento text apresenta um texto est tico na rea de trabalho Utilizamos esse recurso para tornar mais clara e explicativa a interface de um trabalho Isso abrir a caixa de di logo Text Box Figura 24 na qual digitamos a mensagem de texto a ser apresentada 25 File Edit Tools Z
23. computadores em arquitetura cliente servidor Atrav s do HubNet o professor pode disponibilizar simula es em que cada parte do modelo par metros agentes etc seja controlada por um aluno atrav s de seu computador ou mesmo por um modelo espec fico de calculadora A biblioteca de modelos do NetLogo 3 0 traz na pasta HubNet Computer Activities alguns exemplos de simula es formatadas para a arquitetura HubNet 9 3 Extens es O ambiente NetLogo foi projetado de maneira que podem ser anexadas extens es ao programa b sico Desta maneira podem ser adicionados novos recursos ao programa e comandos linguagem de modelagem Na pr tica uma extens o um arquivo jar java archive com determinadas caracter sticas Usu rios de NetLogo podem usar uma extens o indicando no in cio do programa a cl usula extensions NomeDaExtens o jar Programadores da linguagem Java podem escrever novas extens es para o NetLogo atendendo s especifica es descritas na documenta o Extens es podem acrescentar caracter sticas interessantes por exemplo GoGo uma extens o que permite conectar o NetLogo ao mundo f sico atrav s de uma placa de baixo custo que voc mesmo pode construir Esta possui 8 portas para sensores e 4 portas para atuadores Esse recurso tem in meras aplica es educacionais como rob tica meio ambiente automa o de laborat rios entre outras Informa es sobre a placa GoGo e projetos
24. do random one of escolhe um agente aleat rio que esta sobre o patch turtles here Se o agentset esta vazio retorna nobody caso contr rio pinta a turtle de vermelha Suponha que quis ssemos ver a expans o dessa epidemia em fun o do tempo Vamos tra ar um gr fico para acompanhar os valores Sobre a barra de ferramentas clique sobre o bot o Plot em seguida clique em qualquer lugar da tela branca para criar o espa o do gr fico NetLogo new model File Edit Tools Zoom Tabs Help Interface Information Procedures P Edit F Delete ac Button BEE siger PSY switch E Chooser BS Montor Plot E Output Gra Text Editing Plot Name 5 X axis label Xmin 0 0 X max 10 0 Y axis label Y min 00 y max 10 0 Autoplot Plot Pens Choose Pen to Edit default Color fx black Vi Mode Line Interval 1 0 7 Show in Legend Custom Color a Command Center w EIE i lt 4 d marrer C MSN Messenger Lil Mini curso NetL ED L amp H Power Tra A https ffeclnort A UOL Houaiss A NetLogo User Figura 37 Montando o bot o go vamos preencher os dados Vamos dar um nome para esse gr fico Epidemia No eixo x colocamos o tempo no eixo y as turtles n de turtles Escolha a cor da linha do gr fico e o modelo de gr fico linha barra ponto Escolha o nome para o qual deve aparecer na legenda atrav s do comando plot pen Vamos ao procedimento go
25. e no exemplo turtles e do bloco de comandos entre colchetes no exemplo forward 10 Cada turtle ou patch tem uma posi o no seu ambiente disposta em coordenadas cartesianas O centro do ambiente tem coordenada 0 0 Como no plano cartesiano o eixo horizontal denominado eixo x e o vertical eixo y No NetLogo a dist ncia do meio at a extremidade direita ou esquerda chamada de screen edge x a dist ncia do meio aos extremos superior ou inferior chamado de screen edge y Na Figura 14 temos do centro at as extremidades direita e esquerda a dist ncia 3 do centro aos extremos superior e inferior a dist ncia 2 14 pace nn Screen Ed pe Y Screen Edge X CC poeem Ban Screen Edge Y Figura 14 Dist ncias screen edge da tela gr fica NetLogo Podemos tamb m criar turtles customizadas atrav s do comando create custom turtles N comandos ou cct turtles N comandos Desta forma s o criadas N turtles e os comandos s o executados por cada turtle rec m criada Por exemplo se desejamos criar 50 turtles com a forma de um circulo e a cor verde podemos fazer como observer create custom turtles 50 set shape circle set color green ou cct 50 set shape circle set color green Neste exemplo notamos que circle o nome entre aspas de uma forma b sica presente na biblioteca de formas Figura 15 acess vel pelo menu Tools op o Shapes Editor E notamos ainda que green uma c
26. e e e o A e ham Ef os E res Ec Fo a ES cup ET tes LEAN TEA ass rem is observer ca A observer crt 200 Figura 25 In cio modelo 28 Agora clicando sobre o Observer gt na janela de comando lado esquerdo e selecione Tutles gt porque queremos direcionar os comandos para serem executados apenas pelas turtles criadas Assim o pr ximo comando Turtles gt forward random 100 fd random 100 esse comando far com que todas as turtles andem para frente um n mero rand mico de O a 99 Feito isso podemos ver as todas as turtles Para cada turtle atribu do um valor rand mico para o movimento Para melhor aproximar do modelo e dar uma melhor visualiza o do que pretendemos simular precisamos fazer com que toda a popula o apresente a mesma caracter stica Faremos com que todos os agentes sadios tenham a mesma cor Pis Di To Tom Tabs belo miraion Prod CRIE o nes Elos Es Ecos o ma ES oup GS es Toe i e ia aa Figura 26 Distribui o agentes Veja o que ocorre se fizermos Turtles gt set color lime continuamos no comando de Turtle NatLopo new model te Edi Tod dem Tans et nene pnoreto Frocedres o hton SUF swe E smen Focos Fm pot ES cms EM Text EO E E mer size mona 4 d marrer Figura 27 Atribui o de cor Com o comando set heading n N o grau do giro faz com que as turtles girem para uma nova dire
27. ear patches clear drawing clear all plots e clear output respectivamente O comando clear turtles destr i todas as turtles existentes O comando clear patches reinicia todos os patches para seus valores iniciais cor preta inclusive Vamos criar agora algumas turtles Essa possibilidade tamb m reservada ao observer Digite create turtles crt seguido de um n mero create turtles 20 ou crt 20 para criar 20 turtles Observe que aparecer no meio da tela gr fica um ponto pois todas as turtles criadas est o amontoadas uma sobre as outras cada uma voltada numa dire o Figura 12 Na sequ ncia para visualizar as turtles vamos fazer com que elas andem para frente dez passos de turtle Na janela de comando para turtle digite forward 10 ou fd 10 Observe que as turtles criadas s o de v rias cores e ao andarem para frente todas juntas formaram um c rculo o que realmente mostra que cada uma est voltada para uma dire o Figura 13 13 LUmeitiod Meti ago Fe A ud ba Tia et Figura 12 Criando as tur les Figura 13 Movendo as turtles Caso queiramos que o observer defina o comando para as turtles executarem basta digitarmos na janela de comando do observer ask turtles forward 10 para que andem dez passos para frente Sempre que o observer deseje solicitar comandos para serem executados pelas turtles ou patches devemos seguir esta forma a primitiva ask seguida dos agentes a que se refer
28. educacionais desenvolvidos com ela em www gogoboard org A op o HubNet Control Center somente fica dispon vel se o modelo aberto estiver configurado para arquitetura HubNet 44 9 4 Modelagem da din mica de sistemas Na abordagem baseada em agentes programamos as regras de comportamento individual de agentes que ao interagirem produzem um sistema din mico Diferentemente a Din mica de Sistemas um tipo de abordagem em que programamos o comportamento de cada popula o como um todo para observar como duas ou mais popula es se auto influenciam NetLogo oferece uma ferramenta acess vel atrav s do menu Tools op o System Dynamics Modeler que nos possibilita construir um diagrama que relaciona popula es stocks din micas e como elas afetam umas s outras A biblioteca de modelos do NetLogo 3 0 traz uma nova vers o do exemplo do sistema din mico presa predador entre lobos e ovelhas no qual poss vel comparar a modelagem baseada em agentes com a modelagem baseada em Din mica de Sistemas 45 Ap ndice A Rela o de comandos NetLogo observador xcor ycor Especifica as coordenadas x e y para turtles count count turtles with color Conta o n mero de agentes com condi o solicitada Turtles blue patches count patches with pcolor 45 color Atributo de cor dos agentes turtles screen edge x Apresenta as distancia nos eixos x e y screen edge y respectivamente da origem aos extremos da tela
29. ent s Observer v Forever Commands co Display name Action key Force display update after each run Checking this box produces smoother animation but may make the button run more slowly vi Command Center A d d marrer E x MSN Messenger Eh Mini curso NetLogo E L amp H Power Translat httpsffeclnorthwest UOL Houaiss Micro NetLogo new model Figura 36 Idem figura 33 Teste o modelo usando os bot es setup e go veja o que acontece Para parar o movimento basta clicar no bot o go novamente 36 Queremos agora criar uma turtle que esteja contaminada Vamos supor que a turtle de ID 1 esteja contaminada para diferenciar essa das demais vamos mudar a sua colora o tornando a de cor vermelha Esse procedimento realizado atrav s da condi o 1f who 1 set color red Feito isso a turtle vermelha apresenta infectada em rela o as demais turtles Toda a popula o esta se movimentando no ambiente inclusive a infectada Com essa intera o simulando uma epidemia Para que isso ocorra vamos estabelecer a seguinte condi o a turtle vermelha infeta outra quando essa cruzar o seu caminho para isso usamos o comando do NetLogo para definir essa express o 1f color red set color of random one of turtles here red colocaremos esse comando na primeira linha abaixo do comando forward 1 do procedimento go Teste o experimento novamente e veja o que acontece O coman
30. esmos comandos combinando as diferentes possibilidades de agente executor forever ou n o com ou sem tecla de atalho e teste os observando como e quando funcionam Em seguida experimente criar bot es para execu o de comandos diferentes por exemplo alguns dos comandos que voc treinou atrav s da janela de comandos Se o 4 gt ES Fie Edit Tools Zoom Tabs Help Interface Information Procedures dc Button SEE Siider OL Switch ET Chooser P Monitor A Plot as e RE j Button x He EE gei a0 F Egt Delete CE 20 ask turtles fd 5 Display name Bot o Teste Action key S z Force view update after each run Checking this box produces smoother animati Command Cente E observer Figura 19 Cria o de bot es de comando 6 2 Slider Um slider define uma vari vel global acess vel a todos os agentes do modelo Geralmente esta vari vel usada para variar par metros do modelo sem a necessidade de reescrever os comandos Vamos criar um slider para variar o n mero de turtles criadas Para isso clique em e em seguida na rea de trabalho isso abrir a caixa de di logo Slider Figura 20 que permite definir 20 e nome da vari vel global associada ao slider ex NumeroDeCriaturas e os valores m nimo e m ximo que a vari vel pode assumir e o incremento ou varia o ex m nimo de 5 e m ximo de 20 variand
31. lados ssa na SS 42 9 2e 5 BA RAR RA ER DR RR RU RO SR RD 43 2 EXTENSOS ani pras a Aa E E N RE 43 9 4 Modelagem da din mica de sistemas sra isascan sas saG aaa Is assa asLisas Mac ER ins 44 Apondice o RR ADE RE RR AR RD PARRA RR OR RR RR OR MR 45 Este tutorial foi baseado no tutorial dispon vel na homepage do NetLogo acesse http ccl northwestem edu netlogo 1 Introdu o Um importante tipo de simula o a agent based modeling modelagem baseada em agentes Esse tipo de simula o caracterizado pela exist ncia de muitos agentes interagindo uns com os outros com pouca ou nenhuma dire o centralizada A propriedade de intelig ncia emergente do modelo baseado em agentes surge durante o processo de intera o de baixo para cima bottom up e n o do sentido de cima pra baixo top down Atrav s da modelagem baseada em agentes poss vel observar como os agentes individuais pessoas bact rias insetos na es ou organiza es interagem entre si e com seu ambiente A simula o no computador ent o usada para descobrir propriedades do modelo e assim ganhar entendimento dentro de um processo din mico o que seria muito dif cil de modelar com t cnicas matem ticas padr es Em fun o disso importante dispor de ferramentas capazes de criar no computador simula es de fen menos complexos e modelos descentralizados Existem v rios ambientes de programa o especificamente projetados
32. nbhbe 2 patches around the cal ask neighhors4a etrypcaolor clear all plots 2 turns the four neigho o Figura 6 Comando observer Figura 7 Comando turtle patch Vamos come ar com alguns comandos Escolha para enviar os comandos os agentes patches Assim de volta a janela principal do NetLogo vamos a janela de comandos e digitamos set pcolor pxcor pycor Observe o que acontece Figura 8 Untitled NetLogo File Edit Tools Zoom Tabs Help Interface Information Procedures f Eat Dee ac Button SEE Sider oa switch E Chooser BS Montor plot FEI Output SoM Text da ALE E Command Center patches gt set pcolor pxcor pycor patches v Figura 8 Comando patches cor em fun o da posi o Para diferenciar os comandos e propriedades comuns a turtles e patches os destes ltimos iniciam com a letra p exemplo xcor relacionado posi o da coordenada x para a turtle da mesma forma pxcor relacionado a coordenada x do patch Abaixo recorte de um c digo que determina a cria o de patches e turtles com suas devidas distribui es 10 colonia cupins bola estrela NetLogo C Documents and SettingsiLi E File Edit Tools Zoom Tabs Help interface Information Procedures a e eE breeds atar dot to setup ca cria patch vai procedimento criar patoch crlia turtle vai procedimento criar turtle er to cria patch ask ra
33. ndom n 0f madeira l patches z distribui patches yellow et pcolor yellow ask random n 0f madeira s patches sdistribui patches cyan 3et pcolor cyan end to cria turtle set default shape star star define forna turtle Catar crEeate ccustomn star estrela cria turtles numeroa definido setxy random screen sige x distribui turtles jrandomn sCreen sige y set breed star set color yellow set default shape dat dor define forma turtle dor create custon dot ponto setxy random screen sige x distribui turtles i random screen size y set breed dot set color cyan define cor para turtle dor set size 1l 5 zredimnenciona tamanho turtle de gt gt colonia cupins bola estrela Netlogo C Documents and Settings iviaiMeus documentostestudo NetlogohiS ks Ia File Edit Tools Zoom Tabs Help mtertace information Procedures a Button EE si Te Switch T chooser EG Monitor TS Plot E Output pwk Text PET EAA roer irrita Command Center Figura 10 Execu o do c digo acima 11 Untitled NetLogo File Edit Tools Zoom Tabs Help Interface Information Procedures rd i Cabe Button lt Slider 1 Swich Em Chooser E Monito F 4h EE gt G Ei ao d Center JELA CLCLL J0 observer ask turtles Ed random 20 observer gt ask turtles set pcolor white Figura 11 Exemplo de atribui o de patches As outras propriedades comuns a turtles e pa
34. o de 1 em 1 e o valor inicial pr selecionado no slider ex Value 10 e unidade de medida opcional til para vari veis que expressam medidas padronizadas como kg cm min Km etc ze lalt File Edit Tools Zoom Tabs Help Interface Information Procedures ama iF T E NumeroDeCriaturas Bot o Teste Global variable MumeroDeCriaturas E Minimum E Increment 1 Maximum 20 Units Coptional value 10 Figura 20 Cria o de slider para controlar par metros do modelo Ap s criar um slider como o da Figura 20 modifique o Bot o Teste original Figura 14 clicando com o bot o direito op o Edit e substitua crt 20 por crt NumeroDeCriaturas Observe o resultado ao variar os valores de NumeroDeCriaturas e executar o Bot o Teste Sugerimos que voc repita o mesmo para definir par metros vari veis associados aos bot es criados na atividade anterior lembre se que necess rio modificar os comandos nos bot es e teste incrementos decimais 21 Par metros associados a sliders tamb m s o acess veis atrav s da janela de comando Por exemplo como observer digite show NumeroDeCriaturas Observe que dependendo da ordem de suas a es sobre o modelo isso nem sempre resulta em um valor equivalente a show count turtles 6 3 Switch Um switch define e representa visualmente uma vari vel l gica global acessivel a todos
35. onstante reconhecida pelo NetLogo para cor verde Uma tabela de cores e respectivos valores num ricos Figura 16 est acess vel atrav s do menu Tools op o Color Swatches Figura 15 Formas b sicas dispon veis para as turtles 15 white 9 9 gray 5 B jo 3 9 red 15 18 19 19 9 orange 25 28 20 28 6 brown 35 38 39 39 9 yellow 45 48 49 49 9 green 55 58 59 59 9 lime 65 EB Em 69 9 turgucise 75 r rg Fis Re cyan 85 Ea a9 89 0 sky 95 qg 9 99 9 blue 105 108 109 109 9 violet 115 118 119 119 9 magenta 125 128 129 128 0 pink 135 138 139 139 9 Figura 16 Tabela de cores e respectivos valores num ricos Apenas o observer pode solicitar comandos ao conjunto de todas as turtles de uma s vez Exemplo ask turtles set color sky Por outro lado tanto observer quanto patches podem solicitar comandos para um conjunto reduzido de turtles Assim como observer e turtles podem solicitar comandos para um conjunto reduzido de patches Exemplo com uma turtle espec fica solicitar que a turtle 10 mude para vermelho ask turtle 10 set color red poss vel ainda atingir conjuntos de turtles ou patches com propriedades comuns usando a primitiva with Exemplo solicitar que todas as turtles de cor azul c u mudem para verde ask turtles with color sky set color green O mesmo vale para patches respeitadas as propriedades que estes possuem Na pr tica
36. oom Tabs Help Interface Information Procedures Est i Delete ac Button EF sider DO switch ET Chooser E Montor pot FEI Output Goa Tem Mum F 20 a t Fere AM pec Pl am IA a al s JAR AA F 7 e r F F Hi Fr r A a a Este texto exemplifica o uso do elemento Text ds Este texto exemplifica o uso E T Eo elemento Tex IB a Do Cancel Figura 24 Cria o de text para dar clareza a interface do modelo 6 7 Plot Um elemento plot permite plotar um gr fico din mico a partir dos dados gerados pelo modelo Trabalharemos com esse elemento quando desenvolvermos nossos modelos na forma de programas completos Se o 7 6 8 Output Um elemento output cria uma rea de texto din mica com possibilidade de scrolling til para manter um registro do tipo log por exemplo quando estamos testando se um modelo funciona conforme o esperado ou quando desejamos manter e mostrar um hist rico de valores gerados ou a es executadas Apenas um output por modelo pode ser criado Para criar um output clicamos em SETI e em seguida na rea de trabalho Para escrever no output usamos os comandos output print valor output show valor output type valor e output write valor que s o semelhantes aos comandos print show type e write vistos na Se o 4 A diferen a que os primeiros escrevem o valor no output e os ltimos na janela de comandos Propomos que voc crie um output e experimente
37. oser Monitor Plot Output e Text que ser o abordados a seguir Se o 6 Para iniciar o modelo clique no bot o setup e para coloc lo em movimento clique no bot o go Ap s analisar o modelo experimente variar os par metros e observar o que ocorre 6 Elementos de interface Agora que j experimentamos a intera o com um modelo atrav s dos elementos de interface vamos entender o que eles significam e como s o tratados internamente pelo NetLogo e mais importante como us los para facilitar nosso trabalho de programa o Esses elementos podem ser inclu dos em nossos modelos atrav s da barra de ferramentas Figura 18 Fi Edit fi Delete Fade Button RE Figura 18 Barra de ferramentas dos elementos de interface NetLogo 6 1 Button Criamos um button para facilitar a execu o autom tica de comandos atrav s de um nico clique Para criar um button clique em Pane Button e em seguida clique na rea de trabalho janela branca do NetLogo Isso abrir a caixa de di logo Button Figura 16 que permite definir e qual agente executar os comandos ex Observer e executar repetidamente forever ou apenas uma vez por clique e quais os comandos associados separados por espa os ou em linhas distintas ex ca crt 20 ask turtles fd 5 19 e nome que ser exibido na interface ex Bot o Teste e tecla de atalho equivalente ex T Experimente criar alguns bot es diferentes com os m
38. para efetivar a constru o do gr fico O que queremos plotar no gr fico O n mero de turtles vermelhas ent o usaremos o comando do NetLogo para fazer isso plot count turtles with color red como temos um n mero definido de turtles seria interessante que o gr fico parasse quando chegasse a esse valor certo O comando no NetLogo para fazer isso um comando com condi o 1f count turtles with color red 200 stop devemos colocar esses dois comandos no procedimento GO na linha imediatamente abaixo do comando wait O n mero de turtles definido ent o podemos estabelec lo no gr fico para isso basta usar o comando do NetLogo 38 set plot y range U 100 no procedimento Setup antes da declara o end Como a dimens o do tempo infinita nada a fazer com ela Verifique o que acontece epidemia NetlLogo fox File Edit Tools Zoom Tabs Help E Interface Information Procedures Pesto ces ac Button SP Sider Der Switch Chooser E Monitor Plot PE output Gem Text F 4 EE DO cat an Movimento acionado pelo observador Epidemia Dm Dm o N infectados tempo Command Center chzerver Figura 38 Modelo complete em execu o Modelo Epidemia veja o modelo em execu o Podemos trabalhar bem mais neste modelo com v rios par metros sliders por exemplo tornando as constantes vari veis como o n mero de turtles iniciais a quantidade
39. para modelagem baseada em agentes entre eles StarLogo Microworlds Swarm RePast e NetLogo 2 Ambiente de programa o NetLogo O NetLogo um ambiente de modelagem program vel para explorar comportamento de sistemas descentralizados e sistemas complexos particularmente bem situado para modelagem de sistemas complexos desenvolvidos no decorrer do tempo O NetLogo fornece um modo f cil de come ar a modelagem baseada em agentes mesmo para aqueles que n o t m avan ada habilidade em programa o e matem tica O ambiente NetLogo composto de tr s tipos de agentes turtles patches e observer O modelador pode dar simultaneamente instru es a centenas ou milhares de agentes independentes que trabalham paralelamente tornando poss vel explorar as conex es entre o comportamento de micro n veis e os de modelos de macro n veis que emergem das intera es de muitos indiv duos NetLogo usa uma 1 Cada agente desenvolve regras geralmente simples e estes se auto organizam para formar um comportamento inteligente linguagem de modelagem pr pria derivada da linguagem de programa o Logo do Media Lab MIT 2 1 Programa o em NetLogo A programa o em NetLogo consiste em atribuir comportamentos a tr s grupos de agentes o observador observer as criaturas turtles e o ambiente patches O observador um criador que especifica as condi es de funcionamento e d controle ao demais elementos A
40. s a op o Procedures e transportamos todos esses comandos para este local retirando os caracteres Observer gt e Turtles gt Para diferenciar os comandos executados pela turtle indicaremos eles por ask turtles Entretanto todo procedimento deve ter um nome e deve sempre iniciar com to nome procedimento e terminar com end faremos Para mais informa es sobre o uso de procedimentos leia o documento complementar Leia Mais 1 Untitled Netlogo File Edit Tools Zoom Tabs Help Interface Information Procedures BP Fina agf check Procedures Lo setup crt 100 ask turtles forward random 100 set color lime set heading random 360 i who et color red Figura 30 Uso de procedimentos Vamos agora testar nosso procedimento Digite no comando central o procedimento setup Aten o todo procedimento come a com to nome procedimento e termina com end Heilopo new model Fls Eii Toh Zoom Tabs Hp e informim Dam ma pe a mem EP cas cem Ecras RO kre mo E ES et EM Aea TEE nie as s Comenend Conter il Ca Bis setus z s 1 T Fi d marrer E a HEM Mascaro Pim Corvo Ee Hini curso Met Figura 31 Execu o do procedimento Ora aumentaram o n mero de turtles em sua tela Bem provavelmente a primeira coisa que devemos fazer antes de executar um procedimento limpar toda a tela para isso usamos o comando ca Um modo mais pr tico de fazer isso
41. ser gt Droga 40 gt Vacina gt Controle de intera o da popula o gt Isolamento dos infectados Caso haja aumento da viol ncia da infec o com mortes que m todos poderiam ser adotados para preservar a esp cie Ou atrav s das medidas adotadas semelhantes s sugeridas acima que muta es poderiam ocorrer com a popula o Aborde uma ou mais dessas alternativas e procure resolver o problema Esse trabalho pode ser realizado individualmente ou em grupo Encaminhamentos gt Discutir as solu es apresentadas e as estrat gias de resolu o gt Analisar os caminhos adotados para programa o 8 Problemas para desenvolvimento posterior 8 1 Col nia de cupins Desenvolvendo passo a passo modelo de col nia de cupins Descri o e biologia os cupins s o insetos sociais organizados em castas com fun es definidas Os oper rios fazem a limpeza e quase todo o trabalho do cupinzeiro Os soldados s o respons veis pela defesa f sica ou qu mica toxinas ou subst ncias pegajosas Os reprodutores rei e rainha podem viver alguns anos e apresentam grande fecundidade Imagine que temos um cupinzeiro cujos insetos s o representados pelas turtles vamos supor que o material para constru o da col nia no caso patches esteja disperso e que os insetos tentem manter o ninho num faz e desfaz isto re arranjando a distribui o de material O que necess rio para descrever o modelo
42. tches s o pcolor cor plabel r tulo plabel color cor do r tulo e pycor coordenada y Al m dessas as turtles apresentam as seguintes propriedades exclusivas e breed esp cie a que pertence o padr o turtles e heading dire o para a qual est apontada valor entre 0 0 e 360 0 e hidden indica se turtle est invis vel true ou vis vel false 12 e pen down indica se caneta da turtle est ativa true ou inativa false e shape nome da forma aparente da turtle o padr o default e Size tamanho aparente da turtle o padr o 1 0 que equivale ao tamanho de um patch corrente e who identificador num rico e nico de cada turtle ao criar as primeiras 20 turtles who varia de O a 19 uma turtle espec fica pode ser identificada atrav s do valor num rico de sua propriedade who Os comandos de limpeza e inicializa o do ambiente s podem ser enviados pelo observer Para limpar a tela e reiniciar a execu o usamos o comando clear all ou ca que elimina simultaneamente todas as turtles e patches existentes Existem outros comandos relacionados a esse s o eles clear turtles ct clear patches cp clear drawing clear all plots e clear output Selecione na janela de comando observer e digite clear all ou se preferir ca Observe que a tela gr fica voltou posi o inicial A chamada a clear all zera todas as vari veis globais do ambiente e chama clear tur les cl
43. ve o seu desenvolvimento e as intera es que emergem dos comportamentos descritos Estime o n mero de her is existentes no territ rio passado alguns minutos de simula o que rela es podem ser observadas deste comportamento Modelo aprisionamento 8 3 Labirinto Neste caso o desafio desenvolver uma estrat gia para que os agentes bolas vermelhas alcancem o objetivo de sair do tabuleiro patches verdes atrav s 42 das portas patches pretos contornando um labirinto fechado patches azuis de formas geradas randomicamente a cada execu o do modelo O modelo atual tem duas estrat gias pr implementadas chamadas de rand mico e estrat gia 1 Em todos os casos a dire o inicial rand mica Na estrat gia rand mico as turtles trocam de dire o e procuram randomicamente a sa da Funciona sempre mas pode demorar muito Na estrat gia 1 uma dire o escolhida e mantida o m ximo poss vel A troca de dire o atende a um crit rio de prioridade pr definido e arbitr rio Esta estrat gia tende a ser mais r pida que a anterior mas nem sempre funciona Rode o modelo algumas vezes e descubra qual a limita o A estrat gia 2 n o foi escrita este o seu desafio Modelo Labirinto 9 Recursos avan ados do NetLogo O objetivo principal deste tutorial foi guiar o aprendiz num primeiro contato com o ambiente NetLogo portanto exploramos com algum detalhe apenas os recursos m

Download Pdf Manuals

image

Related Search

Related Contents

VAR-6A VAR-12A - Mitsubishi Electric  Descargar Ficha Técnica  Ergothérapies et schizophrénies : La mise en acte  User`s Guide RT322 ML690/ML691  Manual de Instrucciones  Office Setup - Seacoast Medical  FireShot Pro document  UNIVERSAL RECORDER WIRELESS EUW  取扱説明書  【取扱説明書】  

Copyright © All rights reserved.
Failed to retrieve file