Skip to content

Commit a1ec413

Browse files
authored
Remove DualizableModel (#210)
* Remove DualizableModel * Fix format
1 parent cb6f05a commit a1ec413

3 files changed

Lines changed: 8 additions & 32 deletions

File tree

src/MOI_wrapper.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,14 +87,14 @@ function DualOptimizer{T}(
8787
dual_problem = DualProblem{T}(
8888
MOI.Bridges.full_bridge_optimizer(
8989
MOI.Utilities.CachingOptimizer(
90-
MOI.Utilities.UniversalFallback(DualizableModel{T}()),
90+
MOI.Utilities.UniversalFallback(MOI.Utilities.Model{T}()),
9191
dual_optimizer,
9292
),
9393
T,
9494
),
9595
)
9696
# discover the type of
97-
# MOI.Utilities.CachingOptimizer(DualizableModel{T}(), dual_optimizer)
97+
# MOI.Utilities.CachingOptimizer(MOI.Utilities.Model{T}(), dual_optimizer)
9898
OptimizerType = typeof(dual_problem.dual_model)
9999
return DualOptimizer{T,OptimizerType}(dual_problem, kwargs...)
100100
end

src/structures.jl

Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -3,28 +3,6 @@
33
# Use of this source code is governed by an MIT-style license that can be found
44
# in the LICENSE.md file or at https://opensource.org/licenses/MIT.
55

6-
MOI.Utilities.@model(
7-
DualizableModel,
8-
(),
9-
(MOI.EqualTo, MOI.GreaterThan, MOI.LessThan),
10-
(
11-
MOI.Reals,
12-
MOI.Zeros,
13-
MOI.Nonnegatives,
14-
MOI.Nonpositives,
15-
MOI.SecondOrderCone,
16-
MOI.RotatedSecondOrderCone,
17-
MOI.ExponentialCone,
18-
MOI.DualExponentialCone,
19-
MOI.PositiveSemidefiniteConeTriangle,
20-
),
21-
(MOI.PowerCone, MOI.DualPowerCone),
22-
(),
23-
(MOI.ScalarAffineFunction,),
24-
(MOI.VectorOfVariables,),
25-
(MOI.VectorAffineFunction,)
26-
)
27-
286
"""
297
PrimalVariableData{T}
308
@@ -304,7 +282,7 @@ Result of the `dualize` function. Contains the fields:
304282
(`VariableIndex` and `ConstraintIndex`) and other data.
305283
"""
306284
struct DualProblem{T,OT<:MOI.ModelLike}
307-
dual_model::OT #It can be a model from an optimizer or a DualizableModel{T}
285+
dual_model::OT # Inner model or optimizer
308286
primal_dual_map::PrimalDualMap{T}
309287

310288
function DualProblem{T}(
@@ -324,5 +302,5 @@ function DualProblem(dual_optimizer::OT) where {OT<:MOI.ModelLike}
324302
end
325303

326304
function DualProblem{T}() where {T}
327-
return DualProblem{T}(DualizableModel{T}(), PrimalDualMap{T}())
305+
return DualProblem{T}(MOI.Utilities.Model{T}(), PrimalDualMap{T}())
328306
end

test/Tests/test_MOI_wrapper.jl

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,8 @@
66
@testset "MOI_wrapper.jl" begin
77
for opt in dual_linear_optimizer
88
linear_config = MOI.Test.Config(atol = 1e-6, rtol = 1e-6)
9-
linear_cache = MOI.Utilities.UniversalFallback(
10-
Dualization.DualizableModel{Float64}(),
11-
)
9+
linear_cache =
10+
MOI.Utilities.UniversalFallback(MOI.Utilities.Model{Float64}())
1211
MOI.empty!(opt)
1312
linear_cached = MOI.Utilities.CachingOptimizer(linear_cache, opt)
1413
linear_bridged =
@@ -38,9 +37,8 @@
3837
for opt in dual_conic_optimizer
3938
opt = dual_conic_optimizer[1]
4039
conic_config = MOI.Test.Config(atol = 1e-4, rtol = 1e-4)
41-
conic_cache = MOI.Utilities.UniversalFallback(
42-
Dualization.DualizableModel{Float64}(),
43-
)
40+
conic_cache =
41+
MOI.Utilities.UniversalFallback(MOI.Utilities.Model{Float64}())
4442
conic_cached = MOI.Utilities.CachingOptimizer(conic_cache, opt)
4543
conic_bridged = MOI.Bridges.full_bridge_optimizer(conic_cached, Float64)
4644

0 commit comments

Comments
 (0)