Rock Paper Scissors

Posted August 30, 2016 by turtle

Off-line activity- playing the game

Assign each student a “breed” of rock, paper, or scissors, making the groups as equal as possible. Have each student choose a classmate at random and play one round of the game (paper covers rock, rock crushes scissors, scissors cut paper). Have each student who loses the first round sit down, and the remaining students continue to play until a single student is left standing.

Play again (with students reassigned in equal groups), and encourage students to choose partners at random. If there are enough students and the groups are roughly equal, the “winner” should not be predictable.

Change of rules: If time allows, have students play where the loser of each round changes to the winner’s breed for the next round. For example, in a round one match between paper and scissors, the student who was paper (and the student who was scissors) plays round 2 as scissors. Students may need a pencil and paper to keep track of their breed in each round. Continue to play until one breed wins (or is in a large majority) – again, with a large enough group and even beginning groups, the winner should not be predictable.

Science Connection

Mixed populations of e.coli will exhibit similar strategies found in RPS. So will side-blotched male lizards when establishing dominance.

On-line programming activity – build “Rock/Paper/Scissors” program

First, discuss modeling with students – what are the benefits of creating a computer model of the game we just played? What can we do with a model that is impossible in the real world? What are the limits or assumptions behind such a model? This is an opportunity to review or re-teach the uses of computer models.

(Note to instructors:  For these instructions complete with screen shots of the blocks code, see the attached file below):

1. Start a New Project, blank project.

2. Create 3 agents- Rock, Paper and Scissors- by using the ‘edit breeds’ button at the top of Spaceland.

3. In the World, make a setup procedure that creates 30 of each of the agents and sets their shapes, sizes and colors to something that you like. *note that some breeds have a different radius size and therefore might have an advantage when colliding/interacting with a different breed.

4. Create a “wiggle” procedure (right random 45, left random 45, forward 1), name it “wiggle”, and place it in the “everyone” page. Get a “while forever toggled” block from the Interface drawer, and call the procedure. Test the program and see that you have about 30 of each breed walking around in Space Land.

5. Using collision blocks (detection drawer) have the losing breed delete and the winning breed hatch a new agent (use the “create/do” block from the agents drawer). Be sure to add the set color and if appropriate, set size blocks to the “do” in the create, so the new agent will look like the original agent. In the example seen, when rock collides with scissors, scissors will die, and rock will create a new breed that is red.

Test the program – you should see one breed win, fairly quickly. If it is set up correctly, it should not be the same breed each time. Note: if one breed is always winning, it might be a function of the size of the breed. Make sure the breeds are the same size and relative shape.

Once the program is working, add a data box for each breed by editing widgets. Label them for each of the breeds.

Then add a line graph (same process to edit widgets), and label it. Be sure to name the graph and you can edit the series to label it and choose a color for the line.  Make sure that the code for the graph is also part of the program.

Save and test your program. Students should run the model several times, noting which breed wins and discussing why the outcome is unpredictable. If time allows, run an experiment to see if the results are different with a different initial number of agents (remember not to create more than 2000 total agents or the program will run too slowly). Another possible experiment is to see whether giving one breed a greater initial number of agents will cause it to always win, and what that size advantage must be to get the desired result.


Add more breeds and competitions (rock, paper, scissors, lizard, Spock). See this video clip from The Big Bang Theory for more information:

Research the e.coli competition as well as the side-blotched lizard and see if you can match the data of researchers.

Log in or register to view attachments and related links, and/or join the discussion