Hands-on Activity: Navigating a Maze

Contributed by: GK-12 Program, Computational Neurobiology Center, College of Engineering, University of Missouri

A screen capture image shows three LEGO EV3 programming move icons with images of little gears on them. A drawing shows a person standing atop one tall edge of an endless walking maze.
Students develop accurate programs that get robots through a challenge maze.
Copyright © Maine State Library http://www.maine.gov/msl/libs/ce/mentor/


Using new knowledge acquired in the associated lesson, students program LEGO® MINDSTORMS® EV3 robots to go through a maze using movement blocks. The maze is created on the classroom floor with cardboard boxes as its walls. Student pairs follow the steps of the engineering design process to brainstorm, design and test programs to success. Through this activity, students understand how to create and test a basic program. A PowerPoint® presentation, pre/post quizzes and worksheet are provided.
This engineering curriculum meets Next Generation Science Standards (NGSS).

Engineering Connection

In this activity, students learn fundamental programming skills: how to break a problem up into parts, approach each part logically, combine the result into an elegant solution, and iterate if some part does not work. All these are important elements of design in general. This sort of thinking is essential to programming, and solving engineering design problems.

Pre-Req Knowledge

  • Ability to perform basic arithmetic, especially multiplication.
  • Completion of the associated lesson so that students are ready to create their own EV3 programs.

Learning Objectives

After this activity, students should be able to:

  • Explain the meaning of a "program."
  • Write basic movement programs for a LEGO MINDSTORMS EV3 robot, such that it can complete a maze.

More Curriculum Like This

What Is a Program?

Using a few blindfolds and a simple taped floor maze exercise, students come to understand that computers rely completely upon instructions given in programs and thus programs must be comprehensive and thorough. Students create and test basic programs, first using just the LEGO intelligent brick, an...

Elementary Lesson
How Do You Make a Program Wait?

Building on the programming basics learned so far in the unit, students next learn how to program using sensors rather than by specifying exact durations. Working with the LEGO® MINDSTORMS® EV3 robots and software, they learn about wait blocks and how to use them in conjunction with move blocks set ...

What Is a Computer Program?

Through four lesson and four activities, students are introduced to the logic behind programming. Starting with very basic commands, they develop programming skills while they create and test programs using LEGO® MINDSTORMS® robots. The unit is designed to be motivational for student learning, so th...

How Do You Make Loops and Switches?

Students learn how to program using loops and switches. Using the LEGO® MINDSTORMS® robots, sensors and software, student pairs perform three mini programming activities using loops and switches individually, and then combined.

Educational Standards

Each TeachEngineering lesson or activity is correlated to one or more K-12 science, technology, engineering or math (STEM) educational standards.

All 100,000+ K-12 STEM standards covered in TeachEngineering are collected, maintained and packaged by the Achievement Standards Network (ASN), a project of D2L (www.achievementstandards.org).

In the ASN, standards are hierarchically structured: first by source; e.g., by state; within source by type; e.g., science or mathematics; within type by subtype, then by grade, etc.

  • Generate and compare multiple possible solutions to a problem based on how well each is likely to meet the criteria and constraints of the problem. (Grades 3 - 5) Details... View more aligned curriculum... Do you agree with this alignment?
  • Plan and carry out fair tests in which variables are controlled and failure points are considered to identify aspects of a model or prototype that can be improved. (Grades 3 - 5) Details... View more aligned curriculum... Do you agree with this alignment?
  • Evaluate competing design solutions using a systematic process to determine how well they meet the criteria and constraints of the problem. (Grades 6 - 8) Details... View more aligned curriculum... Do you agree with this alignment?
  • Analyze data from tests to determine similarities and differences among several design solutions to identify the best characteristics of each that can be combined into a new solution to better meet the criteria for success. (Grades 6 - 8) Details... View more aligned curriculum... Do you agree with this alignment?
  • Various relationships exist between technology and other fields of study. (Grades 3 - 5) Details... View more aligned curriculum... Do you agree with this alignment?
  • The design process is a purposeful method of planning practical solutions to problems. (Grades 3 - 5) Details... View more aligned curriculum... Do you agree with this alignment?
  • Test and evaluate the solutions for the design problem. (Grades 3 - 5) Details... View more aligned curriculum... Do you agree with this alignment?
  • The processing of information through the use of technology can be used to help humans make decisions and solve problems. (Grades 3 - 5) Details... View more aligned curriculum... Do you agree with this alignment?
  • New products and systems can be developed to solve problems or to help do things that could not be done without the help of technology. (Grades 6 - 8) Details... View more aligned curriculum... Do you agree with this alignment?
  • Specify criteria and constraints for the design. (Grades 6 - 8) Details... View more aligned curriculum... Do you agree with this alignment?
  • Describe how new technologies have helped scientists make better observations and measurements for investigations (e.g., telescopes, electronic balances, electronic microscopes, x-ray technology, computers, ultrasounds, computer probes such as thermometers) (Grade 5) Details... View more aligned curriculum... Do you agree with this alignment?
Suggest an alignment not listed above

Materials List

Each group needs:

To share with the entire class:

  • Navigating a Maze Presentation, a Microsoft® PowerPoint® file
  • computer and projector to show the presentation
  • maze, made of cardboard boxes; refer to Figure 1 and slide 4

Note: This activity can also be conducted with the older (and no longer sold) LEGO MINDSTORMS NXT set instead of EV3; see below for those supplies:

  • LEGO MINDSTORMS NXT robot, such as the NXT Base Set; follow the taskbot building instructions in the base set manual, expected to take 45 minutes max; alternatively, build a simpler taskbot following the "Five Minute Bot" building instructions at http://www.nxtprograms.com/NXT2/five_minute_bot/index.html
  • LEGO MINDSTORMS Education NXT Software 2.1
  • computer, loaded with NXT 2.1 software


The ability to program is becoming more and more important to scientists and engineers for the simple reason that computers are able to store information and perform calculations much more efficiently compared to humans. The ability to program is an important skill that will help you in many courses and activities, and in everyday life. Today's activity will introduce you to the basics of computer programming in a fun way and show you a logical, step-by-step approach to programming.


algorithm: A clear and specific procedure for solving a problem in a finite number of steps.

brainstorming: Thinking of ideas as a group.

engineering: Creating new solutions and new things.

engineering design process: A series of steps used by engineering teams to guide them as they develop new solutions, products or systems. This is a cyclical process that requires engineers to test and redesign prototypes as often as it takes so they end up with reliable finished solution.

iteration: Doing something again, especially with the intent to make improvements.

program: A sequence of instructions written to direct a computer to perform a task.


Before the Activity

  • Gather materials and make copies of the Navigating a Maze Pre/Post Quiz, two each per student, and the Navigating a Maze Worksheet, one per student. The quizzes and worksheet are provided as separate attachments, and also embedded in the presentation to make it easier to go through them as a class, if desired.
  • Assemble the LEGO MINDSTORMS EV3 taskbots for each group, following the instructions in the base set manual.
  • Prepare the challenge maze somewhere in the classroom using LEGO boxes or other cardboard cartons to create the path specified in Figure 1 and slide 4.
  • In advance, perform the entire activity so as to be familiar with all details, especially the programming solution on slides 9-10.
  • Present the activity challenge and background information to students using the 13-slide Navigating a Maze Presentation, a PowerPoint file. Set up a computer/projector to show the presentation to the class.
  • Arrange for enough computers so you have one for each student group. Make sure each computer has the LEGO software loaded.
    A line drawing shows a route from start to finish: 3 feet forward, turn left 90°, forward 1.5 feet, turn right 135° (45° angle identified), forward 2 feet, turn left 135° (45° angle identified), forward 3 feet.
    Figure 1. Use cardboard boxes to make a maze route for students to program their robots to navigate.

With the Students

  1. Administer the pre-quiz by handing out paper copies (also on slide 2). Answers are provided for the teacher on slide 3.
  2. Introduce the activity challenge using the schematic on slide 4 (also Figure 1): The robot is placed at the start location and must traverse the maze and then stop when it reaches the end.
  3. Explain that you will first talk about computer programming principles in general and then have them develop their programs.
  4. For this general discussion, start by asking the students: How would you start the process of developing a computer program to make a LEGO robot do a particular task such as navigating a maze? Assume the maze dimensions are known exactly.
  5. Write down student answers on the classroom board for later use.
  6. Explain that the process is based on creating something that does not currently exist (slide 5), and then introduce the concept of the engineering design process, which involves a clear sequence of steps. Engineers follow these steps to guide them as they design computer programs or any engineered product, structure or system.
  7. Talk about the engineering design process using slide 6, which presents six basic steps that are repeated as necessary (iterated) in order to solve a problem and come up with a satisfactory solution. The steps are: 1) state the problem, 2) generate ideas [research, brainstorming], 3) select the best solution idea, 4) build/create the item, 5) test and evaluate to see if it works, 6) present results as a successful solution. An alternate but equivalent way to look at the same process is provided on slide 7, so that students understand the concept of design well. In this version, the steps are: 1) ask/concept, 2) imagine/preliminary designs, 3) plan/definitive design, 4) create and test, 5) improve/iterate.
  8. Direct students to follow the steps of the engineering design process to design the computer programs for their robots, using the worksheet to guide them in this process.
  9. Once this general introduction to computer programming as a design activity is completed, use slide 8 to remind students of the activity challenge, including some hints for their use during programming: 1 rotation equals about 7 inches, and ½ rotation is the duration for a 90° turn.
  10. Divide the class into student pairs and hand out the LEGO robot materials and worksheets. Have students begin by defining the task and writing a list of detailed instructions in English (such as go forward or turn right) that would guide the robot through the maze, as prompted by the worksheet. Refer to student ideas written on the classroom board.
  11. Have pairs work through the worksheet fully before proceeding to use the EV3 software to write programs that guide their robots, referring to the steps they thought through carefully.
  12. Oversee student groups as they develop their programs and download them into their robots, test to see if the programs successfully navigate the maze and, if not, modify the programs and try again. This is the anticipated "iteration" process, which may need to happen many times before a successful solution is achieved. Refer to slides 9-10 for one programming solution provided for the teacher.
  13. Administer the post-quiz by handing out paper copies (also on slide 11). Answers are on slide 12. Vocabulary are provided on slide 13.


Investigating Questions

  • Why did the robot run into the wall?
  • Did it turn too far?
  • Is it moving too far forward?


Pre-Activity Assessment

Pre-Quiz: Administer the three-question Navigating a Maze Pre/Post Quiz (also on slide 2) to assess what students retained from the associated lesson. Answers are provided on the Navigating a Maze Pre/Post Quiz Answer Key (and slide 3). Administer the same quiz at lesson end.

Activity-Embedded Assessment

Design Process Steps & Iteration: Have students complete the Navigating a Maze Worksheet, which guides them through the program development design process. Like engineers, it is extremely rare for students to create programs that navigate the robots perfectly through the maze the first time, so do not be worried if students take some time and repeated efforts to do this. However, help them troubleshoot by checking that they understand any programming problems by asking them questions (see the Investigating Questions section) to help them identify the sources of any problems. Once students have correctly identified reasons why their robots are having problems, check to see if they understand how to fix the problems. For example, if the robot turns too far, make sure they understand that one solution is to slightly decrease the turn duration. Review students' worksheet answers to gauge their comprehension of the concepts covered.

Post-Activity Assessment

Post-Quiz: At activity end, administer the Navigating a Maze Pre/Post Quiz again by handing out paper copies (also on slide 11). Compare students' answers to their pre-quiz answers to assess how well they understand the concepts. Answers are provided on the Navigating a Maze Pre/Post Quiz Answer Key (and slide 12). As a bonus question, ask students to define in their own words what is meant by "brainstorming" and "iterations."


EV3 User's Guide. Accessed Jul 17, 2016 http://why.gr/wp-content/uploads/2015/03/EV3-User-Guide-EN.pdf


Riaz Helfer, Pranit Samarth, Satish S. Nair


© 2014 by Regents of the University of Colorado; original © 2013 Curators of the University of Missouri

Supporting Program

GK-12 Program, Computational Neurobiology Center, College of Engineering, University of Missouri


This curriculum was developed under National Science Foundation GK-12 grant no. DGE 0440524. However, these contents do not necessarily represent the policies of the National Science Foundation, and you should not assume endorsement by the federal government.

Last modified: January 31, 2018