REVIEW 3 major objections 4 minor 11 references
Real-Time Nonlinear MPC via Sequential Quadratic Programming with Structure-Exploiting ADMM and Interior-Point Methods for Underactuated Double-Pendulum Swing-Up
T0 review · 3 major / 4 minor · reviewed 2026-08-11 · deepseek-v4-flash
Pith's one-line read The paper claims that a real-time SQP-based MPC controller can swing up and stabilize underactuated two-link pendulums on physical hardware, achieving >90% average success and recovering from torque disturbances.
desk verdict Useful Pendubot hardware result, but the Acrobot success rates don't test the stated underactuated problem because of the 5 mNm shoulder torque, and the '>90%' average buries a 70% cell. read the letter →
The pith
A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.
The reading
What carries the argument
The load-bearing device is the inverse-dynamics SQP-MPC formulation: instead of optimizing torques directly, the controller optimizes generalized accelerations $\dot{v}_k$, then recovers the required torques via the recursive Newton–Euler algorithm. This makes the underactuation constraint explicit as the equality $(I-S)[M(q_k)\dot{v}_k + C(q_k,v_k)+g(q_k)+d(v_k)] = 0$, and the actuator limit as an inequality on the actuated torque. Each SQP iteration linearizes dynamics and constraints around the current trajectory into a structured QP whose temporal sparsity is exploited by a stagewise ADMM solver or by HPIPM; warm starting from the previous control cycle keeps the computation within the real-time budget. The intended effect is that nonlinear dynamics, actuator saturation, and the passive joint are all enforced within a single optimization, so swing-up and stabilization emerge from one receding-horizon policy.
What would settle it
Repeat the Acrobot experiments with the passive-joint torque set strictly to zero (e.g., by removing the friction-compensation term in Section III-C2) on the same CloudPendulum hardware. If the swing-up success rate drops materially below the reported 100%/70%, or the system fails to swing up at all, then the reported Acrobot performance depends on the extra actuation rather than on the SQP-MPC controller solving the underactuated task.
Extended reading notes
Core claim
On the paper's own terms, the central claim is that the SQP-based MPC controller is a viable global control policy for the underactuated swing-up benchmark. Using generalized acceleration as the control variable and imposing the passive joint's zero-torque condition through inverse dynamics, the controller turns the nonlinear optimal control problem into a sequence of structured QPs solved by stagewise ADMM or HPIPM. Empirically, the Pendubot achieves 100% swing-up success with and without disturbances, with median uptime 55.5 s and 52.38 s out of 60 s episodes; the Acrobot achieves 100% and 70% success, with median uptime 51.48 s and 41.82 s. The controller runs above 100 Hz, with means around 400 Hz (Pendubot) and 240 Hz (Acrobot) on the CloudPendulum platform. The paper also states that the Acrobot results currently rely on a small 0.005 Nm 'friction compensation' torque at the nominally passive shoulder joint.
Load-bearing premise
The Acrobot tests allow a small torque up to 0.005 Nm at the nominally passive shoulder for friction compensation; if the benchmark requires that joint to be fully passive, or if that torque materially assists the swing-up, the Acrobot success rates do not demonstrate a solution to the underactuated task.
Editorial extensions
If this is right
- For the Pendubot benchmark, the controller succeeds in all 20 trials and maintains upright stabilization for a median of 55.5 s (undisturbed) and 52.38 s (with disturbances) out of 60 s episodes.
- For the Acrobot benchmark, the controller succeeds in all 10 undisturbed trials but only 7 of 10 disturbance trials, with median uptime 51.48 s and 41.82 s respectively.
- The same controller—with no policy switching and no precomputed swing-up trajectory—generates both the energy-building swing-up motion and the stabilizing feedback, and recovers after torque disturbances.
- The structure-exploiting QP solvers keep the controller fast enough for real-time use on remote hardware: above 100 Hz, with means near 400 Hz on Pendubot and 240 Hz on Acrobot.
- Reliable Acrobot performance currently requires a 0.005 Nm 'friction compensation' torque at the nominally passive shoulder; the paper lists removing this as future work.
Reading between the lines
- Because the controller initializes its trajectory guess to zero and still swings up, the SQP recursion itself is doing the motion planning; this suggests the approach may transfer to new hardware mostly by retuning weights, provided the model is updated.
- The 0.005 Nm shoulder torque on the Acrobot, while small, is not proven negligible relative to the friction and gravity torques in the benchmark; a fair test of the underactuated claim would zero this term and measure the resulting success rate.
- The reported '>90% average' pools two systems with different success rates (100% and 85% on average); competition scoring that weights the Acrobot more heavily, or enforces a strictly passive shoulder, could lower the headline number.
- The 400 Hz/240 Hz computation headroom leaves room for online system identification inside the control loop, which the paper names as future work and which would address the competition's unknown-parameter setting.
Signed reviews
Editorial analysis
A structured set of objections, weighed in public.
Referee Report
Summary. The paper proposes a real-time nonlinear model predictive control (NMPC) scheme for the swing-up and stabilization of underactuated double pendulums, specifically the Pendubot and Acrobot configurations in the 4th AI Olympics with RealAIGym competition. The controller uses sequential quadratic programming with an inverse-dynamics parameterization in which generalized accelerations are the optimization variables; the resulting QP subproblems are solved by a stagewise ADMM solver or by HPIPM. The method is hardware-evaluated on CloudPendulum platforms over 60-second episodes, with 10 runs per scenario, under nominal conditions and with applied torque disturbances. The authors report 100% swing-up success for the Pendubot in both scenarios, 100% and 70% for the Acrobot without and with disturbances, respectively, and a greater-than-90%-on-average success rate in the conclusion. The paper claims the controller is reliable and robust for underactuated double-pendulum swing-up.
Significance. If the claims held for the full underactuated problem, the paper would be a useful demonstration that structure-exploiting SQP-based NMPC, with an inverse-dynamics control formulation, can run in real time on low-cost hardware benchmarks and achieve high swing-up success rates with disturbance recovery. The manuscript has clear strengths: it reports physical hardware experiments rather than simulation only, uses multiple independent episodes per scenario, reports medians and percentiles, provides representative trajectories and videos, and discloses all model parameters and cost weights. The main significance, however, is conditional on the Acrobot experiments actually solving the underactuated Acrobot problem as formalized by Eq. (10). Because the authors allow a small torque at the nominally passive shoulder joint for the Acrobot, the reported Acrobot success rates do not directly test the underactuated problem they define, which substantially weakens the contribution as stated.
major comments (3)
- [III-C2] The underactuation constraint (10) enforces zero generalized force at the passive joint. For the Acrobot, this means the shoulder torque must be zero. However, Section III-C2 states that 'we allow a small control input at the nominally passive joint, with its torque limited to 0.005 Nm.' This changes the Acrobot from the single-actuator system S=[0;1] into a two-input system with a weak shoulder actuator. The allowed 5 mNm torque exceeds the modeled static friction at the shoulder, f1=3.05e-3 Nm (Eq. (23)), so the torque is not merely canceling passive friction; it is an active drive that can influence q1 during swing-up. Consequently, the reported Acrobot success rates (100% nominal, 70% with disturbance) cannot be attributed to SQP-MPC on the underactuated Acrobot as defined by the problem formulation; they reflect a weakly actuated variant. This is acknowledged in Section V, where the authors state that they 'need friction compensation to achieve reliable performance on the Acrobot system.' I request that the authors either (a) run the Acrobot experiments with strictly zero shoulder torque and report whether the claimed success rates hold, or (b) explicitly reframe the contribution and claims as applying to the Pendubot and to a weakly-actuated Acrobot variant with friction-compensation assistance.
- [IV-Verdict and Conclusion] The conclusion's claim of a 'swing-up success rate greater than 90% on average' averages over four scenarios: Pendubot without/with disturbances (100%, 100%) and Acrobot without/with disturbances (100%, 70%). This aggregation hides the Acrobot-with-disturbance scenario, for which the success rate is 70%. With only 10 trials per scenario, a 70% rate has a wide confidence interval and is not strong evidence of reliability. Additionally, the success criterion for disturbance experiments differs from the nominal criterion (recovery and subsequent 5 s of stabilization), so averaging the two types of success rates is not a well-defined aggregate. The paper should report and emphasize the per-scenario rates and should at minimum state that the Acrobot disturbance-recovery rate was 70% in the abstract or conclusion rather than relying on an average that masks it.
- [V-Conclusion] The future-work sentence 'Currently, we need friction compensation to achieve reliable performance on the Acrobot system' is an explicit limitation that undercuts the central claim of 'reliable swing-up and stabilization performance' for the underactuated Acrobot. Because the paper's abstract and title refer to underactuated double-pendulum swing-up generally, the reader will reasonably expect the controller to work on the Acrobot in its passive-shoulder formulation. The limitation should be disclosed in the abstract or at the start of the results section, not only in the conclusion's future-work paragraph.
minor comments (4)
- [Fig. 1 and Fig. 2] The figure captions contain a typo: '60 sepisodes' should read '60-second episodes'. Also, the caption for Fig. 2 says 'we achieve a 100% and 70% swing-up success rate respectively', but the bar chart shows success rates of 100% and 70%; please clarify the ordering and whether 'respectively' refers to non-disturbance and disturbance scenarios.
- [IV-Experimental Setup] The uptime definition in Eq. (33) uses a count with total N_ep, but the text defines the episode duration as T_ep=60 s without specifying the relationship between N_ep and T_ep (i.e., the number of control samples). Please define N_ep explicitly and ensure the reported uptime percentages are consistent with the time axis in Fig. 4(b), which extends to 70 s despite the stated 60 s episode length.
- [IV-Verdict] The representative trajectories are labeled 'Experiment 1/10' for both nominal Pendubot and Acrobot runs and 'Experiment 1/10'/'Experiment 7/10' for the disturbance runs. Please state how these representative runs were selected (e.g., median uptime run) to avoid the impression of cherry-picking.
- [References] Reference [7] is the basis for the stagewise ADMM method and the SQP formulation; consider citing the exact conference/journal version with page numbers, and also cite the HPIPM paper [8] in the experimental section where it is used for the Acrobot.
Circularity Check
No circularity: the controller's performance is an empirical measurement; solver and cost parameters are tuned inputs, not derived predictions.
full rationale
The paper's central claim is an empirical one: the proposed SQP-based MPC achieves swing-up and stabilization on the CloudPendulum hardware. The derivation chain (nonlinear optimal control to SQP to structured QP to ADMM/HPIPM to receding-horizon torque via inverse dynamics) does not define any output quantity in terms of the claimed result, and no fitted parameter is renamed as a prediction. Cost weights, torque limits, SQP tolerances, and solver choices are explicitly tuned (e.g., 'as these choices yielded the best performance after tuning'), but they are inputs to the controller, not quantities derived from the measured success rates. The model parameters are obtained by system identification on the same hardware, but they are used to build the prediction model, and the swing-up success is measured independently from the resulting closed-loop behavior; this is standard practice and not circular. The only notable internal tension is the Acrobot experiments: Section III-C2 states 'we allow a small control input at the nominally passive joint, with its torque limited to 0.005 Nm,' which is in tension with the strict passive-joint constraint (I-S) tau = 0 in Eq. (10). However, this is an experimental-validity concern about whether the Acrobot test preserves the underactuated problem, not a case of the paper's prediction being equivalent to its input by construction. The reported success rates are still measured outcomes rather than consequences of the model equations, so no circular step satisfying the paper-specific reduction test can be exhibited. No load-bearing self-citation is present; the cited QP solvers are external, published implementations (Jordana et al.; Frison and Diehl).
Assumptions & free parameters
free parameters (9)
- Pendubot cost weights =
w_v=3e-2, w_u=2e-3, w_p=4.2, W_q=diag(0,2)
- Acrobot cost weights =
W_v^A=diag(0.6,0.24), W_u^A=diag(0,3e-2), w_e=200, w_t=120
- SQP and QP tolerances, iteration limits =
Table I values (e.g., SQP tol 1e-1 ADMM, 1e-2 HPIPM; max 4-6 SQP iterations)
- Actuator torque and velocity limits in the MPC =
Pendubot: 0.1 Nm, 20 rad/s; Acrobot: 0.08 Nm, 30/25 rad/s
- Acrobot friction compensation torque limit =
0.005 Nm
- Disturbance schedule =
Pendubot: 0.1 s random torque at t=20 and 40 s; Acrobot: only at t=40 s
- MPC horizon length N =
not reported
- MPC sampling interval dt =
not reported
- Solver allocation =
ADMM for Pendubot, HPIPM for Acrobot
assumptions (6)
- domain assumption The identified model parameters (masses, inertias, friction coefficients; Eq. 12-16, 23) describe the test hardware accurately.
- domain assumption Semi-implicit Euler integration with the implied sampling interval is an adequate discretization for the MPC prediction model.
- domain assumption A limited number of SQP iterations (4-6) yields an acceptable solution of the nonlinear optimal control problem at each step.
- ad hoc to paper The underactuation constraint (10) can be relaxed for the Acrobot with a 0.005 Nm torque at the passive joint without changing the task's nature.
- domain assumption Full state (joint positions and velocities) is available and sufficiently accurate at the control rate.
- domain assumption The remote CloudPendulum hardware episodes are independent and representative of the competition evaluation.
Cite this review
Pith. "Pith review of Real-Time Nonlinear MPC via Sequential Quadratic Programming with Structure-Exploiting ADMM and Interior-Point Methods for Underactuated Double-Pendulum Swing-Up." pith.science (2026). https://pith.science/paper/7ITOGSPA
@misc{pith2026260809272,
author = {Pith},
title = {Pith review of: Real-Time Nonlinear MPC via Sequential Quadratic Programming with Structure-Exploiting ADMM and Interior-Point Methods for Underactuated Double-Pendulum Swing-Up},
year = {2026},
howpublished = {\url{https://pith.science/paper/7ITOGSPA}},
note = {Machine review of arXiv:2608.09272}
}
read the original abstract
The 4th "AI Olympics with RealAIGym" competition, to be held at IJCAI-ECAI 2026 in Bremen, challenges participants to develop a global control policy for swinging up and stabilizing an underactuated two-link system in its upright position. In contrast to previous editions, participants develop and evaluate their control strategies directly on remotely accessible CloudPendulum hardware, with limited interaction time and without prior knowledge of the system's model parameters. This paper presents an optimal-control-based approach employing real-time nonlinear model predictive control implemented using sequential quadratic programming. The results demonstrate that the proposed SQP-based MPC controller achieves reliable swing-up and stabilization performance, while maintaining robustness against disturbances.
Figures
Figures from the paper (1 more)
Reference graph
Works this paper leans on
-
[1]
Realaigym: Education and research platform for studying athletic intelligence,
F. Wiebe, S. Vyas, L. J. Maywald, S. Kumar, and F. Kirchner, “Realaigym: Education and research platform for studying athletic intelligence,” inProceedings of Robotics Science and Systems Work- shop Mind the Gap: Opportunities and Challenges in the Transition Between Research and Industry, New York, 2022
work page 2022
-
[2]
Rein- forcement Learning for Athletic Intelligence: Lessons from the 1st
F. Wiebe, N. Turcato, A. Dalla Libera, C. Zhang, T. Vincent, S. Vyas, G. Giacomuzzo, R. Carli, D. Romeres, A. Sathuluri,et al., “Rein- forcement Learning for Athletic Intelligence: Lessons from the 1st” AI Olympics with RealAIGym” Competition.,” inIJCAI, pp. 8833– 8837, 2024
work page 2024
-
[3]
F. Wiebe, N. Turcato, A. D. Libera, J. S. B. Choe, B. Choi, T. L. Faust, H. Maraqten, E. Aghadavoodi, M. Cali, A. Sinigaglia,et al., “Reinforcement Learning for Robust Athletic Intelligence: Lessons from the 2nd’AI Olympics with RealAIGym’Competition,”arXiv preprint arXiv:2503.15290, 2025
arXiv 2025
-
[4]
S. Kumar, “Swinging pendulums on the cloud: Digitization of simula- tion & experimental infrastructure for feedback-based active learning,” inChalmers Conference on Teaching and Learning 2025 KUL 2025, p. 37, 2025
work page 2025
-
[5]
F. Wiebe, S. Kumar, L. J. Shala, S. Vyas, M. Javadi, and F. Kirchner, “Open source dual-purpose acrobot and pendubot platform: Bench- marking control algorithms for underactuated robotics,”IEEE Robotics & Automation Magazine, vol. 31, no. 2, pp. 113–124, 2023
work page 2023
-
[6]
Velocity-History-Based Soft Actor-Critic Tackling IROS'24 Competition "AI Olympics with RealAIGym"
T. L. Faust, H. Maraqten, E. Aghadavoodi, B. Belousov, and J. Pe- ters, “Velocity-History-Based Soft Actor-Critic Tackling IROS’24 Competition “AI Olympics with RealAIGym”,”arXiv preprint arXiv:2410.20096, 2024
work page Pith review arXiv 2024
-
[7]
Structure-Exploiting Sequential Quadratic Program- ming for Model-Predictive Control,
A. Jordana, S. Kleff, A. Meduri, J. Carpentier, N. Mansard, and L. Righetti, “Structure-Exploiting Sequential Quadratic Program- ming for Model-Predictive Control,”IEEE Transactions on Robotics, vol. 41, pp. 4960–4974, 2025
work page 2025
-
[8]
Hpipm: a high-performance quadratic programming framework for model predictive control,
G. Frison and M. Diehl, “Hpipm: a high-performance quadratic programming framework for model predictive control,”IF AC- PapersOnLine, vol. 53, no. 2, pp. 6563–6569, 2020
work page 2020
Show all 11 references
-
[9]
Optimization-based control for dynamic legged robots,
P. M. Wensing, M. Posa, Y . Hu, A. Escande, N. Mansard, and A. D. Prete, “Optimization-based control for dynamic legged robots,”IEEE Transactions on Robotics, vol. 40, pp. 43–63, 2024
2024
-
[10]
Numerical optimization,
S. Wright, J. Nocedal,et al., “Numerical optimization,”Springer Science, vol. 35, no. 67-68, p. 7, 1999
1999
-
[11]
Featherstone,Rigid Body Dynamics Algorithms
R. Featherstone,Rigid Body Dynamics Algorithms. Springer US, 2008. 0.10 0.05 0.00 0.05 0.10 Tip position Minimum tip height (0.09) Tip height 0.0 0.5 1.0 1.5 2.0 2.5 3.0Distance to target (rad) q1 dist. from pi q2 dist. from 0 2 0 2 4 6 Joint position q1 q2 30 20 10 0 10 20 30...
2008
Reviewed August 11, 2026 · model on record in the stance chip above.
Discussion (0). Continue with ORCID to comment.