Report 1: Introduction to Botball (1/28/04)

Back to main page

Introduction

  • 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[1], 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.
  • Purpose: 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.

Background

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 more tractable?
    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.
    NA.

Approach

Here is a rough outline of the current plans:

  1. Gather the remaining parts (electronics, legos, and PVC arena parts) and catalogue them.
  2. Verify the electronics (HB, RCX, CMU Cam primarily)
  3. Purchase missing parts of any type
  4. Clean the workspace
  5. Assemble Bot Arena
  6. Test newly received parts
  7. Identify possible scoring strategies
  8. Identify possible bots to fullfill these strategies, choose one design.
  9. Begin construction of bot
  10. Begin coding of bot ...

Perspectives

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 [2], while necessarily less complex than a traditionally decomposed robot, may not necessarily be efficient at Botball.

Potential fields models like the one used in [5] 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 [6] would require a more restricted state space and Monte Carlo [7] methods would require more memory and processing power than will be available on our robots.


Documentation


References


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 unknown.
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 details unknown.