What is ALTIMA
Using environmental data spanning over a year for any selected region, ALTIMA can determine the efficiency rating of both solar and wind generators and combine it with average installation costs to provide its users with the ultimate alternative energy source. Users are also able to create accounts to save previously visited locations in a log, making it easy to choose the most cost-efficient region.
Challenges Building ALTIMA
One of the challenges our team faced during the project was the method by which to evaluate an energy source’s efficiency factor. While the average solar energy generator performs at 75% efficiency, for example, this deductor is subject to change depending on the region’s weather. Using data from scientific papers such as the impact of temperature on energy generation, we compared the relative effects of each environmental factor to quantitatively rank their significance, then implemented this weighted average into a simple cost per kWh for the user to see. A challenge I personally faced was finding my way around my first hackathon. Since I was the team member with the most programming experience, I was tasked with finding the main tech stack and creating an outline for the design of the program. While doing this, I also had to figure out what hackathons are all about and enjoy everything that the hackathon had to offer.
The following code will calculate the solar and turbine score using a table of values:
tempScore = calcTemperatureScore(data['daily']['temperature_2m_min'], data['daily']['temperature_2m_max']) humidityScore = calcHumidityScore(data['daily']['temperature_2m_min'], data['daily']['apparent_temperature_min'], data['daily']['temperature_2m_max'], data['daily']['apparent_temperature_max']) windScore = calcWindScore(data['daily']['windspeed_10m_max'], data['daily']['windgusts_10m_max']) solarScore = 0.3*(tempScore) + 0.6*(humidityScore) + 0.1*(windScore) turbineScore = 0.1*(tempScore) + 0.3*(humidityScore) + 0.6*(windScore)
This will give the program a score between 0 to 1 and will determine the best energy source. Although this algorithm looks very basic, lots of research was done during the hackathon to determine the best weighting values for each data point.
What My Team & I Learned
An important lesson we learned in our time with Altima is to seek feedback, even during the creation phase. Even with a team of four people, it is common to overlook project aspects. In our case, when we took a break from our project to visit the panels, we spoke with many mentors and discussed what we had accomplished thus far. In our conversation with an RBC representative, we were given the idea to implement a user interface to add personalization and a better overall user experience. Without taking a step back from working and speaking with others, we never would have thought to improve the user interface for Altima and it ultimately would not be as polished as it is now.
Where can you find the project?
The project can be found here on Devpost along with the other contributors. The code can be found here on GitHub.