Skip to content

[HOLD] Advance algebraic states in MHE windows#1064

Draft
mickaelbegon wants to merge 2 commits into
pyomeca:masterfrom
mickaelbegon:codex/fix-971-mhe-algebraic-states
Draft

[HOLD] Advance algebraic states in MHE windows#1064
mickaelbegon wants to merge 2 commits into
pyomeca:masterfrom
mickaelbegon:codex/fix-971-mhe-algebraic-states

Conversation

@mickaelbegon

@mickaelbegon mickaelbegon commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Summary

  • advance algebraic-state initial guesses with each receding-horizon window
  • pass updated a_init values through update_initial_guess
  • preserve the distinct window-selection behavior of standard, cyclic, and multi-cyclic MHE
  • support collocation point selection in the multi-cyclic path
  • add a regression test for shifting algebraic states and repeating the terminal value

Root cause

RecedingHorizonOptimization.advance_window() updated state, control, and parameter initial guesses, but never read Solution.decision_algebraic_states() and never forwarded a_init. Algebraic variables therefore retained stale values between windows.

Validation

  • targeted regression test: 1 passed
  • complete tests/shard1/test_mhe.py: 7 passed, 1 skipped
  • the additional ACADOS case could not be collected locally because acados_template is not installed; the failure occurs while importing the ACADOS interface, before the modified path is executed

Closes #971


This change is Reviewable

@mickaelbegon mickaelbegon changed the title Advance algebraic states in MHE windows [HOLD] Advance algebraic states in MHE windows Jul 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

algebraic_states not handled correctly in mhe

1 participant