Table of Links
Appendix
4 Experiments
4.1 Environments
We conduct experiments on four domain-specific graphics languages, with complete grammar specifications provided in Appendix B.
CSG2D A 2D constructive solid geometry language where primitive shapes are added and subtracted to create more complex forms, as explored in our baseline methods [11, 28]. We also create CSG2D-Sketch, which has an added observation model that simulates hand-drawn sketches using the algorithm from Wood et al. [39].
TinySVG A language featuring primitive shapes with color, along with Arrange commands for horizontal and vertical alignment, and Move commands for shape offsetting. Figure 1 portrays an example program. Unlike the compositional nature of CSG2D, TinySVG is hierarchical: subexpressions can be combined into compound objects for high-level manipulation. We also create, Rainbow, a simplified version of TinySVG without Move commands for ablation studies due to its reduced computational demands.
We implemented these languages using the Lark [19] and Iceberg [16] Python libraries, with our tree-diffusion implementation designed to be generic and adaptable to any context-free grammar and observation model.
Authors:
(1) Shreyas Kapur, University of California, Berkeley ([email protected]);
(2) Erik Jenner, University of California, Berkeley ([email protected]);
(3) Stuart Russell, University of California, Berkeley ([email protected]).
This paper is