GithubHelp home page GithubHelp logo

glpkmathproginterface.jl's People

Contributors

blegat avatar carlobaldassi avatar chriscoey avatar czlee avatar femtocleaner[bot] avatar iainnz avatar joaquimg avatar joehuchette avatar juliatagbot avatar mileslucas avatar mlubin avatar odow avatar rschwarz avatar sburer avatar vitornesello avatar yeesian avatar yuyichao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

glpkmathproginterface.jl's Issues

[PkgEval] GLPKMathProgInterface may have a testing issue on Julia 0.3 (2014-06-21)

PackageEvaluator.jl is a script that runs nightly. It attempts to load all Julia packages and run their tests (if available) on both the stable version of Julia (0.2) and the nightly build of the unstable version (0.3). The results of this script are used to generate a package listing enhanced with testing results.

On Julia 0.3

  • On 2014-06-19 the testing status was Tests pass.
  • On 2014-06-21 the testing status changed to Tests fail, but package loads.

Tests pass. means that PackageEvaluator found the tests for your package, executed them, and they all passed.

Tests fail, but package loads. means that PackageEvaluator found the tests for your package, executed them, and they didn't pass. However, trying to load your package with using worked.

This issue was filed because your testing status became worse. No additional issues will be filed if your package remains in this state, and no issue will be filed if it improves. If you'd like to opt-out of these status-change messages, reply to this message saying you'd like to and @IainNZ will add an exception. If you'd like to discuss PackageEvaluator.jl please file an issue at the repository. For example, your package may be untestable on the test machine due to a dependency - an exception can be added.

Test log:

INFO: Installing BinDeps v0.2.14
INFO: Installing GLPK v0.2.11
INFO: Installing GLPKMathProgInterface v0.1.4
INFO: Installing MathProgBase v0.2.0
INFO: Installing URIParser v0.0.2
INFO: Building GLPK
INFO: Package database updated
ERROR: no method addvar!(GLPKMathProgModelLP, Int64, Float64, Int64)
 in linprogsolvertest at /home/idunning/pkgtest/.julia/v0.3/MathProgBase/test/linproginterface.jl:116
 in include at ./boot.jl:244
 in include_from_node1 at loading.jl:128
 in process_options at ./client.jl:285
 in _start at ./client.jl:354
while loading /home/idunning/pkgtest/.julia/v0.3/GLPKMathProgInterface/test/runtests.jl, in expression starting on line 7
INFO: Package database updated

passing parameters

How does one pass in time limit, absolute optimality gap, and relative optimality gap stopping condition parameters to GPLK when using const solver = GLPKSolverMIP() ?

fails new unit tests

I just added some long overdue unit testing for the LinprogSolver interface (available in MathProgBase master). GLPKMathProgInterface seems to fail:

include(joinpath(Pkg.dir("MathProgBase"),"test","linproginterface.jl"))
using GLPKMathProgInterface
m = GLPKMathProgInterface.GLPKInterfaceLP.model()
linprogsolvertest(m)

gives:

ERROR: test error during :((getvarLB(m)==[0.0,0.0]))
get_num_cols not defined
 in getvarLB at /home/mlubin/.julia/GLPKMathProgInterface/src/GLPKInterfaceBase.jl:121
 in anonymous at test.jl:63
 in do_test at test.jl:36
 in linprogsolvertest at /home/mlubin/.julia/MathProgBase/test/linproginterface.jl:13

implement getinfeasibilityray and getunboundedray

I recently added getinfeasibilityray and getunboundedray to MathProgBase. (These are standard features of LP interfaces and are important for implementing advanced decomposition techniques.) The only potential issue when implementing this is the sign of the infeasibility ray, which is not standard across solvers. You may need to flip the sign of the vector provided by GLPK in order to pass the new tests.

Datatype has no field names, used to work....

I'm getting

ERROR: type DataType has no field names
in model at C:\Users\Blair.julia\v0.5\GLPKMathProgInterface\src\GLPKInterfaceMIP.jl:187
in _buildInternalModel_nlp at C:\Users\Blair.julia\v0.5\JuMP\src\nlp.jl:538
in buildInternalModel at C:\Users\Blair.julia\v0.5\JuMP\src\solvers.jl:186
in solve at C:\Users\Blair.julia\v0.5\JuMP\src\solvers.jl:77
in eval at boot.jl:264

This looks like a regression, since it used to work, and line which fails is from the last checkin.

if this IS expected behavour, how do I specify field names so I can run the solver?

GLPK fails when non-integer bounds given for integer variables

See jump-dev/JuMP.jl#71, in particular https://github.com/JuliaOpt/JuMP.jl/blob/master/test/probmod.jl#L29.

Non-integer bounds have a standard interpretation and are used quite frequently in practice; they should be rounded up or down if given as a lower or upper bound, respectively. As part of presenting a standardized interface, I believe that GLPKMathProgInterface should make this translation transparently so that providing non-integer bounds "just works".

[PkgEval] GLPKMathProgInterface may have a testing issue on Julia 0.4 (2014-09-30)

PackageEvaluator.jl is a script that runs nightly. It attempts to load all Julia packages and run their tests (if available) on both the stable version of Julia (0.3) and the nightly build of the unstable version (0.4). The results of this script are used to generate a package listing enhanced with testing results.

On Julia 0.4

  • On 2014-09-29 the testing status was Tests pass.
  • On 2014-09-30 the testing status changed to Tests fail, but package loads.

Tests pass. means that PackageEvaluator found the tests for your package, executed them, and they all passed.

Tests fail, but package loads. means that PackageEvaluator found the tests for your package, executed them, and they didn't pass. However, trying to load your package with using worked.

This error on Julia 0.4 is possibly due to recently merged pull request JuliaLang/julia#8493.
This issue was filed because your testing status became worse. No additional issues will be filed if your package remains in this state, and no issue will be filed if it improves. If you'd like to opt-out of these status-change messages, reply to this message saying you'd like to and @IainNZ will add an exception. If you'd like to discuss PackageEvaluator.jl please file an issue at the repository. For example, your package may be untestable on the test machine due to a dependency - an exception can be added.

Test log:

>>> 'Pkg.add("GLPKMathProgInterface")' log
INFO: Installing BinDeps v0.3.5
INFO: Installing GLPK v0.2.11
INFO: Installing GLPKMathProgInterface v0.1.8
INFO: Installing MathProgBase v0.3.0
INFO: Installing SHA v0.0.3
INFO: Installing URIParser v0.0.3
INFO: Building GLPK
INFO: Package database updated

>>> 'using GLPKMathProgInterface' log
Julia Version 0.4.0-dev+856
Commit 46c7bbf (2014-09-30 04:44 UTC)
Platform Info:
  System: Linux (x86_64-unknown-linux-gnu)
  CPU: Intel(R) Xeon(R) CPU E5-2650 0 @ 2.00GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Sandybridge)
  LAPACK: libopenblas
  LIBM: libopenlibm
  LLVM: libLLVM-3.3

>>> test log
ERROR: GLPKError("integer-valued array required, or [] or nothing")
 in convert_vecornothing at /home/idunning/pkgtest/.julia/v0.4/GLPK/src/GLPK.jl:293
 in set_mat_col at /home/idunning/pkgtest/.julia/v0.4/GLPK/src/GLPK.jl:820
 in addvar! at /home/idunning/pkgtest/.julia/v0.4/GLPKMathProgInterface/src/GLPKInterfaceBase.jl:360
 in linprogsolvertest at /home/idunning/pkgtest/.julia/v0.4/MathProgBase/test/linproginterface.jl:116
 in include at ./boot.jl:245
 in include_from_node1 at loading.jl:128
 in process_options at ./client.jl:285
 in _start at ./client.jl:354
 in _start_3B_3624 at /home/idunning/julia04/usr/bin/../lib/julia/sys.so
while loading /home/idunning/pkgtest/.julia/v0.4/GLPKMathProgInterface/test/runtests.jl, in expression starting on line 7
Testing linprog with solver GLPKSolverLP
Passed

INFO: Testing GLPKMathProgInterface
========================[ ERROR: GLPKMathProgInterface ]========================

failed process: Process(`/home/idunning/julia04/usr/bin/julia /home/idunning/pkgtest/.julia/v0.4/GLPKMathProgInterface/test/runtests.jl`, ProcessExited(1)) [1]

================================================================================
INFO: No packages to install, update or remove
ERROR: GLPKMathProgInterface had test errors
 in error at error.jl:21
 in test at pkg/entry.jl:719
 in anonymous at pkg/dir.jl:28
 in cd at ./file.jl:20
 in cd at pkg/dir.jl:28
 in test at pkg.jl:68
 in process_options at ./client.jl:213
 in _start at ./client.jl:354
 in _start_3B_3624 at /home/idunning/julia04/usr/bin/../lib/julia/sys.so


>>> end of log

Lazy callback error

When I want to use lazy callback using GLPK I get the following error message:

ERROR: LoadError: MethodError: `cbgetmipsolution` has no method matching cbgetmipsolution(::GLPKMathProgInterface.GLPKInterfaceMIP.GLPKCallbackData)
Closest candidates are:
  cbgetmipsolution(::GLPKMathProgInterface.GLPKInterfaceMIP.GLPKCallbackData, !Matched::Array{T,1})

I need the signature match with other mip solvers like CPLEX and GuRoBi (I can hack this to my code in the worst case though if its a big overhaul), many thanks!!

[PkgEval] GLPKMathProgInterface may have a testing issue on Julia 0.4 (2014-10-28)

PackageEvaluator.jl is a script that runs nightly. It attempts to load all Julia packages and run their tests (if available) on both the stable version of Julia (0.3) and the nightly build of the unstable version (0.4). The results of this script are used to generate a package listing enhanced with testing results.

On Julia 0.4

  • On 2014-10-27 the testing status was Tests pass.
  • On 2014-10-28 the testing status changed to Tests fail, but package loads.

Tests pass. means that PackageEvaluator found the tests for your package, executed them, and they all passed.

Tests fail, but package loads. means that PackageEvaluator found the tests for your package, executed them, and they didn't pass. However, trying to load your package with using worked.

This issue was filed because your testing status became worse. No additional issues will be filed if your package remains in this state, and no issue will be filed if it improves. If you'd like to opt-out of these status-change messages, reply to this message saying you'd like to and @IainNZ will add an exception. If you'd like to discuss PackageEvaluator.jl please file an issue at the repository. For example, your package may be untestable on the test machine due to a dependency - an exception can be added.

Test log:

>>> 'Pkg.add("GLPKMathProgInterface")' log

WARNING: deprecated syntax "{}" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/BinDeps.jl:103.
Use "[]" instead.

WARNING: deprecated syntax "{}" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/BinDeps.jl:104.
Use "[]" instead.

WARNING: deprecated syntax "(String=>String)[]" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/BinDeps.jl:146.
Use "Dict{String,String}()" instead.

WARNING: deprecated syntax "(String=>String)[]" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/BinDeps.jl:147.
Use "Dict{String,String}()" instead.

WARNING: deprecated syntax "(String=>String)[]" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/BinDeps.jl:148.
Use "Dict{String,String}()" instead.

WARNING: deprecated syntax "(String=>String)[]" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/BinDeps.jl:149.
Use "Dict{String,String}()" instead.

WARNING: deprecated syntax "{}" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/dependencies.jl:87.
Use "[]" instead.

WARNING: deprecated syntax "(Symbol=>Any)[]" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/dependencies.jl:224.
Use "Dict{Symbol,Any}()" instead.

WARNING: deprecated syntax "{a=>b for (a,b) in c}" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/dependencies.jl:256.
Use "Dict{Any,Any}([a=>b for (a,b) in c])" instead.

WARNING: deprecated syntax "{}" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/dependencies.jl:352.
Use "[]" instead.

WARNING: deprecated syntax "(Symbol=>Any)[]" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/dependencies.jl:383.
Use "Dict{Symbol,Any}()" instead.

WARNING: deprecated syntax "{a=>b, ...}" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/dependencies.jl:387.
Use "Dict{Any,Any}(a=>b, ...)" instead.

WARNING: deprecated syntax "(Any=>Any)[]" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/dependencies.jl:494.
Use "Dict{Any,Any}()" instead.

WARNING: deprecated syntax "(Any=>Any)[]" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/dependencies.jl:555.
Use "Dict{Any,Any}()" instead.

WARNING: deprecated syntax "(Any=>Any)[]" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/dependencies.jl:660.
Use "Dict{Any,Any}()" instead.

WARNING: deprecated syntax "{}" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/dependencies.jl:889.
Use "[]" instead.

WARNING: deprecated syntax "{}" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/dependencies.jl:959.
Use "[]" instead.

WARNING: deprecated syntax "{}" at /home/idunning/pkgtest/.julia/v0.4/BinDeps/src/debug.jl:51.
Use "[]" instead.

WARNING: deprecated syntax "{a=>b, ...}" at /home/idunning/pkgtest/.julia/v0.4/GLPK/deps/build.jl:18.
Use "Dict{Any,Any}(a=>b, ...)" instead.

WARNING: deprecated syntax "{a=>b, ...}" at /home/idunning/pkgtest/.julia/v0.4/GLPK/deps/build.jl:24.
Use "Dict{Any,Any}(a=>b, ...)" instead.
INFO: Installing BinDeps v0.3.6
INFO: Installing GLPK v0.2.12
INFO: Installing GLPKMathProgInterface v0.1.8
INFO: Installing MathProgBase v0.3.2
INFO: Installing SHA v0.0.3
INFO: Installing URIParser v0.0.3
INFO: Building GLPK
INFO: Package database updated

>>> 'using GLPKMathProgInterface' log

WARNING: deprecated syntax "(Uint=>Bool)[]" at /home/idunning/pkgtest/.julia/v0.4/GLPK/src/GLPK_checks.jl:19.
Use "Dict{Uint,Bool}()" instead.
Julia Version 0.4.0-dev+1330
Commit 7fdc860 (2014-10-28 03:56 UTC)
Platform Info:
  System: Linux (x86_64-unknown-linux-gnu)
  CPU: Intel(R) Xeon(R) CPU E5-2650 0 @ 2.00GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Sandybridge)
  LAPACK: libopenblas
  LIBM: libopenlibm
  LLVM: libLLVM-3.3

>>> test log

WARNING: deprecated syntax "(Uint=>Bool)[]" at /home/idunning/pkgtest/.julia/v0.4/GLPK/src/GLPK_checks.jl:19.
Use "Dict{Uint,Bool}()" instead.
ERROR: `linprog` has no method matching linprog(::Array{Int64,1}, ::Array{Int64,2}, ::Char, ::Float64, ::Int64, ::Float64, ::GLPKSolverLP)
 in linprogtest at /home/idunning/pkgtest/.julia/v0.4/MathProgBase/test/linprog.jl:11
 in include at ./boot.jl:242
 in include_from_node1 at loading.jl:128
 in process_options at ./client.jl:293
 in _start at ./client.jl:362
 in _start_3B_3769 at /home/idunning/julia04/usr/bin/../lib/julia/sys.so
while loading /home/idunning/pkgtest/.julia/v0.4/GLPKMathProgInterface/test/runtests.jl, in expression starting on line 4
Testing linprog with solver GLPKSolverLP

INFO: Testing GLPKMathProgInterface
========================[ ERROR: GLPKMathProgInterface ]========================

failed process: Process(`/home/idunning/julia04/usr/bin/julia /home/idunning/pkgtest/.julia/v0.4/GLPKMathProgInterface/test/runtests.jl`, ProcessExited(1)) [1]

================================================================================
INFO: No packages to install, update or remove
ERROR: GLPKMathProgInterface had test errors
 in error at error.jl:21
 in test at pkg/entry.jl:719
 in anonymous at pkg/dir.jl:28
 in cd at ./file.jl:20
 in cd at pkg/dir.jl:28
 in test at pkg.jl:68
 in process_options at ./client.jl:221
 in _start at ./client.jl:362
 in _start_3B_3769 at /home/idunning/julia04/usr/bin/../lib/julia/sys.so


>>> end of log

readme outdated

The README should be updated to reflect how solvers/parameters are specified in the latest version of MathProgBase (which will be pushed to metadata soon).

Callbacks are segfaulting on Julia master?

From this Travis run:

[callback] Test user cuts
     - With solver GLPKMathProgInterface.GLPKInterfaceMIP.GLPKSolverMIP
WARNING: convert{T}(p::Type{Ptr{T}},a::Array) is deprecated, use convert(p,pointer(a)) instead.
 in depwarn at ./deprecated.jl:40
 in convert at deprecated.jl:29
 in unsafe_convert at deprecated.jl:432
 in ios_add_row at /home/travis/.julia/v0.4/GLPK/src/GLPK.jl:223
 in cbaddcut! at /home/travis/.julia/v0.4/GLPKMathProgInterface/src/GLPKInterfaceMIP.jl:306
 in addUserCut at /home/travis/.julia/v0.4/JuMP/src/callbacks.jl:224
 in mycutgenerator at /home/travis/build/JuliaOpt/JuMP.jl/test/callback.jl:215
 in cutcallback at /home/travis/.julia/v0.4/JuMP/src/callbacks.jl:87
 in anonymous at /home/travis/.julia/v0.4/JuMP/src/callbacks.jl:100
 in _internal_callback at /home/travis/.julia/v0.4/GLPKMathProgInterface/src/GLPKInterfaceMIP.jl:150
WARNING: convert(::Type{Ptr}, ::Array{UInt8,1}) methods should be converted to be methods of unsafe_convert
 in depwarn at ./deprecated.jl:40
 in unsafe_convert at deprecated.jl:433
 in ios_add_row at /home/travis/.julia/v0.4/GLPK/src/GLPK.jl:223
 in cbaddcut! at /home/travis/.julia/v0.4/GLPKMathProgInterface/src/GLPKInterfaceMIP.jl:306
 in addUserCut at /home/travis/.julia/v0.4/JuMP/src/callbacks.jl:224
 in mycutgenerator at /home/travis/build/JuliaOpt/JuMP.jl/test/callback.jl:215
 in cutcallback at /home/travis/.julia/v0.4/JuMP/src/callbacks.jl:87
 in anonymous at /home/travis/.julia/v0.4/JuMP/src/callbacks.jl:100
 in _internal_callback at /home/travis/.julia/v0.4/GLPKMathProgInterface/src/GLPKInterfaceMIP.jl:150
signal (11): Segmentation fault
unknown function (ip: -8761766)
unknown function (ip: -8756527)
unknown function (ip: -8758438)
jl_gc_collect at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
alloc_3w at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
jl_alloc_tuple_uninit at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
jl_alloc_tuple at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
unknown function (ip: -8911905)
jl_function_ptr at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
_col_is_valid at /home/travis/.julia/v0.4/GLPK/src/GLPK_checks.jl:222
get_col_prim at /home/travis/.julia/v0.4/GLPK/src/GLPK.jl:49
cbgetlpsolution at /home/travis/.julia/v0.4/GLPKMathProgInterface/src/GLPKInterfaceMIP.jl:221
cutcallback at /home/travis/.julia/v0.4/JuMP/src/callbacks.jl:84
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
anonymous at /home/travis/.julia/v0.4/JuMP/src/callbacks.jl:100
_internal_callback at /home/travis/.julia/v0.4/GLPKMathProgInterface/src/GLPKInterfaceMIP.jl:150
jlcapi__internal_callback_46344 at  (unknown line)
_glp_ios_driver at /home/travis/.julia/v0.4/GLPK/deps/src/glpk-4.52/src/glpios03.c:1187
unknown function (ip: 8032)
/home/travis/build.sh: line 41: 14526 Segmentation fault      julia test/runtests.jl

Installation issue

Hi All,

I'm trying to install GLPK on Linux. When it goes to build from source, I get the following error:

My guess is that LD_LIBRARY_PATH is not pointing to the right place... Where should it be pointing, please?

VG

6 22","LD_LIBRARY_PATH=/home/guptavis/gurobi602/linux64/lib","OPENBLAS_NUM_THREADS=8","XDG_SESSION_COOKIE=1766dc75ac04d654b334f8a100000003-1425787577.86657-428772456","CPPFLAGS= -I/home/guptavis/.julia/v0.3/GLPK/deps/usr/include -I/usr//include","MAIL=/var/mail/guptavis","LANG=en_US.UTF-8","LDFLAGS= -L/home/guptavis/.julia/v0.3/GLPK/deps/usr/lib -L/usr//lib -Wl,-rpath -Wl,/home/guptavis/.julia/v0.3/GLPK/deps/usr/lib","SHLVL=1","LOGNAME=guptavis","XDG_RUNTIME_DIR=/run/user/1000","XDG_SESSION_ID=6","GUROBI_HOME=/home/guptavis/gurobi602/linux64","QT_QPA_PLATFORMTHEME=appmenu-qt5","SSH_CLIENT=104.173.43.39 60500 22","_=/usr/bin/julia","PKG_CONFIG_PATH=/home/guptavis/.julia/v0.3/GLPK/deps/usr/lib/pkgconfig","USER=guptavis","SSH_TTY=/dev/pts/7","LESSCLOSE=/usr/bin/lesspipe %s %s","TERM=xterm-256color","HOME=/home/guptavis","LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:"]), ProcessExited(1)) [1]
while loading /home/guptavis/.julia/v0.3/GLPK/deps/build.jl, in expression starting on line 66

[PkgEval] GLPKMathProgInterface may have a testing issue on Julia 0.2 (2014-06-21)

PackageEvaluator.jl is a script that runs nightly. It attempts to load all Julia packages and run their tests (if available) on both the stable version of Julia (0.2) and the nightly build of the unstable version (0.3). The results of this script are used to generate a package listing enhanced with testing results.

On Julia 0.2

  • On 2014-06-19 the testing status was Tests pass.
  • On 2014-06-21 the testing status changed to Tests fail, but package loads.

Tests pass. means that PackageEvaluator found the tests for your package, executed them, and they all passed.

Tests fail, but package loads. means that PackageEvaluator found the tests for your package, executed them, and they didn't pass. However, trying to load your package with using worked.

This issue was filed because your testing status became worse. No additional issues will be filed if your package remains in this state, and no issue will be filed if it improves. If you'd like to opt-out of these status-change messages, reply to this message saying you'd like to and @IainNZ will add an exception. If you'd like to discuss PackageEvaluator.jl please file an issue at the repository. For example, your package may be untestable on the test machine due to a dependency - an exception can be added.

Test log:

INFO: Cloning cache of GLPKMathProgInterface from git://github.com/JuliaOpt/GLPKMathProgInterface.jl.git
INFO: Installing BinDeps v0.2.14
INFO: Installing GLPK v0.2.11
INFO: Installing GLPKMathProgInterface v0.1.4
INFO: Installing MathProgBase v0.2.0
INFO: Installing URIParser v0.0.2
INFO: Building GLPK
INFO: REQUIRE updated.
ERROR: no method addvar!(GLPKMathProgModelLP,Int64,Float64,Int64)
 in linprogsolvertest at /home/idunning/pkgtest/.julia/v0.2/MathProgBase/test/linproginterface.jl:116
 in include at boot.jl:238
at /home/idunning/pkgtest/.julia/v0.2/GLPKMathProgInterface/test/runtests.jl:7
INFO: REQUIRE updated.

heuristic callbacks don't check feasibility

According to the documentation for glp_ios_heur_sol, feasibility of the provided solution is not verified. It seems like the current behavior of filling-in values that aren't provided from another solution is potentially dangerous:

    for c = 1:n
        isnan(sol[c]) || continue
        sol[c] = GLPK.mip_col_val(lp, c)
    end

I'd say that the GLPKMathProgInterface should check for feasibility before submitting the solution.

Issue regarding lazy constraints addition

The current version of GLPKMathProgInterface 0.1.11 might have an issue regarding problem modification. In a Benders decomposition problem using JuMP, after the callback function adds a lazy constraint, the modified master problem is not solved correctly, and in the subsequent iterations same sets of constraints are added repeatedly. In the GLPK code I have attached, only

t+[-1.0,-4.0]'x <=-7.666666666666667

t+[1.0,4.0]'x <=-0.0

are valid Benders lazy constraints. But after both of them are added to the master problem, GLPK keeps adding
t+[2.5,-0.5]'x <=-3.0

(a valid cut) and
t+[1.0,4.0]'x <=-0.0

repeatedly and keeps giving suboptimal solution every time with minuscule improvement. After 9 iterations, it finally reaches the optimal, (where only 2 is needed). Note that I made the upper bound for the variables to be 10. Initially the upper-bounds were 1e6 and GLPK kept adding same constraints again and again for a long time until I stopped it!

Both CPLEX and Gurobi work properly irrespective of the upper-bound. If heuristic and cut are not turned off, then Gurobi and CPLEX apply their heuristic and cuts besides the added lazy constraints. In Gurobi, Heuristic and Cut can be turned off for the master problem model to get the Benders lazy constraints only, in CPLEX I could not find the option to turn them off.

I have attached all the codes and associated outputs in https://groups.google.com/forum/#!topic/julia-opt/qeJ39VCyyc0

Simple presolve example broken

The following code example on the README is broken:

using MathProgBase
using GLPKMathProgInterface
sol = mixintprog(-[5,3,3], [1 8 2], '<', 9, 'I', 0, 1, GLPKSolverMIP(presolve=true))

is an error:

ERROR: `mixintprog` has no method matching mixintprog(::Array{Int64,1}, ::Array{Int64,2}, ::Char, ::Int64, ::Char, ::Int64, ::Int64, ::GLPKSolverMIP)

how to solve--"Cgl0013I Postprocessed model is infeasible - possible tolerance issue - try without preprocessing"

Hi,I encountered the following problems.

Although the optimization result is optimal, the log shows that it is not feasible and prompts the statement that "Cgl0013I Postprocessed model is infeasible - possible tolerance issue - try without preprocessing" .But I can't find where to modify the preprocessing in Python.Also,I don't know if it will work.

Thank you in advance for all your help!

The below text is the log

`Problem MODEL has 918 rows, 944 columns and 3251 elements
Coin0008I MODEL read with 0 errors
Continuous objective value is 14 - 0.03 seconds
Cgl0003I 0 fixed, 0 tightened bounds, 27 strengthened rows, 1844 substitutions
Cgl0003I 0 fixed, 0 tightened bounds, 233 strengthened rows, 0 substitutions
Cgl0003I 0 fixed, 0 tightened bounds, 289 strengthened rows, 0 substitutions
Cgl0003I 0 fixed, 0 tightened bounds, 240 strengthened rows, 0 substitutions
Cgl0003I 0 fixed, 0 tightened bounds, 121 strengthened rows, 0 substitutions
Cgl0003I 0 fixed, 0 tightened bounds, 62 strengthened rows, 0 substitutions
Cgl0003I 0 fixed, 0 tightened bounds, 57 strengthened rows, 0 substitutions
Cgl0003I 0 fixed, 0 tightened bounds, 42 strengthened rows, 0 substitutions
Cgl0003I 0 fixed, 0 tightened bounds, 30 strengthened rows, 0 substitutions
Cgl0004I processed model has 322 rows, 511 columns (403 integer (403 of which binary)) and 2152 elements
Cbc0038I Initial state - 81 integers unsatisfied sum - 16.0741
Cbc0038I Pass 1: suminf. 4.69748 (32) obj. -8.46975 iterations 164
Cbc0038I Pass 2: suminf. 4.69748 (32) obj. -8.46975 iterations 1
Cbc0038I Pass 3: suminf. 0.30614 (2) obj. -1 iterations 55
Cbc0038I Solution found of -1
Cbc0038I Relaxing continuous gives -1
Cbc0038I Before mini branch and bound, 320 integers at bound fixed and 55 continuous
Cbc0038I Full problem 322 rows 511 columns, reduced to 86 rows 78 columns
Cbc0038I Mini branch and bound improved solution from -1 to -4 (0.39 seconds)
Cbc0038I Round again with cutoff of -5.70576
Cbc0038I Pass 4: suminf. 4.69748 (32) obj. -8.46975 iterations 0
Cbc0038I Pass 5: suminf. 4.69748 (32) obj. -8.46975 iterations 4
Cbc0038I Pass 6: suminf. 2.32885 (31) obj. -5.70576 iterations 103
Cbc0038I Pass 7: suminf. 2.30135 (26) obj. -5.70576 iterations 7
Cbc0038I Pass 8: suminf. 5.83405 (36) obj. -5.70576 iterations 145
Cbc0038I Pass 9: suminf. 5.25151 (36) obj. -5.70576 iterations 27
Cbc0038I Pass 10: suminf. 4.81249 (26) obj. -5.70576 iterations 82
Cbc0038I Pass 11: suminf. 3.91828 (20) obj. -5.70576 iterations 60
Cbc0038I Pass 12: suminf. 1.71988 (17) obj. -5.70576 iterations 95
Cbc0038I Pass 13: suminf. 1.58358 (14) obj. -5.70576 iterations 30
Cbc0038I Pass 14: suminf. 2.28868 (17) obj. -5.70576 iterations 66
Cbc0038I Pass 15: suminf. 1.73395 (16) obj. -5.70576 iterations 38
Cbc0038I Pass 16: suminf. 1.58344 (13) obj. -5.70576 iterations 89
Cbc0038I Pass 17: suminf. 1.02871 (12) obj. -5.70576 iterations 48
Cbc0038I Pass 18: suminf. 1.78558 (13) obj. -5.70576 iterations 68
Cbc0038I Pass 19: suminf. 1.23085 (12) obj. -5.70576 iterations 44
Cbc0038I Pass 20: suminf. 1.79048 (12) obj. -5.70576 iterations 56
Cbc0038I Pass 21: suminf. 1.23575 (11) obj. -5.70576 iterations 33
Cbc0038I Pass 22: suminf. 1.94086 (13) obj. -5.70576 iterations 58
Cbc0038I Pass 23: suminf. 1.38613 (12) obj. -5.70576 iterations 23
Cbc0038I Pass 24: suminf. 1.58344 (13) obj. -5.70576 iterations 69
Cbc0038I Pass 25: suminf. 1.02871 (12) obj. -5.70576 iterations 37
Cbc0038I Pass 26: suminf. 1.94086 (13) obj. -5.70576 iterations 53
Cbc0038I Pass 27: suminf. 5.24680 (35) obj. -5.70576 iterations 143
Cbc0038I Pass 28: suminf. 4.27519 (25) obj. -5.70576 iterations 69
Cbc0038I Pass 29: suminf. 3.84257 (24) obj. -5.70576 iterations 82
Cbc0038I Pass 30: suminf. 3.51184 (23) obj. -5.70576 iterations 62
Cbc0038I Pass 31: suminf. 4.66810 (21) obj. -5.70576 iterations 77
Cbc0038I Pass 32: suminf. 2.35358 (17) obj. -5.70576 iterations 46
Cbc0038I Pass 33: suminf. 1.92501 (15) obj. -5.70576 iterations 9
Cbc0038I No solution found this major pass
Cbc0038I Before mini branch and bound, 264 integers at bound fixed and 35 continuous
Cbc0038I Full problem 322 rows 511 columns, reduced to 168 rows 175 columns
Cbc0038I Mini branch and bound improved solution from -4 to -5 (0.75 seconds)
Cbc0038I Round again with cutoff of -7.21162
Cbc0038I Pass 33: suminf. 4.69748 (32) obj. -8.46975 iterations 0
Cbc0038I Pass 34: suminf. 4.69748 (32) obj. -8.46975 iterations 4
Cbc0038I Pass 35: suminf. 4.22876 (46) obj. -7.21162 iterations 156
Cbc0038I Pass 36: suminf. 3.53845 (44) obj. -7.21162 iterations 30
Cbc0038I Pass 37: suminf. 3.13625 (42) obj. -7.21162 iterations 43
Cbc0038I Pass 38: suminf. 4.26146 (45) obj. -7.21162 iterations 46
Cbc0038I Pass 39: suminf. 3.12915 (48) obj. -7.21162 iterations 45
Cbc0038I Pass 40: suminf. 3.13254 (45) obj. -7.21162 iterations 66
Cbc0038I Pass 41: suminf. 2.87087 (48) obj. -7.21162 iterations 21
Cbc0038I Pass 42: suminf. 8.87323 (40) obj. -7.21162 iterations 154
Cbc0038I Pass 43: suminf. 3.03103 (45) obj. -7.21162 iterations 84
Cbc0038I Pass 44: suminf. 2.99021 (47) obj. -7.21162 iterations 14
Cbc0038I Pass 45: suminf. 10.09064 (34) obj. -7.21162 iterations 116
Cbc0038I Pass 46: suminf. 3.67310 (37) obj. -7.21162 iterations 84
Cbc0038I Pass 47: suminf. 3.13015 (47) obj. -7.21162 iterations 55
Cbc0038I Pass 48: suminf. 6.50761 (42) obj. -7.21162 iterations 119
Cbc0038I Pass 49: suminf. 2.99021 (47) obj. -7.21162 iterations 67
Cbc0038I Pass 50: suminf. 2.99021 (47) obj. -7.21162 iterations 5
Cbc0038I Pass 51: suminf. 3.17363 (34) obj. -7.21162 iterations 91
Cbc0038I Pass 52: suminf. 2.78485 (34) obj. -7.21162 iterations 39
Cbc0038I Pass 53: suminf. 3.14095 (29) obj. -7.21162 iterations 107
Cbc0038I Pass 54: suminf. 2.51873 (27) obj. -7.21162 iterations 7
Cbc0038I Pass 55: suminf. 6.46257 (53) obj. -7.21162 iterations 106
Cbc0038I Pass 56: suminf. 6.04426 (45) obj. -7.21162 iterations 41
Cbc0038I Pass 57: suminf. 5.09498 (42) obj. -7.21162 iterations 30
Cbc0038I Pass 58: suminf. 4.70309 (41) obj. -7.21162 iterations 4
Cbc0038I Pass 59: suminf. 8.00873 (47) obj. -7.21162 iterations 95
Cbc0038I Pass 60: suminf. 5.72757 (53) obj. -7.21162 iterations 50
Cbc0038I Pass 61: suminf. 4.42860 (26) obj. -7.42325 iterations 72
Cbc0038I Pass 62: suminf. 4.21697 (27) obj. -7.21162 iterations 11
Cbc0038I No solution found this major pass
Cbc0038I Before mini branch and bound, 255 integers at bound fixed and 38 continuous
Cbc0038I Full problem 322 rows 511 columns, reduced to 163 rows 181 columns
Cbc0038I Mini branch and bound did not improve solution (1.08 seconds)
Cbc0038I After 1.08 seconds - Feasibility pump exiting with objective of -5 - took 0.74 seconds
Cbc0012I Integer solution of -5 found by feasibility pump after 0 iterations and 0 nodes (1.08 seconds)
Cbc0038I Full problem 322 rows 511 columns, reduced to 114 rows 124 columns
Cbc0031I 21 added rows had average density of 336.90476
Cbc0013I At root node, 21 cuts changed objective from -12.058519 to -11.95329 in 40 passes
Cbc0014I Cut generator 0 (Probing) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.151 seconds - new frequency is -100
Cbc0014I Cut generator 1 (Gomory) - 688 row cuts average 458.6 elements, 0 column cuts (0 active) in 0.415 seconds - new frequency is -100
Cbc0014I Cut generator 2 (Knapsack) - 340 row cuts average 4.2 elements, 0 column cuts (0 active) in 0.100 seconds - new frequency is 1
Cbc0014I Cut generator 3 (Clique) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.002 seconds - new frequency is -100
Cbc0014I Cut generator 4 (MixedIntegerRounding2) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.548 seconds - new frequency is -100
Cbc0014I Cut generator 5 (FlowCover) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.036 seconds - new frequency is -100
Cbc0010I After 0 nodes, 1 on tree, -5 best solution, best possible -11.953287 (4.48 seconds)
Cbc0038I Full problem 322 rows 511 columns, reduced to 120 rows 133 columns
Cbc0038I Full problem 322 rows 511 columns, reduced to 91 rows 110 columns
Cbc0038I Full problem 322 rows 511 columns, reduced to 85 rows 97 columns
Cbc0016I Integer solution of -6 found by strong branching after 35999 iterations and 328 nodes (8.91 seconds)
Cbc0038I Full problem 322 rows 511 columns, reduced to 125 rows 150 columns
Cbc0038I Full problem 322 rows 511 columns, reduced to 121 rows 138 columns
Cbc0038I Full problem 322 rows 511 columns, reduced to 129 rows 149 columns
Cbc0038I Full problem 322 rows 511 columns, reduced to 92 rows 113 columns
Cbc0010I After 1000 nodes, 6 on tree, -6 best solution, best possible -11.387254 (16.27 seconds)
Cbc0038I Full problem 322 rows 511 columns, reduced to 155 rows 187 columns
Cbc0038I Full problem 322 rows 511 columns, reduced to 128 rows 149 columns
Cbc0001I Search completed - best objective -6, took 132128 iterations and 1488 nodes (22.37 seconds)
Cbc0032I Strong branching done 6410 times (141017 iterations), fathomed 69 nodes and fixed 368 variables
Cbc0035I Maximum depth 20, 15691 variables fixed on reduced cost
Cuts at root node changed objective from -12.0585 to -11.9533
Probing was tried 40 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.151 seconds)
Gomory was tried 40 times and created 688 cuts of which 0 were active after adding rounds of cuts (0.415 seconds)
Knapsack was tried 565 times and created 2052 cuts of which 22 were active after adding rounds of cuts (0.661 seconds)
Clique was tried 40 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.002 seconds)
MixedIntegerRounding2 was tried 40 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.548 seconds)
FlowCover was tried 40 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.036 seconds)
TwoMirCuts was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds)
Coin0505I Presolved problem not optimal, resolve after postsolve
Coin0505I Presolved problem not optimal, resolve after postsolve
Cgl0013I Postprocessed model is infeasible - possible tolerance issue - try without preprocessing
13 relaxed row infeasibilities - summing to 146.742
13 relaxed row infeasibilities - summing to 146.742
16 relaxed row infeasibilities - summing to 231.742

Result - Optimal solution found

Objective value: 6.00000000
Enumerated nodes: 1488
Total iterations: 132128
Time (CPU seconds): 22.45
Time (Wallclock seconds): 22.45

Option for printingOptions changed from normal to all
Total time (CPU seconds): 22.53 (Wallclock seconds): 22.53
`

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.