Difference between revisions of "Autonomous Referee System"
|Line 17:||Line 17:|
Revision as of 16:03, 1 April 2017
'An objective referee for robot soccer'
- 1. Main
- 2. Project
- 2.1 Background
- 2.2 System Objectives
- 2.2 Project Scope
- 3. System Architecture
- 3.1 Paradigm
- 3.2 Layered Approach
- 3.3 System Layer
- 3.4 Approach Layer
- 3.5 Implementation Layer
- 4. Implementation
- 4.1 Tasks
- 4.2 Skills
- 4.3 World Model
- 4.4 Hardware
- 4.5 Supervisory Block
- 4.6 Integration
- 6. Manuals
Building upon the Robotic Drone Referee project executed by the first generation of Mechatronics System Design trainees, the objective of this project is to extend the system architecture (which was previously developed) and prove the concept. This will be done by refereeing a robot-soccer match using a drone and a ground robot. These two agents working together, are expected to evaluate two rules:
- Ball going out of pitch, i.e. the outside rule
- collision between the players, i.e. a situation where a free-kick needs to be awarded against the defaulting team
On this page details regarding the architecture, the hardware used and the software developed for implementation are made available.
This project was carried out for the second module of the 2016 MSD PDEng program. The team consisted of the following members:
- Akarsh Sinha
- Farzad Mobini
- Joep Wolken
- Jordy Senden
- Sa Wang
- Tim Verdonschot
- Tuncay Uğurlu Ölçer
RoboCup is an international initiative to promote and advance research in robotics and artificial intelligence. Founded in 1997, its main goal is to ‘develop a team of fully autonomous humanoid robot soccer players that is able to win against the winner of the most recent World Cup, complying with the official rules of FIFA, by the middle of the 21st century’. In the Middle Size League (MSL), two teams of five autonomous robots play a soccer match on an artificial field. These robots are able to drive around while using several on-board camera's to position themselves on the field. Moreover, they can determine the position of the ball, opponents and team mates. Through radio signals they can communicate with each other and decide upon a strategy. With a ball-handling system the ball can be captured and controlled and a shooting mechanism is able to shoot a ball over the ground or through the air.
As discussed in this tutorial, a standard RoboCup field measures 18 by 12 meters. During a match, there are two teams consisting of five robots on this field, driving around with velocities up to 5 m/s and possibly even higher. These robots are all competing for the same thing: scoring goals. This means that getting possession of the ball is a primary goal. When several robots are competing for the ball, collisions, pushing and scrummages are nearly inevitable. To make sure the match is played in a fair way, a human referee keeps a keen eye on the events on the field from the sideline. This human referee is backed up by an auxiliary referee which is standing on the opposite side, next to the field. Both can decide on stopping the game, due to a committed foul, a scored goal, a ball out of bound or any other event. The rules for MSL are based on the official FIFA rules, but adapted to robot football rules were necessary. However, the large set of rules and the interpretation thereof can often lead to situations where a referee might decide to continue the game, while another might decide to interrupt. This can and will often lead to frustrations in the aggrieved team. Moreover, a decision made by a referee can affect the outcome of a game and even an entire championship.
An example of this is the final match of the RoboCup world championship 2016 in Leipzig, Germany (see full match/highlights). The final was played between team TechUnited from the Netherlands and team WATER from China. The winner of this would become world champion robot soccer in the MSL. At the end of the match the scoreboard showed 2-2. As in human soccer, this means extra time to decide on the winner. During the match, team WATER had some trouble with the ball handling, preventing the ball to rotate in a ‘natural’ way over the field. When it happens that the ball does not rotate in the direction it is being moved, this is considered clamping and regarded as a foul in favor of the other team. In the last couple of minutes the score was 3-3 when WATER turned towards the TechUnited goal, shot and scored the winning goal. While the Chinese team was already celebrating their victory, the auxiliary referee decided that the scoring robot was clamping the ball before scoring the goal. After a discussion with the main referee, it was decided to declare the goal invalid. Since the extra time also ended in a draw, penalties were needed to decide who would become the new world champion. After all penalties of the Chinese team were stopped by the Dutch keeper, the first shot of the TechUnited robot went into the net. The Dutch team won the penalty series with 1-0 and thus TechUnited became the world champion of 2016.
This example shows how important the decisions of the human referee team can be in shaping the course of a match or even a tournament. Rules are always prone to interpretation and a team which is disadvantaged by this will always complain. The referee has no means to justify his decision other than his own intuition and interpretation on the rules. This lead to the question on whether it would be possible to develop a system which can support the human referee team in making decisions. Such system might even become fully autonomous and could replace the human factor in refereeing entirely.
The goal of this project is to develop a system that complies with the following points:
- Detect (predefined) events
- Enforce rules (corresponding to the events)