{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/llm2swarm-robot-swarms-that-responsively","title":"LLM2Swarm: Robot Swarms that Responsively Reason, Plan, and Collaborate through LLMs","arxiv_id":"2410.11387","date":"2024-10-15","proceeding":null,"authors":["Volker Strobel","Marco Dorigo","Mario Fritz"],"abstract":"Robot swarms are composed of many simple robots that communicate and collaborate to fulfill complex tasks. Robot controllers usually need to be specified by experts on a case-by-case basis via programming code. This process is time-consuming, prone to errors, and unable to take into account all situations that may be encountered during deployment. On the other hand, recent Large Language Models (LLMs) have demonstrated reasoning and planning capabilities, introduced new ways to interact with and program machines, and incorporate both domain-specific and commonsense knowledge. Hence, we propose to address the aforementioned challenges by integrating LLMs with robot swarms and show the potential in proofs of concept (showcases). For this integration, we explore two approaches. The first approach is 'indirect integration,' where LLMs are used to synthesize and validate the robot controllers. This approach may reduce development time and human error before deployment. Moreover, during deployment, it could be used for on-the-fly creation of new robot behaviors. The second approach is 'direct integration,' where each robot locally executes a separate LLM instance during deployment for robot-robot collaboration and human-swarm interaction. These local LLM instances enable each robot to reason, plan, and collaborate using natural language, as demonstrated in our showcases where the robots are able to detect a variety of anomalies, without prior information about the nature of these anomalies. To enable further research on our mainly conceptual contribution, we release the software and videos for our LLM2Swarm system: https://github.com/Pold87/LLM2Swarm.","url_abs":"https://arxiv.org/abs/2410.11387v3","url_pdf":"https://arxiv.org/pdf/2410.11387v3.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"links_only","authors_date_abstract":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license), from the Kaggle arXiv metadata snapshot of 2026-09-12"},"code_links":[{"paper_slug":"llm2swarm-robot-swarms-that-responsively","repo_url":"https://github.com/pold87/llm2swarm","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2410.11387","atlas_url":"https://app.syntology.ai/?focus=2410.11387","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2410.11387"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"deterministic:regex_extraction","url":"https://github.com/Pold87/LLM2Swarm","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/pold87/llm2swarm","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":2,"ran":4,"unverified":1},"by_repo_kind":{"official":{"samples":7,"ran":6,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"b105de395833fa72","entry":"generate_system_prompt","repo":"pold87/llm2swarm","repo_kind":"official","path":"IndirectIntegration/syntax-generator.py","file_url":"https://github.com/pold87/llm2swarm/blob/HEAD/IndirectIntegration/syntax-generator.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b105de395833fa72"}},{"code_sha256_prefix":"637691ef620e1e01","entry":"generate_system_prompt_without","repo":"pold87/llm2swarm","repo_kind":"official","path":"IndirectIntegration/syntax-generator.py","file_url":"https://github.com/pold87/llm2swarm/blob/HEAD/IndirectIntegration/syntax-generator.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"637691ef620e1e01"}},{"code_sha256_prefix":"ac9703a37ade7d39","entry":"getFolderSize","repo":"Pold87/LLM2Swarm","repo_kind":"official","path":"DirectIntegration/controllers/aux.py","file_url":"https://github.com/Pold87/LLM2Swarm/blob/HEAD/DirectIntegration/controllers/aux.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ac9703a37ade7d39"}},{"code_sha256_prefix":"24dee742310b4535","entry":"identifiersExtract","repo":"Pold87/LLM2Swarm","repo_kind":"official","path":"DirectIntegration/controllers/aux.py","file_url":"https://github.com/Pold87/LLM2Swarm/blob/HEAD/DirectIntegration/controllers/aux.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"24dee742310b4535"}},{"code_sha256_prefix":"c0846a5bc18a52b6","entry":"load_latest_controller","repo":"Pold87/LLM2Swarm","repo_kind":"official","path":"IndirectIntegration/logic-validation.py","file_url":"https://github.com/Pold87/LLM2Swarm/blob/HEAD/IndirectIntegration/logic-validation.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c0846a5bc18a52b6"}},{"code_sha256_prefix":"110ff2a27e99eee5","entry":"readEnode","repo":"Pold87/LLM2Swarm","repo_kind":"official","path":"DirectIntegration/controllers/aux.py","file_url":"https://github.com/Pold87/LLM2Swarm/blob/HEAD/DirectIntegration/controllers/aux.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"110ff2a27e99eee5"}},{"code_sha256_prefix":"68fb144d78dae9a9","entry":"generate_refinement_prompt","repo":"Pold87/LLM2Swarm","repo_kind":"official","path":"IndirectIntegration/logic-validation.py","file_url":"https://github.com/Pold87/LLM2Swarm/blob/HEAD/IndirectIntegration/logic-validation.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"68fb144d78dae9a9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}