We are a generation that is impacted by unprecedented climate change. From rising sea levels to forest fires, the 21st century has seen an unusually large number of climate-induced natural disasters and events, often stemming from human-based activities. As technology becomes more evasive and prevalent in today's hustling world, it is imperative that we harness ethical, safe, and purposeful methods to tackle the global issue that is climate change. As a result of our technical passions for Artificial Intelligence, Software Development, as well as keen interest in helping maintain our environment and nature, our team was empowered to develop Virya, a personal energy chat bot that consults with users on their daily choices regarding their impact on the environment. Virya, as its meaning of "energy", "perseverance", and "diligence" in Sanskrit suggests, was designed to provide users, families, and community members with a peer, guide, and mentor in matters of environmental awareness. By creating Virya, we aim to remind humans of our important role to take care of our planet. Though the number of climate-induced events have become more and more serious, our attitudes have not. We often shrug off these events, citing that they are someone else's problem. But, No! This is everyone's problem. The earth is ours, and it is our right to protect it, and we hope that Virya will encourage all of its users to become more conscious about our impact on the environment.
Virya is a program designed to provide insights and recommendations on daily actions we humans often take and their impact on carbon emissions. Virya is a chat-based application that allows users to talk to a text based interactive robot. Based on any matter of user input or query about an activity they are about to do, Virya is able to report what kind of impact it would have on CO2 emissions on the planet. Having a design that allows Virya to become comfortable with anyone and represent a peer and friend, it will also provide fun facts and jokes to entertain the end user and keep him/her engaged and up to date about the environment. Our main goal with Virya is to bring awareness to all users about their contribution to humanity’s carbon footprint. By doing so, we hope the end users make decisions that would reduce their role in the global warming crisis. However, we are not trying to bombard people with endless quantitative information like what traditional programs have been doing. We intended to take a more personal approach, by combining science and technology. We really want people to understand their decision-making and how it impacts the environment; designing a chat-based app is the perfect starter to do that as social awareness is the first step to social action!
Virya's brain comes from a popular AI technique called Natural Language Processing (NLP). NLP deals with understanding text and textual data and gathering insights and predictions based on that. Virya is designed to protect a seamless experience for all users, and educate them on how their daily decisions impact carbon emission rates. The front-end of Virya is developed using React.js, while the back-end is handled with Python (Flask) and Firebase. We handle the natural language processing using a highly efficient method called Attention based models. To be more specific, we use HuggingFace keyword extraction models. We chose these technologies because of their capability, speed, and efficiency. We pushed purpose over complexity; impact over disconnection; and embracement vs neglect.
As with any software solution, there came challenges and hurdles with our project. It's just how the world works, and no system is perfect. We initially decided to use Salesforce for our data storage / file storage solution. However, while in the development process, we faced API hurdles, UI deficiency, and sloweness and we swiftly ported our database over to Google’s Firebase and also hosted our web app locally.
Another significant hurdle we came across was involving our data cleansing aspect of our data visualization process. We created our visualizations through MATLAB scripts, which meant that our data needed to have no missing values. In addition, the data needed to be organized in such a way that it could be easily pulled by the MATLAB script and read in as matrices for the plotting methods of the language. As such, it was no wonder that we ran into difficulties when we had data that had no values or the data was in a format we could not use (i.e. precents were needed but only hard values were present). However, we were able to overcome this by removing the data with incomplete value data or substituting the data with the median depending on the situation. In order to overcome the different format issue, we figured it would be possible to research and use some of MATLAB’s matrix manipulation functions to convert to a useful format.
Virya is one of the most beneficial and interconnected programs we have built. We designed a tool that can help millions of people understand their decisions, and how it impacts the environment. The comfort of Virya enables customers to remain cognizant and engaged, and learn how their choices can impact our environment. We kept human privacy and ethics in mind, and understand the importance of trust. It's an educative platform, not a criticism show. In regards to technical aspects, we are proud of our design and responsiveness. We are also proud that we used various complicated technologies like NLP and tools like React, and communicated with team members from diverse interests and skills. We considered multiple angles and viewpoints, which helped enhance Virya's capabilities.
The development process of Virya was a truly amazing experience, and we learned so much about not just coding, but partnership, cooperation, and having fun! We are truly excited to expand Virya's capabilities to do much more and provide more insights and recommendations. In terms of technology, we were able to expand on all of the core concepts in IT as well as get some of us introduced to the complicated realm of Natural Language Processing. Furthermore, some of us gained a better understanding of working with React, Firebase, and Salesforce. However, that was not all! VT Hacks 2022 sparked a flame in us, and led to interest in all of us to participate in more hackathons, competitions, and self-learning. We learned about teamwork and workflow through the use of GitHub as well as Slack. We gained a stronger foundation for our passion in Computer Science.
Virya will continue to be expanded upon and developed even out of the scope of VT Hacks 2022. We will add more AI capabilities and technologies to help Virya become a truly excellent energy chat bot. In other words, we plan to expand the range of our NLP model by training Virya with a greater and greater field and variety of datasets. We also plan an expansion of our UI to be compatible for more devices than just mobiles. Our end goal is to have Virya become a key consultant for activities that could harm the environment.