8,782 research outputs found
New and simple algorithms for stable flow problems
Stable flows generalize the well-known concept of stable matchings to markets
in which transactions may involve several agents, forwarding flow from one to
another. An instance of the problem consists of a capacitated directed network,
in which vertices express their preferences over their incident edges. A
network flow is stable if there is no group of vertices that all could benefit
from rerouting the flow along a walk.
Fleiner established that a stable flow always exists by reducing it to the
stable allocation problem. We present an augmenting-path algorithm for
computing a stable flow, the first algorithm that achieves polynomial running
time for this problem without using stable allocation as a black-box
subroutine. We further consider the problem of finding a stable flow such that
the flow value on every edge is within a given interval. For this problem, we
present an elegant graph transformation and based on this, we devise a simple
and fast algorithm, which also can be used to find a solution to the stable
marriage problem with forced and forbidden edges.
Finally, we study the stable multicommodity flow model introduced by
Kir\'{a}ly and Pap. The original model is highly involved and allows for
commodity-dependent preference lists at the vertices and commodity-specific
edge capacities. We present several graph-based reductions that show
equivalence to a significantly simpler model. We further show that it is
NP-complete to decide whether an integral solution exists
Defining Equitable Geographic Districts in Road Networks via Stable Matching
We introduce a novel method for defining geographic districts in road
networks using stable matching. In this approach, each geographic district is
defined in terms of a center, which identifies a location of interest, such as
a post office or polling place, and all other network vertices must be labeled
with the center to which they are associated. We focus on defining geographic
districts that are equitable, in that every district has the same number of
vertices and the assignment is stable in terms of geographic distance. That is,
there is no unassigned vertex-center pair such that both would prefer each
other over their current assignments. We solve this problem using a version of
the classic stable matching problem, called symmetric stable matching, in which
the preferences of the elements in both sets obey a certain symmetry. In our
case, we study a graph-based version of stable matching in which nodes are
stably matched to a subset of nodes denoted as centers, prioritized by their
shortest-path distances, so that each center is apportioned a certain number of
nodes. We show that, for a planar graph or road network with nodes and
centers, the problem can be solved in time, which improves
upon the runtime of using the classic Gale-Shapley stable matching
algorithm when is large. Finally, we provide experimental results on road
networks for these algorithms and a heuristic algorithm that performs better
than the Gale-Shapley algorithm for any range of values of .Comment: 9 pages, 4 figures, to appear in 25th ACM SIGSPATIAL International
Conference on Advances in Geographic Information Systems (ACM SIGSPATIAL
2017) November 7-10, 2017, Redondo Beach, California, US
An algorithm for a super-stable roommates problem
In this paper, we describe an efficient algorithm that decides if a stable matching exists for a generalized stable roommates problem, where, instead of linear preferences, agents have partial preference orders on potential partners. Furthermore, we may forbid certain partnerships, that is, we are looking for a matching such that none of the matched pairs is forbidden, and yet, no blocking pair (forbidden or not) exists.
To solve the above problem, we generalize the first algorithm for the ordinary stable roommates problem
An Algorithm for a Super-Stable Roommates Problem
In this paper we describe an efficient algorithm that decides if a stable
matching exists for a generalized stable roommates problem, where, instead of
linear preferences, agents have partial preference orders on potential partners.
Furthermore, we may forbid certain partnerships, that is, we are looking for
a matching such that none of the matched pairs is forbidden, and yet, no
blocking pair (forbidden or not) exists.
To solve the above problem, we generalize the first algorithm for the ordi-
nary stable roommates problem
Stable marriage and roommates problems with restricted edges: complexity and approximability
In the Stable Marriage and Roommates problems, a set of agents is given, each of them having a strictly ordered preference list over some or all of the other agents. A matching is a set of disjoint pairs of mutually acceptable agents. If any two agents mutually prefer each other to their partner, then they block the matching, otherwise, the matching is said to be stable. We investigate the complexity of finding a solution satisfying additional constraints on restricted pairs of agents. Restricted pairs can be either forced or forbidden. A stable solution must contain all of the forced pairs, while it must contain none of the forbidden pairs.
Dias et al. (2003) gave a polynomial-time algorithm to decide whether such a solution exists in the presence of restricted edges. If the answer is no, one might look for a solution close to optimal. Since optimality in this context means that the matching is stable and satisfies all constraints on restricted pairs, there are two ways of relaxing the constraints by permitting a solution to: (1) be blocked by as few as possible pairs, or (2) violate as few as possible constraints n restricted pairs.
Our main theorems prove that for the (bipartite) Stable Marriage problem, case (1) leads to View the MathML source-hardness and inapproximability results, whilst case (2) can be solved in polynomial time. For non-bipartite Stable Roommates instances, case (2) yields an View the MathML source-hard but (under some cardinality assumptions) 2-approximable problem. In the case of View the MathML source-hard problems, we also discuss polynomially solvable special cases, arising from restrictions on the lengths of the preference lists, or upper bounds on the numbers of restricted pairs
Parallel and Distributed Algorithms for the Housing Allocation Problem
We give parallel and distributed algorithms for the housing allocation
problem. In this problem, there is a set of agents and a set of houses. Each
agent has a strict preference list for a subset of houses. We need to find a
matching such that some criterion is optimized. One such criterion is Pareto
Optimality. A matching is Pareto optimal if no coalition of agents can be
strictly better off by exchanging houses among themselves. We also study the
housing market problem, a variant of the housing allocation problem, where each
agent initially owns a house. In addition to Pareto optimality, we are also
interested in finding the core of a housing market. A matching is in the core
if there is no coalition of agents that can be better off by breaking away from
other agents and switching houses only among themselves.
In the first part of this work, we show that computing a Pareto optimal
matching of a house allocation is in {\bf CC} and computing the core of a
housing market is {\bf CC}-hard. Given a matching, we also show that verifying
whether it is in the core can be done in {\bf NC}. We then give an algorithm to
show that computing a maximum Pareto optimal matching for the housing
allocation problem is in {\bf RNC}^2 and quasi-{\bf NC}^2. In the second part
of this work, we present a distributed version of the top trading cycle
algorithm for finding the core of a housing market. To that end, we first
present two algorithms for finding all the disjoint cycles in a functional
graph: a Las Vegas algorithm which terminates in rounds with high
probability, where is the length of the longest cycle, and a deterministic
algorithm which terminates in rounds, where is the
number of nodes in the graph. Both algorithms work in the synchronous
distributed model and use messages of size
- …