Computer Simulation: A Foundational Approach using Python (Chapman & Hall/CRC Computer and Information Science Series)
Yahya Esmail Osais
Computer simulation is an effective and popular universal tool that can be applied to almost all disciplines. Requiring only basic knowledge of programming, mathematics, and probability theory, Computer Simulation: A Foundational Approach Using Python takes a hands-on approach to programming to introduce the fundamentals of computer simulation.
Typically, simulation involves two key steps: modeling and implementation. In this book, these processes are divided to minimize confusion and help introductory students grasp the transition to stochastic simulation. Modeling is covered in the first half of each chapter and is presented with event graphs and design of experiments. Then, as a tool of choice for scientists and engineers, Python programs are used throughout the book to help students implement their knowledge. The chapters are aided by a heavy use of Illustrations, and many examples are provided to re-enforce the concepts presented. The book also features a full chapter of case studies, as well as real working code, encouraging students to compare results obtained from simulation with those obtained using analytical methods. Additionally, most of the necessary mathematics is abstracted by procedures that show how the mathematical techniques can be implemented in the real world. This helps make the shift from models to programs straightforward.
Some other features of this book are:
- Simulation programs are divided into two distinct components: simulator and model.
- Both simulation without an event list and with an event list are covered.
- The single-queue single-server queuing system is used as a running example throughout the book
- A complete chapter on the Monte Carlo method and variance-reduction techniques are included.
The main target of the book is computer science and engineering students who are interested mainly in directly applying the techniques to their research problems. The book will be of great interest to senior undergraduate and starting graduate students in the fields of computer science and engineering and industrial engineering.