{"id":24503576,"url":"https://github.com/alexliap/multiagent_games","last_synced_at":"2025-03-15T08:23:12.659Z","repository":{"id":222174402,"uuid":"756429636","full_name":"alexliap/multiagent_games","owner":"alexliap","description":"Multi-Agent games for rectangular boards. Training achieved with Q-Learning.","archived":false,"fork":false,"pushed_at":"2024-03-08T11:36:41.000Z","size":356,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T23:17:41.362Z","etag":null,"topics":["q-learning-algorithm","reinforcement-learning","reinforcement-learning-algorithms"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alexliap.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-02-12T16:42:45.000Z","updated_at":"2024-02-22T15:24:07.000Z","dependencies_parsed_at":"2024-03-08T12:52:14.631Z","dependency_job_id":null,"html_url":"https://github.com/alexliap/multiagent_games","commit_stats":null,"previous_names":["alexliap/multiagent_games"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexliap%2Fmultiagent_games","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexliap%2Fmultiagent_games/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexliap%2Fmultiagent_games/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexliap%2Fmultiagent_games/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alexliap","download_url":"https://codeload.github.com/alexliap/multiagent_games/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243703737,"owners_count":20334028,"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":["q-learning-algorithm","reinforcement-learning","reinforcement-learning-algorithms"],"created_at":"2025-01-21T23:17:43.514Z","updated_at":"2025-03-15T08:23:12.636Z","avatar_url":"https://github.com/alexliap.png","language":"Python","readme":"# Multi Agent Games\n\nThe purpose of this project is to train an agent, through self play, to play the following game:\n\n- Color the tiles of the table below\n- Available colors are two (doesn't matter which they are)\n- \"Correct\" colorization: neihgbouring (up and down) tiles are different color\n- Episode ends when all tiles are colored\n\n\u003cdiv align=\"center\"\u003e\n\n|     | A     | B     | C     |\n| :-: | :---: | :---: | :---: |\n| A   |       |       |       |\n| B   |       |       |       |\n| C   |       |       |       |\n\n\u003c/div\u003e\n\nThe game is played in 4 different configuration rules:\n\n- A.1 -\u003e Agents play simultaneuously \u0026 know the environment state\n- A.2 -\u003e Agents play simultaneuously \u0026 know the results of their own actions\n- B.1 -\u003e Agents play one after the other \u0026 know the environment state\n- B.2 -\u003e Agents play one after the other \u0026 know the results of their own actions\n\n**Rewards**\n\n- 1 if neighbouring tiles are different color (empty tile doesn't count) else 0\n- -1 if an agent tries to color a tile already colored (color statys the same)\n- If they try to color the same tile, one gets -1 and the other the appropriate reward w.r.t. the environment\n- 10 if agents reach the desired state at the end of an episode\n\nThe rewards are not strict and can be changed.\n\n\u003cbr /\u003e\n\nBelow there is an experiment run on A.1 game rules, where the game was run for an increasing amount of epochs each time to check for convergence. As we can see the success rate (how many times out of x did the game end on the desired state) for each amount of epochs is monitored. The amount of epochs it takes to converge for each different set of rules differs. For the other games as well you can check the [experiments](https://github.com/alexliap/multiagent_games/tree/main/experiments) directory.\n\n\u003cbr /\u003e\n\n![Alt text](experiments/test_1_A_1.png)\n\n\u003cbr /\u003e\n\n# Dependencies\n\n- matplotlib\n- numpy\n- pre-commit\n- pyright\n- tqdm\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexliap%2Fmultiagent_games","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falexliap%2Fmultiagent_games","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexliap%2Fmultiagent_games/lists"}