Discrete-Event Simulation: A First Course This book presents an introduction to computational and mathematical techniques for modeling, simulating, and analyzing the performance of various systems. The system models are primarily: stochastic (at least some of the system state variables are random); dynamic (the time evolution of the system state variables is important); and discrete-event (significant changes in system state variables are associated with events that occur at discrete time instances only). Therefore, the book represents an introduction to what is commonly known as discrete-event simulation. There is also a significant, but secondary, emphasis on Monte Carlo simulation and its relation to static stochastic systems. We presume the reader has taken the undergraduate equivalent of the first several courses in a conventional computer science program, two calculus courses, and a course in probability or statistics. The book has ten chapters, organized into 40 sections. The book is organized consistent with a dual philosophy: (i) begin to model, simulate, and analyze simple-but-representative systems as soon as possible; (ii) whenever possible, encourage the experimental exploration and self-discovery of theoretical results before their formal presentation. We have tried to achieve a writing style that emphasizes concepts and insight without sacrificing rigor. We provide C and Java software as source code for running simulations developed in the text and for homework exercises. The text is 604 pages long and contains 218 figures and 389 exercises. The text is appropriate for advanced undergraduates and graduate students.