{"id":"f682394d-aa97-4798-a9ee-dc53a77f6ba9","arxiv_id":"2504.13088","paper_version":2,"verdict":"CONDITIONAL","confidence":"MODERATE","novelty_score":5.0,"correctness_risk":"medium","formal_verification":"none","parameter_count":3,"one_line_summary":"A self-supervised framework jointly trains an IMU-denoising network and a differentiable MPC through a consistency loss, improving simulated quadrotor attitude control and parameter identification.","lead":"The paper couples a learning-based inertial odometry network with a differentiable model predictive controller in one self-supervised training loop for quadrotor attitude control. If the results hold in hardware, it offers a label-free way to tune a drone's sensor processing and dynamics model together.","discovery_kind":"extension","skeptic_critique":{"model":"deepseek-v4-flash","headline":"Eq. (9) is a consistency loss between two learned quantities, and the paper's own §3.1 attributes the discrepancy to both perception and dynamics without an identifiability argument; absent a ground-truth anchor, the IMU network can co-adapt with the model rather than learn true denoising.","rationale":"The reader's weakest assumption identifies exactly this co-adaptation risk: because neither side of Eq. (9) is grounded, the network and dynamics model can reduce their discrepancy while remaining jointly wrong. I agree with that assessment, and I find it to be the most load-bearing concern about the paper's central claim. The conditional verdict is appropriate: the concern is substantive enough that acceptance should require an identifiability argument or a training-time ground-truth probe, but it does not by itself warrant rejection, because the simulation experiments do report post-training ground-truth metrics and learned-parameter errors that partially mitigate the risk. The same concern also underlies the absence of error bars and the lack of an ablation isolating the contribution of the joint training signal. I therefore recommend keeping the reader's CONDITIONAL verdict unchanged rather than moving to ACCEPT or REJECT. A single concrete probe, logging ground-truth errors alongside the training loss, would settle whether the concern actually lands in the reported setup.","tokens_in":12558,"tokens_out":9791,"duration_ms":89132,"concrete_test":"Re-run the Python-simulator training (Section 4.1) while logging ground-truth attitude x^*_{k+1} at each training step. Compare the training curve of U(θ) with the training curves of ||x^I_{k+1} − x^*_{k+1}|| and ||x_{k+1} − x^*_{k+1}||, and also log the learned mass/MOI error over time. If U decreases while these ground-truth errors stagnate or grow, co-adaptation is confirmed and the self-supervised signal is not anchored to reality.","verdict_should_be":"UNCHANGED","load_bearing_attack":"The central claim is that the upper-level loss U(θ) = ||x^I_{k+1} − x_{k+1}||^2 (Eq. 9) jointly improves IMU denoising, MPC parameter identification, and attitude control. Both x^I_{k+1} = fθ(z) and x_{k+1} = F(x^I_k, u_k; θ_dyn) are functions of the same learnable parameters, and neither is anchored to ground truth during training. The loss is therefore a consistency condition, not a correctness condition. As the paper itself states in §3.1, the discrepancy 'captures the imperfectness of perception and dynamics model,' but the loss provides no mechanism to attribute error between the two sources. The system can minimize U by making the IMU network reproduce the dynamics model's one-step prediction, even if the model is wrong and the IMU estimate drifts. Because gradients are deliberately blocked through x^I_k, the model prediction used in the loss depends on earlier network outputs, closing a co-adaptation loop. No identifiability analysis, regularization, or training-time ground-truth validation is provided. The reported IMU RMSE gains (Tables 1–2) and learned mass/MOI errors (Table 3) are evaluated against ground truth after training, but the training signal itself does not require improvement on those metrics. The observed gains could therefore be an artifact of co-adaptation rather than genuine simultaneous improvement. This is the load-bearing gap in the paper's central claim.","agreement_with_reader":"agree"},"referee_report":{"model":"deepseek-v4-flash","summary":"This manuscript proposes Imperative MPC (iMPC), an end-to-end self-supervised framework for UAV attitude control. A neural IMU module denoises raw accelerometer/gyroscope measurements and produces an attitude estimate x^I_k; a differentiable MPC (d-MPC) uses that estimate as the initial state and solves for optimal control actions; the upper-level loss (Eq. 9) minimizes the Euclidean discrepancy between the model-predicted next state x_{k+1} and the network-integrated next state x^I_{k+1}. Training is bi-level, with the lower level an MPC/iLQR problem and the upper level updating both the perception network and learnable dynamics parameters such as mass and moment of inertia. Experiments in a custom Python simulator and Gazebo PX4 SITL compare iMPC against classical IMU+MPC, learned-IMU+MPC, learnable-parameter MPC, and a PPO baseline, reporting improvements in settling time, RMSE, steady-state error, IMU attitude error, and learned mass/MOI accuracy under wind disturbances up to 20 m/s.","tokens_in":12932,"tokens_out":5287,"duration_ms":47523,"significance":"The proposed idea of using the MPC's model prediction as a supervisory signal for a learned IMU module, while jointly learning dynamics parameters, is timely and, if valid, would be a useful step toward label-free, end-to-end perception-control co-training for small aerial robots. The paper's strengths are its clear bi-level formulation, its use of a standard differentiable MPC library (PyPose), its two-simulator evaluation, and the explicit test of learned mass and moment of inertia. However, the central claim of simultaneous improvement rests on a consistency loss between two learnable quantities, and the paper neither analyzes this identifiability issue nor reports variance statistics for its ten repeated runs. The simulation-only evidence and the weak PPO baseline further limit the strength of the conclusions as they currently stand.","major_comments":[{"comment":"The upper-level loss U(θ)=||x^I_{k+1}−x_{k+1}||^2 is a consistency condition, not a correctness condition: both x^I_{k+1}=f_θ(z) and x_{k+1}=F(x^I_k,u_k;θ_dyn) depend on learnable parameters, and neither is anchored to ground truth during training. The discrepancy can be reduced by co-adaptation, e.g., the IMU network learning to reproduce the dynamics model's one-step prediction even when both are jointly wrong. Section 3.1 states that the discrepancy 'captures the imperfectness of perception and dynamics model' but provides no identifiability analysis or mechanism to attribute error between perception and dynamics. Without a ground-truth anchor, an ablation against a supervised baseline, or a training-time validation curve, the claimed simultaneous improvement in IMU accuracy, dynamics parameter identification, and control is not established.","section":"Section 3.1, Eq. (9)"},{"comment":"The text states that all experiments are repeated ten times and reports 'negligible standard deviations,' but no error bars, confidence intervals, or significance tests are presented anywhere. Many headline differences are tiny, for example Table 1 RMSE of 0.684° for iMPC versus 0.685° for IMU++MPC at 20°, and Table 2 impulse 20 m/s RMSE of 0.354° versus 0.356° for IMU++MPC. These differences are likely within run-to-run noise, so the reported superiority of iMPC is not statistically supported.","section":"Section 4.1 and Tables 1–2"},{"comment":"The PPO baseline is trained only with wind disturbances up to 10 m/s and is then evaluated at 15–20 m/s, where the paper reports that it 'loses control.' This demonstrates out-of-distribution fragility of one PPO configuration, not a general limitation of reinforcement learning, and it is not a matched comparison in terms of training exposure. The claim that iMPC is robust 'compared to RL' is therefore overstated; a fair baseline would train PPO on the same wind range or evaluate iMPC on wind speeds beyond 20 m/s.","section":"Section 4.2 and Figure 3"}],"minor_comments":[{"comment":"Table 2, Gazebo 10 m/s impulse: the RMSE value 0.342 for IMU+MPC+ is inconsistent with the neighboring entries in that column (all near 0.64) and appears to be a typographical error.","section":"Table 2"},{"comment":"The manuscript uses 'UA V' throughout (e.g., in the title and abstract) and 'Netwon-Euler' in Section 3.3; these should be corrected to 'UAV' and 'Newton-Euler.'","section":"Throughout"},{"comment":"Section 4.1 states that all experiments are repeated ten times, but no standard deviations are reported; either report them or revise the statement.","section":"Section 4.1"},{"comment":"The RL baseline implementation details are incomplete: the observation, reward function, network architecture, and training hyperparameters are only sketched, which makes the PPO comparison hard to reproduce.","section":"Section 4.1"},{"comment":"The paper does not include a statement on code or data availability; given the emphasis on reproducibility in learning-for-control venues, this should be added.","section":"General"}],"recommendation":"major_revision","confidential_remarks":"This is a promising application-oriented paper that fits the scope of L4DC, but the central learning claim is susceptible to co-adaptation and the simulated evidence lacks variance reporting. I recommend major revision rather than rejection because the identifiability concern could be addressed with additional analysis or experiments, such as a supervised-oracle ablation, a training-time validation curve, or an identifiability discussion."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"Colleague,\n\nThe short version: this is a believable application of Imperative Learning to quadrotor attitude control, but the central training signal — Eq. (9)'s consistency loss between the IMU network's estimate and the MPC model prediction — is not anchored to ground truth, and the paper never shows the two can't co-adapt. I'd send it to review, but I'd want the authors to close that hole before publication.\n\nWhat's genuinely new: coupling a learning-based IMU denoiser (their AirIMU) with a differentiable MPC in one bi-level loop, trained without labels. The ablation set (classic IMU vs learned IMU, fixed vs learnable dynamics parameters) is a good way to isolate contributions, and the Gazebo PX4 SITL experiments give the results more weight than a pure Python sim. The learned mass and MOI coming out within a few percent of true values is a useful sanity check.\n\nThe soft spots are real. First, Eq. (9) minimizes the difference between two quantities the network itself produces: x^I and x are both functions of θ, and gradients are blocked through x^I_k but flow through x^I_{k+1}. The paper's own §3.1 says the discrepancy 'captures the imperfectness of perception and dynamics model,' but there's no argument that the loss attributes error to the right source. The IMU network could in principle learn to match the dynamics model's one-step prediction rather than the true state. The final ground-truth evaluation looks good, but that's after the fact; the training signal doesn't require it. Second, the PPO baseline is set up to lose: it's trained with wind up to 10 m/s and then evaluated at 15 and 20 m/s. That's an unfair comparison, not evidence of robustness. Third, ten repeats are claimed but no error bars or variance are reported anywhere. And there's no code or data, so the results are hard to check.\n\nNone of this makes the paper incoherent. The framework is sensible, and the empirical gains are plausible. But the load-bearing claim — that self-supervision simultaneously improves IMU accuracy and MPC parameter learning — needs either an identifiability analysis, a training-time ground-truth check, or a real-world demonstration. As it stands, the paper is a solid workshop-quality idea with a gap between what it claims and what the evidence supports.\n\nFor a colleague working on self-supervised control or hybrid MPC, this is worth reading and discussing. I'd accept it for peer review, but I'd push for major revision.","headline":"A plausible self-supervised MPC framework whose consistency loss needs an identifiability argument; worth reviewing, but the evidence is not yet airtight.","tokens_in":13412,"tokens_out":3523,"would_cite":true,"duration_ms":35309,"reading_group":"yes","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"deepseek-v4-flash","headline":"This paper claims that a UAV's IMU denoiser and its MPC controller improve together from a single self-supervised loss: the gap between predicted and measured attitude.","keywords":["self-supervised learning","differentiable model predictive control","UAV attitude control","inertial odometry","IMU denoising","bi-level optimization","wind disturbance robustness","system identification"],"falsifier":"Collect a flight with a motion-capture or other ground-truth attitude reference and train the exact loop; if the discrepancy decreases while the absolute attitude error against ground truth stays flat or grows, the co-adaptation failure is present. Alternatively, inject a constant gyroscope bias and check whether the learned IMU filter removes it or the learned mass and inertia values absorb it.","tokens_in":12401,"feed_emoji":"🚁","tokens_out":5673,"duration_ms":50741,"temperature":0.7,"pith_summary":"The paper tries to establish that a drone's attitude control can be learned end to end without labeled data, wind models, or separate tuning stages. It couples a learned inertial-odometry network, which denoises IMU readings and estimates attitude, with a differentiable model predictive controller that solves for the control action. The two are joined by a bi-level optimization: the inner level solves the MPC, and the outer level minimizes the discrepancy between the attitude the MPC model predicts and the attitude the IMU network measures. The authors report that this joint loop improves both the MPC's learned dynamics parameters and the IMU's attitude estimates, and that the closed loop withstands simulated winds up to 20 m/s.","feed_headline":"Drone learns to denoise its IMU and tune its controller with no labels","feed_subtitle":"Minimizing predicted-vs-measured attitude improves both modules; simulated flights stay stable under 20 m/s wind.","key_machinery":"The load-bearing object is the upper-level cost $U(\\theta)=\\|x^I_{k+1}-x_{k+1}\\|^2$, the squared difference between the IMU network's attitude estimate $x^I_{k+1}$ and the MPC model's predicted next state $x_{k+1}$. Gradients are backpropagated through $x^I_{k+1}$ while $x^I_k$ is frozen as the initial condition, and through the MPC solve via implicit differentiation through the KKT conditions, implemented as a single extra iLQR iteration at the stationary point. This one cost is the only connection between the perception network and the controller, and it is what makes the training self-supervised and end-to-end.","core_discovery":"The central claim is that minimizing a single self-supervised discrepancy, the squared error between the attitude predicted by the MPC's dynamics model and the attitude estimated by the IMU network, can serve as the training signal for both modules at once. Earlier hybrid pipelines either need labels or train perception and control separately; here, the physical consistency between what the controller expects and what the sensor reports is the only supervisor. The authors formulate the system as a bi-level optimization, differentiate through the MPC's KKT conditions using a one-step iLQR correction, and backpropagate the upper-level loss into both the noise-filtering network and the MPC's learnable parameters. They demonstrate in a custom 6-DOF simulation and in a high-fidelity software-in-the-loop setup that the resulting system improves attitude RMSE, settling time, and steady-state error relative to the component baselines, and that it can identify mass and moment of inertia within a few percent of their true values.","pith_inferences":["I read the framework as a general recipe for training perception through a differentiable optimizer: any sensor model whose output feeds an optimization can be trained against the optimizer's prediction errors rather than against ground truth, and nothing in the argument is specific to IMUs or quadrotors.","The clearest risk the paper leaves open is co-adaptation: if the IMU network and the dynamics model drift together, the discrepancy can vanish while both remain wrong in absolute terms, so a natural test is to record the same flight with a motion-capture reference and check whether absolute attitude error shrinks as the discrepancy shrinks.","A testable extension is to inject a known artificial bias into the IMU and see whether the training loop removes it or merely hides it inside the learned dynamics parameters, which would reveal how much identifiability the current loss provides.","The same bi-level formulation could be applied to visual-inertial odometry with a differentiable planner, where the upper-level loss would be the planning cost rather than the attitude discrepancy."],"forward_implications":["If the central claim holds, a drone can adapt its attitude controller and its IMU noise model from flight experience alone, without motion-capture labels or hand-tuned dynamics parameters.","The same discrepancy-minimization scheme should transfer to other perception-control pairs, such as vision-based state estimation feeding an MPC, whenever the downstream model can be differentiated.","Because mass and moment of inertia are identified within a few percent, the loop doubles as a lightweight system-identification procedure that runs during normal flight.","The framework inherits MPC's robustness: it handled 20 m/s impulse and step wind in simulation without ever seeing those winds during training, whereas a reinforcement-learning baseline lost control at 15 m/s."],"supporting_citations":[{"why":"Introduced differentiable MPC, the foundation for end-to-end learning through the controller.","marker":"Amos et al. (2018)"},{"why":"Supplies the specific d-MPC implementation used, which differentiates through iLQR at the stationary point.","marker":"Wang et al. (2023)"},{"why":"Defines the imperative-learning bi-level self-supervised framework that this paper adapts to attitude control.","marker":"Wang et al. (2024)"},{"why":"Provides the differentiable IMU preintegration module used as the perception backbone.","marker":"Qiu et al. (2023)"},{"why":"Underlies the implicit-function differentiation used to compute the MPC gradient.","marker":"Dontchev and Rockafellar (2009)"},{"why":"Justifies the one-step differentiation approximation used in the d-MPC backward pass.","marker":"Bolte et al. (2023)"},{"why":"Provides the PPO reinforcement-learning baseline compared in the wind-disturbance experiments.","marker":"Schulman et al. (2017)"}],"fun_headline_variants":["Self-supervised drone tunes its own controller, no labels","End-to-end differentiable MPC improves drone flight under wind","One loss teaches drone to denoise IMU and tune control","Drone adapts to wind via self-supervised differentiable MPC"],"cache_read_input_tokens":3200,"weakest_assumption_plain":"The training signal is the agreement between the IMU network's attitude estimate and the MPC model's prediction, so if both are wrong in the same way, the loss can shrink while the system remains wrong.","fun_headline_variants_meta":{"raw":{"variants":["Self-supervised drone tunes its own controller, no labels","End-to-end differentiable MPC improves drone flight under wind","One loss teaches drone to denoise IMU and tune control","Drone adapts to wind via self-supervised differentiable MPC"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.000213,"raw_usage":{"total_tokens":1434,"prompt_tokens":967,"completion_tokens":467,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":583,"completion_tokens_details":{"reasoning_tokens":399}},"tokens_in":583,"tokens_out":467,"duration_ms":5314,"temperature":1.0,"reasoning_tokens":399,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-16T12:15:01.348476+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Collect a flight with a motion-capture or other ground-truth attitude reference and train the exact loop; if the discrepancy decreases while the absolute attitude error against ground truth stays flat or grows, the co-adaptation failure is present. Alternatively, inject a constant gyroscope bias and check whether the learned IMU filter removes it or the learned mass and inertia values absorb it.","supporting_citations":[],"review_version":1}