Package evaluation to test Boscia on Julia 1.14.0-DEV.1851 (d64c0da64c*) started at 2026-03-05T19:22:34.511 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Activating project at `~/.julia/environments/v1.14` Set-up completed after 13.72s ################################################################################ # Installation # Installing Boscia... Resolving package versions... Installed Boscia ─ v0.2.9 Updating `~/.julia/environments/v1.14/Project.toml` [36b166db] + Boscia v0.2.9 Updating `~/.julia/environments/v1.14/Manifest.toml` [7d9fca2a] + Arpack v0.5.4 [6e4b80f9] + BenchmarkTools v1.6.3 [0a1fb500] + BlockDiagonals v0.2.0 [f7b14807] + Bonobo v0.1.5 [36b166db] + Boscia v0.2.9 [d360d2e6] + ChainRulesCore v1.26.0 [523fee87] + CodecBzip2 v0.8.5 [944b1d66] + CodecZlib v0.7.8 [bbf7d656] + CommonSubexpressions v0.3.1 [34da2185] + Compat v4.18.1 [187b0558] + ConstructionBase v1.6.0 [864edb3b] + DataStructures v0.19.3 [163ba53b] + DiffResults v1.1.0 [b552c78f] + DiffRules v1.15.1 [ffbed154] + DocStringExtensions v0.9.5 [e2ba6199] + ExprTools v0.1.10 [1a297f60] + FillArrays v1.16.0 [f6369f11] + ForwardDiff v1.3.2 [f55ce6ea] + FrankWolfe v0.6.4 [c145ed77] + GenericSchur v0.5.6 [e91730f6] + Hungarian v0.7.0 [92d709cd] + IrrationalConstants v0.2.6 [692b3bcd] + JLLWrappers v1.7.1 [682c06a0] + JSON v1.4.0 [2ab3a3ac] + LogExpFunctions v0.3.29 [1914dd2f] + MacroTools v0.5.16 [b8f27783] + MathOptInterface v1.49.0 [3b969827] + MathOptSetDistances v0.2.12 [d8a4904e] + MutableArithmetics v1.6.7 [77ba4419] + NaNMath v1.1.3 [d9ec5142] + NamedTupleTools v0.14.3 [bac558e1] + OrderedCollections v1.8.1 [69de0a69] + Parsers v2.8.3 [aea7be01] + PrecompileTools v1.3.3 [21216c6a] + Preferences v1.5.2 [92933f4c] + ProgressMeter v1.11.0 ⌅ [dc4f5ac2] + ProximalCore v0.1.2 [efcf1570] + Setfield v1.1.2 [276daf66] + SpecialFunctions v2.7.1 [90137ffa] + StaticArrays v1.9.17 [1e83bf80] + StaticArraysCore v1.4.4 [10745b16] + Statistics v1.11.1 [ec057cc2] + StructUtils v2.6.3 [a759f4b9] + TimerOutputs v0.5.29 [3bb67fe8] + TranscodingStreams v0.11.3 ⌅ [68821587] + Arpack_jll v3.5.2+0 [6e34b625] + Bzip2_jll v1.0.9+0 [efe28fd5] + OpenSpecFun_jll v0.5.6+0 [56f22d72] + Artifacts v1.11.0 [2a0f44e3] + Base64 v1.11.0 [ade2ca70] + Dates v1.11.0 [8ba89e20] + Distributed v1.11.0 [9fa8497b] + Future v1.11.0 [b77e0a4c] + InteractiveUtils v1.11.0 [ac6e5ff7] + JuliaSyntaxHighlighting v1.13.0 [8f399da3] + Libdl v1.11.0 [37e2e46d] + LinearAlgebra v1.13.0 [56ddb016] + Logging v1.11.0 [d6f4376e] + Markdown v1.11.0 [de0858da] + Printf v1.11.0 [9abbd945] + Profile v1.11.0 [9a3f8284] + Random v1.11.0 [ea8e919c] + SHA v1.0.0 [9e88b42a] + Serialization v1.11.0 [6462fe0b] + Sockets v1.11.0 [2f01184e] + SparseArrays v1.13.0 [f489334b] + StyledStrings v1.13.0 [fa267f1f] + TOML v1.0.3 [8dfed614] + Test v1.11.0 [cf7118a7] + UUIDs v1.11.0 [4ec0a83e] + Unicode v1.11.0 [e66e0078] + CompilerSupportLibraries_jll v1.3.0+1 [4536629a] + OpenBLAS_jll v0.3.30+0 [05823500] + OpenLibm_jll v0.8.7+0 [bea87d4a] + SuiteSparse_jll v7.10.1+0 [83775a58] + Zlib_jll v1.3.2+0 [8e850b90] + libblastrampoline_jll v5.15.0+0 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 6.53s ################################################################################ # Precompilation # Precompiling PkgEval dependencies... Precompiling package dependencies... Precompiling packages... ERROR: LoadError: UndefVarError: `get_liblemoncxxwrap_path` not defined in `LEMON_jll` Suggestion: check for spelling errors or missing imports. Stacktrace:  [1] getproperty(x::Module, f::Symbol)  @ Base ./Base_compiler.jl:51  [2] top-level scope  @ ~/.julia/packages/LEMONGraphs/vcNOz/src/LEMONGraphs.jl:9  [3] include(mod::Module, _path::String)  @ Base ./Base.jl:323  [4] include_package_for_output(pkg::Base.PkgId, input::String, syntax_version::VersionNumber, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::Nothing)  @ Base ./loading.jl:3288  [5] top-level scope  @ stdin:5  [6] eval(m::Module, e::Any)  @ Core ./boot.jl:517  [7] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String)  @ Base ./loading.jl:3130  [8] include_string  @ ./loading.jl:3140 [inlined]  [9] exec_options(opts::Base.JLOptions)  @ Base ./client.jl:342  [10] _start()  @ Base ./client.jl:585 in expression starting at /home/pkgeval/.julia/packages/LEMONGraphs/vcNOz/src/LEMONGraphs.jl:1 in expression starting at stdin:5 ✗ LEMONGraphs 13364.8 ms ✓ Boscia ERROR: LoadError: Precompiled image Base.PkgId(Base.UUID("14b1564f-c77f-4800-9e89-efd961faef7c"), "LEMONGraphs") not available with flags CacheFlags(; use_pkgimages=false, debug_level=1, check_bounds=1, inline=true, opt_level=0) Stacktrace:  [1] error(s::String)  @ Base ./error.jl:56  [2] __require_prelocked(pkg::Base.PkgId, env::String)  @ Base ./loading.jl:2840  [3] _require_prelocked(uuidkey::Base.PkgId, env::String)  @ Base ./loading.jl:2694  [4] macro expansion  @ ./loading.jl:2621 [inlined]  [5] macro expansion  @ ./lock.jl:376 [inlined]  [6] __require(into::Module, mod::Symbol)  @ Base ./loading.jl:2585  [7] require  @ ./loading.jl:2561 [inlined]  [8] eval_import_path  @ ./module.jl:36 [inlined]  [9] _eval_import(imported::Bool, to::Module, from::Nothing, paths::Expr)  @ Base ./module.jl:111  [10] top-level scope  @ ~/.julia/packages/GraphsMatching/0EoW1/src/GraphsMatching.jl:10  [11] include(mod::Module, _path::String)  @ Base ./Base.jl:323  [12] include_package_for_output(pkg::Base.PkgId, input::String, syntax_version::VersionNumber, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::Nothing)  @ Base ./loading.jl:3288  [13] top-level scope  @ stdin:5  [14] eval(m::Module, e::Any)  @ Core ./boot.jl:517  [15] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String)  @ Base ./loading.jl:3130  [16] include_string  @ ./loading.jl:3140 [inlined]  [17] exec_options(opts::Base.JLOptions)  @ Base ./client.jl:342  [18] _start()  @ Base ./client.jl:585 in expression starting at /home/pkgeval/.julia/packages/GraphsMatching/0EoW1/src/GraphsMatching.jl:1 in expression starting at stdin:5 ✗ GraphsMatching 10024.1 ms ✓ Boscia → BosciaHiGHSExt 16504.9 ms ✓ Boscia → BosciaSCIPExt ERROR: LoadError: Precompiled image Base.PkgId(Base.UUID("c3af3a8c-b79e-4b01-bf44-c718d7e0e0d6"), "GraphsMatching") not available with flags CacheFlags(; use_pkgimages=false, debug_level=1, check_bounds=1, inline=true, opt_level=0) Stacktrace:  [1] error(s::String)  @ Base ./error.jl:56  [2] __require_prelocked(pkg::Base.PkgId, env::String)  @ Base ./loading.jl:2840  [3] _require_prelocked(uuidkey::Base.PkgId, env::String)  @ Base ./loading.jl:2694  [4] macro expansion  @ ./loading.jl:2621 [inlined]  [5] macro expansion  @ ./lock.jl:376 [inlined]  [6] __require(into::Module, mod::Symbol)  @ Base ./loading.jl:2585  [7] require  @ ./loading.jl:2561 [inlined]  [8] eval_import_path  @ ./module.jl:36 [inlined]  [9] eval_import_path_all(at::Module, path::Expr, keyword::String)  @ Base ./module.jl:60  [10] _eval_using  @ ./module.jl:137 [inlined]  [11] _eval_using(to::Module, path::Expr)  @ Base ./module.jl:137  [12] top-level scope  @ ~/.julia/packages/CombinatorialLinearOracles/2KdaS/src/CombinatorialLinearOracles.jl:6  [13] include(mod::Module, _path::String)  @ Base ./Base.jl:323  [14] include_package_for_output(pkg::Base.PkgId, input::String, syntax_version::VersionNumber, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::Nothing)  @ Base ./loading.jl:3288  [15] top-level scope  @ stdin:5  [16] eval(m::Module, e::Any)  @ Core ./boot.jl:517  [17] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String)  @ Base ./loading.jl:3130  [18] include_string  @ ./loading.jl:3140 [inlined]  [19] exec_options(opts::Base.JLOptions)  @ Base ./client.jl:342  [20] _start()  @ Base ./client.jl:585 in expression starting at /home/pkgeval/.julia/packages/CombinatorialLinearOracles/2KdaS/src/CombinatorialLinearOracles.jl:1 in expression starting at stdin:5 ✗ CombinatorialLinearOracles 3 dependencies successfully precompiled in 78 seconds. 177 already precompiled. Precompilation completed after 107.03s ################################################################################ # Testing # Testing Boscia Status `/tmp/jl_D7GJvZ/Project.toml` [4c88cf16] Aqua v0.8.14 [f7b14807] Bonobo v0.1.5 [36b166db] Boscia v0.2.9 [336ed68f] CSV v0.10.16 [0002e35e] CombinatorialLinearOracles v0.1.4 [31c24e10] Distributions v0.25.123 [497a8b3b] DoubleFloats v1.6.0 [f55ce6ea] FrankWolfe v0.6.4 [86223c79] Graphs v1.14.0 [87dc4568] HiGHS v1.21.1 [b8f27783] MathOptInterface v1.49.0 [3b969827] MathOptSetDistances v0.2.12 [82193955] SCIP v0.12.8 [860ef19b] StableRNGs v1.0.4 [10745b16] Statistics v1.11.1 [fd094767] Suppressor v0.2.8 [ade2ca70] Dates v1.11.0 [37e2e46d] LinearAlgebra v1.13.0 [de0858da] Printf v1.11.0 [9a3f8284] Random v1.11.0 [2f01184e] SparseArrays v1.13.0 [8dfed614] Test v1.11.0 Status `/tmp/jl_D7GJvZ/Manifest.toml` [66dad0bd] AliasTables v1.1.3 [4c88cf16] Aqua v0.8.14 [ec485272] ArnoldiMethod v0.4.0 [7d9fca2a] Arpack v0.5.4 [6e4b80f9] BenchmarkTools v1.6.3 [0a1fb500] BlockDiagonals v0.2.0 [f7b14807] Bonobo v0.1.5 [36b166db] Boscia v0.2.9 [336ed68f] CSV v0.10.16 [d360d2e6] ChainRulesCore v1.26.0 [523fee87] CodecBzip2 v0.8.5 [944b1d66] CodecZlib v0.7.8 [0002e35e] CombinatorialLinearOracles v0.1.4 [bbf7d656] CommonSubexpressions v0.3.1 [34da2185] Compat v4.18.1 [187b0558] ConstructionBase v1.6.0 [1f15a43c] CxxWrap v0.17.5 [9a962f9c] DataAPI v1.16.0 [864edb3b] DataStructures v0.19.3 [e2d170a0] DataValueInterfaces v1.0.0 [163ba53b] DiffResults v1.1.0 [b552c78f] DiffRules v1.15.1 [31c24e10] Distributions v0.25.123 [ffbed154] DocStringExtensions v0.9.5 [497a8b3b] DoubleFloats v1.6.0 [e2ba6199] ExprTools v0.1.10 [48062228] FilePathsBase v0.9.24 [1a297f60] FillArrays v1.16.0 [f6369f11] ForwardDiff v1.3.2 [f55ce6ea] FrankWolfe v0.6.4 [14197337] GenericLinearAlgebra v0.3.19 [c145ed77] GenericSchur v0.5.6 [86223c79] Graphs v1.14.0 [06909019] GraphsFlows v0.1.1 [c3af3a8c] GraphsMatching v0.2.1 [87dc4568] HiGHS v1.21.1 [e91730f6] Hungarian v0.7.0 [34004b35] HypergeometricFunctions v0.3.28 [d25df0c9] Inflate v0.1.5 [842dd82b] InlineStrings v1.4.5 [92d709cd] IrrationalConstants v0.2.6 [82899510] IteratorInterfaceExtensions v1.0.0 [692b3bcd] JLLWrappers v1.7.1 [682c06a0] JSON v1.4.0 [4076af6c] JuMP v1.30.0 [14b1564f] LEMONGraphs v0.1.1 [2ab3a3ac] LogExpFunctions v0.3.29 [1914dd2f] MacroTools v0.5.16 [8c4f8055] MathOptIIS v0.1.2 [b8f27783] MathOptInterface v1.49.0 [3b969827] MathOptSetDistances v0.2.12 [e1d29d7a] Missings v1.2.0 [d8a4904e] MutableArithmetics v1.6.7 [77ba4419] NaNMath v1.1.3 [d9ec5142] NamedTupleTools v0.14.3 [bac558e1] OrderedCollections v1.8.1 [90014a1f] PDMats v0.11.37 [69de0a69] Parsers v2.8.3 [f27b6e38] Polynomials v4.1.1 [2dfb63ee] PooledArrays v1.4.3 [aea7be01] PrecompileTools v1.3.3 [21216c6a] Preferences v1.5.2 [92933f4c] ProgressMeter v1.11.0 ⌅ [dc4f5ac2] ProximalCore v0.1.2 [43287f4e] PtrArrays v1.4.0 [1fd47b50] QuadGK v2.11.2 [be4d8f0f] Quadmath v0.5.13 [189a3867] Reexport v1.2.2 [ae029012] Requires v1.3.1 [79098fc4] Rmath v0.9.0 [82193955] SCIP v0.12.8 [91c51154] SentinelArrays v1.4.9 [efcf1570] Setfield v1.1.2 [699a6c99] SimpleTraits v0.9.5 [a2af1166] SortingAlgorithms v1.2.2 [276daf66] SpecialFunctions v2.7.1 [860ef19b] StableRNGs v1.0.4 [90137ffa] StaticArrays v1.9.17 [1e83bf80] StaticArraysCore v1.4.4 [10745b16] Statistics v1.11.1 [82ae8749] StatsAPI v1.8.0 [2913bbd2] StatsBase v0.34.10 [4c63d2b9] StatsFuns v1.5.2 [ec057cc2] StructUtils v2.6.3 [fd094767] Suppressor v0.2.8 [3783bdb8] TableTraits v1.0.1 [bd369af6] Tables v1.12.1 [a759f4b9] TimerOutputs v0.5.29 [3bb67fe8] TranscodingStreams v0.11.3 [ea10d353] WeakRefStrings v1.4.2 [76eceee3] WorkerUtilities v1.6.1 [ae81ac8f] ASL_jll v0.1.3+0 ⌅ [68821587] Arpack_jll v3.5.2+0 [6e34b625] Bzip2_jll v1.0.9+0 [8fd58aa0] HiGHS_jll v1.13.1+0 [e33a78d0] Hwloc_jll v2.13.0+0 ⌅ [9cc047cb] Ipopt_jll v300.1400.1900+0 [9f9b04fa] LEMON_jll v1.3.3+0 [94ce4f54] Libiconv_jll v1.18.0+0 [d00139f3] METIS_jll v5.1.3+0 ⌅ [d7ed1dd3] MUMPS_seq_jll v500.800.100+0 [68e3532b] Ncurses_jll v6.6.0+2 [656ef2d0] OpenBLAS32_jll v0.3.30+0 [efe28fd5] OpenSpecFun_jll v0.5.6+0 [05236dd9] Readline_jll v8.3.3+0 [f50d1b31] Rmath_jll v0.5.1+0 [fc9abe76] SCIP_PaPILO_jll v1000.0.2+0 [e5ac4fe4] SCIP_jll v1000.0.2+0 ⌅ [319450e9] SPRAL_jll v2025.5.20+0 ⌅ [02c8fc9c] XML2_jll v2.13.9+0 [a65dc6b1] Xorg_libpciaccess_jll v0.18.1+0 [508c9074] bliss_jll v0.77.0+1 [28df3c45] boost_jll v1.87.0+0 [3eaa8342] libcxxwrap_julia_jll v0.14.9+0 [1317d2d5] oneTBB_jll v2022.0.0+1 [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.13.0 [4af54fe1] LazyArtifacts v1.11.0 [b27032c2] LibCURL v1.0.0 [76f85450] LibGit2 v1.11.0 [8f399da3] Libdl v1.11.0 [37e2e46d] LinearAlgebra v1.13.0 [56ddb016] Logging v1.11.0 [d6f4376e] Markdown v1.11.0 [a63ad114] Mmap v1.11.0 [ca575930] NetworkOptions v1.3.0 [44cfe95a] Pkg v1.14.0 [de0858da] Printf v1.11.0 [9abbd945] Profile v1.11.0 [9a3f8284] Random v1.11.0 [ea8e919c] SHA v1.0.0 [9e88b42a] Serialization v1.11.0 [6462fe0b] Sockets v1.11.0 [2f01184e] SparseArrays v1.13.0 [f489334b] StyledStrings v1.13.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.18.0+0 [e37daf67] LibGit2_jll v1.9.2+0 [29816b5a] LibSSH2_jll v1.11.3+1 [3a97d323] MPFR_jll v4.2.2+0 [14a3606d] MozillaCACerts_jll v2025.12.2 [4536629a] OpenBLAS_jll v0.3.30+0 [05823500] OpenLibm_jll v0.8.7+0 [458c3c95] OpenSSL_jll v3.5.5+0 [efcefdf7] PCRE2_jll v10.47.0+0 [bea87d4a] SuiteSparse_jll v7.10.1+0 [83775a58] Zlib_jll v1.3.2+0 [3161d3a3] Zstd_jll v1.5.7+1 [8e850b90] libblastrampoline_jll v5.15.0+0 [8e850ede] nghttp2_jll v1.68.0+1 [3f19e933] p7zip_jll v17.7.0+0 Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. Testing Running tests... Interface Tests seed = 0x2e6375060787c4be ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##0", var"#grad!#grad!##0", Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##1", var"#grad!#grad!##1", Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##2", var"#grad!#grad!##2", Boscia.TimeTrackingLMO{Boscia.ManagedLMO{Boscia.CubeLMO}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##5", var"#grad!#grad!##3", Boscia.TimeTrackingLMO{Boscia.ManagedLMO{Boscia.CubeLMO}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##8", var"#grad!#grad!##4", Boscia.TimeTrackingLMO{Boscia.ManagedLMO{Boscia.CubeLMO}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##11"{Float64}, var"#grad!#grad!##5"{Float64}, Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##20", var"#grad!#grad!##8", Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 Solution x = [0.0, 0.0, 0.0, 0.0, 0.8333333015441894, 0.8333333015441894, 5.0333333015441895, 2.3333333969116206, 4.933333301544189, 10.533333396911619] Objective f(x) = -63.31166666666664 Status = OPT_TREE_EMPTY Solution x = [0.0, 0.0, 0.0, 1.9999999999999996, 0.0, 0.0, 4.199999999999999, 1.4999999403953552, 4.1, 0.5999999999999999] Objective f(x) = -20.529999999999998 Status = OPT_TREE_EMPTY Callback Tests seed = 0x9eab3370242bea94 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##34", var"#grad!#grad!##14", Boscia.TimeTrackingLMO{Boscia.ManagedLMO{Boscia.CubeLMO}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 LMO Tests seed = 0x94c43f3535579e1b ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##35", var"#grad!#grad!##15", Boscia.TimeTrackingLMO{Boscia.ManagedLMO{Boscia.CubeLMO}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##47", var"#grad!#grad!##19", Boscia.TimeTrackingLMO{Boscia.ManagedLMO{Boscia.UnitSimplexLMO}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##50", var"#grad!#grad!##20", Boscia.TimeTrackingLMO{Boscia.ManagedLMO{Boscia.ReverseKnapsackLMO}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 Indicator Tests Heuristics Tests seed = 0xffb5fd60d6ec40ce ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##56", var"#grad!#grad!##22", Boscia.TimeTrackingLMO{Boscia.ManagedLMO{Boscia.UnitSimplexLMO}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##59", var"#grad!#grad!##23", Boscia.TimeTrackingLMO{Boscia.ManagedLMO{Boscia.UnitSimplexLMO}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##62", var"#grad!#grad!##24", Boscia.TimeTrackingLMO{Boscia.ManagedLMO{Boscia.UnitSimplexLMO}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(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##65", var"#grad!#grad!##25", Boscia.TimeTrackingLMO{Boscia.ManagedLMO{Boscia.CubeLMO}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution Sparse Regression Tests seed = 0xbfc689e939163abc Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Secant Lazification: true Lazification Tolerance: 2 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 2.234948e+00 2.466272e+00 2.313239e-01 1.035030e-01 2.301700e+01 1.303384e-01 9433 30 11 15 6 0 * 3 4 2.272333e+00 2.356027e+00 8.369407e-02 3.683178e-02 2.689100e+01 2.603101e-01 18 10 24 5 3 1 7 4 2.333442e+00 2.356027e+00 2.258544e-02 9.679023e-03 2.697400e+01 4.078001e-01 13 8 50 5 0 0 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Postprocessing Blended Pairwise Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Secant EPSILON: 1.0e-6 MAXITERATION: 10000 TYPE: Float64 GRADIENT_TYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime} ---------------------------------------------------------------------------------------------------------------- Type Iteration Primal Dual Dual Gap Time It/sec #ActiveSet ---------------------------------------------------------------------------------------------------------------- I 1 4.520727e+00 9.239786e-01 3.596748e+00 0.000000e+00 Inf 1 LD 2 2.356027e+00 2.356027e+00 0.000000e+00 2.448788e+00 8.167307e-01 1 Last 2 2.356027e+00 2.356027e+00 0.000000e+00 2.604196e+00 7.679912e-01 1 ---------------------------------------------------------------------------------------------------------------- PP 2 2.356027e+00 2.356027e+00 0.000000e+00 2.606839e+00 7.672126e-01 1 ---------------------------------------------------------------------------------------------------------------- fw_status = FrankWolfe.STATUS_OPTIMAL [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution Solution Statistics. Solution Status: Optimal (tolerance reached) Primal Objective: 2.3560270383685338 Dual Bound: 2.3334416027627087 Dual Gap (relative): 0.009679023284355916 Search Statistics. Total number of nodes processed: 11 Total number of lmo calls: 55 Total time (s): 32.316 LMO calls / sec: 1.7019433098155712 Nodes / sec: 0.34038866196311424 LMO calls / node: 5.0 Total number of global tightenings: 44 Global tightenings / node: 6.29 Total number of local tightenings: 47 Local tightenings / node: 6.71 Total number of potential local tightenings: 47 Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Secant Lazification: true Lazification Tolerance: 2 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 8.496573e-01 1.340657e+00 4.909993e-01 5.778792e-01 2.004800e+01 1.496409e-01 9834 169 35 72 23 1 * 45 44 1.097966e+00 1.336706e+00 2.387395e-01 2.174379e-01 2.409400e+01 3.693866e+00 18 12 742 10 0 0 100 51 1.169847e+00 1.336706e+00 1.668587e-01 1.426329e-01 2.584100e+01 5.843427e+00 28 18 1134 26 13 0 200 53 1.228891e+00 1.336706e+00 1.078147e-01 8.773334e-02 2.872300e+01 8.808272e+00 23 15 1803 23 11 2 300 53 1.261180e+00 1.336706e+00 7.552554e-02 5.988481e-02 3.169000e+01 1.113916e+01 36 23 2516 35 14 7 400 53 1.290308e+00 1.336706e+00 4.639735e-02 3.595835e-02 3.453600e+01 1.311675e+01 35 21 3210 60 13 3 500 51 1.318443e+00 1.336706e+00 1.826284e-02 1.385182e-02 3.746600e+01 1.470667e+01 29 18 3970 37 12 4 519 44 1.323630e+00 1.336706e+00 1.307586e-02 9.878789e-03 3.801800e+01 1.480877e+01 19 12 4114 6 0 0 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Postprocessing Blended Pairwise Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Secant EPSILON: 1.0e-6 MAXITERATION: 10000 TYPE: Float64 GRADIENT_TYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime} ---------------------------------------------------------------------------------------------------------------- Type Iteration Primal Dual Dual Gap Time It/sec #ActiveSet ---------------------------------------------------------------------------------------------------------------- I 1 4.288512e+00 -1.801903e+00 6.090415e+00 0.000000e+00 Inf 1 LD 2 1.337641e+00 1.296482e+00 4.115827e-02 1.572524e-01 1.271841e+01 2 LD 7 1.336859e+00 1.320369e+00 1.648953e-02 4.022485e-01 1.740218e+01 3 LD 12 1.336725e+00 1.330157e+00 6.568352e-03 4.060765e-01 2.955108e+01 3 LD 17 1.336703e+00 1.334235e+00 2.467704e-03 4.093482e-01 4.152943e+01 3 LD 22 1.336700e+00 1.335770e+00 9.299463e-04 4.127207e-01 5.330482e+01 3 LD 27 1.336700e+00 1.336349e+00 3.508540e-04 4.160338e-01 6.489857e+01 3 LD 32 1.336699e+00 1.336567e+00 1.324298e-04 4.195051e-01 7.628036e+01 3 LD 37 1.336699e+00 1.336699e+00 2.124616e-07 4.229761e-01 8.747539e+01 3 Last 37 1.336699e+00 1.336699e+00 2.124616e-07 4.286828e-01 8.631091e+01 3 ---------------------------------------------------------------------------------------------------------------- PP 37 1.336699e+00 1.336699e+00 2.124616e-07 4.318941e-01 8.566916e+01 3 ---------------------------------------------------------------------------------------------------------------- fw_status = FrankWolfe.STATUS_OPTIMAL Solution Statistics. Solution Status: Optimal (tolerance reached) Primal Objective: 1.3366994317796979 Dual Bound: 1.323629870720259 Dual Gap (relative): 0.009874030005326977 Search Statistics. Total number of nodes processed: 563 Total number of lmo calls: 4127 Total time (s): 41.081 LMO calls / sec: 100.46006669750005 Nodes / sec: 13.704632311774299 LMO calls / node: 7.3303730017761985 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 [ Info: Polish solution Non zero entries: 20th entry: 0.1417050252600687 49th entry: 0.15619441335032866 Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Secant Lazification: true Lazification Tolerance: 2 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 8.772321e-01 1.340657e+00 4.634244e-01 5.282803e-01 2.530000e-01 1.185771e+01 247 193 35 72 23 1 * 43 37 1.113988e+00 1.336706e+00 2.227181e-01 1.999287e-01 3.815000e+00 2.096986e+01 21 13 708 10 0 0 100 42 1.183882e+00 1.336706e+00 1.528237e-01 1.290870e-01 5.729000e+00 2.478618e+01 27 16 1133 42 12 6 200 42 1.241565e+00 1.336706e+00 9.514030e-02 7.662930e-02 8.605000e+00 2.812318e+01 25 16 1803 23 11 2 300 26 1.290082e+00 1.336706e+00 4.662333e-02 3.613981e-02 1.202800e+01 2.710343e+01 15 10 2579 11 7 2 359 22 1.324072e+00 1.336706e+00 1.263333e-02 9.541266e-03 1.457900e+01 2.613348e+01 46 29 3144 65 12 2 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Postprocessing Blended Pairwise Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Secant EPSILON: 1.0e-6 MAXITERATION: 10000 TYPE: Float64 GRADIENT_TYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime} ---------------------------------------------------------------------------------------------------------------- Type Iteration Primal Dual Dual Gap Time It/sec #ActiveSet ---------------------------------------------------------------------------------------------------------------- I 1 4.288512e+00 -1.801903e+00 6.090415e+00 0.000000e+00 Inf 1 LD 2 1.337641e+00 1.296482e+00 4.115827e-02 1.398138e-03 1.430474e+03 2 LD 7 1.336859e+00 1.320369e+00 1.648953e-02 6.939348e-03 1.008740e+03 3 LD 12 1.336725e+00 1.330157e+00 6.568352e-03 9.773702e-03 1.227785e+03 3 LD 17 1.336703e+00 1.334235e+00 2.467704e-03 1.253429e-02 1.356280e+03 3 LD 22 1.336700e+00 1.335770e+00 9.299463e-04 1.534410e-02 1.433776e+03 3 LD 27 1.336700e+00 1.336349e+00 3.508540e-04 1.821558e-02 1.482248e+03 3 LD 32 1.336699e+00 1.336567e+00 1.324298e-04 2.109928e-02 1.516640e+03 3 LD 37 1.336699e+00 1.336699e+00 2.124616e-07 2.435942e-02 1.518920e+03 3 Last 37 1.336699e+00 1.336699e+00 2.124616e-07 2.979393e-02 1.241864e+03 3 ---------------------------------------------------------------------------------------------------------------- PP 37 1.336699e+00 1.336699e+00 2.124616e-07 3.312117e-02 1.117110e+03 3 ---------------------------------------------------------------------------------------------------------------- fw_status = FrankWolfe.STATUS_OPTIMAL Solution Statistics. Solution Status: Optimal (tolerance reached) Primal Objective: 1.3366994317796979 Dual Bound: 1.3240724045106746 Dual Gap (relative): 0.009536508144121969 Search Statistics. Total number of nodes processed: 381 Total number of lmo calls: 3157 Total time (s): 14.627 LMO calls / sec: 215.83373213919464 Nodes / sec: 26.047719969918642 LMO calls / node: 8.286089238845145 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 [ Info: Polish solution Poisson Tests seed = 0xb546d232bbd006b1 Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Secant Lazification: true Lazification Tolerance: 2 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 -1.283465e+02 -1.092083e+02 1.913827e+01 1.752457e-01 2.014800e+01 1.488982e-01 10084 82 32 383 19 1 * 2 3 -1.283465e+02 -1.103385e+02 1.800806e+01 1.632075e-01 2.106000e+01 2.374169e-01 906 85 65 491 29 8 * 6 7 -1.283433e+02 -1.120900e+02 1.625328e+01 1.450020e-01 2.516700e+01 5.165494e-01 815 90 202 488 35 8 * 30 31 -1.281695e+02 -1.130351e+02 1.513439e+01 1.338910e-01 9.420200e+01 6.475446e-01 947 76 1072 605 33 13 42 43 -1.281660e+02 -1.130351e+02 1.513090e+01 1.338602e-01 1.200080e+02 7.082861e-01 144 20 1477 69 19 6 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Postprocessing Blended Pairwise Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Secant EPSILON: 1.0e-6 MAXITERATION: 10000 TYPE: Float64 GRADIENT_TYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime} ---------------------------------------------------------------------------------------------------------------- Type Iteration Primal Dual Dual Gap Time It/sec #ActiveSet ---------------------------------------------------------------------------------------------------------------- I 1 2.928449e+02 -3.188005e+02 6.116454e+02 0.000000e+00 Inf 1 LD 2 -1.203921e+02 -1.360930e+02 1.570095e+01 1.637070e-01 1.221695e+01 2 LD 64 -1.238280e+02 -1.284752e+02 4.647229e+00 5.049861e-01 1.267362e+02 4 LD 72 -1.241794e+02 -1.260096e+02 1.830159e+00 5.323595e-01 1.352470e+02 6 LD 97 -1.242691e+02 -1.247707e+02 5.016327e-01 5.770679e-01 1.680911e+02 8 LD 140 -1.242747e+02 -1.245211e+02 2.463894e-01 7.195775e-01 1.945586e+02 9 LD 199 -1.242770e+02 -1.243709e+02 9.391383e-02 7.949167e-01 2.503407e+02 10 LD 249 -1.242772e+02 -1.243219e+02 4.464421e-02 8.553759e-01 2.911001e+02 10 LD 293 -1.242773e+02 -1.242959e+02 1.858881e-02 9.060094e-01 3.233962e+02 11 LD 336 -1.242773e+02 -1.242842e+02 6.877225e-03 9.620233e-01 3.492639e+02 12 LD 385 -1.242773e+02 -1.242794e+02 2.111425e-03 1.022912e+00 3.763763e+02 13 LD 446 -1.242773e+02 -1.242782e+02 8.867949e-04 1.083887e+00 4.114818e+02 13 LD 482 -1.242773e+02 -1.242776e+02 3.452366e-04 1.119172e+00 4.306754e+02 13 LD 514 -1.242773e+02 -1.242774e+02 1.329673e-04 1.157623e+00 4.440135e+02 14 LD 544 -1.242773e+02 -1.242774e+02 5.235624e-05 1.189417e+00 4.573668e+02 14 LD 589 -1.242773e+02 -1.242773e+02 1.814451e-05 1.236042e+00 4.765211e+02 14 LD 636 -1.242773e+02 -1.242773e+02 8.241100e-06 1.281560e+00 4.962702e+02 14 LD 667 -1.242773e+02 -1.242773e+02 3.923840e-06 1.315252e+00 5.071272e+02 14 P 1000 -1.242773e+02 -1.242773e+02 3.923840e-06 1.684393e+00 5.936858e+02 14 P 2000 -1.242773e+02 -1.242773e+02 3.923840e-06 2.648998e+00 7.550026e+02 14 P 3000 -1.242773e+02 -1.242773e+02 3.923840e-06 3.530823e+00 8.496603e+02 14 P 4000 -1.242773e+02 -1.242773e+02 3.923840e-06 4.358148e+00 9.178211e+02 14 P 5000 -1.242773e+02 -1.242773e+02 3.923840e-06 5.158787e+00 9.692202e+02 14 P 6000 -1.242773e+02 -1.242773e+02 3.923840e-06 5.985071e+00 1.002494e+03 14 P 7000 -1.242773e+02 -1.242773e+02 3.923840e-06 6.831884e+00 1.024608e+03 14 P 8000 -1.242773e+02 -1.242773e+02 3.923840e-06 7.672926e+00 1.042627e+03 14 P 9000 -1.242773e+02 -1.242773e+02 3.923840e-06 8.496975e+00 1.059201e+03 14 P 10000 -1.242773e+02 -1.242773e+02 3.923840e-06 9.372610e+00 1.066939e+03 14 Last 10001 -1.242773e+02 -1.242773e+02 2.870234e-06 9.377275e+00 1.066515e+03 14 ---------------------------------------------------------------------------------------------------------------- PP 10001 -1.242773e+02 -1.242773e+02 2.870234e-06 9.379843e+00 1.066223e+03 14 ---------------------------------------------------------------------------------------------------------------- fw_status = FrankWolfe.STATUS_MAXITER Solution Statistics. Solution Status: Time limit reached Primal Objective: -124.2773017976507 Dual Bound: -128.16601330917666 Dual Gap (relative): 0.0312906013831681 Search Statistics. Total number of nodes processed: 85 Total number of lmo calls: 1512 Total time (s): 131.971 LMO calls / sec: 11.457062536466344 Nodes / sec: 0.644080896560608 LMO calls / node: 17.788235294117648 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: Secant Lazification: true Lazification Tolerance: 2 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: 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 -1.275506e+02 -1.214130e+02 6.137588e+00 5.055133e-02 2.669700e+01 1.123722e-01 10854 193 37 236 23 1 * 11 12 -1.270555e+02 -1.214497e+02 5.605755e+00 4.615699e-02 4.043600e+01 5.688001e-01 347 116 271 146 19 5 * 15 16 -1.268162e+02 -1.218589e+02 4.957275e+00 4.068044e-02 4.537900e+01 6.831354e-01 346 130 358 127 18 8 * 34 35 -1.261136e+02 -1.220667e+02 4.046885e+00 3.315306e-02 6.816200e+01 1.012294e+00 299 98 781 132 16 4 100 101 -1.249038e+02 -1.220667e+02 2.837118e+00 2.324235e-02 1.379140e+02 1.457430e+00 269 97 2139 127 15 5 200 183 -1.242454e+02 -1.220667e+02 2.178714e+00 1.784855e-02 2.279500e+02 1.680193e+00 268 81 3919 129 17 6 300 259 -1.238831e+02 -1.220667e+02 1.816402e+00 1.488041e-02 3.087570e+02 1.810485e+00 176 68 5573 72 13 3 400 325 -1.235853e+02 -1.220667e+02 1.518549e+00 1.244032e-02 3.822600e+02 1.896615e+00 277 103 7113 115 18 3 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(tree::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##76"{Float64}, var"#grad!#grad!##30"{Float64}, Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 500 373 -1.233598e+02 -1.220667e+02 1.293047e+00 1.059296e-02 4.437160e+02 1.967475e+00 188 83 8423 69 12 6 543 386 -1.232860e+02 -1.220667e+02 1.219301e+00 9.988811e-03 4.687470e+02 1.981879e+00 156 67 8977 65 9 2 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Postprocessing Blended Pairwise Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Secant EPSILON: 1.0e-6 MAXITERATION: 10000 TYPE: Float64 GRADIENT_TYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime} ---------------------------------------------------------------------------------------------------------------- Type Iteration Primal Dual Dual Gap Time It/sec #ActiveSet ---------------------------------------------------------------------------------------------------------------- I 1 -6.972123e+01 -1.477966e+02 7.807541e+01 0.000000e+00 Inf 1 LD 2 -1.220667e+02 -1.220667e+02 0.000000e+00 1.555094e-01 1.286096e+01 1 Last 2 -1.220667e+02 -1.220667e+02 0.000000e+00 3.100247e-01 6.451100e+00 1 ---------------------------------------------------------------------------------------------------------------- PP 2 -1.220667e+02 -1.220667e+02 0.000000e+00 3.137704e-01 6.374087e+00 1 ---------------------------------------------------------------------------------------------------------------- fw_status = FrankWolfe.STATUS_OPTIMAL [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution Solution Statistics. Solution Status: Optimal (tolerance reached) Primal Objective: -122.06670586468371 Dual Bound: -123.28600716028248 Dual Gap (relative): 0.00998881133853499 Search Statistics. Total number of nodes processed: 929 Total number of lmo calls: 8982 Total time (s): 471.557 LMO calls / sec: 19.047538261546322 Nodes / sec: 1.970069365951518 LMO calls / node: 9.668460710441336 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: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Secant Lazification: true Lazification Tolerance: 2 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: 41 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 1.673388e+02 3.296352e+02 1.622964e+02 9.698675e-01 2.034400e+01 1.474636e-01 9939 122 25 187 14 0 * 22 23 2.189285e+02 3.293084e+02 1.103800e+02 5.041828e-01 2.426400e+01 1.854599e+00 148 71 374 47 9 3 * 49 50 2.387967e+02 3.290219e+02 9.022517e+01 3.778326e-01 2.784600e+01 3.555268e+00 100 44 770 36 6 1 100 101 2.591622e+02 3.290219e+02 6.985967e+01 2.695596e-01 3.389600e+01 5.929903e+00 93 47 1459 28 6 0 200 199 2.787838e+02 3.290219e+02 5.023806e+01 1.802044e-01 4.384800e+01 9.099617e+00 56 28 2611 15 4 0 300 293 2.887784e+02 3.290219e+02 4.024347e+01 1.393576e-01 5.114500e+01 1.159449e+01 97 35 3564 38 3 1 400 333 3.010948e+02 3.290219e+02 2.792703e+01 9.275161e-02 5.636800e+01 1.300383e+01 63 23 4269 24 3 0 500 341 3.048591e+02 3.290219e+02 2.416275e+01 7.925876e-02 5.946000e+01 1.414396e+01 11 7 4749 2 0 0 600 319 3.109934e+02 3.290219e+02 1.802852e+01 5.797074e-02 6.178500e+01 1.487416e+01 15 9 5149 2 0 0 * 656 281 3.150245e+02 3.283048e+02 1.328035e+01 4.215657e-02 6.297300e+01 1.500643e+01 13 6 5350 2 0 0 700 257 3.163842e+02 3.283048e+02 1.192068e+01 3.767785e-02 6.366600e+01 1.515723e+01 5 3 5492 0 0 0 800 169 3.202719e+02 3.283048e+02 8.032945e+00 2.508164e-02 6.485100e+01 1.506530e+01 5 3 5749 0 0 0 900 77 3.246768e+02 3.283048e+02 3.628002e+00 1.117419e-02 6.607600e+01 1.490708e+01 6 4 6006 0 0 0 909 70 3.251105e+02 3.283048e+02 3.194323e+00 9.825344e-03 6.618100e+01 1.491365e+01 7 5 6027 0 0 0 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Postprocessing Blended Pairwise Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Secant EPSILON: 1.0e-6 MAXITERATION: 10000 TYPE: Float64 GRADIENT_TYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime} ---------------------------------------------------------------------------------------------------------------- Type Iteration Primal Dual Dual Gap Time It/sec #ActiveSet ---------------------------------------------------------------------------------------------------------------- I 1 3.305968e+02 3.218640e+02 8.732779e+00 0.000000e+00 Inf 1 LD 4 3.283048e+02 3.283048e+02 1.614353e-11 2.790367e-01 1.433503e+01 2 Last 4 3.283048e+02 3.283048e+02 1.614353e-11 4.356342e-01 9.182015e+00 2 ---------------------------------------------------------------------------------------------------------------- PP 4 3.283048e+02 3.283048e+02 7.071321e-11 4.394682e-01 9.101911e+00 2 ---------------------------------------------------------------------------------------------------------------- fw_status = FrankWolfe.STATUS_OPTIMAL [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution Solution Statistics. Solution Status: Optimal (tolerance reached) Primal Objective: 328.304832802951 Dual Bound: 325.11051017104506 Dual Gap (relative): 0.009825344096766884 Search Statistics. Total number of nodes processed: 987 Total number of lmo calls: 6032 Total time (s): 69.264 LMO calls / sec: 87.0870870870871 Nodes / sec: 14.24982674982675 LMO calls / node: 6.11144883485309 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: Secant Lazification: true Lazification Tolerance: 2 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: 41 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 1.673388e+02 3.296352e+02 1.622964e+02 9.698675e-01 2.395700e+01 1.252244e-01 9646 123 25 187 14 0 * 13 14 2.065766e+02 3.294602e+02 1.228837e+02 5.948578e-01 3.613900e+01 7.471153e-01 204 84 227 66 9 4 * 17 18 2.160650e+02 3.293084e+02 1.132434e+02 5.241174e-01 3.990600e+01 8.770611e-01 123 60 294 39 8 0 100 97 2.635712e+02 3.293084e+02 6.573720e+01 2.494096e-01 9.993200e+01 1.971341e+00 96 39 1444 29 5 0 * 134 131 2.677401e+02 3.290219e+02 6.128177e+01 2.288853e-01 1.206850e+02 2.195799e+00 59 32 1843 18 4 0 200 185 2.814175e+02 3.290219e+02 4.760441e+01 1.691594e-01 1.547910e+02 2.487225e+00 41 21 2513 17 3 1 300 259 2.911576e+02 3.290219e+02 3.786424e+01 1.300472e-01 1.975120e+02 2.830208e+00 67 29 3313 27 3 0 400 299 3.002241e+02 3.290219e+02 2.879781e+01 9.592105e-02 2.281530e+02 3.063734e+00 13 8 3881 3 2 1 500 329 3.057279e+02 3.290219e+02 2.329398e+01 7.619187e-02 2.530140e+02 3.276499e+00 15 8 4276 2 0 0 ┌ Warning: `peek(q::PriorityQueue)` is deprecated, use `first(q)` instead. │ caller = (::Boscia.var"#callback#build_bnb_callback##0"{Boscia.var"#callback#41#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}}})(tree::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##82"{Float64}, var"#grad!#grad!##32"{Float64}, Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime}, 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}}; worse_than_incumbent::Bool, node_infeasible::Bool, lb_update::Bool) at callbacks.jl:252 └ @ Core ~/.julia/packages/Boscia/klQke/src/callbacks.jl:252 * 560 325 3.120052e+02 3.283048e+02 1.629959e+01 5.224140e-02 2.658930e+02 3.350972e+00 13 6 4530 2 0 0 600 291 3.141195e+02 3.283048e+02 1.418535e+01 4.515908e-02 2.674770e+02 3.353559e+00 5 3 4641 0 0 0 700 203 3.179340e+02 3.283048e+02 1.037085e+01 3.261951e-02 2.706150e+02 3.359016e+00 5 3 4884 0 0 0 800 117 3.223867e+02 3.283048e+02 5.918147e+00 1.835729e-02 2.745230e+02 3.362196e+00 6 4 5150 0 0 0 849 70 3.250618e+02 3.283048e+02 3.243002e+00 9.976570e-03 2.754460e+02 3.358190e+00 5 3 5272 0 0 0 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Postprocessing Blended Pairwise Conditional Gradient Algorithm. MEMORY_MODE: FrankWolfe.InplaceEmphasis() STEPSIZE: Secant EPSILON: 1.0e-6 MAXITERATION: 10000 TYPE: Float64 GRADIENT_TYPE: Vector{Float64} LAZY: true sparsity_control: 2.0 LMO: Boscia.TimeTrackingLMO{FrankWolfe.MathOptLMO{SCIP.Optimizer}, DateTime} ---------------------------------------------------------------------------------------------------------------- Type Iteration Primal Dual Dual Gap Time It/sec #ActiveSet ---------------------------------------------------------------------------------------------------------------- I 1 3.305968e+02 3.218640e+02 8.732779e+00 0.000000e+00 Inf 1 LD 4 3.283048e+02 3.283048e+02 1.614353e-11 2.701321e-01 1.480757e+01 2 Last 4 3.283048e+02 3.283048e+02 1.614353e-11 4.231956e-01 9.451895e+00 2 ---------------------------------------------------------------------------------------------------------------- PP 4 3.283048e+02 3.283048e+02 7.071321e-11 4.265256e-01 9.378101e+00 2 ---------------------------------------------------------------------------------------------------------------- fw_status = FrankWolfe.STATUS_OPTIMAL [ Info: primal >= tree.incumbent [ Info: postsolve did not improve the solution Solution Statistics. Solution Status: Optimal (tolerance reached) Primal Objective: 328.304832802951 Dual Bound: 325.061830727639 Dual Gap (relative): 0.009976569897648902 Search Statistics. Total number of nodes processed: 925 Total number of lmo calls: 5277 Total time (s): 278.397 LMO calls / sec: 18.954945635190036 Nodes / sec: 3.3225932750712115 LMO calls / node: 5.704864864864865 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 Mean Risk Test seed = 0x6a20a95b7baa2185 Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Secant Lazification: true Lazification Tolerance: 2 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: 30 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 -8.722531e+01 -7.113598e+01 1.608933e+01 2.261771e-01 2.160600e+01 1.388503e-01 10257 104 39 3473 22 3 * 5 6 -8.650371e+01 -7.702689e+01 9.476815e+00 1.230326e-01 2.361100e+01 4.658845e-01 345 98 183 6309 20 16 * 45 46 -8.359684e+01 -7.723125e+01 6.365585e+00 8.242240e-02 4.624700e+01 1.967695e+00 572 193 1636 8318 15 14 65 66 -8.309122e+01 -7.723125e+01 5.859969e+00 7.587562e-02 6.000300e+01 2.183224e+00 105 68 2346 514 15 5 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Solution Statistics. Solution Status: Time limit reached Primal Objective: -77.23125203840895 Dual Bound: -83.09122120804807 Dual Gap (relative): 0.07587562049006809 Search Statistics. Total number of nodes processed: 131 Total number of lmo calls: 2346 Total time (s): 61.235 LMO calls / sec: 38.31142320568303 Nodes / sec: 2.1392994202661875 LMO calls / node: 17.908396946564885 Total number of global tightenings: 9 Global tightenings / node: 0.14 Total number of local tightenings: 350 Local tightenings / node: 5.38 Total number of potential local tightenings: 660 Time Limit Test seed = 0x535c9caf0ef05e16 Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Secant Lazification: true Lazification Tolerance: 2 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: 15 Number of integer variables: 15 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 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 -2.680484e+00 -2.082356e+00 5.981283e-01 2.872364e-01 2.162400e+01 1.387347e-01 11171 58 26 433 10 5 * 7 8 -2.415761e+00 -2.188606e+00 2.271548e-01 1.037897e-01 2.187500e+01 6.857143e-01 80 41 114 1258 11 6 33 4 -2.196219e+00 -2.188606e+00 7.612644e-03 3.478307e-03 2.245800e+01 1.647520e+00 20 15 429 26 0 0 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Solution Statistics. Solution Status: Optimal (tolerance reached) Primal Objective: -2.188606058331572 Dual Bound: -2.19621870243693 Dual Gap (relative): 0.003478307151886985 Search Statistics. Total number of nodes processed: 37 Total number of lmo calls: 429 Total time (s): 23.637 LMO calls / sec: 18.149511359309557 Nodes / sec: 1.5653424715488429 LMO calls / node: 11.594594594594595 Total number of global tightenings: 6 Global tightenings / node: 0.18 Total number of local tightenings: 56 Local tightenings / node: 1.7 Total number of potential local tightenings: 67 Strong Convexity and Sharpness Tests seed = 0x91f8401b601a7dec Boscia Algorithm. Parameter settings. Tree traversal strategy: Move best bound Branching strategy: Most infeasible FrankWolfe variant: Blended Pairwise Conditional Gradient Line Search Method: Secant Lazification: true Lazification Tolerance: 2 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 1.729093e+02 1.734008e+02 4.915585e-01 2.842869e-03 1.815300e+01 1.652619e-01 7415 0 6 4 2 1 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Solution Statistics. Solution Status: Optimal (tolerance reached) Primal Objective: 173.40084952968937 Dual Bound: 172.9092910024363 Dual Gap (relative): 0.002842869370426925 Search Statistics. Total number of nodes processed: 3 Total number of lmo calls: 6 Total time (s): 19.194 LMO calls / sec: 0.31259768677711786 Nodes / sec: 0.15629884338855893 LMO calls / node: 2.0 Total number of global tightenings: 9 Global tightenings / node: 9.0 Total number of local tightenings: 9 Local tightenings / node: 9.0 Total number of potential local tightenings: 18 ====================================================================================== Information request received. A stacktrace will print followed by a 1.0 second profile. --trace-compile is enabled during profile collection. ====================================================================================== cmd: /opt/julia/bin/julia 1 running 0 of 1 signal (10): User defined signal 1 epoll_pwait at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) uv__io_poll at /workspace/srcdir/libuv/src/unix/linux.c:1404 uv_run at /workspace/srcdir/libuv/src/unix/core.c:430 ijl_task_get_next at /source/src/scheduler.c:457 wait at ./task.jl:1246 wait_forever at ./task.jl:1168 jfptr_wait_forever_0.1 at /opt/julia/lib/julia/sys.so (unknown line) _jl_invoke at /source/src/gf.c:4113 [inlined] ijl_apply_generic at /source/src/gf.c:4339 jl_apply at /source/src/julia.h:2295 [inlined] start_task at /source/src/task.c:1275 unknown function (ip: (nil)) at (unknown file) ============================================================== Profile collected. A report will print at the next yield point. Disabling --trace-compile ============================================================== ┌ Warning: There were no samples collected in one or more groups. │ This may be due to idle threads, or you may need to run your │ program longer (perhaps by running it multiple times), │ or adjust the delay between samples with `Profile.init()`. └ @ Profile /opt/julia/share/julia/stdlib/v1.14/Profile/src/Profile.jl:1361 Overhead ╎ [+additional indent] Count File:Line Function ========================================================= Thread 1 (default) Task 0x00007f618c889960 Total snapshots: 477. Utilization: 0% ╎477 @Base/task.jl:1168 wait_forever() 476╎ 477 @Base/task.jl:1246 wait() [1] signal 15: Terminated in expression starting at /PkgEval.jl/scripts/evaluate.jl:214 epoll_pwait at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) uv__io_poll at /workspace/srcdir/libuv/src/unix/linux.c:1404 uv_run at /workspace/srcdir/libuv/src/unix/core.c:430 ijl_task_get_next at /source/src/scheduler.c:457 wait at ./task.jl:1246 wait_forever at ./task.jl:1168 jfptr_wait_forever_0.1 at /opt/julia/lib/julia/sys.so (unknown line) _jl_invoke at /source/src/gf.c:4113 [inlined] ijl_apply_generic at /source/src/gf.c:4339 jl_apply at /source/src/julia.h:2295 [inlined] start_task at /source/src/task.c:1275 unknown function (ip: (nil)) at (unknown file) Allocations: 18507590 (Pool: 18506907; Big: 683); GC: 15 PkgEval terminated after 2726.11s: test duration exceeded the time limit