Project MSD16: Difference between revisions

From Control Systems Technology Group
Jump to navigation Jump to search
No edit summary
 
(18 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Content_ARS_small}}
<div STYLE="float: left; width:80%">
</div><div style="width: 35%; float: right;"><center>{{:Content_MSD16_small}}</center></div>
__TOC__


=Deliverables=
<p>The goal of this project is to make an autonomous referee system which could eventually replace a human referee. Since the project time is limited, this "final goal" of actually replacing the human referee cannot be achieved. Therefore it is chosen to narrow the scope to making a proof of concept of a referee system which could be deployed during a robot soccer match. From the ''Background'' it will become clear that in robot soccer, an autonomous referee system could also have added value. Thought the scope of this project is just a small part of the final system, we will try to keep this final system in mind when making decisions. In the chapter ''System Objectives'' the goals of the actual final referee system are discussed and in the chapter ''Project Scope'' we will elaborate on our project goals. </p>
 
[[File:gcs.png|thumb|right|1920px|Global Coordinate System]]
 
<p>
As described in <ref>D. Antunes and R. Molengraft, Drone Referee, Control Systems Technology group, Mechanical Engineering Department,
TU Eindhoven, November 2016.</ref> verbatim, the goal of the present project is to contribute to this vision and create an autonomous robot referee system using drones. The first generation of MSD PDEng students created a system architecture <ref> [Robotic_Drone_Referee "Robotic Drone Referee"] </ref> to be used with a single drone. This architecture provides the basis for the present project. In particular some of the modules of such architecture, such as ball out of bound detection and an indoor positioning system using ultra-wind band technology, were implemented and tested. The overall goal of this project is to extend this system architecture and implement more modules.
</p>


=Background=
=Background=
<p>
<p>[http://www.robocup.org/ 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 ([http://wiki.robocup.org 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.</p>
[http://www.robocup.org/ 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 which 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 [http://wiki.robocup.org (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.
 
<br><br>
 
As discussed in [http://wiki.robocup.org/images/7/72/RequirementsforMSL_2016.pdf Tutorial: Requirements for RoboCup MSL] a standard RoboCup field measures 12x18 meters. During a match, there are ten 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 [http://wiki.robocup.org/images/0/0f/Robocup-msl-rules-2016.pdf rulebook 2016]. 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 [http://www.robocup2016.org/en/ world championship 2016 in Leipzig Germany] ([https://www.youtube.com/watch?v=f7Y6QLYVhSs&feature=youtu.be&t=6h17m38s full match], [https://www.youtube.com/watch?v=2JxNjgKE8HQ highlights]). The final was played between team [http://www.techunited.nl/ TechUnited] from the Netherlands and team [http://blog.sina.com.cn/s/articlelist_2532664717_0_1.html%E2%80%8D 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.
</p>


=Project Objectives=
<p>As discussed in this [http://wiki.robocup.org/images/7/72/RequirementsforMSL_2016.pdf 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 [http://wiki.robocup.org/images/0/0f/Robocup-msl-rules-2016.pdf 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.</p>
<p>
The following deliverable along with their deadlines are listed here.
* Concept of the system architecture to be presented by 20 December 2016.  
* System architecture of the proposed solution by 31 January 2016 along with a time plan, risk assessment of the choices, and task distribution for the elements of the group.
* Software of the proposed solutions including:
** Out of bound ball detection by the ground robot, including both motion algorithm and camera processing. Suggested: end of January (24 January 2016).
** Detection of a fault including both movement. Suggested: end of February (24 February 2016).


* Software with the interaction between the two robots. Suggested: end of March (29 March 2016).
<p>An example of this is the final match of the [http://www.robocup2016.org/en/ RoboCup world championship 2016] in Leipzig, Germany (see [https://www.youtube.com/watch?v=f7Y6QLYVhSs&feature=youtu.be&t=6h17m38s full match]/[https://www.youtube.com/watch?v=2JxNjgKE8HQ highlights]). The final was played between team [http://www.techunited.nl/ TechUnited] from the Netherlands and team [http://blog.sina.com.cn/s/articlelist_2532664717_0_1.html%E2%80%8D 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.</p>
* Demo to be scheduled by the end of March or beginning of April .
* A Wiki-page documenting the project and providing a repository for the software developed, similar to the one obtained from the first generation of MSD students.
* One minute long video to be used in presentations illustrating the work.


</p>
<p>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.</p>


u
=System Objectives and Requirements=
u
The goal of this project is to develop a proof-of-concept of the final system. This system eventually needs to be:
u
* able to detect (predefined) events
u
* able to enforce rules (corresponding to the events)
u
u
u
u


u
u
u
u


u
While doing so, the system should be:
u
* objective
u
* consistent
u
* transparent
* correct
* non-impeding
* cost-effective
* safe
* scalable
* flexible
* easy-to-use


u
=Project Scope=
u
<p>As already discussed, this project will focus on making a proof-of-concept of an autonomous referee system. Due to lack of time a complete functioning end-product is not realizable. It is decided to narrow down the scope of this project, while still adhering to the system objectives as discussed before. The deliverables for this project (MSD 2016) are:
u
* a system architecture
u
* detect ball out of pitch (B.O.O.P)
u
* detect collision
* signal both events
* a demo video
* this wiki-page with all documentation
* a final presentation


u
</p>
u
u
u
u
 
u
u
uu
 
u
u
u
u
u

Latest revision as of 19:02, 3 May 2017

The goal of this project is to make an autonomous referee system which could eventually replace a human referee. Since the project time is limited, this "final goal" of actually replacing the human referee cannot be achieved. Therefore it is chosen to narrow the scope to making a proof of concept of a referee system which could be deployed during a robot soccer match. From the Background it will become clear that in robot soccer, an autonomous referee system could also have added value. Thought the scope of this project is just a small part of the final system, we will try to keep this final system in mind when making decisions. In the chapter System Objectives the goals of the actual final referee system are discussed and in the chapter Project Scope we will elaborate on our project goals.

Background

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.

System Objectives and Requirements

The goal of this project is to develop a proof-of-concept of the final system. This system eventually needs to be:

  • able to detect (predefined) events
  • able to enforce rules (corresponding to the events)


While doing so, the system should be:

  • objective
  • consistent
  • transparent
  • correct
  • non-impeding
  • cost-effective
  • safe
  • scalable
  • flexible
  • easy-to-use

Project Scope

As already discussed, this project will focus on making a proof-of-concept of an autonomous referee system. Due to lack of time a complete functioning end-product is not realizable. It is decided to narrow down the scope of this project, while still adhering to the system objectives as discussed before. The deliverables for this project (MSD 2016) are:

  • a system architecture
  • detect ball out of pitch (B.O.O.P)
  • detect collision
  • signal both events
  • a demo video
  • this wiki-page with all documentation
  • a final presentation