Difference between revisions of "Projects:2021s2-63311 Robots playing capture the flag"
(→Introduction) |
(→Background and relevant work) |
||
Line 12: | Line 12: | ||
Also, the simulation must consider basic physics constraints that apply to the robot’s movements. For instance, the parameters with maximum velocity, acceleration and stopping acceleration will be analysed and implemented. | Also, the simulation must consider basic physics constraints that apply to the robot’s movements. For instance, the parameters with maximum velocity, acceleration and stopping acceleration will be analysed and implemented. | ||
− | == Background and relevant work == | + | === Background and relevant work === |
This game challenges the need to build a smart algorithm. In this case, it’s the tactical planning and execution for robots to play capture the flag. The goal is to integration these algorithms into physical robots that play capture the flag, but also where they can be used in a variety of other/different applications. The essence of this project is the strategic algorithm, which will determine how the robots act according to real-time events. | This game challenges the need to build a smart algorithm. In this case, it’s the tactical planning and execution for robots to play capture the flag. The goal is to integration these algorithms into physical robots that play capture the flag, but also where they can be used in a variety of other/different applications. The essence of this project is the strategic algorithm, which will determine how the robots act according to real-time events. | ||
+ | ==== Aquaticus ==== | ||
+ | One of the closest research projects that have done similar research on the same objective is Aquaticus [3]. The project tested the game of CTF with real human and robots on the water surface. The coordinates and movement of the game is recorded and made available on Aquaticus website. However, data is limited, as there had not been many game set to analyse. | ||
+ | Meanwhile, a set of large number of simulations is needed to study the behaviour of the robotic players in the game. | ||
+ | |||
+ | ==== Hamilton Jacobi reachability ==== | ||
+ | Another group of researchers have been trying to implement different approaches to game planning on the game of CTF. The research had been successful at that time for the implementation of Hamilton-Jacobi reachability into one of the scenarios in the game CTF. The advantage of this research is to apply Hamilton Jacobi reachability to calculate the possibilities to successfully offend in the game of CTF, depending on different scenarios and achieve victory. However, the idea was abstract, on the paper research without actually simulate a full course game of CTF. | ||
== Project aim and methods == | == Project aim and methods == |
Revision as of 21:38, 7 June 2022
Contents
Abstract
Robotics application is getting more popular in recent years. Most robotic system are known for their excellence in handling tasks that require a high level of responsiveness, repetition, and accurate execution. However, the more complicated task, the more inclination for robots to suffer functionally, especially with tasks that involves critical planning and making strategies in advance. To research such tactical tasks, the game capturing the flag is chosen. Capturing the flag is a team-based game that requires the player to capture their opponent’s flag while protecting their own. The team with better strategy and formation will be more likely to achieve victory. With that in mind, this project aims to simulate the game CTF in a software environment to study the ways in which complex and strategic behaviours can be implemented into robots using Python programming.
Introduction
Motivation
Today, the automation industry is growing rapidly, and robots are becoming more popular. With the development of the robotic industry, the programing algorithm quality becomes crucial in many complex and difficult tasks. With the movement of technology, it is indispensable to carry out more researches about machine learning and strategic decision making so that they can achieve difficult tasks.
Moreover, deep learning machines, or Artificial Intelligence (AI) has been developing rapidly and proven it's reputation in self-learning ability. For instance, the AI machine AlphaGo, developed by Google DeepMind Challenge Match has claimed predominant number of victories (4/5 wins) against 18th time world champion Lee Sedol in Go Chess. It is desired for the researches in the future leads to the development in intelligent machines, which will aid in human's difficult task in the future.
Project Aims
The deliverable of this project is a simulation program, which visualize robots playing the game together, with or without control from human observer. The robots were programmed so that they must obey fundamental physics rules, such as velocity, acceleration. Next, it is essential to define attacking, and defending algorithms so that they can be implemented into the program. The execution of algorithm will need to depend on the game situation. Also, the simulation must consider basic physics constraints that apply to the robot’s movements. For instance, the parameters with maximum velocity, acceleration and stopping acceleration will be analysed and implemented.
Background and relevant work
This game challenges the need to build a smart algorithm. In this case, it’s the tactical planning and execution for robots to play capture the flag. The goal is to integration these algorithms into physical robots that play capture the flag, but also where they can be used in a variety of other/different applications. The essence of this project is the strategic algorithm, which will determine how the robots act according to real-time events.
Aquaticus
One of the closest research projects that have done similar research on the same objective is Aquaticus [3]. The project tested the game of CTF with real human and robots on the water surface. The coordinates and movement of the game is recorded and made available on Aquaticus website. However, data is limited, as there had not been many game set to analyse. Meanwhile, a set of large number of simulations is needed to study the behaviour of the robotic players in the game.
Hamilton Jacobi reachability
Another group of researchers have been trying to implement different approaches to game planning on the game of CTF. The research had been successful at that time for the implementation of Hamilton-Jacobi reachability into one of the scenarios in the game CTF. The advantage of this research is to apply Hamilton Jacobi reachability to calculate the possibilities to successfully offend in the game of CTF, depending on different scenarios and achieve victory. However, the idea was abstract, on the paper research without actually simulate a full course game of CTF.
Project aim and methods
Project aims
Research
• Developing algorithms for robots to play the game • Integration into physical robots
Programing
• Learn a new programing language: Python • Develop environment for simulation • Setup joysticks as human input to test algorithm • Develop offensive strategy • Develop defensive strategy • Team based all defend or all offense or mixed strategy
Integration
• Apply the program into physical robots • This step is optional, depending on the success in early algorithm development
Finalising
• Polishing and complete project deliverables
Methods
.
Simulation
An environment was generated for testing. Python is the programming language being used with a program called PyCharm is used to help with editing/debugging and testing python codes. The python library being used is called 'pygame' which is a really advantageous library that allows creation of simple and complex games/programs, where handling graphics, player inputs and collisions is made easy. A code has been written to connect a wireless controller (joystick) is python which eases gameplay. Now with the simulation environment being set up, the team can focus on testing different algorithms to evaluate them.
Integrating into physical robots
.
Results
Results of simulation carried out by 20th September 2021: Firstly games such as space invader, space shooter and pong were created so that the project team can be familiar with the simulation environment (python, pycharm & pygame). Then the game pong was used as a platform to create a player vs computer capture the flag game, where the player has to get past robots moving up and down in order to capture the flag. Next, for the ease of gameplay, a code was added to connect a controller to python, and a simple game of moving a box around the screen was created to show the success of this code. This code was then extended to a player vs robot capture the flag game, where the player is controlling a defender, while the robot has an algorithm which calculates and moves in the most direct path to the flag (flag appears randomly in the map on the defenders side).
Conclusion and Future work
Conclusion
. .
Future work
. .
References
NGUYEN, DUONG D., et al. "Dynamic Multi-Target Assignment with Decentralised Online Learning to Achieve Multiple Synchronised Goals." 2020 International Conference on Machine Learning and Cybernetics (ICMLC). IEEE, 2020.
Simpson, T., Hull, R., Dadgar, A., Rajagopalan, A., Kim, J.,&Chen, L. (2019). On-board/off-board smooth trajectory control for quadcopters through multi-loop PID tuning. Australasian Conference on Robotics and Automation, ACRA, 2019-December, [159894].
Hongjun Yu, Peng Shi, Cheng-Chew Lim, Dongzhe Wang. (2019) Formation control for multi-robot systems with collision avoidance. International Journal of Control 92:10, pages 2223-2234.
Yutong Liu, Hongjun Yu, Cheng-Chew Lim&Peng Shi (2017) Steady formation analysis on multi-robot systems, Journal of Control and Decision, 4:1, 12-31, DOI: 10.1080/23307706.2016.1254073
https://www.roboticoncology.com/history-of-robotic-surgery/
https://online.officetimeline.com/app/#/file/2fd73c1d-0f25-439a-87f6-d138e7b8cdf0
Project Team
Student researchers
Kevin Perera
Vu Quang Truong
Supervisors
Dr. Cheng-Chew Lim
Dr. Duong Duc Nguyen
David Hubczenko (DTSG)