Dataset for the stable kidney exchange problem

The dataset contains instances of the Kidney Exchange Problem (KEP), when the patient has different preferences over the potential donors. The common practice is to model the KEP on a directed graph G = (V,A), called compatibility graph, where the set of vertices V corresponds to the set of incompatible pairs and an arc from a vertex i to a vertex j indicates compatibility of donor in j with the patient in i. For this dataset graphs are created by use of the generator mentioned in X. Klimentova, A. Viana, J. P. Pedroso, N. Santos. Fairness models for multi-agent kidney exchange programmes. Omega: The International Journal of Management Science (2020) The generator creates random graphs based on probabilities for blood type and donor–patient tissue compatibility. The set of vertices in the instances contains both incompatible pairs and non-directed donors (NDDs). Dummy arcs are created from a NDD to each vertex to operate the chains initiated by NDDs in the same way as cycles are operated.

Then, for each arc in the graphs we generate randomly a weight in the interval (0,1). The preferences are provided by ranks of outgoing arcs (r_ij), where r_ij is an integer number between 1 and |V|; the lower the rank the more preferable is the donor in j for patient in i. Those ranks are assigned in accordance with weights: the lower is the weight of an outgoing arc for a given vertex, the more preferred is the corresponding good. For weak preferences, outgoing arcs with weights within each interval of length 1/|V| were considered equally preferable. The dataset contains 4 zip files: two with instances with strict preferences and another two with weak preferences. For each type of preferences there is a file with smaller instances with 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 170 and 180 vertices, and another file with bigger instances with 200, 250, 350 and 400 vertices, 50 instances of each size. Files are named in the format n_seed.input, where n = |P| is the number of incompatible pairs in the pool and seed is the seed used by the random function when generating the instance.

The first line of each file contains 5 values:

1) |V| - number of vertices in the graph (the set of vertices V consists of a set of incompatible pairs, P, and a set of NDDs, N, i.e. V = P U N);

2) m - number of arcs in the graph (including dummy arcs from NDDs);

3) |P| – number of incompatible pairs,

4) |N| – number of altruistic donors.

5) number of dummy arcs

In the following m lines of the file the existing arcs (i,j) are presented as follows:

i j w_ij r_ij

where w_ij is the weight and r_ij is the rank of the of the arc (i,j).

Data and Resources

Additional Info

Field Value
Source The graphs of instances are created by use of generator from the paper X. Klimentova, A. Viana, J. P. Pedroso, N. Santos. Fairness models for multi-agent kidney exchange programmes. Omega: The International Journal of Management Science (2020)
Author Xenia Klimentova
Last Updated February 9, 2021, 15:48 (Europe/Lisbon)
Created January 30, 2021, 13:37 (Europe/Lisbon)
CiteAs KLIMENTOVA, Xenia,VIANA, Ana, BIRÓ, Péter. Dataset for the stable kidney exchange problem [dataset]. 30 January 2021. INESC TEC research data repository. DOI:
dc.Contributor Ana Viana, Péter Biró
dc.Coverage.Spatial CEGI, INESC TEC, Porto, Portugal
dc.Date 2020
dc.Format *.txt, *.zip
dc.Format.Extent 4 (22M), (50M); (22M), (51M)
dc.Language English
dc.Publisher INESC TEC
dc.Relation 1. X. Klimentova, P. Biro, A. Viana, J.P. Pedroso, V. Costa. Novel Integer Programming models for the stable kidney exchange problem. Submitted to The European Journal of Operational Research. 2. P. Biro, F. Klijn, X. Klimentova, A. Viana. Shapley-Scarf Housing Markets: Respecting Improvement, Integer Programming, and Kidney Exchange. arXiv:2102.00167 [econ.TH]
dc.Type Compatibility graph with weights and preferences for the Stable Kidney Exchange Problem.
ddi.TypeInstrument The generator used for generation of the instances is implemented in Python programming language.