Robot Soccer A Platform For Systems Engineering
Robot Soccer A Platform For Systems Engineering
Robot Soccer A Platform For Systems Engineering
Abstract
This paper describes a project course at Cornell University aimed at educating students in
Systems Engineering. The multidisciplinary nature of the course is a great vehicle for
highlighting some of the key components of Systems Engineering, including System Design,
Systems and Technology Integration, Systems Analysis, and System Engineering Management.
The class is comprised of twenty-four students from Mechanical Engineering, Electrical
Engineering, Operations Research and Industrial Engineering, and Computer Science.
I. Introduction
As engineering systems become more and more complex, there is an increasing need from
industry for engineers who not only have expertise in a particular engineering discipline, but who
also possess diverse interdisciplinary skills, can integrate system components, can ensure total
system operability, and can understand the various economic forces in the marketplace. This
skill set and process is often referred to as Systems Engineering (SE).
In order to effectively teach SE principles to students, a project course that embodies many of the
key elements of SE, is being developed. The project entails the construction of fully
autonomous, fast moving robots which will work together as a team in an effort to compete
against similar teams of robots in a robotic soccer match This yearly competition, known as the
Robot World Cup Initiative (or simply RoboCup), is described below.
The soccer matches are played on a regulation size table-tennis table by teams composed of five
robots. Similar to the real game of soccer, the objective is to score more goals than the opponent
Page 4.452.1
subject to well-defined rules and regulations. The robots are permitted to communicate to each
other or to a global decision making computer via wireless transceivers. A global vision system
(typically a video camera) may be used for global, robot (including the opposition) and ball
position determination. Functionally the robots can be broken down into essentially three parts:
electro-mechanical (the chassis, the drive unit, the passing unit, and the local sensors),
communication (the wireless transceiver), and control (a microcontroller). The coordination of
the robots is typically handled by a workstation, which has access to the global visual feed and
which can communicate to each robot. The overall system is depicted in Figure 1.
- frame acquisition
- image processing
ROBOTS
The RoboCup is an excellent vehicle for demonstrating SE principles. We outline below some
of the key aspects:
The design, construction and implementation of autonomous, soccer playing robots are
challenging tasks. Not only are the individual technical problems associated with these tasks
substantial, such as the design of a global vision system, mechanically robust robots, robust
control systems, and robust strategies, determining the functionality of each component as it fits
in with the whole system and robustly integrating these components is a formidable undertaking.
Examples of system design issues are the following:
• How mechanically complex should the robots be? The more functionality the robot has, such
as passing ability, maneuverability, etc., the greater the challenge of integration will be and
the overall design will tend to be less robust.
• How should the decision making be distributed? A totally global decision making unit is
attractive from a performance standpoint, but may be unrealizable due to the bandwidth
limitations imposed by the communication system and the global vision system, and will be
sensitive to operating conditions. A totally decentralized strategy will be robust, but will be
achieved only at the expense of a more complex robot design (local sensing will be required)
Page 4.452.2
and a lower limit on the best achievable performance. A happy middle ground exists, which
the students must determine.
• How complex should the control algorithms be? Again, the main issues here are robustness
versus performance.
2) Systems Analysis
Analyzing the designed system, and the input this task provides to the design process, is
an integral part of the project. Due to the complexity of the system, analytical studies of the
system design and integration aspects of the project need to be complemented with extensive
simulation: at the mechanical level (the low level control system, the dynamics and kinematics of
the robots, etc.), at the decision and strategy level, and at the system level (the integration of the
mechanical and strategy simulations).
3) Project Management
The coordination and management of the various resources available to complete the project,
such as money, time, and laboratory facilities, is an integral part of the project. Two teams of
twelve students are engaged in the project. The team members are comprised of students with
diverse skills and interests. For example, Mechanical Engineering students are attracted and
suited to the mechanical and low level control aspects of the project, Electrical Engineering
students to wireless communication and control, Computer Science students to vision and
strategy, and Management students to the organizational aspects of the project. In order to
successfully complete the project, the students must form effective teams, and bridge the gaps
between their respective disciplines.
The class is an 8 credit, full year course. A typical load for Cornell students is 30 credits per
year, thus making the project course a major time and educational commitment for the students.
Approximately 60 students applied for the course, but only 24 students were selected to
participate in the class due to limited resources and in order to establish well-balanced teams. Of
the 24 students enrolled in the class, 16 are Master of Engineering students, while 8 are seniors.
The Master of Engineering students in the class are all participating in the Systems Engineering
Option at Cornell; the RoboCup project class is one of the prerequisites for this option, in
addition to a Project Management class and an Applied Systems Engineering class.
The 24 students were split into two teams, Team Brazil and Team Italy. The team which wins
the internal Cornell RoboCup competition being held in April 1999 will represent Cornell
University in the RoboCup competition being held in Sweden in August 1999. The prioritized
objectives for the project are the following:
Page 4.452.3
1. For Cornell to win RoboCup 1999.
2. For Cornell to win RoboCup 2000 and beyond.
3. For an individual member’s team to win the Cornell RoboCup competition being held
in April 1999.
It should be stressed that the objectives as prioritized above greatly influence the team dynamics
and the class atmosphere. Since the top objective is for Cornell to win the RoboCup
competition, there is a substantial amount of cooperation between Team Italy and Team Brazil.
As a specific example, the teams decided to pool parts of their budget and purchase one high
resolution, high speed camera instead of two separate, lower resolution and lower speed cameras,
to pool their global vision efforts, and to use the same global information during the game. This
would probably not have taken place if objective 3 had been prioritized as number one.
Objective 2 ensures that the designs will be reusable to a certain extent and that design decisions
today take into account projected future needs and technology changes.
The RoboCup lab is approximately 1000 square feet, and houses 6 high speed Pentium II
Workstations, 1 high speed laptop computer, instrumentation such as oscilloscopes, power
supplies, signal generators, Eprom burners, Eprom emulators, etc., and basic mechanical tools.
A full machine shop is available to the students for in-house fabrication of mechanical
components. Various commercial grade software packages are available to the students for
design and simulation, such as Working Model 2D and 3D2, Matlab3, Pro/ENGINEER4, and
OrCAD5.
There are no formal lectures in the project class, but rather many sub-team meetings and guest
lecturers and speakers. This is described more under the Team Organization section of the
paper.
Each team of twelve students is composed of a mix of individuals from various disciplines. For
example, the team makeup for Team Italy is 1 Project Management student, 2 Computer Science
students, 4 Electrical Engineering students, 4 Mechanical Engineering students, and one dual
degree Electrical and Mechanical Engineering student. Each team is broken down into groups:
Management, Artificial Intelligence, Electrical Design, Mechanical Design, Research and
Development, and Simulation. Membership in a group is not exclusive; most students are
members of two or more groups.
1. Management
One student is designated as the team manager. Their responsibility includes budgeting,
team meetings, and generally overseeing the operation of the project, such as documentation,
meeting deadlines and achieving milestones, and organization.
2. Artificial Intelligence
This group is responsible for developing the high-level algorithms that will control the robot
(such as game initialization, local and global tactics, and trajectory generation), and the
Page 4.452.4
4. Mechanical Design
This group is responsible for the robot chassis and all electro-mechanical aspects of the
robot.
6. Simulation
This group is responsible for constructing a high-fidelity simulation of the robots and playing
field which is used by the AI group to test their algorithms, and for the Electrical Design
group to test their feedback control strategies. The simulation package being used is
Working Model, interfaced to Matlab.
Various meetings are being held on a weekly and biweekly basis. On a weekly basis, a faculty
member meets with the team managers to discuss overall progress and administrative issues. A
faculty member also meets with representatives from each group, for each team, every week to
discuss individual team strategies and system design issues. On a biweekly basis, a faculty
member meets with each group separately, for each team, to discuss detailed technical issues.
I. Milestones
0((('HVLJQ*RDOV ((2QERDUG(OHFWURQLFV
■ Microcontroller: $,
■ Speed – Integration
■ Acceleration – Features
AI
0&
– Cost
■ Maneuverability
■ PID controller:
■ Ball Handling – Flexibility
■ “Muzzle” velocity – Interfacing 3,' (QFRGHU
■ Local sensing:
■ Goal Prevention
– Interfacing
– Simple circuits 'ULYH 0RWRU
$UWLILFLDO,QWHOOLJHQFH6\VWHP 6LPXODWLRQ2YHUYLHZ
Vision System
Global
Tracking
Drive Vision
Motors
Local
Kicking Controllers
Prediction Mechanism
System
Wireless AI
Drive Communication
Motors
Local
Communications
Conceptual design review Conceptual design review
Page 4.452.7
As of the writing of this document, milestone 6 has been achieved; that is, the robots are being
assembled and system integration has begun.
The main observation to date is that students enjoy the competitive aspect of the project, which
has greatly facilitated the learning process; knowing that they will compete against similar teams
from around the world has proven to be very inspirational. On the other hand, it is clear that
most students are not used to thinking from a systems perspective at the end of their
undergraduate education. It was observed at the beginning of the project that students had a
tendency to optimize their aspect of the project, and were reluctant to learn what the other groups
and disciplines were doing. There were several instances of students over-designing components
which could not be effectively utilized by the system. Examples include camera update rates that
were too high, motors that could not be practically controlled and powered, and communication
speeds that were too high and that increased the complexity of the design with no substantial
increase in system performance.
Many students commented in early January that they felt too much time had been spent on
design, analysis, and documentation, and that we should have started constructing the system at
an earlier stage. By mid-March, all of the students are commenting that perhaps we should have
spent more time on design, analysis, and documentation, given that several aspects of the design
are flawed, and that it is currently too late to make changes. They all feel that it would be
impossible to complete the project without a concerted, Systems Engineering approach to the
problem, which is the main message we wanted to convey to the students.
V. Appendix
Summary of the major rules of the RoboCup competition (adapted from the RoboCup
Federation).
Field Size
A table tennis table is used as the pitch for the official match. The size and color of the table is officially determined
as the international standard for table tennis.
Robot
The total floor area occupied by a robot should not be more than 180 cm2, while the maximum length of the body
shall not be more than 18 cm. The height of the robot, if the team is using a global-vision system is restricted to less
than 15 cm, otherwise the robot height is 22.5 cm.
Team
A team should consist of no more than 5 robots.
Page 4.452.8
Goals
The width of the goal is 50 cm, which is approximately 1/3 of the length of the shorter end of the field. The goal is
18 centimeters deep.
Ball
An orange golf ball shall be used.
Colorings
Colors of each part of the field are as follows:
1.Field shall be dark green.
2.The walls are white.
3.The ball is orange.
4.The behind goal area is either dark blue or yellow.
5.Lines are drawn in white.
6.There are markers on corners and goals.
7.Markers on the robot as specified below.
Markings for robots need to enable visibility from above (for global vision) and from the playing field (for mobile
vision). To support this, robots will be marked using colored Ping-Pong balls mounted on their top surfaces placed
so they do not touch. One of the markers will be specified as either yellow or dark blue (at the start of each game by
the referee). The second marker can be any color provided the team has registered the colors to be used before the
start of the competition.
Defense Zone
A defense zone is created around each of the goals. It is 22.5 centimeters from the goal line and 100 centimeters
wide. Only one robot from each team can enter this area.
Wireless Communications
Robots can use wireless communication to computers and network located outside of the field. In order to avoid
interference, a team should be able to select two carrier frequencies before the match.
Charging
Unless striving for a ball, a player must not attack another. In case the umpire clearly observes such an act, it is
regarded as a violent action. It is expected that the aim of all teams is to play a fair and clean game of football.
Bibliography
1. Blanchard, S. B. and Fabrycky, W. J. Systems Engineering and Analysis. Prentice Hall, 3rd
Edition, 1997.
2. Working Model. Knowledge Revolution, San Mateo, CA.
3. Matlab. The Mathworks Inc., Natick, MA.
4. Pro/ENGINEER. Parametric Technology Corporation, Waltham, MA.
5. OrCAD. OrCAD Inc., Beaverton, OR.
Page 4.452.9
RAFFAELLO D’ANDREA
Raffaello D’Andrea received the B.A.Sc. degree in engineering science from the University of
Toronto in 1991, and the M.S. and Ph.D. degrees in electrical engineering from the California
Institute of Technology in 1992 and 1996. Since then, he has been with the Department of
Mechanical and Aerospace Engineering at Cornell University, where he is an Assistant
Professor. He is also a member of the Applied Mathematics and Electrical Engineering fields at
Cornell University. His research interests include the development of computational tools for the
robust control of complex interconnected systems, and applying these techniques to mechanical
and aerospace systems. His teaching interests include Systems Engineering and Robot Soccer.
Dr. D'Andrea is an NSERC 1967 Fellow, and is the recipient of the American Control Council
O. Hugo Schuck Best Paper award (paper co-authored with Fernando Paganini and John C.
Doyle in 1994), and the IEEE Conference on Decision and Control Best Student Paper award
(1996).
Page 4.452.10