Agents can ask other agents about what cards they have. What kind of questions they ask, is according to which strategy they follow. The different strategies are as following:
- RANDOM: The agent asks for a random weapon and random suspect card.
- NOT_OWN: The agent asks for two cards that they themselves don't own.
- ONE_OWN: The agent asks for one card that they have themselves, and one card that they don't own themselves.
- UNKNOWN: The agent asks for two cards that they don't know to who they belong.
- ONE_UNKNOWN: The agent asks about one card that they know where it is, and one card that they don't know where it is.
- REASONING: The agent asks about one card that they know about and isn't of the next agent, and one card that might be of the next agent or in the envelope (or if there are none such cards: that might be of the next agent)
Our code was tested with python3.9
on Ubuntu and Windows.
Various python packages where used that can be obtained via pip. For the exact programs, see the requirements file.
The code builds on mlsolver which is included in the repository.
Running the implementation goes as follows:
-
Please make sure all required packages are installed.
-
The
Implementation/src/main.py
program can be run, either from the command line or by using bash. It does not require additional input, but a few global boolean values can be set in the main.py.- SHORT_RUN (default: True): Play one game. This shows the interface.
- DIFFERENT_STRATEGIES: Run all combinations of strategies against each other. Agent 1 has one strategy, agent 2 and 3 both have another stategy.
- STRAT_VS_RANDOM: Agent 1 has a different strategy every time, while both Agent 2 and Agent 3 have the 'RANDOM' strategy.
- ENTER (default: False): If this is set to True, you need to continually press enter before the next turn is taken.
- NUM_WEAPONS (default: 4). This is the total amount of weapon cards, and can be set to either 4 or 7.
- NUM_SUSPECTS (default: 4). This is the total amount of suspect cards, and can be set to either 4 or 7.
Please note that setting either NUM_WEAPONS or NUM_SUSPECTS to 7 significantly slows down the model, especially the interface. While it does work, we do not recommend setting NUM_WEAPONS or NUM_SUSPECTS to 7 in combination with SHORT_RUN = True.
This contains some text files with the results from our experiments.
This contains all the necessary files to run the implementation.
All files related to the creation of the website are contained here.
All figures related to the website are contained in this folder.