GenXProject / GenX.jl

GenX: a configurable power system capacity expansion model for studying low-carbon energy futures. More details at : https://genx.mit.edu

Home Page:https://genxproject.github.io/GenX.jl/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Feature]: Write DDP upper & lower bound each iteration when solving multi-stage with foresight

JesseJenkins opened this issue · comments

Feature description

When solving multi-stage with foresight, GenX applies a dual dynamic decomposition method. We currently record the progression of upper and lower bound from the decomposition stages, showing the progression towards convergence, but we only write this to stats_multi_stage.csv only after completing the GenX run. We should modify the code to write to this file after each forward and backward pass, so that we can see the progression of DDP convergence as it continues, in case we have cases that terminate prior to finishing (e.g. hit a wall clock time limit).

Motivation

Helps debug large-scale multi-stage problems with foresight that might not complete before a wall clock limit is reached.

Implementation strategy

Modify write_multi_stage_stats.jl to write to stats_multi_stage.csv at the end of each forward pass and the end of each backwards pass (as bounds update).

Additional context

No response

This is now fixed on the release branch

Addressed on release/0.4.0 and v0.3.