Pith. sign in

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 →

arxiv 2608.09272 v1 pith:7ITOGSPA submitted 2026-08-10 eess.SY cs.ROcs.SY

classification eess.SYcs.ROcs.SY
keywords real-timeNMPCsequentialquadraticprogrammingunderactuateddoublependulumPendubotAcrobotswing-upcontrolADMMHPIPM
verification ladder T0 review T1 audit T2 compute T3 formal

The pith

A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.

The reading

This paper claims that a real-time nonlinear model predictive controller built on sequential quadratic programming can swing up and stabilize underactuated two-link pendulums on physical CloudPendulum hardware, without switching policies or precomputed trajectories. In the authors' experiments, the controller succeeds in all Pendubot trials, in all undisturbed Acrobot trials, and in 70% of Acrobot trials with applied torque disturbances, for an average swing-up success rate above 90%. The point matters because it shows a model-based optimal-control approach can handle the same benchmark that has recently been tackled with reinforcement learning, while running at 100–400 Hz on the remote platform. The same optimization-based policy performs swing-up, stabilization, and disturbance recovery.

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.

Watch

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

Editorial extensions of the paper, not claims the author makes directly.

  • 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.
Share X Bluesky LinkedIn Reddit HN

Signed reviews

No signed human review yet.

Editorial analysis

A structured set of objections, weighed in public.

Desk editor's note, referee report, and a circularity audit.

Referee Report

3 major / 4 minor

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)
  1. [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.
  2. [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.
  3. [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)
  1. [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.
  2. [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.
  3. [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.
  4. [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

0 steps flagged · score 0.0 of 10

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 9 free parameters · 6 assumptions · 0 invented entities

The central empirical claim is supported by a large number of hand-tuned parameters (cost weights, tolerances, iteration counts, limits, disturbance schedule) and by unstated horizon and sampling parameters. The Acrobot friction compensation is an ad hoc modification of the nominal problem. No new physical entities are introduced.

free parameters (9)
  • Pendubot cost weights = w_v=3e-2, w_u=2e-3, w_p=4.2, W_q=diag(0,2)
    Hand-tuned in Section III-D1 to achieve reliable swing-up and stabilization.
  • Acrobot cost weights = W_v^A=diag(0.6,0.24), W_u^A=diag(0,3e-2), w_e=200, w_t=120
    Hand-tuned in Section III-D2; the paper states the final solver choices 'yielded the best performance after tuning'.
  • SQP and QP tolerances, iteration limits = Table I values (e.g., SQP tol 1e-1 ADMM, 1e-2 HPIPM; max 4-6 SQP iterations)
    Chosen by the authors to fit the real-time budget; not derived from any criterion.
  • Actuator torque and velocity limits in the MPC = Pendubot: 0.1 Nm, 20 rad/s; Acrobot: 0.08 Nm, 30/25 rad/s
    The paper says limits are set lower than actual maxima to avoid frequent violations (footnote 2); these choices affect the optimization and are not determined by hardware specs alone.
  • Acrobot friction compensation torque limit = 0.005 Nm
    Ad hoc addition at the passive joint introduced solely to improve robustness on the real system (Section III-C2).
  • Disturbance schedule = Pendubot: 0.1 s random torque at t=20 and 40 s; Acrobot: only at t=40 s
    Chosen by the experimenters; the asymmetry between systems is unexplained.
  • MPC horizon length N = not reported
    A load-bearing parameter of the finite-horizon optimal control problem (1); the reader cannot reproduce the controller without it.
  • MPC sampling interval dt = not reported
    The paper reports control frequency (>100 Hz, means ~400/240 Hz) but not the sampling period used in the discretized dynamics (7)-(8); unclear if the rate is fixed or variable.
  • Solver allocation = ADMM for Pendubot, HPIPM for Acrobot
    Selected after tuning; not motivated by an analysis of which solver fits which system.
assumptions (6)
  • domain assumption The identified model parameters (masses, inertias, friction coefficients; Eq. 12-16, 23) describe the test hardware accurately.
    The paper states 'All parameter values have been determined by performing system identification on the pendulum hardware', but gives no identification procedure, error bars, or validation.
  • domain assumption Semi-implicit Euler integration with the implied sampling interval is an adequate discretization for the MPC prediction model.
    Eq. (7)-(8); the discretization accuracy is not analyzed.
  • domain assumption A limited number of SQP iterations (4-6) yields an acceptable solution of the nonlinear optimal control problem at each step.
    Section III-B and Table I; no convergence analysis or suboptimality bound is given.
  • 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.
    Section III-C2: 'To improve robustness on the real system, we allow a small control input at the nominally passive joint'. This deviates from the strictly passive-joint formulation.
  • domain assumption Full state (joint positions and velocities) is available and sufficiently accurate at the control rate.
    The paper does not describe the state estimation or sensor noise; the MPC uses the 'current state estimate' in Section III-B.
  • domain assumption The remote CloudPendulum hardware episodes are independent and representative of the competition evaluation.
    Section IV: 10 independent episodes per scenario; no information about hardware variability or network latency.

how reviews work

0 comments
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 reproduced from arXiv: 2608.09272 by the authors.

Figure 2
Figure 2. Acrobot performance over 60 s episodes (we run 10 independent episodes per scenario). Median uptime is 51.48 s (0.858) without distur￾bances and 41.82 s (0.697) with torque disturbances. We achieve a 100% and 70% swing-up success rate respectively. D. MPC Cost Functions For both the Pendubot and Acrobot, the model predictive controller penalizes joint velocities, control effort, and task￾space tracking errors3 . The… view at source ↗
Figure 1
Figure 1. Pendubot performance over 60 s episodes (we run 10 independent episodes per scenario). Median uptime is 55.5 s (0.925) without distur￾bances and 52.38 s (0.873) with torque disturbances. Both scenarios achieve a 100% swing-up success rate. The torque and velocity limits are2 : |τ | ≤ 0.1 N m, |q˙1|, |q˙2| ≤ 20 rad/s. 2) Acrobot: For the Acrobot, the shoulder joint is passive and the elbow joint is actuated. Therefor… view at source ↗
Figure 3
Figure 3. Representative 60 s Pendubot experiments starting from the downward configuration: (a) nominal swing-up and stabilization and (b) recovery after applied torque disturbances. The controller returns the system to the upright equilibrium after each disturbance. The results indicate that the proposed structure-exploiting MPC approach can generate the nonlocal motions required for swing-up while also providing feedback s… view at source ↗
Figures from the paper (1 more)
Figure 4
Figure 4. Figure 4: Representative 60 s Acrobot experiments starting from the downward configuration: (a) nominal swing-up and stabilization and (b) recovery after applied torque disturbances. The controller returns the system to the upright equilibrium after each disturbance [PITH_FULL_…

Discussion (0). Continue with ORCID to comment.

Reference graph

Works this paper leans on

11 extracted references · 9 canonical work pages

  1. [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

  2. [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

  3. [3]

    Reinforcement Learning for Robust Athletic Intelligence: Lessons from the 2nd’AI Olympics with RealAIGym’Competition,

    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

  4. [4]

    Swinging pendulums on the cloud: Digitization of simula- tion & experimental infrastructure for feedback-based active learning,

    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

  5. [5]

    Open source dual-purpose acrobot and pendubot platform: Bench- marking control algorithms for underactuated robotics,

    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

  6. [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

  7. [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

  8. [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

Show all 11 references
  1. [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

  2. [10]

    Numerical optimization,

    S. Wright, J. Nocedal,et al., “Numerical optimization,”Springer Science, vol. 35, no. 67-68, p. 7, 1999

  3. [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...

Pith tools

Reviewed August 11, 2026 · model on record in the stance chip above.