Skip to content

Repository files navigation

IndustrialAI

Safety-Gated Agentic Control for Coupled Multivariable Processes

A reproducible research project on LLM-based agentic supervisory control with an auditable counterfactual safety gate, evaluated apples-to-apples against classical PID and linear MPC on coupled multivariable processes — demonstrated on Skogestad's Column A binary distillation benchmark.

The chemistry is the demonstration. The methodology is the contribution. The architecture transfers to semiconductor process control, pharmaceutical continuous manufacturing, battery electrode lines, energy systems, and beyond.


Status

Phase 5 — manuscripts complete. Full arXiv preprint and SAFEPROCESS conference cut are in-repo; C0–C3 evaluation ladder closed on Skogestad Column A.

Headline (DeepSeek-V4-Flash, locked): asymmetric outcome-class B — strong off-nominal target acquisition (C2/C1 IAE ratio 0.361 at the upper CI) / disturbance rejection fails (upper-CI factor 16.03). A rule-based forked-twin counterfactual gate (C3) contains the specification-abandonment attractor ((d \approx -1.4); P95 cell IAE (11.5 \rightarrow 0.77)).

Deliverable Location
arXiv / full preprint paper/latex/main_arxiv_publication_ready.pdf
SAFEPROCESS short cut paper/latex/main_safeprocess_publication_ready.pdf
Locked numbers paper/FROZEN_NUMBERS.md
Roadmap PROJECT_PLAN.md

arXiv submission and SAFEPROCESS 2027 (deadline 31 October 2026) are the next publication steps. After an arXiv identifier is live, this section will carry the abs/DOI links.

Why this matters beyond distillation

This architecture transfers to any process with:

  • Coupled multivariable loops where classical PID hits its limits
  • High constraint-violation costs (quality, safety, energy)
  • Significant gains available from anticipatory rather than reactive control

Concrete transfer targets (architectural — not claimed multi-plant empirics):

  • Semiconductor wafer fabs — multi-zone temperature/gas control with tight spec windows
  • Pharma continuous manufacturing — coupled crystallization/drying/granulation trains
  • Battery electrode coating — coupled slot-die, drying, calendering with quality gates
  • HVAC and district heating — multi-loop energy optimization with safety constraints
  • Water treatment plants — coupled chemical dosing with effluent-spec safety

Architecture (high level)

Four supervisory configurations are compared apples-to-apples on the same plant, same regulatory backend contract, same disturbance scenarios, and same seeds:

  Supervisory layer (5-min cadence — the variable under study)
  ┌──────────┐ ┌─────────────┐ ┌────────────────┐ ┌─────────────────────┐
  │ C0       │ │ C1          │ │ C2 Agent       │ │ C3 Agent            │
  │ PID-only │ │ Linear MPC  │ │ Observer /     │ │ + Safety Gate       │
  │ fixed    │ │ (do-mpc)    │ │ Optimizer /    │ │ (forked-twin        │
  │ setpts   │ │             │ │ Critic loop    │ │  counterfactual,    │
  │          │ │             │ │ (deterministic │ │  nine pinned        │
  │          │ │             │ │  Python)       │ │  constraints)       │
  └──────────┘ └─────────────┘ └───────┬────────┘ └──────────┬──────────┘
                                       │  (y_D, x_B) targets │
                                       ▼                     ▼
  Regulatory layer (~1–5 s, identical contract across C0–C3)
                                       │
                                       ▼
  Process twin: Skogestad Column A — 40-stage binary distillation,
  LV configuration, scipy.solve_ivp dynamics

Tech Stack

  • Process twin: Python clean-room port of Skogestad's Column A (40-stage binary distillation, LV configuration), dynamics via scipy.integrate.solve_ivp, optional CasADi symbolic-gradient layer — see ADR 007. IDAES retained for steady-state / property-package work only — see ADR 001.
  • Baselines: multi-loop PID with relay-feedback tuning (C0); Linear MPC via do-mpc with per-OP linearization (C1).
  • Agent runtime: deterministic Python Observer → Optimizer → Critic loop (LangGraph optional extra only).
  • LLM (headline evaluation): DeepSeek-V4-Flash (model-conditional headline per ADR 015).
  • LLM (cross-family): NVIDIA Nemotron-3-Super family — DR fails band reproduced; TA strong cells survivorship-qualified only.
  • Safety gate: rule-based forked-twin counterfactual gate (primary C3 contribution) — see ADR 016.
  • Evaluation: matplotlib, seaborn, bootstrap CIs and effect-size reporting.

Getting Started

# Prerequisites: macOS (Apple Silicon) or Linux, Homebrew (macOS only)

# Install uv (one-time)
brew install uv                                    # macOS
# curl -LsSf https://astral.sh/uv/install.sh | sh  # Linux

# Clone and set up
git clone https://github.com/cgncro-cyber/IndustrialAI.git
cd IndustrialAI
make setup       # uv sync + idaes get-extensions

# Verify
make smoke       # IDAES + ipopt sanity check

For Apple-Silicon-specific notes and known pitfalls, see docs/setup/idaes_on_macos.md.

Repository Layout

src/industrial_ai/
├── twin/          # Column A dynamic twin (scipy/CasADi) + IDAES steady-state helpers
├── control/       # PID baselines + tuning
├── agents/        # Deterministic Observer/Optimizer/Critic + LLM clients
├── safety/        # Counterfactual gate + constraints
└── evaluation/    # KPIs, plots, statistical tests

tests/             # Unit + integration tests
notebooks/         # Exploratory work, never source of truth
data/              # Benchmark datasets (TEP, NoBOOM references)
paper/latex/       # End manuscripts: *_publication_ready.{tex,pdf}
docs/decisions/    # ADRs — architecture decision records

Papers

Deliverable File
arXiv / full preprint paper/latex/main_arxiv_publication_ready.pdf
SAFEPROCESS short cut paper/latex/main_safeprocess_publication_ready.pdf
arXiv TeX paper/latex/main_arxiv_publication_ready.tex
SAFEPROCESS TeX paper/latex/main_safeprocess_publication_ready.tex

Build:

cd paper/latex
tectonic main_arxiv_publication_ready.tex
tectonic main_safeprocess_publication_ready.tex

Locked numbers for QA: paper/FROZEN_NUMBERS.md.

Authorship (sole author)

Author of record: Christian Rosenthal — sole author of the research, evaluation design, interpretation, manuscripts, and this repository.

  • Papers list only that author (\author{Christian Rosenthal}).
  • Git history is a single human identity (cgncro-cyber).
  • AI coding assistants were used under the author's direction for implementation acceleration (code, tests, tooling). They are not co-authors and hold no claim on the scientific contribution.
  • Full statement: AUTHORSHIP.md · machine-readable: CITATION.cff

Citation

@article{rosenthal2026safety,
  title  = {Safety-Gated Agentic Supervisory Control on a Coupled Distillation Benchmark},
  author = {Rosenthal, Christian},
  year   = {2026},
  note   = {Preprint; see paper/latex/main_arxiv_publication_ready.pdf},
}

After arXiv is live, replace the note field with eprint / archivePrefix / primaryClass.

License

MIT — see LICENSE. Copyright (c) 2026 Christian Rosenthal.

About the Author

Christian Rosenthal is a Product Manager and Lean Six Sigma Black Belt with 15+ years of experience optimizing chemical processes at industrial scale, currently completing a DBA in AI/ML. This project bridges classical process engineering with contemporary agentic AI.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages