Inspiration

Due to rapidly increasing greenhouse gas emissions, combatting climate change is now more important than ever. After witnessing the large number of cars that commute to our schools every day and learning about their environmental harm, we were inspired to take action. After researching this topic further, we realized that carpooling to school would be the most plausible and efficient way to reduce greenhouse gas emissions from these vehicles. However, carpooling has many barriers that discourage people from doing it. This is why we developed Ride Link, a mobile app that eliminates the challenges of carpooling and makes it easy and accessible for all students.

What it does

Ride Link takes in a student's information such as their school, address, flexibility, and leave times as input. After this, it compares the user's information with other students from the same school and returns potential carpool matches to maximize the success of carpooling. The app also allows students to message them, so they can communicate and schedule carpools. By making carpooling accessible, we can significantly reduce greenhouse gas emissions from students worldwide, and help mitigate climate change.

How we built it

When building the app, we used Flutter to create the front end. We also used the Flutter geocoding API to convert user inputs such as addresses to coordinates to calculate distances, which is used for Ride Link’s matching system. For the backend, we programmed in Java and used Firebase to store all the user inputs and data. To match the users together, we created and trained a neural collaborative filtering (NCF) recommender system in Python using TensorFlow. The final model takes in the features of two users as an input and outputs their compatibility score between 0 - 1, allowing the app to rank the most similar users. Finally, we used Amazon web services to host the NCF model as an API that could connect with our app.

Challenges we ran into

One of our biggest challenges was that we needed the distances between the users as input to the recommender system. However, at the same time, the user needed to enter their location information as their address for ease of use. Thus, we needed to find a way to calculate the distance between two addresses.

Accomplishments that we're proud of

We are very proud of our NCF recommender system. Using this recommender system, the app can accurately predict the similarity scores between different users, allowing it to suggest carpool matches back to the user. While developing this model, we tested many different architectures and training parameters to achieve maximum optimization. In the end, we were successful as our model was able to predict new data with up to 96 percent accuracy.

What we learned

Throughout the process of creating the Ride Link app, we significantly improved and learned many skills including designing UIs and utilizing APIs such as the Flutter geocoding API. Furthermore, we learned how to create and deploy our own APIs, which the app can use. Finally, we gained valuable experience in tuning and training machine learning models.

What's next for Ride Link

Due to the small size of Ride Link’s data and the data relying on new users, the app only currently works with students attending Saratoga High School. However, with an increased user base, more students from different schools will be able to use the app, allowing the app to have much more data and impact. In the future, we plan to partner with many schools to access their student databases, which will significantly increase the user base and improve the quality of suggestions. With this in mind, we will also implement privacy and safety settings so that users’s information will not be wrongly used.

Share this project:

Updates