210 likes | 514 Views
Parallel Monte Carlo Method. Student: Fan Bai Instructor: Dr. Sushil K. Prasad Csc8530 Spring 2012. Outline. Introduction of MC method Sequential Monte Carlo Methods (SMC) Parallel Monte Carlo Methods (PMC) PMC vs Cloud Computing Conclusion. Introduction.
E N D
Parallel Monte Carlo Method Student: Fan Bai Instructor: Dr. Sushil K. Prasad Csc8530 Spring 2012
Outline • Introduction of MC method • Sequential Monte Carlo Methods (SMC) • Parallel Monte Carlo Methods (PMC) • PMC vs Cloud Computing • Conclusion
Introduction • Monte Carlo methods are stochastic techniques. • Monte Carlo method is very general. • We can find MC methods used in everything from economics to nuclear physics to regulating the flow of traffic.
Introduction • Nuclear reactor design • Quantum chromodynamics • Radiation cancer therapy • Traffic flow • Stellar evolution • Econometrics • Dow-Jones forecasting • Oil well exploration • VLSI design
Introduction • A Monte Carlo method can be loosely described as a statistical method used in simulation of data. • And a simulation is defined to be a method that utilizes sequences of random numbers as data.
Major Components • Probability distribution function • Random number generator • Sampling rule • Scoring/Tallying
Web Servers GUI Cloud Computing Super Computer Software Centralization Parallel Method Methods
Sequential Monte Carlo Methods • Sequential Monte Carlo Methods (SMC) methods are sample-based methods that use Bayesian inference and stochastic sampling techniques to recursively estimate the state of dynamic systems from some given observations.
Web Servers GUI Cloud Computing Super Computer DEVSFIRESpread Centralization Parallel Particle Filter Methods
Monte Carlo Method Suppose you have an existing serial Monte Carlo simulation: PROGRAM monte_carlo CALL read_input(…) DO realization = 1, number_of_realizations CALL generate_random_realization(…) CALL calculate_properties(…) END DO CALL calculate_average(…) END PROGRAM monte_carlo How would you parallelize this?
Parallel Monte Carlo Method PROGRAM monte_carlo [MPI startup] IF (my_rank == server_rank) THEN CALL read_input(…) END IF CALL MPI_Bcast(…) DO realization = 1, number_of_realizations CALL generate_random_realization(…) CALL calculate_realization_properties(…) CALL calculate_local_running_average(...) END DO IF (my_rank == server_rank) THEN [collect properties] ELSE [send properties] END IF CALL calculate_global_average_from_local_averages(…) CALL output_overall_average(...) [MPI shutdown] END PROGRAM monte_carlo
Node1 S O F T W A R E 100 Node2 100 Initialize N particles Node3 100 Node4 500 100 Node5 100
Senor Data Node1 W-Node1 100 Node2 W-Node2 Normalized Weights + Resampling 100 Node3 W-Node3 100 Node4 W-Node4 100 Node5 W-Node5 100
Web Servers GUI Cloud Computing Super Computer Software Centralization Parallel MC method
Hdfs-site.xml Our environment:Cheetah: 1 headnode VS 9 computing nodes5 nodes in Cheetah and 4 GUPs 64*1024*1024
Conclusions • Monte Carlo Algorithms are very easy to convert to parallel algorithms. • Care Must be taken in choosing random number algorithms. • While vectorization is easy, improvements in load balancing can be had by considering different ways to partition the problem.
References • [1] Parallel computing and Monte Carlo algorithms. Jeffrey S. Rosenthal, Far East Journal of Theoretical Statistics 4 (2000), 207–236. • [2] Don’t Trust Parallel Monte Carlo! P Hallekalek. Proceedings of the 1998 Workshop on Parallel and Distributed Simulation. Volume 1, Page(s): 82 -89 • [3] The Monte Carlo Method. Nicholas Metropolis, S.Ulam. Journal of the American Statistical Association, Vol.44, No.247,(1949 ) PP 335 -341. • [4] Parallel Monte Carlo Simulations. K.Esselink, L.D.J.C.Loyens, and B.Smit.Physical Review E, volume 51, number 2. • [5] Monte Carlo and quasi-Monte Carlo methods. Russel E. Caflisch. AdaNumerica (1998), pp. 1-49 • [6] Monte Carlo Methods and Importance Sampling, Eric C. Anderson Lecture Notes for Stat Statistical Genetics 20 October 1999 • [7]. The Basics of Monte Carlo Simulations University of Nebraska-Lincoln Physical Chemistry Lab (Chem 484) Written by lab TA Joy Woller, Spring 1996 • [8]. JAZWINSKI, A.H. 1970. Stochastic processes and filtering theory. Mathematics in Science and Engineering. Academic Press, New York, USA. • [9]. CRISAN, D. 2001. Particle filters—A theoretical perspective. Sequential Monte Carlo Methods in Practice (eds A. Doucet, J. F. G. de Freitas and N. J. Gordon). New York: Springer-Verlag. • [10]. GORDON, N.J., SALMOND, D.J., AND SMITH, A.F.M. 1993. Novel approach to nonlinear/non-Gaussian Bayesian state estimation. In IEE Proceedings on Radar and Signal Processing 140, 107-113. • [11]. H. Xue, F. Gu, X. Hu, Data Assimilation Using Sequential Monte Carlo Methods in Wildfire Spread Simulation, The ACM Transactions on Modeling and Computer Simulation (TOMACS), 2012 • [12]. F. Bai, S. Guo, X. Hu, Towards parameter estimation in wildfire spread simulation based on Sequential Monte Carlo Methods, Proc. 44th Annual Simulation Symposium (ANSS), 2011 Spring Simulation Multiconference (SpringSim'11), pp. 159-166, 2011