EnergyInnovation / eps-us

Energy Policy Simulator - United States
GNU General Public License v3.0
22 stars 7 forks source link

Allow fuel suppliers to pass on a share of their costs/savings through fuel price changes #43

Closed robbieorvis closed 3 years ago

robbieorvis commented 4 years ago

We received a comment from Rhodium group that we should be accounting for changes in demand for fuels change the prices and demand for those fuels in other sectors. For example, John pointed out that under a 100% CES, natural gas prices would drop in other sectors and we should see an associated rise in demand for natural gas in those sectors.

This structure already exists for electricity, hydrogen, and heat, but not for other fuels. There is a note about other fuels being global commodities, but natural gas is still not really global, so prices are affected by regional demand.

This is a bit challenging as well because we don't allow for changes in demand for certain fuels, but we could at least look at increasing demand based on the change in the weighted average fuel price, since we already have the elasticities in the model to handle this.

jrissman commented 4 years ago

Wait, this is a feature we previously discussed for potential inclusion in 2.0, and you talked me out of implementing it. We should dig up that conversation and remind ourselves what our concerns were at that time, because I don't remember the details.

robbieorvis commented 4 years ago

Okay, let's find that and discuss during next EPS check-in. I suspect we decided against it because it would require a significant change in the level of detail for buildings and industry, but would be good to find regardless.

jrissman commented 4 years ago

Sounds good.

Note that the demand sectors you mention (buildings, industry) and transportation all already respond to policy-driven changes in fuel prices. That's how the fuel tax policy and, to some extent, the carbon tax policy achieve their emissions reduction. Adding in demand-driven fuel price changes to the other policy-driven fuel price changes doesn't really require any work at all in the transport, buildings, and industry sectors, since they're already set up to estimate the effects of fuel price changes.

That's not to say the demand sectors capture fuel price changes perfectly, but the enhancements to these sectors are already covered under different GitHub issues. Buildings handles short-run behavioral changes and long-run efficiency changes, but not fuel switching (issue #10). Transport handles short-run, long-run, and fuel switching, so it's all set. Industry handles short-run demand changes but not long-run equipment efficiency changes (issue #8) nor fuel switching (issue #9). In other words, we currently handle six out of the nine price-response modes across these three sectors. You can see the descriptions in each of these three linked issues for more detail on what it would take to add the three missing price-responses to each sector. None of them are easy. And we don't anticipate the three non-modeled price-response modes to be as important as the six modeled modes, particularly in scenarios that use other policy levers to drive industrial efficiency, industrial fuel switching, or building fuel switching. (Also, remember, that none of the price-responses are specific to changes in fuel prices driven by demand changes. They cover fuel price changes caused by anything, which is most importantly the carbon tax.)

I interpret this newly-opened GitHub issue (#43) to refer to changing the price of non-energy-carrier fuels in response to changes in the fuel producers' economics. Note that this is is partly based on changes in demand for those fuels, but it is also affected by changes in producers' costs to produce the fuels, and taxes/subsidies, all of which we already model. So it's actually quite a bit more complex/interesting that Rhodium makes it out to be, if they just talked about changes in fuel demand. We're fortunate in that the financial calculation upgrades in 2.0.0 mean we already holistically simulate policy-driven changes in fuel suppliers' economics, not just due to changes in fuel demand.

It's worth emphasizing that we already handle six out of nine price-response modes within the demand sectors, which is pretty darn good, and better than a lot of models! I think there is a good chance that Rhodium is not covering any more modes than we do, and possibly fewer.

I think one of the challenges when communicating with a highly skilled and experienced outside group like Rhodium is that it's easy to forget some of the things that the EPS is already doing, and then we might accidentally understate the EPS's current capabilities. For example, the demand sectors don't actually require any work or changes to respond with a pretty high degree of accuracy to fuel demand-driven price changes.

I think the main thing about implementing this will be that we can't have producers pass on all their cost changes in higher (or lower) fuel prices, either due to market pressures from cross-border trade or regulatory limits, so we're going to need to introduce a new input variable with a table of multipliers that specify the fractions of producer cost changes that get passed on to consumers through higher or lower fuel prices, and we're going to need to find data to calibrate that variable for all subsequent deployments. This will improve model accuracy, so I think issue #43 (this issue) is legitimate, but it's much smaller in scope and easier to implement than you might have first imagined. 😄

robbieorvis commented 4 years ago

Thanks for all of this, Jeff. It’s helpful background.

I should probably have added a bit of context for you too…

The comment from John stemmed from looking at the 100% clean electricity standard. He noted that in Rhodium’s modeling, the impact of the elimination of the demand for gas in the power sector caused the price for gas to decrease by so much that they saw a large increase in demand for gas in the industry sector which resulted in offsetting the emissions reductions from the CES by 25%; i.e. the increase in industrial fuel consumption of gas in response to the lower prices equated to roughly 25% of the power sector’s emissions, which is a (somewhat shockingly) huge number and more than I expected. The effect in buildings is much more muted (though not zero) and essentially zero in transport.

In any case, there may be a good reason we decided not to do this originally (I feel like we often come back to a previous issue only to find we had thoroughly investigated and discarded it) so it’s worth digging up the history. But, I’m glad to hear it sounds relatively straightforward to you.

-R


Robbie Orvis Director of Energy Policy Design Phone: 415-799-2171 98 Battery Street, Suite 202 San Francisco, CA 94111 www.energyinnovation.orghttp://www.energyinnovation.org/ [cid:image001.jpg@01D0D699.20A24470]


Check out our new book, Designing Climate Solutions: A Policy Guide for Low-Carbon Energyhttps://www.amazon.com/Designing-Climate-Solutions-Policy-Low-Carbon/dp/1610919564 Available wherever books are sold

[Policy Design book cover]

From: Jeff Rissman notifications@github.com Sent: Friday, March 6, 2020 11:23 AM To: Energy-Innovation/eps-us eps-us@noreply.github.com Cc: Robbie Orvis robbie@energyinnovation.org; Author author@noreply.github.com Subject: Re: [Energy-Innovation/eps-us] Add structure to estimate changes in fuel prices for demand for fuels not currently covered and associated changes in demand for fuels (#43)

Sounds good.

Note that the demand sectors you mention (buildings, industry) and transportation all already respond to policy-driven changes in fuel prices. That's how the fuel tax policy and, to some extent, the carbon tax policy achieve their emissions reduction. Adding in demand-driven fuel price changes to the other policy-driven fuel price changes doesn't really require any work at all in the transport, buildings, and industry sectors, since they're already set up to estimate the effects of fuel price changes.

That's not to say the demand sectors capture fuel price changes perfectly, but the enhancements to these sectors are already covered under different GitHub issues. Buildings handles short-run behavioral changes and long-run efficiency changes, but not fuel switching (issue #10https://github.com/Energy-Innovation/eps-us/issues/10). Transport handles short-run, long-run, and fuel switching, so it's all set. Industry handles short-run demand changes but not long-run equipment efficiency changes (issue #8https://github.com/Energy-Innovation/eps-us/issues/8) nor fuel switching (issue #9https://github.com/Energy-Innovation/eps-us/issues/9). In other words, we currently handle six out of the nine price-response modes across these three sectors. You can see the descriptions in each of these three linked issues for more detail on what it would take to add the three missing price-responses to each sector. None of them are easy. And we don't anticipate the three non-modeled price-response modes to be as important as the six modeled modes, particularly in scenarios that use other policy levers to drive industrial efficiency, industrial fuel switching, or building fuel switching. (Also, remember, that none of the price-responses are specific to changes in fuel prices driven by demand changes. They cover fuel price changes caused by anything, which is most importantly the carbon tax.)

I interpret this newly-opened GitHub issue (#43https://github.com/Energy-Innovation/eps-us/issues/43) to refer to changing the price of non-energy-carrier fuels in response to changes in the fuel producers' economics. Note that this is is partly based on changes in demand for those fuels, but it is also affected by changes in producers' costs to produce the fuels, and taxes/subsidies, all of which we already model. So it's actually quite a bit more complex/interesting that Rhodium makes it out to be, if they just talked about changes in fuel demand. We're fortunate in that the financial calculation upgrades in 2.0.0 mean we already holistically simulate policy-driven changes in fuel suppliers' economics, not just due to changes in fuel demand.

It's worth emphasizing that we already handle six out of nine price-response modes within the demand sectors, which is pretty darn good, and better than a lot of models! I think there is a good chance that Rhodium is not covering any more modes than we do, and possibly fewer.

I think one of the challenges when communicating with a highly skilled and experienced outside group like Rhodium is that it's easy to forget some of the things that the EPS is already doing, and then we might accidentally understate the EPS's current capabilities. For example, the demand sectors don't actually require any work or changes to respond with a pretty high degree of accuracy to fuel demand-driven price changes.

I think the main thing about implementing this will be that we can't have producers pass on all their cost changes in higher (or lower) fuel prices, either due to market pressures from cross-border trade or regulatory limits, so we're going to need to introduce a new input variable with a table of multipliers that specify the fractions of producer cost changes that get passed on to consumers through higher or lower fuel prices, and we're going to need to find data to calibrate that variable for all subsequent deployments. This will improve model accuracy, so I think issue #43https://github.com/Energy-Innovation/eps-us/issues/43 (this issue) is legitimate, but it's much smaller in scope and easier to implement than you might have first imagined. 😄

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/Energy-Innovation/eps-us/issues/43?email_source=notifications&email_token=AK5N6SPI7Q7NGMFJNPL2GZLRGFEQ7A5CNFSM4LDFLERKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEOCQV4Q#issuecomment-595921650, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AK5N6SIK67HM67OFH2U5VHTRGFEQ7ANCNFSM4LDFLERA.

jrissman commented 4 years ago

Sounds good. We'll look into it when scoping 2.2.0 features (and once we have a preliminary implementation, we should compare our result to John's result, which is a useful data point for calibration). Right now isn't the best time to work on 2.2.0, given how busy we are with other work.

jrissman commented 3 years ago

I've added the capability requested in this issue. You can now configure the EPS to vary the costs of any fuel types of your choice (except uranium and municipal solid waste) based on change in expenditures incurred by the relevant fuel supplier. I didn't enable this new behavior by default for any of the newly-working fuel types, so the model continues to behave as before and produce the same output as before.

You can adjust which fuels have variable costs in the BAU case using control setting:

You can change this behavior in policy scenarios for particular fuel types using the following policy lever:

The toggle policy is not a Boolean and may be set to any value between zero and one, to phase in or phase out the change in behavior.