Game Examples
Beginning Programming
The games are designed to cover a range of programming skill levels. For
beginners, basic movement and coding practices are introduced in a simple
environment.
The games come with libraries of functions designed to make the coding process
easy to understand for beginning students. In the example above, the robot can
be made to move by calling simple functions such as:
All coding is done in the
Python
programming language using the
IDLE
python IDE.
Functions can be executed line by line through a command line interface
or by creating an entire Python script, which gives students the
flexibility needed to explore the programming process.
Advanced Programming
As the students advance in programming skill, more complicated tasks can be
introduced. By combining the robots with various touch and distance sensors,
the students must program the robot to automatically search for certain
objects or to navigate a complex environment without running into obstacles.
Robotics Programming
In the games, the robots can be fully programmed to be autonomous or can be
controlled by the user via a joystick or keyboard interface. This enables
the students to explore combinations of autonomous and human-controlled
behaviors. For instance,
one robot can be controlled by a human while a second robot is controlled
by a program.
In the pursuer-evader game above, for example, the user can manually
control the robot pursuer or can design an algorithm to do the job
automatically. Since the robot does not have a full view of the
environment (its view is in the upper-right of the image), the user
can be given this same view when manually controlling the robot. This
provides a better understanding of the challenges faced by the robots
when making autonomous decisions.
The students are also given open-ended problems with multiple solutions,
such as getting a robot to navigate a maze. By providing a second,
human-controlled robot, the student is able to try various methods
manually before implementing them in code. The student can also use the
manually controlled robot to see how their algorithms compare to a human,
which encourages the development of better solutions.
For more details, view the lesson plans
here.