Algorithms are increasingly used to determine allocations of scarce, high-value resources. For example, spectrum auctions, which are used by governments to allocate radio spectrum, require algorithms to determine which combinations of bids can and should be accepted. Kidney exchanges allow patients that require a kidney transplant and have a willing but medically incompatible donor to trade their donors, and some of these exchanges now use algorithms to determine who matches with whom. These are very different application domains—for one, in the former, transfers of money play an essential role, but in the latter, they are illegal. Other applications have yet different features, so each application comes with its own requirements.
In spite of the lack of a single, universal solution, there are several clear benefits of allocating resources algorithmically. In both of the given examples, there is a combinatorial explosion in the space of possible alternatives, and computers are much better able to search through these spaces. If the algorithm is clearly specified beforehand, this can also improve trust in the process as a whole. On the other hand, the process of designing the algorithm often brings into sharp focus that the objective is not clear. Should a government running a spectrum auction focus on the spectrum being allocated efficiently, or on bringing in revenue? In a kidney exchange, should we simply maximize the number of transplants, or give some priority to certain patients, for example, ones who will be difficult to match in the future due to blood type?
No entries found