Inspiration
What it does
Uses a decision tree model trained on some of the real-time data to predict the 'On-Time' status for busses arriving at their next stop. The busses are displayed on a visual live map with their predicted status.
How we built it
Python FastAPI for the API calls Simple frontend made with HTML/CSS/JS Python scikit learn Decision Tree model for prediction Docker + Google Cloud Run for hosting
Grok and ChatGPT used for debugging, testing, and to help preprocess data from protobuf format for our app
Challenges we ran into
Frontend and hosting as we have less experience in working with those
Accomplishments that we're proud of
- Frontend: even though it's a simple frontend, we don't have much frontend experience
- high accuracy of decision tree model: model reached accuracy of 97% in our tests
- Hosted project on public web server with custom domain
What we learned
How to dockerize project so it can be hosted Push to google cloud Use Google Cloud Container Registry Use Google Cloud Dashboard Use Google Cloud Run Use protobuf format data
What's next for Live Bus Arrival Time Prediction with Decision Tree ML Model
The ML model is very easy to train, so adding extra variables it could consider when predicting arrival time would be simple. The model could be trained on weather conditions, traffic data, peak hours, and it would make the model more robust and accurate. With enough historical data the model could also be trained to predict the exact arrival time to the next stop given all the variables.
link to demo site: https://nallace.tech/
Built With
- css
- decision-tree
- docker
- fastapi
- google-cloud
- html
- javascript
- protobuf
- python
- scikit-learn
- uv

Log in or sign up for Devpost to join the conversation.