150 likes | 288 Vues
This presentation outlines MCSL, a Monte Carlo Simulation Language developed by Diego Garcia, Eita Shuto, Yunling Wang, Chong Zhai. It introduces the language, provides a tutorial with examples, and discusses architectural design and implementation. Monte Carlo methods, based on repeated random sampling, are highlighted for their efficiency and wide applications in fields such as physics, mathematics, computer science, and finance. The presentation covers algorithm design, advantages, built-in libraries, and lessons learned during development, culminating in a sample code to calculate π.
E N D
MCSLMonte Carlo simulation language Diego Garcia Eita Shuto Yunling Wang Chong Zhai
Outline of Presentation • Introduction of language • Language tutorial and examples • Architectural design and implementation • Summary and lessons learned
Monte Carlo methods • a class of computational algorithms that rely on repeated random sampling to compute their results. • Why interested with it? • widely used • good performance • possibly the only • efficient approach
Applications • Physics • high energy particle physics, quantum many-body problem, transportation theory • Mathematics • Integration, Optimization, Inverse problems, Computational mathematics • Computer science • Las Vegas algorithm, LURCH, Computer Go, General Game Playing • Finance • Option, instrument, portfolio or investment
Algorithm of MCSL • Generation particular distributed psedu-random numbers (or low discrepancy sequence) • Evaluate the function by sampling with these numbers • Aggregate results! (weight might be counted, variational method or conditional acceptance might be considered)
Advantages • Fast Random number algorithm (with good performance also) • Other than iteration, consider all samples as a single vector • Built-in Function to simplify aggregate process with different conditioning.
Example One Calculation of “π” =3.14159265358979323846…
Summary and lessons learned • We have a language specification and a compiler of Monte Carlo Simulation! It has… • Random type and type conversion • Useful builtin libraries, such as an iteration function… • Teamwork and effective project management • SVN (Subversion) on Googlecode • Incremental Development Approach • Functional Language, Ocaml • Tiring work, supporting many data types
Thank You! • MCSL Team • Columbia University • Dec 19th, 2008