An Algorithm Based on Connectivity Properties for Finding Cycles and Paths on Kidney Exchange Compatibility Graphs
Abstract
:1. Introduction
2. Literature Review
2.1. Cycle-Only Formulations
2.2. Cycle-and-Chain Formulations
2.3. Column and Constraint Generation Algorithms
2.4. Other KEP Studies
3. Problem Description
4. New Arc-Based Formulations
4.1. Strong Connectivity
4.2. Partitioned Edge Formulation (*PE)
4.3. Partitioned and Reduced Edge Formulation (*PRE)
4.3.1. SCC-Based Search for Length-k Paths
Algorithm 1 SCC-based search for finding paths of length k in a KEP graph |
|
4.3.2. Tournament Inequalities
4.4. The Reduced Exponential-Sized SPLIT Formulation (*ReSPLIT)
4.5. Model Properties
5. Solution Algorithms
5.1. The *PE Formulation
5.2. The *PRE and *ReSPLIT Formulations
Algorithm 2 Removing unnecessary arcs and paths in subgraph |
|
6. Results
6.1. Description of Database Instances
6.2. Experimental Conditions
6.3. Description of Comparison Algorithms
6.4. Evaluation Metrics
- PDPsR: Range for the number of PDPs after grouping ten instances in non-decreasing order of PDPs. This value is represented by an interval [b,u], written as b-u in the output tables, where b(u) represents the smallest (largest) number of PDPs found in the specific subset.
- NDDsR: Interval for the number of NDDs after grouping the instances into sets of ten in non-decreasing order of PDPs. Again, this value is represented by an interval b-u, where b(u) represents the smallest (largest) number of NDDs found in the specific subset.
- *PRE(i): Partitioned and reduced edge formulation when the node selection strategy for the SCC-based search algorithm uses the maximum in-degree.
- nf: Number of subproblems that failed to obtain a feasible solution, either because CPLEX was unable to solve the initial LP relaxation after the time limit or because CPLEX displayed an out-of-memory status before the start of branching. The notation () indicates that there were and instances in which no feasible solutions were found because of the former and latter cases, respectively.
- aVars: Average number of variables in a formulation for a subset of instances.
- saVars: Relative decrease in the number of variables passing from the edge formulation to the *PE or *PRE(i) formulations. The former is provided by
- aCons: Average number of constraints for a set of instances. In the case of the AA and the PC-TSP formulations, the violated lazy constraints added throughout the solution process are included.
- saCons: Relative decrease in the number of constraints passing from the edge formulation to the *PE or *PRE(i) formulations. The former is provided by
- nSCC: Average number of strongly connected components (subproblems) in which the graphs of each set of instances are split into their separate components.
- SCCp(i): Average number of constraints for a set of instances of the *PRE(i) formulation before preprocessing (discussed in Section 5.2), and using the maximum in-degree strategy in Algorithm 1.
- sSCCp(i): Relative decrease in the number of constraints passing from the edge formulation to the *PRE(i) formulation before preprocessing, provided by the expression
- tc and tp: Time to find feasible cycles in order to determine the variables needed in the cycle formulation and time to find length-K paths in each formulation, respectively. To search for feasible cycles, we implemented an adaptation of Johnson’s algorithm [46].
- tsep: Average time needed to find and add all the violated lazy constraints to the AA and PC-TSP formulations.
- tr: Average time needed to perform the preprocessing step (discussed in Section 5.2).
- time: Average runtime in seconds to reach the best feasible solution for a set of instances. The runtime limit was set to 1800 s for all formulations. Note that the *PE and *PRE formulations split the original problem into independent subproblems; thus, the times reported for those formulations are the sum of times for all subproblems.
- opt: Number of instances solved to optimality. In all cases, the objective function is the weighted arc sum. Whenever this column does not appear in the output tables, it is because all instances were solved to optimality.
- gap: Average relative optimality gap associated with a formulation, defined by , where is the upper bound provided by the linear relaxation of the formulation and is either the optimal value, or the best lower bound that could be found when the optimal value was unknown. This column does not appear when all instances were solved to optimality.
6.5. Assessment of Cycle-Variant Formulations
6.6. Assessment of Cycle-and-Chain Variant Formulations
7. Summary and Conclusions
7.1. Main Findings
7.2. Discussion of Future Work
Author Contributions
Funding
Data Availability Statement
Acknowledgments
Conflicts of Interest
References
- Ross, L.F.; Rubin, D.T.; Siegler, M.; Josephson, M.A.; Thistlethwaite, J.R.; Woodle, E.S. Ethics of a paired-kidney exchange program. N. Engl. J. Med. 1997, 336, 1752–1755. [Google Scholar] [CrossRef] [PubMed]
- Delmonico, F.L. Exchanging kidneys—Advances in living-donor transplantation. N. Engl. J. Med. 2004, 350, 1812–1814. [Google Scholar] [CrossRef] [PubMed]
- Roth, A.E.; Sönmez, T.; Ünver, M.U. Kidney exchange. Q. J. Econ. 2004, 119, 457–488. [Google Scholar] [CrossRef]
- Roth, A.E.; Sönmez, T.; Ünver, M.U. Pairwise kidney exchange. J. Econ. Theory 2005, 125, 151–188. [Google Scholar] [CrossRef]
- Roth, A.E.; Sönmez, T.; Ünver, M.U. A kidney exchange clearinghouse in New England. Am. Econ. Rev. 2005, 95, 376–380. [Google Scholar] [CrossRef]
- Anderson, R.; Ashlagi, I.; Gamarnik, D.; Rees, M.; Roth, A.E.; Sönmez, T.; Ünver, M.U. Kidney exchange and the alliance for paired donation: Operations research changes the way kidneys are transplanted. Interfaces 2015, 45, 26–42. [Google Scholar] [CrossRef]
- Gentry, S.E.; Montgomery, R.A.; Swihart, B.J.; Segev, D.L. The roles of dominos and nonsimultaneous chains in kidney paired donation. Am. J. Transplant. 2009, 9, 1330–1336. [Google Scholar] [CrossRef]
- 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]
- Ashlagi, I.; Gilchrist, D.S.; Roth, A.E.; Rees, M.A. Nonsimultaneous chains and dominos in kidney-paired donation—Revisited. Am. J. Transplant. 2011, 11, 984–994. [Google Scholar] [CrossRef]
- Dickerson, J.P.; Procaccia, A.D.; Sandholm, T. Optimizing kidney exchange with transplant chains: Theory and reality. In Proceedings of the 11th International Conference on Autonomous Agents and Multiagent Systems (AAMAS’12), Volume 2, Valencia, Spain, 4–8 June 2012; International Foundation for Autonomous Agents and Multiagent System: Richland, SC, USA, 2012; pp. 711–718. [Google Scholar]
- 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]
- Edmonds, J. Paths, trees, and flowers. Can. J. Math. 1965, 17, 449–467. [Google Scholar] [CrossRef]
- Biró, P.; Manlove, D.F.; Rizzi, R. Maximum weight cycle packing in directed graphs, with application to kidney exchange programs. Discret. Math. Algorithms Appl. 2009, 1, 499–517. [Google Scholar] [CrossRef]
- 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]
- 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]
- 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]
- 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]
- Lam, E.; Mak-Hau, V. Branch-and-cut-and-price for the cardinality-constrained multi-cycle problem in kidney exchange. Comput. Oper. Res. 2020, 115, 104852. [Google Scholar] [CrossRef]
- Rapaport, F.T. The case for a living emotionally related international kidney donor exchange registry. Transplant. Proc. 1986, 18, 5–9. [Google Scholar]
- Ross, L.F.; Woodle, E.S. Ethical issues in increasing living kidney donations by expanding kidney paired exchange programs. Transplantation 2000, 69, 1539–1543. [Google Scholar] [CrossRef]
- Roth, A.E.; Sönmez, T.; Ünver, M.U.; Delmonico, F.L.; Saidman, S.L. Utilizing list exchange and nondirected donation through ‘chain’ paired kidney donations. Am. J. Transplant. 2006, 6, 2694–2705. [Google Scholar] [CrossRef]
- Saidman, S.L.; Roth, A.E.; Sönmez, T.; Ünver, M.U.; Delmonico, F.L. Increasing the opportunity of live kidney donation by matching for two- and three-way exchanges. Transplantation 2006, 81, 773–782. [Google Scholar] [CrossRef]
- 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 (EC’16), Maastricht, The Netherlands, 24–28 July 2016; ACM: New York, NY, USA, 2016; pp. 25–42. [Google Scholar]
- Alvelos, F.; Klimentova, X.; Viana, A. Maximizing the expected number of transplants in kidney exchange programs with branch-and-price. Ann. Oper. Res. 2019, 272, 429–444. [Google Scholar] [CrossRef]
- Plaut, B.; Dickerson, J.P.; Sandholm, T. Fast optimal clearing of capped-chain barter exchanges. In Proceedings of the Thirtieth AAAI Conference on Artificial Intelligence, Phoenix, AZ, USA, 12–17 February 2016; AAAI Press: Phoenix, AZ, USA, 2016; pp. 601–607. [Google Scholar]
- Glorie, K.M.; Klundert, J.J.v.; 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]
- Riascos-Álvarez, L.C.; Bodur, M.; Aleman, D.M. A branch-and-price algorithm enhanced by decision diagrams for the kidney exchange problem. Manuf. Serv. Oper. Manag. 2023, 26, 485–499. [Google Scholar] [CrossRef]
- Arslan, A.N.; Omer, J.; Yan, F. KidneyExchange.jl: A Julia package for solving the kidney exchange problem with branch-and-price. Math. Program. Comput. 2024, 16, 151–184. [Google Scholar] [CrossRef]
- Dickerson, J.P.; Procaccia, A.D.; Sandholm, T. Failure-aware kidney exchange. Manag. Sci. 2019, 65, 1768–1791. [Google Scholar] [CrossRef]
- Pedroso, J.P. Maximizing expectation on vertex-disjoint cycle packing. In Computational Science and Its Applications—ICCSA 2014, Part II; Volume 8580 of Lecture Notes in Computer Science; Murgante, B., Misra, S., Rocha, A.M.A.C., Torre, C., Rocha, J.G., Falcão, M.I., Taniar, D., Apduhan, B.O., Gervasi, O., Eds.; Springer: Cham, Switzerland, 2014; pp. 32–46. [Google Scholar]
- Manlove, D.F.; O’Malley, G. Paired and altruistic kidney donation in the UK: Algorithms and experimentation. Acm J. Exp. Algorithmics 2014, 19, 2.6:1–2.6:21. [Google Scholar] [CrossRef]
- Klimentova, X.; Biró, P.; Viana, A.; Costa, V.; Pedroso, J.P. Novel integer programming models for the stable kidney exchange problem. Eur. J. Oper. Res. 2023, 307, 1391–1407. [Google Scholar] [CrossRef]
- Gentry, S.E.; Segev, D.L.; Simmerling, M.; Montgomery, R.A. Expanding kidney paired donation through participation by compatible pairs. Am. J. Transplant. 2007, 7, 2361–2370. [Google Scholar] [CrossRef]
- Dickerson, J.P.; Kazachkov, A.M.; Procaccia, A.; Sandholm, T. Small representations of big kidney exchange graphs. In Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence (AAAI-17), San Francisco, CA, USA, 4–9 February 2017; AAAI Press: Phoenix, AZ, USA, 2017; pp. 487–493. [Google Scholar]
- Biró, P.; van de Klundert, J.; Manlove, D.; Pettersson, W.; Andersson, T.; Burnapp, L.; Chromy, P.; Delgado, P.; Dworczak, P.; Haase, B.; et al. Modelling and optimisation in European Kidney Exchange Programmes. Eur. J. Oper. Res. 2021, 291, 447–456. [Google Scholar] [CrossRef]
- Cornelio, C.; Furian, L.; Nicolò, A.; Rossi, F. Using deceased-donor kidneys to initiate chains of living donor kidney paired donations: Algorithms and experimentation. In Proceedings of the 2019 AAAI/ACM Conference on Artificial Intelligence, Ethics, and Society, Honolulu, HI, USA, 27–28 January 2019; Conitzer, V., Hadfield, G., Vallor, S., Eds.; ACM: New York, NY, USA, 2019; pp. 477–483. [Google Scholar]
- Ünver, M.U. Dynamic kidney exchange. Rev. Econ. Stud. 2010, 77, 372–414. [Google Scholar] [CrossRef]
- Chisca, D.; Lombardi, M.; Milano, M.; O’Sullivan, B. From offline to online kidney exchange optimization. In Proceedings of the 2018 IEEE 30th International Conference on Tools with Artificial Intelligence (ICTAI), Volos, Greece, 5–7 November 2018; pp. 587–591. [Google Scholar]
- Awasthi, P.; Sandholm, T. Online stochastic optimization in the large: Application to kidney exchange. In Proceedings of the Twenty-First International Joint Conference on Artificial Intelligence (IJCAI-09), Pasadena, CA, USA, 11–17 July 2009; Boutilier, C., Ed.; AAAI Press: Phoenix, AZ, USA, 2009; pp. 405–411. [Google Scholar]
- Fathi, M.; Khakifirooz, M. Kidney-related operations research: A review. Iise Trans. Healthc. Syst. Eng. 2019, 9, 226–242. [Google Scholar] [CrossRef]
- Tarjan, R. Depth-first search and linear graph algorithms. SIAM J. Comput. 1972, 1, 146–160. [Google Scholar] [CrossRef]
- Sharir, M. A strong-connectivity algorithm and its applications in data flow analysis. Comput. Math. Appl. 1981, 7, 67–72. [Google Scholar] [CrossRef]
- Ascheuer, N.; Fischetti, M.; Grötschel, M. A polyhedral study of the asymmetric traveling salesman problem with time windows. Networks 2000, 36, 69–79. [Google Scholar] [CrossRef]
- Riascos Alvarez, L.C. Formulations and Algorithms for the Kidney Exchange Problem. Master Thesis, Universidad Autónoma de Nuevo León, San Nicolás de los Garza, NL, Mexico, April 2017. [Google Scholar]
- Anderson, R.M. Stochastic Models and Data Driven Simulations for Healthcare Operations. Ph.D. Thesis, Massachusetts Institute of Technology, Cambridge, MA, USA, 2014. [Google Scholar]
- Johnson, D.B. Finding all the elementary circuits of a directed graph. Siam J. Comput. 1975, 4, 77–84. [Google Scholar] [CrossRef]
1→2→3→4 | 2→3→4→5 | 3→4→5→6 | 4→3→7→1 | 5→4→3→7 * | 6→4→3→7 | 7→1→2→3 * | 8→4→3→7 * |
1→2→3→7 * | 2→3→4→7 | 3→4→5→8 | 4→3→7→5 * | 5→4→7→1 | 6→4→5→8 | 7→5→4→3 * | 8→4→5→6 |
2→3→7→1 * | 3→4→7→1 | 4→3→7→8 | 5→4→7→8 | 6→4→7→1 | 7→5→6→4 * | 8→4→7→1 | |
2→3→7→5 | 3→4→7→5 | 4→5→8→7 | 5→6→4→3 | 6→4→7→5 * | 7→5→8→4 * | 8→4→7→5 * | |
2→3→7→8 | 3→4→7→8 | 4→7→1→2 | 5→6→4→7 * | 6→4→7→8 | 7→8→4→3 * | 8→7→1→2 | |
3→7→1→2 * | 4→7→5→6 * | 5→8→4→3 | 7→8→4→5 | 8→7→5→4 * | |||
3→7→5→4 | 4→7→5→8 * | 5→8→4→7 * | 8→7→5→6 | ||||
3→7→5→6 | 5→8→7→1 | ||||||
3→7→5→8 | |||||||
3→7→8→4 |
4→3→7→1 | 7→1→2→3 |
4→3→7→5 | |
4→3→7→8 | |
4→7→1→2 | |
4→7→5→6 | |
4→7→5→8 | |
4→5→8→7 |
Formulation Name | Notation | Authors | KEP Variant |
---|---|---|---|
Cycle formulation | C | Abraham et al. [11] and Roth et al. [14] | C |
Edge formulation | E | Abraham et al. [11] and Roth et al. [14] | C |
Reduced extended edge formulation | rEE | Constantino et al. [15] | C |
Partitioned edge formulation | *PE | This paper | C |
Partitioned and reduced edge formulation | *PRE(i) | This paper | C |
Anderson arc-based formulation | AA | Anderson et al. [8] | C&C |
PC-TSP-based formulation | PC-TSP | Anderson et al. [8] | C&C |
Polynomial-sized SPLIT formulation | pSPLIT | Mak-Hau [16] | C&C |
Exponential-sized SPLIT formulation | eSPLIT | Mak-Hau [16] | C&C |
Reduced Exponential-sized SPLIT formulation | *ReSPLIT(i) | This paper | C&C |
KEP variant: (C) Cycles, (C&C) Cycles and chains |
PDPsR | C | E | rEE | *PE | *PRE(i) | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tc | Time | tp | Time | Opt | Gap | nf | tr | Time | nSCC | tp | Time | Opt | Gap | nf | nSCC | tp | tr | Time | |
114–216 | 0.02 | 0.03 | 1.57 | 180.86 | 9 | 0.57 | 0/0 | 0.06 | 0.24 | 1.20 | 0.52 | 180.21 | 9 | 0.01 | 0/0 | 1.30 | 0.05 | 0.04 | 32.38 |
221–236 | 0.03 | 0.03 | 2.59 | 21.34 | 10 | 0.00 | 0/0 | 0.12 | 0.07 | 1.50 | 0.13 | 1.60 | 10 | 0.00 | 0/0 | 1.50 | 0.04 | 0.02 | 1.01 |
241–285 | 0.03 | 0.03 | 3.23 | 248.35 | 9 | 0.09 | 0/0 | 0.16 | 0.07 | 1.60 | 0.12 | 5.85 | 10 | 0.00 | 0/0 | 1.60 | 0.04 | 0.02 | 0.12 |
289–317 | 0.05 | 0.03 | 3.95 | 6.87 | 10 | 0.00 | 0/0 | 0.24 | 0.06 | 1.50 | 0.16 | 0.99 | 10 | 0.00 | 0/0 | 1.90 | 0.06 | 0.02 | 0.13 |
324–343 | 0.05 | 0.03 | 4.85 | 360.37 | 8 | 0.68 | 0/0 | 0.30 | 0.11 | 1.10 | 1.28 | 183.14 | 9 | 0.00 | 0/0 | 1.20 | 0.07 | 0.02 | 1.25 |
345–348 | 0.04 | 0.02 | 0.56 | 0.35 | 10 | 0.00 | 0/0 | 0.28 | 0.07 | 1.00 | 0.13 | 0.13 | 10 | 0.00 | 0/0 | 1.00 | 0.05 | 0.02 | 0.07 |
349–368 | 0.08 | 0.02 | 4.15 | 1.81 | 10 | 0.00 | 0/0 | 0.36 | 0.07 | 1.20 | 0.23 | 0.42 | 10 | 0.00 | 0/0 | 1.20 | 0.06 | 0.02 | 0.07 |
371–474 | 0.29 | 0.05 | 26.41 | 12.66 | 8 | 0.00 | 0/2 | 0.90 | 0.90 | 1.30 | 5.58 | 200.57 | 9 | 0.03 | 1/0 | 1.30 | 0.20 | 0.07 | 82.29 |
PDPsR | C | E | rEE | *PE | *PRE(i) | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tc | Time | tp | Time | Opt | Gap | nf | tr | Time | nSCC | tp | Time | Opt | Gap | nf | nSCC | tp | tr | Time | Opt | Gap | nf | |
114–216 | 0.03 | 0.08 | 17.40 | 203.08 | 8 | 0.03 | 0/1 | 0.06 | 2.51 | 1.20 | 7.47 | 19.23 | 9 | 0.00 | 0/1 | 1.30 | 0.32 | 0.54 | 145.43 | 10 | 0.00 | 0/0 |
221–236 | 0.03 | 0.05 | 20.88 | 1.05 | 5 | 0.00 | 0/5 | 0.12 | 0.29 | 1.50 | 0.67 | 227.31 | 10 | 0.00 | 0/0 | 1.50 | 0.08 | 0.08 | 2.87 | 10 | 0.00 | 0/0 |
241–285 | 0.03 | 0.05 | 26.74 | 0.76 | 5 | 0.00 | 0/5 | 0.16 | 0.36 | 1.60 | 1.14 | 108.08 | 10 | 0.00 | 0/0 | 1.60 | 0.10 | 0.16 | 13.35 | 10 | 0.00 | 0/0 |
289–317 | 0.04 | 0.05 | 59.21 | 18.88 | 8 | 0.00 | 0/2 | 0.23 | 0.18 | 1.50 | 0.67 | 32.15 | 10 | 0.00 | 0/0 | 1.90 | 0.10 | 0.05 | 0.29 | 10 | 0.00 | 0/0 |
324–343 | 0.05 | 0.04 | 54.79 | 2.66 | 8 | 0.00 | 0/2 | 0.29 | 0.73 | 1.10 | 15.16 | 201.15 | 8 | 0.22 | 0/1 | 1.20 | 0.17 | 0.11 | 14.48 | 10 | 0.00 | 0/0 |
345–348 | 0.03 | 0.02 | 2.86 | 3.28 | 10 | 0.00 | 0/0 | 0.27 | 0.22 | 1.00 | 0.46 | 1.83 | 10 | 0.00 | 0/0 | 1.00 | 0.10 | 0.06 | 0.12 | 10 | 0.00 | 0/0 |
349–368 | 0.06 | 0.03 | 23.02 | 1.91 | 7 | 0.00 | 0/3 | 0.34 | 1.29 | 1.20 | 0.68 | 1.79 | 10 | 0.00 | 0/0 | 1.20 | 0.12 | 0.04 | 0.12 | 10 | 0.00 | 0/0 |
371–474 | 0.31 | 0.17 | 486.48 | 6.21 | 6 | 0.00 | 0/4 | 0.85 | 60.07 | 1.30 | 100.13 | 66.03 | 8 | 0.00 | 0/2 | 1.30 | 1.15 | 0.78 | 361.57 | 8 | 3.16 | 1/0 |
PDPsR | C | E | rEE | *PE | *PRE(i) | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
aVars | aCons | aVars | aCons | aVars | aCons | aVars | aCons | saVars | saCons | aVars | aCons | SCCp | saVars | saCons | sSCCp | |
114–216 | 274.4 | 183.0 | 3959.1 | 270,128.3 | 1259.9 | 505.2 | 661.5 | 91,659.7 | 81.36 | 78.16 | 329.7 | 3190.8 | 4527.4 | 89.21 | 99.49 | 99.04 |
221–236 | 162.7 | 258.1 | 6853.1 | 436,337.7 | 472.0 | 478.3 | 544.5 | 20,308.9 | 92.03 | 90.56 | 322.9 | 675.9 | 1098.1 | 95.38 | 99.82 | 99.66 |
241–285 | 146.0 | 284.3 | 9100.1 | 542,559.6 | 505.7 | 494.3 | 446.5 | 16,201.8 | 95.13 | 92.36 | 287.8 | 663.9 | 1022.3 | 96.87 | 99.82 | 99.57 |
289–317 | 133.4 | 337.3 | 11,907.3 | 655,659.0 | 388.3 | 505.3 | 592.7 | 21,579.9 | 94.57 | 92.11 | 308.0 | 470.8 | 754.7 | 97.20 | 99.89 | 99.71 |
324–343 | 201.8 | 366.5 | 13,718.7 | 797,498.8 | 749.6 | 604.6 | 1376.9 | 220,375.0 | 91.55 | 83.52 | 1032.3 | 1073.0 | 1606.6 | 93.82 | 99.79 | 99.65 |
345–348 | 99.4 | 393.0 | 13,232.7 | 72,522.7 | 314.8 | 506.5 | 513.3 | 14,706.0 | 96.12 | 79.82 | 317.6 | 179.3 | 302.0 | 97.60 | 99.75 | 99.58 |
349–368 | 177.3 | 407.8 | 14,438.8 | 680,322.1 | 541.6 | 654.8 | 717.8 | 31,220.2 | 95.13 | 85.99 | 455.9 | 336.7 | 551.5 | 96.96 | 99.78 | 99.57 |
371–474 | 583.3 | 454.3 | 20,699.9 | 4,278,204.8 | 2915.8 | 949.4 | 2823.1 | 970,304.3 | 89.72 | 83.26 | 1713.6 | 6755.2 | 11,674.6 | 94.09 | 99.85 | 99.58 |
PDPsR | C | E | rEE | *PE | *PRE(i) | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
aVars | aCons | aVars | aCons | aVars | aCons | aVars | aCons | saVars | saCons | aVars | aCons | SCCp | saVars | saCons | sSCCp | |
114–216 | 2343.8 | 183.0 | 3959.1 | 2,943,510.1 | 6832.3 | 1476.8 | 661.5 | 1,288,998.0 | 81.36 | 80.08 | 544.3 | 45,395.8 | 46.392.5 | 85.17 | 99.50 | 99.39 |
221–236 | 688.4 | 258.1 | 6853.1 | 3,493,639.8 | 1614.9 | 793.1 | 544.5 | 11,400.5 | 92.03 | 94.68 | 433.4 | 4169.0 | 4426.6 | 93.74 | 99.92 | 99.90 |
241–285 | 665.6 | 284.3 | 9100.1 | 4,446,489.6 | 1856.1 | 793.5 | 446.5 | 97,454.9 | 95.13 | 93.65 | 370.4 | 4182.1 | 4515.1 | 95.96 | 99.84 | 99.76 |
289–317 | 557.3 | 337.3 | 11,907.3 | 4,531,846.7 | 1604.3 | 820.4 | 592.7 | 105,970.4 | 94.57 | 92.62 | 401.6 | 2210.6 | 2506.5 | 96.41 | 99.91 | 99.87 |
324–343 | 1055.0 | 366.5 | 13,718.7 | 8,457,243.3 | 3753.4 | 1171.5 | 1376.9 | 2,562,561.2 | 91.55 | 85.37 | 987.9 | 8360.5 | 9375.2 | 93.88 | 99.88 | 99.83 |
345–348 | 279.5 | 393.0 | 13,232.7 | 367,287.3 | 1058.6 | 710.9 | 513.3 | 65,936.0 | 96.12 | 82.20 | 409.4 | 465.3 | 698.0 | 96.91 | 99.87 | 99.81 |
349–368 | 467.9 | 407.8 | 14,438.8 | 3,650,121.7 | 6815.2 | 3583.8 | 717.8 | 101,708.4 | 95.13 | 89.09 | 520.0 | 626.3 | 999.5 | 96.46 | 99.92 | 99.88 |
371–474 | 6018.8 | 454.3 | 20,699.9 | 71,420,196.5 | 18,276.9 | 2192.9 | 2823.1 | 13,400,718.5 | 89.72 | 85.95 | 1750.4 | 121,542.4 | 140,506.0 | 93.77 | 99.91 | 99.82 |
PDPsR | NDDsR | AA | PC-TSP | pSPLIT | *ReSPLIT(i) | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tsep | Time | Opt | tsep | Time | Opt | Time | Opt | Gap | Time | Opt | Gap | ||
114–216 | 3–22 | 1.13 | 550.49 | 7 | 1.18 | 720.21 | 6 | 369.95 | 8 | 11.73 | 373.4 | 8 | 11.73 |
221–236 | 22–34 | 3.92 | 900.10 | 5 | 3.01 | 900.26 | 5 | 900.09 | 5 | 13.47 | 900.11 | 5 | 13.31 |
241–285 | 6–39 | 4.63 | 964.65 | 5 | 3.57 | 1210.16 | 4 | 906.06 | 5 | 11.04 | 906.14 | 5 | 11.38 |
289–317 | 6–39 | 4.46 | 1081.13 | 4 | 4.57 | 1084.57 | 4 | 631.63 | 7 | 21.53 | 656.05 | 7 | 21.53 |
324–343 | 6–46 | 3.16 | 778.65 | 7 | 3.56 | 1350.3 | 2 | 219.82 | 9 | 1.30 | 222.06 | 9 | 1.30 |
345–348 | 46–46 | 5.36 | 1303.48 | 3 | 3.23 | 1675.25 | 1 | 110.52 | 10 | 0.00 | 105.31 | 10 | 0.00 |
349–368 | 39–49 | 2.75 | 547.13 | 7 | 1.99 | 713.16 | 7 | 219.89 | 9 | 5.60 | 214.65 | 9 | 5.60 |
371–474 | 47–50 | 1.73 | 362.02 | 8 | 2.34 | 362.61 | 8 | 368.53 | 8 | 6.60 | 546.23 | 7 | 7.60 |
PDPs | NDDs | Arcs | AA | PC-TSP | pSPLIT | *ReSPLIT(i) | ||
---|---|---|---|---|---|---|---|---|
Time | Time | Time | Gap | Time | Gap | |||
198 | 7 | 4882 | >1800 | >1800 | 83.70 | 90.47 | ||
202 | 3 | 4706 | 0.14 | 0.19 | 0.25 | 0.22 | ||
215 | 6 | 6145 | 104.45 | >1800 | 12.05 | 12.27 | ||
261 | 6 | 8915 | 547.98 | >1800 | 37.61 | 36.70 | ||
263 | 6 | 8939 | 40.52 | 410.83 | 7.22 | 7.27 | ||
284 | 5 | 10,126 | 46.92 | 837.70 | 12.08 | 13.86 | ||
312 | 6 | 13,045 | >1800 | >1800 | >1800 | 25.06 | >1800 | 25.12 |
324 | 6 | 13,175 | 271.02 | >1800 | 22.74 | 39.47 | ||
328 | 6 | 13,711 | 264.59 | >1800 | 12.28 | 13.25 | ||
330 | 6 | 13,399 | 1450.31 | >1800 | 79.02 | 79.94 |
PDPsR | NDDsR | pSPLIT | *ReSPLIT(i) | |||||
---|---|---|---|---|---|---|---|---|
Time | Opt | Gap | Time | Opt | Gap | nf | ||
114–216 | 3–22 | 365.24 | 8 | 4.82 | 365.68 | 8 | 5.20 | |
221–236 | 22–34 | 900.07 | 5 | 10.12 | 900.12 | 5 | 10.10 | |
241–285 | 6–39 | 722.61 | 7 | 7.93 | 18.24 | 7 | 7.90 | |
289–317 | 6–39 | 550.87 | 7 | 8.74 | 562.88 | 7 | 8.74 | |
324–343 | 6–46 | 205.47 | 9 | 0.60 | 231.01 | 9 | 1.10 | |
345–348 | 46–46 | 91.51 | 10 | 0.00 | 81.64 | 10 | 0.00 | |
349–368 | 39–49 | 209.51 | 9 | 2.50 | 205.46 | 9 | 2.50 | |
371–474 | 47–50 | 421.53 | 8 | 5.80 | 720.67 | 6 | 7.30 | 2/0 |
PDPsR | NDDsR | AA | PC-TSP | pSPLIT | *ReSPLIT(i) | ||||
---|---|---|---|---|---|---|---|---|---|
aVars | aCons | aVars | aCons | aVars | aCons | aVars | aCons | ||
114–216 | 3–22 | 3980.0 | 11,129.3 | 4254.4 | 2786.1 | 5606.9 | 4851.2 | 4739.8 | 7643.8 |
221–236 | 22–34 | 6884.4 | 8761.3 | 7047.1 | 2177.4 | 7873.6 | 7878.9 | 7725.6 | 8174.9 |
241–285 | 6–39 | 9136.5 | 11,949.5 | 9282.5 | 4545.2 | 10,211.8 | 10,199.4 | 9995.8 | 10,486.9 |
289–317 | 6–39 | 11,975.9 | 11,906.8 | 12,109.3 | 3936.6 | 13,039.8 | 13,155.8 | 12,962.0 | 13,191.2 |
324–343 | 6–46 | 13,746.8 | 17,452.9 | 14,220.4 | 5799.4 | 15,230.4 | 15,084.4 | 15,515.0 | 15,772.5 |
345–348 | 46–46 | 13,232.8 | 25,149.1 | 13,332.2 | 7702.4 | 14,334.6 | 14,525.3 | 14,337.4 | 14,497.6 |
349–368 | 39–49 | 14,564.2 | 6622.0 | 14,741.5 | 3638.7 | 15,922.4 | 16,034.6 | 15,846.6 | 15,970.2 |
371–474 | 47–50 | 20,747.9 | 3346.6 | 21,331.2 | 1678.9 | 24,573.3 | 22,605.9 | 23,374.9 | 28,559.5 |
PDPsR | NDDsR | pSPLIT | *ReSPLIT(i) | ||
---|---|---|---|---|---|
aVars | aCons | aVars | aCons | ||
114–216 | 3–22 | 11,179.3 | 5822.8 | 4891.3 | 49,842.9 |
221–236 | 22–34 | 9016.5 | 8193.7 | 7835.1 | 11,544.7 |
241–285 | 6–39 | 11,562.2 | 10,498.6 | 10,076.7 | 13,735.8 |
289–317 | 6–39 | 14,255.8 | 13,470.9 | 13,053.4 | 14,199.2 |
324–343 | 6–46 | 18,234.2 | 15,651.3 | 15,468.8 | 22,880.8 |
345–348 | 46–46 | 15,078.4 | 14,729.7 | 14,429.2 | 14,781.9 |
349–368 | 39–49 | 22,196.0 | 18,963.6 | 15,902.1 | 16,208.7 |
371–474 | 47–50 | 39,934.4 | 23,849.4 | 23,408.0 | 142,726.6 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Ríos-Mercado, R.Z.; Riascos-Álvarez, L.C.; Bard, J.F. An Algorithm Based on Connectivity Properties for Finding Cycles and Paths on Kidney Exchange Compatibility Graphs. Computation 2025, 13, 110. https://doi.org/10.3390/computation13050110
Ríos-Mercado RZ, Riascos-Álvarez LC, Bard JF. An Algorithm Based on Connectivity Properties for Finding Cycles and Paths on Kidney Exchange Compatibility Graphs. Computation. 2025; 13(5):110. https://doi.org/10.3390/computation13050110
Chicago/Turabian StyleRíos-Mercado, Roger Z., L. Carolina Riascos-Álvarez, and Jonathan F. Bard. 2025. "An Algorithm Based on Connectivity Properties for Finding Cycles and Paths on Kidney Exchange Compatibility Graphs" Computation 13, no. 5: 110. https://doi.org/10.3390/computation13050110
APA StyleRíos-Mercado, R. Z., Riascos-Álvarez, L. C., & Bard, J. F. (2025). An Algorithm Based on Connectivity Properties for Finding Cycles and Paths on Kidney Exchange Compatibility Graphs. Computation, 13(5), 110. https://doi.org/10.3390/computation13050110