MCSL Monte Carlo simulation language Diego Garcia Eita Shuto Yunling Wang Chong Zhai

Preview:

Citation preview

MCSLMonte Carlo simulation

language

Diego GarciaEita Shuto

Yunling WangChong 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…

Sample code for Calculate Pi

Example 2-Pollard's rho algorithm

Sample code for Factorization

Language Implementation

Architectural Design andImplementation

Testing Cases

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

Recommended