Alby’s Status Report for Feb 23

Accomplishments:

  • Updated Multiperiod class to extract the SOC variable and related constraint dual variables during each iteration. I ran for 15 periods and battery SOC decreased linearly as expected until depletion.
  • With latest battery model, SUGAR3 converges with a depleted battery SOC.
  • Added previous solution initialization to the multiperiod class, which decreases solve times by 3X for each period after the initial one.

Progress Reflection:

  • Multi-period is developing smoothly in cooperation with the Pileggi group battery model. I am happy with my progress, but I need to understand DDP better and how the algorithm converges across multiple epochs

Next Weeks Goals:

  • Understand DDP, talk with Aayush
  • Add renewable generation as negative PQ loads within the GLD file with a nominal power modified by a specific capacity factor each period.
  • Validate single period solutions using a Grid-lab D testcase for 2bus network – talk with Elizabeth.

Convergence!

Yuchen’s Status Report for 2.24.2024

This week, I’m focusing on learning how to utilize Vis.js to manage our datasets and visualize the power flow and dynamic loads within the microgrid. Tackling the microgrid’s visualization is the most complex aspect of the web application, prompting me to prioritize it. Although I explored various open-source projects related to microgrid visualization, I found that integrating them poses significant challenges, and they lack the interactive capabilities we desire. Therefore I’ve switched my plan to building a new visualizer instead of integrating others.

For inspiration, I’ve explored several websites, including https://www.renewables.ninja/, which offers users the flexibility to adjust variables such as wind power, photovoltaics, weather conditions, and even select specific locations on a map. Currently, our minimum viable product (MVP) only accommodates location inputs. However, incorporating these additional customization options would be an excellent stretch goal for our project.

Unfortunately, my productivity dropped this week due to illness and the concurrent scheduling of my midterms. However, we had anticipated potential delays by incorporating some slack time into our schedule, allowing me to recover lost ground efficiently. For next week I’m aiming to finish the visualization of the microgrid before spring break.

Team Status Report for 2/24/24

This week, we were able to speed up convergence times for our optimization, Outputs baseline metrics for our renewable energy forecasting, and further design our web app visualizations.

Risks

  • Our chosen Weather API was revealed to have more restrictive paywalls than originally anticipated, but other options are proving to be useful
  • Optimization is currently converging but could not in the future due to updates to SUGAR

System Changes

  • Forecasting models will not be able to use real world feedback from the simulation and so will rely only on weather forecast data.

Schedule Changes

  • None

Carter Weaver’s Status Report for 2/24/24

This week I spent time revising my methodology for accessing and providing a baseline model for each of our training data sets (load, wind generation, and solar radiation).

In response to learning more about the SUGAR simulation tool we’re using, I decided to do away with the persistence algorithm we were previously using as a baseline algorithm, since recently observed power generation/demand will not be available to our models as a part of the simulation output. Instead, I decided to fit a linear regression model using weather and time as features and power/radiation/demand as the target variable. So far I’ve gathered Relative-MSE scores of 0.59 and 0.41 for our solar and wind data respectively, indicating that we have far to go in terms of improving our predictions. With these results and the results I will soon have for our load data, I am reasonably on pace for my forecasting goals.

Next week, I plan to generate baseline metrics for our load data with a linear regression model as well. Also, as the designated project manager for these two weeks before spring break, I will be devoting much of my time to developing our design report.

Team Status Report for 2/17/24

Risks

  • If multi-period optimization has early convergence issues then we will need to rapidly develop heuristics – this is a timeline risk that could push back development.

System Changes

  • Removed the building of a custom grid-lab d file processing tool because a parser already exists within SUGAR.

Schedule Changes

  • None

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

Part A.

Microgrids have significant implications for social dynamics as they can empower local communities, promote energy independence, and foster collaborative decision-making. Improving microgrids and making them easier to work with will help communities to control their power efficiently and cater their grids to their own needs, ensuring that stakeholders have a voice in the planning and operation of their energy. Moreover, by finding ways to harness renewable power more effectively and making wind and solar more predictable, we are increasing the potential reach of clean energy to underserved communities where energy is scarce, thereby promoting social inclusion and cohesion. Overall, power grids are an overlooked, yet essential way to connect distant social groups through the sharing of essential resources and making the development and control of those grids more intuitive will hopefully connect more communities to the power we take for granted.

Part B.

Microgrids have significant implications for social dynamics as they can empower local communities, promote energy independence, and foster collaborative decision-making. Improving microgrids and making them easier to work with will help communities to control their power efficiently and cater their grids to their own needs, ensuring that stakeholders have a voice in the planning and operation of their energy. Moreover, by finding ways to harness renewable power more effectively and making wind and solar more predictable, we are increasing the potential reach of clean energy to underserved communities where energy is scarce, thereby promoting social inclusion and cohesion. Overall, power grids are an overlooked, yet essential way to connect distant social groups through the sharing of essential resources and making the development and control of those grids more intuitive will hopefully connect more communities to the power we take for granted.

Part C:

Our microgrid energy management tool finds the most economically optimal dispatch of the battery and generators in the system. This saves the operator money which transfers directly to cost-saving for electricity consumers. Furthermore, the battery dispatch enables renewables to be more economic by charging during periods of excess generation and discharging during periods of low generation to meet demand.

 

Yuchen’s Status Report for 2.17.2024

This week, my focus was on exploring potential visualization methods for the gridlab-d file based on user input. While researching, I came across an open-source visualizer at https://github.com/jdechalendar/glm-plotter/tree/master/glm-plotter. However, integrating it into our project might prove challenging due to its reliance on a heavy web framework with Python 2 and outdated libraries. Additionally, it lacks functionalities essential for our needs, such as visualizing power flow and incorporating other features.

As a solution, I propose developing our visualization tool using node visualization tools. One promising option I’m considering is https://visjs.org/, a dynamic, browser-based library tailored for handling large datasets and facilitating data manipulation and interaction. My next step involves exploring its suitability for our project requirements and evaluating its potential integration.

Alby’s Status Report for Feb 17

Accomplishments:

  • incorporated feedback from proposal presentation into design presentation:
    • made a full system block diagram
    • made a optimization algorithm process chart
  • verified multi-period class interacts correctly with SUGAR3 InfeasabilityAnalysis class during the main DDP loop

Progress Reflection:

  • Didn’t meet last week goals because of an update to the battery model by the development team that made me wait until a stable build.
  • Need to work closer with development team to understand how to best work on evolving codebase

Next Week’s Goals:

  • change slack and SOC variables to class variables in battery class each period and run the inner loop for 2 periods. Then check battery SOC variable from results and verify it correctly changes – it should discharge all in the first period.

Carter Weaver’s Status Report for 2/17/24

This week is was able to initialize my codebase for experimenting with ML forecasting, and I helped my group with narrowing down our design plans for the presentation next week.

In order to inform our decisions about what training and testing methods will be most appropriate, I devoted the first half of this week to understanding the limitations of the data we have available to us. I figured out how to efficiently access wind, solar, and general weather data and then used the wind data to produce baseline results with a persistence algorithm (predicting the previous value as the next value). This allowed me to output an array of error metrics for a naive forecasting approach that I can use to revise our goals for our models and have as a benchmark for later results. After my experiments and further research into appropriate ML techniques, I spent the latter part of the week developing design plans for the forecasting portion of the project and updating our presentation slides accordingly.

I’d say we are more than on schedule with our progress so far and after we have our design fully nailed down, progress on the codebase should come quickly. Next week, I plan to generate baseline results for our solar data and load data before starting to experiment with some slightly more effective regression models (linear regression, random forest regression). We will also devote time to our design report, taking into account feedback from our design presentation.

Team Status Report for 2/10/24

This week, our main focus as a group was on taking the feedback we received for our proposal presentation and using it to shape our expectations going forward. The main recommendations were:

  • create an overall block diagram
  • create a fully defined testing process
  • specify more detailed UI requirements

Risks

  • If multi-period optimization has early convergence issues then we will need to rapidly develop heuristics – this is a timeline risk that could push back development.

System Changes

  • Added load forecasting to machine learning requirements

Schedule Changes

  • None

Carter Weaver’s Status Report for 2/11/24

This week I mainly focused on researching viable ML models for renewable energy forecasting as well as finding data sources. From my research, i was able to find multiple papers and surveys comparing methods for renewable forecasting. Based on these papers, I was able to narrow my list of algorithms that I’ll start experimenting with to SVM, RNN, ARIMA, and more. From my search for data sources I found global weather data for day-ahead forecasting and model training as well as solar radiation datasets for model validation from the National Solar Radiation Database. Data for wind turbine generation proved more difficult to find for multiple locations, but I was able to find some Kaggle datasets for turbines in Europe that could be used for validation purposes. These sources are linked at the bottom of this post.

My progress is on schedule so far. For next week I plan on setting up a remote repository for work on renewable forecasting and develop a detailed outline for our ML pipeline including plans for data scraping, preprocessing, training, validation, and testing. I intend on focusing first on SVMs as the favorite of the algorithms I found, and I’ll look to make a visual representation of our full ML pipeline.

Weather API:  https://openweathermap.org/api

NSRB Solar Datasets: https://nsrdb.nrel.gov/data-viewer

Kaggle Wind Dataset: https://www.kaggle.com/datasets/berkerisen/wind-turbine-scada-dataset