@@ -14,7 +14,7 @@ using JuMP
1414import DiffOpt
1515import Plots
1616import LinearAlgebra: ⋅
17- import GLPK
17+ import HiGHS
1818import ChainRulesCore
1919
2020# ## Unit commitment problem
@@ -41,7 +41,7 @@ import ChainRulesCore
4141
4242function unit_commitment (
4343 load1_demand, load2_demand, gen_costs, noload_costs;
44- model = Model (GLPK . Optimizer), silent= false )
44+ model = Model (HiGHS . Optimizer), silent= false )
4545 MOI. set (model, MOI. Silent (), silent)
4646
4747 # # Problem data
@@ -96,7 +96,7 @@ function unit_commitment(
9696 return JuMP. value .(p. data)
9797end
9898
99- m = Model (GLPK . Optimizer)
99+ m = Model (HiGHS . Optimizer)
100100@show unit_commitment (
101101 [1.0 , 1.2 , 1.4 , 1.6 ], [1.0 , 1.2 , 1.4 , 1.6 ],
102102 [1000.0 , 1500.0 ], [500.0 , 1000.0 ],
@@ -142,9 +142,9 @@ function ChainRulesCore.frule(
142142 (_, Δload1_demand, Δload2_demand, Δgen_costs, Δnoload_costs),
143143 :: typeof (unit_commitment),
144144 load1_demand, load2_demand, gen_costs, noload_costs;
145- optimizer= GLPK . Optimizer,
145+ optimizer= HiGHS . Optimizer,
146146 )
147- # # creating the UC model with a DiffOpt optimizer wrapper around GLPK
147+ # # creating the UC model with a DiffOpt optimizer wrapper around HiGHS
148148 model = Model (() -> DiffOpt. diff_optimizer (optimizer))
149149 # # building and solving the main model
150150 pv = unit_commitment (
@@ -212,7 +212,7 @@ noload_costs = [500.0, 1000.0];
212212function ChainRulesCore. rrule (
213213 :: typeof (unit_commitment),
214214 load1_demand, load2_demand, gen_costs, noload_costs;
215- optimizer= GLPK . Optimizer,
215+ optimizer= HiGHS . Optimizer,
216216 silent= false )
217217 model = Model (() -> DiffOpt. diff_optimizer (optimizer))
218218 # # solve the forward UC problem
253253(pv, pullback_unit_commitment) = ChainRulesCore. rrule (
254254 unit_commitment,
255255 load1_demand, load2_demand, gen_costs, noload_costs,
256- optimizer= GLPK . Optimizer,
256+ optimizer= HiGHS . Optimizer,
257257 silent= true ,
258258)
259259dpv = 0 * pv
0 commit comments