Randomized Parameterized Algorithms for the Kidney Exchange Problem

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.


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 2k 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 3k 3 • 2 2k 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 Sections 3 and 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.

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

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.

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 ij 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 Therefore, we can solve the KEP by utilizing the maximum matching algorithm which has running time [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 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 id , v ip } 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].

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 put v into V 2 or V 3 with probability 1/2; for the induced subgraph D[V 3 ], find a packing P 3 of at least k 3 vertex-disjoint 3-cycles; 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 3k 3 • 2 2k 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 | = 2k 2 and |P 3 | = 3k 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 ( 12 Thus, the probability in each loop iteration is 1 − 2 −2k 2 −3k 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 2k 2 +3k 3 loops, the probability that P 2 and P 3 are not divided correctly is (1 . 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.

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: 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 3k ) algorithm for the 3-set k-packing problem [34] and the randomized algorithm with time O * (2 mk ) 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 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 and z be an extra variable.There is a one-to-one mapping relationship between V and X which each vertex (1) 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: Since each vertex v i ∈ V is mapped to a product zx 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 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 ) = ∏ n i=1 p(C i ).Since the cycles in C are mutually vertex-disjoint and ∑ n i=1 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) = ∏ n i=1 p i (where p i is corresponding to a term from p(C(v i ))) such that either p i = 1 or ) 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 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 . 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 ∑ L i=2 ( n i ) cycles in C, we need at most (L − 1) ∑ L i=2 ( n i ) "×" gates and at most n + ∑ L i=2 ( 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 ∑ L i=2 ( n i ) = O(Ln 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 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.

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 3k 3 • 2 2k 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.

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: times=0; 2: while times ≤ c • 2 3k 3 +2k 2 do 3: times = times + 1; 4: subgraph D[V 2 ], find a packing P 2 of at least k 2 vertex-disjoint 2-cycles; 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]?

3 :
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 partitionC into C(v 1 ), C(v 2 ), • • • , C(v n ) by the following Partitioning Operation.Partitioning Operation1: C = ∅; 2: for each v i ∈ V doIn 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 forIn 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