Grab uses technology to match trips and orders requested to driver- and delivery-partners who fulfill them. For our platform to function smoothly, this matching needs to be efficient. Our partners are often curious as to how the matching works as it affects their daily routines. In this explainer, we share some insights on how we strive to ensure that the process is fair for everyone.
Allocation algorithms help us match requests to partners
These algorithms have two main objectives.
First, they strive to meet everyone’s needs. Consumers want their requests fulfilled quickly. Driver- and delivery-partners want minimal waiting time in between requests. Merchant-partners want their orders picked up once prepared.
Grab strives for fairness and efficiency in the matching process
1. We do not unfairly discriminate based on demographic characteristics
Generally, we do not use demographic characteristics to determine which partner is allocated the request. However, there may be exceptions. For example, for safety reasons. In some markets, we try to match female passengers with female driver-partners, which research has shown both parties may prefer.
We also consider cultural and religious sensitivities. Some halal merchant-partners in Malaysia prefer delivery-partners who are trained and equipped to handle halal food products.
2. We focus on outcomes that benefit all users over individual preferences
We match requests with partners to ensure the platform functions smoothly for everyone, not just specific individuals. For example, we prioritize allocation to partners who enable auto-acceptance of requests. This reduces the chance that partners cherry-pick only the requests they want to accept, which may result in us having to assign partners further away to fulfill a request that a nearby partner rejected. This will increase everyone’s waiting time and reduce efficiency.
3. We try to match the best-suited partner to the request
Our partners have a diversity of vehicle types, training and experience. We try to allocate the partner best-suited to each type of request. For instance, for deliveries, the algorithm logically assigns larger vehicles to larger orders or longer distances. In contrast, smaller vehicles like motorcycles or bicycles are assigned to smaller orders and shorter trips.
Additionally, partners who demonstrate a higher level of familiarity with navigating a city’s one-way streets or motorcycle-only roads may be prioritized for allocations that pass through these places to reduce unnecessary delays. This is based on the way these partners complete previous trips or orders in these areas. As newer partners gain familiarity with these areas, they too will be prioritized for such requests.
4. We strive for all partners to have adequate earnings, while rewarding higher-performers
Grab has other algorithms dealing with pricing that help ensure partners earn an amount commensurate with the service provided. At the same time, we believe that high performers, such as driver-partners rated more highly by passengers, should be rewarded to recognize those who go the extra mile on our platform. In Singapore, schemes such as priority allocation under the Emerald Circle for some driver-partners serve this purpose.
5. We ensure that safety is never compromised
We want to ensure our partners stay safe on their trips. The algorithms do not penalize partners who need to take a break in any way to rest and recharge. Partners are free to turn off the app when they want to, and can resume whenever they are ready.
How the allocation algorithm works in daily scenarios
Let’s see how the allocation algorithm applies these principles to ensure efficiency and fairness in some daily scenarios.
Scenario 1: There are not enough partners to fulfill the trips or orders requested
This happens when there are more requests made than partners are available. In this situation, the algorithm’s priority is to make sure that as many requests from our consumers are fulfilled as possible. One way it does this is to group nearby orders together, so that one delivery-partner can fulfill several orders simultaneously.
Scenario 2: There are not enough trips or orders requested as compared to the partners available
This happens when there are many partners available in the vicinity, but not enough requests, such as in quieter locations or during non-peak periods. Here, the algorithm needs to decide which partner to allocate the request to as per some of the principles above, with the help of any other relevant information. For example, one feature allows partners to set a destination after their last trip for the day, and we try to match them to a request if one will end near their preferred destination.
We continuously iterate to improve on how the allocation algorithm can do better on our efficiency and fairness objectives. We also welcome feedback and hope to work with industry partners to ensure that in our pursuit of marketplace efficiency, we continue striving for fairness for all.