Natural ecosystems are often incredibly sensitive to change, such as the introduction or removal of a species. A healthy ecosystem is said to be in equilibrium, which is a relatively stable state that keeps population sizes within a sustainable range (not too many of a certain species alive or dead). Consider the case of bears (who only eat fish) and salmon (who are only hunted by bears):
In a perfectly stable ecosystem, this cycle can continue indefinitely. Of course, natural ecosystems are far more complex than this simple example, but the relationship between species applies to complex ecosystems as well.
If the bear population grows particularly large one year, the total population will require more fish to feed it. This will make the salmon population shrink.
Over time, if there are fewer salmon, there will not be enough food for all of the bears to eat. Some bears will starve and fewer cubs will be able to prosper, leading to a smaller overall population the next year.
As more time passes and the bear population gets smaller, the salmon population will start to increase again due to having fewer natural predators.
Because of all of the interdependence between various species, it can be very difficult to understand the implications of small changes to an ecosystem in the real world because (a) the relationships between species can be incredibly complex and (b) actual experimentation in real-world ecosystems can be catastrophic -- by the time observable changes have taken place, it's often too late to stop their effects.
Simulations allow scientists and others to determine whether a particular action (such as introducing a non-native species into a habitat) will have unseen effects on a system. Today you will use a simple simulator in Scratch to observe some virtual ecosystems.
The project we start with today will perform a very simple simulation of a bay (or whatever your favorite shark-infested body of water is) containing sharks and fish. The simulator breaks the ecosystem down into a set of regions in a grid, with each region containing either sharks, fish, or open water. As time goes by, each species behaves by the rules of their population model, which define things like reproduction rates, natural predators, and so on. Sharks have a different set of rules than fish, and each one is adapted for surviving in a different way.
The goals for today's lab include:
Check out the population models for the fish and sharks.
Change a rule or value of the population model.
Create a new species (see below) and insert it into the simulated world.
You can download the simulator here.
Step 1: Population Models
A population model is just a fancy term for a list of rules that determines how a particular population behaves. The current simulation has two different populations present in it: sharks and fish.
Open the simulator project in BYOB.
Notice the two sprites named
Fish. Each one of these sprites represents a different population type, and defines the model for the populations behavior on the stage.
Click on the Sharks sprite and look at the block attached to the block. This set of rules defines how the shark population changes over time -- we'll try changing these later. Check out the
Fish sprite and you'll see that the same block appears there.
Run the simulator by clicking on the green flag and wait until the
number of steps is
10 (note: it may take a long time for the simulator to run). Can you tell that the populations are behaving differently? Make observations but don't worry about recording anything -- you will be asked to make similar modifications later.
Step 2: Manipulating the Models
Now that you've seen the models, let's change them all around! We'll change some of the rules in the model so that the populations behave differently.
Click on the
Sharks sprite and change the
chance of reproduction to 90% and eliminate the possibility of death by overcrowding.
Run the simulator again and observe how the simulation proceeds. Do you notice any differences? Did both species survive for 10 time steps? Again, make observations but don't worry about recording anything.
After you've seen the effects of this change, close the project and reopen the original version to restore the original rules.
Step 3: Speciation
This simulator was built to be customized, and that is your job today! Your objective is to add a new species to the simulator that will be able to coexist with its neighbor for 25 time steps. Do not change any of the pre-existing population models, but feel free to do whatever you want with yours. There are three steps to creating a new species:
When you finish customizing your own species, run the simulator through 25 time steps and save the project. Remember: all three species should survive to the 25th time step.
Duplicate one of the pre-existing sprites (
Fish) by right-clicking (option+click on Macs) and clicking
duplicate. Change the name and icon to represent whatever species you'd like to create.
Edit the block and add an extra
replace line to the end of the block with your species name as the final argument.
Click on your species sprite and change the species name to the same name you used in Step 2. Then change the model as you see fit -- be creative and don't be afraid to experiment! The guidelines provided below may prove useful.
Simulator GuidelinesSome things that might be helpful to know:
The chance of reproduction for each species can be adjusted by changing the value of the
chance of reproduction variable in each sprite. A different rate can be specified for each species type, but every member of the species has the same chance of reproduction (unless you change that in a rule, such as giving a shark who is near fish a higher chance of reproduction).
The simulator takes a long time to start up because it is organizing the data in a way that allows the actual time steps to be completed more quickly. You'll have to be patient while it loads.
You can create a totally new species by duplicating one of the preexisting species, changing the species name, and adding its new name to the
population types list in the
World sprite. Remember to add some members of that species to the initial grid! Look in the
initialize simulator block to do that.
The population model (
rules) can be assigned by adding new blocks to each species'
rules list. You can add as many rules as you like. Try reading through the rules -- it should be fairly straightforward what each rule is doing, and comments have been provided as well.