{"id":21135507,"url":"https://github.com/mrrobb/soas-marl","last_synced_at":"2025-07-30T14:14:54.923Z","repository":{"id":67701089,"uuid":"487970815","full_name":"MrRobb/soas-marl","owner":"MrRobb","description":"Multi-Agent Reinforcement Learning implementation for Self Organizing MultiAgent Systems (SOAS)","archived":false,"fork":false,"pushed_at":"2022-05-31T02:31:55.000Z","size":1385,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-21T06:43:28.821Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MrRobb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-02T19:46:30.000Z","updated_at":"2023-07-25T14:56:55.000Z","dependencies_parsed_at":"2023-03-11T02:11:31.162Z","dependency_job_id":null,"html_url":"https://github.com/MrRobb/soas-marl","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrRobb%2Fsoas-marl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrRobb%2Fsoas-marl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrRobb%2Fsoas-marl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrRobb%2Fsoas-marl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MrRobb","download_url":"https://codeload.github.com/MrRobb/soas-marl/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243581061,"owners_count":20314163,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-20T06:56:12.708Z","updated_at":"2025-03-14T12:44:11.186Z","avatar_url":"https://github.com/MrRobb.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SOAS: Multi-Agent System Reinforcement Learning\n\nMulti-Agent Reinforcement Learning implementation for Self Organizing MultiAgent Systems (SOAS)\n\nBased on the paper [\"Reward Machines for Cooperative Multi-Agent Reinforcement Learning\"](https://arxiv.org/abs/2007.01962) by Neary, et al.\n\n## DEMO\n\n\u003cp align=\"center\"\u003e\n\t\u003ca href=\"https://youtu.be/5Q0Rl9En4BI\"\u003e\n\t\t\u003cimg src=\"assets/three_agent_button.png\" width=55%\u003e\n\t\u003c/a\u003e\n\u003c/p\u003e\n\nRandom Agent: [https://youtu.be/2_2QWqt3uFg](https://youtu.be/2_2QWqt3uFg)\n\nDQPRM Agent: [https://youtu.be/5Q0Rl9En4BI](https://youtu.be/5Q0Rl9En4BI)\n\n## Compiling\n\nThis has been compiled and tested on Linux Mint 20.2 Uma and Mac OS. \n\n\u003e This is an OpenFrameworks app --\u003e You have to move the src, bin and other configs to your OpenFrameworks environment to make it work or set OF_ROOT in config.make (explained below).\n\n### Instructions\n\n#### Prerequisite: xtensor\nNote: For Linux, the xtensor and xtl packages needed to be installed from source because the packages provided by Linux Mint were not up to date enough to work with openFrameworks. It is a simple installation as long as you have cmake on your system. Follow the instructions in each of these repositories to install xtl and then xtensor:\n* https://github.com/xtensor-stack/xtl\n* https://github.com/xtensor-stack/xtensor\n\nEssentially, you simply need to run a command like this, where `path_to_prefix` is likely `/usr` (although you may use a different path if you pass the correct cflags and ldflags to the compiler via config.make):\n\n```bash\ncmake -DCMAKE_INSTALL_PREFIX=path_to_prefix ..\n```\n\n```bash\nmake install\n```\n\nFor Mac OS, the following command should install the required libraries:\n\n```\nbrew install xtensor\n```\n\n#### Prerequisite: openFrameworks\n\n1. Go to [OpenFrameworks](http://openframeworks.cc/download/) and download the proper one for your OS. We tested using verion 0.11.2.\n2. **Follow their instructions** to completely install OpenFrameworks.\n3. Try to execute the `emptyExample` inside of the `apps` folder.\n4. If it's working, **go to 5**. Else you need to **check step 2**, you're missing something.\n5. Set the `OF_ROOT` environment variable to point to the installation of openFrameworks (Example: `OF_ROOT=/home/user/apps/of_v0.11.2_linux64gcc6_release`). You can do this through either an `export` command added to .bashrc or by setting `OF_ROOT` in config.make.\n\n#### SOAS MARL application\n1. Run: `git clone https://github.com/MrRobb/soas-marl`\n2. Enter the newly-created directory (`cd soas-marl`)\n3. To build, run the command: `make`\n4. To run, run the command: `make run`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrrobb%2Fsoas-marl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrrobb%2Fsoas-marl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrrobb%2Fsoas-marl/lists"}