Open facq opened 7 years ago
Hi !
very useful module :)
but i got a problem trying to save a "Model" data structure from JuMP package.
i use julia 0.6.0
here is my test script :
> using JuMP > using Clp > #using CPLEX > > using JLD > > m = Model(solver = ClpSolver()) > #m = Model(solver = CplexSolver()) > @variable(m, 0 <= x <= 2 ) > @variable(m, 0 <= y <= 30 ) > > @objective(m, Max, 5x + 3*y ) > @constraint(m, 1x + 5y <= 3.0 ) > > print(m) > > save("/tmp/dump.jld", "model", m) > > status = solve(m) > > println("Objective value: ", getobjectivevalue(m)) > println("x = ", getvalue(x)) > println("y = ", getvalue(y)) > > ########## > > n= load("/tmp/dump.jld", "model") > > status = solve(n) > > println("Objective value: ", getobjectivevalue(n)) > println("x = ", getvalue(x)) > println("y = ", getvalue(y)) >
and here what i get :
Max 5 x + 3 y Subject to x + 5 y ≤ 3 0 ≤ x ≤ 2 0 ≤ y ≤ 30 WARNING: Compat.ASCIIString is deprecated, use String instead. likely near Julia/jumptest.jl:21 WARNING: Compat.UTF8String is deprecated, use String instead. likely near Julia/jumptest.jl:21 WARNING: Compat.UTF8String is deprecated, use String instead. likely near Julia/jumptest.jl:21 WARNING: Compat.UTF8String is deprecated, use String instead. likely near Julia/jumptest.jl:21 ERROR: LoadError: StackOverflowError: Stacktrace: [1] gen_h5convert(::JLD.JldFile, ::Any) at /home/.julia/v0.6/JLD/src/jld_types.jl:609 [2] #write_compound#21(::Array{Any,1}, ::Function, ::JLD.JldGroup, ::String, ::JuMP.GenericAffExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:701 [3] _write(::JLD.JldGroup, ::String, ::JuMP.GenericAffExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:693 [4] write_ref(::JLD.JldFile, ::JuMP.GenericAffExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:662 [5] macro expansion at /home/.julia/v0.6/JLD/src/jld_types.jl:669 [inlined] [6] h5convert!(::Ptr{UInt8}, ::JLD.JldFile, ::JuMP.GenericQuadExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/jld_types.jl:685 [7] #write_compound#21(::Array{Any,1}, ::Function, ::JLD.JldGroup, ::String, ::JuMP.GenericQuadExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:704 [8] _write(::JLD.JldGroup, ::String, ::JuMP.GenericQuadExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:693 [9] write_ref(::JLD.JldFile, ::JuMP.GenericQuadExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:662 [10] macro expansion at /home/.julia/v0.6/JLD/src/jld_types.jl:669 [inlined] [11] h5convert!(::Ptr{UInt8}, ::JLD.JldFile, ::JuMP.Model, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/jld_types.jl:685 [12] #write_compound#21(::Array{Any,1}, ::Function, ::JLD.JldGroup, ::String, ::JuMP.Model, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:704 [13] _write(::JLD.JldGroup, ::String, ::JuMP.Model, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:693 [14] write_ref(::JLD.JldFile, ::JuMP.Model, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:662 [15] macro expansion at /home/.julia/v0.6/JLD/src/jld_types.jl:669 [inlined] [16] h5convert!(::Ptr{UInt8}, ::JLD.JldFile, ::JuMP.Variable, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/jld_types.jl:685 [17] #write_compound#21(::Array{Any,1}, ::Function, ::JLD.JldGroup, ::String, ::JuMP.Variable, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:704 [18] _write(::JLD.JldGroup, ::String, ::JuMP.Variable, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:693 [19] write_ref(::JLD.JldFile, ::JuMP.Variable, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:662 [20] h5convert_array(::JLD.JldFile, ::Array{JuMP.Variable,1}, ::JLD.JldDatatype, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:607 [21] #_write#17(::Array{Any,1}, ::Function, ::JLD.JldGroup, ::String, ::Array{JuMP.Variable,1}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:570 [22] _write(::JLD.JldGroup, ::String, ::Array{JuMP.Variable,1}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:568 [23] write_ref(::JLD.JldFile, ::Array{JuMP.Variable,1}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:662 [24] macro expansion at /home/.julia/v0.6/JLD/src/jld_types.jl:669 [inlined] [25] h5convert!(::Ptr{UInt8}, ::JLD.JldFile, ::JuMP.GenericAffExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/jld_types.jl:685 [26] #write_compound#21(::Array{Any,1}, ::Function, ::JLD.JldGroup, ::String, ::JuMP.GenericAffExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:704 [27] _write(::JLD.JldGroup, ::String, ::JuMP.GenericAffExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:693 [28] write_ref(::JLD.JldFile, ::JuMP.GenericAffExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:662 [29] macro expansion at /home/.julia/v0.6/JLD/src/jld_types.jl:669 [inlined] [30] h5convert!(::Ptr{UInt8}, ::JLD.JldFile, ::JuMP.GenericQuadExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/jld_types.jl:685 [31] #write_compound#21(::Array{Any,1}, ::Function, ::JLD.JldGroup, ::String, ::JuMP.GenericQuadExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:704 [32] _write(::JLD.JldGroup, ::String, ::JuMP.GenericQuadExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:693 [33] write_ref(::JLD.JldFile, ::JuMP.GenericQuadExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:662 [34] macro expansion at /home/.julia/v0.6/JLD/src/jld_types.jl:669 [inlined] [35] h5convert!(::Ptr{UInt8}, ::JLD.JldFile, ::JuMP.Model, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/jld_types.jl:685 [36] #write_compound#21(::Array{Any,1}, ::Function, ::JLD.JldGroup, ::String, ::JuMP.Model, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:704 [37] _write(::JLD.JldGroup, ::String, ::JuMP.Model, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:693 [38] write_ref(::JLD.JldFile, ::JuMP.Model, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:662 [39] macro expansion at /home/.julia/v0.6/JLD/src/jld_types.jl:669 [inlined] [40] h5convert!(::Ptr{UInt8}, ::JLD.JldFile, ::JuMP.Variable, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/jld_types.jl:685 [41] #write_compound#21(::Array{Any,1}, ::Function, ::JLD.JldGroup, ::String, ::JuMP.Variable, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:704 [42] _write(::JLD.JldGroup, ::String, ::JuMP.Variable, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:693 [43] write_ref(::JLD.JldFile, ::JuMP.Variable, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:662 [44] h5convert_array(::JLD.JldFile, ::Array{JuMP.Variable,1}, ::JLD.JldDatatype, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:607 [45] #_write#17(::Array{Any,1}, ::Function, ::JLD.JldGroup, ::String, ::Array{JuMP.Variable,1}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:570 [46] _write(::JLD.JldGroup, ::String, ::Array{JuMP.Variable,1}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:568 [47] write_ref(::JLD.JldFile, ::Array{JuMP.Variable,1}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:662 [48] macro expansion at /home/.julia/v0.6/JLD/src/jld_types.jl:669 [inlined] ... ... ... [23721] write_ref(::JLD.JldFile, ::JuMP.GenericQuadExpr{Float64,JuMP.Variable}, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:662 [23722] macro expansion at /home/.julia/v0.6/JLD/src/jld_types.jl:669 [inlined] [23723] h5convert!(::Ptr{UInt8}, ::JLD.JldFile, ::JuMP.Model, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/jld_types.jl:685 [23724] #write_compound#21(::Array{Any,1}, ::Function, ::JLD.JldFile, ::String, ::JuMP.Model, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:704 [23725] #write#14(::Array{Any,1}, ::Function, ::JLD.JldFile, ::String, ::JuMP.Model, ::JLD.JldWriteSession) at /home/.julia/v0.6/JLD/src/JLD.jl:520 [23726] (::JLD.##34#35{String,JuMP.Model,Tuple{}})(::JLD.JldFile) at /home/.julia/v0.6/JLD/src/JLD.jl:1260 [23727] #jldopen#11(::Array{Any,1}, ::Function, ::JLD.##34#35{String,JuMP.Model,Tuple{}}, ::String, ::Vararg{String,N} where N) at /home/.julia/v0.6/JLD/src/JLD.jl:256 [23728] (::JLD.#kw##jldopen)(::Array{Any,1}, ::JLD.#jldopen, ::Function, ::String, ::String) at ./<missing>:0 [23729] #save#33(::Bool, ::Bool, ::Function, ::FileIO.File{FileIO.DataFormat{:JLD}}, ::String, ::JuMP.Model) at /home/.julia/v0.6/JLD/src/JLD.jl:1258 [23730] save(::FileIO.File{FileIO.DataFormat{:JLD}}, ::String, ::JuMP.Model) at /home/.julia/v0.6/JLD/src/JLD.jl:1255 [23731] #save#14(::Array{Any,1}, ::Function, ::String, ::String, ::Vararg{Any,N} where N) at /home/.julia/v0.6/FileIO/src/loadsave.jl:61 [23732] save(::String, ::String, ::JuMP.Model) at /home/.julia/v0.6/FileIO/src/loadsave.jl:61 [23733] include_from_node1(::String) at ./loading.jl:569 [23734] include(::String) at ./sysimg.jl:14 [23735] process_options(::Base.JLOptions) at ./client.jl:305 [23736] _start() at ./client.jl:371 while loading Julia/jumptest.jl, in expression starting on line 21
i tried in julia 0.5.2 also, the error looks like the same :(
Hi !
very useful module :)
but i got a problem trying to save a "Model" data structure from JuMP package.
i use julia 0.6.0
here is my test script :
and here what i get :