In this book, algorithms for making decisions in the face of uncertainty are introduced in great detail. It introduces the underlying mathematical problem formulations and the strategies for addressing them while covering a wide range of decision-related subjects.

In order to explain the logic behind the various techniques, figures, examples, and activities are offered.

It presumes prior knowledge of multivariable calculus, linear algebra, and probability principles and calls for some mathematical maturity. The appendices contain some review materials.

The book would be particularly helpful in the fields of mathematics, statistics, computer science, electrical engineering, aerospace, and operations research.

The algorithms, all of which are written in the Julia programming language, constitute the core of this textbook.