The Kidney Data Analysis Toolkit is a software tool that allows you to run multiple kidney exchange matching runs each with a different set of constraints. The results are then collated into a table to be viewed online or downloaded as a csv file. The layout of this help is as follows:
On navigating to the homepage you are presented with a screen that looks similar to the following:
The page contains the section "Data" where the data to be used for the matching run is specified - the format of the data is described here.
The section entitled "Run Data" contains the details of the matching runs to take place and the constraints involved in a particular matching run. In the screenshot above two matching runs have been scheduled to take place. The first will find a solution where the maximum cycle size is 2 (i.e. the solution will contain only pairwise exchanges), the altruistic donors are allowed only in short chains (as the altruistic chain is set to involve one pair), and we are enforcing a single constraint that simply maximises the total number of transplants. The second matching run shown has a maximum cycle size of 3 (i.e. we want a solution that is made up of both 3-way and pairwise exchanges), altruistic donors are allowed to be involved in long chains (as the altruistic chain is set to involve two pairs), and the solution output is subject to two constraints, the first maximises the total number of transplants and subject to this the second then maximises the overall weight of the solution.
Also in the "Run Data" section are the links containing a red cross like so . The cross at the top right allows you to remove a matching run. The second cross (shown in matching run two next to the second constraint) allows you to remove a particular constraint from a matching run. Similarly the "Add constraint" link allows you to add a constraint to a matching run with the "Add matching run" link enabling you to add another matching run.
Any runs and their constraints set up in the "Run Data" section will be automatically saved when you hit the "Run" button. This means that if you choose to you reload the page (F5) at any time in the future the last set of runs that were constructed will be shown in "Run Data". At any point you can revert back to the original set of matching runs and constraints that came pre-programmed by pressing the "Reset to default matching runs" link.
Once you have copied in the data to be used for the matching runs, and constructed the required runs you then press the "Run" button which will run each matching run in turn reporting the data back to the screen as each matching run completes.
Below we give a brief overview of the parameters that can be specified in the UI of the data analysis toolkit
A matching run is represented in the UI as a grey box containing the parameters for setting the maximum cycle
size, the (maximum) altruistic chain length and the set of constraints to be used in the run. To add a new matching run
you simply click the "Add another matching run" button at the bottom of the "Run Data" section. This will add
a new box to the bottom that can be populated with the required values.
To delete a matching run you simply click the in the top right-hand side of the matching run box. As there must be at least one matching run it is not possible to delete the first one. If the first matching run in the UI needs to be updated you can just change the values and add/remove constraints as required.
Clicking the "Add constraint" button will add a new constraint represented by a select box containing a list of
available constraints. An example of adding and selecting a new constraint is show below.
To remove a constraint you simply click the remove icon next to the constraint that you wish to remove. Each matching run must have a minimum of one constraint.
After pressing "Run" on the homepage you will be directed to a screen that contains a table with 16 columns. A brief
description of each column is given below:
2*num_2_ways + 3*num_3_ways + 2*num_short_chains + 3*num_long_chains
[patient_1(donor_1),patient_2(donor_2)]. For example,
[2(2),3(4)]states that donor with id 2 belonging to patient 2 gives their kidney to patient with id 3 and patient 3's donor with id 4 gives their kidney to patient 2. We note that entries that involve an altruistic donor will not contain a patient id for that donor. For example if donor with id 5 is an altruistic donor and they donate their kidney to patient 3 then the list would include the pair
When all the matching runs are complete a button will appear on the screen that says "Save to disk" - shown below.
Clicking this button allows you to download the results from the matching runs to a CSV file. The CSV file contains columns
that are identical to those described in the section "Description of output data" the only difference being that
the first column is named "Description" rather than "Run number" and contains a string with the details of the
particular matching run - it's similar to the information found in the tooltip displayed.
Note: If the "Save to disk" button does not appear then it is likely that you need to upgrade your versio of Adobe Flash to the most recent version.