In Proceedings of the 23rd International Conference on Autonomous Agents and Multiagent Systems. 2024. [1]
Please cite us! 😄🤓
@inproceedings{alves2024amongus,
author = {do Carmo Alves, Matheus Aparecido and Varma, Amokh and Elkhatib, Yehia and Soriano Marcolino, Leandro},
title = {It Is Among Us: Identifying Adversaries in Ad-hoc Domains Using Q-valued Bayesian Estimations},
year = {2024},
isbn = {},
address = {Auckland, New Zealand},
abstract = {Ad-hoc teamwork models are crucial for solving distributed tasks in environments with unknown teammates. In order to improve performance, agents may collaborate in the same environment, trusting each other and exchanging information. However, what happens if there is an impostor among us? In this paper, we present BAE, a novel and efficient framework for online planning and estimation within ad-hoc teamwork domains where there is an adversarial agent disguised as teammates. Our approach considers the identification of the impostor through a process we term ``Q-valued Bayesian Estimations''. BAE can identify the adversary at the same time it performs ad-hoc estimation in order to improve coordination. Our results show that BAE has superior accuracy and faster reasoning capabilities in comparison to the state-of-the-art.},
booktitle = {Proceedings of the 23rd International Conference on Autonomous Agents and Multiagent Systems},
numpages = {9},
series = {AAMAS 2024}
}
BAE is a novel and efficient framework for online planning in ad-hoc teamwork domains capable of performing estimations about adversarial agent disguised as a teammate. Our approach considers the identification of the impostor through a process we term ``Q-valued Bayesian Estimations''. BAE can identify the adversary at the same time it performs ad-hoc estimation in order to improve coordination. Our results show that BAE has superior accuracy and faster reasoning capabilities in comparison to the state-of-the-art. More detail and information about our approach can be found in our paper [1].
In this README you can find:
- About this repository
This repository represents a streamlined version of the environment used during our research and proposal of BAE. We removed some files and improved comments in order to facilitate your reading and understanding through the code. 😄
As mentioned in our paper, we utilized the AdLeap-MAS framework [2] to conduct all experiments and analyze the results. Therefore, the dependencies outlined here mirror those of the framework; however, we provide the minimal set required to run BAE's code, the baselines and the benchmarks presented in the paper, double-check requirements.txt
.
- Encountering issues while running our code? 😨
If you find yourself unable to resolve them using our tutorial, we recommend consulting the AdLeap-MAS GitHub page for additional guidance on troubleshooting common problems or contact us here on GitHub!
- Quick experience
For a quick experience, we recommend running the default main.py
file, which will run a BAE's experiment in the Level-based Foraging environment, small scenario. By default, the display will pop-up for visual evaluation of the agent's behaviour and a result file will be created in results/
folder, which can be directly used in plots later.
- Running different environments and baselines
If you want to run your experiment in other environments, you will find some options at the top of the main.py
file.
# 1. Setting the environment
method = 'mcts' # choose your method (we used only mcts in this paper)
scenario_id = 5 # define your scenario configuration. Options: [5,6,7,8]
estimation_method = 'bae' # choosing your estimation method. Options: ['bae','aga','abu','oeata_a]
display = True # choosing to turn on or off the display
Directly, you can change the Level-based Foraging scenario by modifying the scenario_id
variable there.
We have 4 different options for scenarios_id
: [5,6,7,8]
.
All scenarios were tested and evaluated in our paper.
Now, if you want to change the estimation_method used in the experiments, you can change the estimation_method
variable.
In summary, we have 4 different estimation methods available: ['bae','aga','abu','oeata_a]
.
All baselines are introduced and tested in our paper.
Finally, you can choose to turn on or off the display using display = True
or display = False
, respectively.
And that's it folks. Easy and ready to use. 😇
We are working on it and additional details will be available soon
[1] Matheus Aparecido do Carmo Alves, Amokh Varma, Yehia Elkhatib, and Leandro Soriano Marcolino. 2024. It Is Among Us: Identifying Adversaries in Ad-hoc Domains Using Q-valued Bayesian Estimations. In Proceedings of the 23rd International Conference on Autonomous Agents and Multiagent Systems (AAMAS '24). Auckland, New Zealand.
[2] Matheus Aparecido do Carmo Alves, Amokh Varma, Yehia Elkhatib, and Leandro Soriano Marcolino. 2022. AdLeap-MAS: An Open-source Multi-Agent Simulator for Ad-hoc Reasoning. In Proceedings of the 21st International Conference on Autonomous Agents and Multiagent Systems (AAMAS '22). International Foundation for Autonomous Agents and Multiagent Systems, Richland, SC, 1893–1895.