Artificial Intelligence
Getting Started
This page will try give a quick rundown on how to get started on working with and running the AI code. If you are looking for how to get up and running with the AI code itself, you should check out our How to on the Github.
All the puzzle pieces
There are quite a lot of pieces of software involved in AI. All these pieces have to properly fit together, meaning they have to be able to talk to each other. This can be quite tricky as there are different possibilities in terms of setup. During development, you probably have everything running on the same machine. But at an actual match, you will have different machines running the AIs, vision, game controller and referees. To add to the complexity, a game can be played in the real world with actual robots or with a simulator.
You will need to familiarize yourself with all these pieces, which can be done with the information that is made available in this wiki and their respective Github READMEs. Some of these pieces were not created by us but other developers within the RoboCup community.
Here is a list of all pieces of the puzzle to play a game:
- RoboTeam AI - Controls the robots
- RoboTeam Interface - Visualizes data from observer
- RoboTeam Networking - Handles all internal communication
- RoboTeam RobotHub - Sends commands to robots
- RoboTeam Observer - Convert Vision data to useful data
- RoboTeam Utils - Some Utils
- Game Controller - Controls the game
- Referee - Referee of the game
- Basestation - The physical purple box
- Simulator - Simulates reality without the need for hardware
- Vision - Shared league software that uses camera to decide what is a robot and what is not based on colors
On this part of the wiki you will find all the theory and reasoning behind the structure and implementation of the code for our AI. Our codebase is fully open source and can be found on Github. In the code you can find some additional documentation that is related to specific parts of code. We also created a GitHub Pages that shows this code related documentation more comprehensively.
Special Terms
- AI Artificial Intelligence.
- AP Application Manager.
- RTT RoboTeam Twente.
- SM State Machine.
- SSL Small Size League.
- STP Skill, Tactic, (Role,) Play.
- (E)TDP (Extended) Team Discription Paper.