Demand for transportation service can be very tight. Lots of passengers tend to order a vehicle at the same time due to a certain organic pattern, for example during rush hours going to work. In this kind of case, high demand increasing can exceed driver availability, this causes long waiting times for passengers.
Because our main purpose in Grab is to ensure passengers get a vehicle in their requested time and suitable price, we thinking about a solution to fix this issue. We try to take advantage of big data to help passengers plan their trip better.
When observing data, we figured out that there is a seasonal pattern on demand and offer. Unbalanced appear in certain time and day, reaching its peak, and then disappear. This process keeps repeating creating patterns.
A study mentioned that humans tend to be a creature that hard to change unless they have a strong reason or they can take advantage of doing the change.
So, we try to change our customers by creating a widget that enables us to inform them when to decide to order the service and fairly distributing peak demand to the hours that are not rush hours. This is what we call peak shifting.
Even if this is the first peak shifting implementation in the online transportation industry, this term has been known since quite a long time ago.
Taking London Underground, for example, this England capital mass transportation system is trying to do “peak shifting” to its service long before other companies start to think this as a solution.
Widget Implemetation on Commuter Trend
Collecting data turns to be even more complex than what we predicted due to the fluctuating market changing day by day. It means that the general statement stated “05.00 P.M. to 08.00 P.M. is the rush hour with peak price” is not always apply to the situation.
It is contradictive to the general perspective, we observe that even during rush hour, there is a period where only small fluctuation happens.
For example, plot one and plot two in the graphic down here show how the increasing happen on Monday and Tuesday in a certain city in a certain month. One of the most important insights that we can observe from this is that increasing demand on Monday is different from Tuesday. This finding strengthens the general hypothesis that day-by-day the real market is indeed unique.
Therefore, we use machine learning to make a widget that can create a prediction. Users then can use this prediction to help them plan their own journeys.
This widget provides trend prediction information for the next two hours and collecting data related to the unbalance history between offer and demand in user location during a certain period.
Chosen data then will be shown in a visual form that is easily understood to the users, and help them choose the best time to order (when there are plenty drivers on the street which can help them saving expenses).
How Grab Build Widget
Building widget is a flexible, collaborative, and simultaneous process. Our product analysis team starts with collecting traffic data trend, peaking pattern, and additional knowledge related to user and driver behavior in Singapore.
When we recognize the daily patterns for one week, we find more analytic and proper questions and digging more data until we reach the answer. We decide to build a widget after we finish the verification of the general hypothesis.
Then we start to cooperate with our behavioral science, user experience design, and product management team. They assist us in shaping a clearer description of the issue we are trying to solve. The daily discussing session repeated the conversation with no end, and Grab risk-taking culture, we were finally able to cone the problem to the core.
After two weeks, the widget is accessible for our Singapore and Jakarta users.
Implementing Lots of Science Branches
Behavioral science helps to explore many user behaviors. This is needed to design a widget that easy to be understood and used.
Even if the price is fully depending on market conditions, it is important to keep explaining the financial reasons behind price determination to the users. This is the reason for the behavioral science team to build widget:
- Offering transparency on a price range: by exposing historical reports about demand increasing that happen in four hours, we want to ensure that users are informed that demand increasing is happening so they will not be surprised on price increasing come afterward.
- Giving information to help users planning their trip: By showing the prediction on demand, increasing that can happen in the next two hours, we help them to choose the best schedule.
- Giving Useful Tips: Tip bar in graphic provides tips about the condition that may happen in a certain period. For example, a low demand bar that increasing to high demand bar will inform users “We suggest you to go know as the traffic is getting crowded”. This condition will help users understand the graphic better and encouraging them for decision-making.
User experience design
The designer team inspired by Google features when they were popular in designing graphics for widgets.
Content and product team want to show information and additional action for each bar on the graphic so that the widget is still interactive and useful. One of the early challenges we have to face is to determine proper gestures to attract users to give intuitive interaction without facing difficulty.
We find that tap gesture is the most intuitive movement that can we use for the graphic bar.
We then continue exploration on widget visual design. During the process, we face some obstacles, including limited widget canvas and user context when they surf the contents.
By using our library collection and a visual component, we make it into stable development rhythm and providing product result rapidly. After a few revisions and four times iteration, we finally agree on a design that we consider suits our aim to solve users’ problems.
The engineering team is responsible to develop widget and make it available for users only in few weeks deadline. One of the challenges is to find the best way to process data in big quantity (millions data entry for example) so this has to be simplified and presented in the form of graphic bar, while on the same time ensuring that the system is still properly working.
This team has two options:
- It takes data directly from the database for each API call.
- Saving data in data memory structure regularly, so when there is a call from users, API does not have to directly refer to the database.
After considering the fact that the feature will result in high traffic (so demand is also increasing in every second). We realize that the first option will need higher expenses. We then move to the second option because it has better and more stable performances.
In the front-end part, the challenge is to fulfill a complicated request from the design team. We use a graphic in library collection to increase the developing process but not every requirement can be fulfilled in that graphic design.
For example, a library can simplify part visualization, but it can be changed to meet our needs. If designers commonly prefer line in dots form, the template graphic will not be easily able to shape it.
Furthermore, creating interactive and dynamic graphics bars such as its ability to change color on touching requires many CSS codes changing.
Users Feedback and Databased Knowledge
In launching a product, one of the most important tasks is to ensure that the product is interesting and useful to users. By using an understanding of what the users will think about the widget, we dig clickstream data.
We find that one from three users that placing order everyday interacts with the widget. From this group, more than seventy percent give a positive review of the widget.
This action gives validation to our general hypothesis that if users have their own choice, users will choose to have more freedom in scheduling their trip.
Furthermore, 61 percent of users give a positive assessment on the usage aspect, 20 percent prefer the design, and 13 percent admit that they recognize the advantage of the widget.
We carefully track user interaction metrics and observing feedback to increase new quality and iteration. Recently we released a new update for the widget that enables the user to manage reminders and being informed on the availability of low price rates on their chosen time.
That is our way to move in new ideas forming, iteration, so a product concept can result in just one month. We hope that the readers may gain something useful by reading this writing.