Next Article in Journal
Optimized Deep Convolutional Neural Networks for Identification of Macular Diseases from Optical Coherence Tomography Images
Next Article in Special Issue
Practical Access to Dynamic Programming on Tree Decompositions
Previous Article in Journal
Secrecy Control of Wireless Networks with Finite Encoding Blocklength
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Randomized Parameterized Algorithms for the Kidney Exchange Problem

1
School of Computer Science and Engineering, Central South University, Changsha 410083, China
2
School of Computer Science and Technology, Hengyang Normal University, Hengyang 421002, China
3
Hunan Provincial Key Laboratory of Intelligent Information Processing and Application, Hengyang 421002, China
4
Department of Computer Science, The University of Texas Rio Grande Valley, Edinburg, TX 78539, USA
*
Author to whom correspondence should be addressed.
Algorithms 2019, 12(2), 50; https://doi.org/10.3390/a12020050
Submission received: 28 December 2018 / Revised: 20 February 2019 / Accepted: 21 February 2019 / Published: 25 February 2019
(This article belongs to the Special Issue New Frontiers in Parameterized Complexity and Algorithms)

Abstract

:
In order to increase the potential kidney transplants between patients and their incompatible donors, kidney exchange programs have been created in many countries. In the programs, designing algorithms for the kidney exchange problem plays a critical role. The graph theory model of the kidney exchange problem is to find a maximum weight packing of vertex-disjoint cycles and chains for a given weighted digraph. In general, the length of cycles is not more than a given constant L (typically 2 L 5 ), and the objective function corresponds to maximizing the number of possible kidney transplants. In this paper, we study the parameterized complexity and randomized algorithms for the kidney exchange problem without chains from theory. We construct two different parameterized models of the kidney exchange problem for two cases L = 3 and L 3 , and propose two randomized parameterized algorithms based on the random partitioning technique and the randomized algebraic technique, respectively.

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 [ 2 , L ] , where L is a given constant and usually 2 L 5 . 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 L 3 , 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 L = 3 , and gave an ( L 1 + ε ) -approximation algorithm for the maximum cycle weight KEP and an ( L / 2 + ε ) -approximation algorithm for the maximum size KEP (for any ε > 0 ). Luo et al. [21] proved three inapproximability results for the KEP in a weighted graph. It is NP-hard to approximate the KEP within 14 13 under a fixed integer L > 3 and within 434 433 when L = 3 . In an unweighted graph, it is NP-hard to approximate the KEP within 698 697 when L = 3 . 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 L = 3 , an O * ( 2 k ) 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 O ( 2 n n 3 ) 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 O ( 2 O ( k 2 ) k 2 k 2 + n ( n + m ) ) 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 L = 3 ), with respect to parameters that correspond to the numbers k 2 and k 3 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 S 1 and S 2 , where the subset S 1 involves only 2-cycle exchanges of P and the subset S 2 involves 3-cycle exchanges of P. Then we can easily find these 2-cycle exchanges in S 1 by transforming it into maximum matching problem and find these 3-cycle exchanges in S 2 by utilizing an existing 3-set-packing algorithm [34]. Hence, we obtain a parameterized algorithm of running time O * ( 4.6 3 k 3 · 2 2 k 2 ) by the random partitioning technique. For the case of L 3 , 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 O * ( 2 ( k + L ) ( k + L ) 2 L 3 n L ) 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.

2. Preliminaries and Problem Definitions

In this paper, all graphs are simple finite graphs. For an undirected graph G, V ( G ) and E ( G ) denote the sets of vertices and edges of G, respectively. When the graph is clear from the context, we write short notations V and E. For two vertices u and v, { u , v } represents the edge between u and v. A matching of G is an edge set where there is no shared vertex between arbitrary two edges. A matching M is said to be maximum if for any other matching M 0 , | M | | M 0 | . For a directed graph D, V ( D ) and A ( G ) denote the sets of vertices and arcs of D, respectively. We use short notations V and A when the graph is clear. For two vertices u and v, ( u , v ) denotes an arc from u to v. For a subset U V , D [ U ] represents the subgraph induced by U in graph D. Suppose that a graph W is a sequence of arcs ( v 1 , v 2 ) , ( v 2 , v 3 ) ,⋯, ( v k 1 , v k ) in a directed graph D. If the vertices v 1 , v 2 , , v k are distinct, then graph W is a directed path. If the vertices v 1 , v 2 , , v k 1 are distinct, v 1 = v k and k 3 , then graph W is a directed cycle. A k-cycle is a cycle of length k.

2.1. Parameterized Complexity

Parameterized complexity, introduced by Downey and Fellows [35], is a two-dimensional framework to measure the complexity of NP-complete problems by a function depending on the input size n and a fixed parameter k. Problems with some fixed parameter k are called parameterized problems. A parameterized problem is called fixed-parameter tractable (FPT) [35,36] if there is an algorithm with running time of the form f ( k ) · n O ( 1 ) , where the f ( k ) is a computable function independent of the input size n.

2.2. KEP Definitions

From the graph theory perspective, the KEP without chains may be modeled as finding a maximum weighted packing of vertex-disjoint cycle in a directed graph D = ( V , A ) , where each vertex corresponds to an incompatible patient-donor pair consisting of a patient and his incompatible donor, each arc ( i , j ) represents that the donor of i is compatible with the patient of j. The weight w i j of each arc ( i , j ) represents the collective benefit of the kidney swap between the patient of j and the donor of i. In kidney exchange without altruistic donors, a donor is willing to donate his kidney if and only if his associated patient receives a kidney. The kidney transplants may proceed in the same cycle of the graph D because each vertex of the cycle is compatible with the donating kidney of the previous vertex. Thus, when a cycle consists of k patient-donor pairs, it is called a k-cycle exchange. Because the length of exchange cycles is restricted for logistical reasons and to avoid risk, for a k-cycle exchange, k does not exceed an integer L ( 2 L 5 ). The kidney exchange problem without chains is defined as follows:
Kidney Exchange Problem without Chains:
Input: Directed graph D = ( V , A ) , arc weight function w : A R + , and positive integer L.
Question: Finding a maximum weighted set of vertex-disjoint cycles with length at most L.
When L = 2 , the KEP becomes the maximum weighted matching problem for an undirected graph G, where V ( G ) = V ( D ) [7]. For two vertices v i , v j V ( G ) there is an edge { v i , v j } E ( G ) in G if there are both arc ( v i , v j ) A ( D ) and ( v j , v i ) A ( D ) in D, and edge weight w ( { v i , v j } ) = w ( v i , v j ) + w ( v j , v i ) . Therefore, we can solve the KEP by utilizing the maximum matching algorithm which has running time O ( | V ( G ) | ( | E ( G ) | + | V ( G ) | log | V ( G ) | ) ) [37]. If L = (i.e., there is no upper bound on the maximum length of a cycle), we can transform the KEP into the maximum weight perfect matching problem of a bipartite graph. The bipartite graph G = ( { V d , V p } , E ) can be constructed in the following way: if vertex v i V ( D ) in digraph D, there are a vertex v i d V d , a vertex v i p V p and an edge { v i d , v i p } E with weight w ( { v i d , v i p } ) = 0 in graph G; if arc ( v i , v j ) A ( D ) ( i j ) in digraph D, there is an edge { v i d , v j p } E with weight w ( { v i d , v j p } ) = w ( v i , v j ) in graph G. If { v i d , v j p } is in the maximum weight perfect matching of graph G and i j , then v i and v j are in the same exchange cycle of D. If { v i d , v i p } is in the maximum weight perfect matching of graph G, then v i is not in any exchange cycle of D. Thus, if there is no upper bound on the length of cycles, the KEP can be transformed into the maximum weight perfect matching problem and solved in polynomial time. When L 3 , the KEP is NP-hard by reducing from the 3D-matching problem [3,4].

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 L = 3 ). The model is defined as follows:
Parameterized KEP L = 3 (p-KEP L = 3 ):
Input: a simple directed graph D = ( V , A ) , and two positive integers k 2 and k 3 ;
Parameter: k 2 and k 3 ;
Question: Is there a packing of vertex-disjoint cycles in D, comprising at least k 2 2-cycles and at least k 3 3-cycles?
Applying random partitioning technique, we design a randomized algorithm for the p-KEP L = 3 . Given an instance ( D , k 2 , k 3 ) of the p-KEP L = 3 , we stochastically divide the vertex set V into two subsets V 2 and V 3 by putting v into V 2 or V 3 with probability 1 / 2 for each vertex v V . When the instance is a Yes-instance, there exists a proper partition such that k 2 2-cycles are in D [ V 2 ] and k 3 3-cycles are in D [ V 3 ] . We can easily find a packing with k 2 vertex-disjoint 2-cycles in D [ V 2 ] through transforming into the maximum matching problem of an undirected graph and invoking the corresponding algorithm, and find a packing with k 3 vertex-disjoint 3-cycles in D [ V 3 ] by transforming into the 3-set-packing problem and invoking the corresponding algorithm. Algorithm 1 RKEP ( D , k 2 , k 3 ) is the detailed randomized algorithm of the p-KEP L = 3 based on the random partitioning technique, where c is a constant which is applied to adjust the probability that Algorithm RKEP ( D , k 2 , k 3 ) fails.
Algorithm 1 RKEP ( D , k 2 , k 3 )
Input: a directed graph D = ( V , A ) , positive integer c, and two positive integers k 2 and k 3 ;
Output: a packing of vertex-disjoint cycles in D, comprising at least k 2 2-cycles and at least k 3 3-cycles, otherwise return no solution exists.
1:  
t i m e s =0;
2:  
while t i m e s c · 2 3 k 3 + 2 k 2 do
3:  
      t i m e s = t i m e s + 1 ;
4:  
      V 2 = V 3 = ;
5:  
     for all v V do
6:  
          put v into V 2 or V 3 with probability 1 / 2 ;
7:  
     end for
8:  
     for the induced subgraph D [ V 2 ] , find a packing P 2 of at least k 2 vertex-disjoint 2-cycles;
9:  
     if no P 2 exists then
10:
          goto next loop iteration;
11:
     end if
12:
     for the induced subgraph D [ V 3 ] , find a packing P 3 of at least k 3 vertex-disjoint 3-cycles;
13:
     if no P 3 exists then
14:
          goto next loop iteration;
15:
     end if
16:
     return P 2 P 3 ;
17:
end while
18:
return no solution exists;
Theorem 1.
For the p-KEP L = 3 , there exists a randomized algorithm of running time O * ( 4.6 3 k 3 · 2 2 k 2 ) which, for any given constant c > 0 , produces the desired packing in a Yes-instance with probability at least 1 1 e c .
Proof. 
For the p-KEP L = 3 , if an instance ( D , k 2 , k 3 ) is a No-instance, then no matter how the vertex set V is split, we cannot find a required packing in V 2 and V 3 . Thus, no solution to the p-KEP L = 3 will be returned in line 18 of Algorithm RKEP ( D , k 2 , k 3 ) .
Now assume that the given instance ( D , k 2 , k 3 ) is a Yes-instance and P is a solution to the p-KEP L = 3 . Then there are k 2 vertex-disjoint 2-cycles and k 3 vertex disjoint 3-cycles in D [ P ] . Let P 2 and P 3 be the vertex sets of k 2 vertex-disjoint 2-cycles and k 3 vertex disjoint 3-cycles, respectively. Thus, | P 2 | = 2 k 2 and | P 3 | = 3 k 3 . By random partitioning, if the vertex set V can be correctly divided into V 2 and V 3 such that P 2 V 2 and P 3 V 3 , then we can obtain P 2 by maximum matching algorithm for V 2 in line 8 and obtain P 3 by 3-set-packing algorithm for V 3 in line 12. Thus in line 16, P 2 P 3 can be correctly returned.
We analyze the probability that RKEP ( D , k 2 , k 3 ) fails to find a packing P in D. Since each vertex v V is put into V 2 or V 3 with probability 1 / 2 in each while loop, the vertices V 2 and V 3 can be correctly partitioned in line 5–7 with probability ( 1 2 ) 2 k 2 · ( 1 2 ) 3 k 3 = 2 2 k 2 3 k 3 . Thus, the probability in each loop iteration is 1 2 2 k 2 3 k 3 such that there exists at least one vertex v P 2 which is put into V 3 or at least one vertex u P 3 which is put into V 2 . Hence, after executing c · 2 2 k 2 + 3 k 3 loops, the probability that P 2 and P 3 are not divided correctly is ( 1 2 2 k 2 3 k 3 ) c · 2 2 k 2 + 3 k 3 = ( ( 1 1 2 2 k 2 + 3 k 3 ) 2 2 k 2 + 3 k 3 ) c 1 e c . Therefore, by the random partitioning operation, there exist P 2 V 2 and P 3 V 3 with a probability at least 1 1 e c .
We analyze the running time of RKEP ( D , k 2 , k 3 ) . In each loop iteration, lines 5–7 run in O ( | V ( D ) | ) time. For line 8, we transform it into the maximum matching problem of an undirected graph G. Graph G can be constructed in time O ( | V 2 | 2 ) in the following way: Let V ( G ) = V 2 . For v i , v j V 2 , if ( v i , v j ) A ( D [ V 2 ] ) and ( v j , v i ) A ( D [ V 2 ] ) , then there is an edge { v i , v j } E ( G ) . Line 8 takes O ( | E ( G ) | | V 2 | ) time by applying Edmonds’ algorithm [39] for the maximum matching problem of graph G. For line 12, we find a packing of k 3 vertex-disjoint 3-cycles in V 3 by transforming into the 3-set-packing problem and invoking the corresponding algorithm in O * ( 2.3 3 k 3 ) [34]. Thus, the running time of Algorithm 1 RKEP ( D , k 2 , k 3 ) is O * ( 4.6 3 k 3 · 2 2 k 2 ) . ☐

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 L 3 parameterized by the size of kidney transplants. The parameterized model is defined as follows:
Parameterized KEP (p-KEP):
Input: a simple directed graph D = ( V , A ) , and a positive integer k;
Parameter:k;
Question: In graph D, is there a packing S of vertex-disjoint cycles such that | V ( S ) | k and the length of each cycle is in the range [ 2 , L ] ?
Here, L is a fixed integer at least 3. For an integer t and a packing S, if | V ( S ) | = t and t k , 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 O * ( 2.3 3 k ) algorithm for the 3-set k-packing problem [34] and the randomized algorithm with time O * ( 2 m k ) 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 [ 2 , L ] . 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 O ( 1.657 n ) for the Hamiltonian path problem [26], which resolves the open problem for half of a century whether there exists an O ( c n ) time algorithm with some constant c < 2 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 x 1 i 1 x 2 i 2 x k i k whose degree is j = 1 k i j is called multilinear if each i j ( 1 j k ) 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 P ( X ) 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 P ( X , z ) be a polynomial represented by a monotone arithmetic circuit of size s ( n ) . Assume that the sum-product expansion of P ( X , z ) is expressed the form i N Q i ( X ) z i . There is a randomized algorithm that on every P ( X , z ) runs O * ( 2 k t 2 s ( n ) ) time, outputs "YES" with high probability if Q t ( X ) 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 Q t ( X ) .
Our algorithm for the p-KEP relies on Lemma 1. For a given directed graph D = ( V , A ) of the p-KEP, we construct a suitable polynomial P ( X , z ) such that for a positive integer k, the coefficient of z k is a polynomial Q k ( X ) in the sum-product expansion of P ( X , z ) , the degree of each monomial in Q k ( X ) is k, and each multilinear monomial in Q k ( X ) maps to a packing of vertex-disjoint cycle in D = ( V , A ) . Hence, we can prove that there is a solution set S of size k for the p-KEP if and only if Q k ( X ) 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 D = ( V , A ) , let vertex set V = { v 1 , v 2 , , v n } , variable set X = { x 1 , x 2 , , x n } and z be an extra variable. There is a one-to-one mapping relationship between V and X which each vertex v i V is mapped to a product z x i for i = 1 , , n . If v i 1 v i j v i 1 form a directed cycle C in graph D, then define a monomial π ( C ) = z x i 1 z x i j = z | V ( C ) | x i 1 x i j . In graph D, let C denote the cycle set which contains all cycles of length in the range [ 2 , L ] , and C ( v i ) denote a cycle set, each of which passes through vertex v i . For graph D, we partition C into C ( v 1 ) , C ( v 2 ) , , C ( v n ) by the following Partitioning Operation.
Partitioning Operation
1:
C = ;
2:
for each v i V do
3:
     In graph D, find cycle set C ( v i ) such that C ( v i ) contains all directed cycles of length in [ 2 , L ]
4:
         and each cycle in C ( v i ) passes through v i ;
5:
      C = C C ( v i ) ;
6:
      D = D [ V ( D ) { v i } ] ;
7:
end for
In the Partitioning Operation, we find cycle set C ( v i ) by applying Tarjan’s algorithm for strongly connected components [42]: find a strongly connected component by the depth-first search starting vertex v i on graph D, where the search depth is at most L, and then find all cycles passing through v i by the backtracking algorithm. It takes O ( | V | + | E | ) time running Tarjan’s algorithm. By the Partitioning Operation, we obtain C ( v 1 ) , C ( v 2 ) , , C ( v n ) and C . We define
p ( C ( v i ) ) = 1 , i f C ( v i ) = ; 1 + C C ( v i ) π ( C ) , i f C ( v i ) .
P ( C ) = i = 1 n p ( C ( v i ) ) .
Let P ( X , z ) = P ( C ) . If we view z as an extra indeterminate, the sum-product expansion of P ( X , z ) can be expressed as follows:
P ( X , z ) = 1 + t = 1 n Q t ( X ) z t .
Since each vertex v i V is mapped to a product z x i (where x i X ). From expressions (1) and (2), we know that if in the expansion expression (3) of P ( X , z ) there is a term which contains z k , then Q k ( X ) 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 Q k ( X ) 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 [ 2 , L ] . We use C to denote the cycle set and have C C . Let { C i } = C C ( v i ) and s i = | V ( { C i } ) | , 1 i n . By the Partitioning Operation, we know that C ( v i ) C ( v j ) = when i j . Since the cycles in C are mutually vertex-disjoint, either { C i } = or { C i } has only one cycle C i of length in range [ 2 , L ] , we also have s i = 0 when { C i } = and s i = | V ( C i ) | when C i is a cycle. Thus, we have i = 1 n s i = k . For 1 i n , let p ( C i ) = 1 if { C i } = , or p ( C i ) = π ( C i ) if C i is a cycle in C ( v i ) . It follows from the above definition and expression (1) that p ( C i ) is a monomial term in p ( C ( v i ) ) . Let p ( C ) = i = 1 n p ( C i ) . Since the cycles in C are mutually vertex-disjoint and i = 1 n s i = k , p ( C ) = z k q ( X ) where q ( X ) is a multilinear monomial of degree k. Hence, by expressions (1), (2) and (3), there is a degree k multilinear monomial q ( X ) in the polynomial Q k ( X ) .
(⇐): Assume that there is a monomial of the form z k q ( X ) in the sum-product expansion of P ( X , z ) , where q ( X ) is a multilinear monomial of degree k. Obviously, q ( X ) is a monomial in Q k ( X ) . It follows from expressions (1) and (2) that there exists an expression z k q ( X ) = i = 1 n p i (where p i is corresponding to a term from p ( C ( v i ) ) ) such that either p i = 1 or p i = π ( C i ) for some cycle C i C ( v i ) . Let C = { C i | p i 1 , p i = π ( C i ) , 1 i n } . Since q ( X ) is a multilinear monomial of degree k, the cycles in C are mutually vertex-disjoint. Let s i denote the degree of monomial p i , then s i = 0 when p i = 1 , or s i = | V ( C i ) | when p i 1 , and i = 1 n s i = k , namely, C C | V ( C ) | = k . By the Partitioning Operation, the length of each cycle in C is in the range [ 2 , L ] . Therefore, the vertex set of C 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 [ 2 , L ] such that | V ( S ) | k . We can prove the following Lemma 3.
Lemma 3.
For a given graph D of the p-KEP, if each polynomial Q i ( X ) for k i k + L 1 does not contain any multilinear monomial of degree i, then there does not exist a solution S with | V ( S ) | k for the given instance.
Proof. 
By Lemma 2, we know that there is no solution of size in range [ k , k + L 1 ] if each polynomial Q i ( X ) for k i k + L 1 does not contain any multilinear monomial of degree i. Thus, we only prove there is no solution of size at least k + L by contradiction. Assume that there is a solution S with | V ( S ) | k + L when each polynomial Q i ( X ) for k i k + L 1 does not contain any multilinear monomial of degree i. Suppose that S is comprised of mutually vertex-disjoint cycles C 1 , C 2 , , C l of length in range [ 2 , L ] and S = { C 1 , C 2 , , C l } . Let S m a x < k S be the cycle set whose | V ( S m a x < k ) | is maximum and | V ( S m a x < k ) | < k . Thus, there is a vertex-disjoint cycle set S = S m a x < k { C i } where C i S S m a x < k and | V ( S ) | [ k , k + L 1 ] . Otherwise, | V ( C i ) | > L and it contradicts that | V ( C i ) | [ 2 , L ] for 1 i l . Thus, S is also a solution of size | V ( S ) | [ k , k + L 1 ] . By Lemma 2, we can get that there is a polynomial Q | V ( S ) | ( X ) containing a multilinear monomial of degree | V ( S ) | . It contradicts the fact that each polynomial Q i ( X ) for k i k + L 1 dose not contain any multilinear monomial of degree i. ☐
Now, we represent the polynomial P ( X , z ) by a monotone arithmetic circuit. First, we require n + 2 input gates for the variables set X, variable z and constant 1. For a directed cycle C of length in the range [ 2 , L ] , we represent monomial π ( C ) by at most ( L 1 ) “×” gates. Since there are at most i = 2 L n i cycles in C , we need at most ( L 1 ) i = 2 L n i “×” gates and at most n + i = 2 L n i “+” gates to represent all of p ( C ( v j ) ) for 1 j n . At last, we need at most n “×” gates to represent the products of all p ( C ( v j ) ) for 1 j n . Since i = 2 L n i = O ( L n L ) ,the size s ( n ) of the whole circuit is O ( L 2 n L ) . Based on Lemmas 1, 2 and 3, we can call the algorithm in [28] to decide whether in P ( X , z ) there is polynomial Q i ( X ) for k i k + L 1 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 O * ( 2 i i 2 L 2 n L ) to decide whether there exists a polynomial Q i ( X ) containing a multilinear monomial of degree i, and we need do this at most L times. Hence, the total time of the algorithm is T ( n ) = O * ( 2 ( k + L ) ( k + L ) 2 L 3 n L ) .
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 O * ( 2 ( k + L ) ( k + L ) 2 L 3 n L ) for the p-KEP which produces the desired packing in a Yes-instance with high probability.

5. Conclusions

We develop two randomized algorithms for the p-KEP L = 3 and the p-KEP. By stochastically partitioning the vertex set V into two subsets V 2 and V 3 which respectively contains 2-cycle or 3-cycle exchanges of the solution for a given instance, we propose a randomized algorithm of running time O * ( 4.6 3 k 3 · 2 2 k 2 ) for the p-KEP L = 3 . By applying the randomized algebraic technique, we transform the p-KEP into the multilinear monomial detection problem, and obtain the other randomized algorithm which can be executed in time O * ( 2 ( k + L ) ( k + L ) 2 L 3 n L ) . Both algorithms improve previous theoretical running-time bounds for the KEP. Our algorithms can be extended to the case where the KEP involves chain exchanges of length bounded by a fixed constant by viewing each altruistic donor as a patient-donor pair whose patient is compatible with each donor of other incompatible patient-donor pairs, but not compatible with other altruistic donor. They will be interesting to further extend the algebraic technique to maximum weight variants of the KEP with and without chains, and study the effectiveness of the two algorithms on realistic instances.
In fact, patients’ autonomy and their individual optimality criteria are critical factors which we should consider in the kidney exchange problem. The game-theoretical approaches were introduced in [43,44] and [6] to study the kidney exchange problem. In these kidney exchange game models, there also exist a lot of NP-complete problems [14,45,46,47]. Developing randomized methods for those NP-complete problems is also an interesting research topic for the future research.

Author Contributions

Conceptualization, M.L. and J.W.; methodology, M.L., J.W., Q.F. and B.F.; formal analysis, M.L. and B.F.; writing–original draft preparation, M.L. and B.F.; writing–review and editing, M.L., J.W. and Q.F.; project administration, J.W.; funding acquisition, J.W., Q.F. and B.F.

Funding

This work was supported in part by the National Natural Science Foundation of China under Grants 61772179, 61672536, 61872450, 61420106009, and 61503128, in part by Hunan Provincial Natural Science Foundation of China under Grant 2019JJ40005, in part by the Scientific Research Fund of Hunan Provincial Education Department under Grant 17C0222, in part by Application-oriented Special Disciplines, Double First-Class University Project of Hunan Province(Xiangjiaotong [2018] 469), and in part by the Science and Technology Plan Project of Hunan Province under Grant 2016TP1020.

Acknowledgments

We are grateful to the reviewers for their valuable and helpful comments which lead to the improvement of this paper.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
KEPKidney Exchange Problem
IPInteger Programming
FPTFixed-Parameter Tractable

References

  1. Rapaport, F.T. The case for a living emotionally related international kidney donor exchange registry. Transpl. Proc. 1986, 18, 5–9. [Google Scholar]
  2. Constantino, M.; Klimentova, X.; Viana, A.; Rais, A. New insights on integer-programming models for the kidney exchange problem. Eur. J. Oper. Res. 2013, 231, 57–68. [Google Scholar] [CrossRef] [Green Version]
  3. Abraham, D.J.; Blum, A.; Sandholm, T. Clearing algorithms for barter exchange markets: enabling nationwide kidney exchanges. In Proceedings of the 8th ACM Conference on Electronic Commerce, San Diego, CA, USA, 11–15 June 2007; pp. 295–304. [Google Scholar]
  4. Biró, P.; Manlove, D.F.; Rizzi, R. Maximum weight cycle packing in directed graphs, with application to kidney exchange programs. Discrete Math. Algorithms Appl. 2009, 1, 499–517. [Google Scholar] [CrossRef]
  5. Roth, A.E.; Sönmez, T.; Ünver, M.U. Efficient kidney exchange: Coincidence of wants in markets with compatibility-based preferences. Am. Econ. Rev. 2007, 97, 828–851. [Google Scholar] [CrossRef] [PubMed]
  6. Roth, A.E.; Sönmez, T.; Ünver, M.U. Kidney exchange. Q. J. Econ. 2004, 119, 457–488. [Google Scholar] [CrossRef]
  7. Segev, D.L.; Gentry, S.E.; Warren, D.S.; Reeb, B.; Montgomery, R.A. Kidney paired donation and optimizing the use of live donor organs. JAMA 2005, 293, 1883–1890. [Google Scholar] [CrossRef] [PubMed]
  8. Xiao, M.; Wang, X. Exact algorithms and complexity of kidney exchange. In Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence, Stockholm, Sweden, 13–19 July 2018; pp. 555–561. [Google Scholar]
  9. Ashlagi, I.; Gilchrist, D.S.; Roth, A.E.; Rees, M.A. Nonsimultaneous chains and dominos in kidney-paired donation–Revisited. Am. J. Transpl. 2011, 11, 984–994. [Google Scholar] [CrossRef] [PubMed]
  10. Glorie, K.M.; van de Klundert, J.J.; Wagelmans, A.P.M. Kidney exchange with long chains: an efficient pricing algorithm for clearing barter exchanges with branch-and-price. Manuf. Serv. Oper. Manag. 2014, 16, 498–512. [Google Scholar] [CrossRef]
  11. Anderson, R.; Ashlagi, I.; Gamarnik, D.; Roth, A.E. Finding long chains in kidney exchange using the traveling salesman problem. Proc. Natl. Acad. Sci. USA 2015, 112, 663–668. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  12. Manlove, D.F.; O’malley, G. Paired and altruistic kidney donation in the UK: algorithms and experimentation. J. Exp. Algorithmics 2015, 19, 6:1–6:21. [Google Scholar] [CrossRef]
  13. Gentry, S.E.; Montgomery, R.A.; Segev, D.L. Kidney paired donation: Fundamentals, limitations, and expansions. Am. J. Kidney Dis. 2011, 57, 144–151. [Google Scholar] [CrossRef] [PubMed]
  14. Huang, C. Circular stable matching and 3-way kidney transplant. Algorithmica 2010, 58, 137–150. [Google Scholar] [CrossRef]
  15. Barnhart, C.; Johnson, L.E.; Nemhauser, G.L.; Savelsbergh, M.W.; Vance, P.H. Branch-and-price: column generation for solving huge integer programs. Oper. Res. 1998, 46, 316–329. [Google Scholar] [CrossRef]
  16. Klimentova, X.; Alvelos, F.; Viana, A. A new branch-and-price approach for the kidney exchange problem. In Proceedings of the 14th International Conference on Computational Science and Its Applications, Guimarães, Portugal, 30 June–3 July 2014; pp. 237–252. [Google Scholar]
  17. Dantzig, G.; Wolfe, P. Decomposition principle for linear programs. Oper. Res. 1960, 8, 101–111. [Google Scholar] [CrossRef]
  18. Dickerson, J.P.; Manlove, D.F.; Plaut, B.; Sandholm, T.; Trimble, J. Position-indexed formulations for kidney exchange. In Proceedings of the 2016 ACM Conference on Economics and Computation, Maastricht, The Netherlands, 24–28 July 2016; pp. 25–42. [Google Scholar]
  19. Mak-Hau, V. A polyhedral study of the cardinality constrained multi-cycle and multi-chain problem on directed graphs. Comput. Oper. Res. 2018, 99, 13–26. [Google Scholar] [CrossRef]
  20. Mak-Hau, V. On the kidney exchange problem: Cardinality constrained cycle and chain problems on directed graphs: A survey of integer programming approaches. J. Comb. Optim. 2017, 33, 35–59. [Google Scholar] [CrossRef]
  21. Luo, S.; Tang, P.; Wu, C.; Zeng, J. Approximation of barter exchanges with cycle length constraints. arXiv, 2018; arXiv:1605.08863. [Google Scholar]
  22. Jia, Z.; Tang, P.; Wang, R.; Zhang, H. Efficient near-optimal algorithms for barter exchange. In Proceedings of the 16th Conference on Autonomous Agents and MultiAgent Systems, São Paulo, Brazil, 8–12 May 2017; pp. 362–370. [Google Scholar]
  23. Dickerson, J.P.; Kazachkov, A.M.; Procaccia, A.D.; Sandholm, T. Small representations of big kidney exchange graphs. In Proceedings of the 31st AAAI Conference on Artificial Intelligence, San Francisco, CA, USA, 4–9 February 2017; pp. 487–493. [Google Scholar]
  24. Chen, J.; Liu, Y.; Lu, S.; Sze, S.H.; Zhang, F. Iterative expansion and color coding: An improved algorithm for 3D-matching. ACM T. Algorithms 2012, 8, 6. [Google Scholar] [CrossRef]
  25. Feng, Q.; Wang, J.; Li, S.; Chen, J. Randomized parameterized algorithms for P2-Packing and Co-Path Packing problems. J. Comb. Optim. 2015, 29, 125–140. [Google Scholar] [CrossRef]
  26. Björklund, A. Determinant sums for undirected hamiltonicity. In Proceedings of the 51th Annual IEEE Symposium on Foundations of Computer Science, Las Vegas, NV, USA, 23–26 October 2010; pp. 173–182. [Google Scholar]
  27. Koutis, I. Faster algebraic algorithms for path and packing problems. In Proceedings of the 35th International Colloquium on Automata, Languages and Programming, Reykjavik, Iceland, 7–11 July 2008; pp. 575–586. [Google Scholar]
  28. Koutis, I.; Williams, R. Limits and applications of group algebras for parameterized problems. In Proceedings of the 36th International Colloquium on Automata, Languages and Programming, Rhodos, Greece, 5–12 July 2009; pp. 653–664. [Google Scholar]
  29. Williams, R. Finding paths of length k in O*(2k) time. Inform. Process. Lett. 2009, 109, 315–318. [Google Scholar] [CrossRef]
  30. Assadi, S.; Khanna, S.; Li, Y. The stochastic matching problem with (very) few queries. In Proceedings of the 2016 ACM Conference on Economics and Computation, Maastricht, Netherlands, 24–28 July 2016; pp. 43–60. [Google Scholar]
  31. Chen, N.; Immorlica, N.; Karlin, A.R.; Mahdian, M.; Rudra, A. Approximating matches made in heaven. Proceedings of 36th International Colloquium on Automata, Languages and Programming, Rhodes, Greece, 5–12 July 2009; pp. 266–278. [Google Scholar]
  32. Awasthi, P.; Sandholm, T. Online stochastic optimization in the large: Application to kidney exchange. In Proceedings of the 21st International Joint Conference on Artificial Intelligence, Pasadena, CA, USA, 11–17 July 2009; pp. 405–411. [Google Scholar]
  33. Fang, W.; Filos-Ratsikas, A.; Frederiksen, S.K.S.; Tang, P.; Zuo, S. Randomized assignments for barter exchanges: Fairness vs. In efficiency. In Proceedings of the 4th International Conference on Algorithmic Decision Theory, Lexington, KY, USA, 27–30 September 2015; pp. 537–552. [Google Scholar]
  34. Goyal, P.; Misra, N.; Panolan, F.; Zehavi, M. Deterministic algorithms for matching and packing problems based on representative sets. SIAM J. Discrete Math. 2015, 29, 1815–1836. [Google Scholar] [CrossRef]
  35. Downey, R.G.; Fellows, M.R. Parameterized Complexity; Springer: Berlin, Germany, 1999. [Google Scholar]
  36. Cygan, M.; Fomin, F.V.; Kowalik, Ł.; Lokshtanov, D.; Marx, D.; Pilipczuk, M.; Pilipczuk, M.; Saurabh, S. Parameterized Algorithms; Springer: Berlin, Germany, 2015. [Google Scholar]
  37. Gabow, H.N. Data structures for weighted matching and nearest common ancestors with linking. In Proceedings of the 1st Annual ACM-SIAM Symposium on Discrete Algorithms, San Francisco, CA, USA, 22–24 January 1990; pp. 434–443. [Google Scholar]
  38. Hanto, R.L.; Saidman, S.; Roth, A.E.; Delmonico, F. The evolution of a successful kidney paired donation program. Transplantation 2010, 90, 940. [Google Scholar] [CrossRef]
  39. Edmonds, J. Maximum matching and a polyhedron with 0, 1-vertices. J. Res. Nat. Bur. Stand. Sec. B 1965, 69, 125–130. [Google Scholar] [CrossRef]
  40. Björklund, A.; Husfeldt, T.; Kaski, P.; Koivisto, M. Narrow sieves for parameterized paths and packings. J. Comput. Syst. Sci. 2017, 87, 119–139. [Google Scholar] [CrossRef] [Green Version]
  41. Fomin, F.V.; Lokshtanov, D.; Raman, V.; Saurabh, S.; Rao, B.V.R. Faster algorithms for finding and counting subgraphs. J. Comput. Syst. Sci. 2012, 78, 698–706. [Google Scholar] [CrossRef] [Green Version]
  42. Tarjan, R. Depth-First Search and Linear Graph Algorithms. SIAM J. Comput. 1972, 1, 146–160. [Google Scholar] [CrossRef] [Green Version]
  43. Cechlárová, K.; Fleiner, T.; Manlove, D.F. The kidney exchange game. In Proceedings of the 8th International Symposium on Operational Research, Nova Gorica, Slovenia, Balkans, 28–30 September 2005; pp. 77–83. [Google Scholar]
  44. Cechlárová, K.; Biró, P. Inapproximability of the kidney exchange problem. Inform. Process. Lett. 2007, 101, 199–202. [Google Scholar] [Green Version]
  45. Biró, P.; McDermid, E. Three-sided stable matchings with cyclic preferences. Algorithmica 2010, 58, 5–18. [Google Scholar] [CrossRef]
  46. Cechlárová, K.; Lacko, V. The kidney exchange problem: How hard is it to find a donor? Ann. Oper. Res. 2012, 193, 255–271. [Google Scholar] [CrossRef]
  47. Mészáros-Karkus, Z. Hardness results for stable exchange problems. Theor. Comput. Sci. 2017, 670, 68–78. [Google Scholar] [CrossRef]

Share and Cite

MDPI and ACS Style

Lin, M.; Wang, J.; Feng, Q.; Fu, B. Randomized Parameterized Algorithms for the Kidney Exchange Problem. Algorithms 2019, 12, 50. https://doi.org/10.3390/a12020050

AMA Style

Lin M, Wang J, Feng Q, Fu B. Randomized Parameterized Algorithms for the Kidney Exchange Problem. Algorithms. 2019; 12(2):50. https://doi.org/10.3390/a12020050

Chicago/Turabian Style

Lin, Mugang, Jianxin Wang, Qilong Feng, and Bin Fu. 2019. "Randomized Parameterized Algorithms for the Kidney Exchange Problem" Algorithms 12, no. 2: 50. https://doi.org/10.3390/a12020050

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop