1
1
# Model not supporting Interval
2
2
MOIU. @model SimpleModel () (EqualTo, GreaterThan, LessThan) (Zeros, Nonnegatives, Nonpositives, RotatedSecondOrderCone, GeometricMeanCone, PositiveSemidefiniteConeTriangle, ExponentialCone) () (SingleVariable,) (ScalarAffineFunction,) (VectorOfVariables,) (VectorAffineFunction,)
3
- MOIB. @bridge SplitInterval MOIB. SplitIntervalBridge () (Interval,) () () () (ScalarAffineFunction,) () ()
4
3
5
4
@testset " Copy test" begin
6
5
mock = MOIU. MockOptimizer (SimpleModel {Float64} ())
7
- bridgedmock = SplitInterval {Float64} (mock)
6
+ bridgedmock = MOIB . SplitInterval {Float64} (mock)
8
7
MOIT. failcopytestc (bridgedmock)
9
8
MOIT. failcopytestia (bridgedmock)
10
9
MOIT. failcopytestva (bridgedmock)
@@ -20,10 +19,10 @@ function test_noc(bridgedmock, F, S, n)
20
19
end
21
20
22
21
@testset " BridgeOptimizer" begin
23
- const model = SplitInterval {Int} (SimpleModel {Int} ())
22
+ const model = MOIB . SplitInterval {Int} (SimpleModel {Int} ())
24
23
25
24
@testset " Name test" begin
26
- MOIT. nametest (SplitInterval {Float64} (SimpleModel {Float64} ()))
25
+ MOIT. nametest (MOIB . SplitInterval {Float64} (SimpleModel {Float64} ()))
27
26
end
28
27
29
28
@testset " Custom test" begin
66
65
mock = MOIU. MockOptimizer (SimpleModel {Float64} ())
67
66
68
67
@testset " Continuous Linear" begin
69
- MOIT. contlineartest (SplitInterval {Float64} (mock), MOIT. TestConfig (solve= false ))
68
+ MOIT. contlineartest (MOIB . SplitInterval {Float64} (mock), MOIT. TestConfig (solve= false ))
70
69
end
71
70
end
72
71
73
- MOIB. @bridge GeoMean MOIB. GeoMeanBridge () () (GeometricMeanCone,) () () () (VectorOfVariables,) (VectorAffineFunction,)
74
- MOIB. @bridge SOCtoPSD MOIB. SOCtoPSDCBridge () () (SecondOrderCone,) () () () (VectorOfVariables,) (VectorAffineFunction,)
75
- MOIB. @bridge RSOCtoPSD MOIB. RSOCtoPSDCBridge () () (RotatedSecondOrderCone,) () () () (VectorOfVariables,) (VectorAffineFunction,)
76
- MOIB. @bridge LogDet MOIB. LogDetBridge () () (LogDetConeTriangle,) () () () (VectorOfVariables,) (VectorAffineFunction,)
77
- MOIB. @bridge RootDet MOIB. RootDetBridge () () (RootDetConeTriangle,) () () () (VectorOfVariables,) (VectorAffineFunction,)
78
-
79
72
# Test deletion of bridge
80
73
function test_delete_bridge (m:: MOIB.AbstractBridgeOptimizer , ci:: MOI.ConstraintIndex{F, S} , nvars:: Int , nocs:: Tuple ) where {F, S}
81
74
@test MOI. get (m, MOI. NumberOfVariables ()) == nvars
111
104
(MOI. ScalarAffineFunction{Float64}, MOI. LessThan{Float64}) => [0 ]),
112
105
(mock:: MOIU.MockOptimizer ) -> MOIU. mock_optimize! (mock, [1.0 , 1.0 ]),
113
106
(mock:: MOIU.MockOptimizer ) -> MOIU. mock_optimize! (mock, [6.0 , 6.0 ]))
114
- bridgedmock = SplitInterval {Float64} (mock)
107
+ bridgedmock = MOIB . SplitInterval {Float64} (mock)
115
108
MOIT. linear10test (bridgedmock, config)
116
109
ci = first (MOI. get (bridgedmock, MOI. ListOfConstraintIndices {MOI.ScalarAffineFunction{Float64}, MOI.Interval{Float64}} ()))
117
110
@test MOI. canmodifyconstraint (bridgedmock, ci, MOI. ScalarAffineFunction{Float64})
125
118
126
119
@testset " GeoMean" begin
127
120
mock. optimize! = (mock:: MOIU.MockOptimizer ) -> MOIU. mock_optimize! (mock, [ones (4 ); 2 ; √ 2 ; √ 2 ])
128
- bridgedmock = GeoMean {Float64} (mock)
121
+ bridgedmock = MOIB . GeoMean {Float64} (mock)
129
122
MOIT. geomean1vtest (bridgedmock, config)
130
123
MOIT. geomean1ftest (bridgedmock, config)
131
124
@test ! MOI. canget (bridgedmock, MOI. ConstraintDual (), MOI. ConstraintIndex{MOI. VectorOfVariables, MOI. GeometricMeanCone})
136
129
end
137
130
138
131
@testset " SOCtoPSD" begin
139
- bridgedmock = SOCtoPSD {Float64} (mock)
132
+ bridgedmock = MOIB . SOCtoPSD {Float64} (mock)
140
133
mock. optimize! = (mock:: MOIU.MockOptimizer ) -> MOIU. mock_optimize! (mock, [1.0 , 1 /√ 2 , 1 /√ 2 ],
141
134
(MOI. VectorAffineFunction{Float64}, MOI. PositiveSemidefiniteConeTriangle) => [[√ 2 / 2 , - 1 / 2 , √ 2 / 4 , - 1 / 2 , √ 2 / 4 , √ 2 / 4 ]],
142
135
(MOI. VectorAffineFunction{Float64}, MOI. Zeros) => [[-√ 2 ]])
148
141
end
149
142
150
143
@testset " RSOCtoPSD" begin
151
- bridgedmock = RSOCtoPSD {Float64} (mock)
144
+ bridgedmock = MOIB . RSOCtoPSD {Float64} (mock)
152
145
mock. optimize! = (mock:: MOIU.MockOptimizer ) -> MOIU. mock_optimize! (mock, [1 /√ 2 , 1 /√ 2 , 0.5 , 1.0 ],
153
146
(MOI. SingleVariable, MOI. EqualTo{Float64}) => [-√ 2 , - 1 /√ 2 ],
154
147
(MOI. VectorAffineFunction{Float64}, MOI. PositiveSemidefiniteConeTriangle) => [[√ 2 , - 1 / 2 , √ 2 / 8 , - 1 / 2 , √ 2 / 8 , √ 2 / 8 ]])
162
155
end
163
156
164
157
@testset " LogDet" begin
165
- bridgedmock = LogDet {Float64} (mock)
158
+ bridgedmock = MOIB . LogDet {Float64} (mock)
166
159
mock. optimize! = (mock:: MOIU.MockOptimizer ) -> MOIU. mock_optimize! (mock, [0 , 1 , 0 , 1 , 1 , 0 , 1 , 0 , 0 ])
167
160
MOIT. logdett1vtest (bridgedmock, config)
168
161
MOIT. logdett1ftest (bridgedmock, config)
173
166
end
174
167
175
168
@testset " RootDet" begin
176
- bridgedmock = RootDet {Float64} (mock)
169
+ bridgedmock = MOIB . RootDet {Float64} (mock)
177
170
mock. optimize! = (mock:: MOIU.MockOptimizer ) -> MOIU. mock_optimize! (mock, [1 , 1 , 0 , 1 , 1 , 0 , 1 ])
178
171
MOIT. rootdett1vtest (bridgedmock, config)
179
172
MOIT. rootdett1ftest (bridgedmock, config)
0 commit comments