{"id":21620228,"url":"https://github.com/bachorp/mat","last_synced_at":"2025-03-18T18:23:54.410Z","repository":{"id":204152409,"uuid":"570103953","full_name":"bachorp/mat","owner":"bachorp","description":"The Multi Agent Transportation Problem: Solvers, Evaluations, and Computer-Assisted Proofs","archived":false,"fork":false,"pushed_at":"2024-09-11T11:47:16.000Z","size":31155,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-24T21:32:18.332Z","etag":null,"topics":["computer-assisted-proof","conflict-based-search","group-theory","multi-agent-path-finding","sagemath","sat"],"latest_commit_sha":null,"homepage":"https://doi.org/10.1609/aaai.v37i10.26362","language":"C++","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/bachorp.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":"2022-11-24T10:51:34.000Z","updated_at":"2024-12-23T11:33:38.000Z","dependencies_parsed_at":"2025-01-24T21:41:47.288Z","dependency_job_id":null,"html_url":"https://github.com/bachorp/mat","commit_stats":null,"previous_names":["bachorp/mat"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bachorp%2Fmat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bachorp%2Fmat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bachorp%2Fmat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bachorp%2Fmat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bachorp","download_url":"https://codeload.github.com/bachorp/mat/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244278092,"owners_count":20427443,"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":["computer-assisted-proof","conflict-based-search","group-theory","multi-agent-path-finding","sagemath","sat"],"created_at":"2024-11-24T23:11:00.634Z","updated_at":"2025-03-18T18:23:54.383Z","avatar_url":"https://github.com/bachorp.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# The Multi Agent Transportation Problem\n\nPascal Bachor, Rolf-David Bergdoll, and Bernhard Nebel (2023) — [Proceedings of the 37\u003csup\u003eth\u003c/sup\u003e AAAI Conference on Artificial Intelligence](https://doi.org/10.1609/aaai.v37i10.26362)\n\n![](teaser.gif)\n\n## Test results and evaluation\n\nFor test data and evaluation please refer to the corresponding subfolders `eval/input`, `eval/configuration` and `eval/mapf`.\n\n## Sagemath Scripts\n\nFor our theoretical analysis we utilized the algebra software `SageMath`.\nCode can be found in folder `sage` and can be ran online at \u003chttps://sagecell.sagemath.org/\u003e.\n\n## MAT solver\n\nYou can use *Make* to build from source.\n\n```shell\nmake mat\n```\n\nRequires [*Cryptominisat 5*](\u003chttps://github.com/msoos/cryptominisat\u003e).\n\n**Usage**\n\n```shell\nbuild/mat [r[egular_mapf]] COMMAND [[OPTION value] ...] [outfile]\n```\n\nwhere `COMMAND` refers to either one of the following.\n\n* `0` - Conduct a number of tests. Takes any of the possible options\n* `1` - Show the first example (Figure 1) from the paper\n* `2` - Show the counter example (Figure 2) from the paper\n* `3` - Show the counter example (Figure 3) from the paper\n* `b[arták]` - Conduct the test set from `[1]`. Takes only a seed option\n* `i[nteractive]` - Start an interactive parameter prompt\n* `n[on_blocking]` - Variant with non-blocking containers\n* `f[ixed]` - Variant where a container can be transported by at most one agent\n\nAnd `OPTION` is either one of the following.\n\n* `g[rid_size]` - Grid size (side length): Value must be a positive integer\n* `s[eed]` - Seed: Value can be any string, possibly empty\n* `c[onfiguration]` - Configuration from a fixed set of configurations: Value must be an integer in range\n\nIf an output file is given, results be written as comma seperated values (`.csv`).\n\nIf no arguments are given, interactive mode will be started.\n\nYou can navigate in the found MAT plan by entering `f` (forward) `d` (back) and `c` (escape).\n\n## Conflict-Based Search for MAPD\n\nCBS-MAPD is a modified version of CBS-TA from [libMultiRobotPlanning](https://github.com/whoenig/libMultiRobotPlanning).\n\nYou can use *Make* to build from source.\n\n```shell\nmake cbs_mapd\n```\n\nRequires [*Boost*](https://www.boost.org/).\n\n**Usage**\n\nSince it was mainly build for comparison purposes, CBS-MAPD does not provide the same interface capabilities as MAT.\n\n```shell\nbuild/cbs_mapd [[OPTION value] ...]\n```\n\nwhere `OPTION` is either one of the following.\n\n* `g[rid_size]` - Grid size (side length): Value must be a positive integer\n* `b[locked]` - Percentage of blocked grid cells: Value must be a non-negative between 0 and 100\n* `a[gents]` - Number of agents: Value must be an integer in range\n* `c[ontainers]` - Number of containers: Value must be an integer in range\n* `s[eed]` - Seed: Value can be any string, possibly empty\n* `o[utput]` - Output file name: Will generate an .yaml file with statistics and problem solution\n\nThe instance generation is the same as for MAT, i.e. if the same respective parameters are given the same instance will be generated.\nNote that when given more containers than agents, CBS-MAPD will always fail.\n\n---\n\n`[1]` *Barták, R; Zhou, N; Stern, R; Boyarski, E; and Surynek, P. 2017. Modeling and Solving the Multi-agent Pathfinding Problem in Picat. In 29th IEEE International Conference on Tools with Artificial Intelligence, ICTAI 2017, 959-966. IEEE Computer Society.*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbachorp%2Fmat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbachorp%2Fmat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbachorp%2Fmat/lists"}