The RoboCup 3D Simulated Soccer League allows software agents to control humanoid robots to compete against one another in a realistic simulation of the rules and physics of a game of soccer. The platform strives to reproduce the software programming challenges faced when building real physical robots for this purpose. In doing so, it helps research towards the
RoboCup
RoboCup is an annual international robotics competition founded in 1996 by a group of university professors (including Hiroaki Kitano, Manuela M. Veloso, and Minoru Asada). The aim of the competition is to promote robotics and AI research by of ...
Federation's goal of developing a team of fully autonomous humanoid robots that can win against the human world soccer champion team in 2050.
The first version of the 3D server was released on 2003-12-30, after an initial proposal presented at the 2003 RoboCup symposium.
Architecture
The simulation is executed in the ''RoboCup Simulated Soccer Server 3D'' (rcssserver3d) which runs on
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
,
Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
and
Mac OS X
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lapt ...
. The underlying simulation engine is
SimSpark
SimSpark is a generic simulation system for various multiagent simulations. It supports developing physical simulations for AI and robotics research with an open-source application framework. It is commonly used in academic research and educatio ...
.
Agents are controlled by external processes. The competition's rules dictate that each agent must be a separate process, though there is no technical restriction for this. Agents communicate with the soccer server via
TCP, by default on port 3100. Inter-process communication is otherwise forbidden. Agents may talk to one another, but only through the server which imposes certain restrictions on the distance and amount of information that may be sent.
The server sends game and agent state information to each agent. In response, the agent sends commands to the simulation that control the movement of the agent's body. Messages are sent using
Lisp
A lisp is a speech impairment in which a person misarticulates sibilants (, , , , , , , ). These misarticulations often result in unclear speech.
Types
* A frontal lisp occurs when the tongue is placed anterior to the target. Interdental lispi ...
-like
S-expression
In computer programming, an S-expression (or symbolic expression, abbreviated as sexpr or sexp) is an expression in a like-named notation for nested list (tree-structured) data. S-expressions were invented for and popularized by the programming la ...
s in single-byte
ASCII
ASCII ( ), abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because ...
, prefixed by a 32-bit unsigned integer representing the length of the following string.
The simulation server does not have a
GUI
The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
of its own. Instead, a dedicated ''monitor'' application connects to the server via TCP port 3200 and receives information about the state of play. The standard monitoring application is ''rcssmonitor3d'' which is additionally capable of replaying log files from recorded matches. ''RoboViz'' is a newer Java-based monitoring application with extended 3D graphical and debugging capabilities.
Robot Models
The
SimSpark
SimSpark is a generic simulation system for various multiagent simulations. It supports developing physical simulations for AI and robotics research with an open-source application framework. It is commonly used in academic research and educatio ...
simulation system is a generic simulator, capable of simulating different agent models.
In its history, the 3D league has used different models.
Changing of models represents progress simulating an improved approximation of a real robot. However, when models change, existing teams must rework their agents to control the new bodies.
Soccerbot
Image:Soccerbot-Anatomy.png, Anatomy of Soccerbot
Image:Soccerbot-3D-Front.png, Soccerbot rendered in 3D
The first agent model used in the 3D league was the ''Soccerbot'', which was based on the
HOAP The HOAP series robots are an advanced humanoid robot platform manufactured by Fujitsu Automation in Japan. HOAP is an abbreviation for "Humanoid for Open Architecture
Open architecture is a type of computer architecture or software architecture i ...
-2 by
Fujitsu
is a Japanese multinational information and communications technology equipment and services corporation, established in 1935 and headquartered in Tokyo. Fujitsu is the world's sixth-largest IT services provider by annual revenue, and the la ...
. As the first RoboCup 3D model, teams were primarily concerned with balance and basic mobility. Consequently, this agent model is not as fully featured as a human-sized biped soccer playing robot would be.
For example, Soccerbot has an omni-directional camera mounted in the torso and consequently the head is fixed. Similarly the hip joints are restricted to rotations around perpendicular axes.
Soccerbot was also designed within certain limitations of the simulation system at the time.
As the simulator became more robust, more sophisticated robot models were possible.
Nao Robot
Image:Nao_Body_Structure_(Labelled).png, Anatomy of Nao
Image:Nao-3D-Front.png, Nao rendered in 3D
Image:Nao humanoid robot.jpg, The real Nao
The current robot model used in competitions is based on the
Nao robot by
Aldebaran Robotics
Nao (pronounced ''now'') is an autonomous, programmable humanoid robot formerly developed by Aldebaran Robotics, a French robotics company headquartered in Paris, which was acquired by SoftBank Group in 2015 and rebranded as SoftBank Robotic ...
. It has 22 hinges to control the motion of its body.
Nao has a directional camera mounted in the head. The head can rotate through two degrees of freedom, ranging -120 to 120 degrees left-to-right, and -45 to 45 degrees down-to-up. The camera has a field of view 120 degrees wide.
Nao also has a more complex hip structure.
Perceptors
The Nao robot player is equipped with various perceptors:
* GyroRatePerceptor delivers information about orientation relative to X,Y,Z axes. Nao has one fixed within the torso.
* HingeJointPerceptor provides the current angle of a hinge joint. Hinge joints can only bend along one axis. Nao has 22 such joints.
* ForceResistancePerceptor provides information about the location, direction and magnitude of a force applied upon a part of the body. Nao has one of these on the sole of each foot.
* Accelerometer measures acceleration along X,Y,Z axes of the body part to which it is affixed. Gravity is registered. Nao has one fixed within the torso.
* VisionPerceptor a specialised camera that reports upon the location of certain landmarks upon the field, the ball and other players. Positions are reported in polar coordinates relative to the gazing direction of Nao.
* GameStatePerceptor detects game time and play mode (before kickoff, free kick, game over, etc.).
* HearPerceptor detects messages sent from other agents on the field, reporting their distance, direction and the message itself.
The simulation platform,
SimSpark
SimSpark is a generic simulation system for various multiagent simulations. It supports developing physical simulations for AI and robotics research with an open-source application framework. It is commonly used in academic research and educatio ...
is capable of extension via custom perceptors, but this is not allowed in competitions.
Effectors
* CreateEffector is sent once after the agent connects to create a robot within the server.
* HingeJointEffector specifies that a given force should be applied to a particular hinge joint. Nao has 22 such hinges.
* BeamEffector is used to reposition the robot player at times in the game when this is allowed.
* SayEffector makes the robot say a message that may be heard by team mates and opponents within a certain range via the ''HearPerceptor''.
Media
Five goals by SEU-RedSun from RoboCup 2008(YouTube)
Videos from Japan Open 2010(ustream)
UT Austin Villa highlights from RoboCup 2011(YouTube)
RoboCup 2012 3D Simulation League Highlights(YouTube)
UT Austin Villa highlights from RoboCup 2014(YouTube)
UT Austin Villa highlights from RoboCup 2015(YouTube)
UT Austin Villa highlights from RoboCup 2016(YouTube)
UT Austin Villa highlights from RoboCup 2017(YouTube)
Web Player for log files from previous competitions
Teams
Nao Team Humboldt - NaoTHLittle Green BatsUT Austin VillaThe Three Musketeers - L3M-SIMRoboCanesFC PortugalmagmaOffenburgBahiaRTITAndroids 3Dkgpkubs*
IUT3D
See also
*
RoboCup
RoboCup is an annual international robotics competition founded in 1996 by a group of university professors (including Hiroaki Kitano, Manuela M. Veloso, and Minoru Asada). The aim of the competition is to promote robotics and AI research by of ...
*
SimSpark
SimSpark is a generic simulation system for various multiagent simulations. It supports developing physical simulations for AI and robotics research with an open-source application framework. It is commonly used in academic research and educatio ...
References
External links
SimSpark WikiInstallation instructions for SimSpark and rcssserver3d on all platforms.
RoboCup WikiSoccer Simulation League article on the official RoboCup wiki.
Competition ArchiveArchive of log files, team binaries and team description papers from previous competitions.
RoboVizRoboViz monitoring tool on GitHub.
AIUT3D Motion EditorAIUT3D Motion Editor for creating keyframe-based motions.
{{DEFAULTSORT:Robocup 3d Soccer Simulation League
RoboCup
Robotics simulation software
2003 software
2003 in robotics
Robot soccer competitions