Simulation: Hands-on Advanced

Michigan State Professor Scott Page chose NetLogo to model (simulate) complex economics and human behavior in his globally popular MOOC course, “Model Thinking.” The Santa Fe Institute chose NetLogo as its primary Complexity Explorer system to help “the next generation of complexity scholars” to understand the nature and behavior of complex systems. And teachers from 3rd through 12th grade use NetLogo to help their students understand the variables responsible for climate change, forest fires, and the spread of virus epidemics. This is a special breed of educational technology! (note: the terms model and simulation are used interchangeably, as are modeling and simulating.)

Most simulation apps are designed to be easy for the teacher to use and to target specific curriculum topics. That helps the busy teacher to implement simulation, and those apps may be effective to teach specific concepts. But those simulations are not flexible. Yes, students can adjust variable values, but the simulation cannot be modified by the teacher or the student. Educational simulations are designed to model a relatively easy-to-understand concept that can be grasped through visualizing the relationship between two variables. Unfortunately, the real world is not that simple, and understanding complex systems is not that easy. In general, schools don’t teach complexity, but companies and jobs depend on it.

There is a very different simulation system that is free, flexible, and powerful. It is flexible enough that teachers and students can design their own simulations. It is simple enough for 4th graders but powerful enough for researchers. It’s roots are the same as Scratch. That system is NetLogo.

photo of NetLogo developer Uri Wilensky
Uri Wilensky & Aquatic Friend

NetLogo was developed at Northwestern University by Uri Wilensky, one of Seymour Papert’s doctoral students at MIT. Wilensky based his model on Papert’s Logo language for kids, developing it to excel at modeling multiple interacting variables. Here’s a 2-min video of Uri introducing NetLogo including some of its uses from elementary classrooms to research labs:

Uri Wilensky introduces NetLogo (2-min): https://www.youtube.com/watch?v=AJXFiO-ULv0

Agent-Based Modeling is Just Individual Choice & Individual Action

Imagine planning the emergency exits from a school or hospital. Ideally, those highly-organized institutions would have a plan for the rapid, orderly evacuation of the building. Schools have regular fire drills to practice this. Compare this situation with the evacuation of a shopping mall or large apartment building. It would be very hard to plan for the exits needed for a less-structured system because each person would decide when they should leave, by what exit, and how urgently. Enter Agent-Based Modeling that excels at modeling the large-scale behavior of systems made up of individual persons or “agents.”

Dr. Melanie Mitchell introduces NetLogo to advanced students in her Complexity Explorer program at the Santa Fe Institute. This 2015 video references an earlier version of NetLogo, for example before NetLogo Web was developed. The “Getting Started” video (below) uses the more current 2021 version (ver 6.2). Otherwise, this video gives you a good background in how real-world researchers rely on simulation to study complex and emergent systems. Dr. Miller covers the installation and run through of one complete biology model. She demonstrates how a NetLogo model can allow students to explore complex relationships in an ant colony. Each of the hundreds of pre-built NetLogo models can be explored in this way. She ends by showing you that both students and teachers can modify existing NetLogo models or even create their own.:
Community Explorer’s NetLogo Intro (11-min): https://www.youtube.com/watch?v=9X8VsD814A0

Getting Started with NetLogo (13:30 min): https://youtu.be/FSH0qEVegRI

Creating a Simple Simulation With NetLogo

The best way to learn something is to actually build, use, and/or teach a topic that may have personal relevance. Simulations are often used to model large-scale economics and weather, while the simulations that continuously run in your brain are never consciously accessible to you. BUT, there’s one simulation that may affect everyone, a simulation of the spread of a dangerous virus. Over the past few decades the entire world has feared an uncontrolled spread of SARS, Ebola, HIV, and more recently COVID-19. NetLogo has outstanding simulations of many of these both in the models library and in the research-contributed community library, but they each are a bit complex to understand how to modify or develop one on your own.

Below is a very simply virus spread model for you to build from the beginning. Detailed directions show you how to create the interface buttons and sliders and what to name them. It then shows you line-by-line how to program the model in simple NetLogo code. Within about 20 minutes, you can have a simple virus spread model with control of key variables, a visual display of healthy and infected people, and a graph of the spread of the virus. Of course, you need to follow the directions exactly, and you may have to find and fix small errors, but I think you will find the experience to demystify the creation of interactive simulations. This would also be appropriate for students from 8th grade and above.

Simple Virus Spread in NetLogo (22-min): https://youtu.be/zzr6aJudoRI

To end your introduction to modeling and simulation, a brief reflection is appropriate to tie three concepts together. The first is that every human (and animal) brain’s purpose is to predict the most probably immediate future so that the brain’s owner is prepared to act to survive and thrive. More complex brains like ours continuously runs simulations while awake and asleep to model simple actions like drinking a glass of water without knocking over the glass or spilling it before it reaches the mouth. Complex simulations include actions and decisions regarding what should my career be, who will go on a date with me, what house should I buy, and how should I best raise my child. We see the results of these simulations with our decisions and preferences as the unconscious mind forwards likely conclusions to our conscious awareness, but we can never see our brain’s simulation process. We can get insight into these modeling and simulation processes with systems like PhET and NetLogo.

Teachers, researchers, economists, and other adults can explore complex phenomena through simulations. Simulations are now regarded as a third kind of science. The two we were taught are theoretical science and experimental science. Simulation is a kind of computational science that allows us to visualize and interact with topics that are too big (climate change), too small (biomolecular processes), too fast (quantum physics), or too slow (geological processes). Simpler simulations can help students understand the processes resulting from the relationships of variables over time like the spread of a virus. Older students can learn to modify and build their own simulations, giving them a powerful tool useful in many occupations.

Here Are Two Extended Activities (each about an hour)

Can You MODIFY Your NetLogo Virus Simulation?
Oh No! You just realized that several of your students are red-green color blind! You know that red-green is the most common form of color blindness, and that future students will also see just three shades of grey instead of healthy green people, infected red ones, and recovered grey ones. What can you do?

You know that yellow-blue color blindness is possible but rarer, and yellow and blue would certainly stand out to differentiate the healthy from the infected. Can you review the code to see where red and green are specified? Would replacing all the colors in the code change the simulation to one that your red-green color blind students could clearly see? Try changing the code to make the healthy people yellow (think of a smiley face) and infected people blue (’cause they’re feelin’ blue). If the grey is too dim, could that be changed to white for more contrast? If white and yellow are too close, maybe the yellow could be orange? This is the kind of modification that middle school students can figure out as their first step in NetLogo programming. If they were your middle school students, what else might you challenge them to modify? (hint: would any of the infected people die?)

Where Can You Learn More Deeply About Simulations Like NetLogo?

You already viewed the introduction to a Complexity Explorer course at the Santa Fe Institute. Perhaps you could take one of their online courses.

The University of Pennsylvania offers a course on Land Use and Environmental Modeling that uses NetLogo as its agent-based system to model real world issues. You can watch their 1-hour video presentation on Agent-Based Models in Urban Systems to whet your appetite: https://www.youtube.com/watch?v=DQihVrHiulY

Finally, you can take Scott Page’s world famous MOOC course from the University of Michigan, Model Thinking, that uses NetLogo. Nearly 160,000 students worldwide were signed up for the course that began Mar 9, 2020. About 1 MILLION have taken his online course (imagine if you could reach 1 million students)! It’s an unbelievable opportunity you can try and complete (or taste and terminate) when you wish (no penalties). The course is offered in many languages if English is not your language of choice). Here’s the link: https://www.coursera.org/learn/model-thinking