{"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/a-unified-substrate-for-body-brain-co","title":"A Unified Substrate for Body-Brain Co-evolution","arxiv_id":"2203.12066","date":"2022-03-22","proceeding":null,"authors":["Sidney Pontes-Filho","Kathryn Walker","Elias Najarro","Stefano Nichele","Sebastian Risi"],"abstract":"The discovery of complex multicellular organism development took millions of years of evolution. The genome of such a multicellular organism guides the development of its body from a single cell, including its control system. Our goal is to imitate this natural process using a single neural cellular automaton (NCA) as a genome for modular robotic agents. In the introduced approach, called Neural Cellular Robot Substrate (NCRS), a single NCA guides the growth of a robot and the cellular activity which controls the robot during deployment. We also introduce three benchmark environments, which test the ability of the approach to grow different robot morphologies. In this paper, NCRSs are trained with covariance matrix adaptation evolution strategy (CMA-ES), and covariance matrix adaptation MAP-Elites (CMA-ME) for quality diversity, which we show leads to more diverse robot morphologies with higher fitness scores. While the NCRS can solve the easier tasks from our benchmark environments, the success rate reduces when the difficulty of the task increases. We discuss directions for future work that may facilitate the use of the NCRS approach for more complex domains.","url_abs":"https://arxiv.org/abs/2203.12066v2","url_pdf":"https://arxiv.org/pdf/2203.12066v2.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":"abstracts"},"code_links":[{"paper_slug":"a-unified-substrate-for-body-brain-co","repo_url":"https://github.com/sidneyp/neural-cellular-robot-substrate","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":null}],"tasks":[{"task_slug":"diversity","task_name":"Diversity"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2203.12066","atlas_url":"https://app.syntology.ai/?focus=2203.12066","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2203.12066"}},"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/sidneyp/neural-cellular-robot-substrate","reach":null}],"summary":{"ran":1,"ran_honours":1,"ran_fixture":2,"unverified":1},"by_repo_kind":{"official":{"samples":5,"ran":4,"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":"7abd2bfeae9c0cab","entry":"BodyBrainNCA","repo":"sidneyp/neural-cellular-robot-substrate","repo_kind":"official","path":"src/body_brain_nca.py","file_url":"https://github.com/sidneyp/neural-cellular-robot-substrate/blob/HEAD/src/body_brain_nca.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"7abd2bfeae9c0cab"}},{"code_sha256_prefix":"86b55c18be0d004a","entry":"calculatePlayfield","repo":"sidneyp/neural-cellular-robot-substrate","repo_kind":"official","path":"src/modular_light_chaser.py","file_url":"https://github.com/sidneyp/neural-cellular-robot-substrate/blob/HEAD/src/modular_light_chaser.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"86b55c18be0d004a"}},{"code_sha256_prefix":"46d690ec168ecb0d","entry":"get_body_mask","repo":"sidneyp/neural-cellular-robot-substrate","repo_kind":"official","path":"src/body_brain_nca.py","file_url":"https://github.com/sidneyp/neural-cellular-robot-substrate/blob/HEAD/src/body_brain_nca.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"46d690ec168ecb0d"}},{"code_sha256_prefix":"9c8f134808c662e5","entry":"get_energy_mask","repo":"sidneyp/neural-cellular-robot-substrate","repo_kind":"official","path":"src/body_brain_nca.py","file_url":"https://github.com/sidneyp/neural-cellular-robot-substrate/blob/HEAD/src/body_brain_nca.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"9c8f134808c662e5"}},{"code_sha256_prefix":"567c32f49c15508a","entry":"fig2array","repo":"sidneyp/neural-cellular-robot-substrate","repo_kind":"official","path":"src/body_brain_nca.py","file_url":"https://github.com/sidneyp/neural-cellular-robot-substrate/blob/HEAD/src/body_brain_nca.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"567c32f49c15508a"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}