diff --git a/0.2/_sources/index.md.txt b/0.2/_sources/index.md.txt
index 44cf17a..96f1c5c 100644
--- a/0.2/_sources/index.md.txt
+++ b/0.2/_sources/index.md.txt
@@ -67,6 +67,6 @@ maxdepth: 2
usage.md
format.md
instances.md
-about.md
+model.md
```
diff --git a/0.2/_sources/model.md.txt b/0.2/_sources/model.md.txt
new file mode 100644
index 0000000..7532f41
--- /dev/null
+++ b/0.2/_sources/model.md.txt
@@ -0,0 +1,202 @@
+```{sectnum}
+---
+start: 4
+depth: 2
+suffix: .
+---
+```
+
+JuMP Model
+==========
+
+In this page, we describe the JuMP optimization model produced by the function `UnitCommitment.build_model`. A detailed understanding of this model is not necessary if you are just interested in using the package to solve some standard unit commitment cases, but it may be useful, for example, if you need to solve a slightly different problem, with additional variables and constraints. The notation in this page generally follows [KnOsWa20].
+
+
+Decision variables
+------------------
+
+### Generators
+
+Name | Symbol | Description | Unit
+-----|:--------:|-------------|:------:
+`is_on[g,t]` | $u_{g}(t)$ | True if generator `g` is on at time `t`. | Binary
+`switch_on[g,t]` | $v_{g}(t)$ | True is generator `g` switches on at time `t`. | Binary
+`switch_off[g,t]` | $w_{g}(t)$ | True if generator `g` switches off at time `t`. | Binary
+`prod_above[g,t]` |$p'_{g}(t)$ | Amount of power produced by generator `g` above its minimum power output at time `t`. For example, if the minimum power of generator `g` is 100 MW and `g` is producing 115 MW of power at time `t`, then `prod_above[g,t]` equals `15.0`. | MW
+`segprod[g,t,k]` | $p^k_g(t)$ | Amount of power from piecewise linear segment `k` produced by generator `g` at time `t`. For example, if cost curve for generator `g` is defined by the points `(100, 1400)`, `(110, 1600)`, `(130, 2200)` and `(135, 2400)`, and if the generator is producing 115 MW of power at time `t`, then `segprod[g,t,:]` equals `[10.0, 5.0, 0.0]`.| MW
+`reserve[g,t]` | $r_g(t)$ | Amount of reserves provided by generator `g` at time `t`. | MW
+`startup[g,t,s]` | $\delta^s_g(t)$ | True if generator `g` switches on at time `t` incurring start-up costs from start-up category `s`. | Binary
+
+
+### Buses
+
+Name | Symbol | Description | Unit
+-----|:------:|-------------|:------:
+`net_injection[b,t]` | $n_b(t)$ | Net injection at bus `b` at time `t`. | MW
+`curtail[b,t]` | $s^+_b(t)$ | Amount of load curtailed at bus `b` at time `t` | MW
+
+
+### Price-sensitive loads
+
+Name | Symbol | Description | Unit
+-----|:------:|-------------|:------:
+`loads[s,t]` | $d_{s}(t)$ | Amount of power served to price-sensitive load `s` at time `t`. | MW
+
+### Transmission lines
+
+Name | Symbol | Description | Unit
+-----|:------:|-------------|:------:
+`flow[l,t]` | $f_l(t)$ | Power flow on line `l` at time `t`. | MW
+`overflow[l,t]` | $f^+_l(t)$ | Amount of flow above the limit for line `l` at time `t`. | MW
+
+```{danger}
+
+Since transmission and N-1 security constraints are enforced in a lazy way, most of the variables `flow[l,t]` and `overflow[l,t]` are never added to the model. Accessing `model[:flow][l,t]`, for example, without first checking that the variable exists will likely generate an error.
+```
+
+Objective function
+------------------
+
+$$
+\begin{align}
+ \text{minimize} \;\; &
+ \sum_{t \in \mathcal{T}}
+ \sum_{g \in \mathcal{G}}
+ C^\text{min}_g(t) u_g(t) \\
+ &
+ + \sum_{t \in \mathcal{T}}
+ \sum_{g \in \mathcal{G}}
+ \sum_{g \in \mathcal{K}_g}
+ C^k_g(t) p^k_g(t) \\
+ &
+ + \sum_{t \in \mathcal{T}}
+ \sum_{g \in \mathcal{G}}
+ \sum_{s \in \mathcal{S}_g}
+ C^s_{g}(t) \delta^s_g(t) \\
+ &
+ + \sum_{t \in \mathcal{T}}
+ \sum_{l \in \mathcal{L}}
+ C^\text{overflow}_{l}(t) f^+_l(t) \\
+ &
+ + \sum_{t \in \mathcal{T}}
+ \sum_{b \in \mathcal{B}}
+ C^\text{curtail}(t) s^+_b(t) \\
+ &
+ - \sum_{t \in \mathcal{T}}
+ \sum_{s \in \mathcal{PS}}
+ R_{s}(t) d_{s}(t) \\
+
+\end{align}
+$$
+where
+- $\mathcal{B}$ is the set of buses
+- $\mathcal{G}$ is the set of generators
+- $\mathcal{L}$ is the set of transmission lines
+- $\mathcal{PS}$ is the set of price-sensitive loads
+- $\mathcal{S}_g$ is the set of start-up categories for generator $g$
+- $\mathcal{T}$ is the set of time steps
+- $C^\text{curtail}(t)$ is the curtailment penalty (in \$/MW)
+- $C^\text{min}_g(t)$ is the cost of keeping generator $g$ on and producing at minimum power during time $t$ (in \$)
+- $C^\text{overflow}_{l}(t)$ is the flow limit penalty for line $l$ at time $t$ (in \$/MW)
+- $C^k_g(t)$ is the cost for generator $g$ to produce 1 MW of power at time $t$ under piecewise linear segment $k$
+- $C^s_{g}(t)$ is the cost of starting up generator $g$ at time $t$ under start-up category $s$ (in \$)
+- $R_{s}(t)$ is the revenue obtained from serving price-sensitive load $s$ at time $t$ (in \$/MW)
+
+
+Constraints
+-----------
+
+TODO
+
+
+Inspecting and modifying the model
+----------------------------------
+
+### Accessing decision variables
+
+After building a model using `UnitCommitment.build_model`, it is possible to obtain a reference to the decision variables by calling `model[:varname][index]`. For example, `model[:is_on]["g1",1]` returns a direct reference to the JuMP variable indicating whether generator named "g1" is on at time 1. The script below illustrates how to build a model, solve it and display the solution without using the function `UnitCommitment.solution`.
+
+```julia
+using Cbc
+using Printf
+using JuMP
+using UnitCommitment
+
+# Load benchmark instance
+instance = UnitCommitment.read_benchmark("matpower/case118/2017-02-01")
+
+# Build JuMP model
+model = UnitCommitment.build_model(
+ instance=instance,
+ optimizer=Cbc.Optimizer,
+)
+
+# Solve the model
+UnitCommitment.optimize!(model)
+
+# Display commitment status
+for g in instance.units
+ for t in 1:instance.time
+ @printf(
+ "%-10s %5d %5.1f %5.1f %5.1f\n",
+ g.name,
+ t,
+ value(model[:is_on][g.name, t]),
+ value(model[:switch_on][g.name, t]),
+ value(model[:switch_off][g.name, t]),
+ )
+ end
+end
+```
+
+### Modifying the model
+
+Since we now have a direct reference to the JuMP decision variables, it is possible to fix variables, change the coefficients in the objective function, or even add new constraints to the model before solving it. The script below shows how can this be accomplished. For more information on modifying an existing model, [see the JuMP documentation](https://jump.dev/JuMP.jl/stable/manual/variables/).
+
+```julia
+using Cbc
+using JuMP
+using UnitCommitment
+
+# Load benchmark instance
+instance = UnitCommitment.read_benchmark("matpower/case118/2017-02-01")
+
+# Construct JuMP
+model = UnitCommitment.build_model(
+ instance=instance,
+ optimizer=Cbc.Optimizer,
+)
+
+# Fix a decision variable to 1.0
+JuMP.fix(
+ model[:is_on]["g1",1],
+ 1.0,
+ force=true,
+)
+
+# Change the objective function
+JuMP.set_objective_coefficient(
+ model,
+ model[:switch_on]["g2",1],
+ 1000.0,
+)
+
+# Create a new constraint
+@constraint(
+ model,
+ model[:is_on]["g3",1] + model[:is_on]["g4",1] <= 1,
+)
+
+# Solve the model
+UnitCommitment.optimize!(model)
+```
+
+### Adding components to a bus
+
+
+
+
+References
+----------
+* [KnOsWa20] **Bernard Knueven, James Ostrowski and Jean-Paul Watson.** "On Mixed-Integer Programming Formulations for the Unit Commitment Problem". INFORMS Journal on Computing (2020). [DOI: 10.1287/ijoc.2019.0944](https://doi.org/10.1287/ijoc.2019.0944)
+
diff --git a/0.2/benchmark/index.html b/0.2/benchmark/index.html
index 3de1406..a7f9023 100644
--- a/0.2/benchmark/index.html
+++ b/0.2/benchmark/index.html
@@ -89,6 +89,14 @@
Instances
+
+
+
+ 4.
+
+ JuMP Model
+
+
diff --git a/0.2/customization/index.html b/0.2/customization/index.html
index 196b0da..b2cd975 100644
--- a/0.2/customization/index.html
+++ b/0.2/customization/index.html
@@ -87,6 +87,14 @@
Instances
+
+
+
+ 4.
+
+ JuMP Model
+
+
diff --git a/0.2/format/index.html b/0.2/format/index.html
index 25cd230..4d2fd1a 100644
--- a/0.2/format/index.html
+++ b/0.2/format/index.html
@@ -89,6 +89,14 @@
Instances
+
+
+
+ 4.
+
+ JuMP Model
+
+
diff --git a/0.2/genindex/index.html b/0.2/genindex/index.html
index a6b6801..a4312d3 100644
--- a/0.2/genindex/index.html
+++ b/0.2/genindex/index.html
@@ -87,6 +87,14 @@
Instances
+
+
+
+ 4.
+
+ JuMP Model
+
+
diff --git a/0.2/index.html b/0.2/index.html
index 7595742..6f67df3 100644
--- a/0.2/index.html
+++ b/0.2/index.html
@@ -88,6 +88,14 @@
Instances
+
+
+
+ 4.
+
+ JuMP Model
+
+
@@ -297,6 +305,14 @@ POSSIBILITY OF SUCH DAMAGE.
3.5. References
+4. JuMP Model
+
diff --git a/0.2/instances/index.html b/0.2/instances/index.html
index 5b3a26f..802109e 100644
--- a/0.2/instances/index.html
+++ b/0.2/instances/index.html
@@ -35,6 +35,7 @@
+
@@ -88,6 +89,14 @@
Instances
+
+
+
+ 4.
+
+ JuMP Model
+
+
@@ -1951,6 +1960,7 @@ actions”, Power Systems, IEEE Trans. on, (28)4:4909-4917, 2013.
diff --git a/0.2/model/index.html b/0.2/model/index.html
new file mode 100644
index 0000000..b3387e6
--- /dev/null
+++ b/0.2/model/index.html
@@ -0,0 +1,572 @@
+
+
+
+
+
+
+
+ 4. JuMP Model — UnitCommitment.jl<br/><small>0.2</small>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Contents
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
4. JuMP Model
+
In this page, we describe the JuMP optimization model produced by the function UnitCommitment.build_model
. A detailed understanding of this model is not necessary if you are just interested in using the package to solve some standard unit commitment cases, but it may be useful, for example, if you need to solve a slightly different problem, with additional variables and constraints. The notation in this page generally follows [KnOsWa20].
+
+
4.1. Decision variables
+
+
Generators
+
+
+Name
+Symbol
+Description
+Unit
+
+
+
+is_on[g,t]
+\(u_{g}(t)\)
+True if generator g
is on at time t
.
+Binary
+
+switch_on[g,t]
+\(v_{g}(t)\)
+True is generator g
switches on at time t
.
+Binary
+
+switch_off[g,t]
+\(w_{g}(t)\)
+True if generator g
switches off at time t
.
+Binary
+
+prod_above[g,t]
+\(p'_{g}(t)\)
+Amount of power produced by generator g
above its minimum power output at time t
. For example, if the minimum power of generator g
is 100 MW and g
is producing 115 MW of power at time t
, then prod_above[g,t]
equals 15.0
.
+MW
+
+segprod[g,t,k]
+\(p^k_g(t)\)
+Amount of power from piecewise linear segment k
produced by generator g
at time t
. For example, if cost curve for generator g
is defined by the points (100, 1400)
, (110, 1600)
, (130, 2200)
and (135, 2400)
, and if the generator is producing 115 MW of power at time t
, then segprod[g,t,:]
equals [10.0, 5.0, 0.0]
.
+MW
+
+reserve[g,t]
+\(r_g(t)\)
+Amount of reserves provided by generator g
at time t
.
+MW
+
+startup[g,t,s]
+\(\delta^s_g(t)\)
+True if generator g
switches on at time t
incurring start-up costs from start-up category s
.
+Binary
+
+
+
+
+
+
Buses
+
+
+Name
+Symbol
+Description
+Unit
+
+
+
+net_injection[b,t]
+\(n_b(t)\)
+Net injection at bus b
at time t
.
+MW
+
+curtail[b,t]
+\(s^+_b(t)\)
+Amount of load curtailed at bus b
at time t
+MW
+
+
+
+
+
+
Price-sensitive loads
+
+
+Name
+Symbol
+Description
+Unit
+
+
+
+loads[s,t]
+\(d_{s}(t)\)
+Amount of power served to price-sensitive load s
at time t
.
+MW
+
+
+
+
+
+
Transmission lines
+
+
+Name
+Symbol
+Description
+Unit
+
+
+
+flow[l,t]
+\(f_l(t)\)
+Power flow on line l
at time t
.
+MW
+
+overflow[l,t]
+\(f^+_l(t)\)
+Amount of flow above the limit for line l
at time t
.
+MW
+
+
+
+
+
Danger
+
Since transmission and N-1 security constraints are enforced in a lazy way, most of the variables flow[l,t]
and overflow[l,t]
are never added to the model. Accessing model[:flow][l,t]
, for example, without first checking that the variable exists will likely generate an error.
+
+
+
+
+
4.2. Objective function
+
+\[\begin{split}
+\begin{align}
+ \text{minimize} \;\; &
+ \sum_{t \in \mathcal{T}}
+ \sum_{g \in \mathcal{G}}
+ C^\text{min}_g(t) u_g(t) \\
+ &
+ + \sum_{t \in \mathcal{T}}
+ \sum_{g \in \mathcal{G}}
+ \sum_{g \in \mathcal{K}_g}
+ C^k_g(t) p^k_g(t) \\
+ &
+ + \sum_{t \in \mathcal{T}}
+ \sum_{g \in \mathcal{G}}
+ \sum_{s \in \mathcal{S}_g}
+ C^s_{g}(t) \delta^s_g(t) \\
+ &
+ + \sum_{t \in \mathcal{T}}
+ \sum_{l \in \mathcal{L}}
+ C^\text{overflow}_{l}(t) f^+_l(t) \\
+ &
+ + \sum_{t \in \mathcal{T}}
+ \sum_{b \in \mathcal{B}}
+ C^\text{curtail}(t) s^+_b(t) \\
+ &
+ - \sum_{t \in \mathcal{T}}
+ \sum_{s \in \mathcal{PS}}
+ R_{s}(t) d_{s}(t) \\
+
+\end{align}
+\end{split}\]
+
where
+
+\(\mathcal{B}\) is the set of buses
+\(\mathcal{G}\) is the set of generators
+\(\mathcal{L}\) is the set of transmission lines
+\(\mathcal{PS}\) is the set of price-sensitive loads
+\(\mathcal{S}_g\) is the set of start-up categories for generator \(g\)
+\(\mathcal{T}\) is the set of time steps
+\(C^\text{curtail}(t)\) is the curtailment penalty (in $/MW)
+\(C^\text{min}_g(t)\) is the cost of keeping generator \(g\) on and producing at minimum power during time \(t\) (in $)
+\(C^\text{overflow}_{l}(t)\) is the flow limit penalty for line \(l\) at time \(t\) (in $/MW)
+\(C^k_g(t)\) is the cost for generator \(g\) to produce 1 MW of power at time \(t\) under piecewise linear segment \(k\)
+\(C^s_{g}(t)\) is the cost of starting up generator \(g\) at time \(t\) under start-up category \(s\) (in $)
+\(R_{s}(t)\) is the revenue obtained from serving price-sensitive load \(s\) at time \(t\) (in $/MW)
+
+
+
+
4.3. Constraints
+
TODO
+
+
+
4.4. Inspecting and modifying the model
+
+
Accessing decision variables
+
After building a model using UnitCommitment.build_model
, it is possible to obtain a reference to the decision variables by calling model[:varname][index]
. For example, model[:is_on]["g1",1]
returns a direct reference to the JuMP variable indicating whether generator named “g1” is on at time 1. The script below illustrates how to build a model, solve it and display the solution without using the function UnitCommitment.solution
.
+
using Cbc
+using Printf
+using JuMP
+using UnitCommitment
+
+# Load benchmark instance
+instance = UnitCommitment . read_benchmark ( "matpower/case118/2017-02-01" )
+
+# Build JuMP model
+model = UnitCommitment . build_model (
+ instance = instance ,
+ optimizer = Cbc . Optimizer ,
+)
+
+# Solve the model
+UnitCommitment . optimize! ( model )
+
+# Display commitment status
+for g in instance . units
+ for t in 1 : instance . time
+ @printf (
+ " %-10s %5d %5.1f %5.1f %5.1f \n " ,
+ g . name ,
+ t ,
+ value ( model [ :is_on ][ g . name , t ]),
+ value ( model [ :switch_on ][ g . name , t ]),
+ value ( model [ :switch_off ][ g . name , t ]),
+ )
+ end
+end
+
+
+
+
+
Modifying the model
+
Since we now have a direct reference to the JuMP decision variables, it is possible to fix variables, change the coefficients in the objective function, or even add new constraints to the model before solving it. The script below shows how can this be accomplished. For more information on modifying an existing model, see the JuMP documentation .
+
using Cbc
+using JuMP
+using UnitCommitment
+
+# Load benchmark instance
+instance = UnitCommitment . read_benchmark ( "matpower/case118/2017-02-01" )
+
+# Construct JuMP
+model = UnitCommitment . build_model (
+ instance = instance ,
+ optimizer = Cbc . Optimizer ,
+)
+
+# Fix a decision variable to 1.0
+JuMP . fix (
+ model [ :is_on ][ "g1" , 1 ],
+ 1.0 ,
+ force = true ,
+)
+
+# Change the objective function
+JuMP . set_objective_coefficient (
+ model ,
+ model [ :switch_on ][ "g2" , 1 ],
+ 1000.0 ,
+)
+
+# Create a new constraint
+@constraint (
+ model ,
+ model [ :is_on ][ "g3" , 1 ] + model [ :is_on ][ "g4" , 1 ] <= 1 ,
+)
+
+# Solve the model
+UnitCommitment . optimize! ( model )
+
+
+
+
+
Adding components to a bus
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/0.2/objects.inv b/0.2/objects.inv
index eae2bab..e033e79 100644
Binary files a/0.2/objects.inv and b/0.2/objects.inv differ
diff --git a/0.2/search/index.html b/0.2/search/index.html
index 02ed69e..c8c04b2 100644
--- a/0.2/search/index.html
+++ b/0.2/search/index.html
@@ -93,6 +93,14 @@
Instances
+
+
+
+ 4.
+
+ JuMP Model
+
+
diff --git a/0.2/searchindex.js b/0.2/searchindex.js
index 043df30..9793f5e 100644
--- a/0.2/searchindex.js
+++ b/0.2/searchindex.js
@@ -1 +1 @@
-Search.setIndex({docnames:["benchmark","customization","format","index","instances","usage"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["benchmark.md","customization.md","format.md","index.md","instances.md","usage.md"],objects:{},objnames:{},objtypes:{},terms:{"01527":2,"01_hw":4,"01_lw":4,"01_reserves_0":4,"01_reserves_1":4,"01_reserves_3":4,"01_reserves_5":4,"02_hw":4,"02_lw":4,"030000":1,"0309":4,"048921":1,"05917":2,"060000":1,"06ch11357":3,"093050":1,"0944":4,"100":[0,1,2,4],"1000":[0,1,2],"100_0_1_w":4,"100_0_2_w":4,"100_0_3_w":4,"100_0_4_w":4,"100_0_5_w":4,"105":4,"1060":4,"1069":4,"10_0_1_w":4,"10_0_2_w":4,"10_0_3_w":4,"10_0_4_w":4,"10_0_5_w":4,"110":[2,4],"1109":4,"1130":4,"118":4,"120000":1,"125":4,"1262":4,"1287":4,"1288":4,"130":[2,4],"1306":4,"131":4,"135":2,"1352":4,"1354":4,"13659":4,"1368":4,"137":1,"1376":4,"1393":4,"13932":4,"140":[2,4],"1400":2,"144":2,"1445":4,"1484":4,"1497":4,"150":[0,1,4],"15000":2,"150_0_1_w":4,"150_0_2_w":4,"150_0_3_w":4,"150_0_4_w":4,"150_0_5_w":4,"154":4,"155":0,"1577":4,"1600":2,"16049":4,"1615":4,"1632":4,"165":4,"168":4,"175":4,"1768":4,"177":4,"179":4,"1804":4,"1820":4,"1823":4,"186":4,"188":4,"1888":4,"189":0,"192":4,"1951":4,"196":1,"1960":4,"199":4,"1990":4,"1991":4,"1994":0,"200":[0,4],"20000":2,"2004":0,"2006":4,"200_0_10_w":4,"200_0_11_w":4,"200_0_12_w":4,"200_0_1_w":4,"200_0_2_w":4,"200_0_3_w":4,"200_0_4_w":4,"200_0_5_w":4,"200_0_6_w":4,"200_0_7_w":4,"200_0_8_w":4,"200_0_9_w":4,"201":0,"2010":4,"2011":4,"2013":4,"2014":4,"2015":4,"2016":4,"2017":[4,5],"2019":4,"2020":[3,4],"20467":4,"2051168":4,"20_0_1_w":4,"20_0_2_w":4,"20_0_3_w":4,"20_0_4_w":4,"20_0_5_w":4,"210":4,"212":0,"214":4,"220":4,"2200":2,"2240":4,"2242":4,"2251015":4,"2260":4,"2307":4,"232":2,"2383":4,"2400":2,"242":1,"250":[0,4],"250000":1,"251":0,"2531":4,"256":0,"2582903":4,"2596":4,"260":4,"267":4,"2736":4,"2737":4,"2746":4,"2848":4,"2854":4,"2868":4,"2869":4,"288":2,"289":4,"2896":4,"290":4,"2925557":4,"2933":0,"2950":4,"296":4,"2962024":4,"29725":2,"300":[2,4],"3012":4,"30552":2,"3120":4,"3155":4,"3156":4,"3159":4,"3161":4,"31838":2,"320":4,"323":4,"3245":4,"3374":4,"350":0,"3504":4,"3506":4,"351":0,"3514":4,"3572":4,"3579":4,"3693":4,"375804":1,"3776":4,"3808":4,"390":4,"400":[2,4],"4092":4,"411":4,"4161":4,"4269874":[3,4],"432":2,"440000":1,"443":4,"457":4,"4582":4,"46212":2,"46307":2,"480":4,"483":4,"4909":4,"4917":4,"496":4,"49686":2,"500":0,"5000":2,"500000":1,"505":4,"50_0_1_w":4,"50_0_2_w":4,"50_0_3_w":4,"50_0_4_w":4,"50_0_5_w":4,"510":4,"517612":1,"519790":1,"5281":[3,4],"530000":1,"544":4,"560000":1,"590":4,"596":4,"6060":4,"6063":4,"6085":4,"6094":4,"610":4,"611":4,"623":4,"6230":0,"6468":4,"647":4,"6470":4,"6495":4,"6515":4,"7001":1,"702500":1,"720000":1,"730":2,"750000":1,"75_0_1_w":4,"75_0_2_w":4,"75_0_3_w":4,"75_0_4_w":4,"75_0_5_w":4,"767":4,"775":4,"800":2,"836":4,"843924":1,"850":[2,4],"880000":1,"88429":2,"900":1,"9000":4,"9005":4,"9019":4,"9037":4,"90897":2,"918":4,"9241":4,"931":4,"935":4,"940":4,"957":4,"959":4,"977827":1,"979":4,"981667":1,"\u015bl\u0105ska":4,"boolean":2,"case":4,"class":[0,1],"default":[0,1,2],"erd\u0151":0,"float":[1,2],"fr\u00e9vill":0,"function":5,"g\u00e9rard":0,"import":[1,3,4],"long":[0,4,5],"new":[0,3,5],"public":4,"r\u00e9nyi":0,"return":[0,1,5],"switch":[1,5],"true":[0,1,2],"while":[0,1,2],AND:3,ARE:3,BUT:3,Bus:2,FOR:3,For:[0,1,2,4,5],LTS:0,NOT:3,PES:4,SUCH:3,THE:3,The:[0,1,2,3,4,5],There:2,These:4,USE:3,aaron:4,abov:[0,1,3],absolut:1,ac02:3,accept:2,access:4,accord:2,account:4,accur:3,accuraci:1,achiev:1,across:[0,1],action:4,actual:0,add:[1,5],addit:1,addition:3,adjac:0,advanc:[3,4],advis:3,affect:2,after:[2,5],again:2,ahead:3,aleksandr:3,algorithm:[3,4,5],ali:4,align:0,alinson:[3,4],all:[0,1,2,3,4,5],allow:[1,2],alpha:0,alpha_i:0,also:[0,1,2,4,5],altern:1,although:0,alwai:2,american:4,amount:2,analysi:4,ani:[1,2,3,5],anoth:2,appli:[0,1],applic:0,approach:4,arango:4,archiv:4,argonn:3,argument:[0,1],aris:3,arnaud:0,arrai:2,art:[0,3],arxiv:4,ask:[0,1],aspect:3,assum:1,autom:3,automat:1,avail:[0,1,4],averag:0,axi:1,b_i:0,bableh19:4,balanc:2,barrow:4,base:[1,2,3,4],beaslei:4,becaus:4,becom:5,been:[2,4,5],befor:[0,2],begin:[0,2],being:[1,5],below:[1,2,4,5],benchmark:[3,4],benefit:0,bernard:4,best:[1,4],between:[0,1,2,5],binari:[1,3],bloom:4,both:2,branch:1,branchprioritycompon:1,bridg:4,build:1,build_model:5,bus:2,buse:4,busi:3,calcul:0,call:[0,5],can:[0,1,2,4,5],capac:[0,2],capitanescu:4,carefulli:5,case118:4,case1354pegas:4,case13659pegas:4,case14:[2,4],case1888rt:4,case1951rt:4,case2383wp:4,case2736sp:4,case2737sop:4,case2746wop:4,case2746wp:4,case2848rt:4,case2868rt:4,case2869pegas:4,case300:4,case3012wp:4,case30:4,case3120sp:4,case3375wp:[4,5],case57:4,case6468rt:4,case6470rt:4,case6495rt:4,case6515rt:4,case89pegas:4,case9241pegas:4,caus:[3,5],cbc:5,certain:[1,2],challeng:[3,5],chang:[2,3,5],characterist:[2,3],charg:2,chen:3,choic:5,cite:4,citi:0,classif:1,clayton:4,clear:3,code:[3,5],coeffici:0,collabor:3,collect:[3,4,5],combin:0,come:0,commiss:4,commit:[2,3,4,5],common:[3,4],comp:1,compar:0,comparison:4,compat:[1,2,5],compil:4,complet:[0,2,5],complex:4,compon:2,compos:1,comput:[0,1,4,5],condit:[1,3,4],confid:1,configur:1,congest:2,connect:2,consequenti:3,conserv:1,consid:1,consortium:4,constant:0,constrain:[3,4],constraint:[0,1,4,5],construct:[1,5],constructor:[0,1],consum:0,consumpt:2,contain:[2,4,5],conting:[3,4],contract:3,contributor:3,contructor:1,convent:0,convert:4,convex:2,copi:5,copyright:3,core:0,correct:[1,4],correctli:5,correl:0,correspond:4,cost:[0,3,4],cover:0,cplex:1,cplexpyomosolv:1,creat:[0,1,5],credibl:2,cross:1,curat:4,current:[1,3],curv:[2,3,4],dai:[3,4],damag:3,data:[1,3,4,5],datafram:1,date:3,ddr4:0,decis:1,decreas:2,degrad:2,delai:2,demand:[2,4],depart:[3,4],depend:[2,3],dept:4,deriv:[0,3],describ:[0,2,3,4,5],descript:[2,5],design:4,desir:1,detail:[0,2,4],develop:[3,4,5],dheepak:4,dictionari:1,differ:[0,1,2,5],direct:3,directli:5,director:3,disabl:[0,1],discard:1,disclaim:3,discret:0,distanc:0,distinct:0,distribut:[0,3,4],divers:3,divis:4,divisor:2,document:[2,3],doi:[3,4],down:[2,4],downtim:2,driven:4,dtype:1,due:5,dure:[0,1,2],dynam:1,each:[0,1,2,4,5],earli:3,easi:5,easier:0,easili:5,econom:2,edu:4,educ:4,effici:[0,4],ehlen:4,either:[2,3],electr:[3,4],electricit:4,electron:4,element:2,emerg:[2,4],enabl:1,end:[0,5],endors:3,energi:[2,3,4],enforc:1,engin:4,enhanc:0,ensur:1,entir:0,entri:2,equal:2,eric:4,error:[1,5],estim:4,etc:2,european:[0,4],evalu:[0,3],even:[2,3,5],event:3,exact:[0,1],exactli:[0,2,5],exampl:[1,3,5],excess:5,exemplari:3,exist:5,expect:[0,1,2,5],experi:0,explain:[1,4],express:3,extend:[3,4],extens:3,extract:5,failur:2,fals:[0,1,2],feasibl:5,feb:4,feder:4,feedback:3,feng:[3,4],fico:1,field:0,figur:2,file:[2,3,4,5],find:0,first:[0,2,5],fit:[1,3],fix:[0,1,2,4],fix_citi:0,fix_graph:0,fix_w:0,fliscounaki:4,float64:1,florida:3,flow:[2,4],flpaca13:4,follow:[1,2,3,4,5],foral:0,forc:4,form:3,format:[3,4,5],formul:[3,4],forpow:4,found:5,frac:0,frangioni:4,french:4,frevil:0,frge06:4,from:[0,1,2,3,4,5],fulli:[2,3],fund:3,fundament:3,futur:[1,2,5],gamma:0,gamma_:0,gen1:2,gen2:2,gener:[3,4],generate_initial_condit:5,gentil:4,get_solut:5,git:5,github:4,given:[0,1,5],glpk:5,goal:3,gold:0,good:[1,3],gov:4,gradual:0,grant:3,graph:[0,4],grid:[3,4],group:4,guid:5,gurobi:[0,1],gurobipyomosolv:1,gurobisolv:1,hamiltonian:0,hand:2,hard:5,harder:0,has:[2,5],have:[1,2,4],help:5,here:0,heurist:[0,1],higgin:4,high:[0,4],holder:3,horizon:2,hour:[2,4],hourli:2,how:[0,1,2],howev:3,http:4,ibm:1,ident:0,identifi:2,ieee:4,ijoc:4,ikaheimo:4,illustr:[0,2],ilog:1,immedi:2,impact:3,implement:[3,5],impli:[0,3],improv:4,incident:3,includ:[0,1,2,3,4,5],incorrect:5,increas:[1,2,4,5],independ:[0,2,3,5],indic:[1,2,4],indirect:3,individu:[1,5],industri:4,inf:2,infeas:5,inform:4,initi:[0,1,2,4],input:[3,5],instal:3,instanc:[1,2,3],instant:1,instead:[0,5],instruct:5,insuffici:2,integ:[0,3,4,5],intel:0,interest:0,intern:0,interpret:5,interrupt:3,introduc:5,island:4,iso:[3,4],isol:[1,4],issu:5,item:0,itesla:4,its:[1,2,3],itself:1,jame:4,jean:4,jenni:4,jessica:4,joflma16:4,jorgenson:4,josz:4,journal:[0,4],json:[2,3,5],julia:[3,4,5],jump:[3,4,5],jussi:4,karp:0,kazachkov:3,keep:3,kei:2,kept:0,kera:1,kindli:3,kneighborsclassifi:1,knoswa20:4,knueven:4,korab:4,krall:4,krhion12:4,krishnamurthi:4,laboratori:[3,4],lack:4,lambda:1,languag:1,larg:[3,4],larger:4,last:2,later:[0,5],lau:4,lazi:1,lazyconstraintcompon:1,ldot:0,ldrd:3,learn:[0,1,4],learningsolv:[0,1],least:[1,2],length:2,leq:0,less:1,liabil:3,liabl:3,lib:3,librari:4,like:3,limit:[0,3,4],line:4,linear:[2,3,5],linearli:0,linux:0,list:[0,1,2,3,5],literatur:[3,4,5],llc:3,load:[3,4,5],loc:0,local:5,locat:2,loss:[2,3],low:[0,1],lower:[1,2],lumbrera:4,machin:[1,4,5],maeght:4,mai:[0,1,2,3,5],mail:4,main:2,maintain:4,make:[0,1,3,5],manag:5,mani:[2,4],market:[3,4],martin:4,materi:3,mathbb:0,mathemat:[0,3],matlab:4,matpow:[3,5],max:1,maxim:0,maximum:[2,4],maxweightstablesetgener:0,mean:[1,2],measur:0,median:1,merchant:3,met:3,method:[1,3,4],mhz:0,michael:4,midcontin:3,milp:5,min:2,minimum:[2,4],minprecisionthreshold:1,minprobabilitythreshold:1,minut:2,mip:0,mipgap:1,miplearn:[0,1],miplib:0,mix:[3,4,5],mode:[0,1],model:[1,2,3,4,5],modern:4,modif:3,modifi:[1,4],more:[0,1,2,3,4,5],most:[2,3,4],mostli:4,mtpwr:4,much:[2,4],multiknapsackgener:0,multipl:[2,5],multipli:0,murillo:4,must:[2,3],n_neighbor:1,naiv:5,name:[3,4],nation:3,nearest:0,necessari:0,need:1,neg:[1,2],neglig:3,neighbor:1,neill:4,neither:3,nest:2,network:[2,3,4],newli:0,next:[1,2,5],nodelimit:1,nonlinear:4,nor:3,normal:2,northwest:3,note:[0,1,2],notic:3,nov:4,now:5,number:[0,1,2,4,5],numer:2,objectivevaluecompon:1,obtain:[1,2],octav:4,oe0000875:3,off:[2,5],offic:3,offici:5,offlin:2,often:5,ohm:2,omit:2,onc:[0,5],one:[0,1,2,4,5],onli:[1,2],onlin:2,open:[4,5],oper:[0,2,3,4],opr:4,optim:[0,1,2,3,4,5],origin:[2,3,4,5],orlib:4,ostrowski:4,other:[0,1,2,3,4,5],otherwis:3,our:[3,4,5],out:3,output:[3,4,5],outsid:1,overload:4,overview:[0,4],own:5,p_j:0,pacif:3,packag:[1,2,4,5],page:[0,3,5],pair:0,pan:[3,4],panciatici:4,panda:1,param:1,paramet:[0,4],parsefil:5,part:[1,4],partial:1,particular:[1,3,5],pass:5,path:[0,5],paul:4,penalti:2,per:2,perfom:0,perform:[0,3],period:[2,5],permiss:3,permit:3,perturb:0,pglib:3,piecewis:[2,3],pipelin:1,pisa:4,pkg:5,place:[2,5],plan:[2,4],plateau:0,pleas:5,point:2,politechnika:4,portion:4,posit:[1,2],possibl:[3,5],potenti:5,power:[2,3,4,5],powersystem:4,precis:[0,1],predict:[1,4],preprocess:0,present:0,prevent:4,previous:1,price:[0,3],primalsolutioncompon:1,print:5,prior:3,prioriti:1,probabl:[0,1],problem:[1,3,4,5],procedur:0,process:1,processor:0,procur:3,produc:[2,4,5],product:[3,4],profil:4,profit:[0,3],program:[3,4,5],project:4,promot:3,proper:1,properti:2,proport:4,propos:[0,3,4],provid:[0,1,2,3,4],publicli:4,purpos:[3,5],pyomo:1,qcqp:4,qiu:[3,4],qualiti:0,rais:1,ram:0,ramo:4,ramp:[2,3,4,5],randint:0,random:[4,5],rank:4,rate:4,ratio:0,raw:4,reach:2,reactanc:2,read:5,read_benchmark:[4,5],readi:5,realist:[3,4],reason:5,recal:[0,1],recommend:5,redistribut:3,reduc:[1,2],refer:[0,3],regardless:2,regress:1,regular:2,regulatori:4,relax:1,reliabl:4,remain:[0,2],remov:5,renew:2,repositori:[4,5],repres:[2,4],reproduc:[0,3],request:[3,4],requir:[2,5],research:[0,3,4],reseau:4,reserv:[3,4],resourc:0,respect:[2,4],restrict:0,result:5,retain:3,revenu:2,richard:4,right:3,roman:4,roughli:0,round:0,rout:0,rto:4,rts_gmlc:4,run:[0,2,5],sale:4,same:[0,2,4,5],sampl:0,sanchez:4,sandnchez:4,santo:3,scale:[0,3],scenario400_reserves_0:4,scenario400_reserves_1:4,scenario400_reserves_3:4,scenario400_reserves_5:4,scenario:2,scienc:3,scikit:1,scikitlearnclassifi:1,score:1,script:[3,5],scuc:3,section:[2,4],secur:[3,4],see:[0,2,4,5],segment:2,select:0,sens:[0,4],sensibl:5,sensit:3,serv:2,server:0,servic:3,set:[1,2,4,5],shall:3,shortag:2,shortest:0,should:[0,1,2,5],show:[1,2],shown:[1,5],shut:2,shutdown:[2,4],siemen:2,signific:2,significantli:2,sim:0,similar:[0,4],similarli:1,simpl:0,simpli:5,simul:[2,4],simultan:0,sinc:2,singl:[2,4,5],size:4,sklearn:1,small:[0,4],smaller:4,snapshot:4,societi:4,softwar:[3,4],solut:[0,1,3],solv:[0,1,4],solver1:1,solver2:1,solver:[0,5],some:[0,4],sourc:[2,3,4,5],special:3,specif:[0,1,2,3,4],specifi:[0,1,2],speed:0,spin:2,sqrt:0,squar:[0,1],stai:2,start:[0,1,2],startup:[2,3,4],state:[0,2,3,4],statist:1,statu:2,steadi:4,step:[2,5],still:0,store:5,strict:3,strictli:2,string:2,stronger:0,studi:[0,4],subject:0,subset:[0,1],subseteq:0,substitut:3,subtl:5,sum_:0,summari:1,summer:4,support:[1,2,3],surplu:2,suscept:2,synthet:4,system:[2,3,4,5],systemat:4,tabl:2,take:[0,4],target:[1,2],task:4,team:4,techniqu:0,tejada19:3,tejada:4,telusa19:4,test:[0,4,5],text:0,than:[0,1,2],thank:3,thei:[1,2,4,5],them:[0,3,5],theori:3,therefor:[0,5],thermal:2,thi:[0,1,2,3,5],thoma:4,thread:0,three:[0,2],threshold:1,through:[1,2,4],tight:0,time:[0,3,4,5],timelimit:1,tool:[3,4],topolog:2,tort:3,total:[0,4],tpwr:4,train:[0,1,4],train_inst:1,tran:4,transact:4,transform:1,transmiss:[3,4],transport:4,travelingsalesmangener:0,trustworthi:1,tsplib:0,two:[0,1,4],type:[0,1,5],typic:[0,3,4],u_j:0,ubuntu:0,uc_168h_105g:4,uc_168h_110g:4,uc_168h_125g:4,uc_168h_130g:4,uc_168h_131g:4,uc_168h_140g:4,uc_168h_165g:4,uc_168h_175g:4,uc_168h_179g:4,uc_168h_188g:4,uc_168h_192g:4,uc_168h_199g:4,uc_168h_36g:4,uc_168h_38g:4,uc_168h_40g:4,uc_168h_53g:4,uc_168h_58g:4,uc_168h_59g:4,uc_168h_72g:4,uc_168h_84g:4,uc_168h_86g:4,uc_168h_88g:4,uc_168h_93g:4,uc_24h_1069g:4,uc_24h_1130g:4,uc_24h_1376g:4,uc_24h_1393g:4,uc_24h_1577g:4,uc_24h_1615g:4,uc_24h_1632g:4,uc_24h_1768g:4,uc_24h_1804g:4,uc_24h_1820g:4,uc_24h_1823g:4,uc_24h_1888g:4,uc_24h_214g:4,uc_24h_250g:4,uc_24h_290g:4,uc_24h_480g:4,uc_24h_505g:4,uc_24h_623g:4,uc_24h_647g:4,uc_24h_836g:4,uc_24h_850g:4,uc_24h_918g:4,uc_24h_931g:4,uc_24h_940g:4,uc_24h_957g:4,uc_24h_959g:4,uchicago:3,ucjl:4,uncertainti:4,under:3,undirect:0,uniform:0,unit:[2,3,4,5],unitcommit:[4,5],univers:[3,4],unless:2,unlimit:2,unrealist:5,updat:4,upon:3,uptim:2,usag:[2,3,4],use:[0,1,3,4,5],used:[0,1,3,4,5],user:[0,1],uses:1,using:[0,1,4,5],util:5,valid:[1,2,4,5],valu:[0,1,2],valuabl:3,vari:[2,4],variabl:[0,1],varianc:1,variat:4,varieti:4,veri:[0,4,5],version:[1,2,3,4,5],vertex:0,vertic:0,violat:2,virtual:2,visit:0,vol:4,voltag:4,w_jitter:0,w_v:0,wai:[0,3,5],warranti:3,washington:4,watson:4,websit:5,wehenkel:4,well:[3,4],were:[0,4],what:0,when:[0,2,5],where:[0,2],whether:3,which:[0,1,2,3,4,5],wide:[2,4],winter:4,without:[0,1,3,4,5],work:3,would:[0,3],wrap:1,write:5,written:3,www:4,x_1:0,x_i:0,x_j:0,x_n:0,xavier:[3,4],xeon:0,xpress:1,xpresspyomosolv:1,y_1:0,y_i:0,y_j:0,y_n:0,year:4,yonghong:3,you:[3,4,5],your:[3,4,5],zenodo:[3,4],zero:[1,2],zimmerman:4,zonal:2},titles:["2. Benchmarks","3. Customization","2. Data Format","UnitCommitment.jl","3. Instances","1. Usage"],titleterms:{RTS:4,Using:1,acknowledg:3,addit:2,adjust:1,advanc:5,aggress:1,author:3,baselin:0,benchmark:[0,5],buse:2,california:4,challeng:0,cite:3,classifi:1,compon:[1,3],condit:5,content:3,conting:2,cost:2,current:2,custom:1,data:2,definit:0,evalu:1,exampl:2,ferc:4,format:2,formul:5,gener:[0,2,5],gmlc:4,initi:5,input:2,instal:5,instanc:[0,4,5],intern:1,knapsack:0,lib:4,licens:3,limit:2,line:2,load:2,matpow:4,maximum:0,mip:1,modifi:5,multidimension:0,output:2,packag:3,paramet:[1,2],pegas:4,perform:1,pglib:4,polish:4,preliminari:0,price:2,problem:0,product:2,provid:5,pstca:4,random:0,refer:4,regressor:1,remark:2,reserv:2,result:0,rte:4,salesman:0,select:1,sensit:2,seri:2,set:0,site:3,solut:5,solv:5,solver:1,stabl:0,tejada19:4,time:2,transmiss:2,travel:0,typic:5,unitcommit:3,usag:5,user:5,verifi:5,weight:0}})
\ No newline at end of file
+Search.setIndex({docnames:["benchmark","customization","format","index","instances","model","usage"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["benchmark.md","customization.md","format.md","index.md","instances.md","model.md","usage.md"],objects:{},objnames:{},objtypes:{},terms:{"01527":2,"01_hw":4,"01_lw":4,"01_reserves_0":4,"01_reserves_1":4,"01_reserves_3":4,"01_reserves_5":4,"02_hw":4,"02_lw":4,"030000":1,"0309":4,"048921":1,"05917":2,"060000":1,"06ch11357":3,"093050":1,"0944":[4,5],"100":[0,1,2,4,5],"1000":[0,1,2,5],"100_0_1_w":4,"100_0_2_w":4,"100_0_3_w":4,"100_0_4_w":4,"100_0_5_w":4,"105":4,"1060":4,"1069":4,"10_0_1_w":4,"10_0_2_w":4,"10_0_3_w":4,"10_0_4_w":4,"10_0_5_w":4,"10s":5,"110":[2,4,5],"1109":4,"1130":4,"115":5,"118":4,"120000":1,"125":4,"1262":4,"1287":[4,5],"1288":4,"130":[2,4,5],"1306":4,"131":4,"135":[2,5],"1352":4,"1354":4,"13659":4,"1368":4,"137":1,"1376":4,"1393":4,"13932":4,"140":[2,4],"1400":[2,5],"144":2,"1445":4,"1484":4,"1497":4,"150":[0,1,4],"15000":2,"150_0_1_w":4,"150_0_2_w":4,"150_0_3_w":4,"150_0_4_w":4,"150_0_5_w":4,"154":4,"155":0,"1577":4,"1600":[2,5],"16049":4,"1615":4,"1632":4,"165":4,"168":4,"175":4,"1768":4,"177":4,"179":4,"1804":4,"1820":4,"1823":4,"186":4,"188":4,"1888":4,"189":0,"192":4,"1951":4,"196":1,"1960":4,"199":4,"1990":4,"1991":4,"1994":0,"200":[0,4],"20000":2,"2004":0,"2006":4,"200_0_10_w":4,"200_0_11_w":4,"200_0_12_w":4,"200_0_1_w":4,"200_0_2_w":4,"200_0_3_w":4,"200_0_4_w":4,"200_0_5_w":4,"200_0_6_w":4,"200_0_7_w":4,"200_0_8_w":4,"200_0_9_w":4,"201":0,"2010":4,"2011":4,"2013":4,"2014":4,"2015":4,"2016":4,"2017":[4,5,6],"2019":[4,5],"2020":[3,4,5],"20467":4,"2051168":4,"20_0_1_w":4,"20_0_2_w":4,"20_0_3_w":4,"20_0_4_w":4,"20_0_5_w":4,"210":4,"212":0,"214":4,"220":4,"2200":[2,5],"2240":4,"2242":4,"2251015":4,"2260":4,"2307":4,"232":2,"2383":4,"2400":[2,5],"242":1,"250":[0,4],"250000":1,"251":0,"2531":4,"256":0,"2582903":4,"2596":4,"260":4,"267":4,"2736":4,"2737":4,"2746":4,"2848":4,"2854":4,"2868":4,"2869":4,"288":2,"289":4,"2896":4,"290":4,"2925557":4,"2933":0,"2950":4,"296":4,"2962024":4,"29725":2,"300":[2,4],"3012":4,"30552":2,"3120":4,"3155":4,"3156":4,"3159":4,"3161":4,"31838":2,"320":4,"323":4,"3245":4,"3374":4,"350":0,"3504":4,"3506":4,"351":0,"3514":4,"3572":4,"3579":4,"3693":4,"375804":1,"3776":4,"3808":4,"390":4,"400":[2,4],"4092":4,"411":4,"4161":4,"4269874":[3,4],"432":2,"440000":1,"443":4,"457":4,"4582":4,"46212":2,"46307":2,"480":4,"483":4,"4909":4,"4917":4,"496":4,"49686":2,"500":0,"5000":2,"500000":1,"505":4,"50_0_1_w":4,"50_0_2_w":4,"50_0_3_w":4,"50_0_4_w":4,"50_0_5_w":4,"510":4,"517612":1,"519790":1,"5281":[3,4],"530000":1,"544":4,"560000":1,"590":4,"596":4,"6060":4,"6063":4,"6085":4,"6094":4,"610":4,"611":4,"623":4,"6230":0,"6468":4,"647":4,"6470":4,"6495":4,"6515":4,"7001":1,"702500":1,"720000":1,"730":2,"750000":1,"75_0_1_w":4,"75_0_2_w":4,"75_0_3_w":4,"75_0_4_w":4,"75_0_5_w":4,"767":4,"775":4,"800":2,"836":4,"843924":1,"850":[2,4],"880000":1,"88429":2,"900":1,"9000":4,"9005":4,"9019":4,"9037":4,"90897":2,"918":4,"9241":4,"931":4,"935":4,"940":4,"957":4,"959":4,"977827":1,"979":4,"981667":1,"\u015bl\u0105ska":4,"boolean":2,"case":[4,5],"class":[0,1],"default":[0,1,2],"erd\u0151":0,"float":[1,2],"fr\u00e9vill":0,"function":[3,6],"g\u00e9rard":0,"import":[1,3,4],"long":[0,4,6],"new":[0,3,5,6],"public":4,"r\u00e9nyi":0,"return":[0,1,5,6],"switch":[1,5,6],"true":[0,1,2,5],"while":[0,1,2],AND:3,ARE:3,BUT:3,Bus:2,FOR:3,For:[0,1,2,4,5,6],LTS:0,NOT:3,PES:4,SUCH:3,THE:3,The:[0,1,2,3,4,5,6],There:2,These:4,USE:3,aaron:4,abov:[0,1,3,5],absolut:1,ac02:3,accept:2,access:4,accomplish:5,accord:2,account:4,accur:3,accuraci:1,achiev:1,across:[0,1],action:4,actual:0,add:[1,5,6],added:5,addit:[1,5],addition:3,adjac:0,advanc:[3,4],advis:3,affect:2,after:[2,5,6],again:2,ahead:3,aleksandr:3,algorithm:[3,4,6],ali:4,align:[0,5],alinson:[3,4],all:[0,1,2,3,4,6],allow:[1,2],alpha:0,alpha_i:0,also:[0,1,2,4,6],altern:1,although:0,alwai:2,american:4,amount:[2,5],analysi:4,ani:[1,2,3,6],anoth:2,appli:[0,1],applic:0,approach:4,arango:4,archiv:4,argonn:3,argument:[0,1],aris:3,arnaud:0,arrai:2,art:[0,3],arxiv:4,ask:[0,1],aspect:3,assum:1,autom:3,automat:1,avail:[0,1,4],averag:0,axi:1,b_i:0,bableh19:4,balanc:2,barrow:4,base:[1,2,3,4],beaslei:4,becaus:4,becom:6,been:[2,4,6],befor:[0,2,5],begin:[0,2,5],being:[1,6],below:[1,2,4,5,6],benchmark:[3,4,5],benefit:0,bernard:[4,5],best:[1,4],between:[0,1,2,6],binari:[1,3,5],bloom:4,both:2,branch:1,branchprioritycompon:1,bridg:4,build:[1,5],build_model:[5,6],bus:2,buse:4,busi:3,calcul:0,call:[0,5,6],can:[0,1,2,4,5,6],capac:[0,2],capitanescu:4,carefulli:6,case118:[4,5],case1354pegas:4,case13659pegas:4,case14:[2,4],case1888rt:4,case1951rt:4,case2383wp:4,case2736sp:4,case2737sop:4,case2746wop:4,case2746wp:4,case2848rt:4,case2868rt:4,case2869pegas:4,case300:4,case3012wp:4,case30:4,case3120sp:4,case3375wp:[4,6],case57:4,case6468rt:4,case6470rt:4,case6495rt:4,case6515rt:4,case89pegas:4,case9241pegas:4,categori:5,caus:[3,6],cbc:[5,6],certain:[1,2],challeng:[3,6],chang:[2,3,5,6],characterist:[2,3],charg:2,check:5,chen:3,choic:6,cite:4,citi:0,classif:1,clayton:4,clear:3,code:[3,6],coeffici:[0,5],collabor:3,collect:[3,4,6],combin:0,come:0,commiss:4,commit:[2,3,4,5,6],common:[3,4],comp:1,compar:0,comparison:4,compat:[1,2,6],compil:4,complet:[0,2,6],complex:4,compon:2,compos:1,comput:[0,1,4,5,6],condit:[1,3,4],confid:1,configur:1,congest:2,connect:2,consequenti:3,conserv:1,consid:1,consortium:4,constant:0,constrain:[3,4],constraint:[0,1,3,4,6],construct:[1,5,6],constructor:[0,1],consum:0,consumpt:2,contain:[2,4,6],conting:[3,4],contract:3,contributor:3,contructor:1,convent:0,convert:4,convex:2,copi:6,copyright:3,core:0,correct:[1,4],correctli:6,correl:0,correspond:4,cost:[0,3,4,5],cover:0,cplex:1,cplexpyomosolv:1,creat:[0,1,5,6],credibl:2,cross:1,curat:4,current:[1,3],curtail:5,curv:[2,3,4,5],dai:[3,4],damag:3,data:[1,3,4,6],datafram:1,date:3,ddr4:0,decis:[1,3],decreas:2,defin:5,degrad:2,delai:2,delta:5,demand:[2,4],depart:[3,4],depend:[2,3],dept:4,deriv:[0,3],describ:[0,2,3,4,5,6],descript:[2,5,6],design:4,desir:1,detail:[0,2,4,5],develop:[3,4,6],dheepak:4,dictionari:1,differ:[0,1,2,5,6],direct:[3,5],directli:6,director:3,disabl:[0,1],discard:1,disclaim:3,discret:0,displai:5,distanc:0,distinct:0,distribut:[0,3,4],divers:3,divis:4,divisor:2,document:[2,3,5],doi:[3,4,5],down:[2,4],downtim:2,driven:4,dtype:1,due:6,dure:[0,1,2,5],dynam:1,each:[0,1,2,4,6],earli:3,easi:6,easier:0,easili:6,econom:2,edu:4,educ:4,effici:[0,4],ehlen:4,either:[2,3],electr:[3,4],electricit:4,electron:4,element:2,emerg:[2,4],enabl:1,end:[0,5,6],endors:3,energi:[2,3,4],enforc:[1,5],engin:4,enhanc:0,ensur:1,entir:0,entri:2,equal:[2,5],eric:4,error:[1,5,6],estim:4,etc:2,european:[0,4],evalu:[0,3],even:[2,3,5,6],event:3,exact:[0,1],exactli:[0,2,6],exampl:[1,3,5,6],excess:6,exemplari:3,exist:[5,6],expect:[0,1,2,6],experi:0,explain:[1,4],express:3,extend:[3,4],extens:3,extract:6,f_l:5,failur:2,fals:[0,1,2],feasibl:6,feb:4,feder:4,feedback:3,feng:[3,4],fico:1,field:0,figur:2,file:[2,3,4,6],find:0,first:[0,2,5,6],fit:[1,3],fix:[0,1,2,4,5],fix_citi:0,fix_graph:0,fix_w:0,fliscounaki:4,float64:1,florida:3,flow:[2,4,5],flpaca13:4,follow:[1,2,3,4,5,6],foral:0,forc:[4,5],form:3,format:[3,4,6],formul:[3,4,5],forpow:4,found:6,frac:0,frangioni:4,french:4,frevil:0,frge06:4,from:[0,1,2,3,4,5,6],fulli:[2,3],fund:3,fundament:3,futur:[1,2,6],gamma:0,gamma_:0,gen1:2,gen2:2,gener:[3,4],generate_initial_condit:6,gentil:4,get_solut:6,git:6,github:4,given:[0,1,6],glpk:6,goal:3,gold:0,good:[1,3],gov:4,gradual:0,grant:3,graph:[0,4],grid:[3,4],group:4,guid:6,gurobi:[0,1],gurobipyomosolv:1,gurobisolv:1,hamiltonian:0,hand:2,hard:6,harder:0,has:[2,6],have:[1,2,4,5],help:6,here:0,heurist:[0,1],higgin:4,high:[0,4],holder:3,horizon:2,hour:[2,4],hourli:2,how:[0,1,2,5],howev:3,http:4,ibm:1,ident:0,identifi:2,ieee:4,ijoc:[4,5],ikaheimo:4,illustr:[0,2,5],ilog:1,immedi:2,impact:3,implement:[3,6],impli:[0,3],improv:4,incident:3,includ:[0,1,2,3,4,6],incorrect:6,increas:[1,2,4,6],incur:5,independ:[0,2,3,6],index:5,indic:[1,2,4,5],indirect:3,individu:[1,6],industri:4,inf:2,infeas:6,inform:[4,5],initi:[0,1,2,4],inject:5,input:[3,6],inspect:3,instal:3,instanc:[1,2,3,5],instant:1,instead:[0,6],instruct:6,insuffici:2,integ:[0,3,4,5,6],intel:0,interest:[0,5],intern:0,interpret:6,interrupt:3,introduc:6,is_on:5,island:4,iso:[3,4],isol:[1,4],issu:6,item:0,itesla:4,its:[1,2,3,5],itself:1,jame:[4,5],jean:[4,5],jenni:4,jessica:4,joflma16:4,jorgenson:4,josz:4,journal:[0,4,5],json:[2,3,6],julia:[3,4,6],jump:[3,4,6],jussi:4,just:5,k_g:5,karp:0,kazachkov:3,keep:[3,5],kei:2,kept:0,kera:1,kindli:3,kneighborsclassifi:1,knoswa20:[4,5],knueven:[4,5],korab:4,krall:4,krhion12:4,krishnamurthi:4,laboratori:[3,4],lack:4,lambda:1,languag:1,larg:[3,4],larger:4,last:2,later:[0,6],lau:4,lazi:[1,5],lazyconstraintcompon:1,ldot:0,ldrd:3,learn:[0,1,4],learningsolv:[0,1],least:[1,2],length:2,leq:0,less:1,liabil:3,liabl:3,lib:3,librari:4,like:[3,5],limit:[0,3,4,5],line:4,linear:[2,3,5,6],linearli:0,linux:0,list:[0,1,2,3,6],literatur:[3,4,6],llc:3,load:[3,4,6],loc:0,local:6,locat:2,loss:[2,3],low:[0,1],lower:[1,2],lumbrera:4,machin:[1,4,6],maeght:4,mai:[0,1,2,3,5,6],mail:4,main:2,maintain:4,make:[0,1,3,6],manag:6,mani:[2,4],market:[3,4],martin:4,materi:3,mathbb:0,mathcal:5,mathemat:[0,3],matlab:4,matpow:[3,5,6],max:1,maxim:0,maximum:[2,4],maxweightstablesetgener:0,mean:[1,2],measur:0,median:1,merchant:3,met:3,method:[1,3,4],mhz:0,michael:4,midcontin:3,milp:6,min:[2,5],minim:5,minimum:[2,4,5],minprecisionthreshold:1,minprobabilitythreshold:1,minut:2,mip:0,mipgap:1,miplearn:[0,1],miplib:0,mix:[3,4,5,6],mode:[0,1],model:[1,2,3,4,6],modern:4,modif:3,modifi:[1,3,4],more:[0,1,2,3,4,5,6],most:[2,3,4,5],mostli:4,mtpwr:4,much:[2,4],multiknapsackgener:0,multipl:[2,6],multipli:0,murillo:4,must:[2,3],n_b:5,n_neighbor:1,naiv:6,name:[3,4,5],nation:3,nearest:0,necessari:[0,5],need:[1,5],neg:[1,2],neglig:3,neighbor:1,neill:4,neither:3,nest:2,net:5,net_inject:5,network:[2,3,4],never:5,newli:0,next:[1,2,6],nodelimit:1,nonlinear:4,nor:3,normal:2,northwest:3,notat:5,note:[0,1,2],notic:3,nov:4,now:[5,6],number:[0,1,2,4,6],numer:2,object:3,objectivevaluecompon:1,obtain:[1,2,5],octav:4,oe0000875:3,off:[2,5,6],offic:3,offici:6,offlin:2,often:6,ohm:2,omit:2,onc:[0,6],one:[0,1,2,4,6],onli:[1,2],onlin:2,open:[4,6],oper:[0,2,3,4],opr:4,optim:[0,1,2,3,4,5,6],origin:[2,3,4,6],orlib:4,ostrowski:[4,5],other:[0,1,2,3,4,6],otherwis:3,our:[3,4,6],out:3,output:[3,4,5,6],outsid:1,overflow:5,overload:4,overview:[0,4],own:6,p_j:0,pacif:3,packag:[1,2,4,5,6],page:[0,3,5,6],pair:0,pan:[3,4],panciatici:4,panda:1,param:1,paramet:[0,4],parsefil:6,part:[1,4],partial:1,particular:[1,3,6],pass:6,path:[0,6],paul:[4,5],penalti:[2,5],per:2,perfom:0,perform:[0,3],period:[2,6],permiss:3,permit:3,perturb:0,pglib:3,piecewis:[2,3,5],pipelin:1,pisa:4,pkg:6,place:[2,6],plan:[2,4],plateau:0,pleas:6,point:[2,5],politechnika:4,portion:4,posit:[1,2],possibl:[3,5,6],potenti:6,power:[2,3,4,5,6],powersystem:4,precis:[0,1],predict:[1,4],preprocess:0,present:0,prevent:4,previous:1,price:[0,3],primalsolutioncompon:1,print:6,printf:5,prior:3,prioriti:1,probabl:[0,1],problem:[1,3,4,5,6],procedur:0,process:1,processor:0,procur:3,prod_abov:5,produc:[2,4,5,6],product:[3,4],profil:4,profit:[0,3],program:[3,4,5,6],project:4,promot:3,proper:1,properti:2,proport:4,propos:[0,3,4],provid:[0,1,2,3,4,5],publicli:4,purpos:[3,6],pyomo:1,qcqp:4,qiu:[3,4],qualiti:0,r_g:5,rais:1,ram:0,ramo:4,ramp:[2,3,4,6],randint:0,random:[4,6],rank:4,rate:4,ratio:0,raw:4,reach:2,reactanc:2,read:6,read_benchmark:[4,5,6],readi:6,realist:[3,4],reason:6,recal:[0,1],recommend:6,redistribut:3,reduc:[1,2],refer:[0,3],regardless:2,regress:1,regular:2,regulatori:4,relax:1,reliabl:4,remain:[0,2],remov:6,renew:2,repositori:[4,6],repres:[2,4],reproduc:[0,3],request:[3,4],requir:[2,6],research:[0,3,4],reseau:4,reserv:[3,4,5],resourc:0,respect:[2,4],restrict:0,result:6,retain:3,revenu:[2,5],richard:4,right:3,roman:4,roughli:0,round:0,rout:0,rto:4,rts_gmlc:4,run:[0,2,6],s_g:5,sale:4,same:[0,2,4,6],sampl:0,sanchez:4,sandnchez:4,santo:3,scale:[0,3],scenario400_reserves_0:4,scenario400_reserves_1:4,scenario400_reserves_3:4,scenario400_reserves_5:4,scenario:2,scienc:3,scikit:1,scikitlearnclassifi:1,score:1,script:[3,5,6],scuc:3,section:[2,4],secur:[3,4,5],see:[0,2,4,5,6],segment:[2,5],segprod:5,select:0,sens:[0,4],sensibl:6,sensit:3,serv:[2,5],server:0,servic:3,set:[1,2,4,5,6],set_objective_coeffici:5,shall:3,shortag:2,shortest:0,should:[0,1,2,6],show:[1,2,5],shown:[1,6],shut:2,shutdown:[2,4],siemen:2,signific:2,significantli:2,sim:0,similar:[0,4],similarli:1,simpl:0,simpli:6,simul:[2,4],simultan:0,sinc:[2,5],singl:[2,4,6],size:4,sklearn:1,slightli:5,small:[0,4],smaller:4,snapshot:4,societi:4,softwar:[3,4],solut:[0,1,3,5],solv:[0,1,4,5],solver1:1,solver2:1,solver:[0,6],some:[0,4,5],sourc:[2,3,4,6],special:3,specif:[0,1,2,3,4],specifi:[0,1,2],speed:0,spin:2,sqrt:0,squar:[0,1],stai:2,standard:5,start:[0,1,2,5],startup:[2,3,4,5],state:[0,2,3,4],statist:1,statu:[2,5],steadi:4,step:[2,5,6],still:0,store:6,strict:3,strictli:2,string:2,stronger:0,studi:[0,4],subject:0,subset:[0,1],subseteq:0,substitut:3,subtl:6,sum_:[0,5],summari:1,summer:4,support:[1,2,3],surplu:2,suscept:2,switch_off:5,switch_on:5,symbol:5,synthet:4,system:[2,3,4,6],systemat:4,tabl:2,take:[0,4],target:[1,2],task:4,team:4,techniqu:0,tejada19:3,tejada:4,telusa19:4,test:[0,4,6],text:[0,5],than:[0,1,2],thank:3,thei:[1,2,4,6],them:[0,3,6],theori:3,therefor:[0,6],thermal:2,thi:[0,1,2,3,5,6],thoma:4,thread:0,three:[0,2],threshold:1,through:[1,2,4],tight:0,time:[0,3,4,5,6],timelimit:1,todo:5,tool:[3,4],topolog:2,tort:3,total:[0,4],tpwr:4,train:[0,1,4],train_inst:1,tran:4,transact:4,transform:1,transmiss:[3,4],transport:4,travelingsalesmangener:0,trustworthi:1,tsplib:0,two:[0,1,4],type:[0,1,6],typic:[0,3,4],u_g:5,u_j:0,ubuntu:0,uc_168h_105g:4,uc_168h_110g:4,uc_168h_125g:4,uc_168h_130g:4,uc_168h_131g:4,uc_168h_140g:4,uc_168h_165g:4,uc_168h_175g:4,uc_168h_179g:4,uc_168h_188g:4,uc_168h_192g:4,uc_168h_199g:4,uc_168h_36g:4,uc_168h_38g:4,uc_168h_40g:4,uc_168h_53g:4,uc_168h_58g:4,uc_168h_59g:4,uc_168h_72g:4,uc_168h_84g:4,uc_168h_86g:4,uc_168h_88g:4,uc_168h_93g:4,uc_24h_1069g:4,uc_24h_1130g:4,uc_24h_1376g:4,uc_24h_1393g:4,uc_24h_1577g:4,uc_24h_1615g:4,uc_24h_1632g:4,uc_24h_1768g:4,uc_24h_1804g:4,uc_24h_1820g:4,uc_24h_1823g:4,uc_24h_1888g:4,uc_24h_214g:4,uc_24h_250g:4,uc_24h_290g:4,uc_24h_480g:4,uc_24h_505g:4,uc_24h_623g:4,uc_24h_647g:4,uc_24h_836g:4,uc_24h_850g:4,uc_24h_918g:4,uc_24h_931g:4,uc_24h_940g:4,uc_24h_957g:4,uc_24h_959g:4,uchicago:3,ucjl:4,uncertainti:4,under:[3,5],understand:5,undirect:0,uniform:0,unit:[2,3,4,5,6],unitcommit:[4,5,6],univers:[3,4],unless:2,unlimit:2,unrealist:6,updat:4,upon:3,uptim:2,usag:[2,3,4],use:[0,1,3,4,6],used:[0,1,3,4,6],useful:5,user:[0,1],uses:1,using:[0,1,4,5,6],util:6,valid:[1,2,4,6],valu:[0,1,2,5],valuabl:3,vari:[2,4],variabl:[0,1,3],varianc:1,variat:4,varieti:4,varnam:5,veri:[0,4,6],version:[1,2,3,4,6],vertex:0,vertic:0,violat:2,virtual:2,visit:0,vol:4,voltag:4,w_jitter:0,w_v:0,wai:[0,3,5,6],warranti:3,washington:4,watson:[4,5],websit:6,wehenkel:4,well:[3,4],were:[0,4],what:0,when:[0,2,6],where:[0,2,5],whether:[3,5],which:[0,1,2,3,4,6],wide:[2,4],winter:4,without:[0,1,3,4,5,6],work:3,would:[0,3],wrap:1,write:6,written:3,www:4,x_1:0,x_i:0,x_j:0,x_n:0,xavier:[3,4],xeon:0,xpress:1,xpresspyomosolv:1,y_1:0,y_i:0,y_j:0,y_n:0,year:4,yonghong:3,you:[3,4,5,6],your:[3,4,6],zenodo:[3,4],zero:[1,2],zimmerman:4,zonal:2},titles:["2. Benchmarks","3. Customization","2. Data Format","UnitCommitment.jl","3. Instances","4. JuMP Model","1. Usage"],titleterms:{"function":5,Adding:5,RTS:4,Using:1,access:5,acknowledg:3,addit:2,adjust:1,advanc:6,aggress:1,author:3,baselin:0,benchmark:[0,6],bus:5,buse:[2,5],california:4,challeng:0,cite:3,classifi:1,compon:[1,3,5],condit:6,constraint:5,content:3,conting:2,cost:2,current:2,custom:1,data:2,decis:5,definit:0,evalu:1,exampl:2,ferc:4,format:2,formul:6,gener:[0,2,5,6],gmlc:4,initi:6,input:2,inspect:5,instal:6,instanc:[0,4,6],intern:1,jump:5,knapsack:0,lib:4,licens:3,limit:2,line:[2,5],load:[2,5],matpow:4,maximum:0,mip:1,model:5,modifi:[5,6],multidimension:0,object:5,output:2,packag:3,paramet:[1,2],pegas:4,perform:1,pglib:4,polish:4,preliminari:0,price:[2,5],problem:0,product:2,provid:6,pstca:4,random:0,refer:[4,5],regressor:1,remark:2,reserv:2,result:0,rte:4,salesman:0,select:1,sensit:[2,5],seri:2,set:0,site:3,solut:6,solv:6,solver:1,stabl:0,tejada19:4,time:2,transmiss:[2,5],travel:0,typic:6,unitcommit:3,usag:6,user:6,variabl:5,verifi:6,weight:0}})
\ No newline at end of file
diff --git a/0.2/usage/index.html b/0.2/usage/index.html
index 113d140..20461e3 100644
--- a/0.2/usage/index.html
+++ b/0.2/usage/index.html
@@ -89,6 +89,14 @@
Instances
+
+
+
+ 4.
+
+ JuMP Model
+
+