CO₂ Uptake Predictor

A gradient-boosted-tree model that estimates the CO₂ adsorption capacity of metal–organic frameworks from eight structural and thermodynamic descriptors. The full XGBoost ensemble (773 trees) and its exact TreeSHAP explanation run in your browser — no server involved. Enter conditions yourself, or sample a MOF from the study's 3,000-record reference archive to compare the prediction against its simulated value.

Paper → predictor

How the model earned its place here

This interface is the final step of a documented model-selection study, not an isolated demo. One data protocol, three competing tree ensembles, four evaluation metrics, and model-level explanations were used to decide what should be deployed.

Source

Start with ARC-MOF

The study began from a database of roughly 280,000 computationally generated or experimentally characterized frameworks with adsorption data and descriptors.

Curate

Define a physical feature set

Null and zero-valued records were removed. Eight operational, energetic, chemical, and geometric descriptors were retained to represent adsorption conditions and framework structure.

Sample

Preserve the distribution

3,000 records were selected by stratified random sampling without structural screening. A learning curve showed little additional performance gain beyond this size.

Split

Create an honest comparison

The records were divided 80/20: approximately 2,400 for training and 600 for testing. Scaling was intentionally omitted because every candidate was tree-based.

Compete

Tune three ensembles

Random Forest, LightGBM, and XGBoost were tuned with randomized hyperparameter search inside 5-fold cross-validation, then judged on the same test data.

Select + explain

Choose XGBoost, then interrogate it

R², RMSE, MAE, and MAPE identified XGBoost as the best overall regressor. SHAP and partial-dependence analysis were then used to expose influence, direction, and interaction.

Published test-set result

XGBoost selected

The manuscript reports the strongest aggregate performance for XGBoost, narrowly ahead of LightGBM and Random Forest.

0.979
0.888RMSE
0.525MAE
19.8%MAPE

From research artifact to browser instrument

trained XGBmodel.json773 treesJavaScript + TreeSHAP

Scientific boundary. The study data reached 16 bar. A MOF-177 GCMC benchmark reproduced the overall adsorption trend, but deviations grew beyond 20 bar; extrapolations outside the learned pressure domain should therefore be treated cautiously.

Preparing the explanation workspace The waterfall will become available when the local model is ready.

Fig. — TreeSHAP waterfall. Starting from the model's expected output E[f(X)] over the training data, each bar shows how one input feature pushes the prediction up (amber) or down (blue), ending at the predicted uptake f(x). Contributions are exact Shapley values for the tree ensemble, computed in JavaScript.

  1. Read the baselineE[f(X)] is the model's average expected uptake before this MOF is considered.
  2. Follow each pushAmber raises uptake; blue lowers it. Longer bars have a stronger local effect.
  3. Check the feature valueThe label beside each bar shows the exact input responsible for that contribution.
  4. Arrive at f(x)All eight contributions plus the baseline sum to the final predicted uptake.

Prediction diagnostics

Compare relationships across the 3,000-record study archive with the features the complete XGBoost model relies on overall.

Feature correlation matrix

Pearson correlation across the 3,000 reference MOFs. Amber is positive, blue is negative, and stronger color means a stronger relationship.

Loading feature correlations…

Global feature importance

Normalized average split gain across all 773 trees. Higher values identify features that improve the model most often and most strongly.

Loading gain-based model importance…

The model as a whole

The prediction above explains a single MOF. This broader audit asks how the deployed ensemble behaves across the supplied reference archive and which features carry its predictions globally rather than for one structure.

Reference-archive R²live browser audit
RMSEmmol/g
MAEmmol/g
Reference recordsstudy archive

Computed live across the supplied 3,000-record archive. These values audit the deployed artifact; the paper-reported 20% test-set metrics appear in the methodology panel above.

Dataset provenance

Source
ARC-MOF records with structural descriptors and simulated CO₂ adsorption data.
Target
CO₂ adsorption, mmol/g, at the stated temperature and pressure.
Rows here
3,000 stratified study records used as the browser reference archive.
Model
XGBoost gradient-boosted trees (773 trees), the same regressor as the published ML work.
Runs in
Your browser — model + explanations in JavaScript, no server.

Feature dictionary

SymbolDescriptorUnit
TTemperatureK
PPressurebar
HOAHeat of adsorptionkcal/mol
M%Metal percentage%
UCVUnit cell volumeų
DDensityg/cm³
ASAAccessible surface areaŲ
AVAFAccessible void area fraction

Model-wide explanation

What shapes predicted CO₂ uptake?

Exact TreeSHAP across a representative sample of the study archive. Features are ranked by their average absolute influence, showing what consistently moves the model—not just one selected prediction.

Leading descriptorComputing…

each dot is one reference MOF position shows whether it lowers or raises uptake colour runs from lower to higher feature value
DescriptorAverage absolute impact
Computing the global explanation when this figure enters view…

How to read itDistance from the centre line is the size of that MOF’s effect. The number at right is mean |SHAP| in mmol/g, so the first row is the model’s strongest global driver.

Why explanation matters

A predicted number alone is hard to trust. SHAP (SHapley Additive exPlanations) decomposes each prediction into per-feature contributions that sum exactly to the model output, so you can see why the model expects a given uptake — typically pressure and the heat of adsorption dominate, with framework geometry modulating the result.

The deployed model is the XGBoost regressor selected in the manuscript. The browser archive preserves the study descriptors and simulated uptake values so a selected row can be inspected locally, while the paper's 20% test split remains the authoritative performance evaluation.