# Monotone Forced-Response Adapter

- ID: 534
- Canonical URL: https://synthcore.org/idea/534/monotone-forced-response-adapter
- API JSON: https://synthcore.org/api/idea/534.json
- API Markdown: https://synthcore.org/api/idea/534.md
- Verification status: mech_ok_no_baseline
- Source: [arXiv:2607.03942](https://arxiv.org/abs/2607.03942)
- Category: architecture
- Solves: accuracy, stability, sample-efficiency
- ML areas: world-model, rl, training, dynamics
- Math tags: dynamical-systems, control-theory, optimization, approximation-theory
- Ratings: usefulness 7/10; difficulty 4/10; novelty 7/10

## Idea description

Separate a pretrained sequence model's passive prediction from the causal effect of an action, and learn only the latter with a compact monotone adapter. The adapter receives the current latent state and an action deviation, but its action-to-output Jacobian is constrained to have the physically correct sign, preventing intervention predictions that move opposite to the applied control.

## Mathematical statement

The paper's central construction is the additive response decomposition \(\hat{T}_{t+h}=\hat{T}^{\,\mathrm{free}}_{t+h}+\hat{T}^{\,\mathrm{forced}}_{t+h}\). Here \(t\) is the current time, \(h\) is a forecast horizon, \(\hat{T}_{t+h}\) is the counterfactual future temperature, \(\hat{T}^{\,\mathrm{free}}_{t+h}\) is the control-independent prediction from a frozen time-series foundation model, and \(\hat{T}^{\,\mathrm{forced}}_{t+h}\) is the incremental response caused by HVAC actuation. The surrounding text states that the forced-response operator is monotone in the control input by construction. Adapt this as \(\hat{y}_{t+h}(u_{t:t+h-1})=f_{\theta_0}(x_{t-L:t},c_{t:t+h})+g_\phi(z_t,u_{t:t+h-1})\), where \(f_{\theta_0}\) is a frozen passive backbone, \(x\) is the observed history, \(c\) are exogenous covariates, \(z_t\) is the backbone latent state, and \(g_\phi\) is a small trainable forced-response module. For a scalar action \(u\) whose positive direction should increase the target, enforce \(\partial g_\phi/\partial u\geq0\) by parameterizing every action-mixing weight as \(W_u=\operatorname{softplus}(A_u)\); for cooling, reverse the output sign. A causal impulse form is \(g_\phi=\sum_{k=0}^{h-1}K_{\phi,k}(z_t)\,\Delta u_{t+k}\), with \(K_{\phi,k}\geq0\), so every action effect has the correct sign while its magnitude and temporal dependence remain learned.

## Key formulas

- $$\hat{T}_{t+h}=\hat{T}^{\,\mathrm{free}}_{t+h}+\hat{T}^{\,\mathrm{forced}}_{t+h}.$$
- $$\hat{y}_{t+h}(u_{t:t+h-1})=f_{\theta_0}(x_{t-L:t},c_{t:t+h})+g_\phi(z_t,u_{t:t+h-1}),\qquad \frac{\partial g_\phi}{\partial u_{t+k}}\geq 0.$$
- $$g_\phi(z_t,u_{t:t+h-1})=\sum_{k=0}^{h-1}K_{\phi,k}(z_t)\,\Delta u_{t+k},\qquad K_{\phi,k}(z_t)=\operatorname{softplus}(A_{\phi,k}(z_t))\geq0.$$

## Implementation notes

Integrate this at the output head of a pretrained sequence predictor used as a world model, not inside the backbone. First run the frozen backbone on the recent observation history and exogenous context to obtain the passive forecast \(y^{free}_{t+1:t+H}\) and latent state \(z_t\). Add a two-layer MLP or horizon-wise depthwise one-dimensional convolution that maps \(z_t\) and the planned action sequence \(u_{t:t+H-1}\) to the forced residual. Use: `z, y_free = backbone(history, context).detach(); A = kernel_mlp(z); K = softplus(A); delta_u = u - u_reference; forced[h] = sum_k K[h,k] * delta_u[k]; y_hat = y_free + sign * forced`. Set `sign=+1` for an action that increases the target and `sign=-1` for an action such as cooling that decreases it. For multiple action channels, use separate nonnegative kernels and fixed signed output vectors. Train only adapter parameters \(\phi\) on intervention trajectories with Huber or squared error on future targets, optionally adding the zero-action penalty \(\|g_\phi(z,0)\|^2\). Estimate the reference action from the no-actuation operating point or training-set median; initially do not fine-tune the backbone. The nonnegative kernel constraint is computed analytically through `softplus`; kernel smoothness or exponential decay may be added empirically. First test on a small Transformer or TSMixer pretrained on passive trajectories of a synthetic controlled dynamical system, using 1%, 5%, and 20% intervention data. Compare against an unconstrained residual head at equal parameter count. Measure intervention-effect error \(\|[\hat y(u)-\hat y(0)]-[y(u)-y(0)]\|\), wrong-sign frequency, passive forecast error, and model-predictive-control reward. Success means lower effect error and nearly zero wrong-sign predictions without degrading passive forecasting.

## Verification

- Status: mech_ok_no_baseline
- Mechanism evidence: yes
- Mechanism confirmed: yes
- Practical verdict: inconclusive
- Verdict: Built a frozen passive backbone plus a softplus-constrained forced-response adapter and verified the mechanism numerically. The action Jacobian stayed positive with minimum observed 0.387, zero action produced exactly zero response, action scaling was exactly linear, and measured gains matched softplus predictions within 8.0e-8. The adapter improved effect MAE at 1% intervention data and guaranteed zero wrong-sign predictions, but was slightly worse at 5% and 20%, so a broad accuracy win was not established.

### Mechanism check

- Verdict: Built a frozen passive backbone plus a softplus-constrained forced-response adapter and verified the mechanism numerically. The action Jacobian stayed positive with minimum observed 0.387, zero action produced exactly zero response, action scaling was exactly linear, and measured gains matched softplus predictions within 8.0e-8. The adapter improved effect MAE at 1% intervention data and guaranteed zero wrong-sign predictions, but was slightly worse at 5% and 20%, so a broad accuracy win was not established.
- Confidence: 8/10
- Limitations: The synthetic backbone and adapter are very small; the adapter uses horizon-independent summed action effects rather than a full causal impulse kernel, and the unconstrained comparison head is only approximately parameter-matched. No real HVAC data, multi-action outputs, MPC reward, or backbone fine-tuning was tested.

### Practical benchmark

- Paired seeds: 8
- Baseline mean: 0
- Idea mean: 0
- p-value: 0.06385
- Paired wins: 0/0
- Benchmark verdict: no significant win

## Artifacts

- [bench_experiment.py](https://synthcore.org/code/250/bench_experiment.py)
- [bench_report.json](https://synthcore.org/code/250/bench_report.json)
- [experiment.py](https://synthcore.org/code/250/experiment.py)
- [report.md](https://synthcore.org/code/250/report.md)
- [report_bench_2026-08-30T213706.md](https://synthcore.org/code/250/report_bench_2026-08-30T213706.md)
- [results.json](https://synthcore.org/code/250/results.json)
- [Download all files as ZIP](https://synthcore.org/download/250)

## Disclaimer

AI-generated research hypothesis, automatically tested. Not peer-reviewed.
