Report 1: Introduction to Botball (1/28/04)
Back to main page
Problem Statement:The problem we are working on is Botball.
This is a competition in which one or two robots must move various
color-coded obstacles (balls, tubes and PVC pipe) around an arena to score
points, while an opposing team of robots does the same. These robots are
completely autonomous, must start and stop on their own, and both
recognize and manipulate objects in a limited space.
- Primary Objective: The primary objectives are to build a robot which can compete in this
competition. This involves recognizing the starting signal light,
movement on a flat board, recognition of black and white balls and tubes,
of an orange ball, and green and white sections of PVC pipe. It must also
in some manner manipulate these items, probably either through grasping or
pushing. The objective overall is to score as many points as possible as
defined by the rules of Botball.
- Main Components:
The main components of the robot are motion, vision, range sensing, and
object manipulation. Many robots have dealt with the problem of motion,
and this is an easy case (a flat surface). Range sensing is usually done
with the help of sonar sensors, which give a simple straight-line range to
the object in front of the sensor. Object manipulation is a bit more
difficult, and depends on the type of objects being manipulated.
However, there are plenty of examples of this in robotics; especially in
industrial robots. Vision is a more difficult problem. One robot from
MIT, Polly, used vision almost exclusively to navigate. That robot had
many simplifying assumptions, though, including a fixed camera pointed
towards a plain floor. This made object detection and distance estimation
easy. For Botball, the arena and objects are simple enough that we do not
need complex object detection. Color will be a primary indicator. Like
Polly, the floor should be very regular, so it might be used as a
background for object detection and recognition.
This competition, like many other robot competitions, is supposed to
stimulate interest in robotics, and give students an interesting problem
to solve. Botball is more difficult than some other competitions such as
sumo robots or a maze-solving robot in that the arena and objects the
robot has to interact with are more complex. It cannot rely just on a
simple line sensor or range detectors; but has to use vision to identify
objects. It also must manipulate these objects with some care and
precision to put them in specific places. Botball requires coordination of
a number of different technologies to succeed.
University of Berkeley's 2003 Bot (movie)
University of H's 2003 Bot (movie)
- What makes this problem difficult?
The problem is difficult for several reasons:
- There are a large number of different objects that need to be identified,
some of similar shapes and sizes.
- There are very few constraints on the type of bot that can be constructed
- No one on the team has previous experience with this or any previous competition.
- There is a wide array of electronics available for use.
- What have others done or what are various possible approaches? (cite)
Chuck Matlack (HMC '04) participated on the Botball team last year, and while
team the ultimately did not compete, the approach the Mudd team took was
different than both of the other bots depicted above. While the UC's bots
concentrated on a single robot to collect both TP rolls, pp balls and foam
balls, the Mudd team constructed two bots: one large arm that concentrated
solely on the foam ball, and a dumb line following bot that collected the TP colls and pp balls.
- Motivate the features of the problem that your solution will focus on.
There are several different problems that will be addressed during this project:
- Understanding the various electronics and the type of information / function each is able to provide.
- Understanding the mechanics of the various lego pieces so that construction can be completed in a timely manner.
- Prioritizing the various objectives in terms of scoring value and difficulty
- Identifying a feasible bot design that can successfully accomplish the most
easy and valuable scoring objectives.
In what ways are you limiting the scope of the problem to make it
It will be critical to limit the scope of the
problem for this project to make it more tractable specifically because it
is so open ended. To address this, the team will focus on the places where
it possesses the most strength. While everyone has a strong background in
coding, less people have had previous experience with electronics and
hardware interactions. While these aspects are obviously critical
components for success, simplification of any kind in these categories
will most likely prove beneficial. A quick identification of a feasible
robot that utilizes the strength of the team and the allotted time and
other resources will also help facilitate a timely finish for the project.
- Include any background equations or less-formal relationships here,
or anything else a reader might need to be reminded of.
Here is a rough outline of the current plans:
- Gather the remaining parts (electronics, legos, and PVC arena parts) and catalogue them.
- Verify the electronics (HB, RCX, CMU Cam primarily)
- Purchase missing parts of any type
- Clean the workspace
- Assemble Bot Arena
- Test newly received parts
- Identify possible scoring strategies
- Identify possible bots to fullfill these strategies, choose one design.
- Begin construction of bot
- Begin coding of bot ...
The Botball competition takes place in a fixed arena and is fast based (90
second rounds). Our robot must be as efficient as possible at navigating
this fixed arena. A simple robot insect , while necessarily less
complex than a traditionally decomposed robot, may not necessarily be
efficient at Botball.
Potential fields models like the one used in  would require better
knowledge of global state than our sensors on the Botball robots would
be able to detect, as well as requiring more memory than we are likely
to have. Localization will also have to be done roughly, as map-based
state tree  would require a more restricted state space and
Monte Carlo  methods would require more memory
and processing power than will be available on our robots.
0. Collegiate Botball Rules - 2004
1. Horswill, Ian The Polly System.
2. Brooks, Rodney Achieving Artificial Intelligence Through Building Blocks, MIT AI LAB, Memo 889, May, 1986.
3. Botball Kit Part List.
4. Handy Board and Interactive C Documentation.
5. Vaughn, Richard et al. Experiments in Automatic Flock Control. Publication details
6. Nourbakhsh, Illah et al. Dervish: An Office Navigating Robot. AI Magazine,
Summer 1995, pp. 53-60.
7. Dellaert, Frank et al. Monte Carlo Localization for Mobile Robots. Publication