I have probably seen too much NotJustBikes lately to say anything positive or constructive about car sharing and how it affects society. But when it comes to the technical side of implementing such a service, there are some interesting problems to solve (depending on the scope of your project ofc…). You mentioned the traveling salesman problem, which considers one agent who is trying to find the distance-optimal route. When it comes to multiple cars and multiple ride requests and time constraints, the kind of algorithms you want to look for are more generally called assignment problems. If you want to dive into code, you can look up “google hashcode 2018 rideshare” which was a coding competition with a closely related problem.
deleted by creator