Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MOI wrapper #149

Merged
merged 42 commits into from
Oct 12, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
ee3a743
Implement MOI wrapper
blegat Jul 13, 2020
6663290
add options field
tweisser Jul 14, 2020
a180b5e
Some improvements
blegat Jul 14, 2020
1a7f7f8
flaw
tweisser Jul 14, 2020
ed8a3f5
merge moi; update solver const
tweisser Jul 14, 2020
8fd2704
change keywords -> strings; move presolve_infeasible to properties
tweisser Jul 14, 2020
e4fce1f
fix bound_sol_history
tweisser Jul 14, 2020
ad31376
add getcategory function
tweisser Jul 14, 2020
e981aed
MOI-style var_type_orig
blegat Jul 15, 2020
ca0de35
Fix is_obj_linear
blegat Jul 15, 2020
a9ba7b9
Fix solver detection
blegat Jul 15, 2020
6f899f9
add binary constraint
tweisser Jul 15, 2020
cba9cf5
fix doc
tweisser Jul 15, 2020
09aee10
add functions for VariableIndex in Expr
tweisser Jul 16, 2020
f0b1d20
Update status
blegat Jul 21, 2020
b03a1b6
Simplify setting of time limit
blegat Jul 21, 2020
fde999a
First test passing
blegat Jul 21, 2020
bb3c7a8
Fix for Julia v1.0
blegat Jul 21, 2020
1de04a1
add moi2expr functions
tweisser Jul 21, 2020
9f4a7d8
add moi2expr functions
tweisser Jul 21, 2020
5d2abb3
add suggested changes
tweisser Jul 27, 2020
b6cf369
Fixes
blegat Aug 6, 2020
2979a2b
Pass more expression tests
blegat Aug 10, 2020
27d0990
Pass more expression tests
blegat Aug 10, 2020
6dd7f0b
Enable algorithm tests
blegat Aug 10, 2020
c5de4ed
Fixes
blegat Aug 10, 2020
4b1c1a4
Update algorithm tests
blegat Aug 11, 2020
d3a53d5
Fix getting iterations
blegat Aug 11, 2020
2182dfe
Copy linear and quadratic part to local solver
blegat Aug 11, 2020
3c8c1e4
IpoptSolver -> Ipopt.Optimizer
blegat Aug 11, 2020
4d9c2fb
Cleanup
blegat Aug 11, 2020
0069251
Fix bound tightening printing
blegat Aug 11, 2020
024857c
Switch back to Pavito
blegat Aug 11, 2020
8207e78
Use Iter method of Pavito
blegat Aug 12, 2020
8caed9b
Clean up parameters
blegat Aug 12, 2020
7789a12
Disable failing tests
blegat Aug 12, 2020
3c5bb01
Implement getter for RawParameter
blegat Aug 12, 2020
a097ca2
Update solver and utility tests
blegat Aug 12, 2020
c2ec42e
Ignore Manifest.toml
blegat Aug 13, 2020
e19f499
Remove docs/Manifest.toml
blegat Aug 13, 2020
66aab6b
Remove useless import
blegat Aug 13, 2020
f2735ff
Workaround issue with doc
blegat Aug 13, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@

docs/build

Manifest.toml
13 changes: 6 additions & 7 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,23 +1,22 @@
language: julia
codecov: true
os:
- linux
- osx
julia:
- 1.0
- 1.4
script:
- julia --project -e 'import Pkg; Pkg.build(); Pkg.instantiate()'
- julia --project -e 'import Pkg; Pkg.test(coverage=true);'
after_success:
- julia -e 'import Pkg; Pkg.add("Coverage"); using Coverage; Codecov.submit(process_folder())'
- 1
before_script:
- julia -e 'using Pkg; Pkg.add(PackageSpec(name="Pavito", rev="master"))' # TODO remove when Pavito#master is released.
jobs:
allow_failures:
- julia: nightly
include:
- stage: "Documentation"
julia: 1.4
julia: 1
os: linux
script:
- julia -e 'using Pkg; Pkg.rm("Pavito")' # TODO Pkg seems to get into troubles because of the `before_script`. Remove when Pavito#master is released.
- julia --project=docs/ -e 'using Pkg; Pkg.instantiate(); Pkg.develop(PackageSpec(path=pwd()))'
- julia --project=docs/ docs/make.jl
after_success: skip
17 changes: 8 additions & 9 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,28 +7,27 @@ version = "0.1.16"
Distributed = "8ba89e20-285c-5b6f-9357-94700520ee1b"
JuMP = "4076af6c-e467-56ae-b986-b466b2749572"
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
MathProgBase = "fdba3010-5040-5b88-9595-932c9decdf73"
MathOptInterface = "b8f27783-ece8-5eb3-8dc8-9495eed66fee"
Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7"
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"

[compat]
Cbc = "0.6.7"
GLPKMathProgInterface = ">=0.4.3"
Ipopt = ">= 0.4"
JuMP = "< 0.19"
MathProgBase = ">=0.6.4"
Pavito = "^0.1"
Cbc = "0.7"
Ipopt = "0.6"
JuMP = "0.21"
MathOptInterface = "0.9.14"
julia = "^1"

[extras]
Cbc = "9961bab8-2fa3-5c5a-9d89-47fab24efd76"
GLPKMathProgInterface = "3c7084bd-78ad-589a-b5bb-dbd673274bea"
GLPK = "60bf3e95-4087-53dc-ae20-288a0d20c6a6"
Ipopt = "b6b21f68-93f8-5de0-b562-5493be1d77c9"
Juniper = "2ddba703-00a4-53a7-87a5-e8b9971dde84"
Pavito = "cd433a01-47d1-575d-afb7-6db927ee8d8f"
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"

[targets]
test = ["Cbc", "GLPKMathProgInterface", "Ipopt", "Pavito", "Pkg", "Test"]
test = ["Cbc", "GLPK", "Ipopt", "Juniper", "Pavito", "Pkg", "Test"]
216 changes: 0 additions & 216 deletions docs/Manifest.toml

This file was deleted.

2 changes: 1 addition & 1 deletion docs/src/choosingsolver.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,5 @@ To use different sub-solvers, here is an example:
using Gurobi, Ipopt
m = Model()
# Here goes the building of your model...
setsolver(m, AlpineSolver(nlp_solver=IpoptSolver(print_level=0), mip_solver=GurobiSolver(OutputFlag=0)))
setsolver(m, Alpine.Optimizer(nlp_solver=IpoptSolver(print_level=0), mip_solver=GurobiSolver(OutputFlag=0)))
```
5 changes: 2 additions & 3 deletions src/Alpine.jl
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@ module Alpine
const ALPINE_DEBUG = false

using JuMP
using MathProgBase


using LinearAlgebra
using Random
Expand All @@ -18,8 +16,9 @@ using SparseArrays
include("const.jl")

# Engine for High-level Algorithmic Control and User-interface
include("matrix_opt_interface.jl")
include("moi_function2expr.jl")
include("solver.jl")
include("mpb2moi.jl") # Transition file

# Engine for expression handling
include("nlexpr.jl")
Expand Down
Loading