Simulation and the Monte Carlo Method, Third Edition
Books
- Published: 27 December 2016
- ISBN: 9781118632161
- Author(s): Reuven Y. Rubinstein, Dirk P. Kroese
- View full details
- Buy the book
This accessible new edition explores the major topics in Monte Carlo simulation that have arisen over the past 30 years and presents a sound foundation for problem solving
Simulation and the Monte Carlo Method, Third Edition reflects the latest developments in the field and presents a fully updated and comprehensive account of the state-of-the-art theory, methods and applications that have emerged in Monte Carlo simulation since the publication of the classic First Edition over more than a quarter of a century ago. While maintaining its accessible and intuitive approach, this revised edition features a wealth of up-to-date information that facilitates a deeper understanding of problem solving across a wide array of subject areas, such as engineering, statistics, computer science, mathematics, and the physical and life sciences. The book begins with a modernized introduction that addresses the basic concepts of probability, Markov processes, and convex optimization. Subsequent chapters discuss the dramatic changes that have occurred in the field of the Monte Carlo method, with coverage of many modern topics including: Markov Chain Monte Carlo, variance reduction techniques such as importance (re-)sampling, and the transform likelihood ratio method, the score function method for sensitivity analysis, the stochastic approximation method and the stochastic counter-part method for Monte Carlo optimization, the cross-entropy method for rare events estimation and combinatorial optimization, and application of Monte Carlo techniques for counting problems. An extensive range of exercises is provided at the end of each chapter, as well as a generous sampling of applied examples.
The Third Edition features a new chapter on the highly versatile splitting method, with applications to rare-event estimation, counting, sampling, and optimization. A second new chapter introduces the stochastic enumeration method, which is a new fast sequential Monte Carlo method for tree search. In addition, the Third Edition features new material on:
• Random number generation, including multiple-recursive generators and the Mersenne Twister
• Simulation of Gaussian processes, Brownian motion, and diffusion processes
• Multilevel Monte Carlo method
• New enhancements of the cross-entropy (CE) method, including the “improved” CE method, which uses sampling from the zero-variance distribution to find the optimal importance sampling parameters
• Over 100 algorithms in modern pseudo code with flow control
• Over 25 new exercises
Simulation and the Monte Carlo Method, Third Edition is an excellent text for upper-undergraduate and beginning graduate courses in stochastic simulation and Monte Carlo techniques. The book also serves as a valuable reference for professionals who would like to achieve a more formal understanding of the Monte Carlo method.
Reuven Y. Rubinstein, DSc, was Professor Emeritus in the Faculty of Industrial Engineering and Management at Technion-Israel Institute of Technology. He served as a consultant at numerous large-scale organizations, such as IBM, Motorola, and NEC. The author of over 100 articles and six books, Dr. Rubinstein was also the inventor of the popular score-function method in simulation analysis and generic cross-entropy methods for combinatorial optimization and counting.
Dirk P. Kroese, PhD, is a Professor of Mathematics and Statistics in the School of Mathematics and Physics of The University of Queensland, Australia. He has published over 100 articles and four books in a wide range of areas in applied probability and statistics, including Monte Carlo methods, cross-entropy, randomized algorithms, tele-traffic c theory, reliability, computational statistics, applied probability, and stochastic modeling.
Preface xiii
Acknowledgments xvii
1 Preliminaries 1
1.1 Introduction 1
1.2 Random Experiments 1
1.3 Conditional Probability and Independence 2
1.4 Random Variables and Probability Distributions 4
1.5 Some Important Distributions 5
1.6 Expectation 6
1.7 Joint Distributions 7
1.8 Functions of Random Variables 11
1.8.1 Linear Transformations 12
1.8.2 General Transformations 13
1.9 Transforms 14
1.10 Jointly Normal Random Variables 15
1.11 Limit Theorems 16
1.12 Poisson Processes 17
1.13 Markov Processes 19
1.13.1 Markov Chains 19
1.13.2 Classification of States 21
1.13.3 Limiting Behavior 22
1.13.4 Reversibility 24
1.13.5 Markov Jump Processes 25
1.14 Gaussian Processes 27
1.15 Information 28
1.15.1 Shannon Entropy 29
1.15.2 Kullback–Leibler Cross-Entropy 31
1.15.3 Maximum Likelihood Estimator and Score Function 32
1.15.4 Fisher Information 33
1.16 Convex Optimization and Duality 34
1.16.1 Lagrangian Method 35
1.16.2 Duality 37
Problems 41
References 46
2 Random Number, Random Variable, and Stochastic Process Generation 49
2.1 Introduction 49
2.2 Random Number Generation 49
2.2.1 Multiple Recursive Generators 51
2.2.2 Modulo 2 Linear Generators 52
2.3 Random Variable Generation 55
2.3.1 Inverse-Transform Method 55
2.3.2 Alias Method 57
2.3.3 Composition Method 58
2.3.4 Acceptance–Rejection Method 59
2.4 Generating from Commonly Used Distributions 62
2.4.1 Generating Continuous Random Variables 62
2.4.2 Generating Discrete Random Variables 67
2.5 Random Vector Generation 70
2.5.1 Vector Acceptance–Rejection Method 71
2.5.2 Generating Variables from a Multinormal Distribution 72
2.5.3 Generating Uniform Random Vectors over a Simplex 73
2.5.4 Generating Random Vectors Uniformly Distributed over a Unit Hyperball and Hypersphere 74
2.5.5 Generating Random Vectors Uniformly Distributed inside a Hyperellipsoid 75
2.6 Generating Poisson Processes 75
2.7 Generating Markov Chains and Markov Jump Processes 77
2.7.1 Random Walk on a Graph 78
2.7.2 Generating Markov Jump Processes 79
2.8 Generating Gaussian Processes 80
2.9 Generating Diffusion Processes 81
2.10 Generating Random Permutations 83
Problems 85
References 89
3 Simulation of Discrete-Event Systems 91
3.1 Introduction 91
3.2 Simulation Models 92
3.2.1 Classification of Simulation Models 94
3.3 Simulation Clock and Event List for DEDS 95
3.4 Discrete-Event Simulation 97
3.4.1 Tandem Queue 97
3.4.2 Repairman Problem 101
Problems 103
References 106
4 Statistical Analysis of Discrete-Event Systems 107
4.1 Introduction 107
4.2 Estimators and Confidence Intervals 108
4.3 Static Simulation Models 110
4.4 Dynamic Simulation Models 112
4.4.1 Finite-Horizon Simulation 114
4.4.2 Steady-State Simulation 114
4.5 Bootstrap Method 126
Problems 127
References 130
5 Controlling the Variance 133
5.1 Introduction 133
5.2 Common and Antithetic Random Variables 134
5.3 Control Variables 137
5.4 Conditional Monte Carlo 139
5.4.1 Variance Reduction for Reliability Models 141
5.5 Stratified Sampling 144
5.6 Multilevel Monte Carlo 146
5.7 Importance Sampling 149
5.7.1 Weighted Samples 149
5.7.2 Variance Minimization Method 150
5.7.3 Cross-Entropy Method 154
5.8 Sequential Importance Sampling 159
5.9 Sequential Importance Resampling 165
5.10 Nonlinear Filtering for Hidden Markov Models 167
5.11 Transform Likelihood Ratio Method 171
5.12 Preventing the Degeneracy of Importance Sampling 174
Problems 179
References 184
6 Markov Chain Monte Carlo 187
6.1 Introduction 187
6.2 Metropolis–Hastings Algorithm 188
6.3 Hit-and-Run Sampler 193
6.4 Gibbs Sampler 194
6.5 Ising and Potts Models 197
6.5.1 Ising Model 197
6.5.2 Potts Model 198
6.6 Bayesian Statistics 200
6.7 Other Markov Samplers 202
6.7.1 Slice Sampler 204
6.7.2 Reversible Jump Sampler 205
6.8 Simulated Annealing 208
6.9 Perfect Sampling 212
Problems 214
References 219
7 Sensitivity Analysis and Monte Carlo Optimization 221
7.1 Introduction 221
7.2 Score Function Method for Sensitivity Analysis of DESS 224
7.3 Simulation-Based Optimization of DESS 231
7.3.1 Stochastic Approximation 232
7.3.2 Stochastic Counterpart Method 237
7.4 Sensitivity Analysis of DEDS 246
Problems 252
References 255
8 Cross-Entropy Method 257
8.1 Introduction 257
8.2 Estimation of Rare-Event Probabilities 258
8.2.1 Root-Finding Problem 267
8.2.2 Screening Method for Rare Events 268
8.2.3 CE Method Combined with Sampling from the Zero-Variance Distribution 271
8.3 CE Method for Optimization 272
8.4 Max-Cut Problem 276
8.5 Partition Problem 282
8.5.1 Empirical Computational Complexity 283
8.6 Traveling Salesman Problem 283
8.6.1 Incomplete Graphs 288
8.6.2 Node Placement 289
8.6.3 Case Studies 290
8.7 Continuous Optimization 291
8.8 Noisy Optimization 292
8.9 MinxEnt Method 294
Problems 298
References 303
9 Splitting Method 307
9.1 Introduction 307
9.2 Counting Self-Avoiding Walks via Splitting 308
9.3 Splitting with a Fixed Splitting Factor 310
9.4 Splitting with a Fixed Effort 313
9.5 Generalized Splitting 314
9.6 Adaptive Splitting 318
9.7 Application of Splitting to Network Reliability 321
9.8 Applications to Counting 322
9.9 Case Studies for Counting with Splitting 325
9.9.1 Satisfiability (SAT) Problem 325
9.9.2 Independent Sets 330
9.9.3 Permanent and Counting Perfect Matchings 332
9.9.4 Binary Contingency Tables 334
9.9.5 Vertex Coloring 336
9.10 Splitting as a Sampling Method 337
9.11 Splitting for Optimization 340
9.11.1 Continuous Optimization 343
Problems 344
References 348
10 Stochastic Enumeration Method 351
10.1 Introduction 351
10.2 Tree Search and Tree Counting 352
10.3 Knuth’s Algorithm for Estimating the Cost of a Tree 355
10.4 Stochastic Enumeration 357
10.4.1 Combining SE with Oracles 359
10.5 Application of SE to Counting 360
10.5.1 Counting the Number of Paths in a Network 360
10.5.2 Counting SATs 363
10.5.3 Counting the Number of Perfect Matchings in a Bipartite Graph 366
10.6 Application of SE to Network Reliability 368
10.6.1 Numerical Results 370
Problems 373
References 375
Appendix 377
A.1 Cholesky Square Root Method 377
A.2 Exact Sampling from a Conditional Bernoulli Distribution 378
A.3 Exponential Families 379
A.4 Sensitivity Analysis 382
A.4.1 Convexity Results 383
A.4.2 Monotonicity Results 384
A.5 A Simple CE Algorithm for Optimizing the Peaks Function 385
A.6 Discrete-Time Kalman Filter 385
A.7 Bernoulli Disruption Problem 387
A.8 Complexity 389
A.8.1 Complexity of Rare-Event Algorithms 389
A.8.2 Complexity of Randomized Algorithms: FPRAS and FPAUS 390
A.8.3 SATs in CNF 394
A.8.4 Complexity of Stochastic Programming Problems 395
Problems 402
References 403
Abbreviations and Acronyms 405
List of Symbols 407
Index 409
Connect: