NetLogo je sredstvo za kompjutersko programiranje i modeliranje koje je napravio Uri Wilenski sa NorthWestern Univerziteta. Ono je napravljeno da uci ljude kako da modeliraju ali i da bi se koristilo u istrazivanju kompleksnih sistema. NetLogo je zasnovan na dva ranija programska jezika, Logo i StarLogo Sva tri jezika se dosta koriste u obrazovanju od osnovnih skola pa do poslediplomskih studija. U ovom kursu mi cemo koristiti NetLogo da bismo demonstrirali neke od osnovnih ideja u istrazivanju slozenih sistema i neka od sredstava koje se koriste u proucavanju Slozenih Sistema. U razlicitim domacim zadacima u toku ovog kursa, vi cete koristiti NetLogo da biste modifikovali i isprobavali postojece simulacije, i ako zelite da resavate naprednije domace zadatke vi cete praviti vase sopstvene simulacije. U ostatku ovog poglavlja ja cu vam objasniiti osnove instaliranja i koriscenja NetLogo. Ako nemate nikakvo iskustvo u programiranju, ne brinite. NetLogo je lak da se koristi i pristupacan za nove korisnike. a isto tako je koristan i za strucnjake. Medjutim, ako ste vec programirali u NetLogo, i ako ga uopste znate, vi mozete preskociti ostatak ovog videa, i direktno ici na domaci zadatak za Poglavlje 1. U redu, da pocnemo. Prvo, mi cemo download-ovati NetLogo. On je slobodan software, i radi na Windows, Mac OS i Linux-u. Sada cemo to pogledati u browser-u (pretrazivacu) Ja cu idem na stranicu gde je download, a to je: http://ccl.northwestern.edu/netlogo Ovaj link je takodje na stranici Materijal za Kurs naseg kursa. Kada pridjemo stanici za download-vanje, tu ima nekih informacija o NetLogo. Ja cu sad da izaberem download. Tako i vi mozete uraditi. Mozete uneti vase informacije ako zelite, to je opcionalno. Ja koristim Mac OS X, tako da kad download-ujem ja cu da sacuvam na mom desktop-u. Onda cu da ga otvorim. Tu je folder NetLogo 5.0.3, a ako ga download-ujete kasnije ako postoji novija verzija, to moze biti neki veci broj. Ja cu ga prebaciti na moj Desktop i izbrisati dve datoteke za instalaciju. Tako da ja sada imam ovaj folder (fasciklu) i u njemu NetLogo 5.0.3. tako da cete vi videti ovo, ili mozda noviju verziju. To je datoteka koju zelim da otvorim. Ovo je dvo-dimenzionalna verzija NetLogo, postoji i tro-dimanzionalna, NetLogo 3D. Koju cemo mi pogledati malo kasnije Kliknite dva puta da ga orvorite, izberite Da (Yes) Ja zelim da ga otvorim. Moze uzeti malo duze vremena dok se ne pojavi, zavisno od toga koliko je brz vas kompjuter. Evo ga. Sada cu vam pokazati kako da izvrsite postojeci NetLogo model. NetLogo dolazi za bibliotekom postojecih modela. Vi joj mozete prici ako izaberete File i onda Models Library Tu mozete da pogledate razlicite discipline i modele u okviru svake discipline. Ja cu da idem do Biologije, i onda na Ants (mravi) model. I mozete procitati da je ovaj projekat o grupi mrava koji traze hranu. Iako se svaki mrav pridrzava skupa prostih pravila, grupa kao celina se ponasa na jedan prefinjen nacin. Hajde da otvorimo ovaj model. Prva stvar koju treba uraditi kada se otvori novi NetLogo model je da se dodje do Info tabulatora. Primetite da postoji tabulatori za grafiku, za Informacije i za kod. Info tabulator nam govori ponesto o modelu, kako radi, kako da ga koristite neke stvari koje treba znati o modelu, neke ideje koje se mogu razraditi dalje, itd..... To vec mozete pogledati sami. Ja cu da idem nazad na graficki deo. Primetili ste da postoje dva dugmeta: Setup i Go. Oni se pojavljuju u vecini NetLogo modela, i moj savet je da kad nesto radite prvo pritisnete Setup. To ce da inicijalizuje simulaciju. Mi ovde imamo jedan mravinjak, to je ova ljubicasta grudva za crvenim krugom u sredini, gde ustvari svi mravi zive. Ovaj Slider (klizac) Population, kaze nam da imamo 125 mrava. Ostale 3 grudvice su gomile hrane, i mi cemo da vidimo na grafu koliko je hrane na svakoj gomili tokom vremena. Mravi ce poceti da izlaze iz mravinjaka i da traze hranu. Ja cu da izberem Go tako da mozete da vidite kako se oni krecu okolo. Sada cu da zaustavim model, izabravsi ponovo Go, da bih ukazala na neke stvari. Videli ste kako se mravi krecu okolo. Oni se krecu slucajno dok jedan od njih ne nadje hranu, to je ovaj mali kvadrat ovde, plave boje ili neki na drugoj gomilici. Potom oni uzmu hranu i vracaju se u mravinjak. Ali pri povratku u mravinjak, oni ostavljaju za sobom hemijski trag, koji se obicno naziva feromon. U stvarnosti, ostali mravi mogu prepoznati tu stazu. Tako mravi ostavljaju trag koji moze sluziti kao vodilja za ostale mrave o mestu gde se hrana nalazi. Posto ovi hemijski tragovi se sire prema stopi sirenja na ovom Slider-u, to znaci da se oni rasprostiru od originalne staze u zavisnosti od rastojanja i da isparavaju prema ovoj stopi. Tako da kada oni ispare, mi necemo videti stazu vise. Sada cemo malo usporiti, ovaj Slider pokazuje brzinu Izaberimo Go ponovo Posto cemo sada ici malo sporije, mozete da vidite kako se staze pojacavaju, isparavaju, sire ali ako jedan mrav nadje hranu i moze da se vrati u mravinjak, a drugi mravi nadju tu stazu pre nego sto ispari, onda oni mogu da prate taj trag. Ovde mozete videti kako se hrana na svakoj gomilici smanjuje Ovde je poslednja gomila hajde pa ubrzamo model ponovo Sada mozete videti mrave, i ja cu da ubrzam cak i vise Sada se mravi krecu zaista brzo Posto je sada sva hrana nestala, mravi nemaju nista vise da traze, oni se sad krecu slucajno. Ja cu sad da pritisnem Go da bih zaustavila model, i vi mozete videti da su prema ovo grafu mravi pronasli svu hranu u vremenu, koje mozete videti ovde, oko 900 i nesto koraka u vremenu To je sa postojecim skupom parametara Mi ustvari mozemo ovo malo promeniti, da bismo videli sta se desava kada povecamo broj mrava? Ja cu povecati do kraja a to je 200 mrava. Ponovo cu pritisnuti Setup, i onda Go. Mozemo videti promene u ponasanju. Naravno ima dosta slucajnosti u ovom modelu. Mravi se krecu uokolo slucajno dok ne nadju neku hranu i onda prate stazu ako je nadju. Mozemo videti da kada ima vise mrava, izgleda, bar po ovom primeru da su oni pronaslu svu hranu brze. Ali posto je ovde dosta slucajnosti, treba ponoviti ove testove vise puta da bi se doslo do neke statistike, da li oni stvarno nalaze hranu mnogo brze kada ima vise mrava. Jedna od dobrih strana NetLogo je da mozete da razvijate ove modele i onda da eksperimentisete sa njima, koristeci graficke komponente da biste menjali razlicite promenljive. korisna stvar na koju bih zelela da ukazem je ovaj Help (Pomoc) tabulator koji omogucava da nadjete razlicite pomocne izvore informacija, posebno NetLogo Prirucnik (Manual) i NetLogo Recnik (Dictionary) Tako da ako izaberete User Manual (Prirucnik za upotrebu), to ce vas odevesti do stranice sa uputstvima kako da naucite i programirate u NetLogo-u. i puno povezanih sredstava. Hajde da se vratimo. Mi smo videli Graficki i tabulator sa Informacijama, hajde da sada pogledamo Kod Kod je napisan u NetLogo programskom jeziku, koji je jezik sam po sebi, veoma lak da se nauci. Mi cemo ga malo nauciti u ovom kursu, ne sve, naravno, zato sto bi to zahtevalo po sebi ceo kurs, ali cete da steknete osecaj kako da pisete ove modele, kako da ih testirate i kako da ih izvrsujete Za one koji se interesuju, sam NetLogo je zasnovan na Java. On je napisan u Java programskom jeziku, tako da je to je u osnovi. Ali vi ne morate da da znate Java da biste koristili ili programirali NetLogo.