{"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/interaction-networks-for-learning-about","title":"Interaction Networks for Learning about Objects, Relations and Physics","arxiv_id":"1612.00222","date":"2016-12-01","proceeding":"NeurIPS 2016 12","authors":["Peter W. Battaglia","Razvan Pascanu","Matthew Lai","Danilo Rezende","Koray Kavukcuoglu"],"abstract":"Reasoning about objects, relations, and physics is central to human\nintelligence, and a key goal of artificial intelligence. Here we introduce the\ninteraction network, a model which can reason about how objects in complex\nsystems interact, supporting dynamical predictions, as well as inferences about\nthe abstract properties of the system. Our model takes graphs as input,\nperforms object- and relation-centric reasoning in a way that is analogous to a\nsimulation, and is implemented using deep neural networks. We evaluate its\nability to reason about several challenging physical domains: n-body problems,\nrigid-body collision, and non-rigid dynamics. Our results show it can be\ntrained to accurately simulate the physical trajectories of dozens of objects\nover thousands of time steps, estimate abstract quantities such as energy, and\ngeneralize automatically to systems with different numbers and configurations\nof objects and relations. Our interaction network implementation is the first\ngeneral-purpose, learnable physics engine, and a powerful general framework for\nreasoning about object and relations in a wide variety of complex real-world\ndomains.","url_abs":"http://arxiv.org/abs/1612.00222v1","url_pdf":"http://arxiv.org/pdf/1612.00222v1.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":"interaction-networks-for-learning-about","repo_url":"https://github.com/ToruOwO/InteractionNetwork-pytorch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"interaction-networks-for-learning-about","repo_url":"https://github.com/clvrai/relation-network-tensorflow","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"interaction-networks-for-learning-about","repo_url":"https://github.com/gitlimlab/Relation-Network-Tensorflow","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"unanswered"}},{"paper_slug":"interaction-networks-for-learning-about","repo_url":"https://github.com/higgsfield/interaction_network_pytorch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"interaction-networks-for-learning-about","repo_url":"https://github.com/jaesik817/Interaction-networks_tensorflow","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"interaction-networks-for-learning-about","repo_url":"https://github.com/savvy379/princeton_gnn_tracking","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"interaction-networks-for-learning-about","repo_url":"https://github.com/dmlc/dgl/tree/master/examples/pytorch/graphsim","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1612.00222","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1612.00222"}},"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/higgsfield/interaction_network_pytorch","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/dmlc/dgl/tree/master/examples/pytorch/graphsim","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/savvy379/princeton_gnn_tracking","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/clvrai/relation-network-tensorflow","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ToruOwO/InteractionNetwork-pytorch","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/gitlimlab/Relation-Network-Tensorflow","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/jaesik817/Interaction-networks_tensorflow","reach":null}],"summary":{"ran":6,"unverified":2},"by_repo_kind":{"listed":{"samples":8,"ran":6,"repositories":4}},"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":6,"samples":[{"code_sha256_prefix":"e1cd3d969ef1b422","entry":"InteractionNetwork","repo":"ToruOwO/InteractionNetwork-pytorch","repo_kind":"listed","path":"model.py","file_url":"https://github.com/ToruOwO/InteractionNetwork-pytorch/blob/HEAD/model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"e1cd3d969ef1b422"}},{"code_sha256_prefix":"a8e34d70a6719026","entry":"InteractionNetwork","repo":"savvy379/princeton_gnn_tracking","repo_kind":"listed","path":"models/IN/interaction_network.py","file_url":"https://github.com/savvy379/princeton_gnn_tracking/blob/HEAD/models/IN/interaction_network.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a8e34d70a6719026"}},{"code_sha256_prefix":"1e41c85ca6ab165b","entry":"ObjectModel","repo":"ToruOwO/InteractionNetwork-pytorch","repo_kind":"listed","path":"model.py","file_url":"https://github.com/ToruOwO/InteractionNetwork-pytorch/blob/HEAD/model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"1e41c85ca6ab165b"}},{"code_sha256_prefix":"d6638514e761b22b","entry":"ObjectModel","repo":"savvy379/princeton_gnn_tracking","repo_kind":"listed","path":"models/IN/interaction_network.py","file_url":"https://github.com/savvy379/princeton_gnn_tracking/blob/HEAD/models/IN/interaction_network.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d6638514e761b22b"}},{"code_sha256_prefix":"2eb458fdcd488041","entry":"RelationModel","repo":"ToruOwO/InteractionNetwork-pytorch","repo_kind":"listed","path":"model.py","file_url":"https://github.com/ToruOwO/InteractionNetwork-pytorch/blob/HEAD/model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"2eb458fdcd488041"}},{"code_sha256_prefix":"862cfaad930c5773","entry":"RelationalModel","repo":"savvy379/princeton_gnn_tracking","repo_kind":"listed","path":"models/IN/interaction_network.py","file_url":"https://github.com/savvy379/princeton_gnn_tracking/blob/HEAD/models/IN/interaction_network.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"862cfaad930c5773"}},{"code_sha256_prefix":"2c912a0be9611a0c","entry":"phi_R","repo":"jaesik817/Interaction-networks_tensorflow","repo_kind":"listed","path":"interaction_network.py","file_url":"https://github.com/jaesik817/Interaction-networks_tensorflow/blob/HEAD/interaction_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":"2c912a0be9611a0c"}},{"code_sha256_prefix":"609d8f8a704ad27e","entry":"prop_nodes","repo":"dmlc/dgl","repo_kind":"listed","path":"python/dgl/propagate.py","file_url":"https://github.com/dmlc/dgl/blob/HEAD/python/dgl/propagate.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":"609d8f8a704ad27e"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}