Carter Weaver’s Status Report for 3/16/24

This week I worked on the actual development of my forecasting tools. Firstly, I was finally able to access a large and reliable enough dataset for load measurements from a selection of residential homes in the UK. Another data collection decision I made was to purchase a bulk download of historical weather data from 2013-2023 off of OpenWeatherMap for training purposes. The download consists of three datasets for three locations relevant to our solar, load, and wind datasets: Pittsburgh (US), Loughborough (UK), and Yalova (Turkey). 

As for code that I contributed to our repository, I started with some data preprocessing by extracting cyclical information from DateTime objects, such as days of the week, as features for our model to make more informed predictions. With the load data and supplementary weather data downloaded, I was able to finish all of my linear regression baseline models, all of which showed very bad results as expected.

Finally, I started experimenting with fitting our wind data to a simple lstm, which I got from Tensorflow’s Keras API. This is already exhibiting better results than our basline model, which is encouraging. Next week, I hope to have a simple lstm working for all of our datasets and then begin integrating the models with our webapp and optimization tools.

Alby’s Status Report for Mar 15

Accomplishments This Week:

  • Added battery equality constraint dual variable feedback into multi-period solver, verified correctly updated across epochs through a “folded in” backward pass.

Challenges Encountered:

  • Battery lambda gradient is slow to converge due to large step between epochs

Next Steps:

  • Rewrite battery Lb and Bt equation stamps to explicitly define all terms and avoid confusion from cancelled out terms
  • Create a GLD file with specifically labeled negative PQ loads for Solar and Wind generators.
  • Add to Multi.py a method to modify renewable PQ loads at each time step based on load factors.

Team Status Report for 3/9/24

Risks

  • There is still uncertainty about the reliability of weather forecasts and the consistency of OPF convergence so backup/default outputs will be implemented to keep our web app simulation running smoothly.

System Changes

  • Redefined error goals for forecasting to NRMSE < 20% and NRMSE <15% to more closely align with previous literature.

Schedule Changes

  • None.

Please write a paragraph or two describing how the product solution you are designing will meet a specified need…

Part A. Written by Carter

Our tool has the potential to impact energy solutions worldwide. Electricity grids are globally utilized and microgrid technology as a more reliable and sustainable method of energy distribution is growing rapidly all over the world. Therefore, the tools necessary to control and predict for these microgrids is needed everywhere. In addition, weather patterns and energy availability varies greatly between different countries and regions of the world, so tools like Sugar-DB that can adapt to those changes and make predictions based on local data are needed globally.

Part B. Written by Carter

The need for reliable and sustainable energy is shared across all cultures in our modern, globalized society. Despite disagreements between different groups about the threat of climate change and the degree to which fossil fuels are culpable, the increased accessibility and economic efficiency of renewable energy can only benefit the people and the planet.

Part C. Written by Carter

A main goal in creating our simulation tool is to make renewable energy generation easier to predict and optimize around, given changing weather conditions and energy demand. This will hopefully encourage greater integration of renewable energy sources in the microgrids we already have, as well as the creation of future microgrids supported by renewable energy as well. Scientific evidence suggests that electrifying our grids and relying more on sustainable energy rather than fossil fuels will slow down the effects of climate change and potentially save natural resources that are at risk of rising sea levels and unpredictable weather patterns. Thus, our tool is designed to promote earth-friendly energy management which has the power to save lives and save the earth from climate change.

Carter’s Status Report for 3/9/24

The week before we left for spring break, my work for Sugar-DB focused mostly on our design report. As the designated project manager that week, I took on a lead role in the development of the report. This meant that, along with the subsections dedicated only to our forecasting design, I also wrote many of the general sections which applied to our entire project and handled most of the formatting of the document.

In the process of putting together this design report, I looked deeper into previous research and even found new sources that helped me narrow down our goals for the future and change some of our assumptions for the forecasting models. As a result of this research, I plan to focus my efforts after spring break ends on programming a working LSTM model, that can be fine-tuned and generalized to all three data pools (wind, solar, load). I plan to start with wind modeling, given the relative simplicity of the dataset.

Yuchen’s Status Report 03.07.2024

Accomplishments This Week:

  • Users can now specify a zip code and upload customized GridLAB-D files
  • Finished most parts of power flow and dynamic load visualizations. Each node in the microgrid will display information such as the node type, scale, power flow direction, distance, and node paths.

Challenges Encountered:

  • There were some issues with setting up the parser so the next step is to integrate it with the parser to finish the overall pipeline. It’s a minor issue and will be fixed next time we meet.

Next Steps:

  • Moving forward, we aim to fix the parser integration, finalize the pipeline, and ensure its functionality with various file types and sizes.
  • Meet with team members and discuss user registration and logins necessary for our apps, figuring out whether we should store users’ inputs into the database or run everything locally based on our needs.