Team Chizoba
- Prahalad Venkataramanan, [email protected]
- Bob DiMaiolo, [email protected]
- Karuna Ahuja, [email protected]
Motivations
The current energy and infrastructure analytics suffer from the following broad issues:
- Lack of Transparency - Current analytics do not specify the factors that were used while making a certain prediction. Building operators tend to prefer suggestions that are more transparent while getting insights into the available options for reducing loads.
- Inflexibility- Current Energy Dashboard Systems are static and formulated using recommended guidelines, experience and best practices. A considerable amount of effort and time is required to provide insights which are not already hard-coded into the system.
Goals
Our project aims to use Amazon Alexa as a platform for a more interactive and open-ended energy management system. Users will be able to verbally pose questions, which the system will categorize, request additional information if needed, and synthesize queries over trained machine learning data structures to generate a response. The verbal response will be supplemented with procedurally-generated graphics that help the user visualize different comparisons.
Methodology
The current methodology is proposed to achieve the goal:
- Milestone 1: Identify categories of potential user questions to support (at least 2). For each, define a Vocal and Graphical User Interface workflow.
- Milestone 2: Develop a GUI output for each query category, leveraging existing JavaScript frameworks.
- Milestone 3: End to end implementation for a single category.
- Design Alexa skill to generate Intents from user questions.
- Design AWS Lambda function to handle requests from Alexa skill, process, and send responses to Alexa skill.
- Set up EC2 instance to execute queries over MATLAB interface/functions (in matlab environment or standalone executables).
- Milestone 4: Categorize user questions, generate appropriate graphical output with formatted verbal response.
Project Components
- Amazon Echo smart speaker
- Amazon Alexa skill
- AWS Lambda function
- Web server with MATLAB models, TCP server, HTTP server, and local database
Baseline Goals
- Map a user’s question to a supported query within an expected category of questions
- Send requests from Alexa app on Amazon Echo to backend processing on AWS
- Execute queries over MATLAB model on an EC2 instance
- Setup EnergyPlus and MLE+ backend to mimic control feedback loop for DR Evaluation
- Setup the EnergyPlus interface for DR Synthesis and DR Advisor
- Send response from AWS backend to Alexa for verbal output processing
- Update GUI based on query results with an appropriate graphical output
- Respond to user’s question from Alexa with an appropriate verbal output
Reach Goals
- Identify the category for a user’s question
- Send response to user if additional information is needed to complete query
- Procedurally generate graphical output based on the category of the user’s question
Meeting Notes
Oct 21, Penn Engineering Facilities
- Met with Ira Winston, Chief Infrastructure Officer for the School of Engineering and Applied Science
- Example anaylses done by facilities:
- Year-over-year (YoY) energy usage review: Is there a significant change? If yes, why?
- Look for building energy usage outliers to diagnose metering issues and drive debugging, investigations, and repairs (e.g. steam leaks)
- Another perspective: campus central facilities
- The university looks at peak usage for the whole campus for a year, and compares usage spikes to the current capacity of campus facilities
- ex: extreme energy usage in the summer
- Across energy sources (electricity, chilled water, steam, etc.), typically normalize on usage in kW as a metric
- Useful types of queries:
- If [set point] changed to [new value], what are the expected effects on energy usage?
- Monthly or quarterly analysis: Is there a correlation between high energy usage and certain weather conditions? Can we flag periods of maintenance or planned outages to identify outliers?
- Discussed different strategies of demand-response usage curtailment
- Typical strategy: reduce usage from a specific source (i.e. electricity)
- Or, switch to an alternative energy source. For example, use diesel generators or steam turbines to generate electricity for a limited time instead of sourcing from the electrical grid for a tradeoff in costs
- Transitions to a modern SCADA system
- Benefit: improved ability to highlight anomalous situations
- Challenge: cannot get access to raw data feeds or data dumps for custom analysis, limited to specific plots/images on standalone system
- Recognized that for a closed loop system, the ability to modify set points based on system analysis is dependent on having the implementation that allows a finer granularity of control (say of invidual wings of a building or rooms, rather than for an entire building)
Oct 21, DR-Advisor code review
- High-level overview of regression tree models
- CART: Classification and Regression Trees
- Design decisions to think about: feature selection, splitting criteria, stopping criteria
- Regression tree model benefits: easy to interpret, relatively few parameters to tune
- Limitations: danger of overfitting in a large tree
- Potential improvement: combine mutliple trees into a random forest
- Reviewed DR-Advisor MATLAB implementation with Madhur Behl
- From each building's historical data, builds a regression tree model in [building]_analytics.m
- Build a Knowledge Discovery Database (KDD) from each building's regression tree model in Analytics_func.m, store KDD in a .mat file for fast querying
- Given an energy usage (in kW), identify conditions (weather, time of year, time of day, etc.) that on average led to that response, in searchbin.m
- Discussed front-end frameworks to try
- highcharts.js
- Bootstrap themes at WrapBootstrap
- Discussed the ICONICS Genesys 64, a commercial SCADA system
- Should get access to a demo version soon
- Working on getting a software license to access API
Built With
- amazon-alexa
- amazon-ec2
- amazon-lambda
- javascript
- matlab
- node.js
- python
Log in or sign up for Devpost to join the conversation.