arfc / transition-scenarios

A repository to hold transition scenarios with Cyclus.
Other
3 stars 12 forks source link

Feedback on deployment scheme #142

Closed abachma2 closed 1 year ago

abachma2 commented 1 year ago

I recently updated the advanced reactor deployment scheme (PR #141), and there was an unintended effect that I wasn't able to capture in the tests.

141 was intended as a way to redeploy advanced reactors on a nearly 1:1 scale so that the logic of the deployment scheme (whether a build share is specified or not) only affects deployment when there is a change in demand or when a LWR retires. However, I didn't make it an exact 1:1 replacement to allow a smaller number of reactors to be deployed to reduce any oversupply of power, if possible.

However, if multiple types of advanced reactors are decommissioned at the same time, then the deployment logic is applied and does not allow for 1:1 replacement, or even nearly 1:1 replacement. Therefore, I have a question: Should I keep the deployment as is, or should I make it a direct 1:1 replacement?

Pros and cons of current system:

Pros and cons of direct 1:1 replacement:

abachma2 commented 1 year ago

Here is an example of the deployment for multiple reactors using the current scheme: unnamed

Here is an example of the deployment if I changed to a 1:1 redeployment mmr_combined_reactors_consistent_redeploy

samgdotson commented 1 year ago

I'm not quite familiar with how deployment decisions are modeled here but my question is why does oversupply need to be minimized?

abachma2 commented 1 year ago

I feel like minimizing oversupply reflects real-life decision making. Like a utility won't want to have more generation installed than what they need because that's extra money they don't need to be spending.

samgdotson commented 1 year ago

I feel like minimizing oversupply reflects real-life decision making. Like a utility won't want to have more generation installed than what they need because that's extra money they don't need to be spending.

I don't agree with this assumption. There are lots of reasons why having extra generation would be beneficial -- even if its not being used. Nuclear plants especially benefit from capacity auctions that reward having capacity available when needed. In fact, FERC recommends having ~15% more capacity than a typical maximum value (a.k.a the planning reserve margin). Also, predicting demand is tricky. A pandemic might cause a significant but brief drop in electricity demand.

abachma2 commented 1 year ago

So you are suggesting I modify the deployment to just a 1:1 direct redeployment?

samgdotson commented 1 year ago

I can't say for sure because it's still not clear to me how the decision is made (from PR #141). This doesn't seem like "demand driven deployment" (d3ploy) but rather based on a set of assumptions you're enforcing (I could be wrong, though).

In the latter case, just make sure your assumptions are clear and defensible. My preference is to "optimize" 😉 these choices to limit my personal biases. It doesn't sound like either version is "more correct," just based on a different set of assumptions.

Personally, I don't think reactor deployment should follow demand that closely but I'm sure you could make an argument for it.

abachma2 commented 1 year ago

So the general logic for deployment is to deploy the reactor with the largest capacity first, and deploy it until an oversupply of energy would be created (e.g deploy 5 reactors of 100 MW capacity when there is is a demand of 550 MW, or rounding down). Then the other reactors are deployed in a similar manner, in descending order of capacity, until the reactor with the smallest capacity is deployed. For the smallest reactor, the number needed is rounded up to ensure that demand is at least met.

The idea is to limit this logic to only be applied when there is unmet demand from the decommissioning of LWRs or an increase in demand, but not when advanced reactors are decommissioned. Applying this logic to when advanced reactors are decommissioned leads to some large differences over time in how many are deployed, especially when a build share is specified.

So the deployment is demand based, but not using d3ploy, with some logic to it to provide consistency.

samgdotson commented 1 year ago

I think d3ploy uses an ARMA model to make a demand forecast, are you specifying a demand or using some historical data to make a forecast? The demand curve you use is also an assumption that should be justified. If you think that a dip in demand at the end of the model time horizon represents a future where the dip is persistent, then may the current implementation makes sense.

If you are in fact specifying a demand curve, why not run a model where it dips and then recovers? How does the model respond in that scenario? My hope is that it wouldn't retire plants during the dip and then scramble to build more during the recovery.

abachma2 commented 1 year ago

The demand for most of my work is assumed constant at what the LWRs are assumed to be generating in 2025, and another part assumes a 1% growth. So there is that inherent assumption.

I am specifically not using d3ploy for my work because it's pretty unstable and ends up telling me I need like 100k reactor to meet roughly 90 GW demand.

If the modeled demand diped for some reason, reactors would not be prematurely decommissioned, they would still operate for the full lifetime. What would change between the two methods I am proposing here is how many new reactors are deployed to replaced those decommissioned reactors. The 1:1 replacement method would not decrease the number deployed but the other method would.

samgdotson commented 1 year ago

The 1:1 replacement method would not decrease the number deployed but the other method would.

But only when the demand decreases at the end, right?

abachma2 commented 1 year ago

What do you mean by "when demand decreases at the end"?

samgdotson commented 1 year ago

I'm guessing based on the plots you shared. Could you also plot the demand that is being fulfilled for clarity?

abachma2 commented 1 year ago

The demand is the same in both cases, a constant 87.2 GWe. For the current scheme, the number of reactors in plot 1 (top left) increases at the end and the number of reactors in plot 2 (top right) decreases. The total energy output is the same between the two deployment schemes. The only difference is the number of each type of reactor deployed.

samgdotson commented 1 year ago

I see. Then I stand by what I said before; that you need to make your assumptions explicit (should excess capacity be minimized or not) and you should stick with whichever you think makes the most sense. I'm not sure how complicated this might be, but you could include a "tolerance" that says the excess capacity must be within a certain percent. Would that work for you?

abachma2 commented 1 year ago

That makes some sense. The logic I'm trying to use for deploying reactors is meant to minimize the number of reactors and minimize the oversupply of power, so I should be consistent with that for the redeployments. It will take me a bit to figure out how to get that into code. Thanks for the feedback!