It is a trivial problem. Track how anyone with a smartphone and your app on it moves around the city. Aggregate which paths they choose and which turn out to be faster / better. Then propose those paths to other users asking for routing instructions.
I work on a software for routing deliveries (https://www.fleetnavi.com), and although we don't have this functionality built into the platform yet, it's the first thing to do when we get volume.
I work on a software for routing deliveries (https://www.fleetnavi.com), and although we don't have this functionality built into the platform yet, it's the first thing to do when we get volume.