{"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/scalable-perception-action-communication","title":"Scalable Perception-Action-Communication Loops with Convolutional and Graph Neural Networks","arxiv_id":"2106.13358","date":"2021-06-24","proceeding":null,"authors":["Ting-Kuei Hu","Fernando Gama","Tianlong Chen","Wenqing Zheng","Zhangyang Wang","Alejandro Ribeiro","Brian M. Sadler"],"abstract":"In this paper, we present a perception-action-communication loop design using Vision-based Graph Aggregation and Inference (VGAI). This multi-agent decentralized learning-to-control framework maps raw visual observations to agent actions, aided by local communication among neighboring agents. Our framework is implemented by a cascade of a convolutional and a graph neural network (CNN / GNN), addressing agent-level visual perception and feature learning, as well as swarm-level communication, local information aggregation and agent action inference, respectively. By jointly training the CNN and GNN, image features and communication messages are learned in conjunction to better address the specific task. We use imitation learning to train the VGAI controller in an offline phase, relying on a centralized expert controller. This results in a learned VGAI controller that can be deployed in a distributed manner for online execution. Additionally, the controller exhibits good scaling properties, with training in smaller teams and application in larger teams. Through a multi-agent flocking application, we demonstrate that VGAI yields performance comparable to or better than other decentralized controllers, using only the visual input modality and without accessing precise location or motion state information.","url_abs":"https://arxiv.org/abs/2106.13358v2","url_pdf":"https://arxiv.org/pdf/2106.13358v2.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":"scalable-perception-action-communication","repo_url":"https://github.com/VITA-Group/VGAI","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"graph-neural-network","task_name":"Graph Neural Network"},{"task_slug":"imitation-learning","task_name":"Imitation Learning"}],"methods":[{"method_slug":"graph-neural-network","method_name":"Graph Neural Network"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2106.13358","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2106.13358"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+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":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/VITA-Group/VGAI","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":1,"unverified":7},"by_repo_kind":{"official":{"samples":8,"ran":1,"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":"fac5364e2f53c6db","entry":"conv3x3","repo":"VITA-Group/VGAI","repo_kind":"official","path":"joint_network.py","file_url":"https://github.com/VITA-Group/VGAI/blob/HEAD/joint_network.py","link_basis":"harvester_set","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":"fac5364e2f53c6db"}},{"code_sha256_prefix":"495f0015aace0c41","entry":"conv5x5","repo":"VITA-Group/VGAI","repo_kind":"official","path":"joint_network.py","file_url":"https://github.com/VITA-Group/VGAI/blob/HEAD/joint_network.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":"495f0015aace0c41"}},{"code_sha256_prefix":"383ea69f8601ecff","entry":"imread","repo":"VITA-Group/VGAI","repo_kind":"official","path":"dataset.py","file_url":"https://github.com/VITA-Group/VGAI/blob/HEAD/dataset.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":"383ea69f8601ecff"}},{"code_sha256_prefix":"26a0ae52329b0f03","entry":"loc_dagnn","repo":"VITA-Group/VGAI","repo_kind":"official","path":"network_agg.py","file_url":"https://github.com/VITA-Group/VGAI/blob/HEAD/network_agg.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":"26a0ae52329b0f03"}},{"code_sha256_prefix":"4cb2f31718182736","entry":"noisy","repo":"VITA-Group/VGAI","repo_kind":"official","path":"inference_by_dronet.py","file_url":"https://github.com/VITA-Group/VGAI/blob/HEAD/inference_by_dronet.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":"4cb2f31718182736"}},{"code_sha256_prefix":"dfdf238cc257c75a","entry":"pad_to_square","repo":"VITA-Group/VGAI","repo_kind":"official","path":"dataset.py","file_url":"https://github.com/VITA-Group/VGAI/blob/HEAD/dataset.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":"dfdf238cc257c75a"}},{"code_sha256_prefix":"cbb96c1d0826496d","entry":"resize","repo":"VITA-Group/VGAI","repo_kind":"official","path":"dataset.py","file_url":"https://github.com/VITA-Group/VGAI/blob/HEAD/dataset.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":"cbb96c1d0826496d"}},{"code_sha256_prefix":"d95bb9450347541d","entry":"vis_dagnn","repo":"VITA-Group/VGAI","repo_kind":"official","path":"joint_network.py","file_url":"https://github.com/VITA-Group/VGAI/blob/HEAD/joint_network.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":"d95bb9450347541d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}