Uncertainty Planning

Master uncertainty planning to build robust agents that thrive in unpredictable environments

Monitoring and Adapting During Execution

Having a planβ€”even with contingenciesβ€”isn't enough. You must continuously monitor whether reality matches your assumptions. When it doesn't, adapt quickly before small problems become catastrophic failures.

The Adaptive Execution Loop

πŸ‘οΈ1. Observe

Monitor actual results vs expected outcomes

πŸ“Š2. Detect

Identify divergence between plan and reality

πŸ€”3. Decide

Determine if adjustment or replan is needed

πŸ”„4. Adapt

Execute contingency or create new plan

Critical insight: This loop runs continuously during execution. The faster you cycle through it, the more adaptive your system becomes.

Interactive: Monitoring Effectiveness

Adjust monitoring frequency to see impact on situational awareness

50%
Rarely CheckConstant Monitoring
Awareness LevelModerate Awareness
Detection Capability

Impact:

Some visibility - may miss rapid changes

Response Time
Hours
Failure Prevention
Medium

When to Replan vs Adjust

Not all divergence requires replanning. Learn to distinguish between minor adjustments and fundamental replans.

30%
On TrackCompletely Off
Recommended ActionContinue Monitoring

Reasoning:

Minor variance - within acceptable tolerance

βœ“Minor Adjustment
β€’ Divergence < 30%
β€’ Core plan still valid
β€’ Small parameter tweaks
tweak_parameters()
⚠️Use Contingency
β€’ Divergence 30-70%
β€’ Primary approach failing
β€’ Backup plan needed
switch_to_plan_b()
πŸ”„Full Replan
β€’ Divergence > 70%
β€’ Assumptions broken
β€’ Need new strategy
generate_new_plan()

Adaptive Execution Best Practices

πŸ“Set Clear Checkpoints

Define specific milestones where you'll pause and evaluate. "After step 3, check if X condition still holds."

if (checkpoint_reached): evaluate() then decide()

πŸ“ˆTrack Key Metrics

Monitor quantifiable signals that indicate plan health. Time spent, resources used, success rate, error frequency.

monitor(time, cost, quality, progress)

🎯Define Trigger Conditions

Specify exact conditions that trigger replanning: "If error rate > 10% for 5 minutes, switch to backup API."

if (errors > threshold): trigger_fallback()

πŸ’ΎLog and Learn

Record what went wrong and why you adapted. Build institutional memory so future plans account for past surprises.

log(divergence_cause, action_taken, outcome)