Init Notes

Global Aim:

Optimizing a large city’s taxi service.

Detailed Aims:

  1. Simplify passengers’ access to the service

  2. Guarantee a fair management of taxi queues

Domain Details:

  • Requests are made via Web/Mobile App

  • Responses contain Taxi Code and Waiting Time

  • Taxi drivers publish their availability / confirmation via a Mobile App

  • Queue Algorithm (Original quote:)

    In particular, the city is divided in taxi zones (approximately 2 km2 each). Each zone is associated to a queue of taxis. The system automatically computes the distribution of taxis in the various zones based on the GPS information it receives from each taxi. When a taxi is available, its identifier is stored in the queue of taxis in the corresponding zone. When a request arrives from a certain zone, the system forwards it to the first taxi queuing in that zone. If the taxi confirms, then the system will send a confirmation to the passenger. If not, then the system will forward the request to the second in the queue and will, at the same time, move the first taxi in the last position in the queue.

  • Public API (Note: Not really a “domain detail”)

  • Part 2: A user can reserve a taxi by specifying origin and destination. A reservation( \( r:O \rightarrow D \)):

    • MUST occur at least 2 hours before.

    • Is confirmed to the user by the system, which allocates a taxi 10 mins before.

  • Part 3: A sharing option must be available, which:

    • It gives the possibility to share the reservation and the costs.

    • It requires the user to specify the destination of all rides it wants to share.

    • The system will find other users in the same zone, calculate the fee and notify the users.