Skip to content

percival#369

Merged
PierreMartinon merged 2 commits into
mainfrom
percival
Mar 15, 2025
Merged

percival#369
PierreMartinon merged 2 commits into
mainfrom
percival

Conversation

@PierreMartinon
Copy link
Copy Markdown
Member

Percival seems to converge properly, although with much larger allocations and time.
For instance, on the double integrator (min energy) with only 25 steps

docp, nlp = direct_transcription(prob.ocp, grid_size=25)
println("ipopt")
@btime ipopt(nlp, print_level=0)
println("madnlp")
@btime madnlp(nlp, print_level=MadNLP.ERROR)
println("percival")
# @btime dsol = percival(nlp)
# same allocs/time as calling percival(nlp)
solver = PercivalSolver(nlp)
@btime solve!(solver, nlp) 

we obtain

ipopt
  1.744 ms (8308 allocations: 402.90 KiB)
madnlp
  939.964 μs (9379 allocations: 895.18 KiB)
percival
  2.552 s (24910761 allocations: 1.55 GiB)

With the standard 250 steps Percival currently fails with a timeout.
We should investigate why there is such a difference.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Mar 14, 2025

Breakage test results
Date: 2025-03-14 16:40:10

Package name latest stable
OptimalControl.jl compat: v0.13.3 compat: v0.13.3

@PierreMartinon PierreMartinon merged commit b76442c into main Mar 15, 2025
@PierreMartinon PierreMartinon deleted the percival branch March 15, 2025 14:56
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.

1 participant