According to a recent survey, 59 million Americans, or more than a third of the entire US workforce, worked as a freelancer in the past year. Many find these gigs through online platforms like Upwork, TaskRabbit, or Fiverr that help connect clients with freelance service providers.
One of the biggest challenges these platforms face is finding the best match between clients and freelancers. Customers often have specific needs that not all employees can adequately meet. This type of problem is one of the many research directions being developed by Jiaming Xu, associate professor of decision science at Duke University’s Fuqua School of Business.
Xu’s main research interest is the development of algorithms to derive useful information from network data. “We see many different types of networks in business applications, engineering, and even in the natural sciences,” he says. “The key question is how to extract useful information from these networks to guide downstream decision-making.”
These networks, as found in the real world, tend to be very large and complex, sometimes involving millions of nodes and various types of connections between them. In addition, the observed data may be noisy or incomplete. “I’m working on developing scalable algorithms that can run very fast and at the same time extract this kind of information even when there’s only a very weak signal in the data,” says Xu.
dealing with uncertainties
With freelance platforms, bringing clients and service providers together can be particularly difficult due to the uncertainties inherent in the process. First of all, before a service is provided, the platform does not know how efficient a particular freelancer will be in completing a particular task assigned by a client. In other words, the customer’s payout is unknown.
Another problem is that the customer population is very dynamic. They usually arrive at the platform to meet a specific need, stay for some time, and depart after using the service. The statistics on customer arrivals and departures are also not known in advance. Additionally, each freelancer has a limited capacity to deliver services, a constraint that also needs to be considered. “That’s the second uncertainty — how to match clients with freelancers in a way that doesn’t overload the system,” says Xu.
Along with his co-authors — Wei-Kang Hsu, a machine learning algorithm engineer currently at Apple, Xiaojun Lin, professor of electrical and computer engineering at Purdue University, and Mark R. Bell, also professor of electrical and computer engineering at Purdue University Purdue University—Xu examined this issue in an article published by the journal, “Integrated Online Learning and Adaptive Control in Queuing Systems with Uncertain Payoffs.” corporate research.
“We investigated this as an online matching problem,” he says. “The goal is to find that match while also learning the unknown payoffs and making sure the system is stable and not overloaded. Then we can maximize the overall payout for the online platform.”
Ideally, the platform would gradually learn each customer’s preferences through trial and error. In the real world, however, the system cannot afford too many mistakes. If the customer’s needs remain unmet, after a few tries, they just leave the platform, so the learning curve has to be fast. “The challenge is that based on the feedback or the result of the tasks, you want to know the customer’s preferences very quickly,” says Xu.
In machine learning, this dilemma is known as the trade-off between exploration and exploitation. If you’re constantly looking for new matches, you may sacrifice customer satisfaction. But if you don’t do some research, you might also miss the chance to find the best possible match. “That’s why you should explore it, but not too much as you might end up losing a lot of the payoff or utility.”
To solve this dilemma, Xu and his colleagues used the Upper Confidence Bound algorithm, which helps combine exploration and exploitation to get the best result as quickly as possible.
With this approach, when the performance of a potential match is unknown, this algorithm optimistically assumes that there is a higher chance that it is a good match. In other words, when uncertainty is high, the results are optimistically “inflated”. After you’ve had the opportunity to watch a game’s performance over and over again, you don’t have to inflate the results as much because you’re more likely to observe something close to that game’s actual average performance.
“You always pick the best match based on the inflated results, not the actual observed results. This is called the upper confidence limit, and it’s basically how we learn the customer’s preferences as we make the matches,” says Xu.
While the algorithm finds the best possible match for each customer, it must also take into account the limited capacity of each service provider and the uncertainty of customer arrivals. Simply folding greedily to maximize current estimated payouts is proving highly suboptimal. “We formulate this as an optimization problem. There are some capacity limitations for each server and you need to make sure you don’t violate them. In addition, each customer is associated with a utility function of the service rate received, and you need to maximize both the total utilities and the estimated matched payoffs.” The utility function promotes fairness in matching, which is doubly desirable. First, it has an eye on the future so we can find the right balance between current and future payouts. Secondly, it also controls the learning processes of all customers in a fair way, so even customers with low estimated payouts can still get some service and improve their payout estimates.
To assess the algorithm’s performance, Xu and his colleagues calculated the regret rate, which compares the results of the new algorithm to those of an oracle that knows all the customer dynamics and preferences in advance. “We have shown that regret is very small and decreases as you let the system run longer,” says Xu. Regret also decreases when a particular client assigns multiple tasks. In this case, the system gets better and better at learning the customer’s preferences.
The main contribution of this paper is to propose a solution that addresses the uncertainty inherent in these types of platforms. Previous work in the literature assumed a scenario where arrival rates of different types of customers on the platform and corresponding payouts were known in advance. “In our case, we don’t need to know this information. We can dynamically allocate our orders in response to these differing arrival rates and matching payouts. That’s the interesting thing about our algorithm and policy.”
Xu says he is particularly interested in studying networks because many systems and platforms containing business applications can be modeled as networks. One of his main research interests is data protection in networks and how easily information can be traced back to individual users. “Networks are very visually appealing because you can actually draw the nodes and edges and easily explain them to an audience,” he says. “At the same time, there is a very deep mathematics behind it.”
(C) Duke University
Note: This story was originally published at: https://www.fuqua.duke.edu/duke-fuqua-insights/finding-best-match-between-clients-and-freelancers-online-platforms