MATRX Agent (repository)
Summary |
---|
🤖 A collaborative agent that can autonomously cooperate with other agents to complete tasks in a joint-activity environment known as Blocks World for Teams (BW4T). A world in BW4T consists of multiple rooms that contain blocks of different shapes and colors which have to be dropped off at a particular location in a particular order. An agent in BW4T can be shape- or colorblind which necessitates the agents communicating amongst themselves the information that they have obtained as well as an agreed-upon way to determine who picks up which block. |
Features
This “MATRX Agent”:
- has three distinct kinds of behavioral modes depending on the environment that all have implemented the entire behavior necessary for an arbitrary number of fully as well as partially capable agents to finish one whole iteration of the MATRX world such as:
- solitary mode which occurs when the agent does not receive any identifiable message from the other agents in the world
- cluster mode which occurs when the agent receives more cluster_mode protocol messages than group_mode protocol messages. A cluster of agents includes agents made by other individuals that communicate via the dedicated cluster message system.
- group mode which occurs when the agent receives more group_mode protocol messages than cluster_mode protocol messages. A group of agents includes only other “MATRIX Agents” that communicate via the dedicated group message system.
- can operate in even the most complex of environments that exist in BW4T such as situations where the agent is alone and has to pick up more than three items. The agent is aware of its inventory limit and thus drops off blocks to the left of the appropriate drop location.
- can explore rooms of an arbitrary size as it uses the actual size of a room to determine the appropriate exploration pattern
Tools
Purpose | Name |
---|---|
Programming language | Python |
Dependency manager | Virtualenv |
Version control system | Git |
Agent framework | MATRX |
Installation Process
If you want to import this project and resolve all the dependencies associated with it, it is assumed that you have already installed a dependency manager of your choice like virtualenv, Python and that your operating system is Windows. It is strongly suggested that you first create a virtual environment with your chosen dependency manager before you proceed.
Then, you can install all the dependencies with this command:
pip install -r requirements.txt
Licence
The “MATRX Agent” is published under the MIT licence, which can be found in the LICENSE file. For this repository, the terms laid out there shall not apply to any individual that is currently enrolled at a higher education institution as a student. Those individuals shall not interact with any other part of this repository besides this README in any way by, for example cloning it or looking at its source code or have someone else interact with this repository in any way.
References
The base image for the logo was taken from the official MATRX website.