Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Things to do #1

Open
12 of 21 tasks
peterdudfield opened this issue Nov 16, 2023 · 12 comments
Open
12 of 21 tasks

Things to do #1

peterdudfield opened this issue Nov 16, 2023 · 12 comments

Comments

@peterdudfield
Copy link
Contributor

peterdudfield commented Nov 16, 2023

Short term

Medium term things

@zakwatts
Copy link
Contributor

zakwatts commented Nov 16, 2023

Would be interesting to add a way for the site to capture different inverter characteristics when live pv data is not provided. For example, the case in which you have an undersized inverter would lead to saturation in PV generation. There could be something in PVLib already that could be used to help with this: HERE

@peterdudfield
Copy link
Contributor Author

@all-contributors please add @peterdudfield for code

Copy link
Contributor

@peterdudfield

I've put up a pull request to add @peterdudfield! 🎉

@peterdudfield
Copy link
Contributor Author

@all-contributors please add @zakwatts for ideas

Copy link
Contributor

@peterdudfield

I've put up a pull request to add @zakwatts! 🎉

@Ludecan
Copy link

Ludecan commented Jan 3, 2024

Hey guys, good evening, this Pablo from Tryolabs, I'm a software engineer with an ML background and I also happened to work at Uruguay's National Weather Service for a few years, so some of these things ring a bell (but no formal training on the physics).

I've been looking for opportunities for collaboration with your project and came up with a few questions and a few ideas for your consideration:

Questions:

  • What do you feel is the biggest opportunity where we could land impact?
  • What’s the main use of the tool? Is it for determining suitable sites for solar installations? What’s an acceptable level of accuracy?
  • How does solar radiation translate to installation capacity? Are there any basics (ideally for beginners 🙂) we can read from the physics?
  • Would it be interesting to create a map/sequence of maps of forecasted power generations?

Possible suggestions (to be prioritized):

Features

  • Use delta/lagged temporal features
  • Use spatial deltas/lags (for incorporating cloud trajectory data)
  • Include coordinates in forecast
  • Incorporate extraterrestrial solar radiation for the location and point in time? (if I remember this right, we could use this as an upper bound on the solar radiation at the site, ie before entering the atmosphere, it can be approximated deterministically and could help understand yearly/location cycles)
  • Consider atmospheric pressure (spatio delta), dew point (for frosting effect) and humidity (to detect fog) for the forecast? The latter two are unlikely to happen on solar panel sites but it shouldn’t be difficult to consider the variables and take them from GFS

Modelling

  • AutoGluonTS. Ensemble models for time series forecasting. Could be a good challenger model, computationally intensive but can be tuned for accuraccy/performance tradeoff.
  • TSPP. Alternative platform for time series forecasting and validation.
  • Error is U-shaped wrt lead forecast time, that's a bit weird. Could be worth investigating

Visualization

  • We should be able to create forecast maps or sequences of maps (animations) for a region of interest. Would this be useful?
  • Complimentarily we could have maps of confidence intervals for forecast errors

Code

  • Main repo uses pip while training repo uses poetry. Would it be useful to switch both to poetry?
  • Would it help to configure code styling tools? We use black formatter, isort, and flake8 for linting and have some template configs and Github Actions that could be used for unifying (and automating) code styling.

Looking at the list of issues in your repo, I think an AutoGluonTS Challenger model could be a quick win if we get to improve on the current model.
Do you think it would be worth it for me to implement it into the pipeline?

@peterdudfield
Copy link
Contributor Author

peterdudfield commented Jan 4, 2024

Hi @Ludecan

Thanks so much for getting in contact, and for lots of your ideas.

Questions (hopefully the answers)

  1. I think think the biggest improvements that can be made is to use as many NWPs as possible. For example train on NWP from the UK met office. But we could include ICON, GFS and lots of others.

  2. Becasue this produces a live forecast, we see it as being used for live applications, like should I charge my EV today or tomorrow? for example

  3. Check out pvlib, this is a bit more physics based.

  4. a map of a sequests would be great!

Features

Use delta/lagged temporal features

  • This is always useful. Not that the NWPs are for the forecasted time, but still delta features are still useful.

Use spatial deltas/lags (for incorporating cloud trajectory data)

  • similar to above

Include coordinates in forecast

Incorporate extraterrestrial solar radiation for the location and point in time? (if I remember this right, we could use this as an upper bound on the solar radiation at the site, ie before entering the atmosphere, it can be approximated deterministically and could help understand yearly/location cycles)

  • yea, we do this already, but its definitely useful

Consider atmospheric pressure (spatio delta), dew point (for frosting effect) and humidity (to detect fog) for the forecast? The latter two are unlikely to happen on solar panel sites but it shouldn’t be difficult to consider the variables and take them from GFS

  • pressure is something we should definitely add.

Code

Yea, im in two minds, we are trying to keep this as simple as possible, and I thought requirements would be enough. Might be worth pinning the versions though.

yea we should use those, there are some similar ones in pv-site-predictions which might be worth adding in

Training

  • That would be great to use AutoGluonTS. There's probabaly some different options here. You can either add it to pv-site-predictions. You might need to use upgrade it to train on ICON NWP data as this is public. The model we have trained on is using Metoffice UKV data. Another option is to build a seperate model training code. This could be in this repo or somewhere else. Then we can compare the models e.t.c. What do you think?

@Ludecan
Copy link

Ludecan commented Jan 4, 2024

Hey @peterdudfield, thank you very much for your answers. Very helpful to start gaining context.

I was thinking on adding AutoGluonTS as a configuration option for the regressor of the existing pipeline. That way we can reuse all the work you guys have done for other components.
I think for that I would need to implement a new regressor class in pv-site-predictions/psp/models/regressorsright?
And then create a config for the training script to use the new regressor

And regarding the data, I followed the links to this dataset. Is this the UKV data? If so maybe I can start working with it and then in a separate step add in the ICON NWP data. What do you think?

@peterdudfield
Copy link
Contributor Author

Yea that is about right.

That dataset is the PV data, so not the NWP. Unfortunately the UKV NWP data is not public. But you do need the that PV data.

Yea please have a go at adding that regressor, and myself and/or @zakwatts could help you out

@peterdudfield
Copy link
Contributor Author

Hey @peterdudfield, thank you very much for your answers. Very helpful to start gaining context.

Yes, I was thinking on adding AutoGluonTS as a configuration option for the regressor of the existing pipeline. That way we can reuse all the work you guys have done for other components. I think for that I would need to implement a new regressor class in pv-site-predictions/psp/models/regressorsright? And then create a config for the training script to use the new regressor

And regarding the data, I followed the links to this dataset. Is this the UKV data? If so maybe I can start working with it and then in a separate step add in the ICON NWP data. What do you think?

Hi @Ludecan, see my answer above. This message from you seemed to come twice so I'm a little b confused

@Ludecan
Copy link

Ludecan commented Jan 5, 2024

Got it. Will start working on that and keep you posted. Sorry for the double post, just deleted the duplicate.

@peterdudfield
Copy link
Contributor Author

No worries, thanks in advance @Ludecan

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants