PK is an algorithm to compute Kernel-stable payments for Social Ridesharing. PK has been presented by Filippo Bistaffa, Georgios Chalkiadakis, Alessandro Farinelli, and Sarvapali D. Ramchurn in “Recommending Fair Payments for Large-Scale Social Ridesharing”, Proceedings of the 2015 ACM Conference on Recommender Systems (RecSys), pages 139–146, 2015, ACM.
PK requires g++ to compile, and does not require any external library to execute.
PK must be executed by means of the pk.sh script, i.e.,
Usage: ./pk.sh -i <filename> [-e <epsilon>]
-i Input filename
-e Epsilon
where filename is the solution file generated by SR-CFSS using the -p command-line option.
INPUTFILE is the path of the input file, which must be structured according to the following format.
N(i.e., the number of agents) in the first line.K(i.e., the maximum coalition cardinality) in the second line.SEED(i.e., the seed used to generate the pseudo-random SR instance) in the third line.Nlines representing the adjacency matrix of the graph (each edge should be associated to a natural number ≠ 0).Mlines representing theMcoalitions in the solution coalition structure. Each line must contain the coalition's members. Drivers must be marked by preceding their indices with*(e.g.,*0means that0is a driver).
The following example file represents a solution of the instance with SEED = 47, K = 5, and with the following graph.
10
5
47
0 1 2 5 7 0 0 13 15 0
1 0 3 4 6 8 11 0 0 0
2 3 0 0 0 0 10 0 0 17
5 4 0 0 0 0 0 0 14 0
7 6 0 0 0 9 0 12 0 16
0 8 0 0 9 0 0 0 0 0
0 11 10 0 0 0 0 0 0 0
13 0 0 0 12 0 0 0 0 0
15 0 0 14 0 0 0 0 0 0
0 0 17 0 16 0 0 0 0 0
9
6
2
*7 0 1 3 8
4
5
PK employs the GeoLife dataset by Microsoft Research presented by Yu Zheng, Quannan Li, Yukun Chen, Xing Xie, and Wei-Ying Ma in “Understanding mobility based on GPS data”, Proceedings of the 10th ACM conference on Ubiquitous Computing (Ubicomp), pages 312−321, 2008, ACM press.
