Version 1.0
January 13, 2004
with
Dor Abrahamson, Matthew Berland, Kate Braden, Brent Collins,
Sarah Davis, Matt Goto, Ed Hazzard, Matt Hellige,
Andy Hurford, Jayun Kim, Geoff Mathews, Meera Pradhan,
Al Schademan, and Seth Tisue
We gratefully acknowledge the ongoing support of the
National Science Foundation and Texas Instruments
in developing these technologies and activities.
|
These activities and associated models and materials were created as part of two NSF sponsored projects: INTEGRATED SIMULATION AND MODELING ENVIRONMENT (NSF ROLE #0126227) and PARTICIPATORY SIMULATIONS: NETWORK-BASED DESIGN FOR SYSTEMS LEARNING IN CLASSROOMS. (NSF REC #9814682) Copyright 1999 by Uri Wilensky & Walter Stroup. Updated 2001, 2002, 2003, 2004. All rights reserved. Permission to use, modify or redistribute these materials, including the models, activities and documents is hereby granted, provided that both of the following requirements are followed:
Contact the copyright holders for appropriate licenses for redistribution for profit. |
Welcome to the future classroom - a classroom rich in networked information technology. This document is intended to serve as an introduction and guide for teachers to the use of the HubNet technology in the classroom. The HubNet technology is the result of an ongoing effort to design, from the ground up, activities and technologies for group learning situations. In particular, HubNet has been designed to enable classroom "participatory simulations" in which all class members are actively engaged in learning activities mediated through technology.
The HubNet design marks a radical departure from a simple repackaging of business-oriented computing solutions for use in schools. Business technologies are typically designed for an individual user working in relative isolation. School technologies, in sharp contrast, should be designed for group use with learners working together in highly interactive ways.
You are about to work with our attempt to embody this functional ideal in a practical way. The six activities presented in this book can be used in your classrooms today to address meaningful curricular objectives. They are intended to illustrate how a range of challenging curricular topics - from understanding functions to making sense of the logistics curve, from understanding the spread of a disease in a population to the optimizing of traffic flow through a city grid, and much, much more - can be approached in engaging and intellectually compelling new ways using participatory simulations. All of the activities have been tested and refined from substantial work in middle schools and high schools from a range of settings (including classes in mathematics, general science, social, urban and environmental studies) in the United States.
Middle school students interacting using HubNet in a disease participatory simulation learning about the dynamics of the spread of disease (above) and aspects of the emergent logistics (epidemic) curve (below).
Students engaged in participatory simulations act out the roles of individual elements in a system. Through their actions the behavior of the system as a whole emerges. This emergent behavior of the system and its relation to individual students' actions and strategies then becomes the object of class discussion and analysis.
HubNet is the name we have given to a new architecture designed to give students the experience of participating as elements in a simulation of a complex dynamic system. HubNet hardware includes an up- front computer (the "hub") capable of addressing the network of nodes (calculators) and a display capability (e.g., a ViewScreenTM or computer projection system) enabling an entire class to view the simulation. HubNet enables many users at the "Nodes" to control the behavior of individual agents and to view the aggregated results on a joint display. HubNet is designed with the default assumption that the nodes have significant resident functionality (at least that of a programmable graphing calculator). The network layer implements flexible communication protocols that include the ability to upload and download data sets, upload and download programs (e.g., applets), monitor key- presses at the handheld level, support real-time interaction as in network computer games, and form collaborative groups of various sizes (e.g., peer to peer, small groups, and whole-class modes).
Although NetLogo can trace its roots back to the programming language LISP and also to a version of LISP used in super-computing called *LISP (pronounced "star-LISP"), the easiest way of thinking of NetLogo is as a special version of the language LOGO. Logo, as you may know, is a language that enables a user (often a young child) to control a graphical turtle by either typing individual commands like "forward 50," or by writing procedures that do a series of commands. By having a turtle put its pen down, go forward 50 steps, turn right 90 degrees and then go forward 20 steps you can get something like the inverted "L" shown on the left below. Learners can construct models of a wide range of physical and mathematical phenomena using this turtle-controlling language.
In NetLogo the user can create tens, hundreds or even thousands of turtles. If the same commands as those given above for the upside-down "L" are now used in NetLogo, we end up with something like what is shown in the middle image above. Each of the turtles does these commands "for itself" and the wagon wheel image results. (Note that each of the turtles started with a distinct initial orientation (aka "heading") so they wouldn't just be stacked up on top of each other). Like Logo, but in a much more powerful way due to the ability to control multiple turtles, NetLogo can model a wide range of physical, mathematical and even social behaviors.
Up until this point, both Logo and NetLogo are thought of as working within a single "box" or running on a single computer. Everything that happens on the screen happens because of commands that happened within that box (e.g. forward 50). In computer speak, the "state" of the turtles is determined completely by either the Logo or NetLogo code, depending on which you are working with.
When NetLogo is hooked up to a network however, some of that control can now come from "outside the box" or outside the single stand-alone computer. In the HubNet system, that outside input can come from calculators or from other devices connected to the network. Each device can control an individual turtle. If all the participants controlling a turtle with their devices put their pens down, and use the arrow keys to wander around, we might end up with an image like the one on the right of the above image. Each user is making his or her own decisions about how to move, and this input is being used by NetLogo to create the group result. The state of the turtles is now determined by a combination of input from the devices, and NetLogo is then doing something with this input. To help keep this use of NetLogo somewhat distinct from the "in the box" use, we speak of the "out of the box" programming as "scripting" and the former "in the box" programming as "modeling."
In addition to having turtles that move over the surface of the screen and interact with each other, NetLogo also has a grid of programmable "patches" that the turtles can walk over and interact with. Patches can be though of as little cells or rectangles that make up the background of the NetLogo world. Patches can also interact with each other and with turtles. Finally, NetLogo has an "observer" level that can look at what's happening for the whole model and do things like count the number of turtles that are green or the number of patches that are yellow.
The following image shows how NetLogo can work either as a stand-alone modeling language or as a scripting language for creating participatory simulations.
Has Full capability of Agent-Based Parallel
Modeling Language
|
|
|
For both the stand-alone ("in the box") model on the left and the possible network activity on the right (the participatory simulation), the rabbits and wolves are two kinds of "turtles." They are programmed to interact differently when a rabbit bumps into a wolf as opposed to when a rabbit bumps into another rabbit. The rabbits and wolves are what are called "breeds" of turtles. In these examples, the grid of patches is used to model grass. The patches - the simulated grass - interact with rabbits differently than they do with wolves. Rabbits can eat the grass, turning it brown. Over time the grass will become green again. A major difference between the stand-alone model on the left and the participatory simulation on the right is related to control. In the stand-alone model illustrated on the left, the rabbits and wolves wander randomly around the screen and this random movement is completely controlled by the NetLogo language. In the participatory simulation illustrated on the right, each individual student uses the calculator to control either a rabbit or a wolf in the participatory simulation. The rules for interaction remain the same (so if a rabbit runs into a wolf, the rabbit dies and the wolf gets more energy). Either the stand-alone model (left) or the participatory simulation (right) can simulate a simple predator-prey ecology.
Both NetLogo modeling and doing participatory simulations with HubNet enable new powerful classroom activities and learning. In this guide, we will focus on the HubNet technology and participatory simulation activities. An advantage of using participatory simulations is that students identify strongly with their roles and, from working together in this embodied way, begin to feel a need to create certain kinds of mathematical or scientific ideas. Closely related to this increasing articulateness is the development of a much deeper and more meaningful understanding of mathematical and scientific ideas. Participatory simulations scaffold deeper engagement with, and understanding of, challenging curricular topics for a wide range of students. Students will develop a significant set of insights from working with participatory simulations. For participatory simulations to work up to their potential however, we have to be ready to support discussion and focused interactivity in our classrooms. The best way to begin to get a feel for how this can work is for us all to jump in together to try out for ourselves what this next generation form of classroom learning is like. Enjoy!
From motion detectors to rolling dice, from building walls of delta-blocks to working with motion detectors, we have found it is important to begin with some kind of hands-on activity or meaningful example as part of working with a HubNet mediated participatory simulation. HubNet-based learning is an important kind of hands-on, minds-on learning that integrates well with other forms of hands-on, minds-on activities.
When you open NetLogo, you can find the HubNet activities in the Models Library that is found in the File menu.
|
|
A description of the HubNet activity (or of any of the stand-alone models also found in the library) appears when you click on the title. Double-click to open this activity. Since there are currently two different types of HubNet implemented, be sure to open the folder that refers to the type of HubNet that you wish to run. For instance, if you wish to use Computer HubNet, be sure to open the HubNet Computer Activities.
NetLogo can be downloaded for free from http://ccl.northwestern.edu/netlogo/.
To help you get started and run an activity, we have included QuickStart directions at the top of every HubNet model.
Click the Next or Back button to change the directions. Also, for each activity that follows, we've included a printed version of these directions.
Additional information for each HubNet activity (and also for each model in the library) can be found by clicking on the Information Tab. There is a standardized format for the content of this tab so you can become increasingly adept at finding what you need as you move from model to model.
And as is true for the text of the QuickStart Instructions, for each activity we've printed the Information Tab for your "off line" review.
When you open a Calculator HubNet model, a dialog will appear to help you get the activity set up properly. This dialog, which looks similar to this,
will tell you which activity to enable on the TISchool website. See below for more information on how to enable an activity on the TISchool website. Then, if this is the first time you are opening a Calculator HubNet model in a particular session of NetLogo, you will be confronted with the TI-Navigator Login dialog.
To run use Calculator HubNet, simply type in the same User ID and Password for the teacher calculator to login to the TI-Navigator system. Make sure that the Host Name box has the IP address of the TI-Navigator server. If you are using the stand-alone TI-Navigator system, the IP address is usually 192.168.110.2. Then press the Login button.
Once you have pressed the Login button in the TI-Navigator Login dialog, NetLogo will connect to the TI-Navigator server allowing NetLogo to know when people to join the activity. You should then follow the instructions for the particular model found in the QuickStart Instructions monitor. Most models will require you to press a forever button, often called GO. You, as the leader, should notify everyone that they may join.
Each HubNet activity has two buttons.
Setup is what you use when you start a new class or switch activities. Of the two it is the "stronger" command and almost always is accompanied by students having to login (or re-login if you switch activities). Re-Run, in contrast, is what you push after you've done an activity once and you just want to repeat the activity without requiring the students to login again. You will probably use this button more than once in a class whereas Setup is something you are likely to use only once (assuming you don't switch activities).
In addition to a TI-Navigator system, to make what's happening in the NetLogo program visible you will need a computer projection system for your "up-front" computer. For many of the activities, it is also helpful if the teacher can project what is happening on the calculator. To do this you'll need a teacher calculator (that comes with a video-out port on the back), an overhead projector, and a ViewScreenTM that attaches to the teacher calculator OR a teacher calculator, a video out converter from TI (calculator to RCA), and a place on the computer projection system for a second input. The latter option uses less projection space but will require you to switch between displays, while the first option takes more projection space but also allows you to see both NetLogo and the projected calculator display at the same time.
The TISchool website acts as an interface to the server (think of it as a box that can store, receive and send out - "serve"- information for the activity). The server has to be told which activity you want to run in order to know what programs to send out to the calculators (and what information to get back from the calculators). When you first open a HubNet model in NetLogo, a dialog will mention "enabling" an activity. Often you'll first have to disable a previous activity before enabling the new activity. If not, skip the following directions for de- selecting and go straight to how to select an activity.
To de-select an activity you'll need to log on to the server with your account number and password. You'll get a screen like the following. To de-select an activity click on the "Activity Name"
and you should then see a screen like the following.
Click on the "X" in the red circle (as shown). Voila, the old activity is now de-selected or disabled.
To select a new activity, return to the "My Home" screen and click on as shown.
This will bring up a screen with all the activities available to your class. Click on the activity you want to enable (as shown below).
You should now see this screen (or if you are returned to the home screen, click on the activity name). Click on the green circular icon (shown below).
You will next need to clear the server of any old data that may be there from previous use of this activity. (Because you are already on the Activity Home screen you can skip the first step in the next section).
On the My Home screen click on the activity name. You should see the following. Now click on the green icon near the bottom of the screen (shown below).
This brings you to the screen that allows you to "Erase all Data" or clear the server. Click on the "Erase All Data" button.
Note that this screen keeps track of who's logged in and what data has been passed. This is the information that NetLogo uses for the participatory simulations.
Before each new group of students or before running a new activity, remember to clear the server. You are reminded to do this when you first open a HubNet activity or when you press the Setup button.
Just as you have to clear the server, it is also a good idea to have the students completely clear the calculator's memory before logging on. You need to "reset" the calculator's memory. To do this, press to following keys in response to the calculator's prompts:
2nd
+ (to get "MEM")
7
1
2 (and you should now see "RAM Cleared").
Once the calculators are hooked up to the NavigatorTM network by being plugged into a four- calculator "hub", press the blue APPS button on the calculator. Use the arrow keys to get to the menu option that says NETWORK. Press ENTER and you should see some letters appear in the lower right corner of the screen that tell you the calculator is accessing the network. Then a login screen should appear. Type in your login name (or number) and then your password.
Some of the activities require you to be able to change the size of the NetLogo Graphics Window (the place where the turtles move around). This might happen because you want to change the dimensions of the space or because you want to make more (or less) room for the number of students you have.
Press the More... button.
You'll see
Now change the values to what you need. Patch size is the size of the stationary grid squares (see the squares of "grass" in the sheep and wolves image shown earlier). The NetLogo Graphics Window is set up to be symmetric about the origin (0, 0) so "Screen Edge X" being 17 means the screen goes from X = -17 to X = 17.
The focus of these materials is on using the HubNet system to support participatory simulations. You are encouraged, however, to either write or modify models yourself or use the existing NetLogo models. Many models with topics ranging from viruses to ideal gases can be found in the models library (reachable through the NetLogo file menu).
These models are an important complement to and extension of the use of participatory simulations. For example, the Virus model shown above can naturally extend the ideas developed in relation to the Disease participatory simulation activity.
To get students started or to facilitate discussion you'll want to use a teacher calculator so the whole class can see what is going on. But then if you have to "play" the whole time, it will be hard for you to wander around your classroom and provide the support you'd like as well as keep track of the top-level story. What you may want to do is have a student near the front use the teacher calculator and keep it connected to the ViewScreen. Turn the ViewScreen off when the student is using the calculator, but when you want to use the calculator to talk to the class you can borrow it from the student and turn the ViewScreen on.
Although this can be useful at times, pressing a calculator's ON button while it is logged in to the network will "crash" the calculator out of the network. Menus will appear allowing you to "Get the Activity" again if this happens by accident. You can immediately leave a simulation by pressing the ON, but generally you should use the "quit" commands in the calculator software since occasionally using ON as a shortcut will cause some memory management issues. These issues are really no big deal since you can always clear the memory (by pressing 2nd + 7 1 2) or, if it really gets stuck, pull the batteries out of the back and put them back in again.
Mathematics, Science, Health, and Social Sciences
Disease Propagation
In these two activities, students are members of a population in which a disease is spreading. The goal is to understand how the logistics curve emerges in relation to the dynamics of the spread of a simulated disease.
In a non-network based simulation, students literally walk around shaking hands and using dice to determine whether they have "risky" interactions. They then manually build graphs showing the number of students who get infected in each time period and use these to build graphs showing the total number sick at a time. This introduction prepares them to dive into the real-time HubNet simulation.
As the students participate in the real-time simulation, NetLogo creates a graph showing the number of people sick at each tick of the simulation's clock. This activity serves as a springboard to discussing modeling the spread of disease and to constructing models in general. Drawing from your students' experiences with the non-networked simulation, encourage them to think about how the simulation works and what strategies they might use to avoid catching the disease. The students and you can change attributes of the simulation (e.g., the sliders percent infection and/or initial number sick, step size, amount of space to more in, add in androids [that might be thought of as being like mosquitoes carrying a disease], and so on), try to predict what effects these changes will have and then see how well these predictions fit with what actually happens.
Addition, Some graph interpretation.
This unit is well suited to many different grade levels and classes from early middle school or late elementary to pre-calculus classes. As is true for all the participatory simulations, the activity itself can be extended well beyond the design of this unit. This is particularly true for science classrooms interested in using models to talk about logistic curves and natural processes as they can be modeled with the language of math and with computers. Additionally, it easily can be used in an elementary school classroom, as it does not mandate any complex prerequisite concepts. This particular application of this activity spans several different important concepts in both math and science, and can be adapted to a classroom interested in anything from graph interpretation, to health and even to very specific aspects of the logistics curve.
To begin, it is suggested that you use a non-Network simulation of a similar activity so as to give the students a better sense of the phenomenon they are about to simulate. In particular, the idea of there being a probability of getting sick is well supported by students using dice. In both this activity and in the networked version that follows there is no recovery, so if you get sick, you stay sick.
The non-HubNet simulation runs as follows. There are five time periods of a fixed duration, usually about a minute each. All the students are assigned an ID number, and walk around the classroom, each with a die, interacting with different students as they wander. Each "interaction" has both students roll his/her die. Each of them then records on the data worksheet (included in the Handouts section) the ID number of the person that they interacted with and the sum of their dice values.
After all five time periods, the class gathers, and the teacher reveals the dice total that is characteristic of a "risky interaction" (e.g., shaking hands after a sneeze, if this is modeling a cold). The teacher announces this number: "Those students with a combined dice roll of 5 or less become infected." This assigns a certain "chance" or probability that an interaction will result in infection. Now that this value has been announced, the students circle all of their risky interactions on their data sheets. The teacher then reveals what student (or students if you want) originally had the disease (for social reasons, it is often a very good idea to select this ID number at random [e.g., roll dice]). The selected student with the chosen number is who is sick at time = 0. This person can then infect other students during the first time interval.
The students then look on their sheets. If they interacted with this person during the first time interval they are now infected. This means that anyone that interacts with them during the second interval will get sick. This pattern continues where newly infected students can get other students sick during the next time interval. Discuss each interval one at a time and make sure you write down all the newly sick people during that interval on the data sheet. On the overhead or on the board, complete the data tables ("ID numbers of newly infected" etc.) as you go. This process continues until all five time-steps are carefully reviewed. Students will use these results to plot graphs.
Next, students should graph their results. They can then discuss what the graphs they are looking at represent. To help with this discussion ask the students how the graphs would change, or remain the same, if the disease was more contagious (i.e., if you made the cut-off number greater than 5). Capture as many of these conjectures as you can. Encourage students not to be wishy-washy and then ask for students to commit to whether they agree with a given idea or not. Students can become very animated about their ideas. If everyone seems to be agreeing "too much" then push by asking whether it will be "exactly like this [whatever this is]" or whether it might be a little different? How so?
What is powerful about the HubNet version of this activity is that the class can explore these possibilities and do so in a way that allows them to readily compare various trials or "runs" of the simulation (the calculator can receive and display up to three different data sets for comparison). There are many aspects of disease spread that can be explored in this way.
This activity requires a complete TI-Navigator system and the HubNet model named "Disease" found in the NetLogo Models Library.
When you open the HubNet model in NetLogo the software will ask you to login with your ID and password. This connects you to the activity server so NetLogo can interact with the data moving from and to the calculators. You will be told to enable a particular activity and clear the server of any leftover data. How to do this is discussed in the "Top Level Tips" at the beginning of this booklet. Follow the QuickStart directions at the top of the NetLogo screen to run the activity.
You will get to a place where the QuickStart Instructions tell you to have the students login. Have them login. They will see a screen that tells them they are doing the Disease simulation and after pressing ENTER they will get a menu with the following options:
The "-" tells you what option you are about to select. Up and down arrows allow you to move between these. Press ENTER with Simulation selected and students will see a screen similar to this:
The students should remember their "turtle" shape and color so that they can find it on the projected NetLogo screen. When they press ENTER they will see a screen showing just their individual locations on a Cartesian coordinate system.
Students can use the arrow keys to navigate around the screen. On the up-front display, they should be able to find their own shapes as well as see the shapes of their fellow students. Initially they move by one step when they press an arrow key. They can modify the size of their step by pushing the "STEP" softkey, and change it to a value between 1 and 5.
Let the students identify themselves on the screen by scrolling around with the arrow keys on their calculators.
At the top of their calculator screens students can read off the x and y coordinates of their positions. As a quick check of how everything is working, including students' ability to find a move their icons, we often have them move their points until the y value equals the x value. You should see a line form on the screen as the students move their turtles (and this hints at the kinds of things we do in Function Activity). If you have the students do this quick check, be sure to have them move apart before you get someone sick (it's not a good idea to start off near or even "on top" of people if someone is about to catch a cold).
Once they have become comfortable with the interface, make someone sick by clicking on the "INFECT" button on the NetLogo interface. The initial-number-sick slider is set to "1" so one person will get sick. In the beginning, leave the "show-ill?" switch on, so the students can see who is infected. To show who is sick, a red ball becomes part of the icon.
The calculator can also let students know that they are sick. Students can try to maintain their health as long as they can. As the activity continues draw attention to the "Number Sick" graph (shown below) especially as new students get sick.
Note that every time we have run this activity, including with all sorts of adults, the sick people end up chasing the well people. So if you have middle schoolers and they do this, be assured this is not an age-specific trait (and it does lead to an animated engagement with the activity).
For any of the sequence of simulations, it is possible to send the data out to the calculators for students to analyze on their own or in small groups. It is even possible to send data from up to three separate trials back to the calculators for the purposes of comparison. How this works is NetLogo can send the data to three distinct lists using the list selection slider in the interface. To get data into the calculators, the students should get to the Menu screen and then select the "View Data" option. If there is any data available, it will now be displayed as a statplot. If multiple sets of data are available, then the names of the available trials will appear in softkeys at the bottom of the calculator's display screen. Press an available softkey to toggle on or off the display of a statplot for a data set. This feature allows the results from multiple plots to be examined individually or, for the purposes of comparison, together on the same plot. Pressing the right or left arrow keys puts the calculator in "trace" mode allowing you do move between points in a data set. Up and down arrow keys allow you to move between datasets. Pressing Enter returns you to the screen with the softkey menu (from trace mode). Note too that you can quit the activity and use the function graphing or regression capabilities of the calculator. So, for example, if you like, you can use the calculator's built-in logistics regression for analyzing the respective data sets. We suggest that you wait a while before jumping to this. A key aspect of the HubNet design is for each student to have powerful tools of analysis in their own hands and to become increasingly capable in the use of these tools in relation to analyzing meaningful data sets they were part of creating and/or are invested in.
For discussion ask the students, what is this graph measuring?
When are people getting sick the fastest (often students will struggle with whether it is when the graph is highest or "steepest")? When is the disease slowing down its spread and why? When is it speeding up or spreading faster and faster? When are the most people sick? Try and draw attention to the shape of the graph and the overall story it seems to tell (without necessarily saying anything, one way or another, about the "logistics curve"). Also have students articulate their strategies for staying well (e.g., you might see some students along the edges, moving with large steps).
Then the question can become how might the graph (or values) be different if the activity was run again with some key parameter changed? We are about to run it again with the students not being able to see who is sick. But you can also explore what would happen if the percent infection was higher, or there were more (or fewer) people in the class, or if there were more people sick at the beginning, or if everyone only took big steps or small steps, or even introduce androids (which might be thought of as something like mosquitoes carrying a disease) and ask how that might change things. You can then re-run with the parameters changed and see how the students' predictions bear out. We have even found it can be worthwhile running the simulation several times with nothing changed to see which patterns "stay the same." This can also be done more quickly later with just androids, as sometimes students may not be as engaged by running an activity again the same way (note that "in reality," for reasons having both to do with chance and with the student strategies evolving, the graphs for identical settings can be quite different ... but almost always with the same overall shape ... hmmm ... maybe there is something really powerful and general about this logistics curve business after all ...). Be open to following student- generated conjectures and possibilities.
Now set the Show-Ill? switch to "off." Move the calculator-data-set slider to "2" so that both the previous data and the data you are about to collect will be available on the calculators (if you forget to move the slider, the new data set will overwrite the old set). Have all the students exit to the calculator Main Menu. Press the Re-Run button and follow whatever directions might appear. It is important that all the students are in the calculator Main Menu before pressing the Re-Run button since otherwise the students will not get the new settings sent by NetLogo. Before rerunning the simulation, push the students to articulate what might be different this time and why. Questions like "Will it happen faster or slower?", "Will everyone still get sick?", "Will the graph be stretched or shrunk, or will it be a different shape?", "How might your strategies have to change?" should get a heated exchange going. Again, if you need to get students more into committing to different possible stances, you can ask whether things will be "exactly the same". Remember to ask WHY they think things will be different. As they run through the simulation, they will start to hypothesize as to who is infected and who is not. Now have the students choose the Simulation option from the calculator Main Menu.
Once the simulation is completed discuss the results, especially in relation to the conjectures students presented earlier. Also explore their strategies for avoiding getting sick, and how they might go about figuring out who it was that was sick at the beginning. Discuss how this might be done for a "real" disease.
In comparing runs, ask students whether, with real diseases, you can always see who is sick. Are there diseases where someone might be sick and not know themselves? You could even discuss the different ways diseases might manifest themselves (e.g., incubation periods, carriers, etc.). Another discussion might be about what makes a really "bad" disease versus a less bad disease. Obviously, a disease being fatal is really "bad" but there is much, much more to it than that. See if you can push students to talk about what kind of role these other factors could have. You might get to this point by asking, "So what would happen in our simulation if the second you got a disease you died, would everyone be likely to catch this kind of disease?" A small modification to the code would allow you to explore this possibility and related ones (allowing people to transmit the disease for some number of "ticks" of the simulation clock before expiring).
Following up on the idea of possibly changing the way a simulation works, a key feature of the NetLogo environment (unlike "closed" simulations like SimCityTM) is that you have complete access to the code that makes the simulation or model work. This can allow you to actually see and better understand what's going on, change the code to explore new possibilities, or even get ideas for building new models or simulations. Clicking on the Procedures tab allows you do see the NetLogo code. You might want to look at some of the stand-alone models, as these will not have extra code for communicating with the network. The code is designed to be relatively easy to understand (drawing on the lessons learned from the Logo programming language) and is intended to capitalize directly on the students' first-person reasoning and experience. An introductory challenge can include having the students read through the code and try to come up with a flow chart of how the program behaves; this will familiarize them with both the code and the logic behind our models. As is true will all NetLogo models or simulations, start by looking for the "Go" procedure in the Procedures Tab as this reveals the "top level" story of the simulation. The code is extensively commented (comments are the programmer's notes to you about what the code is doing). And of course, we very much encourage you to reach in and change the code to explore how it works or build new possibilities. Further information on NetLogo is available at http://ccl.northwestern.edu/netlogo/.
At least 3 days for the main unit; additional time may be required for NetLogo extensions.
According to the National Council of Teachers of Mathematics, students should learn to:
These are resources that are included in the HubNet Disease model.
WHAT IS IT? ----------- This model simulates the spread of a disease through a population. This population can consist of either students, which are turtles controlled by individual students via the TI Navigator Network, or turtles that are generated and controlled by NetLogo, called androids, or both androids and students. Turtles move around, possibly catching an infection. Healthy turtles on the same patch as sick turtles have a PERCENTAGE-INFECTION chance of becoming ill. A plot shows the number of sick turtles at each time tick, and if SHOW-ILL? is on, sick turtles have a red circle attached to their shape. Initially, all turtles are healthy. A number of turtles equal to INITIAL-NUMBER-SICK become ill when the INFECT button is depressed. Whenever a new turtle becomes ill, data lists time-data and sick-data are sent to the TISchool server. These are then accessible via the VIEW DATA option on the calculator menus. The data is displayed in plots 1, 2, and 3, whose numbers correspond to the slider PLOT-NUMBER in the NetLogo model. This activity requires the TI Navigator activity AAA - Disease 2.3 For further documentation, see the Participatory Simulations Guide found at http://ccl.northwestern.edu/ps/ HOW TO USE IT ------------- IMPORTANT NOTE: Before running this with a class, be sure to press the ERASE ALL DATA button in the teacher console for the activity AAA - Disease 2.3 on the TISchool website. If you choose to exit the program and return (using the USE CALC option at the Main Menu) or choose the RESTART option, *DO NOT* clear the server. QUICKSTART INSTRUCTIONS: ------------------------ Contains instructions as to how to quickly setup the model, calculators, and TISchool web page so as to run this activity. The instructions can be found below: Teacher: Open the TISchool site in your web browser. Enable activity AAA - Disease 2.3 Open the teacher console and press the ERASE ALL DATA button. If it is not open already, open the NetLogo model. If you are prompted by a Login dialog, enter your teacher id and password and any other necessary information. Optional- Zoom In (see Tools in the Menu Bar) Optional- Change any of the settings. If you do change the settings, press the SETUP button. Press the GO button. Everyone: Reset the RAM on your calculator by pressing the following keys: 2nd MEM 7 1 2. Login to your calculator. Select the SIMULATION option from the calculator Main Menu. The calculators will display the shape and color you will have in the NetLogo model. Remember these so that you can find your turtle. When you press enter again you will enter the simulation. Teacher: Have the students move their turtles around to acquaint themselves with the interface. When you are ready to simulate the spread of the disease, press the INFECT button in the NetLogo model. Everyone: After some time of infections, choose VIEW DATA at the calculator Main Menu to receive the data that was collected by NetLogo. Teacher: To rerun the activity, do not clear the server. Stop the simulation by pressing the NetLogo GO button. Everyone: Exit to the calculator Main Menu. Teacher: Change any of the settings that you would like. Now might be a good time to change to which set of data NetLogo sends information. You do this by changing the value of the NetLogo CALCULATOR-DATA-SET slider. If you set CALCULATOR-DATA-SET to a value that already had data in it, the new data will over-write the old data. Press the NetLogo RE-RUN button. Everyone: Choose SIMULATION at the calculator Main Menu. Teacher: Once everyone has chosen SIMULATION from the Main Menu. Restart the simulation by pressing the NetLogo GO button again. Infect some turtles and continue. Teacher: To start the simulation over with a new group, stop the model by pressing the NetLogo GO button, if it is on. Have everyone, including yourself, logout of their calculators. Press the ERASE ALL DATA button on the TISCHOOL site. Press the NetLogo SETUP button. Follow these instructions from the beginning again. BUTTONS: -------- SETUP - clears all turtles and patches and the plot. This should only be pressed when starting out with a new group of users since all data is lost. GO - runs the simulation RE-RUN - cures all turtles, clears the plot, and clears the lists sent to the calculators. This should be used to setup the model again for collecting more data or running the model again with the same users connected. Every user should be in the calculator Main Menu when this is pressed. CREATE ANDROIDS - adds randomly moving turtles to the simulation INFECT - infects some of the turtles in the simulation CLEAR PLOT - clears the plot NEXT >>> - shows the next quick start instruction <<< PREVIOUS - shows the previous quick start instruction RESET INSTRUCTIONS - shows the first quick start instruction SLIDERS: -------- NUM-ANDROIDS - determines how many androids are created by the CREATE ANDROIDS button ANDROID-DELAY - the delay time, in seconds, for android movement- the higher the number, the slower the androids move INITIAL-NUMBER-SICK - the initial number of turtles to become infected when the INFECT button is pressed PERCENTAGE-INFECTION - sets the percentage chance that every tenth of a second a healthy turtle will become sick if it is on the same patch as an infected turtle CALCULATOR-DATA-SET - the number of the graph in the calculator to which the current data will be sent and display on the calculators when the VIEW DATA menu option is chosen DATA-SET - determines the plot pen to draw the data with in the plot. This only changes the plot pen when RE-RUN or SETUP are pressed. SWITCHES: --------- WANDER? - when on, the androids wander randomly. When off, they sit still SHOW-ILL? - when on, sick turtles add to their original shape a red circle. When off, they can move through the populace unnoticed SHOW-ILL-ON-CALCS? - when on, the calculators will show a label indicating if the turtle is sick or not. This only is sent to the calculators when the RE-RUN or SETUP buttons are pressed. The calculators receive this value when the SIMULATION option is chosen from the calculator Main Menu. MONITORS: --------- TURTLES - the number of turtles in the simulation NUM-INFECTED - the number of turtles that are infected PLOTS: ------ NUMBER SICK - shows the number of sick turtles versus time CALCULATOR INFORMATION ---------------------- TEACHER CALCULATOR: ------------------- Students and teacher have identical calculator programs. STUDENT CALCULATOR: ------------------- When the program runs, it checks the server for a "flag" to indicate whether the program is being restarted. If the flag isn't found, then a splash screen will display saying "DISEASE SIMULATION" and variables will be initialized. Then, the main menu will display. At the main menu, you will find five options: SIMULATION - join the simulation VIEW DATA - view data from the simulation RESTART - restart, clearing all data USE CALC - use the built in functionality of the calculator QUIT - quit, clearing all data from the calculator CALCULATOR MENU OPTIONS: ------------------------ SIMULATION: When you choose to join the simulation, a message pops up letting you know what shape and color you will have in the NetLogo simulation. This shape and color is randomly determined each time you run the activity, and you might share a shape and color with somebody else. There are many possible shapes and colors for the turtles. On the calculator a coordinate axis will appear, along with a small square representing the position of that student's turtle. A softkey menu will also appear, with two options: BACK and STEP Arrow keys - move the turtle BACK - returns to the MAIN MENU STEP - brings up a menu, where you can choose between steps of 1 thru 5. Pressing the ENTER key also allows you to change the step-size. MATH - makes your turtle flash red for while- this can help you find your turtle VIEW DATA: When you choose this option, data from the simulation is downloaded. Up to three data sets can be collected and displayed as PLOT1, PLOT2, and PLOT3. Initially, the plots are shown together, and you can toggle plots on and off using the middle three softkeys. BACK returns to the MAIN MENU, and RFSH collects fresh data from the NetLogo model. RESTART: Restarts the activity without the need to rerun the programs. USE CALC: This allows you to temporarily leave the program, use the built in functionality of the calculator, and then return to the activity with your data preserved. When you leave the program, the data lists from NetLogo are automatically placed in the stat editor. To return to the program, run DISEASE on the calculator. QUIT: This quits the program, clearing all data and restoring your previous graphics settings. THINGS TO NOTICE ---------------- No matter how you change the various parameters, the same basic plot shape emerges. After using the model once with the students, ask them how they think the plot will change if you alter a parameter. Altering the initial percentage sick and the percentage infection will have different effects on the plot. THINGS TO TRY ------------- Use the model with the entire class to serve as an introduction to the topic. Then have students use the NetLogo model individually, in a computer lab, to explore the effects of the various parameters. Discuss what they find, observe, and can conclude from this model. EXTENDING THE MODEL ------------------- Currently, the turtles remain sick once they're infected. How would the shape of the plot change if turtles eventually healed? If, after healing, they were immune to the disease, or could still spread the disease, how would the dynamics be altered? CREDITS AND REFERENCES ---------------------- This activity and associated models and materials was created as part of the project: PARTICIPATORY SIMULATIONS: NETWORK-BASED DESIGN FOR SYSTEMS LEARNING IN CLASSROOMS. The project gratefully acknowledges the support of the National Science Foundation ( REPP program ) -- grant number REC #9814682. Copyright 1999 by Uri Wilensky & Walter Stroup. Updated 2001,2002. All rights reserved. Permission to use, copy, or modify this software and its associated documentation, models and curricular materials for educational and research purposes only and without fee is hereby granted, provided that this copyright notice and the original authors' names appear on all copies and supporting documentation. For any other uses of this software, in original or modified form, including, but not limited to distribution in whole or in part, specific prior permission must be obtained from Uri Wilensky and Walter Stroup. These programs shall not be used, rewritten, or adapted as the basis of a commercial or hardware product without first obtaining appropriate licenses from Uri Wilensky & Walter Stroup. We make no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. To refer to this model in academic publications, please use: Wilensky, U. & Stroup, W. (1999). NetLogo HubNet Disease model. http://ccl.northwestern.edu/netlogo/models/HubNetDisease. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL. In other publications, please use: Copyright 1999 by Uri Wilensky and Walter Stroup. All rights reserved. See http://ccl.northwestern.edu/netlogo/models/HubNetDisease for terms of use.
Mathematics, Science
Functions, Linear Equations, Graphing, Algebraic Equivalence
Understanding what a function is and moving from a collection of points or a verbal description of a rule to an analytic expression are often very challenging tasks for students. This activity targets each of these learning issues and also can engage students with what it means for functions to be equivalent (e.g., x + x being the "same" as 2x). The function activity works by having students "become points" and move around in a Cartesian coordinate system according to rules like, "Move until your y-position is two times your x-position." As students move, NetLogo aggregates the points for the whole class and displays them. Then the points for the class are passed back to each of the students. The students can work on trying to develop analytic functions (e.g., Y=2x) that describe this rule and go "through" the points. The network can collect all the students' proposed analytic expressions and, if the class is encouraged to find "interesting" functions that go through these points (e.g., y = 40x/20), then there is a very easy transition into understanding what equivalence is about. In an Algebra class the ideas of equivalence - what for students starts off feeling like we're saying things are the "same" that really don't look alike - are typically associated with "rules for simplifying" and "factoring." Often these equivalence rules are approached in a way that doesn't allow students to see what a function is and what equivalence means (that you get the "same" picture on a graph or "same" x and y points on a table). Taking time with this activity addresses many of these challenging issues while also, at an even more introductory level, helping students get used to the convention of naming locations on the Cartesian plane. The activity should be repeated several times and can be returned to at different points in an academic year as you explore different kinds of functions. Science teachers [or, certainly, math teachers] can use this activity to help students understand how analytic expressions or mathematical "laws" can summarize patterns or relations observed in the world around us (e.g., F = ma for a given mass with x standing for "a" and y standing for "F").
Note: if you are used to having students think of "x" as a (single) "hidden" number (what you "solve" for), this activity emphasizes the more general idea of x being a variable (i.e., capable of representing different values - like all the ones the students choose to embody in this activity) in a function that "connects" x's with y's. A function is a rule-machine or recipe you drop numbers into and get numbers out of. The variable idea of x (where x can become any value in the domain) is foundational for students' success in more graphically based approaches to algebra - what is often called "a function-based approach" to algebra - and to courses like Algebra II, Pre-Calculus, Calculus. (Solving then becomes a kind of comparison of distinct functions where "='s" is one kind of comparison and is associated with where the functions "cross" or "touch". The solved-for x is the x-value where the functions touch. It is not the only value x can assume, just a special one in the comparison of two functions).
Some introduction to basic number operations
Some teachers have used a preliminary activity where they set up a people-sized Cartesian coordinate system either in their classrooms or in some other (larger) space in the school (e.g., gym, cafeteria, main lobby) and have students move around according to rules similar to the ones they are going to use for the HubNet activity.
An alternative is to use QuickTimeTM movies of marching bands where sometimes it is hard to see what is going on and then, voila, a visible pattern emerges from each band member following his or her own "local" rule(s).
Like all the HubNet activities, begin by enabling the Function Activity on the server and then clear the server of any old data that may be on it (directions are in the Top-Level Tips section). You will be reminded to do this as you open the HubNet Function Activity model or press the Setup button. As you open the HubNet activity you will be asked to login.
Although the NetLogo program "presses" Setup for you automatically when you open it, you may want to get into the habit of pressing the Setup button each time you start a new activity or begin work with a new class. Remember, Setup will typically be pressed only once during a class period and requires students to login after it is pressed. If you want to do another round of an activity you typically don't want to go through the whole process of having students login again and so on. To do another round of an activity press the Re-Run button. Re-Run is typically used multiple times in a class period and does not require students to repeat the login sequence.
One of the things that NetLogo does for you is to send a collection of settings that determine features of the calculator graphics window (e.g., xmax, ymax, etc.). When you press Setup or Re-Run these settings are sent to the server where the calculators can get them. If you want to change these settings (either right from the start or after playing a round), change them, and then press the Re-Run button, to make sure these settings are sent to the server. Then follow the QuickStart Instructions associated with restarting the activity.
With the NetLogo program now running we are ready for the students to login. Before doing this it is a good idea to have them clear the calculator memory. This is described in the Top-Level Tips section (2nd + 7 1 2). The login sequence is also described in the Top-Level Tips section (press APPS then NETWORK then login). You will also want to login alongside the students to be able to project, using a teacher calculator connected to a ViewScreenTM, what the students will see on their calculators. Having an upfront display will also be important later in the activity when the points are aggregated and the various student-generated functions are displayed.
When the students first login they will see a screen similar to this.
This is a home screen, called the calculator Main Menu that students can always return to at any point in an activity. Think of it as the lobby of a building. BACK or DONE softkeys will get you back to this lobby.
The "-" can be moved up and down using the arrow keys to select the different options. With PICKPNTS selected, either press ENTER or the SLCT softkey to go into where students can move their points around. Before jumping into the coordinate system, the students are told what the shape and color of their icons will be. They should remember these, as it will make "finding themselves" in the upfront space much easier.
When they press ENTER again they should see a screen with their point on it.
The students can move the given point around the space using the cursor (arrow) keys. Note how the x and y coordinates are displayed and updated at the top of the screen.
Students should move around and see if they can locate themselves in the upfront NetLogo screen (where everyone's point is projected).
The teacher should now give a verbal rule like, "Move until your y value is two times your x value." Help the student see what this would mean by pointing to the x and y coordinates displayed on the top of the screen and explaining that you want "this" y value to be two times the x value. Assuming it is not currently, tell them they have to move around until they find a spot where this is true (and that there are lots of them).
You can get some powerful feedback about student thinking as they start to move around. Typically, student movement will be concentrated in the first quadrant (and, closely related, at least some points will be in the second quadrant). As students are moving or after they've selected points you might ask them "Why do you think most of you are up here [pointing to the first quadrant]?" Either in this round or in a subsequent one encourage them to "spread out more" or be "more adventurous." Positive social pressures to be more creative or "out there" are a powerful and unique aspect of working in a network space. In the network space there is a "right level" of anonymity enabling students to take risks or even be "wrong" without having to be embarrassed by doing so. You are trying to use the students' association of "cool-ness" with "different-ness" toward the end of raising the level of the mathematical conversation. A similar dynamic should be encouraged later when students send in functions that go through these points. Yes, Y=2x is perfectly correct but Y=100x/50 is more interesting.
Students can chose one or more points as they go by pressing the PICK softkey. Each point they choose will show up on their screen and be "stamped" on the upfront screen. Only the last point each student chooses will be the one sent to the whole class. Students can change the step size by pressing the STEP softkey and choosing one of the step size options.
When they select DONE, the last point picked by each student is sent to the class and the students are returned to the calculator Main Menu. Move the "-" to VIEW PNTS and press ENTER or the SLCT softkey.
The last points picked by the entire class should now be visible on the students' calculator screens. A very powerful feature to use at this point is pressing the right and left arrows on the calculators to jump between the points. The x and y coordinates for each of the points become visible and you can ask, "Does this point satisfy the rule? Why or why not?" Pressing Enter will make the softkeys visible again. Press DONE or BACK to return to the main menu.
By selecting the CREATE EQN option in the main menu and pressing ENTER you can have the students create analytic functions that "go through" the points they sent in. Challenge your students to come up with functions that use division, or multiplication, etc. This is a place where this activity can take off as students submit functions and start comparing their functions with ones that other students submitted. You can encourage this process with questions like, "Can somebody come up with a function that uses division or multiplication? Powers? Etc.".
At CREATE EQN, each student can enter a function and view it with the points before sending it to the class. This allows students to play in private first and then when they've found an interesting one, send it to the class.
If their functions miss, they can press REDO to try again (without anyone else knowing that they may have missed). They can also press REDO if, after gaining some confidence, they want to enter a more interesting function.
NOTE: There is no "error trapping" in this program (unlike if you were using the Function capabilities of the calculator alone). Students must enter expressions that can be interpreted. The #1 most common error is confusing the role of the negative key with the minus key. Minus is an operation; negative is a property of a number and confusing the two will cause the program to "crash out." The student will then have to re-login after first clearing the memory of the calculator.
When the student selects DONE, his or her current function is sent to the class.
Returning to the main menu after pressing DONE, the students should now select VIEW EQNS. They should now see a selection of the functions sent by the class. Again the features of the calculator can be used to take a closer look at these functions. The up and down arrows allow you to "jump" between lines. Note that the function for each line now appears on the calculator screen. Just as you may have for individual points, you can ask if the current function will go through the points. You can jump to points by using the right and left arrows. And finally, to get a new set of functions press NEXT. To return to a previous group of functions press PREV.
Note, USE CALC allows you to quit the program and just use the calculator "off line." If you want to then get back into the program, press the PRGM key and run the FXNACT program.
This is an activity where you'll want to cycle through a range of kinds of verbal descriptions. To do so, have students return to the calculator Main Menu and select ReStart. In NetLogo, if you want to change the size of the Graphics Window, change it to whatever size you want and press the Re-Run button. See the Top Level tips for more information regarding resizing the NetLogo Graphics Window. Note that NetLogo requires you to choose screen-sizes that are symmetric around the x- and y-axis (that is, with the origin in the middle). When the students choose the PICK PNTS option from the calculator Main Menu, they will get the new settings.
Now you are set to re-run the activity. The following are a series of challenges that can be done. We encourage you to not get "hard" too quickly but also not be afraid to challenge students. A wide range of challenging topics including the standard transformations of functions, combining functions, creating functions of y instead of functions of x can be engaged in these challenges.
Important Introductory Challenges:
Move until:
Mid-Level Challenges:
Move until:
Tougher Challenges:
Move until:
We do NOT recommend completing all of these at once! A core subset of introductory ones, or ones of your own making can be done together. Then the Function Activity can be returned to at various points in a given few weeks or over a course of a year.
This activity should take one or two 60-minute class periods to complete and may be repeated as many times during a unit or academic year.
Grades 6 - 8:
Explore relationships between symbolic expressions and graphs of lines, paying particular attention to the meaning of intercept and slope; model and solve contextualized problems using various representations, such as graphs, tables, and equations; use graphs to analyze the nature of changes in quantities in linear relationships; relate and compare different forms of representation for a relationship; identify functions as linear or nonlinear and contrast their properties from tables, graphs, or equations; recognize and generate equivalent forms for simple algebraic expressions and solve linear equations.
Grades 9 - 12:
Analyze functions of one variable by investigating rates of change, intercepts, zeros, asymptotes, and local and global behavior; approximate and interpret rates of change from graphical and numerical data; understand the meaning of equivalent forms of expressions, equations, inequalities, and relations; write equivalent forms of equations, inequalities, and systems of equations and solve them with fluency-mentally or with paper and pencil in simple cases and using technology in all cases; use symbolic algebra to represent and explain mathematical relationships.
Students will develop the idea that functions are collections of points. Students will understand the concept of equivalent functions and demonstrate this understanding by producing several equivalent functions. This activity allows the teacher to get a snapshot of students' basic math skills (such as multiplication of negatives). Much more is also possible, see above.
These are resources that are included in the HubNet Function Activity program.
WHAT IS IT? ----------- Students each find points that satisfy a spoken rule, such as "Move until your y value is twice your x value." The students can see, on their own calculators, their point and its x and y values, and on the NetLogo display they can see everyone's points moving in real-time. Once everyone has picked one or more points that meet the rule, the students can view the last points picked by everyone. They also have the opportunity to attempt to create an equation that best fits the last point entered by everyone. Finally, they can view each other's equations. This activity requires the TI Navigator activity AAA - Function Activity 2.4 For further documentation, see the Participatory Simulations Guide found at http://ccl.northwestern.edu/ps/ HOW TO USE IT ------------- QUICKSTART INSTRUCTIONS: ------------------------ Contains instructions as to how to quickly setup the model, calculators, and TISchool web page so as to run this activity. The instructions can be found below: Teacher: Open the TISchool site in your web browser. Enable activity AAA - Function Activity 2.4 Open the teacher console and press the ERASE ALL DATA button. If it is not open already, open the NetLogo model. If you are prompted by a Login dialog, enter your teacher id and password and any other necessary information. Optional- Zoom In (see Tools in the Menu Bar) Press the GO button. Everyone: Reset the RAM on the calculator by pressing the following keys: 2nd MEM 7 1 2. Login to the calculator. Choose the PICK POINTS option. Remember your shape and color and press ENTER. Move around using the arrow keys to acquaint yourselves with the interface. Teacher: Tell the students a verbal rule, such as "Move until your Y is twice your X." Optional- Press the NetLogo SET RULE button and enter the verbal rule to be displayed in the CURRENT VERBAL RULE monitor. Everyone: Pick some points that meet the requirements of the verbal rule. This is done by moving to a point with the arrow keys and then choosing that point by pressing ENTER or the PICK softkey. Press the REDO softkey to repick the last picked point. When you are done picking points, press the DONE softkey. Choose the VIEW POINTS option to view the last point chosen by each member of the class as well as all the points chosen by you. When finished viewing the points, press the DONE softkey. Now that points are picked, you can create an equation of those points using the CREATE EQN option. Try to match the equation as closely as possible to the last points picked. You may keep on trying different equations by pressing the REDO softkey and entering a new equation at the prompt. When you have chosen the best-fit curve, press the DONE softkey. You can view the class's equations using the VIEW EQNS option. Press the RFSH softkey to get any new equations. When you are done viewing the equations chosen, press the DONE softkey. Teacher: To rerun the activity, do not clear the server. Stop the simulation by pressing the NetLogo GO button. Press the NetLogo RE-RUN button. Press the GO button. Everyone: Exit to the calculator Main Menu. Choose the RESTART option from the calculator Main Menu. Choose the PICK POINTS option and continue. Teacher: To start the simulation over with a new group, stop the model by pressing the NetLogo GO button, if it is on. Have everyone, including yourself, logout of their calculators. Press the ERASE ALL DATA button on the TISCHOOL site. Press the NetLogo SETUP button. Follow these instructions from the beginning again. BUTTONS: -------- SETUP - clears all turtles and patches. This should only be pressed when starting out with a new group of users since all data is lost. RE-RUN - sets up the model to be able to run again with the same users GO - runs the simulation SET RULE - displays an input dialog that allows the leader to enter the verbal rule. The entered rule is then displayed in the CURRENT VERBAL RULE monitor. This is meant for a convenience of the users and has no effect on the actual running of the simulation. NEXT >>> - shows the next quick start instruction <<< PREVIOUS - shows the previous quick start instruction RESET INSTRUCTIONS - shows the first quick start instruction MONITORS: --------- MOUSE X - shows the pxcor of the patch the mouse is currently on, or if the mouse is no longer over the graphics window, it displays the pxcor of the patch the mouse was last on MOUSE Y - shows the pycor of the patch the mouse is currently on, or if the mouse is no longer over the graphics window, it displays the pycor of the patch the mouse was last on NUMBER OF POINTS AT MOUSE - shows the number of turtles on the patch the mouse is currently on, or if the mouse is no longer over the graphics window, it displays the number of turtles on the patch the mouse was last on CURRENT VERBAL RULE - displays the last rule that was entered when the SET RULE button was pressed. This is meant for a convenience of the users and has no effect on the actual running of the simulation. CALCULATOR INFORMATION ---------------------- TEACHER CALCULATOR: ------------------- Students and teacher have identical calculator programs. STUDENT CALCULATORS: -------------------- To select points, choose option PICK POINTS from the calculator Main Menu. Move the cursor with the arrow keys. To pick a point, press the ENTER key or PICK softkey. To remove the last picked point, press the REDO softkey. Be aware that the cursor will move back to the position of the point being removed. To change the distance that the cursor moves when you press an arrow key, press the STEP softkey. This allows you to choose a new distance by which to move the cursor. When you are done picking points, press the DONE softkey. You can choose the VIEW POINTS option to view the last point chosen by each member of the class as well as all the points chosen by you. When finished viewing the points, press the DONE softkey. Then, you can create an equation using the CREATE EQN option. Try to match the equation as closely as possible to last points picked. You may keep on trying different equations, by pressing the REDO softkey and entering a new equation at the prompt. When you have chosen the best-fit curve, press the DONE softkey. You can view the class's equations using the VIEW EQNS option. Press the RFSH softkey to get any new equations. When you are done viewing the equations chosen, press the DONE softkey. THINGS TO NOTICE ---------------- Notice how my-num and user-id are used in keeping track of a particular student's individual points. THINGS TO TRY ------------- Here are a few verbal rules for the teacher to have the students make with their points: Move until your y value is twice your x value. Move until your y value is x times your x value. Move until your y value is the inverse of your x value. EXTENDING THE MODEL ------------------- CREDITS AND REFERENCES ---------------------- This activity and associated models and materials was created as part of the project: PARTICIPATORY SIMULATIONS: NETWORK-BASED DESIGN FOR SYSTEMS LEARNING IN CLASSROOMS. The project gratefully acknowledges the support of the National Science Foundation ( REPP program ) -- grant number REC #9814682. Copyright 1999 by Uri Wilensky & Walter Stroup. Updated 2001,2002. All rights reserved. Permission to use, copy, or modify this software and its associated documentation, models and curricular materials for educational and research purposes only and without fee is hereby granted, provided that this copyright notice and the original authors' names appear on all copies and supporting documentation. For any other uses of this software, in original or modified form, including, but not limited to distribution in whole or in part, specific prior permission must be obtained from Uri Wilensky and Walter Stroup. These programs shall not be used, rewritten, or adapted as the basis of a commercial or hardware product without first obtaining appropriate licenses from Uri Wilensky & Walter Stroup. We make no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. To refer to this model in academic publications, please use: Wilensky, U. & Stroup, W. (1999). NetLogo HubNet Function Activity model. http://ccl.northwestern.edu/netlogo/models/HubNetFunctionActivity. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL. In other publications, please use: Copyright 1999 by Uri Wilensky and Walter Stroup. All rights reserved. See http://ccl.northwestern.edu/netlogo/models/HubNetFunctionActivity for terms of use.
Mathematics, Science, Social Sciences
Emergence, Modeling, Optimization, and Measurement
Students control traffic lights in a city. They can either manually switch their lights from red to green and back again, or set a phase for their light - set the time in the cycle when their light switches. The scenario used to introduce this activity to students is that with elections just a year away, the class has been commissioned by the Mayor of the City of Gridlock to help improve the traffic problem in her city. Goals for this activity include having the students develop strategies for improving traffic flow and, closely related, developing "metrics" or measurements for traffic so as to support their claims for having improved traffic. Part of establishing a metric depends upon deciding what aspects of the driving experience might matter the most to drivers (e.g., speed?, cars stopped?, wait time?), understanding how the metrics might be related or distinct (e.g., how is the number of cars stopped related to average speed?), creating metrics that may or may not be independent of the number of cars, and deciding which one or ones to include in a report to the mayor. This project engages many ideas related to how global patterns - for example, traffic flow - may be the result of lots of local interactions and strategies. From a curricular point of view, this activity has more of a problem solving or project- based structure to it than some of the other activities. Many specific content areas and mathematical ideas are engaged, but they are not organized in a traditional linear curricular sequence. Both problem solving and project-based approaches are strongly supported in national standards documents in both science and mathematics and in many state and local curricular guidelines. This activity also can be well integrated with social studies topics and raises many science, technology and society (STS) issues.
Arithmetic, Familiarity with traffic flow
This activity requires, in addition to a complete Navigator system and NetLogo software, NetLogo model Gridlock.nlogo and Navigator activity AAA - Gridlock 1.2.
The QuickStart directions take you carefully through each step that needs to be taken to run a round of the Gridlock activity, so rather than repeat these in detail we'll just focus on the top level "chunks" of this sequence and some of the learning and teaching possibilities that arise.
Follow the Top-Level instructions printed at the beginning of this guide to enable the Gridlock activity, clear the server, and clear the student calculators. You will be prompted to enable the activity and clear the server when the HubNet Gridlock model is opened.
Unlike all the other activities where you need not plan ahead much for how many students log in (where, generally, the rule is the more the merrier), in this activity you need to have an intersection for each student to control. This means the traffic grid needs to have enough intersections and these need to be arranged in a two-dimensional, rectangular pattern. 30 students are easier to accommodate (e.g., using a 5 x 6 grid) than either 29 or 31. To accommodate these more difficult numbers you have some options (in descending order of what we've found to be preferable, but you should do what works best for you):
Once you've decided on the dimensions of the grid you'll use the sliders in the model to set these dimensions. Next you'll decide how many cars to include using a slider, and you'll have to decide if you want to run in manual or automatic mode. Manual mode allows students to change their lights when they want, automatic allows them to set at which time on a modular clock their light switches. We recommend starting with manual mode. After running the activity while only viewing the data from the Stopped Cars plot, we recommend turning on a different metric or even all three metrics (by setting display-which- metric to 4) for display in NetLogo. You can decide which of the three metrics to send back to the calculators. Unlike the Disease activity where each dataset is associated with different runs, in Gridlock the data for all three metrics is collected during a single run. This means that at the end of a particular run you can send this first metric, have the students get it, then switch the slider and, one at a time, send the other metrics to the calculators. The students can then get these new datasets. On the calculators each of these can be displayed one at a time, all together, or in any pairings the students might want to look at. Note that the vertical scale is distinct from metric to metric and the scaling of the axes will be very different. This may mean that some datasets will be hardly visible if displayed at the same time as other datasets (metrics).
Now press Setup. Remember Setup is a "powerful" button, requires students to login, and is typically used only once in a class period. Re-Run is used to repeat the activity, doesn't require login, and may be used many times during a class period (assuming you keep the size of the grid the same).
After the setup you will be prompted to press the Initial Login button and then have students login. As they do, their user-ids will appear next to unique intersections in the simulated traffic grid. To control their intersection, students will have to choose between manual and automatic mode from the calculator Main Menu. Again, manual mode allows students to change their lights when they want, automatic allows them to set at which time on a modular clock their light switches. Start with manual mode.
Rather than tie up an intersection with a teacher calculator (thereby forcing you to switch between observer/facilitator and participant), a strategy we've used with almost all the activities and that is particularly effective for Gridlock is to have one of the students use the teacher calculator (you can use either your account or, preferably, the student's). To make some of the logistics easier, you can have the teacher calculator be on its own hub. Then you can demonstrate what to do when needed, but otherwise let the students be in charge of the system.
When students are told their intersection they are told using the first quadrant Cartesian coordinates. The traffic light in the lower left hand corner is (0,0), the one above it is (0,1), and the one to the right of it is (1,0). Some teachers have preferred to let the students figure out how this system works, but generally we have tended to tell students that the first number is how many "over" starting from zero and the second number is how many "up" starting from zero. They should see their login number at this intersection. As further confirmation they should select the manual option in the main menu and when the manual mode screen appears, press either ENTER or the CHNG softkey. This should switch their light and they should note how the red and green squares, representing the lights in the respective directions, exchange locations. This is what allows cars to pass in one direction and not in the other.
If there is an intersection that isn't working for some reason, you can "automate" it by pressing the "Revert Light to Unmanned" button, then clicking on the intersection to automate. Repeat this procedure for as many intersections as needed.
Once everyone has logged on and found their intersections, press the Initial Login button again to turn it off. You can choose to discuss the different graphical metrics before the students start, but we recommend (pretty strongly, since students will be antsy to assume control of the network) that you wait until after things have run for a while to discuss them. And then we recommend starting a discussion only after you have pressed the Go button again (to turn it off) to stop the traffic flow. While students will become very animated in controlling the traffic, you can encourage them at least a little bit to "notice the graphs" as they are playing.
Remind the students that they are suppose to be improving traffic flow, and press the Go button to let them have at it for a while longer.
At first students will be very focused on their own intersections, then they will tend to become aware of how their intersections are impacted by the ones around them (such that you'll hear them "encouraging" their peers [e.g., "Hey, number 3 turn your light faster!"]) and they might even begin to develop local strategies that they'll work to articulate. As this is going on, you might report a top-level characterization of how they are doing ... "Ooh, things are getting better (worse) ... whatever you all are doing is starting to payoff (or not)."
Depending on how in-control you feel, you might want to have the last 10 - 20 seconds of the first run be with their hands off the calculators. Obviously this will suddenly make the traffic much worse (we expect!) but the contrast will be useful in helping to understand the relationships between the metrics and what it is they measure. Then press the Go button again to stop the flow of traffic.
A place to start the discussion is to ask students what strategies they used in controlling their traffic light. Some of the strategies we've heard include:
You can also ask if these are strategies that everyone might do (almost all of them are). Also ask if there are other strategies that might be tried as a group. Two of the most common are:
It is important that the discussions and analyses of results not always be "centralized." One of the distinctive features of the HubNet design is that it puts powerful functionality in every student's hands so that each of them can become more facile and nuanced in using this functionality to make sense of complex phenomena.
Press the Send Data button in NetLogo. This sends data from the participatory simulation to the server. Now the students have to get this data. The students should return to the Main Menu on the calculator and select the option to View Data. The calculators will retrieve the data set from the server and display it as a statplot on the calculator. You should see the data and softkeys like the following.
| BACK | SET1 | RFSH |
You can turn a data set on and off by pressing the softkey corresponding to the data set. So if you pressed the SET1 data key above, this graph would no longer be plotted and you'd see the following for softkeys.
| BACK |
SET1 |
RFSH |
The strike-through means this set is now off. After turning the data set on, pressing the right and left arrow keys moves you through the data set. If more than one data set was displayed, the up and down arrows would move between them. Pressing ENTER returns you to the screen with the softkeys.
You can now send a second data set by moving the slider on the calculator-data-set slider AND the metric passed slider to a new value (say, "2" for the second metric). Press Send Data and have the students press the RFSH softkey. They will be sent the new data set and both data sets will be on.
Because these data sets, unlike those for the Disease participatory simulation, are for different quantities it is likely that it will be hard to see both data sets at the same time. Pressing the softkey associated with which one you'd no longer like to see, will toggle this plot off.
Repeat the send sequence for the third metric (move both sliders in NetLogo; students press refresh).
All three metrics will now be on the calculators. We have found it valuable to have students work in groups of three at this point, where each student has one of the three sets toggled on and the others off. Then the group can set all three calculators near each other and start to use the right and left arrows to find interesting or recognizable related sections (e.g., at the end, if you had them take their hands off the calculators this should be a recognizable section). All the graphs have the same horizontal time scale and this axis has the same interpretation for all three (the number of "ticks" of the simulation clock from the beginning of the simulation [actually it is sampled, but the sampling is identical]). Comparisons between the calculators in a group at a given time step or series of time steps are possible.
Ask the groups of students to compare the graphs and see how they might be related. The three metrics are:
If they think an increase in one quantity should be related to an increase or decrease in another quantity, they should be able to find this relation in the graphs at a given region of time. Note, too, that two of these quantities are "averages" and one is just a count (Stopped Cars). How might this difference show up in the data? Finally, each group should start to think about which data set is most useful as a metric for the quality of traffic flow. Why? If they think more than one is needed, which ones and why?
Now that you have discussed possible strategies and metrics, you can rerun the simulation any number of times. If there is one metric you've decided on, you can now collect data using this same metric for different trials (instead of loading the three data sets from one trial as we did above). To do this you'll leave the metric-passed slider alone, and move only the calculator-data-set slider each time you do a new trial (either before your start the new trial or after, it doesn't matter; then remember to press Send Data to put it on the server for the calculators to get).
Press the Re-Run button to clear out the graph plots. Choose which metrics you want visible on the upfront screen by changing the value of the display-which-metric slider (if you've decided on one you can choose that one, otherwise number "4" will give you all three metrics at the same time).
If you've decided on a strategy, make sure everyone understands it. As it may be easier to make comparisons if you do nearly the same amount of time for each strategy (and the sampling that is happening will be less likely to cause confusion), decide and announce in advance how long you are going to let the simulation go. If the strategy requires some coordination, have the students work this out in advance. If someone is, for example, to "count to ten" make sure someone is appointed. It is preferable if a student is in these specialty roles. So if you do have an extra student, let him or her take up this role. Now press Go and let the students implement the strategy.
Press Go to stop the data collection. Press Send Data. Have the students go out to the Main Menu and then into VIEWDATA to make sure they got the dataset. (You can go right on to the next step, without checking the data, if you are pressed for time).
If there is a second strategy (and/or a third after that), remember to move the calculator-data-set slider (but NOT the metric-passed, if you want the same metric for all three trials). Press Re-Run, make sure students are ready to implement the next strategy and then press Go. Press Go again to stop. Then Send Data and have the students press BACK and then go into view data. The auto mode is an interesting capability and you are encouraged to have students at least think about this as one of the options to try. [If there are more than three strategies, maybe decide which one (or two) are the best so far, and then overwrite the loser with a fourth strategy.]
Now comes the challenge of comparing complex data sets. Let groups of students brainstorm different ways of comparing. Note that the students can now go to the QUIT option in the main menu and press E