Skip to content

Remove Percival from AMPL examples - #202

Merged
dpo merged 4 commits into
JuliaSmoothOptimizers:mainfrom
arnavk23:hg
Apr 7, 2026
Merged

dpo merged 4 commits into
JuliaSmoothOptimizers:mainfrom
arnavk23:hg

Conversation

@arnavk23

@arnavk23 arnavk23 commented Apr 6, 2026 •

Copy link
Copy Markdown
Contributor

@dpo @tmigot
AmplNLReader does not support the linear API that Percival's SlackModel requires. Only Ipopt is now used for AMPL problems in the benchmark examples.
Fixes #172

… to missing linear API support

AmplNLReader does not support the linear API that Percival's SlackModel requires.
Only Ipopt is now used for AMPL problems in the benchmark examples.
Copilot AI review requested due to automatic review settings April 6, 2026 01:06

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Updates the AMPL benchmarking example to only use solvers supported by AmplNLReader, removing the unsupported Percival/SlackModel path from the example workflow.

Changes:

  • Removes Percival from the AMPL benchmark example imports.
  • Removes the Percival solver entry so AMPL benchmarks run only with Ipopt.
  • Adds a note explaining why Percival is excluded.

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

Comment thread examples/bmark_ampl.jl Outdated
Comment thread examples/bmark_ampl.jl Outdated
Comment thread examples/bmark_ampl.jl Outdated
@arnavk23

arnavk23 commented Apr 6, 2026 •

Copy link
Copy Markdown
Contributor Author

@tmigot Made the changes

SolverBenchmark.jl> julia --project=examples examples/bmark_ampl.jl
[ Info: running solver ipopt_lm
[ Info:          Solver             Name    nvar    ncon           status    iter      Time      f(x)      Dual    Primal  

******************************************************************************
This program contains Ipopt, a library for large-scale nonlinear optimization.
 Ipopt is released as open source code under the Eclipse Public License (EPL).
         For more information visit https://github.com/coin-or/Ipopt
******************************************************************************

[ Info:        ipopt_lm         brownden       4       0      first_order      16   5.8e-01   8.6e+04   8.7e-07   0.0e+00
[ Info:        ipopt_lm          genrose     500       0      first_order    1202   9.9e+00   1.0e+00   5.7e-06   0.0e+00
[ Info:        ipopt_lm            hs006       2       1      first_order       9   1.5e-01   4.6e-21   5.4e-11   7.1e-10
[ Info:        ipopt_lm            hs009       2       1      first_order       6   8.0e-03  -5.0e-01   7.4e-07   2.8e-14
[ Info:        ipopt_lm            hs033       3       2      first_order      12   1.0e-02  -4.6e+00   1.9e-06   3.4e-12
[ Info:        ipopt_lm             hs10       2       1      first_order      11   1.5e-02  -1.0e+00   6.7e-07   6.1e-09
[ Info:        ipopt_lm             hs11       2       1      first_order       6   1.1e-02  -8.5e+00   1.4e-07   8.7e-10
[ Info:        ipopt_lm             hs14       2       2      first_order       5   1.3e-02   1.4e+00   8.0e-11   9.1e-11
[ Info:        ipopt_lm              hs5       2       0      first_order       6   1.3e-02  -1.9e+00   3.6e-08   0.0e+00
[ Info:        ipopt_lm              hs6       2       1      first_order       9   1.2e-02   4.6e-21   5.4e-11   7.1e-10
[ Info:        ipopt_lm          rosenbr       2       0      first_order      42   9.8e-02   1.2e-14   8.3e-07   0.0e+00
[ Info: running solver ipopt
[ Info:          Solver             Name    nvar    ncon           status    iter      Time      f(x)      Dual    Primal  
[ Info:           ipopt         brownden       4       0      first_order       7   2.3e-01   8.6e+04   2.0e-07   0.0e+00
[ Info:           ipopt          genrose     500       0      first_order     361   7.1e-01   1.0e+00   4.1e-12   0.0e+00
[ Info:           ipopt            hs006       2       1      first_order       5   7.0e-03   0.0e+00   0.0e+00   0.0e+00
[ Info:           ipopt            hs009       2       1      first_order       3   6.0e-03  -5.0e-01   1.2e-11   2.3e-13
[ Info:           ipopt            hs033       3       2      first_order      10   1.1e-02  -4.6e+00   6.4e-08   2.7e-08
[ Info:           ipopt             hs10       2       1      first_order      11   5.0e-03  -1.0e+00   1.1e-08   1.4e-08
[ Info:           ipopt             hs11       2       1      first_order       7   7.0e-03  -8.5e+00   9.3e-10   1.4e-10
[ Info:           ipopt             hs14       2       2      first_order       6   8.0e-03   1.4e+00   2.2e-08   4.2e-09
[ Info:           ipopt              hs5       2       0      first_order       7   7.0e-03  -1.9e+00   3.3e-09   0.0e+00
[ Info:           ipopt              hs6       2       1      first_order       5   7.0e-03   0.0e+00   0.0e+00   0.0e+00
[ Info:           ipopt          rosenbr       2       0      first_order      21   2.1e-02   3.7e-21   1.7e-10   0.0e+00

Removed unused imports and redundant solver definitions.
@tmigot
tmigot requested review from dpo and tmigot April 6, 2026 15:08
@tmigot

tmigot commented Apr 6, 2026

Copy link
Copy Markdown
Member

@dpo What do you think of this solution?

@codecov

codecov Bot commented Apr 6, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 86.19%. Comparing base (4c0fcd2) to head (df98861).
⚠️ Report is 41 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #202      +/-   ##
==========================================
+ Coverage   76.71%   86.19%   +9.48%     
==========================================
  Files          12       10       -2     
  Lines         292      297       +5     
==========================================
+ Hits          224      256      +32     
+ Misses         68       41      -27     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@dpo
dpo merged commit a46ec68 into JuliaSmoothOptimizers:main Apr 7, 2026
20 checks passed
@arnavk23
arnavk23 deleted the hg branch April 7, 2026 14:18
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.

Fix Examples CI

4 participants