New tranching approach#1357
Conversation
|
Failing for |
|
I've had a look at the failing models, and these are all due to commodities having zero/questionable shadow prices in one year, which makes activity coefficients negative the following year:
These all seem like fairly normal scenarios so makes me less convinced that #1347 should be a special feature hidden behind a warning, unless there's a deeper issue here that we can fix. In the latter two cases, it invests in assets to meet demand in the other seasons, but then exits when it has leftover demand in summer that it's chosen not to meet with these assets. I think an issue with the approach suggested in #1347 is that it would allow the system to invest in extra capacity to meet the demand in summer, whereas really it would have been better to utilise the existing assets in summer all along. |
|
@ahawkes I've had a go at implementing the new capacity selection approach as described in #1358. Two questions/discussion points:
|
Not sure about 10/capacity_to_activity. How about enough capacity to meet about 1/10 of the capacity requirements of the original demand profile - but instead of the DLC approach which focused on the worst time slice (and got capacities that are too large) - we focus on the best (highest availability) time slice - and choose a capacity that can serve 1/10 of the capacity needs in that time slice. There are probably pitfalls to this approach - feel free to refine.
For this issue, remember we were adding epsilon to make sure things dispatch for the old NPV formulation? I guess this is not similar to that? If yes, then maybe I could take a look at one that is failing to see what's going on? |
Ok... that would take us closer to where we were before. The key difference is whether capacities are defined upfront for all years (i.e. in the input data) or whether they depend on run-time info. I assumed you wanted the former so that's how I've done it. In any case, I'd probably lean into one direction or the other, rather than a mixed approach.
That helps when activity coefficients are zero. In this case, coefficients are negative, so this is a different problem. |
Not sure about this. What if demand is zero (or extremely low) in timeslices with high availability (but may be higher elsewhere). Capacities could end up extremely small, which could mean a huge number of appraisal rounds if there aren't other more feasible technologies. Feels like there could be equally many pitfalls with this approach compared to the DLC approach. |
Yes, fair enough. Though it seems there should be a way to choose based on availabilities, time sliced demands, etc - just needs to be more nuanced than DLC or this alternative demand-based approach. Anyway, in order to have something working, perhaps let's try with 1/cap2act as you suggest and see how it goes? Should we also make it a configurable parameter? If yes, would it be associated with process or commodity? I think I prefer the former. |
As it currently is in this PR:
I suggest we make the default |
Description
Please include a summary of the change and which issue is fixed (if any). Please also
include relevant motivation and context. List any dependencies that are required for
this change.
Fixes #1358
Type of change
Key checklist
$ cargo test$ cargo docpresent in the previous release
Further checks