Decision Trees — Structured Decision-Making
Decision tree analysis: a visual tool for making decisions with probabilities and expected value.
When to Use
✅ Good for:
Business decisions (investments, hiring, product launches)
Personal choices (career, relocation, purchases)
Trading & investing (position sizing, entry/exit)
Operational decisions (expansion, outsourcing)
Any situation with measurable consequences
❌ Not suitable for:
Decisions with true uncertainty (black swans)
Fast tactical choices
Purely emotional/ethical questions
Method
Decision tree = tree-like structure where:
Decision nodes (squares) — your actions
Chance nodes (circles) — random events
End nodes (triangles) — final outcomes
Process:
Define options — all possible actions
Define outcomes — what can happen after each action
Estimate probabilities — how likely is each outcome (0-100%)
Estimate values — utility/reward for each outcome (money, points, utility units)
Calculate EV — expected value = Σ (probability × value)
Choose — option with highest EV
Formula
EV = Σ (probability_i × value_i)
Example:
Outcome A: 70% probability, +$100 → 0.7 × 100 = $70
Outcome B: 30% probability, -$50 → 0.3 × (-50) = -$15
EV = $70 + (-$15) = $55
Classic Example (from Wikipedia)
Decision: Go to party or stay home?
Estimates:
Party: +9 utility (fun)
Home: +3 utility (comfort)
Carrying jacket unnecessarily: -2 utility
Being cold: -10 utility
Probability cold: 70%
Probability warm: 30%
Tree:
Decision
├─ Go to party
│ ├─ Take jacket
│ │ ├─ Cold (70%) → 9 utility (party)
│ │ └─ Warm (30%) → 9 - 2 = 7 utility (carried unnecessarily)
│ │ EV = 0.7 × 9 + 0.3 × 7 = 8.4
│ └─ Don't take jacket
│ ├─ Cold (70%) → 9 - 10 = -1 utility (froze)
│ └─ Warm (30%) → 9 utility (perfect)
│ EV = 0.7 × (-1) + 0.3 × 9 = 2.0
└─ Stay home
└─ EV = 3.0 (always)
Conclusion: Go and take jacket (EV = 8.4) > stay home (EV = 3.0) > go without jacket (EV = 2.0)
Business Example
Decision: Launch new product?
Estimates:
Success probability: 40%
Failure probability: 60%
Profit if success: $500K
Loss if failure: $200K
Don't launch: $0
Tree:
Launch product
├─ Success (40%) → +$500K
└─ Failure (60%) → -$200K
EV = (0.4 × 500K) + (0.6 × -200K) = 200K - 120K = +$80K
Don't launch
└─ EV = $0
Conclusion: Launch (EV = +$80K) is better than not launching ($0).
Trading Example
Decision: Enter position or wait?
Estimates:
Probability of rise: 60%
Probability of fall: 40%
Position size: $1000
Target: +10% ($100 profit)
Stop-loss: -5% ($50 loss)
Tree:
Enter position
├─ Rise (60%) → +$100
└─ Fall (40%) → -$50
EV = (0.6 × 100) + (0.4 × -50) = 60 - 20 = +$40
Wait
└─ No position → $0
EV = $0
Conclusion: Entering position has positive EV (+$40), better than waiting ($0).
Method Limitations
⚠️ Critical points:
Subjective estimates — probabilities often "finger in the air"
Doesn't account for risk appetite — ignores psychology (loss aversion)
Simplified model — reality is more complex
Unstable — small data changes can drastically alter the tree
May be inaccurate — other methods exist that are more precise (random forests)
But: The method is valuable for structuring thinking, even if numbers are approximate.
User Workflow
1. Structuring
Ask:
What are the action options?
What are possible outcomes?
What are values/utility for each outcome?
How do we measure value? (money, utility units, happiness points)
2. Probability Estimation
Help estimate through:
Historical data (if available)
Comparable situations
Expert judgment (user experience)
Subjective assessment (if no data)
3. Visualization
Draw tree in markdown:
Decision
├─ Option A
│ ├─ Outcome A1 (X%) → Value Y
│ └─ Outcome A2 (Z%) → Value W
└─ Option B
└─ Outcome B1 (100%) → Value V
4. EV Calculation
For each option:
EV_A = (X% × Y) + (Z% × W)
EV_B = V
5. Recommendation
Option with highest EV = best choice (rationally).
But add context:
Risk tolerance (can user handle worst case)
Time horizon (when is result needed)
Other factors (reputational risk, emotions, ethics)
Application Examples by Domain
Trading & Investing
Position Sizing:
Options: 5%, 10%, 20% of capital
Outcomes: Profit/loss with different probabilities
Value: Absolute profit in $
Entry Timing:
Options: Enter now, wait for -5%, wait for -10%
Outcomes: Price goes up/down
Value: Opportunity cost vs better entry price
Business Strategy
Product Launch:
Options: Launch / don't launch
Outcomes: Success / failure
Value: Revenue, market share, costs
Hiring Decision:
Options: Hire candidate A / candidate B / don't hire
Outcomes: Successful onboarding / quit after X months
Value: Productivity, costs, opportunity cost
Personal Decisions
Career Change:
Options: Stay / change job / start business
Outcomes: Success / failure in new role
Value: Salary, satisfaction, growth, risk
Real Estate:
Options: Buy house A / house B / continue renting
Outcomes: Price increase / decrease / personal situation changes
Value: Net worth, monthly costs, quality of life
Operations
Capacity Planning:
Options: Expand production / outsource / status quo
Outcomes: Demand increases / decreases
Value: Profit, utilization, fixed costs
Vendor Selection:
Options: Vendor A / Vendor B / in-house
Outcomes: Quality, reliability, failures
Value: Total cost of ownership
Calculator Script
Use scripts/decision_tree.py for automated EV calculations:
python3 scripts/decision_tree.py --interactive
Or via JSON:
python3 scripts/decision_tree.py --json tree.json
JSON format:
{
"decision": "Launch product?",
"options": [
{
"name": "Launch",
"outcomes": [
{"name": "Success", "probability": 0.4, "value": 500000},
{"name": "Failure", "probability": 0.6, "value": -200000}
]
},
{
"name": "Don't launch",
"outcomes": [
{"name": "Status quo", "probability": 1.0, "value": 0}
]
}
]
}
Output:
📊 Decision Tree Analysis
Decision: Launch product?
Option 1: Launch
└─ EV = $80,000.00
├─ Success (40.0%) → +$500,000.00
└─ Failure (60.0%) → -$200,000.00
Option 2: Don't launch
└─ EV = $0.00
└─ Status quo (100.0%) → $0.00
✅ Recommendation: Launch (EV: $80,000.00)
Final Checklist
Before giving recommendation, ensure:
✅ All options covered
✅ Probabilities sum to 100% for each branch
✅ Values are realistic (not fantasies)
✅ Worst case scenario is clear to user
✅ Risk/reward ratio is explicit
✅ Method limitations mentioned
✅ Qualitative context added (not just EV)
Method Advantages
✅ Simple — people understand trees intuitively ✅ Visual — clear structure ✅ Works with little data — can use expert estimates ✅ White box — transparent logic ✅ Worst/best case — extreme scenarios visible ✅ Multiple decision-makers — can account for different interests
Method Disadvantages
❌ Unstable — small data changes → large tree changes ❌ Inaccurate — often more precise methods exist ❌ Subjective — probability estimates "from the head" ❌ Complex — becomes unwieldy with many outcomes ❌ Doesn't account for risk preference — assumes risk neutrality
Important
The method is valuable for structuring thinking, but numbers are often taken from thin air.
What matters more is the process — forcing yourself to think through all branches and explicitly evaluate consequences.
Don't sell the decision as "scientifically proven" — it's just a framework for conscious choice.
Further Reading
Decision trees in operations research
Influence diagrams (more compact for complex decisions)
Utility functions (accounting for risk aversion)
Monte Carlo simulation (for greater accuracy)
Real options analysis (for strategic decisions)