diff --git a/src/build_sequences.jl b/src/build_sequences.jl index f6dc6a0e801218382291dc974787b1ce2b19fc7e..6a4b1f6b8a09ae8ace3e70f8866ff92e084ff3af 100644 --- a/src/build_sequences.jl +++ b/src/build_sequences.jl @@ -76,12 +76,11 @@ function build_sequence(f::Function, scanner::Union{Nothing, Scanner}, model::Tu if !iszero(num_variables(jump_model)) optimise_with_cost_func!(jump_model, total_cost_func(), n_attempts) prev_cost_func = nothing - prev_opt_value = nothing for cost_func in iterate_cost() if !isnothing(prev_cost_func) - @constraint jump_model prev_cost_func <= prev_opt_value + @constraint jump_model prev_cost_func <= value(prev_cost_func) end - prev_opt_value = optimise_with_cost_func!(jump_model, cost_func, n_attempts) + optimise_with_cost_func!(jump_model, cost_func, n_attempts) prev_cost_func = cost_func end end @@ -152,7 +151,6 @@ function optimise_with_cost_func!(jump_model::Model, cost_func, n_attempts) error("Optimisation failed to converge. The following errors were raised: $err_string. Example errors for each type are printed above.") end backend(jump_model).optimizer.model.inner.x .= min_values - return min_objective end function build_sequence(f::Function, scanner::Union{Nothing, Scanner}=Default_Scanner; optimise=true, n_attempts=20, print_level=0, mu_strategy="adaptive", max_iter=1000, kwargs...)