Skip to content

Commit 88b0faf

Browse files
committed
Starting the analysis
1 parent 9661e35 commit 88b0faf

File tree

3 files changed

+819
-9
lines changed

3 files changed

+819
-9
lines changed

benchmarks/OptimizationCUTEst/CUTEst.jmd

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,10 @@ using OptimizationOptimJL
2222
using Ipopt
2323
using OptimizationMOI
2424
using OptimizationMOI: MOI as MOI
25+
# Analysis and plotting
2526
using DataFrames
27+
using Plots
28+
using StatsPlots
2629
```
2730

2831
# Benchmarks
@@ -72,22 +75,36 @@ retcode = Symbol[]
7275
broadcast(c -> sizehint!(c, optz * n), [problem, n_vars, secs, solver, retcode])
7376

7477
for prob_name in unc_problems
78+
@show prob_name
7579
nlp_prob = CUTEstModel(prob_name)
7680
prob = OptimizationNLPModels.OptimizationProblem(nlp_prob, Optimization.AutoForwardDiff())
7781
for optimizer in optimizers
7882
sol = solve(prob, optimizer; maxiters = 1e7)
79-
finalize(nlp_prob)
8083

84+
@info "Solved $(prob_name) with $(optimizer)"
8185
vars, time, alg, code = get_stats(sol, optimizer)
8286

8387
push!(problem, prob_name)
8488
push!(n_vars, vars)
8589
push!(secs, time)
8690
push!(solver, alg)
8791
push!(retcode, code)
92+
8893
end
94+
finalize(nlp_prob)
8995

9096
break
9197
end
9298

93-
```
99+
# Analysis
100+
unc_results = DataFrame(problem = problem, n_vars = n_vars, secs = secs, solver = solver,
101+
retcode = retcode)
102+
103+
@df unc_results scatter(:nvars, :secs,
104+
group = :solver,
105+
xlabel = "n. variables",
106+
ylabel = "secs.",
107+
title = "Time to solution by optimizer and number of vars",
108+
)
109+
```
110+

0 commit comments

Comments
 (0)