1. Introduction
Kidney transplantation is one of the best treatment methods for those who are suffering from end-stage renal failure. Unfortunately, it is quite difficult for some patients to find suitable kidneys because of a lack of deceased donors and incompatibility of their blood and tissue types with willing donors. Although some patients can buy living donor kidneys from marketplaces, it is commonly considered to be unethical to commercialize of human organs. Moreover, it is in fact illegal in most countries. Living donation is regarded as legal as long as it occurs as a gift instead of a commodity to make profit. But it often arises that a donor who in general is a relative or friend of a patient is willing to donate a kidney to the patient even though their kidneys are not physiologically compatible such that the kidney transplantation cannot be carried out. Therefore, it is a significant research topic to effectively utilize living-donor kidneys such that their incompatible intended recipients can obtain one compatible kidney from these living-donor kidneys by exchanging. In 1986, Rapaport [
1] first presented the idea of kidney paired donation where two incompatible patient-donor pairs reciprocally exchange the donors’ kidneys so that two patients respectively obtain a compatible kidney, where an incompatible patient-donor pair represents a patient and his willing but incompatible donor. Since then, kidney exchange programs have developed rapidly and have already been established in some countries, for example, the USA, the UK, Turkey, Switzerland, and South Korea [
2].
The Kidney Exchange problem (KEP) is the central issue of kidney exchange programs from a computational point of view. In a set of incompatible patient-donor pairs, the KEP is to find the exchanges with the maximum collective benefit such that each patient-donor pair of the exchanges can donate a kidney to some pair and receive a compatible kidney from another pair. The collective benefit is usually measured by the total number of possible kidney transplants [
3,
4,
5,
6,
7,
8]. From a graph theory perspective, as a type of barter exchange, kidney exchange is implemented by cycles comprising patient-donor pairs, where each donor in a pair donates a kidney to the patient in the next pair. Theoretically speaking, long cycle exchanges are better, since they are beneficial in improving the chances that more incompatible pairs are contained into the exchanges. However, the length of cycles must be limited in a certain range for the following reasons. First, to ensure an exchange cycle is executed successfully, all operations should be performed simultaneously so as to reduce the risk that a donor might break his promise after his incompatible patient has obtained a kidney before he donates his kidney. Long cycle exchanges may bring substantial logistical difficulties because the number of personnel and facilities required for simultaneous operations is too large. Second, all exchanges of a cycle will be cancelled if the final crossmatch test before operations detects new incompatibilities. Hence, longer cycles may cause greater logistical complexity and greater exchange failure risk. As a result, the length of cycles is generally limited in the range
, where
L is a given constant and usually
. Therefore, the KEP can be regarded as finding an optimal packing of vertex-disjoint cycles from a given directed graph such that the length of each cycle is at most
L.
When considering altruistic donors, kidney exchange allows the inclusion of chains which start from altruistic donors and end with either a pair or a patient in a wait list. The KEP becomes more complex, and can be modelled as finding an optimal set of vertex-disjoint cycles and chains from the directed graph of given instance such that the length of each cycle is at most
L [
5]. In a chain exchange, if the donor of a patient-donor pair backs out of the chain after his patient has received a transplant, no pair in the remaining tail of the planned chain suffers irreparable harm. Hence, a chain exchange can be conducted non-simultaneously [
9] and the length of a chain exchange can be much longer than that of a cycle exchange [
10,
11]. But a donor in a non-simultaneous exchange still has the risk of reneging, which can make some patient-donor pairs lose exchange opportunity, thus in some literatures the limitation of chain length is still considered, e.g., the same length constrained for chains and cycles in [
12]. An altruistic donor can be seen as a patient-donor pair with a “dummy” patient which is compatible with each donor of other incompatible patient-donor pairs. Thus, in this way, chain exchange and cycle exchange can be treated similarly in optimization models. In this paper, we mainly address the KEP without chains.
Over the past decades, there has been a rich literature on models, market mechanisms, and optimal algorithms for the KEP. There are many different variations of the KEP when considering different scenarios and limitations. The reader is referred to surveys on KEP variants [
2,
13]. In this section, we mainly describe the previous work of the KEP from a computational point of view. The complexity of the KEP was investigated in [
3,
4], and [
14]. When
, the KEP is NP-hard, meaning that it is unlikely there exists a polynomial time exact algorithm.
For the KEP, most exact algorithms are based on Integer Programming (IP) approaches, and research work focuses mainly on IP formulations. Roth et al. [
5] proposed two noncompact formulations of IP for the KEP: the edge formulation and the cycle formulation with exponential numbers of constraints and variables, respectively. Abraham et al. [
3] compared the two formulations and showed that the cycle formulation is tighter than the edge formulation when the cycle size is limited. They presented an incremental formulation approach to solve the cycle formulation based on enhancing the column generation method and the branch-and-price search technique [
15]. To reduce the number of constraints and variables of the two formulations from exponential to polynomial, Constantino et al. [
2] gave two compact formulations for the KEP: the edge assignment formulation and the extended edge formulation, and showed by computational analysis that when the scale of KEP becomes large, the compact formulations have more merits than non-compact ones. Klimentova et al. [
16] presented the disaggregated cycle decomposition model which is regarded as a Dantzig-Wolfe decomposition [
17] of the extended edge formulation proposed in [
2], and solved the model by a branch-and-price method. Recently, Dickerson et al. [
18] introduced models where chains are represented by only a polynomial number of position-indexed edge variables which bring about great improvements on running time for the KEP with chains. Mak-Hau [
19] studied the edge formulations for the KEP with and without chains and presented some polyhedral results. For a detailed review of various IP approaches to solving the KEP, see a recent survey of Mak-Hau [
20].
Approximation technique is also one of the main approaches of solving the KEP. Biró et al. [
4] proved the APX-completeness of the maximum size KEP when
, and gave an
-approximation algorithm for the maximum cycle weight KEP and an
-approximation algorithm for the maximum size KEP (for any
). Luo et al. [
21] proved three inapproximability results for the KEP in a weighted graph. It is NP-hard to approximate the KEP within
under a fixed integer
and within
when
. In an unweighted graph, it is NP-hard to approximate the KEP within
when
. Jia et al. [
22] presented near optimal approximation algorithms by combining heuristics and local search technique.
Recently, some researchers started studying exact exponential algorithms and parameterized algorithms for the KEP. For the maximum cycle weight KEP with
, an
FPT algorithm [
4] was proposed by turning it into a maximum weight matching problem, where
k is the minimum size of an arc set
S where there is at least one arc in
S from each 3-cycle of the instance. However, the problem finding an arc set
S with the minimum size is NP-hard. Recently, Xiao and Wang [
8] studied the variant of the KEP which contains chain exchanges and allows some compatible patient-donor pairs to participate in exchanges to find better matched kidneys. They designed two
exact algorithms based on dynamic programming and subset convolution for the KEP with and without length constraints, respectively. Dickerson et al. [
23] contracted the representation of a compatibility graph by introducing a way to class the vertices in the graph into different types according to some actual meaning. Based on the number
k of vertex types, Xiao and Wang [
8] designed an FPT algorithm of running time
for the KEP without length constraints by using decomposition technique.
Randomness is an essential resource for solving many computational problems, and randomization is a powerful tool for developing algorithms [
24,
25,
26,
27,
28,
29]. Recently, stochastic matching approaches have been applied to deal with the KEP [
30,
31]. In fact, stochastic methods can naturally describe many settings of barter exchange problems [
32,
33]. Thus, in the future stochastic approaches for the KEP will become an important research issue.
In this paper, we study randomized algorithms for the parameterized KEP without chains by the random partitioning technique [
24,
25] and the randomized algebraic technique [
26,
27,
28,
29]. For ease of description, in what following we use “KEP” to refer to the kidney exchange problem without chains. We consider the parameterized KEP involving only 2-cycle and 3-cycle exchanges (namely the case of
), with respect to parameters that correspond to the numbers
and
of 2-cycle exchanges and 3-cycle exchanges, respectively. We note that the solution
P of a given instance of the KEP involves only 2-cycle and 3-cycle exchanges. Suppose that the vertex set of a given instance can be correctly split into two subsets
and
, where the subset
involves only 2-cycle exchanges of
P and the subset
involves 3-cycle exchanges of
P. Then we can easily find these 2-cycle exchanges in
by transforming it into maximum matching problem and find these 3-cycle exchanges in
by utilizing an existing 3-set-packing algorithm [
34]. Hence, we obtain a parameterized algorithm of running time
by the random partitioning technique. For the case of
, we discuss the parameterized KEP with respect to the number
k of possible kidney transplants. Applying the randomized algebraic technique, we reduce the KEP to the multilinear monomial detection problem, and obtain an
algorithm based on the results of Koutis and Williams [
27,
28,
29].
This paper is organized as follows.
Section 2 covers the preliminaries and notations, and introduces the formal definitions of the KEP without chains. In
Section 3 and
Section 4, we investigate the randomized algorithms for two parameterized models of the KEP, and we present two randomized FPT algorithms. Finally, in
Section 5 we give a short summary of our works and some future directions.
3. A Randomized Algorithm Based on Random Partitioning Technique
For the KEP, Roth [
5] showed that in a large population, all the gains from exchange can be obtained by using 2-cycle, 3-cycle and 4-cycle exchanges. Especially, 2-cycle and 3-cycle exchanges capture almost all the gains from exchange, and their marginal contribution is significantly large. In practice, 2-cycle and 3-cycle exchanges are typically used, such as in the New England Program [
38] and the kidney exchange program of the United Network for Organ Sharing [
5]. In this section, we consider the maximum exchange size KEP whose exchanges is limited only 2-cycle and 3-cycle exchanges (namely
). The model is defined as follows:
Parameterized KEP (p-KEP):
Input: a simple directed graph , and two positive integers and ;
Parameter: and ;
Question: Is there a packing of vertex-disjoint cycles in D, comprising at least 2-cycles and at least 3-cycles?
Applying random partitioning technique, we design a randomized algorithm for the p-KEP. Given an instance of the p-KEP, we stochastically divide the vertex set V into two subsets and by putting v into or with probability for each vertex . When the instance is a Yes-instance, there exists a proper partition such that 2-cycles are in and 3-cycles are in . We can easily find a packing with vertex-disjoint 2-cycles in through transforming into the maximum matching problem of an undirected graph and invoking the corresponding algorithm, and find a packing with vertex-disjoint 3-cycles in by transforming into the 3-set-packing problem and invoking the corresponding algorithm. Algorithm 1 RKEP is the detailed randomized algorithm of the p-KEP based on the random partitioning technique, where c is a constant which is applied to adjust the probability that Algorithm RKEP fails.
Algorithm 1 RKEP |
Input: a directed graph , positive integer c, and two positive integers and ; Output: a packing of vertex-disjoint cycles in D, comprising at least 2-cycles and at least 3-cycles, otherwise return no solution exists.
- 1:
=0; - 2:
whiledo - 3:
; - 4:
; - 5:
for all do - 6:
put v into or with probability ; - 7:
end for - 8:
for the induced subgraph , find a packing of at least vertex-disjoint 2-cycles; - 9:
if no exists then - 10:
goto next loop iteration; - 11:
end if - 12:
for the induced subgraph , find a packing of at least vertex-disjoint 3-cycles; - 13:
if no exists then - 14:
goto next loop iteration; - 15:
end if - 16:
return ; - 17:
end while - 18:
return no solution exists;
|
Theorem 1. For the p-KEP, there exists a randomized algorithm of running time which, for any given constant , produces the desired packing in a Yes-instance with probability at least .
Proof. For the p-KEP, if an instance is a No-instance, then no matter how the vertex set V is split, we cannot find a required packing in and . Thus, no solution to the p-KEP will be returned in line 18 of Algorithm RKEP.
Now assume that the given instance is a Yes-instance and P is a solution to the p-KEP. Then there are vertex-disjoint 2-cycles and vertex disjoint 3-cycles in . Let and be the vertex sets of vertex-disjoint 2-cycles and vertex disjoint 3-cycles, respectively. Thus, and . By random partitioning, if the vertex set V can be correctly divided into and such that and , then we can obtain by maximum matching algorithm for in line 8 and obtain by 3-set-packing algorithm for in line 12. Thus in line 16, can be correctly returned.
We analyze the probability that RKEP fails to find a packing P in D. Since each vertex is put into or with probability in each while loop, the vertices and can be correctly partitioned in line 5–7 with probability . Thus, the probability in each loop iteration is such that there exists at least one vertex which is put into or at least one vertex which is put into . Hence, after executing loops, the probability that and are not divided correctly is . Therefore, by the random partitioning operation, there exist and with a probability at least .
We analyze the running time of RKEP
. In each loop iteration, lines 5–7 run in
time. For line 8, we transform it into the maximum matching problem of an undirected graph
G. Graph
G can be constructed in time
in the following way: Let
. For
, if
and
, then there is an edge
. Line 8 takes
time by applying Edmonds’ algorithm [
39] for the maximum matching problem of graph
G. For line 12, we find a packing of
vertex-disjoint 3-cycles in
by transforming into the 3-set-packing problem and invoking the corresponding algorithm in
[
34]. Thus, the running time of Algorithm 1 RKEP
is
. ☐
4. A Randomized Algorithm Based on Algebraic Technique
Efficient kidney exchange can be achieved by 2-cycle and 3-cycle exchange. However, with the progress of technology, cycle exchange with length more than 3 has proved useful in kidney exchange. Limitations on the maximum length of cycles may be weakened in the future. It is reported that a 9-cycle exchange was performed successfully in 2015 [
20]. In this section, we discuss the KEP with
parameterized by the size of kidney transplants. The parameterized model is defined as follows:
Parameterized KEP (p-KEP):
Input: a simple directed graph , and a positive integer k;
Parameter:k;
Question: In graph D, is there a packing S of vertex-disjoint cycles such that and the length of each cycle is in the range ?
Here,
L is a fixed integer at least 3. For an integer
t and a packing
S, if
and
, then
S is called a solution set of size
t for the
p-KEP.
By the above definition, the
p-KEP is a special class of the set packing problem. For the set packing problem, most work has focused on the case that each set has the same size, such as the deterministic time
algorithm for the 3-set
k-packing problem [
34] and the randomized algorithm with time
for the
m-set
k-packing problem [
27]. However, so far relatively little research has been carried out on the set packing problem such as the
p-KEP which the size of each set is limited in a range
. In the section, we develop a randomized algorithm for the
p-KEP based on the algebraic technique, introduced by Koutis in [
27]. Developed by Koutis and Williams [
28,
29], the randomized algebraic technique has been successfully applied to some graph problems and counting problems [
26,
40,
41]. An outstanding example is the improved algorithm with running time
for the Hamiltonian path problem [
26], which resolves the open problem for half of a century whether there exists an
time algorithm with some constant
for the Hamiltonian path problem. The main idea of the algebraic approach is as follows: By constructing an appropriate multivariate polynomial for a given problem instance, the problem is reduced to the multilinear monomial detection problem for the sum-product expansion of the polynomial represented by a monotone arithmetic circuit, where a monomial
whose degree is
is called multilinear if each
is either 0 or 1, and the degree of a polynomial is the maximum degree of all monomials in its expansion. A monotone arithmetic circuit is a directed acyclic graph in which each vertex of in-degree 0 is an input gate labeled either with variable or a non-negative real constant, the other vertices have in-degree 2 and are labeled either “+” (addition gates) or “×” (multiplication gates), and there is exactly one vertex with out-degree 0 which is called output gate. A polynomial is represented by a monotone arithmetic circuit if it can be computed by the output gate of the circuit. The multilinear monomial detection problem is to decide whether a polynomial
which can be represented by an arithmetic circuit contains a multilinear monomial of degree at most
k in its sum-product expansion. Koutis and Williams gave randomized algorithms for multilinear monomial detection problem in [
27] and [
29], respectively. In [
28], they extended their methods and gave Lemma 1 which is rephrased as follows in terms of our notation.
Lemma 1 (see Lemma 1 in [
28])
. Let X be a variable set, z be an extra variable, and be a polynomial represented by a monotone arithmetic circuit of size . Assume that the sum-product expansion of is expressed the form . There is a randomized algorithm that on every runs time, outputs "YES" with high probability if contains a multilinear monomial of degree at most k, and always outputs "NO" if there is no multilinear monomial of degree at most k in . Our algorithm for the p-KEP relies on Lemma 1. For a given directed graph of the p-KEP, we construct a suitable polynomial such that for a positive integer k, the coefficient of is a polynomial in the sum-product expansion of , the degree of each monomial in is k, and each multilinear monomial in maps to a packing of vertex-disjoint cycle in . Hence, we can prove that there is a solution set S of size k for the p-KEP if and only if contains a multilinear monomial of degree k (see Lemma 2 below).
According to the above idea, we first construct a polynomial from the given instance. In a given directed graph , let vertex set , variable set and z be an extra variable. There is a one-to-one mapping relationship between V and X which each vertex is mapped to a product for . If form a directed cycle C in graph D, then define a monomial . In graph D, let denote the cycle set which contains all cycles of length in the range , and denote a cycle set, each of which passes through vertex . For graph D, we partition into by the following Partitioning Operation.
Partitioning Operation |
- 1:
; - 2:
for each do - 3:
In graph D, find cycle set such that contains all directed cycles of length in - 4:
and each cycle in passes through ; - 5:
; - 6:
; - 7:
end for
|
In the Partitioning Operation, we find cycle set
by applying Tarjan’s algorithm for strongly connected components [
42]: find a strongly connected component by the depth-first search starting vertex
on graph
D, where the search depth is at most
L, and then find all cycles passing through
by the backtracking algorithm. It takes
time running Tarjan’s algorithm. By the Partitioning Operation, we obtain
and
. We define
Let
. If we view
z as an extra indeterminate, the sum-product expansion of
can be expressed as follows:
Since each vertex
is mapped to a product
(where
). From expressions (
1) and (
2), we know that if in the expansion expression (
3) of
there is a term which contains
, then
is a polynomial, where the degree of each monomial is
k. By the polynomial construction, we have the following lemma.
Lemma 2. For a given graph D of the p-KEP, there is a solution set S of size k if and only if the polynomial contains a multilinear monomial of degree k.
Proof. (⇒): For a given instance of the p-KEP, assume that S is a solution set of size k and it is comprised of the vertices in s mutually vertex-disjoint cycles of length in range . We use to denote the cycle set and have . Let and , . By the Partitioning Operation, we know that when . Since the cycles in are mutually vertex-disjoint, either or has only one cycle of length in range , we also have when and when is a cycle. Thus, we have . For , let if , or if is a cycle in . It follows from the above definition and expression (1) that is a monomial term in . Let . Since the cycles in are mutually vertex-disjoint and , where is a multilinear monomial of degree k. Hence, by expressions (1), (2) and (3), there is a degree k multilinear monomial in the polynomial .
(⇐): Assume that there is a monomial of the form in the sum-product expansion of , where is a multilinear monomial of degree k. Obviously, is a monomial in . It follows from expressions (1) and (2) that there exists an expression (where is corresponding to a term from ) such that either or for some cycle . Let . Since is a multilinear monomial of degree k, the cycles in are mutually vertex-disjoint. Let denote the degree of monomial , then when , or when , and , namely, . By the Partitioning Operation, the length of each cycle in is in the range . Therefore, the vertex set of is a solution of size k for the p-KEP. ☐
For the p-KEP, we require to decide whether there is a packing S of vertex-disjoint cycles of lengths in the range such that . We can prove the following Lemma 3.
Lemma 3. For a given graph D of the p-KEP, if each polynomial for does not contain any multilinear monomial of degree i, then there does not exist a solution S with for the given instance.
Proof. By Lemma 2, we know that there is no solution of size in range if each polynomial for does not contain any multilinear monomial of degree i. Thus, we only prove there is no solution of size at least by contradiction. Assume that there is a solution S with when each polynomial for does not contain any multilinear monomial of degree i. Suppose that S is comprised of mutually vertex-disjoint cycles of length in range and . Let be the cycle set whose is maximum and . Thus, there is a vertex-disjoint cycle set where and . Otherwise, and it contradicts that for . Thus, is also a solution of size . By Lemma 2, we can get that there is a polynomial containing a multilinear monomial of degree . It contradicts the fact that each polynomial for dose not contain any multilinear monomial of degree i. ☐
Now, we represent the polynomial
by a monotone arithmetic circuit. First, we require
input gates for the variables set
X, variable
z and constant 1. For a directed cycle
C of length in the range
, we represent monomial
by at most
“×” gates. Since there are at most
cycles in
, we need at most
“×” gates and at most
“+” gates to represent all of
for
. At last, we need at most
n “×” gates to represent the products of all
for
. Since
,the size
of the whole circuit is
. Based on Lemmas 1, 2 and 3, we can call the algorithm in [
28] to decide whether in
there is polynomial
for
which contains a multilinear monomial of degree
i. If it exists, then graph
D has a solution for the
p-KEP and return “YES”. Otherwise, it returns “NO”. By Lemma 1, it takes time
to decide whether there exists a polynomial
containing a multilinear monomial of degree
i, and we need do this at most
L times. Hence, the total time of the algorithm is
.
Note that parameter k and constant L are at most n. Therefore, by Lemmas 1, 2, and 3, we obtain clearly the following Theorem 2.
Theorem 2. There is a randomized algorithm of running time for the p-KEP which produces the desired packing in a Yes-instance with high probability.