An embedded domain specific sampling language for Monte Carlo rendering
Author(s)
Anderson, Luke (Luke James)
DownloadFull printable version (14.11Mb)
Other Contributors
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science.
Advisor
Frédo Durand.
Terms of use
Metadata
Show full item recordAbstract
Implementing Monte Carlo integration requires significant domain expertise. While simple algorithms, such as unidirectional path tracing, are relatively forgiving, more complex algorithms, such as bidirectional path tracing or Metropolis methods, are notoriously difficult to implement correctly. We propose a domain specific language for Monte Carlo rendering that offers primitives and data structures for writing concise and correct-by-construction sampling code. The compiler then automatically generates the necessary code for evaluating PDFs and combining multiple samples. Our language focuses on ease of implementation for rapid exploration and research, at the cost of run time performance. We demonstrate the effectiveness of the language by implementing several challenging rendering algorithms, as well as a new algorithm, which would otherwise be prohibitively difficult to implement.
Description
Thesis: S.M., Massachusetts Institute of Technology, Department of Electrical Engineering and Computer Science, 2017. Cataloged from PDF version of thesis. Includes bibliographical references (pages 95-96).
Date issued
2017Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer SciencePublisher
Massachusetts Institute of Technology
Keywords
Electrical Engineering and Computer Science.