Package evaluation of Boscia on Julia 1.13.0-DEV.759 (3bb7518b04*) started at 2025-06-19T19:19:28.892 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Set-up completed after 8.58s ################################################################################ # Installation # Installing Boscia... Resolving package versions... Installed Boscia ─ v0.1.36 Updating `~/.julia/environments/v1.13/Project.toml` [36b166db] + Boscia v0.1.36 Updating `~/.julia/environments/v1.13/Manifest.toml` [7d9fca2a] + Arpack v0.5.4 [6e4b80f9] + BenchmarkTools v1.6.0 ⌅ [0a1fb500] + BlockDiagonals v0.1.42 [f7b14807] + Bonobo v0.1.3 [36b166db] + Boscia v0.1.36 [d360d2e6] + ChainRulesCore v1.25.1 [523fee87] + CodecBzip2 v0.8.5 [944b1d66] + CodecZlib v0.7.8 [861a8166] + Combinatorics v1.0.3 [bbf7d656] + CommonSubexpressions v0.3.1 [34da2185] + Compat v4.16.0 [187b0558] + ConstructionBase v1.6.0 [864edb3b] + DataStructures v0.18.22 [163ba53b] + DiffResults v1.1.0 [b552c78f] + DiffRules v1.15.1 [ffbed154] + DocStringExtensions v0.9.5 [e2ba6199] + ExprTools v0.1.10 [1a297f60] + FillArrays v1.13.0 [26cc04aa] + FiniteDifferences v0.12.32 [f6369f11] + ForwardDiff v1.0.1 [f55ce6ea] + FrankWolfe v0.5.1 [14197337] + GenericLinearAlgebra v0.3.17 [c145ed77] + GenericSchur v0.5.5 [e91730f6] + Hungarian v0.7.0 [b99e6be6] + Hypatia v0.8.2 [92d709cd] + IrrationalConstants v0.2.4 [42fd0dbc] + IterativeSolvers v0.9.4 [692b3bcd] + JLLWrappers v1.7.0 [682c06a0] + JSON v0.21.4 [0f8b85d8] + JSON3 v1.14.3 [7a12625a] + LinearMaps v3.11.4 [2ab3a3ac] + LogExpFunctions v0.3.29 [1914dd2f] + MacroTools v0.5.16 [b8f27783] + MathOptInterface v1.41.0 [3b969827] + MathOptSetDistances v0.2.11 [d8a4904e] + MutableArithmetics v1.6.4 [77ba4419] + NaNMath v1.1.3 [d9ec5142] + NamedTupleTools v0.14.3 [bac558e1] + OrderedCollections v1.8.1 [69de0a69] + Parsers v2.8.3 [3a141323] + PolynomialRoots v1.0.0 [aea7be01] + PrecompileTools v1.3.2 [21216c6a] + Preferences v1.4.3 [92933f4c] + ProgressMeter v1.10.4 [dc4f5ac2] + ProximalCore v0.1.2 [3cdcf5f2] + RecipesBase v1.3.4 [ae029012] + Requires v1.3.1 [708f8203] + Richardson v1.4.2 [efcf1570] + Setfield v1.1.2 [276daf66] + SpecialFunctions v2.5.1 [90137ffa] + StaticArrays v1.9.13 [1e83bf80] + StaticArraysCore v1.4.3 [10745b16] + Statistics v1.11.1 [856f2bd8] + StructTypes v1.11.0 [a759f4b9] + TimerOutputs v0.5.29 [3bb67fe8] + TranscodingStreams v0.11.3 ⌅ [68821587] + Arpack_jll v3.5.1+1 [6e34b625] + Bzip2_jll v1.0.9+0 [efe28fd5] + OpenSpecFun_jll v0.5.6+0 [0dad84c5] + ArgTools v1.1.2 [56f22d72] + Artifacts v1.11.0 [2a0f44e3] + Base64 v1.11.0 [ade2ca70] + Dates v1.11.0 [8ba89e20] + Distributed v1.11.0 [f43a241f] + Downloads v1.7.0 [7b1f6079] + FileWatching v1.11.0 [9fa8497b] + Future v1.11.0 [b77e0a4c] + InteractiveUtils v1.11.0 [ac6e5ff7] + JuliaSyntaxHighlighting v1.12.0 [b27032c2] + LibCURL v0.6.4 [76f85450] + LibGit2 v1.11.0 [8f399da3] + Libdl v1.11.0 [37e2e46d] + LinearAlgebra v1.12.0 [56ddb016] + Logging v1.11.0 [d6f4376e] + Markdown v1.11.0 [a63ad114] + Mmap v1.11.0 [ca575930] + NetworkOptions v1.3.0 [44cfe95a] + Pkg v1.13.0 [de0858da] + Printf v1.11.0 [9abbd945] + Profile v1.11.0 [9a3f8284] + Random v1.11.0 [ea8e919c] + SHA v0.7.0 [9e88b42a] + Serialization v1.11.0 [6462fe0b] + Sockets v1.11.0 [2f01184e] + SparseArrays v1.12.0 [f489334b] + StyledStrings v1.11.0 [4607b0f0] + SuiteSparse [fa267f1f] + TOML v1.0.3 [a4e569a6] + Tar v1.10.0 [8dfed614] + Test v1.11.0 [cf7118a7] + UUIDs v1.11.0 [4ec0a83e] + Unicode v1.11.0 [e66e0078] + CompilerSupportLibraries_jll v1.3.0+1 [deac9b47] + LibCURL_jll v8.14.1+1 [e37daf67] + LibGit2_jll v1.9.0+0 [29816b5a] + LibSSH2_jll v1.11.3+1 [14a3606d] + MozillaCACerts_jll v2025.5.20 [4536629a] + OpenBLAS_jll v0.3.29+0 [05823500] + OpenLibm_jll v0.8.5+0 [458c3c95] + OpenSSL_jll v3.5.0+0 [bea87d4a] + SuiteSparse_jll v7.10.1+0 [83775a58] + Zlib_jll v1.3.1+2 [8e850b90] + libblastrampoline_jll v5.12.0+0 [8e850ede] + nghttp2_jll v1.65.0+0 [3f19e933] + p7zip_jll v17.5.0+2 Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m` Installation completed after 5.62s ################################################################################ # Precompilation # Precompiling PkgEval dependencies... Precompiling package dependencies... Precompilation completed after 149.92s ################################################################################ # Testing # Testing Boscia Status `/tmp/jl_MWHgam/Project.toml` [4c88cf16] Aqua v0.8.13 [f7b14807] Bonobo v0.1.3 [36b166db] Boscia v0.1.36 [864edb3b] DataStructures v0.18.22 [31c24e10] Distributions v0.25.120 [497a8b3b] DoubleFloats v1.4.3 [f55ce6ea] FrankWolfe v0.5.1 [87dc4568] HiGHS v1.18.1 [b8f27783] MathOptInterface v1.41.0 [3b969827] MathOptSetDistances v0.2.11 [82193955] SCIP v0.12.6 [860ef19b] StableRNGs v1.0.3 [10745b16] Statistics v1.11.1 [ade2ca70] Dates v1.11.0 [37e2e46d] LinearAlgebra v1.12.0 [de0858da] Printf v1.11.0 [9a3f8284] Random v1.11.0 [2f01184e] SparseArrays v1.12.0 [8dfed614] Test v1.11.0 Status `/tmp/jl_MWHgam/Manifest.toml` [66dad0bd] AliasTables v1.1.3 [4c88cf16] Aqua v0.8.13 [7d9fca2a] Arpack v0.5.4 [6e4b80f9] BenchmarkTools v1.6.0 ⌅ [0a1fb500] BlockDiagonals v0.1.42 [f7b14807] Bonobo v0.1.3 [36b166db] Boscia v0.1.36 [d360d2e6] ChainRulesCore v1.25.1 [523fee87] CodecBzip2 v0.8.5 [944b1d66] CodecZlib v0.7.8 [861a8166] Combinatorics v1.0.3 [bbf7d656] CommonSubexpressions v0.3.1 [34da2185] Compat v4.16.0 [187b0558] ConstructionBase v1.6.0 [9a962f9c] DataAPI v1.16.0 [864edb3b] DataStructures v0.18.22 [163ba53b] DiffResults v1.1.0 [b552c78f] DiffRules v1.15.1 [31c24e10] Distributions v0.25.120 [ffbed154] DocStringExtensions v0.9.5 [497a8b3b] DoubleFloats v1.4.3 [e2ba6199] ExprTools v0.1.10 [1a297f60] FillArrays v1.13.0 [26cc04aa] FiniteDifferences v0.12.32 [f6369f11] ForwardDiff v1.0.1 [f55ce6ea] FrankWolfe v0.5.1 [14197337] GenericLinearAlgebra v0.3.17 [c145ed77] GenericSchur v0.5.5 [87dc4568] HiGHS v1.18.1 [e91730f6] Hungarian v0.7.0 [b99e6be6] Hypatia v0.8.2 [34004b35] HypergeometricFunctions v0.3.28 [92d709cd] IrrationalConstants v0.2.4 [42fd0dbc] IterativeSolvers v0.9.4 [692b3bcd] JLLWrappers v1.7.0 [682c06a0] JSON v0.21.4 [0f8b85d8] JSON3 v1.14.3 [7a12625a] LinearMaps v3.11.4 [2ab3a3ac] LogExpFunctions v0.3.29 [1914dd2f] MacroTools v0.5.16 [b8f27783] MathOptInterface v1.41.0 [3b969827] MathOptSetDistances v0.2.11 [e1d29d7a] Missings v1.2.0 [d8a4904e] MutableArithmetics v1.6.4 [77ba4419] NaNMath v1.1.3 [d9ec5142] NamedTupleTools v0.14.3 [bac558e1] OrderedCollections v1.8.1 [90014a1f] PDMats v0.11.35 [69de0a69] Parsers v2.8.3 [3a141323] PolynomialRoots v1.0.0 [f27b6e38] Polynomials v4.0.19 [aea7be01] PrecompileTools v1.3.2 [21216c6a] Preferences v1.4.3 [92933f4c] ProgressMeter v1.10.4 [dc4f5ac2] ProximalCore v0.1.2 [43287f4e] PtrArrays v1.3.0 [1fd47b50] QuadGK v2.11.2 [be4d8f0f] Quadmath v0.5.13 [3cdcf5f2] RecipesBase v1.3.4 [189a3867] Reexport v1.2.2 [ae029012] Requires v1.3.1 [708f8203] Richardson v1.4.2 [79098fc4] Rmath v0.8.0 [82193955] SCIP v0.12.6 [efcf1570] Setfield v1.1.2 [a2af1166] SortingAlgorithms v1.2.1 [276daf66] SpecialFunctions v2.5.1 [860ef19b] StableRNGs v1.0.3 [90137ffa] StaticArrays v1.9.13 [1e83bf80] StaticArraysCore v1.4.3 [10745b16] Statistics v1.11.1 [82ae8749] StatsAPI v1.7.1 [2913bbd2] StatsBase v0.34.5 [4c63d2b9] StatsFuns v1.5.0 [856f2bd8] StructTypes v1.11.0 [a759f4b9] TimerOutputs v0.5.29 [3bb67fe8] TranscodingStreams v0.11.3 [ae81ac8f] ASL_jll v0.1.3+0 ⌅ [68821587] Arpack_jll v3.5.1+1 [6e34b625] Bzip2_jll v1.0.9+0 [8fd58aa0] HiGHS_jll v1.11.0+1 [e33a78d0] Hwloc_jll v2.12.1+0 ⌅ [9cc047cb] Ipopt_jll v300.1400.1400+0 [d00139f3] METIS_jll v5.1.3+0 ⌅ [d7ed1dd3] MUMPS_seq_jll v500.600.201+0 [68e3532b] Ncurses_jll v6.5.1+0 [656ef2d0] OpenBLAS32_jll v0.3.29+0 [efe28fd5] OpenSpecFun_jll v0.5.6+0 [05236dd9] Readline_jll v8.2.13+0 [f50d1b31] Rmath_jll v0.5.1+0 [fc9abe76] SCIP_PaPILO_jll v900.200.200+0 [e5ac4fe4] SCIP_jll v900.200.200+0 ⌅ [319450e9] SPRAL_jll v2024.1.18+0 [508c9074] bliss_jll v0.77.0+1 [28df3c45] boost_jll v1.87.0+0 [1317d2d5] oneTBB_jll v2022.0.0+0 [0dad84c5] ArgTools v1.1.2 [56f22d72] Artifacts v1.11.0 [2a0f44e3] Base64 v1.11.0 [ade2ca70] Dates v1.11.0 [8ba89e20] Distributed v1.11.0 [f43a241f] Downloads v1.7.0 [7b1f6079] FileWatching v1.11.0 [9fa8497b] Future v1.11.0 [b77e0a4c] InteractiveUtils v1.11.0 [ac6e5ff7] JuliaSyntaxHighlighting v1.12.0 [b27032c2] LibCURL v0.6.4 [76f85450] LibGit2 v1.11.0 [8f399da3] Libdl v1.11.0 [37e2e46d] LinearAlgebra v1.12.0 [56ddb016] Logging v1.11.0 [d6f4376e] Markdown v1.11.0 [a63ad114] Mmap v1.11.0 [ca575930] NetworkOptions v1.3.0 [44cfe95a] Pkg v1.13.0 [de0858da] Printf v1.11.0 [9abbd945] Profile v1.11.0 [9a3f8284] Random v1.11.0 [ea8e919c] SHA v0.7.0 [9e88b42a] Serialization v1.11.0 [6462fe0b] Sockets v1.11.0 [2f01184e] SparseArrays v1.12.0 [f489334b] StyledStrings v1.11.0 [4607b0f0] SuiteSparse [fa267f1f] TOML v1.0.3 [a4e569a6] Tar v1.10.0 [8dfed614] Test v1.11.0 [cf7118a7] UUIDs v1.11.0 [4ec0a83e] Unicode v1.11.0 [e66e0078] CompilerSupportLibraries_jll v1.3.0+1 [781609d7] GMP_jll v6.3.0+2 [deac9b47] LibCURL_jll v8.14.1+1 [e37daf67] LibGit2_jll v1.9.0+0 [29816b5a] LibSSH2_jll v1.11.3+1 [14a3606d] MozillaCACerts_jll v2025.5.20 [4536629a] OpenBLAS_jll v0.3.29+0 [05823500] OpenLibm_jll v0.8.5+0 [458c3c95] OpenSSL_jll v3.5.0+0 [bea87d4a] SuiteSparse_jll v7.10.1+0 [83775a58] Zlib_jll v1.3.1+2 [8e850b90] libblastrampoline_jll v5.12.0+0 [8e850ede] nghttp2_jll v1.65.0+0 [3f19e933] p7zip_jll v17.5.0+2 Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. Testing Running tests... Precompiling packages... 3632.0 ms ✓ StatsFuns 11448.1 ms ✓ Distributions 2 dependencies successfully precompiled in 18 seconds. 45 already precompiled. Precompiling packages... 4034.2 ms ✓ StatsFuns → StatsFunsChainRulesCoreExt 1 dependency successfully precompiled in 4 seconds. 23 already precompiled. Precompiling packages... 5375.0 ms ✓ Distributions → DistributionsTestExt 1 dependency successfully precompiled in 7 seconds. 49 already precompiled. Precompiling packages... 5833.5 ms ✓ Distributions → DistributionsChainRulesCoreExt 1 dependency successfully precompiled in 7 seconds. 52 already precompiled. seed = 0xb9317cfab9b6cf26 [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Decompostion-Invariant-Frank-Wolfe Line Search Method: Adaptive Lazification: true Lazification Tolerance: 2.0 Absolute dual gap tolerance: 1.000000e-06 Relative dual gap tolerance: 1.000000e-02 Frank-Wolfe subproblem tolerance: 1.000000e-02 Frank-Wolfe dual gap decay factor: 8.000000e-01 Additional kwargs: Total number of variables: 20 Number of integer variables: 20 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Iter Open Bound Incumbent Gap (abs) Gap (rel) Time (s) Nodes/sec FW (ms) LMO (ms) LMO (calls c) FW (its) #activeset #shadow ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Decomposition-Invariant Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Adaptive EPSILON: 0.01 MAXITERATION: 10000 TYPE: Float64 GRADIENstep_typeYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}} [ Info: In memory_mode memory iterates are written back into x0! Different FW variants: Error During Test at /home/pkgeval/.julia/packages/Boscia/WfBWl/test/interface_test.jl:309 Got exception outside of a @test KeyError: key MOI.VariableIndex(1) not found Stacktrace: [1] getindex @ ./dict.jl:478 [inlined] [2] add_constraint(o::SCIP.Optimizer, vi::MathOptInterface.VariableIndex, set::MathOptInterface.EqualTo{Float64}) @ SCIP ~/.julia/packages/SCIP/1OzGv/src/MOI_wrapper/variable.jl:322 [3] compute_inface_extreme_point_subroutine(lmo::FrankWolfe.MathOptLMO{SCIP.Optimizer}, ::Type{MathOptInterface.VariableIndex}, ::Type{MathOptInterface.GreaterThan{Float64}}, valvar::Function; atol::Float64) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/moi_oracle.jl:140 [4] compute_inface_extreme_point_subroutine(lmo::FrankWolfe.MathOptLMO{SCIP.Optimizer}, ::Type{MathOptInterface.VariableIndex}, ::Type{MathOptInterface.GreaterThan{Float64}}, valvar::Function) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/moi_oracle.jl:109 [5] compute_inface_extreme_point(lmo::FrankWolfe.MathOptLMO{SCIP.Optimizer}, direction::FrankWolfe.NegatingArray{Float64, 1, Vector{Float64}}, x::Vector{Float64}; solve_data::Dict{Any, Any}, kwargs::@Kwargs{kwargs::@Kwargs{}}) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/moi_oracle.jl:75 [6] compute_inface_extreme_point(blmo::Boscia.MathOptBLMO{SCIP.Optimizer}, direction::FrankWolfe.NegatingArray{Float64, 1, Vector{Float64}}, x::Vector{Float64}; kwargs::@Kwargs{}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/MOI_bounded_oracle.jl:702 [7] compute_inface_extreme_point @ ~/.julia/packages/Boscia/WfBWl/src/MOI_bounded_oracle.jl:695 [inlined] [8] compute_inface_extreme_point(tlmo::Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, direction::FrankWolfe.NegatingArray{Float64, 1, Vector{Float64}}, x::Vector{Float64}; lazy::Bool, kwargs::@Kwargs{}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/time_tracking_lmo.jl:42 [9] compute_inface_extreme_point @ ~/.julia/packages/Boscia/WfBWl/src/time_tracking_lmo.jl:39 [inlined] [10] lazy_standard_dicg_step(x::Vector{Float64}, gradient::Vector{Float64}, lmo::Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, pre_computed_set::Vector{Vector{Float64}}, phi::Float64, epsilon::Float64, d::Vector{Float64}; strong_lazification::Bool, sparsity_control::Float64, memory_mode::FrankWolfe.InplaceEmphasis) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/dicg.jl:561 [11] decomposition_invariant_conditional_gradient(f::var"#f#f##14", grad!::var"#grad!#grad!##6", lmo::Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, x0::Vector{Float64}; line_search::FrankWolfe.Adaptive{Float64, Int64, FrankWolfe.var"#Adaptive##4#Adaptive##5"}, epsilon::Float64, max_iteration::Int64, print_iter::Int64, trajectory::Bool, verbose::Bool, memory_mode::FrankWolfe.InplaceEmphasis, gradient::Nothing, callback::Boscia.var"#DICG_callback#9"{Nothing, Boscia.var"#33#34"{Bool, Bonobo.BnBTree{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, @NamedTuple{problem::Boscia.SimpleOptimizationProblem{var"#f#f##14", var"#grad!#grad!##6", Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, Boscia.IntegerBounds}, current_node_id::Base.RefValue{Int64}, updated_incumbent::Base.RefValue{Bool}, global_tightening_rhs::Base.RefValue{Float64}, global_tightening_root_info::@NamedTuple{lower_bounds::Dict{Int64, Tuple{Float64, Float64}}, upper_bounds::Dict{Int64, Tuple{Float64, Float64}}}, global_tightenings::Boscia.IntegerBounds, options::Dict{Symbol, Any}, result::Dict{Symbol, Any}}, Vector{Float64}, Boscia.FrankWolfeSolution{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, Vector{Float64}}}, Float64, Vector{Int64}, Int64, DateTime, Float64, Int64, Vector{MathOptInterface.VariableIndex}}}, traj_data::Vector{Any}, timeout::Float64, lazy::Bool, use_strong_lazy::Bool, linesearch_workspace::Nothing, sparsity_control::Float64, extra_vertex_storage::Nothing) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/dicg.jl:180 [12] solve_frank_wolfe(frank_wolfe_variant::Boscia.DICG, f::var"#f#f##14", grad!::var"#grad!#grad!##6", lmo::Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, active_set::FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}; line_search::FrankWolfe.Adaptive{Float64, Int64, FrankWolfe.var"#Adaptive##4#Adaptive##5"}, epsilon::Float64, max_iteration::Int64, add_dropped_vertices::Bool, use_extra_vertex_storage::Bool, extra_vertex_storage::FrankWolfe.DeletedVertexStorage{Vector{Float64}}, callback::Boscia.var"#33#34"{Bool, Bonobo.BnBTree{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, @NamedTuple{problem::Boscia.SimpleOptimizationProblem{var"#f#f##14", var"#grad!#grad!##6", Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, Boscia.IntegerBounds}, current_node_id::Base.RefValue{Int64}, updated_incumbent::Base.RefValue{Bool}, global_tightening_rhs::Base.RefValue{Float64}, global_tightening_root_info::@NamedTuple{lower_bounds::Dict{Int64, Tuple{Float64, Float64}}, upper_bounds::Dict{Int64, Tuple{Float64, Float64}}}, global_tightenings::Boscia.IntegerBounds, options::Dict{Symbol, Any}, result::Dict{Symbol, Any}}, Vector{Float64}, Boscia.FrankWolfeSolution{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, Vector{Float64}}}, Float64, Vector{Int64}, Int64, DateTime, Float64, Int64, Vector{MathOptInterface.VariableIndex}}, lazy::Bool, lazy_tolerance::Float64, timeout::Float64, verbose::Bool, workspace::Nothing, pre_computed_set::Nothing, domain_oracle::typeof(Boscia._trivial_domain), use_strong_lazy::Bool, use_strong_warm_start::Bool, build_dicg_start_point::typeof(Boscia.trivial_build_dicg_start_point), kwargs::@Kwargs{}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/frank_wolfe_variants.jl:235 [13] evaluate_node!(tree::Bonobo.BnBTree{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, @NamedTuple{problem::Boscia.SimpleOptimizationProblem{var"#f#f##14", var"#grad!#grad!##6", Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, Boscia.IntegerBounds}, current_node_id::Base.RefValue{Int64}, updated_incumbent::Base.RefValue{Bool}, global_tightening_rhs::Base.RefValue{Float64}, global_tightening_root_info::@NamedTuple{lower_bounds::Dict{Int64, Tuple{Float64, Float64}}, upper_bounds::Dict{Int64, Tuple{Float64, Float64}}}, global_tightenings::Boscia.IntegerBounds, options::Dict{Symbol, Any}, result::Dict{Symbol, Any}}, Vector{Float64}, Boscia.FrankWolfeSolution{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, Vector{Float64}}}, node::Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/node.jl:311 [14] optimize!(tree::Bonobo.BnBTree{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, @NamedTuple{problem::Boscia.SimpleOptimizationProblem{var"#f#f##14", var"#grad!#grad!##6", Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, Boscia.IntegerBounds}, current_node_id::Base.RefValue{Int64}, updated_incumbent::Base.RefValue{Bool}, global_tightening_rhs::Base.RefValue{Float64}, global_tightening_root_info::@NamedTuple{lower_bounds::Dict{Int64, Tuple{Float64, Float64}}, upper_bounds::Dict{Int64, Tuple{Float64, Float64}}}, global_tightenings::Boscia.IntegerBounds, options::Dict{Symbol, Any}, result::Dict{Symbol, Any}}, Vector{Float64}, Boscia.FrankWolfeSolution{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, Vector{Float64}}}; callback::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#39#build_bnb_callback##1"{DateTime, Vector{Float64}, Vector{Float64}, Vector{Float64}, Vector{Int64}, Vector{Int64}, Bool, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Symbol, Any}, Vector{Vector{Int64}}, Vector{Vector{Int64}}, Vector{Vector{Int64}}, Vector{Int64}, Nothing, Vector{Int64}, Vector{Int64}, Vector{Int64}, Int64, Int64, Int64, String, Vector{String}}}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/custom_bonobo.jl:35 [15] solve(f::var"#f#f##14", grad!::var"#grad!#grad!##6", blmo::Boscia.MathOptBLMO{SCIP.Optimizer}; traverse_strategy::Bonobo.BestFirstSearch, branching_strategy::Bonobo.MOST_INFEASIBLE, variant::Boscia.DICG, line_search::FrankWolfe.Adaptive{Float64, Int64, FrankWolfe.var"#Adaptive##4#Adaptive##5"}, active_set::Nothing, lazy::Bool, lazy_tolerance::Float64, fw_epsilon::Float64, verbose::Bool, dual_gap::Float64, rel_dual_gap::Float64, time_limit::Float64, node_limit::Float64, print_iter::Int64, dual_gap_decay_factor::Float64, max_fw_iter::Int64, min_number_lower::Float64, min_node_fw_epsilon::Float64, use_postsolve::Bool, min_fw_iterations::Int64, max_iteration_post::Int64, dual_tightening::Bool, global_dual_tightening::Bool, bnb_callback::Nothing, strong_convexity::Float64, sharpness_constant::Float64, sharpness_exponent::Float64, domain_oracle::typeof(Boscia._trivial_domain), find_domain_point::typeof(Boscia._trivial_domain_point), start_solution::Nothing, fw_verbose::Bool, use_shadow_set::Bool, custom_heuristics::Vector{Boscia.Heuristic{Boscia.var"#Heuristic##0#Heuristic##1"}}, rounding_prob::Float64, clean_solutions::Bool, max_clean_iter::Int64, use_strong_lazy::Bool, use_DICG_warm_start::Bool, use_strong_warm_start::Bool, build_dicg_start_point::typeof(Boscia.trivial_build_dicg_start_point), kwargs::@Kwargs{}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/interface.jl:339 [16] #solve#122 @ ~/.julia/packages/Boscia/WfBWl/src/MOI_bounded_oracle.jl:766 [inlined] [17] top-level scope @ ~/.julia/packages/Boscia/WfBWl/test/interface_test.jl:311 [18] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1837 [inlined] [19] macro expansion @ ~/.julia/packages/Boscia/WfBWl/test/interface_test.jl:344 [inlined] [20] include(mapexpr::Function, mod::Module, _path::String) @ Base ./Base.jl:310 [21] IncludeInto @ ./Base.jl:311 [inlined] [22] macro expansion @ ~/.julia/packages/Boscia/WfBWl/test/runtests.jl:17 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1837 [inlined] [24] top-level scope @ ~/.julia/packages/Boscia/WfBWl/test/runtests.jl:17 [25] include(mapexpr::Function, mod::Module, _path::String) @ Base ./Base.jl:310 [26] top-level scope @ none:6 [27] eval(m::Module, e::Any) @ Core ./boot.jl:489 [28] exec_options(opts::Base.JLOptions) @ Base ./client.jl:290 [29] _start() @ Base ./client.jl:557 Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Agnostic(2) Lazification: true Lazification Tolerance: 2.0 Absolute dual gap tolerance: 1.000000e-06 Relative dual gap tolerance: 1.000000e-02 Frank-Wolfe subproblem tolerance: 1.000000e-02 Frank-Wolfe dual gap decay factor: 8.000000e-01 Additional kwargs: Total number of variables: 20 Number of integer variables: 20 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Iter Open Bound Incumbent Gap (abs) Gap (rel) Time (s) Nodes/sec FW (ms) LMO (ms) LMO (calls c) FW (its) #activeset #shadow ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- * 1 2 -6.776078e-03 5.000000e-01 5.067761e-01 Inf 1.020000e+00 2.941176e+00 1017 8 11 65 2 1 2 3 -6.776078e-03 5.000000e-01 5.067761e-01 Inf 4.135000e+00 1.209190e+00 7 4 18 41 2 1 3 4 4.461187e-02 5.000000e-01 4.553881e-01 1.020778e+01 4.143000e+00 1.689597e+00 7 4 26 28 2 1 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Solution Statistics. Solution Status: Node limit reached Primal Objective: 0.49999999999999994 Dual Bound: 0.04461186712171719 Dual Gap (relative): 10.207780177319645 Search Statistics. Total number of nodes processed: 7 Total number of lmo calls: 26 Total time (s): 4.144 LMO calls / sec: 6.274131274131274 Nodes / sec: 1.689189189189189 LMO calls / node: 3.7142857142857144 Total number of global tightenings: 0 Global tightenings / node: 0.0 Total number of local tightenings: 0 Local tightenings / node: 0.0 Total number of potential local tightenings: 0 DICG - Lazification: Error During Test at /home/pkgeval/.julia/packages/Boscia/WfBWl/test/interface_test.jl:459 Got exception outside of a @test KeyError: key MOI.VariableIndex(1) not found Stacktrace: [1] getindex @ ./dict.jl:478 [inlined] [2] add_constraint(o::SCIP.Optimizer, vi::MathOptInterface.VariableIndex, set::MathOptInterface.EqualTo{Float64}) @ SCIP ~/.julia/packages/SCIP/1OzGv/src/MOI_wrapper/variable.jl:322 [3] compute_inface_extreme_point_subroutine(lmo::FrankWolfe.MathOptLMO{SCIP.Optimizer}, ::Type{MathOptInterface.VariableIndex}, ::Type{MathOptInterface.GreaterThan{Float64}}, valvar::Function; atol::Float64) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/moi_oracle.jl:140 [4] compute_inface_extreme_point_subroutine(lmo::FrankWolfe.MathOptLMO{SCIP.Optimizer}, ::Type{MathOptInterface.VariableIndex}, ::Type{MathOptInterface.GreaterThan{Float64}}, valvar::Function) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/moi_oracle.jl:109 [5] compute_inface_extreme_point(lmo::FrankWolfe.MathOptLMO{SCIP.Optimizer}, direction::FrankWolfe.NegatingArray{Float64, 1, Vector{Float64}}, x::Vector{Float64}; solve_data::Dict{Any, Any}, kwargs::@Kwargs{kwargs::@Kwargs{}}) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/moi_oracle.jl:75 [6] compute_inface_extreme_point(blmo::Boscia.MathOptBLMO{SCIP.Optimizer}, direction::FrankWolfe.NegatingArray{Float64, 1, Vector{Float64}}, x::Vector{Float64}; kwargs::@Kwargs{}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/MOI_bounded_oracle.jl:702 [7] compute_inface_extreme_point @ ~/.julia/packages/Boscia/WfBWl/src/MOI_bounded_oracle.jl:695 [inlined] [8] compute_inface_extreme_point(tlmo::Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, direction::FrankWolfe.NegatingArray{Float64, 1, Vector{Float64}}, x::Vector{Float64}; lazy::Bool, kwargs::@Kwargs{}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/time_tracking_lmo.jl:42 [9] compute_inface_extreme_point @ ~/.julia/packages/Boscia/WfBWl/src/time_tracking_lmo.jl:39 [inlined] [10] lazy_standard_dicg_step(x::Vector{Float64}, gradient::Vector{Float64}, lmo::Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, pre_computed_set::Vector{Vector{Float64}}, phi::Float64, epsilon::Float64, d::Vector{Float64}; strong_lazification::Bool, sparsity_control::Float64, memory_mode::FrankWolfe.InplaceEmphasis) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/dicg.jl:561 [11] decomposition_invariant_conditional_gradient(f::var"#f#f##23", grad!::var"#grad!#grad!##9", lmo::Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, x0::Vector{Float64}; line_search::FrankWolfe.Adaptive{Float64, Int64, FrankWolfe.var"#Adaptive##4#Adaptive##5"}, epsilon::Float64, max_iteration::Int64, print_iter::Int64, trajectory::Bool, verbose::Bool, memory_mode::FrankWolfe.InplaceEmphasis, gradient::Nothing, callback::Boscia.var"#DICG_callback#9"{Nothing, Boscia.var"#33#34"{Bool, Bonobo.BnBTree{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, @NamedTuple{problem::Boscia.SimpleOptimizationProblem{var"#f#f##23", var"#grad!#grad!##9", Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, Boscia.IntegerBounds}, current_node_id::Base.RefValue{Int64}, updated_incumbent::Base.RefValue{Bool}, global_tightening_rhs::Base.RefValue{Float64}, global_tightening_root_info::@NamedTuple{lower_bounds::Dict{Int64, Tuple{Float64, Float64}}, upper_bounds::Dict{Int64, Tuple{Float64, Float64}}}, global_tightenings::Boscia.IntegerBounds, options::Dict{Symbol, Any}, result::Dict{Symbol, Any}}, Vector{Float64}, Boscia.FrankWolfeSolution{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, Vector{Float64}}}, Float64, Vector{Int64}, Int64, DateTime, Float64, Int64, Vector{MathOptInterface.VariableIndex}}}, traj_data::Vector{Any}, timeout::Float64, lazy::Bool, use_strong_lazy::Bool, linesearch_workspace::Nothing, sparsity_control::Float64, extra_vertex_storage::Nothing) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/dicg.jl:180 [12] solve_frank_wolfe(frank_wolfe_variant::Boscia.DICG, f::var"#f#f##23", grad!::var"#grad!#grad!##9", lmo::Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, active_set::FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}; line_search::FrankWolfe.Adaptive{Float64, Int64, FrankWolfe.var"#Adaptive##4#Adaptive##5"}, epsilon::Float64, max_iteration::Int64, add_dropped_vertices::Bool, use_extra_vertex_storage::Bool, extra_vertex_storage::FrankWolfe.DeletedVertexStorage{Vector{Float64}}, callback::Boscia.var"#33#34"{Bool, Bonobo.BnBTree{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, @NamedTuple{problem::Boscia.SimpleOptimizationProblem{var"#f#f##23", var"#grad!#grad!##9", Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, Boscia.IntegerBounds}, current_node_id::Base.RefValue{Int64}, updated_incumbent::Base.RefValue{Bool}, global_tightening_rhs::Base.RefValue{Float64}, global_tightening_root_info::@NamedTuple{lower_bounds::Dict{Int64, Tuple{Float64, Float64}}, upper_bounds::Dict{Int64, Tuple{Float64, Float64}}}, global_tightenings::Boscia.IntegerBounds, options::Dict{Symbol, Any}, result::Dict{Symbol, Any}}, Vector{Float64}, Boscia.FrankWolfeSolution{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, Vector{Float64}}}, Float64, Vector{Int64}, Int64, DateTime, Float64, Int64, Vector{MathOptInterface.VariableIndex}}, lazy::Bool, lazy_tolerance::Float64, timeout::Float64, verbose::Bool, workspace::Nothing, pre_computed_set::Nothing, domain_oracle::typeof(Boscia._trivial_domain), use_strong_lazy::Bool, use_strong_warm_start::Bool, build_dicg_start_point::typeof(Boscia.trivial_build_dicg_start_point), kwargs::@Kwargs{}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/frank_wolfe_variants.jl:235 [13] evaluate_node!(tree::Bonobo.BnBTree{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, @NamedTuple{problem::Boscia.SimpleOptimizationProblem{var"#f#f##23", var"#grad!#grad!##9", Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, Boscia.IntegerBounds}, current_node_id::Base.RefValue{Int64}, updated_incumbent::Base.RefValue{Bool}, global_tightening_rhs::Base.RefValue{Float64}, global_tightening_root_info::@NamedTuple{lower_bounds::Dict{Int64, Tuple{Float64, Float64}}, upper_bounds::Dict{Int64, Tuple{Float64, Float64}}}, global_tightenings::Boscia.IntegerBounds, options::Dict{Symbol, Any}, result::Dict{Symbol, Any}}, Vector{Float64}, Boscia.FrankWolfeSolution{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, Vector{Float64}}}, node::Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/node.jl:311 [14] optimize!(tree::Bonobo.BnBTree{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, @NamedTuple{problem::Boscia.SimpleOptimizationProblem{var"#f#f##23", var"#grad!#grad!##9", Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, Boscia.IntegerBounds}, current_node_id::Base.RefValue{Int64}, updated_incumbent::Base.RefValue{Bool}, global_tightening_rhs::Base.RefValue{Float64}, global_tightening_root_info::@NamedTuple{lower_bounds::Dict{Int64, Tuple{Float64, Float64}}, upper_bounds::Dict{Int64, Tuple{Float64, Float64}}}, global_tightenings::Boscia.IntegerBounds, options::Dict{Symbol, Any}, result::Dict{Symbol, Any}}, Vector{Float64}, Boscia.FrankWolfeSolution{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, Vector{Float64}}}; callback::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#39#build_bnb_callback##1"{DateTime, Vector{Float64}, Vector{Float64}, Vector{Float64}, Vector{Int64}, Vector{Int64}, Bool, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Symbol, Any}, Vector{Vector{Int64}}, Vector{Vector{Int64}}, Vector{Vector{Int64}}, Vector{Int64}, Nothing, Vector{Int64}, Vector{Int64}, Vector{Int64}, Int64, Int64, Int64, String, Vector{String}}}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/custom_bonobo.jl:35 [15] solve(f::var"#f#f##23", grad!::var"#grad!#grad!##9", blmo::Boscia.MathOptBLMO{SCIP.Optimizer}; traverse_strategy::Bonobo.BestFirstSearch, branching_strategy::Bonobo.MOST_INFEASIBLE, variant::Boscia.DICG, line_search::FrankWolfe.Adaptive{Float64, Int64, FrankWolfe.var"#Adaptive##4#Adaptive##5"}, active_set::Nothing, lazy::Bool, lazy_tolerance::Float64, fw_epsilon::Float64, verbose::Bool, dual_gap::Float64, rel_dual_gap::Float64, time_limit::Float64, node_limit::Float64, print_iter::Int64, dual_gap_decay_factor::Float64, max_fw_iter::Int64, min_number_lower::Float64, min_node_fw_epsilon::Float64, use_postsolve::Bool, min_fw_iterations::Int64, max_iteration_post::Int64, dual_tightening::Bool, global_dual_tightening::Bool, bnb_callback::Nothing, strong_convexity::Float64, sharpness_constant::Float64, sharpness_exponent::Float64, domain_oracle::typeof(Boscia._trivial_domain), find_domain_point::typeof(Boscia._trivial_domain_point), start_solution::Nothing, fw_verbose::Bool, use_shadow_set::Bool, custom_heuristics::Vector{Boscia.Heuristic{Boscia.var"#Heuristic##0#Heuristic##1"}}, rounding_prob::Float64, clean_solutions::Bool, max_clean_iter::Int64, use_strong_lazy::Bool, use_DICG_warm_start::Bool, use_strong_warm_start::Bool, build_dicg_start_point::typeof(Boscia.trivial_build_dicg_start_point), kwargs::@Kwargs{}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/interface.jl:339 [16] #solve#122 @ ~/.julia/packages/Boscia/WfBWl/src/MOI_bounded_oracle.jl:766 [inlined] [17] top-level scope @ ~/.julia/packages/Boscia/WfBWl/test/interface_test.jl:461 [18] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1837 [inlined] [19] macro expansion @ ~/.julia/packages/Boscia/WfBWl/test/interface_test.jl:484 [inlined] [20] include(mapexpr::Function, mod::Module, _path::String) @ Base ./Base.jl:310 [21] IncludeInto @ ./Base.jl:311 [inlined] [22] macro expansion @ ~/.julia/packages/Boscia/WfBWl/test/runtests.jl:17 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1837 [inlined] [24] top-level scope @ ~/.julia/packages/Boscia/WfBWl/test/runtests.jl:17 [25] include(mapexpr::Function, mod::Module, _path::String) @ Base ./Base.jl:310 [26] top-level scope @ none:6 [27] eval(m::Module, e::Any) @ Core ./boot.jl:489 [28] exec_options(opts::Base.JLOptions) @ Base ./client.jl:290 [29] _start() @ Base ./client.jl:557 DICG - warm_start: Error During Test at /home/pkgeval/.julia/packages/Boscia/WfBWl/test/interface_test.jl:515 Got exception outside of a @test KeyError: key MOI.VariableIndex(1) not found Stacktrace: [1] getindex @ ./dict.jl:478 [inlined] [2] add_constraint(o::SCIP.Optimizer, vi::MathOptInterface.VariableIndex, set::MathOptInterface.EqualTo{Float64}) @ SCIP ~/.julia/packages/SCIP/1OzGv/src/MOI_wrapper/variable.jl:322 [3] compute_inface_extreme_point_subroutine(lmo::FrankWolfe.MathOptLMO{SCIP.Optimizer}, ::Type{MathOptInterface.VariableIndex}, ::Type{MathOptInterface.GreaterThan{Float64}}, valvar::Function; atol::Float64) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/moi_oracle.jl:140 [4] compute_inface_extreme_point_subroutine(lmo::FrankWolfe.MathOptLMO{SCIP.Optimizer}, ::Type{MathOptInterface.VariableIndex}, ::Type{MathOptInterface.GreaterThan{Float64}}, valvar::Function) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/moi_oracle.jl:109 [5] compute_inface_extreme_point(lmo::FrankWolfe.MathOptLMO{SCIP.Optimizer}, direction::FrankWolfe.NegatingArray{Float64, 1, Vector{Float64}}, x::Vector{Float64}; solve_data::Dict{Any, Any}, kwargs::@Kwargs{kwargs::@Kwargs{}}) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/moi_oracle.jl:75 [6] compute_inface_extreme_point(blmo::Boscia.MathOptBLMO{SCIP.Optimizer}, direction::FrankWolfe.NegatingArray{Float64, 1, Vector{Float64}}, x::Vector{Float64}; kwargs::@Kwargs{}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/MOI_bounded_oracle.jl:702 [7] compute_inface_extreme_point @ ~/.julia/packages/Boscia/WfBWl/src/MOI_bounded_oracle.jl:695 [inlined] [8] compute_inface_extreme_point(tlmo::Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, direction::FrankWolfe.NegatingArray{Float64, 1, Vector{Float64}}, x::Vector{Float64}; lazy::Bool, kwargs::@Kwargs{}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/time_tracking_lmo.jl:42 [9] compute_inface_extreme_point @ ~/.julia/packages/Boscia/WfBWl/src/time_tracking_lmo.jl:39 [inlined] [10] lazy_standard_dicg_step(x::Vector{Float64}, gradient::Vector{Float64}, lmo::Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, pre_computed_set::Vector{Vector{Float64}}, phi::Float64, epsilon::Float64, d::Vector{Float64}; strong_lazification::Bool, sparsity_control::Float64, memory_mode::FrankWolfe.InplaceEmphasis) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/dicg.jl:561 [11] decomposition_invariant_conditional_gradient(f::var"#f#f##26", grad!::var"#grad!#grad!##10", lmo::Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, x0::Vector{Float64}; line_search::FrankWolfe.Adaptive{Float64, Int64, FrankWolfe.var"#Adaptive##4#Adaptive##5"}, epsilon::Float64, max_iteration::Int64, print_iter::Int64, trajectory::Bool, verbose::Bool, memory_mode::FrankWolfe.InplaceEmphasis, gradient::Nothing, callback::Boscia.var"#DICG_callback#9"{Nothing, Boscia.var"#33#34"{Bool, Bonobo.BnBTree{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, @NamedTuple{problem::Boscia.SimpleOptimizationProblem{var"#f#f##26", var"#grad!#grad!##10", Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, Boscia.IntegerBounds}, current_node_id::Base.RefValue{Int64}, updated_incumbent::Base.RefValue{Bool}, global_tightening_rhs::Base.RefValue{Float64}, global_tightening_root_info::@NamedTuple{lower_bounds::Dict{Int64, Tuple{Float64, Float64}}, upper_bounds::Dict{Int64, Tuple{Float64, Float64}}}, global_tightenings::Boscia.IntegerBounds, options::Dict{Symbol, Any}, result::Dict{Symbol, Any}}, Vector{Float64}, Boscia.FrankWolfeSolution{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, Vector{Float64}}}, Float64, Vector{Int64}, Int64, DateTime, Float64, Int64, Vector{MathOptInterface.VariableIndex}}}, traj_data::Vector{Any}, timeout::Float64, lazy::Bool, use_strong_lazy::Bool, linesearch_workspace::Nothing, sparsity_control::Float64, extra_vertex_storage::Nothing) @ FrankWolfe ~/.julia/packages/FrankWolfe/bLkYe/src/dicg.jl:180 [12] solve_frank_wolfe(frank_wolfe_variant::Boscia.DICG, f::var"#f#f##26", grad!::var"#grad!#grad!##10", lmo::Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, active_set::FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}; line_search::FrankWolfe.Adaptive{Float64, Int64, FrankWolfe.var"#Adaptive##4#Adaptive##5"}, epsilon::Float64, max_iteration::Int64, add_dropped_vertices::Bool, use_extra_vertex_storage::Bool, extra_vertex_storage::FrankWolfe.DeletedVertexStorage{Vector{Float64}}, callback::Boscia.var"#33#34"{Bool, Bonobo.BnBTree{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, @NamedTuple{problem::Boscia.SimpleOptimizationProblem{var"#f#f##26", var"#grad!#grad!##10", Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, Boscia.IntegerBounds}, current_node_id::Base.RefValue{Int64}, updated_incumbent::Base.RefValue{Bool}, global_tightening_rhs::Base.RefValue{Float64}, global_tightening_root_info::@NamedTuple{lower_bounds::Dict{Int64, Tuple{Float64, Float64}}, upper_bounds::Dict{Int64, Tuple{Float64, Float64}}}, global_tightenings::Boscia.IntegerBounds, options::Dict{Symbol, Any}, result::Dict{Symbol, Any}}, Vector{Float64}, Boscia.FrankWolfeSolution{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, Vector{Float64}}}, Float64, Vector{Int64}, Int64, DateTime, Float64, Int64, Vector{MathOptInterface.VariableIndex}}, lazy::Bool, lazy_tolerance::Float64, timeout::Float64, verbose::Bool, workspace::Nothing, pre_computed_set::Nothing, domain_oracle::typeof(Boscia._trivial_domain), use_strong_lazy::Bool, use_strong_warm_start::Bool, build_dicg_start_point::typeof(Boscia.trivial_build_dicg_start_point), kwargs::@Kwargs{}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/frank_wolfe_variants.jl:235 [13] evaluate_node!(tree::Bonobo.BnBTree{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, @NamedTuple{problem::Boscia.SimpleOptimizationProblem{var"#f#f##26", var"#grad!#grad!##10", Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, Boscia.IntegerBounds}, current_node_id::Base.RefValue{Int64}, updated_incumbent::Base.RefValue{Bool}, global_tightening_rhs::Base.RefValue{Float64}, global_tightening_root_info::@NamedTuple{lower_bounds::Dict{Int64, Tuple{Float64, Float64}}, upper_bounds::Dict{Int64, Tuple{Float64, Float64}}}, global_tightenings::Boscia.IntegerBounds, options::Dict{Symbol, Any}, result::Dict{Symbol, Any}}, Vector{Float64}, Boscia.FrankWolfeSolution{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, Vector{Float64}}}, node::Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/node.jl:311 [14] optimize!(tree::Bonobo.BnBTree{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, @NamedTuple{problem::Boscia.SimpleOptimizationProblem{var"#f#f##26", var"#grad!#grad!##10", Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}}, Boscia.IntegerBounds}, current_node_id::Base.RefValue{Int64}, updated_incumbent::Base.RefValue{Bool}, global_tightening_rhs::Base.RefValue{Float64}, global_tightening_root_info::@NamedTuple{lower_bounds::Dict{Int64, Tuple{Float64, Float64}}, upper_bounds::Dict{Int64, Tuple{Float64, Float64}}}, global_tightenings::Boscia.IntegerBounds, options::Dict{Symbol, Any}, result::Dict{Symbol, Any}}, Vector{Float64}, Boscia.FrankWolfeSolution{Boscia.FrankWolfeNode{FrankWolfe.ActiveSet{Vector{Float64}, Float64, Vector{Float64}}, FrankWolfe.DeletedVertexStorage{Vector{Float64}}, Boscia.IntegerBounds, Boscia.NodeInfo{Float64}}, Vector{Float64}}}; callback::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#39#build_bnb_callback##1"{DateTime, Vector{Float64}, Vector{Float64}, Vector{Float64}, Vector{Int64}, Vector{Int64}, Bool, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Symbol, Any}, Vector{Vector{Int64}}, Vector{Vector{Int64}}, Vector{Vector{Int64}}, Vector{Int64}, Nothing, Vector{Int64}, Vector{Int64}, Vector{Int64}, Int64, Int64, Int64, String, Vector{String}}}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/custom_bonobo.jl:35 [15] solve(f::var"#f#f##26", grad!::var"#grad!#grad!##10", blmo::Boscia.MathOptBLMO{SCIP.Optimizer}; traverse_strategy::Bonobo.BestFirstSearch, branching_strategy::Bonobo.MOST_INFEASIBLE, variant::Boscia.DICG, line_search::FrankWolfe.Adaptive{Float64, Int64, FrankWolfe.var"#Adaptive##4#Adaptive##5"}, active_set::Nothing, lazy::Bool, lazy_tolerance::Float64, fw_epsilon::Float64, verbose::Bool, dual_gap::Float64, rel_dual_gap::Float64, time_limit::Float64, node_limit::Float64, print_iter::Int64, dual_gap_decay_factor::Float64, max_fw_iter::Int64, min_number_lower::Float64, min_node_fw_epsilon::Float64, use_postsolve::Bool, min_fw_iterations::Int64, max_iteration_post::Int64, dual_tightening::Bool, global_dual_tightening::Bool, bnb_callback::Nothing, strong_convexity::Float64, sharpness_constant::Float64, sharpness_exponent::Float64, domain_oracle::typeof(Boscia._trivial_domain), find_domain_point::typeof(Boscia._trivial_domain_point), start_solution::Nothing, fw_verbose::Bool, use_shadow_set::Bool, custom_heuristics::Vector{Boscia.Heuristic{Boscia.var"#Heuristic##0#Heuristic##1"}}, rounding_prob::Float64, clean_solutions::Bool, max_clean_iter::Int64, use_strong_lazy::Bool, use_DICG_warm_start::Bool, use_strong_warm_start::Bool, build_dicg_start_point::typeof(Boscia.trivial_build_dicg_start_point), kwargs::@Kwargs{}) @ Boscia ~/.julia/packages/Boscia/WfBWl/src/interface.jl:339 [16] #solve#122 @ ~/.julia/packages/Boscia/WfBWl/src/MOI_bounded_oracle.jl:766 [inlined] [17] top-level scope @ ~/.julia/packages/Boscia/WfBWl/test/interface_test.jl:517 [18] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1837 [inlined] [19] macro expansion @ ~/.julia/packages/Boscia/WfBWl/test/interface_test.jl:540 [inlined] [20] include(mapexpr::Function, mod::Module, _path::String) @ Base ./Base.jl:310 [21] IncludeInto @ ./Base.jl:311 [inlined] [22] macro expansion @ ~/.julia/packages/Boscia/WfBWl/test/runtests.jl:17 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1837 [inlined] [24] top-level scope @ ~/.julia/packages/Boscia/WfBWl/test/runtests.jl:17 [25] include(mapexpr::Function, mod::Module, _path::String) @ Base ./Base.jl:310 [26] top-level scope @ none:6 [27] eval(m::Module, e::Any) @ Core ./boot.jl:489 [28] exec_options(opts::Base.JLOptions) @ Base ./client.jl:290 [29] _start() @ Base ./client.jl:557 seed = 0xd5f914a69480f723 seed = 0xe61a7224c42550f0 [ Info: Polish solution seed = 0xc5e85ad8b1c3a661 Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Adaptive Lazification: true Lazification Tolerance: 2.0 Absolute dual gap tolerance: 1.000000e-06 Relative dual gap tolerance: 1.000000e-02 Frank-Wolfe subproblem tolerance: 1.000000e-02 Frank-Wolfe dual gap decay factor: 8.000000e-01 Additional kwargs: Total number of variables: 100 Number of integer variables: 50 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Iter Open Bound Incumbent Gap (abs) Gap (rel) Time (s) Nodes/sec FW (ms) LMO (ms) LMO (calls c) FW (its) #activeset #shadow ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- * 1 2 3.084933e+00 3.107553e+00 2.262000e-02 7.332412e-03 1.714200e+01 1.750088e-01 7678 30 8 32 1 1 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Postprocessing Blended Pairwise Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Adaptive EPSILON: 1.0e-7 MAXITERATION: 10000 TYPE: Float64 GRADIENTTYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}} ---------------------------------------------------------------------------------------------------------------- Type Iteration Primal Dual Dual Gap Time It/sec #ActiveSet ---------------------------------------------------------------------------------------------------------------- I 1 9.240007e+00 2.832771e-01 8.956730e+00 0.000000e+00 Inf 1 LD 3 3.107553e+00 3.107553e+00 0.000000e+00 2.239278e+00 1.339717e+00 1 Last 3 3.107553e+00 3.107553e+00 0.000000e+00 2.420867e+00 1.239226e+00 1 ---------------------------------------------------------------------------------------------------------------- PP 3 3.107553e+00 3.107553e+00 0.000000e+00 2.424938e+00 1.237145e+00 1 ---------------------------------------------------------------------------------------------------------------- [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution Solution Statistics. Solution Status: Optimal (tolerance reached) Primal Objective: 3.1075533261937887 Dual Bound: 3.0849333242151875 Dual Gap (relative): 0.007332411952325003 Search Statistics. Total number of nodes processed: 3 Total number of lmo calls: 13 Total time (s): 21.354 LMO calls / sec: 0.6087852392994287 Nodes / sec: 0.14048890137679124 LMO calls / node: 4.333333333333333 Total number of global tightenings: 47 Global tightenings / node: 47.0 Total number of local tightenings: 47 Local tightenings / node: 47.0 Total number of potential local tightenings: 48 Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Adaptive Lazification: true Lazification Tolerance: 2.0 Absolute dual gap tolerance: 1.000000e-06 Relative dual gap tolerance: 1.000000e-02 Frank-Wolfe subproblem tolerance: 1.000000e-03 Frank-Wolfe dual gap decay factor: 8.000000e-01 Additional kwargs: Total number of variables: 100 Number of integer variables: 50 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Iter Open Bound Incumbent Gap (abs) Gap (rel) Time (s) Nodes/sec FW (ms) LMO (ms) LMO (calls c) FW (its) #activeset #shadow ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- * 1 2 1.752254e+00 2.253462e+00 5.012084e-01 2.860364e-01 1.562200e+01 1.920369e-01 6852 181 30 90 15 1 * 3 4 1.790973e+00 2.219824e+00 4.288513e-01 2.394516e-01 1.584600e+01 4.417519e-01 64 48 63 31 9 0 100 17 2.150279e+00 2.219824e+00 6.954544e-02 3.234252e-02 2.111100e+01 5.542134e+00 24 18 798 20 11 3 157 16 2.198335e+00 2.219824e+00 2.148859e-02 9.774937e-03 2.272800e+01 7.611756e+00 8 6 1059 0 1 1 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Postprocessing Blended Pairwise Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Adaptive EPSILON: 1.0e-7 MAXITERATION: 10000 TYPE: Float64 GRADIENTTYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}} ---------------------------------------------------------------------------------------------------------------- Type Iteration Primal Dual Dual Gap Time It/sec #ActiveSet ---------------------------------------------------------------------------------------------------------------- I 1 7.328638e+00 -1.081963e+00 8.410601e+00 0.000000e+00 Inf 1 LD 3 2.324002e+00 2.210690e+00 1.133124e-01 2.728252e-01 1.099605e+01 2 LD 5 2.219824e+00 2.219824e+00 0.000000e+00 4.550886e-01 1.098687e+01 1 Last 5 2.219824e+00 2.219824e+00 0.000000e+00 4.623054e-01 1.081536e+01 1 ---------------------------------------------------------------------------------------------------------------- PP 5 2.219824e+00 2.219824e+00 0.000000e+00 4.661508e-01 1.072614e+01 1 ---------------------------------------------------------------------------------------------------------------- [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution Solution Statistics. Solution Status: Optimal (tolerance reached) Primal Objective: 2.21982406801501 Dual Bound: 2.198335476942734 Dual Gap (relative): 0.009774937127503746 Search Statistics. Total number of nodes processed: 173 Total number of lmo calls: 1065 Total time (s): 24.893 LMO calls / sec: 42.7831117181537 Nodes / sec: 6.949744908207126 LMO calls / node: 6.15606936416185 Total number of global tightenings: 0 Global tightenings / node: 0.0 Total number of local tightenings: 0 Local tightenings / node: 0.0 Total number of potential local tightenings: 0 Non zero entries: 10th entry: 0.1658679300929148 37th entry: 0.1658679300929148 Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Adaptive Lazification: true Lazification Tolerance: 2.0 Absolute dual gap tolerance: 1.000000e-06 Relative dual gap tolerance: 1.000000e-02 Frank-Wolfe subproblem tolerance: 1.000000e-03 Frank-Wolfe dual gap decay factor: 8.000000e-01 Additional kwargs: Total number of variables: 100 Number of integer variables: 50 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Iter Open Bound Incumbent Gap (abs) Gap (rel) Time (s) Nodes/sec FW (ms) LMO (ms) LMO (calls c) FW (its) #activeset #shadow ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- * 1 2 1.831766e+00 2.253462e+00 4.216960e-01 2.302128e-01 2.430000e-01 1.234568e+01 240 194 30 90 15 1 * 3 4 1.864135e+00 2.219824e+00 3.556888e-01 1.908063e-01 4.770000e-01 1.467505e+01 69 53 63 31 9 0 91 8 2.200784e+00 2.219824e+00 1.904025e-02 8.651576e-03 6.072000e+00 1.630435e+01 40 31 848 23 8 0 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Postprocessing Blended Pairwise Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Adaptive EPSILON: 1.0e-7 MAXITERATION: 10000 TYPE: Float64 GRADIENTTYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}} ---------------------------------------------------------------------------------------------------------------- Type Iteration Primal Dual Dual Gap Time It/sec #ActiveSet ---------------------------------------------------------------------------------------------------------------- I 1 7.328638e+00 -1.081963e+00 8.410601e+00 0.000000e+00 Inf 1 LD 3 2.324002e+00 2.210690e+00 1.133124e-01 1.165698e-03 2.573565e+03 2 LD 5 2.219824e+00 2.219824e+00 0.000000e+00 5.490387e-03 9.106826e+02 1 Last 5 2.219824e+00 2.219824e+00 0.000000e+00 1.296367e-02 3.856931e+02 1 ---------------------------------------------------------------------------------------------------------------- PP 5 2.219824e+00 2.219824e+00 0.000000e+00 1.695396e-02 2.949164e+02 1 ---------------------------------------------------------------------------------------------------------------- [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution Solution Statistics. Solution Status: Optimal (tolerance reached) Primal Objective: 2.21982406801501 Dual Bound: 2.200783819330971 Dual Gap (relative): 0.008651576096114357 Search Statistics. Total number of nodes processed: 99 Total number of lmo calls: 854 Total time (s): 6.104 LMO calls / sec: 139.90825688073394 Nodes / sec: 16.218872870249015 LMO calls / node: 8.626262626262626 Total number of global tightenings: 0 Global tightenings / node: 0.0 Total number of local tightenings: 0 Local tightenings / node: 0.0 Total number of potential local tightenings: 0 seed = 0xe74cb156d04035aa Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Adaptive Lazification: true Lazification Tolerance: 2.0 Absolute dual gap tolerance: 1.000000e-06 Relative dual gap tolerance: 1.000000e-02 Frank-Wolfe subproblem tolerance: 1.000000e-02 Frank-Wolfe dual gap decay factor: 8.000000e-01 Additional kwargs: Total number of variables: 61 Number of integer variables: 30 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Iter Open Bound Incumbent Gap (abs) Gap (rel) Time (s) Nodes/sec FW (ms) LMO (ms) LMO (calls c) FW (its) #activeset #shadow ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- * 1 2 -5.694463e+01 -3.983801e+01 1.710662e+01 4.294045e-01 1.664100e+01 1.802776e-01 7705 84 29 564 12 1 * 2 3 -5.694463e+01 -4.213725e+01 1.480738e+01 3.514082e-01 1.709500e+01 2.924832e-01 442 77 53 447 12 3 * 7 8 -5.693967e+01 -4.228017e+01 1.465949e+01 3.467226e-01 1.971300e+01 7.609192e-01 739 99 191 940 25 2 * 24 23 -5.692909e+01 -4.253982e+01 1.438927e+01 3.382542e-01 4.101100e+01 1.146034e+00 637 90 699 712 26 6 * 29 28 -5.692740e+01 -4.346523e+01 1.346216e+01 3.097226e-01 4.563000e+01 1.249178e+00 1582 118 870 2512 22 0 100 91 -5.687347e+01 -4.346523e+01 1.340823e+01 3.084818e-01 1.359320e+02 1.405114e+00 1161 85 3066 1456 23 5 * 121 112 -5.684381e+01 -4.421896e+01 1.262485e+01 2.855077e-01 1.624610e+02 1.434190e+00 2383 119 3749 3230 28 6 200 181 -5.677387e+01 -4.421896e+01 1.255491e+01 2.839259e-01 2.895680e+02 1.315753e+00 1957 100 6206 2613 26 13 * 291 260 -5.671554e+01 -5.597384e+01 7.416960e-01 1.325076e-02 4.364860e+02 1.262354e+00 243 45 8945 306 13 1 300 265 -5.671060e+01 -5.597384e+01 7.367558e-01 1.316250e-02 4.486790e+02 1.259252e+00 1289 94 9176 1774 27 18 358 275 -5.667985e+01 -5.597384e+01 7.060067e-01 1.261315e-02 5.000050e+02 1.265987e+00 530 48 10205 696 26 8 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Postprocessing Blended Pairwise Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Adaptive EPSILON: 1.0e-7 MAXITERATION: 10000 TYPE: Float64 GRADIENTTYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}} ---------------------------------------------------------------------------------------------------------------- Type Iteration Primal Dual Dual Gap Time It/sec #ActiveSet ---------------------------------------------------------------------------------------------------------------- I 1 1.736762e+02 1.689754e+02 4.700838e+00 0.000000e+00 Inf 1 LD 5 -5.405156e+01 -5.473247e+01 6.809058e-01 2.775413e-01 1.801534e+01 2 LD 193 -5.594944e+01 -5.623418e+01 2.847451e-01 5.234079e-01 3.687373e+02 4 LD 217 -5.596822e+01 -5.609186e+01 1.236394e-01 5.395188e-01 4.022103e+02 6 LD 243 -5.597267e+01 -5.602585e+01 5.317930e-02 5.537364e-01 4.388369e+02 7 LD 262 -5.597357e+01 -5.599697e+01 2.340406e-02 5.651995e-01 4.635531e+02 8 LD 296 -5.597380e+01 -5.598226e+01 8.460478e-03 5.814231e-01 5.090957e+02 9 LD 320 -5.597383e+01 -5.597761e+01 3.777171e-03 6.009982e-01 5.324475e+02 10 LD 370 -5.597384e+01 -5.597551e+01 1.670585e-03 6.338330e-01 5.837500e+02 12 LD 430 -5.597384e+01 -5.597461e+01 7.710955e-04 6.671438e-01 6.445387e+02 12 LD 516 -5.597384e+01 -5.597420e+01 3.588117e-04 7.164170e-01 7.202509e+02 13 LD 601 -5.597384e+01 -5.597401e+01 1.693910e-04 7.692905e-01 7.812393e+02 15 LD 709 -5.597384e+01 -5.597393e+01 8.192724e-05 8.278797e-01 8.564047e+02 15 LD 801 -5.597384e+01 -5.597388e+01 3.963419e-05 8.830020e-01 9.071327e+02 15 LD 906 -5.597384e+01 -5.597386e+01 1.839566e-05 9.394487e-01 9.643954e+02 15 P 1000 -5.597384e+01 -5.597386e+01 1.839566e-05 9.890766e-01 1.011044e+03 15 LD 1010 -5.597384e+01 -5.597385e+01 8.806750e-06 1.064132e+00 9.491308e+02 15 LD 1112 -5.597384e+01 -5.597385e+01 3.971301e-06 1.121365e+00 9.916490e+02 16 LD 1200 -5.597384e+01 -5.597385e+01 1.933412e-06 1.169011e+00 1.026509e+03 16 LD 1293 -5.597384e+01 -5.597385e+01 9.572794e-07 1.219376e+00 1.060378e+03 16 P 2000 -5.597384e+01 -5.597385e+01 9.572794e-07 1.580798e+00 1.265183e+03 16 P 3000 -5.597384e+01 -5.597385e+01 9.572794e-07 2.165977e+00 1.385056e+03 16 P 4000 -5.597384e+01 -5.597385e+01 9.572794e-07 2.607506e+00 1.534033e+03 16 P 5000 -5.597384e+01 -5.597385e+01 9.572794e-07 3.014591e+00 1.658600e+03 16 P 6000 -5.597384e+01 -5.597385e+01 9.572794e-07 3.371657e+00 1.779541e+03 16 P 7000 -5.597384e+01 -5.597385e+01 9.572794e-07 3.730311e+00 1.876519e+03 16 P 8000 -5.597384e+01 -5.597385e+01 9.572794e-07 4.119045e+00 1.942198e+03 16 P 9000 -5.597384e+01 -5.597385e+01 9.572794e-07 4.478716e+00 2.009505e+03 16 P 10000 -5.597384e+01 -5.597385e+01 9.572794e-07 4.836811e+00 2.067478e+03 16 Last 10001 -5.597384e+01 -5.597385e+01 8.945873e-07 4.841369e+00 2.065738e+03 16 ---------------------------------------------------------------------------------------------------------------- PP 10001 -5.597384e+01 -5.597385e+01 8.945873e-07 4.844658e+00 2.064336e+03 16 ---------------------------------------------------------------------------------------------------------------- Solution Statistics. Solution Status: Time limit reached Primal Objective: -55.97384461238564 Dual Bound: -56.67985106894968 Dual Gap (relative): 0.012613149256640812 Search Statistics. Total number of nodes processed: 633 Total number of lmo calls: 10242 Total time (s): 506.778 LMO calls / sec: 20.210032795425214 Nodes / sec: 1.2490676390845696 LMO calls / node: 16.180094786729857 Total number of global tightenings: 0 Global tightenings / node: 0.0 Total number of local tightenings: 0 Local tightenings / node: 0.0 Total number of potential local tightenings: 0 Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Partial strong branching FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Adaptive Lazification: true Lazification Tolerance: 2.0 Absolute dual gap tolerance: 1.000000e-06 Relative dual gap tolerance: 1.000000e-02 Frank-Wolfe subproblem tolerance: 1.000000e-02 Frank-Wolfe dual gap decay factor: 8.000000e-01 Additional kwargs: Total number of variables: 61 Number of integer variables: 30 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Iter Open Bound Incumbent Gap (abs) Gap (rel) Time (s) Nodes/sec FW (ms) LMO (ms) LMO (calls c) FW (its) #activeset #shadow ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- * 1 2 -5.691269e+01 -4.813231e+01 8.780383e+00 1.824218e-01 2.003700e+01 1.497230e-01 8011 216 30 389 16 1 * 2 3 -5.691269e+01 -5.197771e+01 4.934978e+00 9.494412e-02 2.085300e+01 2.397737e-01 338 124 47 223 10 2 * 88 69 -5.487172e+01 -5.240437e+01 2.467356e+00 4.708303e-02 6.110400e+01 2.569390e+00 134 73 1426 97 18 5 100 69 -5.484118e+01 -5.240437e+01 2.436812e+00 4.650017e-02 6.355300e+01 2.659198e+00 196 111 1516 117 13 3 200 127 -5.444890e+01 -5.240437e+01 2.044537e+00 3.901463e-02 9.841200e+01 3.322766e+00 86 46 2856 80 15 5 300 165 -5.413587e+01 -5.240437e+01 1.731508e+00 3.304128e-02 1.264100e+02 3.678506e+00 145 80 4010 97 8 4 400 197 -5.394164e+01 -5.240437e+01 1.537276e+00 2.933489e-02 1.532800e+02 3.894833e+00 133 74 5113 73 6 1 500 231 -5.377540e+01 -5.240437e+01 1.371037e+00 2.616264e-02 1.775780e+02 4.116501e+00 92 50 6240 92 4 1 * 590 239 -5.363855e+01 -5.244808e+01 1.190476e+00 2.269819e-02 1.929730e+02 4.295938e+00 59 33 7018 28 2 1 600 239 -5.363237e+01 -5.244808e+01 1.184292e+00 2.258027e-02 1.945030e+02 4.313558e+00 203 91 7095 155 12 7 * 676 241 -5.355567e+01 -5.266506e+01 8.906154e-01 1.691094e-02 2.097480e+02 4.410054e+00 97 53 7760 50 10 4 700 241 -5.353824e+01 -5.266506e+01 8.731826e-01 1.657992e-02 2.133820e+02 4.447423e+00 138 69 7958 175 16 5 800 245 -5.343469e+01 -5.266506e+01 7.696393e-01 1.461385e-02 2.311880e+02 4.554735e+00 102 61 8841 57 9 5 900 247 -5.331989e+01 -5.266506e+01 6.548390e-01 1.243403e-02 2.476800e+02 4.663275e+00 64 39 9692 39 14 3 1000 243 -5.323164e+01 -5.266506e+01 5.665878e-01 1.075833e-02 2.635510e+02 4.746709e+00 133 60 10483 109 4 4 1067 242 -5.319069e+01 -5.266506e+01 5.256388e-01 9.980789e-03 2.728000e+02 4.827713e+00 18 12 10997 6 5 0 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Postprocessing Blended Pairwise Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Adaptive EPSILON: 1.0e-7 MAXITERATION: 10000 TYPE: Float64 GRADIENTTYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{Boscia.MathOptBLMO{SCIP.Optimizer}} ---------------------------------------------------------------------------------------------------------------- Type Iteration Primal Dual Dual Gap Time It/sec #ActiveSet ---------------------------------------------------------------------------------------------------------------- I 1 -2.056665e+01 -2.128338e+01 7.167347e-01 0.000000e+00 Inf 1 LD 2 -5.266506e+01 -5.266506e+01 0.000000e+00 1.968274e-01 1.016119e+01 1 Last 2 -5.266506e+01 -5.266506e+01 0.000000e+00 3.849315e-01 5.195730e+00 1 ---------------------------------------------------------------------------------------------------------------- PP 2 -5.266506e+01 -5.266506e+01 0.000000e+00 3.895665e-01 5.133912e+00 1 ---------------------------------------------------------------------------------------------------------------- [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution Solution Statistics. Solution Status: Optimal (tolerance reached) Primal Objective: -52.6650555806494 Dual Bound: -53.19069439358517 Dual Gap (relative): 0.00998078910466206 Search Statistics. Total number of nodes processed: 1317 Total number of lmo calls: 11002 Total time (s): 275.069 LMO calls / sec: 39.997237056883904 Nodes / sec: 4.787889584067997 LMO calls / node: 8.353834472285497 Total number of global tightenings: 0 Global tightenings / node: 0.0 Total number of local tightenings: 0 Local tightenings / node: 0.0 Total number of potential local tightenings: 0 Boscia Test Suite: Error During Test at /home/pkgeval/.julia/packages/Boscia/WfBWl/test/runtests.jl:15 Got exception outside of a @test LoadError: invalid assignment to constant Main.groups. This redefinition may be permitted using the `const` keyword. Stacktrace: [1] top-level scope @ ~/.julia/packages/Boscia/WfBWl/test/poisson.jl:192 [2] include(mapexpr::Function, mod::Module, _path::String) @ Base ./Base.jl:310 [3] macro expansion @ ~/.julia/packages/Boscia/WfBWl/test/runtests.jl:26 [inlined] [4] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1837 [inlined] [5] top-level scope @ ~/.julia/packages/Boscia/WfBWl/test/runtests.jl:17 [6] include(mapexpr::Function, mod::Module, _path::String) @ Base ./Base.jl:310 [7] top-level scope @ none:6 [8] eval(m::Module, e::Any) @ Core ./boot.jl:489 [9] exec_options(opts::Base.JLOptions) @ Base ./client.jl:290 [10] _start() @ Base ./client.jl:557 in expression starting at /home/pkgeval/.julia/packages/Boscia/WfBWl/test/poisson.jl:192 Test Summary: | Pass Error Total Time Boscia Test Suite | 103 4 107 30m13.8s Norm hyperbox | 4 4 59.2s Norm hyperbox - strong branching | 2 2 52.6s Normbox - Shadow set activation | 4 4 26.1s Normbox - strong convexity and sharpness | 6 6 17.9s Start with Active Set | 2 2 17.8s Interface - sparse poisson regression | 4 4 24.2s Different FW variants | 1 1 1m05.3s Different line search types | 8 8 2m29.7s Lazification | 5 5 18.2s DICG - Lazification | 1 1 8.8s DICG - warm_start | 1 1 10.8s Linear feasible | 4 4 0.2s Integer bounds | 10 10 0.1s Cube LMO | 4 4 27.0s BLMO - Strong Branching | 4 4 23.9s Probability Simplex LMO | 4 4 1m03.6s Unit Simplex LMO | 4 4 1m46.8s Indicators | 5 5 0.3s Hyperplane Aware Rounding - Probability Simplex | 2 2 26.3s Hyperplane Aware Rounding - Unit Simplex | 2 2 41.7s Following Gradient Heuristic - Unit Simplex | 6 6 1m07.2s Rounding Heuristic - Unit Simplex | 3 3 1m04.7s Probability Rounding - Unit Cube | 2 2 23.9s Probability rounding - Probability Simplex | 4 4 23.9s Sparse Regression | 2 2 24.7s Sparse Regression Group | 7 7 33.8s Poisson sparse regression | 2 2 8m29.3s Hybrid branching poisson sparse regression | 3 3 4m37.6s RNG of the outermost testset: Xoshiro(0x3f0d962ce9ed78b2, 0x79006f1e7db7aaa8, 0xf971097d74411587, 0x539f52c75de022ed, 0xd29f566f397ad8c8) ERROR: LoadError: Some tests did not pass: 103 passed, 0 failed, 4 errored, 0 broken. in expression starting at /home/pkgeval/.julia/packages/Boscia/WfBWl/test/runtests.jl:15 Testing failed after 1849.11s ERROR: LoadError: Package Boscia errored during testing Stacktrace: [1] pkgerror(msg::String) @ Pkg.Types /opt/julia/share/julia/stdlib/v1.13/Pkg/src/Types.jl:68 [2] test(ctx::Pkg.Types.Context, pkgs::Vector{PackageSpec}; coverage::Bool, julia_args::Cmd, test_args::Cmd, test_fn::Nothing, force_latest_compatible_version::Bool, allow_earlier_backwards_compatible_versions::Bool, allow_reresolve::Bool) @ Pkg.Operations /opt/julia/share/julia/stdlib/v1.13/Pkg/src/Operations.jl:2421 [3] test @ /opt/julia/share/julia/stdlib/v1.13/Pkg/src/Operations.jl:2276 [inlined] [4] test(ctx::Pkg.Types.Context, pkgs::Vector{PackageSpec}; coverage::Bool, test_fn::Nothing, julia_args::Cmd, test_args::Cmd, force_latest_compatible_version::Bool, allow_earlier_backwards_compatible_versions::Bool, allow_reresolve::Bool, kwargs::@Kwargs{io::IOContext{IO}}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.13/Pkg/src/API.jl:498 [5] test(pkgs::Vector{PackageSpec}; io::IOContext{IO}, kwargs::@Kwargs{julia_args::Cmd}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.13/Pkg/src/API.jl:164 [6] test(pkgs::Vector{String}; kwargs::@Kwargs{julia_args::Cmd}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.13/Pkg/src/API.jl:152 [7] test @ /opt/julia/share/julia/stdlib/v1.13/Pkg/src/API.jl:152 [inlined] [8] #test#81 @ /opt/julia/share/julia/stdlib/v1.13/Pkg/src/API.jl:151 [inlined] [9] top-level scope @ /PkgEval.jl/scripts/evaluate.jl:219 [10] include(mod::Module, _path::String) @ Base ./Base.jl:309 [11] exec_options(opts::Base.JLOptions) @ Base ./client.jl:324 [12] _start() @ Base ./client.jl:557 in expression starting at /PkgEval.jl/scripts/evaluate.jl:210 PkgEval failed after 2050.56s: package tests unexpectedly errored