idaes-pse icon indicating copy to clipboard operation
idaes-pse copied to clipboard

Generalize LMP forecaster

Open xiangao1 opened this issue 2 years ago • 1 comments

Fixes

Summary/Motivation:

Propose a generalized template for electricity price forecasters.

We should merge #855 first.

Changes proposed in this PR:

  • Propose generalization for forecasters that will interact with Prescient
  • Implement a Backcaster

Legal Acknowledgement

By contributing to this software project, I agree to the following terms and conditions for my contribution:

  1. I agree my contributions are submitted under the license terms described in the LICENSE.txt file at the top level of this directory.
  2. I represent I am authorized to make the contributions and grant the license. If my employer has rights to intellectual property that includes these contributions, I represent that I have received permission to make contributions and grant the required license on behalf of that employer.

xiangao1 avatar May 19 '22 13:05 xiangao1

Codecov Report

Base: 69.89% // Head: 69.93% // Increases project coverage by +0.03% :tada:

Coverage data is based on head (7624c5a) compared to base (3f34680). Patch coverage: 95.23% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #870      +/-   ##
==========================================
+ Coverage   69.89%   69.93%   +0.03%     
==========================================
  Files         397      397              
  Lines       64818    64922     +104     
  Branches    12326    11849     -477     
==========================================
+ Hits        45307    45403      +96     
- Misses      17254    17263       +9     
+ Partials     2257     2256       -1     
Impacted Files Coverage Δ
idaes/apps/grid_integration/bidder.py 94.78% <ø> (ø)
idaes/apps/grid_integration/forecaster.py 86.15% <94.94%> (+26.77%) :arrow_up:
idaes/apps/grid_integration/coordinator.py 97.52% <100.00%> (+0.07%) :arrow_up:
idaes/ver.py 61.53% <0.00%> (-4.62%) :arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

codecov[bot] avatar May 19 '22 14:05 codecov[bot]

@adowling2, @xiangao1 can we get an update on this? Is it still needed by DISPATCHES? It's missed the idaes Aug release, so moving this to November.

ksbeattie avatar Aug 25 '22 18:08 ksbeattie

@Xinhe-Chen is taking this over. @xiangao1 can you post here with the outstanding tasks?

@ksbeattie I think we'll use this in future DISPATCHES releases. No immediate concerns yet.

adowling2 avatar Aug 25 '22 21:08 adowling2

@ksbeattie @adowling2 @Xinhe-Chen I will resolve the conflicts and make it ready for review.

xiangao1 avatar Aug 30 '22 15:08 xiangao1

@Xinhe-Chen @adowling2 Any updates on this and I'm curious when this could be released?

dguittet avatar Sep 14 '22 19:09 dguittet

Hi Darice

Sorry I have no idea how is this PR going on. I will contact Xian about this.

Thank you and have a nice day.

On Wed, Sep 14, 2022 at 3:33 PM Darice L Guittet @.***> wrote:

@Xinhe-Chen https://github.com/Xinhe-Chen @adowling2 https://github.com/adowling2 Any updates on this and I'm curious when this could be released?

— Reply to this email directly, view it on GitHub https://github.com/IDAES/idaes-pse/pull/870#issuecomment-1247215568, or unsubscribe https://github.com/notifications/unsubscribe-auth/AWXX3ISVICM5JRZ5WIPL7NLV6ISCPANCNFSM5WMHGGVQ . You are receiving this because you were mentioned.Message ID: @.***>

Xinhe-Chen avatar Sep 14 '22 19:09 Xinhe-Chen

@dguittet @radhakrishnatg I believe this is ready for review.

adowling2 avatar Sep 15 '22 12:09 adowling2

@xiangao1 Can you give @Xinhe-Chen, @dguittet, @dguittet, @bknueven, and myself write permission to this branch of your IDAES fork?

@adowling2 Added!

xiangao1 avatar Sep 16 '22 15:09 xiangao1

@adowling2 I can help @Xinhe-Chen with tests. Since this is needed for the DISPATCHES case studies, I changed the priority label from low to high.

radhakrishnatg avatar Sep 16 '22 16:09 radhakrishnatg

Action items:

  • [ ] Add more tests (see my comments above)
  • [x] Need more reviewers
  • [x] Tell @ksbeattie if we actually need this for the next DISPATCHES release. If yes, this PR may need to be cherry-picked into IDAES (or copied into a new PR).

adowling2 avatar Sep 19 '22 16:09 adowling2

@xiangao1 One more request: @radhakrishnatg should get write permission too. Sorry for missing that.

adowling2 avatar Sep 19 '22 16:09 adowling2

@xiangao1 One more request: @radhakrishnatg should get write permission too. Sorry for missing that.

No worries, @adowling2 ! Added.

xiangao1 avatar Sep 20 '22 01:09 xiangao1

I think this looks good, once tests are in place-- thanks to @Xinhe-Chen and @radhakrishnatg

dguittet avatar Sep 20 '22 15:09 dguittet

I have added tests for Backcaster.forecast_day_ahead_and_real_time_prices, Backcaster.fetch_hourly_stats_from_prescient ,and Backcaster.fetch_day_ahead_stats_from_prescient.

Also, @radhakrishnatg and I discussed the multiple warning issue in Backcaster._validate_input_historical_price last week and solved this problem.

Here are the codes in my repo.

https://github.com/Xinhe-Chen/idaes-pse/tree/improve_forecaster/idaes/apps/grid_integration

I have one last problem to solve, that is how to test the idaeslog.WARNING(). I will talk this problem with @radhakrishnatg.

Xinhe-Chen avatar Sep 26 '22 17:09 Xinhe-Chen