Skip to content

Multi-agent Coordination of the Nao Humanoid Robots in SPL

License

Notifications You must be signed in to change notification settings

mrlspl/GamePlanner

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Game Planner


This is a module developed by MRL-SPL team based on B-Human framework 2016. This module is mainly inspired by the "Positioning to Win" method at Robocup Simulation3D league. It calculates optimal assignment of tasks to a team of robots in a distributed setting.

Demo

You can watch the video at youtube.

Requirements

You need to get B-Human code release and checkout to coderelease2016

git clone git@github.com:bhuman/BHumanCodeRelease.git
git checkout coderelease2016

Installation

You can either use git submodule or simply copy the content of this repo to your own B-Human project.

Copy

  1. Get Game Planner code

    git clone [path to this repo] [sub dir]

  2. Copy GamePlanner files to B-Human code (Src and Config directories).

  3. Add AgentTask as representation and TaskAssignment as provider to Config/Locations/Default/modules.cfg

    {representation = AgentTask; provider = TaskAssignment;}

Git submodule

  1. Add submodule to your current B-Human project

    git submodule add [path to this repo] [sub dir]

  2. Run the setup.sh inside the fetched submodule. This will create a symbolic link to the submodule automatically.

  3. Add AgentTask as representation and TaskAssignment as provider to Config/Locations/Default/modules.cfg

    {representation = AgentTask; provider = TaskAssignment;}

Learn more about git submodule

Running

Make the code and run it as instructed in B-Human coderelease

Note: players list in Config/Locations/Default/taskAssignment.cfg must correspond to the id of the players in the game. This is only used for the static post assignment.

Usage

A simple example has written in Src/BehaviorControl/BehaviorControl2015/BehaviorControl2015.cpp to demonstrate the usage of the data provided by task assignment module

To enable debug drawings of the module on worldState fieldview, enter following command in SimRobot's console:

vfd worldState module:TaskAssignment on

Following screenshot demonstrates the assignments in the Playing state of the game with black dots (formation points) and the red lines representing the assigned position for each agent. LD: Leader and SUP: Supporter

Playing State Screenshot

alt example

For changing the formations, go to Config/Formations and run PlanEditor

Plan Editor

Learn more about PlanEditor

License

This project is licensed under the MIT License

About

Multi-agent Coordination of the Nao Humanoid Robots in SPL

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 98.7%
  • Shell 1.3%