Demo
This is a recorded run of the app, replayed in your browser. Nothing is computed here: the page plays back what the server sent during the run.
A membrane bioreactor is driven by two controllers side by side:
- PeriodicOptimal starts with nine fixed cycles, fits its internal model on them, then switches to optimal control and keeps refitting.
- Periodic starts with the same nine cycles, then keeps the best fixed filtration/backwash split for this plant.
The scenario is read-only, and the values of the plant's parameters are not published. Use Replay, Pause and the speed slider to play the run; the tabs and the Show chips change what is plotted.
What to look at
- The first cycles are identical. Both controllers run the same warm-up schedule. It gives PeriodicOptimal the data it needs to fit its model.
- Then the commands diverge. Look at the
upanel after the warm-up: PeriodicOptimal no longer follows a fixed schedule. - The estimate follows the truth. On the
x1panel, the fouling estimated by PeriodicOptimal is drawn next to the true one, which the controller never measures. - The Metrics tab compares the two strategies cycle by cycle: filtration/backwash ratio, net production rate, and share of successful refits.
See Concepts for what each term means.