Monte Carlo simulation aggregates uncertainties from activity data (Chapter 3), emission factors (Chapter 2), and allometric equations (Chapter 1) into a single conservativeness deduction for ART-TREES credit issuance. This chapter demonstrates compliant simulation design, presents worked examples achieving 20-50% uncertainty reductions through strategic optimization, and provides decision frameworks for maximizing credit revenue under Section 8 requirements.
ART-TREES Section 8 mandates Monte Carlo Approach 2 with minimum 10,000 iterations, 90% confidence intervals, and bootstrap sampling for unknown probability distributions (ART, 2021). The simulation calculates the Uncertainty Adjustment Factor (UAF) from the half-width of emission distribution confidence intervals:
Where \(HW_{90\%}\) represents the half-width of the 90% confidence interval around mean emissions. This UAF then determines the conservativeness deduction applied to creditable emissions.
ART-TREES permits single-year or multi-year aggregation. Program participants may recognize that single-year simulations tend to reduce uncertainty by avoiding temporal error propagation. We discuss below some of the advantages and disadvantages in applying similar adjustments and aggregations to Monte Carlo simulated estimates.
View Code
# Single-year simulation (RECOMMENDED)simulate_single_year<-function(n_sim=10000, year_data){# Sample activity data uncertaintydeforestation_ha<-rnorm(n_sim, mean =year_data$deforestation_ha, sd =year_data$deforestation_ha*year_data$ad_uncertainty_pct/100)# Sample emission factor uncertainty ef_tco2_ha<-rnorm(n_sim, mean =year_data$ef_tco2_ha, sd =year_data$ef_tco2_ha*year_data$ef_uncertainty_pct/100)# Calculate emissions distributionemissions_tco2<-deforestation_ha*ef_tco2_ha# Compute 90% CIci_90<-quantile(emissions_tco2, probs =c(0.05, 0.95))hw_90<-(ci_90[2]-ci_90[1])/2uaf<-0.524417*(hw_90/mean(emissions_tco2))/1.645006return(list( mean_emissions =mean(emissions_tco2), hw_90_pct =(hw_90/mean(emissions_tco2))*100, uaf =uaf, simulated_emissions =emissions_tco2))}# Example year datayear_2024<-list( deforestation_ha =5000, ad_uncertainty_pct =12, # Input from Chapter 3 accuracy assessment ef_tco2_ha =200, ef_uncertainty_pct =18# Input from Chapter 2 default values)results<-simulate_single_year(year_data =year_2024)cat(sprintf("Mean Emissions: %.0f tCO2\n", results$mean_emissions))## Mean Emissions: 999597 tCO2cat(sprintf("90%% CI Half-Width: %.1f%%\n", results$hw_90_pct))## 90% CI Half-Width: 35.4%cat(sprintf("Uncertainty Adjustment Factor: %.3f\n", results$uaf))## Uncertainty Adjustment Factor: 0.113
Baseline Treatment
Use the arithmetic mean of verified historical emissions as deterministic baseline, avoiding stochastic variance. For example, country X computed their HFLDCL as 21,037,534 tCO₂ rather than simulating historical variability (ART, 2021, Section 8.4).
For jurisdictions where emission factor uncertainty dominates (typical in Tier 1 approaches), investments in plot-based Tier 2 emission factors yield greater UAF reductions than marginal improvements in classification accuracy.
4.3 Optimization Strategies
Bootstrap Sampling
When probability distributions are unknown, ART-TREES requires bootstrap resampling. Efficient implementation draws samples from empirical error distributions:
View Code
# Bootstrap activity data from confusion matrixbootstrap_activity_data<-function(n_sim, confusion_matrix, mapped_area_ha){# Extract user's accuracy (precision) for focal classusers_accuracy<-confusion_matrix["Forest", "Forest"]/sum(confusion_matrix["Forest", ])# Bootstrap from binomial distributiontrue_area_ha<-rbinom(n_sim, size =mapped_area_ha, prob =users_accuracy)return(true_area_ha)}
Temporal Aggregation
Single-Year vs. Multi-Year Simulation Design
ART-TREES permits two approaches to temporal scope in Monte Carlo simulations. Recent validation work demonstrates that single-year simulation design substantially reduces uncertainty compared to multi-year aggregation approaches.
Multi-Year Aggregation:
View Code
# Multi-year approach: Propagates uncertainty forward through yearsmulti_year_simulation<-function(n_sim=10000, years_data){cumulative_emissions<-numeric(n_sim)for(iin1:n_sim){# Sample each year, accumulating uncertaintiesyear_emissions<-sapply(years_data, function(year){defor<-rnorm(1, year$deforestation_ha, year$deforestation_ha*year$ad_unc/100)ef<-rnorm(1, year$ef_tco2_ha, year$ef_tco2_ha*year$ef_unc/100)defor*ef})cumulative_emissions[i]<-sum(year_emissions)}# UAF from cumulative distributionci_90<-quantile(cumulative_emissions, probs =c(0.05, 0.95))hw_90<-(ci_90[2]-ci_90[1])/2uaf<-0.524417*(hw_90/mean(cumulative_emissions))/1.645006return(list(uaf =uaf, mean_emissions =mean(cumulative_emissions)))}
Note some important limitations to this. Error propagation across years inflates confidence interval width, which depending data dimensions, can produce UA > 100% uncertainty as it exceeds mean emissions earlier in the trend.
Single-Year Design:
On the other hand, the single-year approach constrains simulation to single monitoring period:
Validated performance: Jurisdictional program testing achieved 21-percentage-point reduction (from 104% to 83% UAF) by switching from multi-year to single-year design.
Reference Level Treatment
Treat the HFLDCL baseline as deterministic or fixed verified value rather than stochastic and persistently in effect:
View Code
# CORRECT: Deterministic baseline (Guyana-validated approach)hfldcl_fixed<-21037534# Arithmetic mean of verified 2016-2020 period (tCO2)# Simulate only crediting period emissionsn_sim<-10000emissions_2024<-rnorm(n_sim, mean =1000000, sd =1000000*0.15)# Reductions with fixed baselinereductions_tco2<-pmax(0, hfldcl_fixed-emissions_2024)# UAF calculationci_90<-quantile(reductions_tco2, probs =c(0.05, 0.95))hw_90<-(ci_90[2]-ci_90[1])/2uaf<-0.524417*(hw_90/mean(reductions_tco2))/1.645006cat(sprintf("\nDeterministic Baseline UAF: %.1f%%\n", uaf*100))## ## Deterministic Baseline UAF: 0.4%
One can assume the historical mean or a reference level that has been VVB-verified. By ART’s definition, audit statements are irreversible and issues are non-fungible, which therefore adds removes compliance concerns value and helps avoid artificially inflating UAF with repeat revisions.
Credit Recovery Provision
Recalculate every 5 years to recover over-deducted credits:
Whole-chain integration (activity data + emission factors)
Documentation of simulation code and random seed
4.6 Chapter Summary
Monte Carlo simulation aggregates component uncertainties into conservativeness deductions determining credit issuance. Strategic optimization prioritizes dominant sources, such as emission factors in Tier 1 programs or activity data in high-resolution systems. Single-year simulation, deterministic reference levels, and systematic improvements achieve attractive uncertainty reductions, directly increasing revenue and while meeting ART-TREES Section 8 requirements.