This repository contains the executable code intended for running on the central computer, which is responsible for the overarching control of the robot team, as well as functionality for receiving data from the shared vision system (SSL-Vision) and referee software (SSL Game Controller) of RoboCup SSL, as well as fuctionality for communicating with the simulation software grSim (https://github.com/RoboCup-SSL/grSim).
The Centralized AI software is built with the following:
On Ubuntu and other Debian derivatives, CMake and Protobuf can be installed with:
sudo apt install build-essential cmake libprotobuf-dev protobuf-compiler
PyTorch can be downloaded from https://pytorch.org/ where the following options need to be selected:
- PyTorch build: Stable
- OS: Linux
- Package: LibTorch
- Language: C++/Java
- Compute Platform: CPU
- Choose download link with cxx11 ABI version
- Clone the repository:
git clone https://github.com/DVA490-474-Project-Course/centralised-ai.git
- Navigate to the project directory:
cd centralised-ai
- Open the CMakeLists.txt under repo root in a text editor and edit the path in the line:
set(CMAKE_PREFIX_PATH "/absolute-path-to/libtorch/share/cmake/Torch/")
to contain the absolute path of .../libtorch/share/cmake/Torch in the libtorch directory that was downloaded in the prequisites section.
- Create a build directory and navigate to it:
mkdir build & cd build
- Build the source code:
cmake ..
make
- Locate the binaries which should be stored in bin:
cd ../bin
- Execute the desired binaries.
API:
- Develop Simulation interface
- Develop SSL interface
Collective Robot Behaviour:
- Develop AI algorithm
- Ability to send and receive data from simulation
- Ability to receive referee commands from SSL interface
- Ability to receive pose data from SSL interface
- Ability to send commands to robot
- Ability to receive information from robot
Design diagrams/files can be found in the docs directory. Additionally they are available on:
Distributed under the MIT License. See License for more information.
- Jacob Johansson:jjn20030@student.mdu.se
- Viktor Eriksson:ven20002@student.mdu.se
- Aaiza Aziz Khan: akn23018@student.mdu.se
- Carl Larsson: cln20001@student.mdu.se
- Shruthi Puthiya Kunnon: spn23001@student.mdu.se
- Emil Åberg: eag24002@student.mdu.se