Code for India 2014 Global Hack-a-thon – Building a Better India through Innovative Solutions
Non-stop 24 hours of coding at the Code for India 2014 hackathon leads to creative solutions for major social problems of India through interesting software applications.
Internet search giant Google held a first-of-its-kind global hackathon across US and India, with the goal to inspire the tech community to create technology based solutions for public service problems faced by India. From more than a thousand applicants, around 300 were shortlisted for the event called “Code for India” which began May 9, 2014 at Google headquarters in Mountain View and simultaneously at its Bangalore, India campus.
The two-day hackathon gathered engineers interested in creating technology-based applications for non-profit organizations including the World Bank, Amnesty International and American India. Infosys Founder and Chairman N R Narayan Murthy (live-streamed to Mountain View), and Google’s Senior Vice President Amit Singhal delivered keynote speeches as the event kicked off on the evening of May 9, 2014.
In his humble and inspiring speech, Amit Singhal said that we all were witnessing just the beginnings of what search technology could optimally do. “We are connecting the human brain to a larger world brain,” said Singhal. He added, “Imagine this power in the hands of a farmer in India. It is transformative”. In keynote speech by Mr. Murthy, he said, “Please think of designing meta-solutions that will help NGOs solve a problem”. He emphasized, “The biggest problem India faces is not the lack of resources, but the lack of management”. Teams competed for several prizes such as Nexus5, Moto X, HP Chromebook, Moto G etc. donated by Google and Intel.
I teamed up with two UC Berkeley graduate students and decided to work on food requirement simulation/prediction problem: create an application that can predict the quantity of food required in each operational region based on the historical data for past about 250 days in a excel sheet. Solution to this problem was sought by Akshaya Patra, a non-profit organization in India that runs school lunch programme across India serving more than 1.2 million meals daily through their network in 9 states in India. As of now, each day class teacher gives a predicted count of students that would be attending next day and based on that Akshaya Patra prepares and serves food.
The data provided was highly messy so we cleaned and filtered data to remove unnecessary attributes such as size and volume of vessels used. The raw data was challenging as well as interesting - it had errors (meal serving on a few Sundays), double meal servings on particular days of the week due to likeness of food items, etc. Next, we decided to play along-with some predictive models to see which one works best on the training data set. We applied three predictive models: Moving Averages, Logistic Regression and ARIMA (autoregressive integrated moving average). By running the trained models over testing set, we found logistic regression model as the one giving the best results.
After developing the back-end, we started working on web application. The web application had different login for teachers and for Akshaya Patra administrators. For teachers, once they log in they get a prediction count of meals for current day. The UI also asked for teacher’s feedback on quantity: Not Sufficient, Sufficient or More than sufficient. Also, they can give feedback on timing of food delivery: Before time, On-time or Late. This helps in training the predictive model each time teacher chooses an option out of three. The UI allows teachers to send messages to region administrators. For administrators, once they log in they get a Google Map view with tagged location of schools (location data was provided for a separate route optimization problem). On clicking on particular school, marker tag info window shows the predicted count along with a link to dashboard. On clicking the link to dashboard the administrator can find following for that particular school:
- Predicted meal servings to be delivered
- Feedback from teacher on number of meals served yesterday
- Trend of food requirement
- Time of food delivery
- Update calendar for some specific holidays/events for that particular school
- Comment on a particular food item from teacher
- Recent delivery details such as route number, number of servings, etc.
- Communicate with teachers through message delivery system.
Our solution was highly admired and selected for the Finals round, which had only 12 teams (out of the total of over 70 teams). We did not win the contest. Nevertheless, it was a great feeling to develop innovative solutions which bring the benefit of technology to the section of society which needs it the most. Our solution demonstrated that analytics is not meant merely for enterprises; rather analytics can play a critical role in solving many of the social problems we face today.
Though I have participated in quite a few hackathons before, this one was a special experience – thanks to Google’s amazing campus at Mountain View, highly competitive participants, enthusiastic organizers and amazing spicy Indian food available throughout the 24 hours of the event.