{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,12,9]],"date-time":"2025-12-09T04:16:09Z","timestamp":1765253769521,"version":"3.41.0"},"reference-count":39,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2015,7,27]],"date-time":"2015-07-27T00:00:00Z","timestamp":1437955200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/100000185","name":"DARPA","doi-asserted-by":"crossref","award":["FA8750-14-2-0009"],"award-info":[{"award-number":["FA8750-14-2-0009"]}],"id":[{"id":"10.13039\/100000185","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Graph."],"published-print":{"date-parts":[[2015,7,27]]},"abstract":"<jats:p>We present a method for controlling the output of procedural modeling programs using Sequential Monte Carlo (SMC). Previous probabilistic methods for controlling procedural models use Markov Chain Monte Carlo (MCMC), which receives control feedback only for completely-generated models. In contrast, SMC receives feedback incrementally on incomplete models, allowing it to reallocate computational resources and converge quickly. To handle the many possible sequentializations of a structured, recursive procedural modeling program, we develop and prove the correctness of a new SMC variant, Stochastically-Ordered Sequential Monte Carlo (SOSMC). We implement SOSMC for general-purpose programs using a new programming primitive: the stochastic future. Finally, we show that SOSMC reliably generates high-quality outputs for a variety of programs and control scoring functions. For small computational budgets, SOSMC's outputs often score nearly twice as high as those of MCMC or normal SMC.<\/jats:p>","DOI":"10.1145\/2766895","type":"journal-article","created":{"date-parts":[[2015,7,28]],"date-time":"2015-07-28T12:26:38Z","timestamp":1438086398000},"page":"1-11","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":46,"title":["Controlling procedural modeling programs with stochastically-ordered sequential Monte Carlo"],"prefix":"10.1145","volume":"34","author":[{"given":"Daniel","family":"Ritchie","sequence":"first","affiliation":[{"name":"Stanford University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Ben","family":"Mildenhall","sequence":"additional","affiliation":[{"name":"Stanford University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Noah D.","family":"Goodman","sequence":"additional","affiliation":[{"name":"Stanford University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Pat","family":"Hanrahan","sequence":"additional","affiliation":[{"name":"Stanford University"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2015,7,27]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1111\/j.1467-9868.2009.00736.x"},{"key":"e_1_2_1_2_1","volume-title":"Proc. Eurographics","author":"Bene\u0161 B.","year":"2011","unstructured":"Bene\u0161 , B. , \u0160ava , O. , M\u011bch , R. , and Miller , G . 2011. Guided Procedural Modeling . In Proc. Eurographics 2011 . Bene\u0161, B., \u0160ava, O., M\u011bch, R., and Miller, G. 2011. Guided Procedural Modeling. In Proc. Eurographics 2011."},{"volume-title":"Encyclopedia of Artificial Intelligence","author":"Bisiani R.","key":"e_1_2_1_3_1","unstructured":"Bisiani , R. 1987. Beam Search . In Encyclopedia of Artificial Intelligence , S. Shapiro, Ed. Bisiani, R. 1987. Beam Search. In Encyclopedia of Artificial Intelligence, S. Shapiro, Ed."},{"key":"e_1_2_1_4_1","unstructured":"de Moura A. L. and Ierusalimschy R. 2004. Revisiting Coroutines. Tech. rep.  de Moura A. L. and Ierusalimschy R. 2004. Revisiting Coroutines. Tech. rep."},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/2491956.2462166"},{"key":"e_1_2_1_6_1","volume-title":"Proc. ISPA","author":"Douc R.","year":"2005","unstructured":"Douc , R. , and Cappe , O . 2005. Comparison of Resampling Schemes for Particle Filtering . In Proc. ISPA 2005 . Douc, R., and Cappe, O. 2005. Comparison of Resampling Schemes for Particle Filtering. In Proc. ISPA 2005."},{"key":"e_1_2_1_7_1","volume-title":"Eds","author":"Doucet A.","year":"2001","unstructured":"Doucet , A. , De Freitas , N. , and Gordon , N. , Eds . 2001 . Sequential Monte Carlo Methods in Practice. Springer . Doucet, A., De Freitas, N., and Gordon, N., Eds. 2001. Sequential Monte Carlo Methods in Practice. Springer."},{"volume-title":"Proceedings of the Thirty-Sixth Annual Conference of the Cognitive Science Society.","author":"Gershman S.","key":"e_1_2_1_9_1","unstructured":"Gershman , S. , and Goodman , N. D . 2014. Amortized Inference in Probabilistic Reasoning . In Proceedings of the Thirty-Sixth Annual Conference of the Cognitive Science Society. Gershman, S., and Goodman, N. D. 2014. Amortized Inference in Probabilistic Reasoning. In Proceedings of the Thirty-Sixth Annual Conference of the Cognitive Science Society."},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1111\/1467-9868.00280"},{"key":"e_1_2_1_11_1","unstructured":"Goodman N. D. and Stuhlm\u00fcller A. 2014. The Design and Implementation of Probabilistic Programming Languages. Retrieved 2014\/12\/15 from http:\/\/dippl.org.  Goodman N. D. and Stuhlm\u00fcller A. 2014. The Design and Implementation of Probabilistic Programming Languages. Retrieved 2014\/12\/15 from http:\/\/dippl.org."},{"key":"e_1_2_1_12_1","volume-title":"Proc. of UAI","author":"Goodman N. D.","year":"2008","unstructured":"Goodman , N. D. , Mansinghka , V. K. , Roy , D. M. , Bonawitz , K. , and Tenenbaum , J. B . 2008. Church: a language for generative models . In Proc. of UAI 2008 . Goodman, N. D., Mansinghka, V. K., Roy, D. M., Bonawitz, K., and Tenenbaum, J. B. 2008. Church: a language for generative models. In Proc. of UAI 2008."},{"key":"e_1_2_1_13_1","first-page":"2","article-title":"Novel approach to nonlinear\/non-Gaussian Bayesian state estimation. Radar and Signal Processing","volume":"140","author":"Gordon N.","year":"1993","unstructured":"Gordon , N. , Salmond , D. , and Smith , A. 1993 . Novel approach to nonlinear\/non-Gaussian Bayesian state estimation. Radar and Signal Processing , IEE Proceedings F 140 , 2 . Gordon, N., Salmond, D., and Smith, A. 1993. Novel approach to nonlinear\/non-Gaussian Bayesian state estimation. Radar and Signal Processing, IEE Proceedings F 140, 2.","journal-title":"IEE Proceedings F"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/4472.4478"},{"key":"e_1_2_1_15_1","first-page":"1","article-title":"Poor Man's Monte Carlo. Journal of the Royal Statistical Society","volume":"16","author":"Hammersley J. M.","year":"1954","unstructured":"Hammersley , J. M. , and Morton , K. W. 1954 . Poor Man's Monte Carlo. Journal of the Royal Statistical Society . Series B (Methodological) 16 , 1 . Hammersley, J. M., and Morton, K. W. 1954. Poor Man's Monte Carlo. Journal of the Royal Statistical Society. Series B (Methodological) 16, 1.","journal-title":"Series B (Methodological)"},{"key":"e_1_2_1_16_1","unstructured":"Hello Games 2014. No Man's Sky. Retrieved 2014\/12\/18 from http:\/\/www.no-mans-sky.com\/.  Hello Games 2014. No Man's Sky. Retrieved 2014\/12\/18 from http:\/\/www.no-mans-sky.com\/."},{"key":"e_1_2_1_17_1","volume-title":"Proc. SIGGRAPH","author":"Hmlinen P.","year":"2014","unstructured":"Hmlinen , P. , Eriksson , S. , Tanskanen , E. , Kyrki , V. , and Lehtinen , J . 2014. Online Motion Synthesis Using Sequential Monte Carlo . In Proc. SIGGRAPH 2014 . Hmlinen, P., Eriksson, S., Tanskanen, E., Kyrki, V., and Lehtinen, J. 2014. Online Motion Synthesis Using Sequential Monte Carlo. In Proc. SIGGRAPH 2014."},{"key":"e_1_2_1_18_1","unstructured":"Kulkarni T. D. Mansinghka V. K. Kohli P. and Tenenbaum J. B. 2014. Inverse Graphics with Probabilistic CAD Models. CoRR.  Kulkarni T. D. Mansinghka V. K. Kohli P. and Tenenbaum J. B. 2014. Inverse Graphics with Probabilistic CAD Models. CoRR."},{"key":"e_1_2_1_19_1","volume-title":"In Proc. NIPS","author":"Levy R. P.","year":"2009","unstructured":"Levy , R. P. , Reali , F. , and Griffiths , T. L . 2009. Modeling the effects of memory on human online sentence processing with particle filters . In In Proc. NIPS 2009 . Levy, R. P., Reali, F., and Griffiths, T. L. 2009. Modeling the effects of memory on human online sentence processing with particle filters. In In Proc. NIPS 2009."},{"key":"e_1_2_1_20_1","first-page":"1","article-title":"Particle Gibbs with Ancestor Sampling","volume":"15","author":"Lindsten F.","year":"2014","unstructured":"Lindsten , F. , Jordan , M. I. , and Sch\u00f6n , T. B. 2014 . Particle Gibbs with Ancestor Sampling . J. Mach. Learn. Res. 15 , 1 . Lindsten, F., Jordan, M. I., and Sch\u00f6n, T. B. 2014. Particle Gibbs with Ancestor Sampling. J. Mach. Learn. Res. 15, 1.","journal-title":"J. Mach. Learn. Res."},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1179352.1141931"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/237170.237279"},{"key":"e_1_2_1_23_1","volume-title":"Proc. ICML","author":"Paige B.","year":"2014","unstructured":"Paige , B. , and Wood , F . 2014. A Compilation Target for Probabilistic Programming Languages . In Proc. ICML 2014 . Paige, B., and Wood, F. 2014. A Compilation Target for Probabilistic Programming Languages. In Proc. ICML 2014."},{"key":"e_1_2_1_24_1","volume-title":"Proc. NIPS","author":"Paige B.","year":"2014","unstructured":"Paige , B. , Wood , F. , Doucet , A. , and Teh , Y . 2014. Asynchronous Anytime Sequential Monte Carlo . In Proc. NIPS 2014 . Paige, B., Wood, F., Doucet, A., and Teh, Y. 2014. Asynchronous Anytime Sequential Monte Carlo. In Proc. NIPS 2014."},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1111\/j.1467-8659.2008.01247.x"},{"key":"e_1_2_1_26_1","unstructured":"Procedural Reality 2014. Limit Theory. Retrieved 2014\/12\/18 from http:\/\/ltheory.com.  Procedural Reality 2014. Limit Theory. Retrieved 2014\/12\/18 from http:\/\/ltheory.com."},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/192161.192254"},{"key":"e_1_2_1_28_1","volume-title":"Proc. Eurographics","author":"Ritchie D.","year":"2015","unstructured":"Ritchie , D. , Lin , S. , Goodman , N. D. , and Hanrahan , P . 2015. Generating Design Suggestions under Tight Constraints with Gradient-based Probabilistic Programming . In Proc. Eurographics 2015 . Ritchie, D., Lin, S., Goodman, N. D., and Hanrahan, P. 2015. Generating Design Suggestions under Tight Constraints with Gradient-based Probabilistic Programming. In Proc. Eurographics 2015."},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1063\/1.1741967"},{"key":"e_1_2_1_30_1","first-page":"2","article-title":"Bayesian Statistics without Tears: A Sampling-Resampling Perspective","volume":"46","author":"Smith A. F. M.","year":"1992","unstructured":"Smith , A. F. M. , and Gelfand , A. E. 1992 . Bayesian Statistics without Tears: A Sampling-Resampling Perspective . The American Statistician 46 , 2 . Smith, A. F. M., and Gelfand, A. E. 1992. Bayesian Statistics without Tears: A Sampling-Resampling Perspective. The American Statistician 46, 2.","journal-title":"The American Statistician"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1111\/cgf.12282"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1117\/12.138224"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/1944846.1944851"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/2366145.2366187"},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/218380.218498"},{"key":"e_1_2_1_36_1","volume-title":"Proc. AISTATS","author":"Wingate D.","year":"2011","unstructured":"Wingate , D. , Stuhlm\u00fcller , A. , and Goodman , N. D . 2011. Lightweight Implementations of Probabilistic Programming Languages Via Transformational Compilation . In Proc. AISTATS 2011 . Wingate, D., Stuhlm\u00fcller, A., and Goodman, N. D. 2011. Lightweight Implementations of Probabilistic Programming Languages Via Transformational Compilation. In Proc. AISTATS 2011."},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/280814.280948"},{"key":"e_1_2_1_38_1","volume-title":"Proc. AISTATS","author":"Wood F.","year":"2014","unstructured":"Wood , F. , van De Meent , J. W. , and Mansinghka , V . 2014. A New Approach to Probabilistic Programming Inference . In Proc. AISTATS 2014 . Wood, F., van De Meent, J. W., and Mansinghka, V. 2014. A New Approach to Probabilistic Programming Inference. In Proc. AISTATS 2014."},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/2185520.2185553"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/2185520.2185552"}],"container-title":["ACM Transactions on Graphics"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2766895","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2766895","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T18:56:01Z","timestamp":1750272961000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2766895"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,7,27]]},"references-count":39,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2015,7,27]]}},"alternative-id":["10.1145\/2766895"],"URL":"https:\/\/doi.org\/10.1145\/2766895","relation":{},"ISSN":["0730-0301","1557-7368"],"issn-type":[{"type":"print","value":"0730-0301"},{"type":"electronic","value":"1557-7368"}],"subject":[],"published":{"date-parts":[[2015,7,27]]},"assertion":[{"value":"2015-07-27","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}