Skip to content

Fix LogDDP single-shooting regressions#166

Merged
astomodynamics merged 2 commits into
masterfrom
fix/logddp-single-shooting-regressions
Apr 3, 2026
Merged

Fix LogDDP single-shooting regressions#166
astomodynamics merged 2 commits into
masterfrom
fix/logddp-single-shooting-regressions

Conversation

@astomodynamics
Copy link
Copy Markdown
Owner

@astomodynamics astomodynamics commented Apr 3, 2026

  • Align Python LogBarrierOptions binding with C++ options surface
  • Re-roll nominal trajectory from control sequence on cold start and warm start
  • Add regression tests for cold-start and warm-start trajectory consistency
  • Fix stale relaxed_log_barrier_ parameters when reusing solver instance with new options on cold start

Align the Python bindings with the new LogBarrierOptions surface and re-roll nominal trajectories for both cold and warm starts.

Add regression coverage for inconsistent cold-start guesses and reused warm-start trajectories.
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Fixes regressions in the LogDDP single-shooting refactor by ensuring the solver’s nominal trajectory is always dynamically consistent with the current control sequence (both for cold starts and warm-start reuse), and by aligning the Python options binding with the updated C++ options surface.

Changes:

  • Re-roll the nominal state trajectory from the current control sequence during LogDDPSolver::initialize (cold start + warm start).
  • Remove remaining multi-shooting/defect-tracking plumbing from LogDDP and its options surface/bindings.
  • Add C++ regression tests that fail when state guesses are reused without re-rolling from controls.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/cddp_core/logddp_solver.cpp Rolls out nominal trajectory from controls on init; removes defect/multi-shooting logic from LogDDP flow.
include/cddp-cpp/cddp_core/logddp_solver.hpp Removes LogDDP internal storage tied to multi-shooting/defects.
include/cddp-cpp/cddp_core/options.hpp Updates LogBarrierOptions to single-shooting surface (no longer inherits multi-shooting options).
python/src/bind_options.cpp Aligns Python LogBarrierOptions binding with the updated C++ single-shooting options.
tests/cddp_core/test_logddp_solver.cpp Adds regression tests for cold-start and warm-start trajectory consistency; updates existing tests to removed options.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/cddp_core/logddp_solver.cpp
@astomodynamics astomodynamics added bug Something isn't working documentation Improvements or additions to documentation labels Apr 3, 2026
Agent-Logs-Url: https://github.com/astomodynamics/cddp-cpp/sessions/a4f72287-d5cf-4268-86b0-42536d2b2d8d

Co-authored-by: astomodynamics <49183997+astomodynamics@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 3, 2026

Just as a heads up, I was blocked by some firewall rules while working on your feedback. Expand below for details.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • gitlab.com
    • Triggering command: /usr/lib/git-core/git-remote-https /usr/lib/git-core/git-remote-https origin REDACTED (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@astomodynamics astomodynamics merged commit 7deffff into master Apr 3, 2026
2 checks passed
@astomodynamics astomodynamics deleted the fix/logddp-single-shooting-regressions branch April 3, 2026 18:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants