Algorithms and mechanism design for multi-agent systems

Multi-agent submodular covering problems. Classical covering problems such as minimum spanning tree, vertex cover and shortest path have been widely used to model a variety of practical situations where the goal is to minimize the cost of a project. However, typically these abstractions do not model two properties commonly observed in the real-world problems: (1) Cost functions observed in practice often exhibit economies of scale and (2) Presence of multiple providers or agents each of whom may have different cost function over the same set of objects. The question in general is: How can we incorporate these layers of complexity into combinatorial covering problems? We study the following fundamental problems under this multi-agent submodular cost setting: Combinatorial reverse auction, vertex cover, shortest path, minimum spanning tree and minimum perfect matching. We study the approximability of these problems with both algorithmic and hardness results, i.e. , upper and lower bounds on the approximation factors. Combinatorial auctions with partially public valuations. A central problem in computational mechanism design is that of combinatorial auctions, in which an auctioneer wants to sell a heterogeneous set of items J to interested agents. Each agent i has a valuation function fi(.) which describes her valuation fi(S) for every set S ⊆ J of items. We consider the case when some inherent property of the items induces a common and publicly known partial information about the valuation function of the buyers. In particular, we consider combinatorial auctions where the valuation of an agent i for a set S of items can be expressed as vif(S), where vi is a private single parameter of the agent, and the function f is publicly known. The goal is to design a truthful mechanism which maximizes the social welfare ∑ i vif(Si), where S1···S n is a partition of J . Our motivation behind studying this problem is two-fold: (a) Such valuation functions arise naturally in the case of ad-slots in broadcast media such as Television and Radio. For an ad shown in a set S of ad-slots, f(S) is, say, the number of unique viewers reached by the ad, and vi is the valuation per-unique-viewer. (b) From a theoretical point of view, this factorization of the valuation function simplifies the bidding language, and renders the combinatorial auction more amenable to better approximation factors. Online vertex-weighted bipartite matching and single-bid budgeted allocations. Online bipartite matching is a fundamental problem with numerous applications such as matching candidates to jobs or boys to girls. More recently, this and related problems have received significant attention, because they model the allocation aspect of sponsored search auctions, where multiple agents (advertisers) bid on items (query keywords) which arrive one by one in an online manner. We study the following vertex-weighted online bipartite matching problem: G(U, V, E) is a bipartite graph. The vertices in U have weights and are known ahead of time, while the vertices in V arrive online in an arbitrary order and have to be matched upon arrival. The goal is to maximize the sum of weights of the matched vertices in U. When all the weights are equal, this reduces to the classic online bipartite matching problem for which Karp, Vazirani and Vazirani gave an optimal (1 − 1e )-competitive algorithm in their seminal work [38]. Our main result is an optimal (1 − 1e )-competitive randomized algorithm for general vertex weights. Our solution constitutes the first known generalization of the algorithm in [38] in this model and provides new insights into the role of randomization in online allocation problems. It also effectively solves the problem of online budgeted allocations [47] in the case when an agent makes the same bid for any desired item, even if the bid is comparable to his budget - complementing the results of [47, 11] which apply when the bids are much smaller than the budgets. (Abstract shortened by UMI.)