{"id":"f442c383-ef0e-4b62-b4e8-c74a56cb2cf5","arxiv_id":"2507.18396","paper_version":2,"verdict":"CONDITIONAL","confidence":"MODERATE","novelty_score":6.0,"correctness_risk":"medium","formal_verification":"none","parameter_count":6,"one_line_summary":"Residual Koopman MPC adds a learned correction to a kinematic-baseline LMPC, cutting required training data to about 20% of standard Koopman MPC and improving lateral and heading tracking.","lead":"This paper combines a standard vehicle-tracking controller with a neural-network correction module that learns from a few laps of driving data. The result is a controller that needs much less training data than a pure data-driven Koopman MPC and slightly improves tracking over a kinematic baseline.","discovery_kind":"extension","skeptic_critique":{"model":"deepseek-v4-flash","headline":"The 20%-data claim is confounded: KMPC is trained on 50k off-track random points while RKMPC uses 8,933 task-specific LMPC points, and the real RKMPC set is expanded to 22,950 points; without a controlled data-efficiency comparison the headline claim is not established.","rationale":"Good-faith read: RKMPC is a sensible architecture; using a kinematic LMPC baseline plus a learned residual is plausible, and the physical F1TENTH test is real evidence. The strongest part is the closed-loop demo: RKMPC completes laps where KMPC fails. But the headline is explicitly \"20% of training data.\" That claim rests on two comparisons that are not apples-to-apples. Sim KMPC is trained on random off-track trajectories, so its poor performance may reflect lack of track-relevant coverage rather than data volume; no sweep of data size for either method is reported. Real RKMPC raw data is expanded by a factor of roughly 15, yet the paper still advertises raw counts. This is not a proof of fraud; it is an unmeasured confound. The residual-generalization concern the reader identified is a genuine robustness gap, but the experimental evidence already demonstrates generalization on the reported track; the data-efficiency comparison is where the central claim is least supported. I therefore keep the verdict CONDITIONAL and add a specific controlled experiment as the gate. I also flag the numerical inconsistencies between Table II and the abstract; they should be corrected. No objection to the architecture itself.","tokens_in":9305,"tokens_out":6643,"duration_ms":75122,"concrete_test":"On the Carsim-Matlab track, keep all other settings fixed and train KMPC on LMPC-generated on-track data of sizes 2k, 8,933, 20k, and 50k; also train RKMPC on the same raw sets, and report both raw counts and augmented counts M=N*Np for RKMPC. Plot lateral and heading error versus data count. If KMPC with 50k on-track points still underperforms RKMPC with 8,933, the 20% claim survives; if KMPC at comparable or even smaller on-track data matches or beats RKMPC, the claim is an artifact of data distribution and counting. Also rerun KMPC with RKMPC's local-coordinate preprocessing to isolate the benefit of that augmentation.","verdict_should_be":"UNCHANGED","load_bearing_attack":"Section V states RKMPC is trained on two laps of LMPC-generated data (8,933 points) on the test track, while KMPC uses 50,000 \"randomly generated trajectory data\" points. KMPC's poor Table II performance (lateral error 0.165 m vs RKMPC 0.099 m) is therefore attributable to distribution shift, not sample count; the paper never varies KMPC's data quantity or distribution to establish that 50,000 points are \"needed.\" In the real experiment, RKMPC uses 1,527 raw points expanded by the local-coordinate transform to 22,950 training pairs (Section VI), so counting RKMPC as \"about 8,000 points\" ignores the actual training data consumed; the 20% figure is not a well-defined ratio. The residual model's generalization (reader's concern) is real but secondary: even if delta_U generalizes, the headline data-efficiency comparison is currently confounded. Secondary inconsistencies (Table II reports 11.21% lateral reduction and 27.58% steering-rate reduction, while the abstract states 11.7%-22.1% and \"up to 27.6%;\" real steering improvement is 0.80%) mean the numerical headline is not internally coherent.","agreement_with_reader":"partial"},"referee_report":{"model":"deepseek-v4-flash","summary":"The paper proposes Residual Koopman Model Predictive Control (RKMPC), a dual-MPC architecture in which a kinematic-model-based linear MPC (LMPC) provides a baseline control input and a neural-network-based Koopman residual MPC computes a compensating input, with the final command being the sum of the two. The residual model is trained on a small amount of on-track data collected under LMPC closed-loop control, using a local-coordinate transformation to expand the training set. The authors claim that RKMPC requires only about 20% of the training data needed by conventional Koopman MPC (KMPC) while delivering improved tracking performance relative to LMPC. Validation is reported on a Carsim-MATLAB simulation platform and on a 1:10-scale F1TENTH hardware platform, with lateral error reductions of 11.7%-22.1%, heading error reductions of 8.9%-15.8%, and steering-stability improvements of up to 27.6% claimed relative to LMPC.","tokens_in":9640,"tokens_out":7062,"duration_ms":65131,"significance":"If the central claims were firmly established, RKMPC would be a practically valuable contribution: it combines the reliability and interpretability of a mechanistic kinematic baseline with the expressive power of a learned Koopman residual, potentially enabling data-efficient control on real vehicles where collecting large, diverse datasets is expensive. The paper has concrete strengths: the method is clearly described, the authors provide a physical hardware experiment, and the implementation is promised as open source. However, the headline data-efficiency claim (20% of KMPC's data) is currently not well supported because the comparison confounds data quantity with data distribution and dataset construction. The performance numbers are also internally inconsistent, and the experimental tables lack statistical reporting. These issues are central to the paper's contributions, so the manuscript requires substantive revision before the claims can be accepted.","major_comments":[{"comment":"The central claim that RKMPC requires only 20% of the training data needed by KMPC is not established because the comparison is confounded. In simulation, KMPC is trained on 50,000 randomly generated trajectory points, while RKMPC is trained on 8,933 task-specific points collected on the target track with LMPC (Section V). In the real experiment, RKMPC uses 1,527 raw points expanded to 22,950 training pairs, and KMPC is stated to be trained on 10 laps of track data (Section VI). No experiment varies the amount or distribution of KMPC's training data while holding other factors fixed. To support the 20% claim, the authors should train KMPC on on-track data of varying sizes (and ideally also vary RKMPC's data size) and report the resulting performance curves, rather than comparing a task-matched small dataset with a large off-distribution dataset.","section":"Section V and Section VI"},{"comment":"The performance numbers in the abstract are inconsistent with the tables. The abstract claims lateral error reduction of 11.7%-22.1%, heading error reduction of 8.9%-15.8%, and steering stability improvement of up to 27.6%. Table II reports simulation values of 11.21%, 8.63%, and 27.58%, which round to 11.2%, 8.6%, and 27.6%, not to 11.7% and 8.9%. Table III reports real-world values of 22.08%, 15.82%, and 0.80%. The real-world steering improvement is only 0.80%, so the abstract's \"up to 27.6%\" is misleading without explicitly indicating that this is the simulation result. The numbers should be corrected and the metric definitions clarified.","section":"Abstract, Table II, Table III"},{"comment":"The experimental tables report single performance values with no variance, no number of runs, and no statistical significance. This is particularly problematic for the hardware experiments, where the observed improvements could be the result of a single favorable trial. The authors should run multiple laps or trials per controller and report mean ± standard deviation (and ideally confidence intervals or a significance test) to demonstrate that the claimed improvements are reproducible.","section":"Tables II and III"},{"comment":"The data-preprocessing description is ambiguous about what counts as a training data point. Section IV-A defines M = N × Np for the local-coordinate transformation, but Section V reports 8,933 data points for RKMPC without stating the raw count or the conversion ratio, while Section VI states that 1,527 raw points are expanded to 22,950 pairs. The claimed 20% ratio and Figure 8 cannot be verified without a consistent definition of \"data point\" (raw samples versus transformed training pairs). Please specify raw counts, the point-block size Np, and the conversion ratio for both the simulation and real experiments.","section":"Section IV-A and Section VI"},{"comment":"The residual model is trained on data generated under LMPC closed-loop control (the residual is ΔU = Ur - Up, where Up is the LMPC prediction), but the deployed RKMPC uses the LMPC baseline plus the learned residual, which shifts the closed-loop state distribution. The paper does not analyze whether the residual model remains valid under this distribution shift. The authors themselves attribute KMPC's failure in the real experiment to the state leaving the training data range (Section VI); the same risk applies to the residual model. At minimum, the paper should provide evidence (e.g., prediction-error plots on the RKMPC closed-loop trajectory) that the residual model's predictions remain accurate when used in the combined controller.","section":"Section IV-A, Eq. (10) and Section VI"}],"minor_comments":[{"comment":"The notation for the Koopman operator is nonstandard: the left side should act on the observable (e.g., [Kg](xt) = g(f(xt,ut))), rather than writing Kg(xt) = g ∘ f(xt,ut). Please clarify the definition.","section":"Section III-B, Eq. (4)"},{"comment":"There is a typo: \"longger\" should be \"longer\" in the sentence about NMPC's computation time.","section":"Section V"},{"comment":"The constraint label says \"Recidual Koopman Model\" instead of \"Residual Koopman Model.\" Please fix the typo.","section":"Section IV-B, Eq. (12)"},{"comment":"The GitHub link contains a space: \"https://github.com/ZJU-DDRX/Residual Koopman\" is not a valid URL. The repository name should be encoded or renamed so that the link is directly accessible.","section":"Abstract"},{"comment":"The values of several key hyperparameters are not reported: the MPC cost weights λ, μ, and ε, the Huber loss threshold δ_huber, the prediction horizon N, the point-block size Np, the conversion ratio used in simulation, the neural network hidden widths, and the lifted state dimension n. Please provide these values to enable reproducibility.","section":"Sections IV-VI"},{"comment":"The KMPC row in the real experiment reports only computation time and the footnote that it could not complete a full lap. Please clarify how many laps of data were used to train KMPC in the real experiment, and whether the intended comparison is with the 50,000-point simulation training set, since this affects the interpretation of the data-efficiency claim.","section":"Table III"}],"recommendation":"major_revision","confidential_remarks":"The manuscript presents a promising method and includes real-hardware validation, which is a strength. However, the central data-efficiency claim is currently confounded, and the numerical inconsistencies between the abstract and the tables need to be resolved. I would encourage the editor to request a revision that adds a controlled KMPC data-ablation study, multiple real-world runs with statistical reporting, and a consistent definition of training-data counts."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"The core idea is sound: take a well-behaved kinematic LMPC baseline, learn a residual correction with a neural-network Koopman model, and add the two control signals. The local-coordinate data augmentation is a genuinely useful trick for compressing the state range, and the physical F1TENTH experiment is real evidence that the loop closes on hardware. I also appreciate that the paper reports NMPC computation times and recognizes that NMPC misses real-time on this platform.\n\nWhat is actually new is the specific combination of residual learning with Koopman MPC plus the local-coordinate preprocessing. That combination is not in the cited prior work, and it is a plausible engineering answer to the data-hungriness of vanilla KMPC. If I were building a small-data vehicle controller, I would look at this method.\n\nThe soft spots are real, and the biggest one is the 20% data claim. KMPC is trained on 50,000 randomly generated trajectory points; RKMPC is trained on 8,933 task-specific points collected by LMPC on the actual test track. That is a distribution shift, not a controlled data-efficiency comparison. The paper never varies KMPC's data quantity or distribution to show that 50,000 points are actually \"needed.\" The real-track experiment makes it worse: 1,527 raw points are expanded to 22,950 via the coordinate transform, so calling RKMPC \"8,000 points\" ignores the data actually consumed.\n\nSecondary issues are also worth flagging. Tables II and III report single numbers with no variance or run counts, so I cannot judge whether the performance gaps are noise. The abstract claims 11.7%–22.1% lateral reduction and up to 27.6% steering improvement, but Table II shows 11.21% and 27.58% (both fine), while the real-vehicle steering improvement is 0.80%. The paper should separate simulation and hardware numbers in the abstract. The code link in the abstract contains a space and does not resolve, which undermines the open-source claim.\n\nThe residual generalization concern raised by the reader is real but secondary. Even if the residual generalizes, the headline data-efficiency comparison is currently not established.\n\nWho is this for? Practitioners in autonomous racing and vehicle control who want a data-efficient alternative to pure Koopman MPC. It deserves a serious referee, but the revision must fix the data-efficiency comparison, report error bars, align the numbers, and fix the code link.","headline":"Sensible residual Koopman MPC combination with a real hardware demo, but the headline data-efficiency claim is confounded by a KMPC baseline trained on a different data distribution.","tokens_in":10168,"tokens_out":1681,"would_cite":true,"duration_ms":18211,"reading_group":"maybe","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"deepseek-v4-flash","headline":"Learned residual correction lets a vehicle controller match data-driven MPC with 20% of the training data.","keywords":["residual Koopman","model predictive control","vehicle trajectory tracking","data efficiency","kinematic bicycle model","neural network lifting","autonomous racing","control residual"],"falsifier":"Collect two laps of LMPC data on a track, train the residual model, then run RKMPC on a second track with markedly faster corner entry speeds. If lateral error grows beyond the LMPC baseline or the vehicle runs off the track, the residual failed to generalize to unseen states, which would refute the data-efficiency claim.","tokens_in":9110,"feed_emoji":"🏎️","tokens_out":5979,"duration_ms":57211,"temperature":0.7,"pith_summary":"The paper claims that vehicle trajectory tracking can be made accurate with far less data than fully data-driven methods by adding a learned residual to a physical baseline. Its proposed controller, RKMPC, runs two linear MPCs: a kinematic-model MPC produces the baseline control $U_0$, and a neural-network-lifted Koopman model computes a correction $\\Delta U$ fitted to the difference between the control actually needed and the baseline prediction. The final command is $U = U_0 + \\Delta U$. The authors report that this correction requires about 8,000 on-track data points (two laps) instead of roughly 50,000 points for traditional Koopman MPC, and that on their test tracks it cuts lateral error by 11.7%-22.1%, heading error by 8.9%-15.8%, and steering-angle rate by up to 27.6% relative to linear MPC. A sympathetic reader would care because the result suggests the standard trade-off between interpretable mechanism models and data-hungry learning is not fixed: a small residual model can carry the nonlinear mismatch.","feed_headline":"Learned residual lets MPC cut training data to 20%.","feed_subtitle":"A two-lap correction layer beats linear MPC on lateral and heading error in simulation and on a real car.","key_machinery":"The load-bearing object is the residual Koopman model with neural-network lifting: a two-layer fully connected network maps the vehicle state into a high-dimensional observation space, and a linear state-space model $z_{t+1}=A z_t + B \\Delta u_t$, with $C$ mapping back to physical state, is fit by least squares to the residual control $\\Delta U = U_r - U_p$. This model is then solved by a second linear MPC whose decision variables are the corrections. The mechanism works because the lifted linear model only needs to represent the mismatch left over by the kinematic baseline, which is why the authors argue the required data volume drops to about one fifth.","core_discovery":"On its own terms, the paper's central discovery is that the residual between a linear MPC's prediction and the control input that actually works on the vehicle evolves approximately linearly in a lifted state space, so it can be learned with a small dataset and used as a second MPC's objective. The paper frames the residual as $\\Delta U = U_r - U_p$, where $U_p$ is the control predicted by the kinematic-model MPC and $U_r$ is the control needed to match the observed state evolution. A neural network lifts $(x, y, \\theta)$ to a high-dimensional state $z$, and least-squares fitting yields $z_{t+1} = A z_t + B \\Delta u_t$, whose correction is then added to the baseline. The claim is supported by simulation and by a physical-vehicle experiment, where pure Koopman MPC could not finish a lap while RKMPC finished with lower lateral and heading errors than the baseline.","pith_inferences":["The same residual-Koopman split could be applied to other model-based predictors, such as inertial navigation or motion planning, wherever a physical prior leaves a systematic, state-dependent error.","A natural next experiment would measure how the residual model's one-step prediction error on a held-out lap grows with data volume, to see whether the 20% figure reflects a true scaling law or just the particular track geometry.","The paper's comparison to NMPC is simulation-only; a head-to-head physical test at similar computation budgets would clarify whether the residual correction closes the accuracy gap with nonlinear MPC."],"forward_implications":["Controllers built this way could be deployed where collecting large datasets is expensive or dangerous, such as racing or inspection vehicles, since two laps of on-track data appear sufficient.","The two-linear-MPC structure keeps computation in the 1–20 ms range, so it can run on onboard hardware where an NMPC requiring roughly 66 ms peak time cannot.","Because the baseline linear MPC remains active even if the residual misbehaves, the architecture has a built-in fallback that a purely data-driven Koopman controller lacks.","The residual formulation generalizes the Koopman idea to any controller with a mechanistic prior, meaning the data-efficiency gain may extend beyond trajectory tracking."],"supporting_citations":[{"why":"Establishes the Koopman-operator-with-MPC formulation that the residual model extends.","marker":"[3]"},{"why":"Demonstrates vehicle MPC using the Koopman operator, setting the data-hungry baseline RKMPC aims to beat.","marker":"[4]"},{"why":"Shows residual policy learning for autonomous racing, the conceptual precursor for residual control inputs.","marker":"[12]"},{"why":"Applies residual learning to vehicle control, supporting the residual correction idea.","marker":"[13]"},{"why":"Introduces the deep Koopman data-driven control framework for autonomous racing used as the neural lifting basis.","marker":"[20]"},{"why":"Provides the open-source 1:10 scale vehicle platform used in the physical experiments.","marker":"[22]"}],"fun_headline_variants":["Residual MPC needs 20% data, cuts errors","Two MPCs, one residual: tracking with less data","Koopman residual: 20% data, better control","Residual learning boosts MPC, cuts data use","Linear MPC plus residual: 20% data, 22% less error"],"cache_read_input_tokens":3200,"weakest_assumption_plain":"The learned correction must predict accurately on states and inputs the vehicle encounters during closed-loop driving, even though it was trained on just two laps of data collected under the baseline controller; if the residual model leaves the training distribution, the additive command becomes unreliable, as happened to the pure Koopman controller in the physical experiment.","fun_headline_variants_meta":{"raw":{"variants":["Residual MPC needs 20% data, cuts errors","Two MPCs, one residual: tracking with less data","Koopman residual: 20% data, better control","Residual learning boosts MPC, cuts data use","Linear MPC plus residual: 20% data, 22% less error"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.000197,"raw_usage":{"total_tokens":1418,"prompt_tokens":1054,"completion_tokens":364,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":670,"completion_tokens_details":{"reasoning_tokens":280}},"tokens_in":670,"tokens_out":364,"duration_ms":4112,"temperature":1.0,"reasoning_tokens":280,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-06T14:32:41.314060+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Collect two laps of LMPC data on a track, train the residual model, then run RKMPC on a second track with markedly faster corner entry speeds. If lateral error grows beyond the LMPC baseline or the vehicle runs off the track, the residual failed to generalize to unseen states, which would refute the data-efficiency claim.","supporting_citations":[{"cited_title":"Linear predictors for nonlinear dynamical systems: Koopman operator meets model predictive control,","cited_arxiv_id":null,"evidence_quote":"Establishes the Koopman-operator-with-MPC formulation that the residual model extends."},{"cited_title":"Model predictive control of a vehicle using koopman operator,","cited_arxiv_id":null,"evidence_quote":"Demonstrates vehicle MPC using the Koopman operator, setting the data-hungry baseline RKMPC aims to beat."},{"cited_title":"Residual policy learning facilitates efficient model-free autonomous racing,","cited_arxiv_id":null,"evidence_quote":"Shows residual policy learning for autonomous racing, the conceptual precursor for residual control inputs."},{"cited_title":"Residual policy learning for vehicle control of autonomous racing cars,","cited_arxiv_id":null,"evidence_quote":"Applies residual learning to vehicle control, supporting the residual correction idea."},{"cited_title":"Deep koopman data-driven control framework for autonomous racing,","cited_arxiv_id":null,"evidence_quote":"Introduces the deep Koopman data-driven control framework for autonomous racing used as the neural lifting basis."}],"review_version":1}