The Bühler technology holds leading market positions worldwide in the fields of technology as well as processes for transforming grain into flour and animal feeds, producing pasta and chocolate. They have knowledge about the huge environmental cost of food production and its impact on the planet. 1/3 of the total global energy consumption goes into food production which is why we decided to take up the challenge and help to bring awareness about food waste.
What it does
We have developed a fully operational web application. In the application different recipes can be selected. The overall aim of the app is to help the everyday person know more about the water consumption of every ingredient. For each recipe alternative, but similar recipes will be suggested to the user which have a lower water consumption. Similarly, the individual ingredients in a recipe can also be substituted with alternative, lower water consumption ones. The user can furthermore keep track of his/her daily, weekly, monthly and yearly food impact on the environment.
How we built it
The application is built with Angular as the frontend and a python flask API as the backend. For the comparison of food items in the database, as well as full recipes, we tried out multiple methods. Eventually, we ended up doing a feature space comparison using the cosine distance (the Euclidean distance did also work well as most of the features are nicely normalized in the dataset).
Challenges we ran into
The main challenge was the data availability and the inconsistency in parameter values across different databases. Besides the data we got from Bühler, we also used www.nutritionvalue.org to get nutritional values about each recipe ingredient. We never used Angular before, so it took a bit of time getting used to.
Accomplishments that we're proud of
Having built a fully functional prototype is always a good accomplishment after a hackathon. This time we also had no idea previous to the hack about what we wanted to do, so getting the idea was in itself also an accomplishment. But mostly are we proud of how well we all worked together by dividing smaller subtasks between the team members.
What we learned
Playing around with sklearn, flash and Angular. How to equally divide the workforce between each other.
python (sklearn, flask, pandas) angular