From 805b11a6a33bec42fa629c697277ac4d2a750371 Mon Sep 17 00:00:00 2001 From: Michiel Cottaar <MichielCottaar@protonmail.com> Date: Thu, 18 Jul 2024 10:28:50 +0100 Subject: [PATCH] Set mu_strategy to adaptive This makes the IPOPT optimiser more robust --- src/build_sequences.jl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/build_sequences.jl b/src/build_sequences.jl index d563f7d..2d5487f 100644 --- a/src/build_sequences.jl +++ b/src/build_sequences.jl @@ -93,7 +93,7 @@ function build_sequence(f::Function, scanner::Union{Nothing, Scanner}, model::Mo end end -function build_sequence(f::Function, scanner::Union{Nothing, Scanner}, optimiser_constructor; optimise=true, n_attempts=1000, kwargs...) +function build_sequence(f::Function, scanner::Union{Nothing, Scanner}, optimiser_constructor; optimise=true, n_attempts=100, kwargs...) if optimise || GLOBAL_MODEL[] == IGNORE_MODEL model = Model(optimizer_with_attributes(optimiser_constructor, [string(k) => v for (k, v) in kwargs]...)) else @@ -102,8 +102,8 @@ function build_sequence(f::Function, scanner::Union{Nothing, Scanner}, optimiser build_sequence(f, scanner, model, optimise, n_attempts) end -function build_sequence(f::Function, scanner::Union{Nothing, Scanner}=Default_Scanner; print_level=0, kwargs...) - build_sequence(f, scanner, Ipopt.Optimizer; print_level=print_level, kwargs...) +function build_sequence(f::Function, scanner::Union{Nothing, Scanner}=Default_Scanner; print_level=0, mu_strategy="adaptive", kwargs...) + build_sequence(f, scanner, Ipopt.Optimizer; print_level=print_level, mu_strategy=mu_strategy, kwargs...) end build_sequence(f::Function, optimiser_constructor; kwargs...) = build_sequence(f, Default_Scanner, optimiser_constructor; kwargs...) -- GitLab