Skip to content

Commit

Permalink
Merge branch 'main' of https://github.com/GenXProject/GenX into main
Browse files Browse the repository at this point in the history
  • Loading branch information
xuqingyu committed Jun 3, 2021
2 parents c5dcb47 + dcf4483 commit 52b7fc0
Show file tree
Hide file tree
Showing 69 changed files with 16,512 additions and 447 deletions.
9 changes: 9 additions & 0 deletions docs/build/additional_features.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Additional Features · GenX</title><link rel="canonical" href="https://genxproject.github.io/GenX/additional_features.html"/><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.11.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.11.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.11.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark"/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit">GenX</span></div><form class="docs-search" action="search.html"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="index.html">Welcome Page</a></li><li><a class="tocitem" href="data_documentation.html">Model Inputs/Outputs Documentation</a></li><li><a class="tocitem" href="genx_run_modes.html">Running GenX in Different Modes</a></li><li><span class="tocitem">Model Concept and Overview</span><ul><li><a class="tocitem" href="model_introduction.html">Model Introduction</a></li><li><a class="tocitem" href="model_notation.html">Notation</a></li><li><a class="tocitem" href="objective_function.html">Objective Function</a></li><li><a class="tocitem" href="power_balance.html">Power Balance</a></li></ul></li><li><span class="tocitem">Model Function Reference</span><ul><li><input class="collapse-toggle" id="menuitem-5-1" type="checkbox"/><label class="tocitem" for="menuitem-5-1"><span class="docs-label">Core</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><input class="collapse-toggle" id="menuitem-5-1-1" type="checkbox"/><label class="tocitem" for="menuitem-5-1-1"><span class="docs-label">Discharge</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="discharge.html">Discharge</a></li><li><a class="tocitem" href="investment_discharge.html">Investment Discharge</a></li></ul></li><li><a class="tocitem" href="non_served_energy.html">Non Served Energy</a></li><li><a class="tocitem" href="reserves.html">Reserves</a></li><li><a class="tocitem" href="transmission.html">Transmission</a></li><li><a class="tocitem" href="ucommit.html">Unit Commitment</a></li></ul></li><li><input class="collapse-toggle" id="menuitem-5-2" type="checkbox"/><label class="tocitem" for="menuitem-5-2"><span class="docs-label">Resources</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="curtailable_variable_renewable.html">Curtailable Variable Renewable</a></li><li><a class="tocitem" href="flexible_demand.html">Flexible Demand</a></li><li><a class="tocitem" href="hydro_res.html">Hydro</a></li><li><a class="tocitem" href="must_run.html">Must Run</a></li><li><input class="collapse-toggle" id="menuitem-5-2-5" type="checkbox"/><label class="tocitem" for="menuitem-5-2-5"><span class="docs-label">Storage</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="storage.html">Storage</a></li><li><a class="tocitem" href="investment_charge.html">Investment Charge</a></li><li><a class="tocitem" href="investment_energy.html">Investment Energy</a></li><li><a class="tocitem" href="long_duration_storage.html">Long Duration Storage</a></li><li><a class="tocitem" href="storage_all.html">Storage All</a></li><li><a class="tocitem" href="storage_asymmetric.html">Storage Asymmetric</a></li><li><a class="tocitem" href="storage_symmetric.html">Storage Symmetric</a></li></ul></li><li><input class="collapse-toggle" id="menuitem-5-2-6" type="checkbox"/><label class="tocitem" for="menuitem-5-2-6"><span class="docs-label">Thermal</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="thermal.html">Thermal</a></li><li><a class="tocitem" href="thermal_commit.html">Thermal Commit</a></li><li><a class="tocitem" href="thermal_no_commit.html">Thermal No Commit</a></li></ul></li></ul></li><li><input class="collapse-toggle" id="menuitem-5-3" type="checkbox"/><label class="tocitem" for="menuitem-5-3"><span class="docs-label">Policies</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="cap_reserve_margin.html">Capacity Reserve Margin</a></li><li><a class="tocitem" href="co2_cap.html">CO2 Capacity</a></li><li><a class="tocitem" href="energy_share_requirement.html">Energy Share Requirement</a></li><li><a class="tocitem" href="minimum_capacity_requirement.html">Minimum Capacity Requirement</a></li></ul></li></ul></li><li><a class="tocitem" href="load_inputs.html">Function Reference for Loading Inputs</a></li><li><span class="tocitem">Methods</span><ul><li><a class="tocitem" href="time_domain_reduction.html">Time Domain Reduction</a></li></ul></li><li class="is-active"><a class="tocitem" href="additional_features.html">Additional Features</a><ul class="internal"><li><a class="tocitem" href="#Modeling-to-Generate-Alternatives-1"><span>Modeling to Generate Alternatives</span></a></li></ul></li><li><a class="tocitem" href="write_outputs.html">GenX Outputs</a></li><li><a class="tocitem" href="documentation.html">New Documentation Page</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href="additional_features.html">Additional Features</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="additional_features.html">Additional Features</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com//blob/master/docs/src/additional_features.md" title="Edit on GitHub"><span class="docs-icon fab"></span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Additional-Features-1"><a class="docs-heading-anchor" href="#Additional-Features-1">Additional Features</a><a class="docs-heading-anchor-permalink" href="#Additional-Features-1" title="Permalink"></a></h1><h2 id="Modeling-to-Generate-Alternatives-1"><a class="docs-heading-anchor" href="#Modeling-to-Generate-Alternatives-1">Modeling to Generate Alternatives</a><a class="docs-heading-anchor-permalink" href="#Modeling-to-Generate-Alternatives-1" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="GenX.mga-Tuple{JuMP.Model,AbstractString,Dict,Dict,AbstractString}" href="#GenX.mga-Tuple{JuMP.Model,AbstractString,Dict,Dict,AbstractString}"><code>GenX.mga</code></a><span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">mga(EP::Model, path::AbstractString, setup::Dict, inputs::Dict, outpath::AbstractString)</code></pre><p>We have implemented an updated Modeling to Generate Alternatives (MGA) Algorithm proposed by <a href="https://www.sciencedirect.com/science/article/pii/S0360544217304097">Evelina et al., (2017)</a> to generate a set of feasible, near cost-optimal technology portfolios. This algorithm was developed by <a href="https://pubsonline.informs.org/doi/abs/10.1287/mnsc.25.5.413">Brill Jr, E. D., 1979</a> and introduced to energy system planning by <a href="https://www.sciencedirect.com/science/article/pii/S0140988310000721">DeCarolia, J. F., 2011</a>.</p><p>To create the MGA formulation, we replace the cost-minimizing objective function of GenX with a new objective function that creates multiple generation portfolios by zone. We further add a new budget constraint based on the optimal objective function value <span>$f^*$</span> of the least-cost model and the user-specified value of slack <span>$\delta$</span>. After adding the slack constraint, the resulting MGA formulation is given as:</p><div>\[\begin{aligned}
\text{max/min} \quad
&amp;\sum_{z \in \mathcal{Z}}\sum_{r \in \mathcal{R}} \beta_{z,r}^{k}P_{z,r}\\
\text{s.t.} \quad
&amp;P_{zr} = \sum_{y \in \mathcal{G}}\sum_{t \in \mathcal{T}} \omega_{t} \Theta_{y,t,z,r} \\
&amp; f \leq f^* + \delta \\
&amp;Ax = b
\end{aligned}\]</div><p>where, <span>$\beta_{zr}$</span> is a random objective fucntion coefficient betwen <span>$[0,100]$</span> for MGA iteration <span>$k$</span>. <span>$\Theta_{y,t,z,r}$</span> is a generation of technology <span>$y$</span> in zone <span>$z$</span> in time period <span>$t$</span> that belongs to a resource type <span>$r$</span>. We aggregate <span>$\Theta_{y,t,z,r}$</span> into a new variable <span>$P_{z,r}$</span> that represents total generation from technology type <span>$r$</span> in a zone <span>$z$</span>. In Constraint \ref{budget}, <span>$\delta$</span> denote the increase in budget from the least-cost solution and <span>$f$</span> represents the expression for the total system cost. Constraint \ref{misc} represents all other constraints in the power system model. We then solve the formulation with minimization and maximization objective function to explore near optimal solution space.</p></div></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="time_domain_reduction.html">« Time Domain Reduction</a><a class="docs-footer-nextpage" href="write_outputs.html">GenX Outputs »</a></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 19:20">Wednesday 2 June 2021</span>. Using Julia version 1.3.1.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
Binary file added docs/build/assets/Dimensions_graphic3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
260 changes: 260 additions & 0 deletions docs/build/assets/documenter.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 52b7fc0

Please sign in to comment.