Open bonnkleiford opened 3 years ago
Dear Bikey, thanks for your interest in DualSDDP! To answer your questions:
Let me know if you need any further information about DualSDDP!
Dear Francois,
Thank you very much for your response.
I will check everything out and try to do the problem. Thank you again.
BIKEY
Dear Bikey, the two prices are specified here: https://github.com/frapac/DualSDDP.jl/blob/master/src/data.jl#L39L40
CPENAL
is the recourse price CTANS
is the transportation priceDear François,
This is great! Thank you very very much!
BIKEY
On Wed, Sep 16, 2020, 2:54 PM François Pacaud notifications@github.com wrote:
Dear Bikey, the two prices are specified here: https://github.com/frapac/DualSDDP.jl/blob/master/src/data.jl#L39L40
- CPENAL is the recourse price
- CTANS is the transportation price
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/frapac/DualSDDP.jl/issues/4#issuecomment-693384941, or unsubscribe https://github.com/notifications/unsubscribe-auth/AJAVHMXQRC5TTQ6I5G4USGLSGCYOXANCNFSM4RKAXJXQ .
Hi Francois,
Thanks again for the response. I just have some follow up questions, if you don't mind.
(1) Regarding the DEMANDS and INFLOWS data, the .txt files [for every country] is composed of 49 rows x 50 columns. Does this mean we have 50 scenarios [for demand and inflow] for 49 time steps/horizon? or I might be interpreting this wrong?
(2) I could not make sense with the Thermal Generation costs for the moment. We have the data "czpl" for the 'thermal cost" but it is a 8x4 array. I understand the 8 rows represent the countries, but what about the 4 columns?
Thank you again for the help! I hope you are having a great week!
BIKEY
Dear Bikey, to answer your questions:
czpl
is a piecewise linear cost, where each column represents a coefficient, and each row a country, as you assumed. However, in the article, we considered only the first coefficient (hence giving a linear cost): https://github.com/frapac/DualSDDP.jl/blob/master/src/data.jl#L62Let me know if you have any other question!
Dear Francois,
Thank you very much for the clear response. One more thing, it was noted in the paper that there is a lower bound and an upper bound for the energy flow between country j and country I (f_jit). Where may I find the data you have used for this?
Thank you very much.
BIKEY
Good question. The bounds on the energy flowing through the edges are deduced from the weighted node-node incidence matrix:
https://github.com/frapac/DualSDDP.jl/blob/master/src/data.jl#L30-L37
using the function buildincidence
to build i) the standard node-node incidence matrix ii) the bounds on the flows:
https://github.com/frapac/DualSDDP.jl/blob/master/src/utils.jl#L31-L47
Okay. That sounds perfect. I'll try it out.
Thanks, Francois! I'll let you know how it goes.
BIKEY
Hi Francois,
I'm really sorry for bothering you a lot. I just really enjoyed the problem. Anyway, I have another question:
After using the function buildincidence using the incidence matrix (as you've explained above), I got the following: i) the standard node-node incidence matrix [1 1 0 0 0 0 0 0 0 0; 0 0 1 1 0 0 0 0 0 0; -1 0 -1 0 1 1 1 1 0 0; 0 -1 0 0 -1 0 0 0 1 0; 0 0 0 0 0 -1 0 0 0 1; 0 0 0 -1 0 0 0 0 0 0; 0 0 0 0 0 0 -1 0 -1 -1; 0 0 0 0 0 0 0 -1 0 0],
ii) the bounds on the flows [1440.0, 720.0, 720.0, 720.0, 2160.0, 720.0, 1440.0, 720.0, 720.0, 720.0]
For the standard node-node incidence matrix , it now has 10 columns same with the bounds which now has 10 elements in the array. I am hoping I am getting the right one. I just wanna make sure. Should I use the standard node-node incidence matrix then as the flow incidence for every country (i.e. f_ijt variable)? Or should I still use this:
F_ji = [[0,0,1440,720,0,0,0,0], [0,0,720,0,0,720,0,0], [1440,720,0,2160,720,0,1400,720], [720,0,2160,0,0,0,720,0], [0,0,720,0,0,0,720,0], [0,720,0,0,0,0,0,0], [0,0,1440,720,720,0,0,0], [0,0,720,0,0,0,0,0]]
Thank you again for the help. I really wanna get the exact same solution as you did in the paper.
Thanks and have a great day!
BIKEY
Dear Bikey,
your node-node incidence matrix and bounds on the flows both look correct. You have as many columns as lines in the network. In the article, the Kirchoff current law states that:
A q + f = 0
with f
a n
dimensional vector corresponding to the flows arriving at each node (n
being the number of nodes) and q
a m
dimensional vector corresponding to the flows through the arcs (m
being the number of arcs). So the number of columns in A should match the number of arcs. In your optimization model, I would recommend using the following formulation :
Aq + f = 0
- bound_flow <= q <= bound_flow
with bound_flow
the vector you defined before as [1440.0, 720.0, 720.0, 720.0, 2160.0, 720.0, 1440.0, 720.0, 720.0, 720.0]
. Your constraints are all linear.
Note that A
is rank deficient. To overcome this issue, it is usual to remove one node in the network (aka the slack node) to improve the numerical stability of the algorithm, and ensure that the optimal multiplier is unique.
Hello,
I'm Bikey, a PhD student. I'm trying to replicate the hydro-power problem which is used in the paper (Dual SDDP). I'm trying to get the data but I can't seem to find the other parameters (upper and lower bounds) and the price data did not state if it is for the thermal, recourse, and transportation price.
I hope you can help me.
You can also reach me through bonnkleiford@gmail.com
Thank you very much!