{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,29]],"date-time":"2026-05-29T11:27:04Z","timestamp":1780054024023,"version":"3.54.0"},"reference-count":57,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2023,7,26]],"date-time":"2023-07-26T00:00:00Z","timestamp":1690329600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/100000001","name":"NSF","doi-asserted-by":"publisher","award":["#1941808"],"award-info":[{"award-number":["#1941808"]}],"id":[{"id":"10.13039\/100000001","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Graph."],"published-print":{"date-parts":[[2023,8]]},"abstract":"<jats:p>\n            We introduce ShapeCoder, the first system capable of taking a dataset of shapes, represented with unstructured primitives, and jointly discovering (i) useful\n            <jats:italic>abstraction<\/jats:italic>\n            functions and (ii) programs that use these abstractions to explain the input shapes. The discovered abstractions capture common patterns (both structural and parametric) across a dataset, so that programs rewritten with these abstractions are more compact, and suppress spurious degrees of freedom. ShapeCoder improves upon previous abstraction discovery methods, finding better abstractions, for more complex inputs, under less stringent input assumptions. This is principally made possible by two methodological advancements: (a) a shape-to-program recognition network that learns to solve sub-problems and (b) the use of e-graphs, augmented with a conditional rewrite scheme, to determine when abstractions with complex parametric expressions can be applied, in a tractable manner. We evaluate ShapeCoder on multiple datasets of 3D shapes, where primitive decompositions are either parsed from manual annotations or produced by an unsupervised cuboid abstraction method. In all domains, ShapeCoder discovers a library of abstractions that captures high-level relationships, removes extraneous degrees of freedom, and achieves better dataset compression compared with alternative approaches. Finally, we investigate how programs rewritten to use discovered abstractions prove useful for downstream tasks.\n          <\/jats:p>","DOI":"10.1145\/3592416","type":"journal-article","created":{"date-parts":[[2023,7,26]],"date-time":"2023-07-26T15:47:45Z","timestamp":1690386465000},"page":"1-17","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":19,"title":["ShapeCoder: Discovering Abstractions for Visual Programs from Unstructured Primitives"],"prefix":"10.1145","volume":"42","author":[{"ORCID":"https:\/\/orcid.org\/0009-0005-1169-0507","authenticated-orcid":false,"given":"R. Kenny","family":"Jones","sequence":"first","affiliation":[{"name":"Brown University, Providence, United States of America"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-7568-2849","authenticated-orcid":false,"given":"Paul","family":"Guerrero","sequence":"additional","affiliation":[{"name":"Adobe Research, London, United Kingdom"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-2597-0914","authenticated-orcid":false,"given":"Niloy J.","family":"Mitra","sequence":"additional","affiliation":[{"name":"University College London (UCL), London, United Kingdom"},{"name":"Adobe Research, London, United Kingdom"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-8253-0069","authenticated-orcid":false,"given":"Daniel","family":"Ritchie","sequence":"additional","affiliation":[{"name":"Brown University, Providence, United States of America"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2023,7,26]]},"reference":[{"key":"e_1_2_2_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/2897826.2927323"},{"key":"e_1_2_2_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/3571234"},{"key":"e_1_2_2_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/3571207"},{"key":"e_1_2_2_4_1","first-page":"16351","article-title":"DeepSVG: A Hierarchical Generative Network for Vector Graphics Animation","volume":"33","author":"Carlier Alexandre","year":"2020","unstructured":"Alexandre Carlier, Martin Danelljan, Alexandre Alahi, and Radu Timofte. 2020. DeepSVG: A Hierarchical Generative Network for Vector Graphics Animation. In Advances in Neural Information Processing Systems (NeurIPS), Vol. 33. 16351--16361.","journal-title":"Advances in Neural Information Processing Systems (NeurIPS)"},{"key":"e_1_2_2_5_1","volume-title":"ShapeNet: An information-rich 3D model repository. arXiv preprint arXiv:1512.03012","author":"Chang Angel X","year":"2015","unstructured":"Angel X Chang, Thomas Funkhouser, Leonidas Guibas, Pat Hanrahan, Qixing Huang, Zimo Li, Silvio Savarese, Manolis Savva, Shuran Song, Hao Su, Jianxiong Xiao, Li Yi, and Fisher Yu. 2015. ShapeNet: An information-rich 3D model repository. arXiv preprint arXiv:1512.03012 (2015)."},{"key":"e_1_2_2_6_1","volume-title":"Proceedings of the Twenty-Third International Joint Conference on Artificial Intelligence","author":"Dechter Eyal","unstructured":"Eyal Dechter, Jon Malmaud, Ryan P. Adams, and Joshua B. Tenenbaum. 2013. Bootstrap Learning via Modular Concept Discovery. In Proceedings of the Twenty-Third International Joint Conference on Artificial Intelligence (Beijing, China) (IJCAI '13). AAAI Press, 1302--1309."},{"key":"e_1_2_2_7_1","doi-asserted-by":"publisher","DOI":"10.1109\/3DV.2014.31"},{"key":"e_1_2_2_8_1","unstructured":"Boyang Deng Sumith Kulal Zhengyang Dong Congyue Deng Yonglong Tian and Jiajun Wu. 2022. Unsupervised Learning of Shape Programs with Repeatable Implicit Parts. In Advances in Neural Information Processing Systems (NeurIPS)."},{"key":"e_1_2_2_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/3272127.3275006"},{"key":"e_1_2_2_10_1","volume-title":"Write","author":"Ellis Kevin","unstructured":"Kevin Ellis, Maxwell Nye, Yewen Pu, Felix Sosa, Joshua B. Tenenbaum, and Armando Solar-Lezama. 2019. Write, Execute, Assess: Program Synthesis with a REPL. In Advances in Neural Information Processing Systems (NeurIPS)."},{"key":"e_1_2_2_11_1","unstructured":"Kevin Ellis Daniel Ritchie Armando Solar-Lezama and Josh Tenenbaum. 2018. Learning to Infer Graphics Programs from Hand-Drawn Images. In Advances in Neural Information Processing Systems (NeurIPS)."},{"key":"e_1_2_2_12_1","volume-title":"ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (SIGPLAN). 835--850","author":"Ellis Kevin","year":"2021","unstructured":"Kevin Ellis, Catherine Wong, Maxwell Nye, Mathias Sabl\u00e9-Meyer, Lucas Morales, Luke Hewitt, Luc Cary, Armando Solar-Lezama, and Joshua B Tenenbaum. 2021. Dream-Coder: Bootstrapping inductive program synthesis with wake-sleep library learning. In ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (SIGPLAN). 835--850."},{"key":"e_1_2_2_13_1","doi-asserted-by":"publisher","DOI":"10.3390\/mti1040027"},{"key":"e_1_2_2_14_1","unstructured":"Yaroslav Ganin Sergey Bartunov Yujia Li Ethan Keller and Stefano Saliceti. 2021. Computer-aided design as language. In Advances in Neural Information Processing Systems (NeurIPS)."},{"key":"e_1_2_2_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/3528223.3530173"},{"key":"e_1_2_2_16_1","first-page":"1","article-title":"Inverse procedural modeling of branching structures by inferring L-systems","volume":"39","author":"Guo Jianwei","year":"2020","unstructured":"Jianwei Guo, Haiyong Jiang, Bedrich Benes, Oliver Deussen, Xiaopeng Zhang, Dani Lischinski, and Hui Huang. 2020. Inverse procedural modeling of branching structures by inferring L-systems. ACM Transactions on Graphics (TOG) 39, 5 (2020), 1--13.","journal-title":"ACM Transactions on Graphics (TOG)"},{"key":"e_1_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/3528223.3530088"},{"key":"e_1_2_2_18_1","volume-title":"Goodman","author":"Hwang Irvin","year":"2011","unstructured":"Irvin Hwang, Andreas Stuhlm\u00fcller, and Noah D. Goodman. 2011. Inducing Probabilistic Programs by Bayesian Program Merging. CoRR arXiv:1110.5667 (2011)."},{"key":"e_1_2_2_19_1","volume-title":"Siggraph Asia 2020 39, 6","author":"Jones R. Kenny","year":"2020","unstructured":"R. Kenny Jones, Theresa Barton, Xianghao Xu, Kai Wang, Ellen Jiang, Paul Guerrero, Niloy J. Mitra, and Daniel Ritchie. 2020. ShapeAssembly: Learning to Generate Programs for 3D Shape Structure Synthesis. ACM Transactions on Graphics (TOG), Siggraph Asia 2020 39, 6 (2020), Article 234."},{"key":"e_1_2_2_20_1","volume-title":"Siggraph 2021 40, 4","author":"Jones R. Kenny","year":"2021","unstructured":"R. Kenny Jones, David Charatan, Paul Guerrero, Niloy J. Mitra, and Daniel Ritchie. 2021. ShapeMOD: Macro Operation Discovery for 3D Shape Programs. ACM Transactions on Graphics (TOG), Siggraph 2021 40, 4 (2021), Article 153."},{"key":"e_1_2_2_21_1","doi-asserted-by":"publisher","DOI":"10.1109\/CVPR52688.2022.00964"},{"key":"e_1_2_2_22_1","first-page":"8776","article-title":"UCSG-NET - unsupervised discovering of constructive solid geometry tree","volume":"33","author":"Kania Kacper","year":"2020","unstructured":"Kacper Kania, Maciej Zieba, and Tomasz Kajdanowicz. 2020. UCSG-NET - unsupervised discovering of constructive solid geometry tree. In Advances in Neural Information Processing Systems (NeurIPS), Vol. 33. 8776--8786.","journal-title":"Advances in Neural Information Processing Systems (NeurIPS)"},{"key":"e_1_2_2_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/3414685.3417807"},{"key":"e_1_2_2_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/3528223.3530133"},{"key":"e_1_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.1109\/CVPR.2013.33"},{"key":"e_1_2_2_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/3450626.3459823"},{"key":"e_1_2_2_27_1","doi-asserted-by":"publisher","DOI":"10.1109\/CVPR.2019.00100"},{"key":"e_1_2_2_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/1276377.1276484"},{"key":"e_1_2_2_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/3385412.3386012"},{"key":"e_1_2_2_30_1","volume-title":"Paul Guerrero, Tom Kelly, Niloy Mitra, Leonidas Guibas, and Peter Wonka.","author":"Para Wamiq Reyaz","year":"2021","unstructured":"Wamiq Reyaz Para, Shariq Farooq Bhat, Paul Guerrero, Tom Kelly, Niloy Mitra, Leonidas Guibas, and Peter Wonka. 2021. SketchGen: Generating Constrained CAD Sketches. In Advances in Neural Information Processing Systems (NeurIPS)."},{"key":"e_1_2_2_31_1","unstructured":"Ofek Pearl Itai Lang Yuhua Hu Raymond A. Yeh and Rana Hanocka. 2022. GeoCode: Interpretable Shape Programs. arXiv:2212.11715 [cs.GR]"},{"key":"e_1_2_2_32_1","doi-asserted-by":"publisher","DOI":"10.1109\/CVPR46437.2021.00726"},{"key":"e_1_2_2_33_1","unstructured":"Pradyumna Reddy Zhifei Zhang Matthew Fisher Hailin Jin Zhaowen Wang and Niloy J Mitra. 2021b. A Multi-Implicit Neural Representation for Fonts. In Advances in Neural Information Processing Systems (NeurIPS)."},{"key":"e_1_2_2_34_1","volume-title":"CSG-Stump: A Learning Friendly CSG-Like Representation for Interpretable Shape Parsing. In IEEE\/CVF International Conference on Computer Vision (ICCV). 12478--12487","author":"Ren Daxuan","year":"2021","unstructured":"Daxuan Ren, Jianmin Zheng, Jianfei Cai, Jiatong Li, Haiyong Jiang, Zhongang Cai, Junzhe Zhang, Liang Pan, Mingyuan Zhang, Haiyu Zhao, et al. 2021. CSG-Stump: A Learning Friendly CSG-Like Representation for Interpretable Shape Parsing. In IEEE\/CVF International Conference on Computer Vision (ICCV). 12478--12487."},{"key":"e_1_2_2_35_1","volume-title":"ExtrudeNet: Unsupervised Inverse Sketch-and-Extrude for Shape Parsing. In European Conference on Computer Vision (ECCV).","author":"Ren Daxuan","year":"2022","unstructured":"Daxuan Ren, Jianmin Zheng, Jianfei Cai, Jiatong Li, and Junzhe Zhang. 2022. ExtrudeNet: Unsupervised Inverse Sketch-and-Extrude for Shape Parsing. In European Conference on Computer Vision (ECCV)."},{"key":"e_1_2_2_36_1","volume-title":"Neurosymbolic Models for Computer Graphics. Computer Graphics Forum","author":"Ritchie Daniel","year":"2023","unstructured":"Daniel Ritchie, Paul Guerrero, R. Kenny Jones, Niloy J. Mitra, Adriana Schulz, Karl D. D. Willis, and Jiajun Wu. 2023. Neurosymbolic Models for Computer Graphics. Computer Graphics Forum (2023)."},{"key":"e_1_2_2_37_1","doi-asserted-by":"crossref","unstructured":"Daniel Ritchie Sarah Jobalia and Anna Thomas. 2018. Example-based Authoring of Procedural Modeling Programs with Structural and Continuous Variability. In EUROGRAPHICS.","DOI":"10.1111\/cgf.13371"},{"key":"e_1_2_2_38_1","volume-title":"Vitruvion: A Generative Model of Parametric CAD Sketches. In International Conference on Learning Representations (ICLR).","author":"Seff Ari","unstructured":"Ari Seff, Wenda Zhou, Nick Richardson, and Ryan P. Adams. 2022. Vitruvion: A Generative Model of Parametric CAD Sketches. In International Conference on Learning Representations (ICLR)."},{"key":"e_1_2_2_39_1","volume-title":"CSGNet: Neural Shape Parser for Constructive Solid Geometry. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR).","author":"Sharma Gopal","year":"2018","unstructured":"Gopal Sharma, Rishabh Goyal, Difan Liu, Evangelos Kalogerakis, and Subhransu Maji. 2018. CSGNet: Neural Shape Parser for Constructive Solid Geometry. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR)."},{"key":"e_1_2_2_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/3414685.3417781"},{"key":"e_1_2_2_41_1","unstructured":"SideFx. 2014. Introduction to Procedural Modeling. https:\/\/www.sidefx.com\/learn\/collections\/introduction-to-procedural-modeling\/. Accessed: 2023-04-18."},{"key":"e_1_2_2_42_1","volume-title":"Computer Graphics Forum","author":"Stava Ondrej","unstructured":"Ondrej Stava, S\u00f6ren Pirk, Julian Kratt, Baoquan Chen, Radom\u00edr M\u011bch, Oliver Deussen, and Bedrich Benes. 2014. Inverse procedural modelling of trees. In Computer Graphics Forum, Vol. 33. Wiley Online Library, 118--131."},{"key":"e_1_2_2_43_1","doi-asserted-by":"crossref","unstructured":"Jerry O. Talton Lingfeng Yang Ranjitha Kumar Maxine Lim Noah D. Goodman and Radom\u00edr Mech. 2012. Learning design patterns with Bayesian grammar induction. In UIST.","DOI":"10.1145\/2380116.2380127"},{"key":"e_1_2_2_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/1480881.1480915"},{"key":"e_1_2_2_45_1","doi-asserted-by":"publisher","DOI":"10.2168\/LMCS-7(1:10)2011"},{"key":"e_1_2_2_46_1","volume-title":"International Conference on Learning Representations (ICLR).","author":"Tian Yonglong","year":"2019","unstructured":"Yonglong Tian, Andrew Luo, Xingyuan Sun, Kevin Ellis, William T. Freeman, Joshua B. Tenenbaum, and Jiajun Wu. 2019. Learning to Infer and Execute 3D Shape Programs. In International Conference on Learning Representations (ICLR)."},{"key":"e_1_2_2_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/2366145.2366187"},{"key":"e_1_2_2_48_1","volume-title":"\u0141 ukasz Kaiser, and Illia Polosukhin","author":"Vaswani Ashish","year":"2017","unstructured":"Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, \u0141 ukasz Kaiser, and Illia Polosukhin. 2017. Attention is All you Need. In Advances in Neural Information Processing Systems, I. Guyon, U. Von Luxburg, S. Bengio, H. Wallach, R. Fergus, S. Vishwanathan, and R. Garnett (Eds.), Vol. 30. Curran Associates, Inc. https:\/\/proceedings.neurips.cc\/paper_files\/paper\/2017\/file\/3f5ee243547dee91fbd053c1c4a845aa-Paper.pdf"},{"key":"e_1_2_2_49_1","doi-asserted-by":"publisher","DOI":"10.1145\/3434304"},{"key":"e_1_2_2_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/3355089.3356518"},{"key":"e_1_2_2_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/2601097.2601162"},{"key":"e_1_2_2_52_1","volume-title":"DeepCAD: A Deep Generative Network for Computer-Aided Design Models. In IEEE\/CVF International Conference on Computer Vision (ICCV). 6772--6782","author":"Wu Rundi","year":"2021","unstructured":"Rundi Wu, Chang Xiao, and Changxi Zheng. 2021. DeepCAD: A Deep Generative Network for Computer-Aided Design Models. In IEEE\/CVF International Conference on Computer Vision (ICCV). 6772--6782."},{"key":"e_1_2_2_53_1","volume-title":"Computer Graphics Forum","author":"Xu Ling","unstructured":"Ling Xu and David Mould. 2015. Procedural tree modeling with guiding vectors. In Computer Graphics Forum, Vol. 34. Wiley Online Library, 47--56."},{"key":"e_1_2_2_54_1","volume-title":"Inferring CAD Modeling Sequences Using Zone Graphs. In IEEE\/CVF Conference on Computer Vision and Pattern Recognition (CVPR).","author":"Xu Xianghao","year":"2021","unstructured":"Xianghao Xu, Wenzhe Peng, Chin-Yi Cheng, Karl D. D. Willis, and Daniel Ritchie. 2021. Inferring CAD Modeling Sequences Using Zone Graphs. In IEEE\/CVF Conference on Computer Vision and Pattern Recognition (CVPR)."},{"key":"e_1_2_2_55_1","volume-title":"SkexGen: Autoregressive Generation of CAD Construction Sequences with Disentangled Codebooks. In International Conference on Machine Learning (ICML).","author":"Xu Xiang","year":"2022","unstructured":"Xiang Xu, Karl DD Willis, Joseph G Lambourne, Chin-Yi Cheng, Pradeep Kumar Jayaraman, and Yasutaka Furukawa. 2022. SkexGen: Autoregressive Generation of CAD Construction Sequences with Disentangled Codebooks. In International Conference on Machine Learning (ICML)."},{"key":"e_1_2_2_56_1","doi-asserted-by":"publisher","DOI":"10.1145\/3450626.3459873"},{"key":"e_1_2_2_57_1","volume-title":"CAPRI-Net: Learning Compact CAD Shapes With Adaptive Primitive Assembly. In IEEE\/CVF Conference on Computer Vision and Pattern Recognition (CVPR). 11768--11778","author":"Yu Fenggen","year":"2022","unstructured":"Fenggen Yu, Zhiqin Chen, Manyi Li, Aditya Sanghi, Hooman Shayani, Ali Mahdavi-Amiri, and Hao Zhang. 2022. CAPRI-Net: Learning Compact CAD Shapes With Adaptive Primitive Assembly. In IEEE\/CVF Conference on Computer Vision and Pattern Recognition (CVPR). 11768--11778."}],"container-title":["ACM Transactions on Graphics"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3592416","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3592416","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3592416","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T17:48:59Z","timestamp":1750182539000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3592416"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,7,26]]},"references-count":57,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2023,8]]}},"alternative-id":["10.1145\/3592416"],"URL":"https:\/\/doi.org\/10.1145\/3592416","relation":{},"ISSN":["0730-0301","1557-7368"],"issn-type":[{"value":"0730-0301","type":"print"},{"value":"1557-7368","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023,7,26]]},"assertion":[{"value":"2023-07-26","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}