Competition Rules
Overview
2005 marks the third year that the BYU Robot Soccer competition
will have multiple players per team. We'll adopt many of the rules of the RoboCup Smallsize (F-180) league,
particularly those for the size of robots and the field, and we'll try
to be consistent with their style of play. Over time, the continuing
improvements in play in our senior project competition may help us
create a competitive team that can represent BYU in the smallsize
league.
This document describes the rules of our competition for Winter
Semester 2005. Differences from the rules of the RoboCup Smallsize
league will be highlighted.
The equipment
Our competition will be held on the playing field located in the
senior project room (498 CB). The field is green with black markings
and is not to be modified by participants in any way without prior
approval. Unlike the current RoboCup fields, ours will continue to use
the side ramps and side walls that keep the ball in play. The length
of the field is 2900 mm and the width is 2400 mm. All walls will be
painted black and the tops of the goals will be clear. No penalty
markings will be painted on the field and standard RoboCup rules
regarding placement of the ball during penalties will not be
followed. Unless the class votes otherwise, a standard orange golf
ball will be used as the soccer ball. The ball is approximately 46 g
in mass and 43 mm in diameter.
During competition, each team will have one dedicated workstation
on which all their team and vision code must run. A single camera
suspended over the field will be connected to one of the workstations
to allow for image processing. Each team will be provided with a
single wireless transmitter and multiple receivers to send commands
from the workstation to your robots. Different types of RF hardware
may not be used; each team must make sure they are operating on a
unique frequency. During competition, only the two teams playing
should have their transmitters turned on. Jamming of the other team's
RF communications is prohibited.
Each team is responsible for the physical design and construction
of their robots. A MagiccBoard for each robot will be provided to each
team to provide control on board each robot. (The number of robots per
team is limited to the number of MagiccBoards provided.) In addition,
each team will be supplied with a fixed number of high-quality motors
and batteries. Other components may be selected from available
equipment in 416 CB; you are not allowed to remove equipment from old
robots for your own use, but you are free to examine their hardware
and to purchase or build your own. (With recent expenditures to make
the necessary MagiccBoards and to buy new smaller motors, we have
little money left to reimburse you for any major purchases. In the
interest of keeping the competition fair, please use the equipment
provided whenever possible.) Low cost items such as wheels, wiring,
connectors, and the vehicle chassis should be paid for by each
team. Note that all hardware additions made by teams are turned over
at the end of the semester for future Robot Soccer competitions.
Before a game, each of the two teams has a color assigned, namely
yellow or blue. Each team must be able to use either yellow or blue
markers. Square markers of the assigned color must be mounted on top
of the robots. The center of the marker must be located in the visual
center of the robot when viewed from above. The markers must be at
least 40 mm square. Robots may use black and white coloring on the top
without restriction. Robots may also use green and pink markers. Only
the colors provided by the TAs may be used in the construction of the
tops. With the exception of the top of each robot, everything that is
visible to the overhead camera (including the robot sides when on the
edge of the field) must be black – i.e. no shiny metal.
Each robot must fit inside a 180 mm diameter cylinder; the maximum
height is 150 mm, including the colored markers on the top. At no time
during competition can anything (e.g., a kicker, dribbler, or other
movable part) extend beyond this 180 mm limit.
Competition format
The final tournament will consist of a sequence of head-to-head
matches or games. Each match will consist of two three-minute halves;
the clock for each half will be stopped by the referee only for
timeouts and in the event of something outside the normal scope of
play (at the sole discretion of the referee). The clock will continue
to run when goals are scored and when fouls are called. The halftime
period separating the two periods of play will not exceed two
minutes. Once a game is over, the teams playing the next match will
have up to three minutes to prepare before their game begins.
Each team will have two timeouts per match, each lasting just 30
seconds. Timeouts can be called only when play is stopped after a
goal, after a foul, or if the ball leaves the playing surface (assumed
to be rare). During a timeout, robots may be touched and lifted by
team members. Except during a timeout, robots may not be touched once
play begins. Each team is limited to two members in the immediate
vicinity of the playing field (even when play is stopped) to avoid
congestion. (During play, everyone should move back to keep from
obstructing the view of others.)
The team at the top of the bracket is the home team. The home team
starts the game defending the south goal with the yellow top markers
unless both teams agree otherwise. In addition, the home team will be
the first to kickoff. Before play begins, teams are responsible for
ensuring that they are using different transmission
frequencies. Unless both teams agree otherwise, teams will change
directions and colors for the second half and the team that did not
kickoff to start the game will kickoff to start the second half.
At the start of each half, the ball will be placed near the middle
of the center circle. All robots must be on their own side of the
field. Robots on defense can be no closer to 300 mm from the ball
until the Play command is issued; robots on offense can be placed
anywhere on their side of the field. Once placed, robots are free to
move, but they must stay on their own side and cannot contact the ball
until the referee signals the start of play. In an effort to make the
competition format spectator-friendly, we need to stick to strict
timing constraints. (The exact details will be worked out as needed.)
Failure to place a robot in the allotted time may require your team to
begin play without that robot on the field. Robots taken off the field
for any reason may be replaced on the field to resume play only during
a stoppage of play: after a goal or after a foul has been called.
Once play begins, it continues (under normal circumstances) until a
goal is scored, a foul is called, or time expires. To handle
notification of goals and fouls, we have implemented a simplified
version of the RoboCup Referee Box that will send your team code a
message with the details. When you are notified that a goal has been
scored, your robots must move (autonomously) back to your side of the
field to prepare for the kickoff. (You will be notified if you will be
on offense or defense.) When you are notified that a foul has
occurred, your robots must move themselves into position after the
ball is placed by the referee. Failure to do so in a timely fashion
may require the removal of the offending robot from the playing field,
at the direction of the referee. Specifically, once a kickoff, foul,
or goal command has been sent, robots have 5 seconds to position
themselves. If any robot is in violation of the rules after the 5
seconds have expired, it will be removed from the field. A player
removed in this way cannot reenter the field until there is a stoppage
in play (typically a goal or a foul). If the referee places the ball
and a robot makes contact with the ball while repositioning itself for
a kickoff or a penalty kick, the offending robot will be removed from
the field of play until the next stoppage of play. This is admitted a
severe penalty, but it is easily avoided; make sure your team responds
appropriately to all referee box directives and avoids the ball when
repositioning itself.
When a goal is scored, the referee will place the ball near the
center of the field by hand; in case of a foul, the referee will place
the ball for a free kick wherever he deems appropriate. In either
case, once the ball is placed, defensive robots must immediately move
at least 300 mm from the ball. The clock continues to run, but play
will not resume until signaled by the referee (through the referee
box). On free kicks, offensive robots can move to any desired
location. (No off-sides calls will be made in our competition at any
point.) For simplicity, all free kicks will be considered direct
kicks, allowing the robot taking the kick to score directly
without another robot touching the ball. All referee calls concerning
goals and fouls are final.
With the walls on our soccer field, the ball should go out of play
only rarely, so we will not implement RoboCup's throw-ins, corner
kicks, and goal kicks. Play will be stopped if the ball ever leaves
the playing surface, in which case it will be placed back on the field
in a neutral position (most likely near the center). If one team
repeatedly causes the ball to leave the field of play (say because its
robots have powerful kickers that are not well controlled), fouls may
be called at the sole discretion of the referee, including an
arbitrary placement of the ball to resume play. In the event that the
ball becomes stuck on the playing field in such a way that neither
team can make progress, the referee may move the ball or temporarily
stop play at his discretion.
In matches ending in a tie after regulation where a winner must
advance, the teams will play sudden-death overtime periods of 3
minutes until a goal is scored. Between each overtime period, there
will be a short 90-second break.
Playing rules
Robots are not allowed to "carry" or "hold" the ball. The ball cannot
be controlled in such a way that opponents would be unable to flip it
away if they were well positioned. Nothing can be used to physically
attach the ball to the robot (e.g., adhesive, suction). Concave
openings in the perimeter of robots that allow unfair control of the
ball are prohibited. According to RoboCup rules, 80% of the diameter
of the ball must be visible from directly above and outside the convex
hull of the robot; from any perspective (including a side view) 80% of
the diameter of the ball must be visible.
There will be no designated goalies in our competition so RoboCup
rules specific to the goalkeeper will not apply. We
will, however, enforce RoboCup rules prohibiting multiple players of
either team inside the "defense area", defined to be the rectangular
box in front of each goal. At most one robot of each team can be
entirely within the defense area. (Some leniency will be given to
defensive robots if the violations are temporary and do not
substantially change the outcome of the current play.) This rule
prevents teams from employing a defensive strategy of positioning all
robots side-to-side directly in front of the goal.
Unless the teams vote to enforce it, we will not enforce the
RoboCup rules of unsporting behavior for robots on the field that are
not capable of moving.
Soccer is a contact sport, and physical contact with other players
is unavoidable, but we wish to promote a finesse game that focuses on
individual skills and well-executed teamwork. Like RoboCup, we
emphasize the no-contact principle and encourage you to pay
particular attention to obstacle avoidance algorithms that will allow
you to avoid collisions with other robots. In particular, aggressive
or uncontrolled movement that could result in damage to any robot or
the playing field is unacceptable and inconsistent with the spirit of
our competition.
Within the defense area, fouls will be called if an
offensive robot makes contact with any defensive robot where the point
of contact is within the defense area. Outside the defense area,
fouls will be called on a robot making "substantial contact" with an
opposing robot. The RoboCup rules committee gives this definition:
Substantial contact is contact sufficient to dislodge the robot from
its current orientation, position, or motion in the case where it is
moving. When both robots are moving at similar speeds, and the cause
of contact is not obvious, the referee will allow play to continue.
This law is designed to protect robots which are slow moving or
stationary at the time of the contact, and as such should be detected
by obstacle avoidance systems.
To this we add the following: if a robot is moving and has the ball in
its control (steady contact with the ball) and an opposing robot runs
into the ball in such a way that the robot with the ball takes the
energy of the collision, a penalty will be called as if the opposing
robot had collided directly with the robot with the ball. In other
words, if an opposing robot is moving downfield with the ball, your
robot cannot cause a head-on collision by moving into the ball in the
opposite direction. However, your robot may get in front of the robot
with the ball and wait for the ball to come to it. (Think basketball
here: you can draw a charge but you can't be moving into the offensive
player.) Another legal option for your robot is to flick the ball
away (perpendicular to the direction of travel of the robot with the
ball), but this would be difficult since both robots are moving and
your robot must avoid making substantial contact with the other robot
as it steals the ball.
Robots repeatedly committing such fouls may be carded and
ejected. If aggressive or uncontrolled play causes damage to an
opposing robot, the fouling team may be penalized by loss of match or
(depending on the severity of the damage) disqualification from the
entire tournament. Penalties and disqualifications will be assessed at
the sole discretion of the referees.
Any aspect of play not covered in this document and any
interpretation or clarification of these rules must be directed to the
referee for validation. All referee decisions are final.
Referee Box Commands
Referee Commands will be issued to teams over a
TCP/IP network
connection. The score, the time remaining in the half, which half
is being played, and an integer indicating the state of the referee
will be sent every second.
The following commands can be sent:
Halt
TimeoutHomeTeam
TimeoutAwayTeam
FoulHomeTeam
FoulAwayTeam
GoalHomeTeam
GoalAwayTeam
KickoffHomeTeam
KickoffAwayTeam
Play
Halt
Whenever the Halt command is issued,
the robots on both teams are
required to cease movements. This command will always be issued before
any of the other commands (with the exception of the Play
command).
TimeoutHomeTeam, TimeoutAwayTeam
Timeouts can only be called after the ball is dead
– i.e. when a foul is called
or a goal is scored. This command will be issued after the Halt
command. It will
be followed by the appropriate goal or foul command depending on what
stopped the match
in the first place. TimeoutHomeTeam means that the home
team has called a timeout.
A timeout will stop the clock.
FoulHomeTeam, FoulAwayTeam
Foul commands will be issued when the
referee has determined that a foul
has been committed. FoulHomeTeam means that the home team
has committed the foul.
The clock will not stop for fouls. A Halt command will be
issued before the Foul command is sent.
The Foul commands will not be sent until after the
referee has placed the ball in the place
to be kicked from. When the Foul command is sent, the
robots should set up for a foul
kick. The Foul commands will be followed by the Play
command, at which time, the kicking team
should kick the placed ball.
GoalHomeTeam, GoalAwayTeam
When a goal is scored, the Halt
command will be sent to both teams. After the referee has
placed the ball back in the center of the field, the appropriate Goal
command will be sent.
GoalHomeTeam means that the home team
has scored a goal. The Goal commands should instruct
the robots to set up for a kickoff where the team that has just been
scored against is kicking off. The Goal commands will be
followed by the Play command, indicating that the match
should resume. The clock will not stop for a goal.
KickoffHomeTeam, KickoffAwayTeam
These commands will be issued at the start of the
halves. KickoffHomeTeam
indicates that the home team is to kickoff. The Kickoff
command will be followed by the Play command, at which
time the kickoff should occur.
Play
The only time the robots should be playing soccer
is when the Play command is being
sent. All other commands are setup commands and will be followed by
this command.