Cover
Copyright
Table of Contents
Preface
The Book’s Topic
The Book’s Audience
What You Will Learn–and How to Apply It
The Book’s Structure
Conventions Used in This Book
O’Reilly Online Learning
How to Contact Us
Acknowledgments
Part I. Introduction and Background
Chapter 1. An Analytical Framework
A Decision-Making Framework
The Analytics Evolution
The Data Science Split
The Information Glue
How the Analytics Fit Together
Descriptive Analytics
Predictive Analytics
Uncertainty: Multiple Sources and Problems
Uncertainty Versus Risk
The Menu Cost of Uncertainty
Probabilities and Uncertainty
Prescriptive Analytics as a Separate Discipline
Decision-Makers’ Options
Business Goals and Constraints
Key Decision Question: What Is the Best Decision?
The Analytics Flow
Prescriptive Analytics and Decision Making
Summary
Chapter 2. Prescriptive Methods: Overview
Introduction to Prescriptive Analytics Methods
Proprietary Methods
Public Domain Methods
Summary of Prescriptive Analytics Methods
Methods Reviewed in the Literature
Three Categories of Methods
Umbrella Classes: Non-Stochastic and Stochastic
Definition of Non-Stochastic and Stochastic Methods
Examples Based on Scale-Views
The Role of Operations Research
Summary
Part II. Essential Background Material
Chapter 3. Python Essentials
Python Structure: Overview
Worldwide Community
Extensive Array of Packages
Easy to Use
Operating Systems
A Programming Language
It Is Free
Python Basics
Naming Conventions
Python Data Structures
Iterables
Basic Python Operators
Introduction to Built-In Functions
Introduction to User-Defined Functions
Conditional Statements: if-else
Python Looping Constructs
for loops
while loops
Python Packages
Data Management
Data Visualization
Statistical Analysis and Modeling
Working with Python Packages
Using Anaconda
Updating Python Packages
Installing Packages
Importing Packages
Go-To References
Summary
Chapter 4. Probability Essentials
The World Is Ruled by Probabilities
What Are Probabilities?
Fundamental Probability Concepts
Frequency-Based Probabilities
Counting Functions
Independence and Conditional Probability
Summary of Probability Rules
Limit Definition of Probabilities
Subjective-Based Probabilities: Introduction
Bayes’ Theorem: Derivation
Bayes’ Theorem: Python Implementation
Probability Distributions: Overview
Three Basic Probability Distributions: Binomial, Uniform, and Normal
Key Distribution Parameters
Summary
Part III. Non-Stochastic Prescriptive Analytic Methods
Chapter 5. Mathematical Programming: Overview
Background
Reason for Popularity
The Objective Function: Prescriptive Analytics Goal
Linear Programming
Technical Overview
Menus and Linear Programming
Python Use-Cases
Integer Programming
Technical Overview
Menus and Integer Programming
Python Use-Cases
Mixed Integer Programming
Technical Overview
Python Use-Case
Summary
Chapter 6. Decision Tree Analysis: Overview
Extending the Menu into Time
Introduction to Decision Trees
Clarification of Decision Trees
Background
Use of Trees in Decisions
Comparing the Two Decision Trees
Python Use-Case
Use-Case Background
Use-Case Detailed Data
Role of the DADT
DADT Analysis
Reaching a Decision Using a DADT
Summary
DADT Function
Part IV. Stochastic Prescriptive Analytic Methods
Chapter 7. Simulation Essentials
What Is a Simulation?
The Simulation Age
Types of Simulations
Non-Stochastic Simulations: The Process
Stochastic Simulations: The Process
Pseudo-Random Number Generators: A Brief Introduction
Simulation Models: Overview
KPMs to Measure
Aggregation Methods
The Need for Stochastic Simulations
The Extent of Uncertainty
Randomness and the Degree of Uncertainty
Summary
Chapter 8. Simulation Examples
Example 1: Coin Toss
Example 2: Die Toss
Example 3: Regression Analysis
Example 4: Mathematical Programming
Example 5: Decision Tree
Summary
Chapter 9. Developing Menu Options
The Nature of What-If Questions
Menu Generating Questions: A Deep Dive
The Structure of What-If Questions
What-If Analysis Versus Sensitivity Analysis
Non-Stochastic Use-Cases
Pricing What-If Analysis: Basic
Pricing What-If Analysis: Advanced
Stochastic Use-Case: Synthetic Data
Specifying the Process to Simulate
Example of a System’s Process Flow
Summary
Chapter 10. Developing Menu Priors
Background
Digression on Beliefs and Priors
Developing Probability Weights
Eliciting Probability Distributions of Beliefs
Elicitation Method 1: Experimental Design-Based
Elicitation Method 2: Direct Questioning
Elicitation Method 3: Activities
Analyzing Elicited Probability Distributions
Elicitation Analysis 1: Averaging
Elicitation Analysis 2: CoDA
Elicitation Analysis 3: Bootstrapping
Python Use-Case
Elicitation Example Analysis 1: Averaging
Elicitation Example Analysis 2: CoDA
Elicitation Example Analysis 3: Bootstrapping
Summary
Chapter 11. One-Time Decisions
Evidence of the Problem
Sequential Decisions: Introduction
Sequential Decisions 1: The Business Case
Sequential Decisions 2: Post-Business Case
Sequential Analysis: Advanced Framework
Markov Decision Problem
Simulations and Reinforcement Learning
Automating Sequential Decision Making
Summary
Glossary
Bibliography
Index
About the Author
Colophon
Business decisions in any context—operational, tactical, or strategic—can have considerable consequences. Whether the outcome is positive and rewarding or negative and damaging to the business, its employees, and stakeholders is unknown when action is approved. These decisions are usually made under the proverbial cloud of uncertainty.
With this practical guide, data analysts, data scientists, and business analysts will learn why and how maximizing positive consequences and minimizing negative ones requires three forms of rich information: Descriptive analytics explores the results from an action—what has already happened. Predictive analytics focuses on what could happen. The third, prescriptive analytics, informs us what should happen in the future.
While all three are important for decision-makers, the primary focus of this book is on the third: prescriptive analytics.
The distinction among descriptive, predictive, and prescriptive analytics
How predictive analytics produces a menu of action options
How prescriptive analytics narrows the menu of action options
The forms of prescriptive analytics: eight prescriptive methods
Two broad classes of these methods: non-stochastic and stochastic
How to develop prescriptive analyses for action recommendations
Ways to use an appropriate tool-set in Python