Dual Layer Cell Partition Control
Kundai Farai Sachikonye · Chair of Proteomics and Bioanalytics, Technical University of Munich
Mutapa is a control system for stirred-tank bioreactors built on a strict architectural separation between two layers that most designs conflate. The control layer normalises every heterogeneous process channel — dissolved oxygen, pH, temperature, agitation, feed rate — onto a common bounded coordinate hypercube, partitions that hypercube into a finite set of cells, and dispatches a pre-compiled action from the cell the current normalised state occupies. This quantised controller is proved globally asymptotically stable under an explicit piecewise-Lyapunov condition, its discrete-time operator is a contraction with geometric convergence, its cell width is bounded above by a Nyquist-type sampling criterion tied to the process bandwidth, and it is structurally incorruptible: because the controller consumes only a scalar timing/registry index and dispatches from a fixed finite action set, no sensor payload can drive the plant outside that set.
The monitoring layer sits strictly downstream across a one-directional interface. It treats each measurement not as a number but as one confirmation in a redundant ensemble: sensors are modelled as coupled oscillators that federate by phase entrainment, and a process excursion is confirmed only when independent channels agree, declining to a certified safe state when they irreducibly disagree. The monitoring layer is additive — every one of its guarantees can fail without touching the control layer's stability or safety proofs — so in the worst case the system degrades continuously to an ordinary provably-stable single-channel cell-partition controller.
This repository contains the self-contained manuscript, a deterministic numerical validation suite that verifies each theorem on concrete instances, and a browser-native Control Room in which the control law is executed against a simulated fed-batch Saccharomyces cerevisiae process.
mutapa/
├── docs/
│ ├── bioreactor-control-system/ # the manuscript (LaTeX) + figures
│ │ ├── bioreactor-control-system.tex
│ │ ├── references.bib
│ │ ├── figures/ # generated panels + captions
│ │ └── validation/ # numerical validation suite (Python)
│ ├── cellular-system/ # foundational cell-partition papers
│ └── sources/ # supporting theory (cited, not required)
├── web/ # the Control Room (Next.js + R3F)
│ └── src/lib/experiment-engine.js # browser port of validation/core.py
└── README.md
The manuscript is the source of truth for the mathematics. The validation suite
verifies the manuscript. The Control Room's engine is a faithful port of the
validation suite's shared constructions (validation/core.py); if the two ever
diverge, core.py is authoritative.
docs/bioreactor-control-system/bioreactor-control-system.tex is complete and
self-contained: every claim is proved from stated definitions using only
standard results in nonlinear control, information theory, and synchronisation.
It gives the full state-space model, the stability proofs, a CUSUM-equivalent
excursion-detection identity, a federation admission criterion, the sensor
synthesis map, six algorithms, and the validation protocol.
Build the PDF:
cd docs/bioreactor-control-system
latexmk -pdf bioreactor-control-system.texEach check in docs/bioreactor-control-system/validation/ constructs concrete
instances and verifies a theorem's inequality, identity, or dichotomy. The
suite is deterministic (fixed seed per module) and writes one JSON record per
experiment plus an aggregate summary.
cd docs/bioreactor-control-system/validation
pip install numpy scipy
python run_all.py # exit 0 iff every check passes| Module | Verifies |
|---|---|
v_control.py |
cell floor & finite count; per-cell LMI global asymptotic stability; Banach contraction rate vs. exact operator norm; Nyquist cell-width feasibility |
v_federation.py |
critical coupling and order-parameter branch; zero-overhead agreement at phase lock; single-loss bound; ensemble-invariant robustness and correlated-fault detection |
v_synthesis.py |
lossless time↔frequency bijection; cell preservation; synthesis = circular mean; concentration invariance; dispersion fallback |
v_separation.py |
additivity across certified configurations; structural incorruptibility under adversarial payloads; worst-case total-monitoring-failure convergence |
Identities (switch round-trip, circular-mean synthesis, relabelling invariance)
are verified to floating-point precision (< 1e-12). The finite-n Kuramoto
check requires the simulated order parameter to lie below the thermodynamic
branch with a monotone transition, since exact agreement holds only as
n → ∞.
A browser-native tool in which the reader writes short scripts against an experiment API and drives the simulated reactor — the closed loop, the CUSUM excursion monitor, and the sensor-synthesis map all run client-side in a sandboxed Web Worker. No server, no backend; the whole thing deploys as a static site.
cd web
npm install
npm run dev # http://localhost:3000The landing page is an animated model; Enter the Control Room opens the
scripting environment. A script sets setpoints, seeks convergence, injects
faults, arms excursion watches, confirms across independent sources, and
synthesises virtual channels — the same primitives the manuscript formalises.
See web/README.md for the API reference and architecture.
@unpublished{sachikonye_mutapa,
author = {Sachikonye, Kundai Farai},
title = {A Dual-Layer Cell-Partition Control System for Bioreactors:
Provably-Stable Regulation with an Additive Confirmation Layer},
note = {Manuscript},
year = {2026}
}See web/LICENSE.md.
