Note: Red links take you to portions of the tutorial. Blue links provide background information to aid in teaching.
In this unit, students will create a simple but complete version of Pac-Man game while expanding knowledge of the AgentSheets software program. Students will apply basic and advanced design process to identify objects “agents” and interactions “operations”. Throughout this unit, students will be introduced to computational thinking patterns and skills, including basic object interaction, creating object instances, rule based programming, and message sending. Over the course of the unit, the difficulty of the game with ghosts with random movement will be contrasted to the difficulty of the game with ghosts with artificial intelligence.
Yesterday Pac-Man started using cologne and stinking up the place, but the ghosts had no nose for it. Today this all changes… The ghosts become acquainted with their sense of smell! In this lesson, students will be programming the ghost agents to track Pac-Man using the hill-climbing algorithm.
ISTE (International Society for Technology in Education) NETS (National Educational Technology Standards)
#4b plan and manage activities to develop a solution or complete a project.
#4d use multiple processes and diverse perspectives to explore alternative solutions.
#6c troubleshoot systems and applications.
ISTE NETS are referred to by CDE Performance Standards for Teachers #7- Technology, which states, “The teacher will have demonstrated the ability to instruct students in basic technology skills. He/She will: … instruct students in basic technology skills by imbedding them in their standards-based, content instruction (7.5.3)”
Please check with your district’s technology department to see if there are additional standards at the district or school level.
Anticipatory Set / Modeling: 5 minutes
Student work showcase: Select one of the student’s games and project it on an overhead screen. Demonstrate what can be done so far on her/his worksheet. Compare this to a completed version of Pac-Man so students can see where they are headed. Note that in the student’s versions the ghosts are still not tracking Pac-Man; they are moving randomly. Inform students that today they will be programming the ghost agents to track Pac-Man using the hill-climbing algorithm.
Teaching: 15 minutes
Remind students of the computational thinking patterns used in Pac-Man:
Collision: Pac-Man collides with ghosts.
Artificial Intelligence usingCollaborative_Diffusion and the Hill_Climbingalgorithm
Today we will be focusing on the hill-climbing algorithm using heat (scent) values.
Show the third video clip on the Collaborative_Diffusion link under “Simple Collaboration” to introduce the Hill Climbing Algorithm (the first two were shown on Day 4 of the unit). Highlight the difference - now the ghost is tracking Pac-Man based upon the scent value he left behind.
You can also refer students to the Hill_Climbing and Heat_values links to use while programming as these contain sample code for AgentSheets and game enhancements including the use of power pellets.
Guided Practice / Monitoring: 15 minutes
Demonstrate for students how to make the first rule for the hill-climbing algorithm in the ghost behavior. We will also replace the random ghost movement with tracking behavior.
Ghosts_track_Pac-Man Allow time for students to program these rules in their games.
Remind students that it is best to duplicate this rule for the remaining 3 directions instead of retyping the rules to minimize programming time and reduce errors.
and check to see if it works by play-testing the game.
Play_Test:_Ghosts_Chase_Pac-Man Check for student understanding.
Assessment of progress: 10 minutes
This assessment can be an individual check by the teacher of each students work or can be done as a peer evaluation - students working in pairs. Alternately each student could evaluate his or her own program.
Click on “Run” and see if everything works correctly. Check:
Does Pac-Man move all directions?
Do the walls prevent Pac-Man and Ghosts from moving over them?
Does the depiction change based on which direction Pac-Man is going?
Does Pac-Man “eat” the pellets, making them disappear with a sound?
Does Pac-Man deflate when he gets caught by a ghost??
Do the ghosts track Pac-Man?
If not, check:
Was Pac-Man was deleted and recreated so that the initial scent value was set?
Is Pac-Man is leaving a scent? (Use the attribute window)
Are the ghosts catching the scent and moving toward Pac-Man?
If the answer to one of these questions is no, turn on conversational_programming,
and go back to the related section to see what might have gone wrong.
Otherwise, if everything works as it should, GOOD JOB!
Make sure students have ample time to try out the game with ghosts with artificial intelligence. The objective is to allow students to discover how much more difficult the game has become to play. This may lead to some frustration. In Lesson 7, we will brainstorm ways to make the game easier to play and win.
Closure: 5 minutes
Restate the scope of the project. Tomorrow we will be discussing ways to make the game winnable including adding a counter and super pellets or creating an exit from the maze. These extensions can be implemented as time allows.
We will also be uploading the games to the Scalable Game Design Arcade.
Extension/ Remediation –Show the last two clips on the Collaborative_Diffusion link under “Simple Collaboration” for the Hill Climbing Algorithm Highlight the difference between these clips and the one shown earlier in the period- now the ghosts are collaborating to track Pac-Man based upon the scent value he left behind and where the other ghost(s) are going. This comes closer to modeling pack behavior like a pack of wolves working together to track and catch prey.
Short clip of African wild dogs hunting wildebeests: http://www.fotosearch.com/TGI163/trb68014/