STRADA (Simulation of TRAffic DAta) is an urban traffic web simulator that uses data in real time built with Angular, TypeScript & Firebase.
Project developed for the dissertation of my bachelor's degree in computer engineering.
Official docs: STRADA documentation
A widespread cliché wants urban traffic to be created because roads and public transport are insufficient or not working. Indeed, those who participated in the design of complex systems know perfectly that overdimensioning beyond average demand often does not give the expected results, or is not economically sustainable or for other factors. Traffic is due to population density and human activities that are concentrated in the same place or time. Even the Romans or medieval cities had busy roads: a sign of vitality, productivity, the ability of some centers to attract people and activities. In fact, over time, various meanings have been attributed to traffic: from "trade" to "circulation", but only in the automobile age the effect of congestion has replaced its original meanings to become the common use.
Although traffic is inevitable in some situations, it is possible to study it in order to reduce the effect of congestion - as well as traffic accidents and pollution.
Software simulators allow you to analyze, design, plan and manage urban mobility in order to find the best solutions for the traffic problems before adopting them in reality.
The STRADA simulator - Simulation of TRAffic DAta - is a web application that can process any transport network, obtain traffic data in real time and offer a simulation of traffic flow, with the purpose of controlling, estimating or predict traffic considering different conditions, such as different weather conditions.
- Graph generation of any transport network on a real map
- Transport demand calculation without extensive statistical surveys or expensive traffic sensors
- Real time factors such as weather conditions
- A macroscopic simulation model (LTM - Link Transmission Model) in the context of urban traffic
The demo allows a limited number of daily simulations, because past the quota limits traffic data become paid.
- Node.js and npm
- Update npm:
npm install npm@latest -g
- Angular CLI:
npm install -g @angular/cli
- Firebase
- Create a Firebase project in the Firebase console
- Firebase CLI:
npm install -g firebase-tools
- Login:
firebase login
- Google Maps
- Get your API keys: https://cloud.google.com/maps-platform/
- Enable Maps JavaScript API, Geocoding API and Directions API
- OpenWeatherMap
- Get your API key: https://openweathermap.org/
- Update
.firebaserc
file - Update
src/app/app-config.json
file - Update
functions/src/functions-config.json
file
cd functions
npm install
npm run serve:dev
npm install
npm start
npm test
MIT