The inspiration for the application was simple, the truth is many people especially young people simply don’t find saving money for their emergency fund that interesting. Incrementum aims to change that by adding a gamification element to saving money into an emergency fund so users are not only reminded but incentivized to invest in financial security.
What it does
Incrementum is a web application that encourages people to support their financial security by gamifying investing money into an emergency fund! The idea of Incrementum is simple, users when signing up for the web application will be able to set a target goal for their emergency fund and also how much money they have already contributed to their emergency fund. The Incrementum application will then provide the user with weekly tasks to ensure that they are looking into different types of savings accounts and investing regularly into their emergency funds. Additionally, Incrementum gives a virtual dashboard with all the data a user would need to track and review their progress in building their financial security. Here is where the gamification element comes in, whenever the user completes the task they will be awarded their own pixelated plant to place in their own virtual money garden! This garden can be shared with friends so multiple users can contribute to the same garden all with their unique plants. In order to further incentivize users to complete their tasks each plant generated for the user will always be completely unique and never repeated. How is this possible? In addition to building the web application of Incrementum, our team has also created a machine learning and deep learning generative adversarial network (GAN). This GAN has been trained on hundreds of images of pixelated trees and plants and through machine learning is able to output unique images of unique, never-before-seen pixelated plants for the user's virtual garden! This allows all users to have a completely unique and original money garden all fitted with never-before-seen pixelated plants generated from our machine learning model. This will incentive users to keep following and accomplishing their weekly tasks as a way to keep collecting more plants for their garden and in turn support building their financial security and their emergency funds in a safe and enjoyable way!
How we built it
In order to build the web application side of Incrementum we used React and Bootstrap in the front end and created a Python Flask REST API as the backend. React was used due to the useful features such as react-router and hooks while Flask was used in order to ensure that the application was lightweight. When developing the machine learning model/GAN for Incrementum Python, PyTorch, Numpy and Scikit-learn were used to create the model which used multiple different layers in a neural network in order to generate the unique and never-before-seen plants. After this, the model was deployed to another flask backend REST API which the React front end calls for the plants while the previously mentioned flask REST API is used by the front end to store user information and financial progress.
Challenges we ran into
The biggest challenges we ran into were simply learning all the machine learning tools, frameworks and topics quickly and effectively. Only one member of our team was exposed to machine learning before the hackathon and he had never built such a model as complex as the one need for Incrementum. Therefore it was a challenge for our team to all work together and understand complex topics such as neural networks and how a GAN is created. Furthermore, learning how to use sci-kit-learn and NumPy proved to be a tough challenge that our team persevered through. Learning such topics in a short amount of time also proved to be a very rewarding experience however as our team learned how to delegate and prototype quickly.
Accomplishments that we're proud of
The biggest accomplishment our team is proud of is developing a very complex and effective machine learning and deep learning GAN model that is able to create a unique, never before seen and high-quality pixelated plant every single iteration. The training of the model alone took seven hours therefore it was a major accomplishment for the team when the model was working so effectively. Additionally, being able to design and create an application that allows for the gamification for creating an emergency fund was another major accomplishment for our team as well.
What we learned
Working on such a technically complex product such as Incrementum really showed our team what we were capable of when working together. Many of us were not exposed to the technologies and topics used with Incrementum however being able to not only create full-stack web application with a complete React front end and Flask backend but also creating a GAN one of the most complex neural network types in machine learning allowed our team to learn so much about software engineering, planning and teamwork. Specifically, our team gained a newfound competence in developing complex machine learning models and developing an eye-catching and user-friendly front end.
What's next for Incrementum
The goal of Incrementum moving forward is to further develop the application to handle more investing and saving goals. We would like to add tasks that support teaching and incentivizing students and young people to invest in various securities such as stocks and bonds and research more into saving accounts such as retirement accounts. Using the gamification model Incrementum uses we are certain we can make some of the less interesting elements of building wealth and financial security much more engaging and enjoyable for all people.