The files contain benchmark instances for hub location problems
and objective values for the multi allocation p-hub median problem/ multi allocation uncapacitated hub location problem calculated by approximation algorithms.



Instances:

The files contain instances for the HLP.
They can be distinguished between small, medium and big instances.
Each branch/hub is uniformly drawn in a two-dimensional [0,1]x[0,1] space.
Each instance contains the following size and information:

Small instances: 1,000 flows, 50 branches, 100 hubs and 1,000 samples.

Medium (base) instances: 5,000 flows, 100 branches, 200 hubs and 200 samples.

Big instances: 20,000 flows, 1,000 branches, 400 hubs and 100 samples. 

In "coordinates_branches_x" and "coordinates_hubs_x", the two-dimensional coordinates of the branches and hubs of the x'th instance are given.
In "hubs_cost_table_x", the hubs and the corresponding opening costs [0,1.2] for the uncapacitated hub location problem of the x'th instance are given.
In "input_table_x", the departure and destination branches of the x'th instance are given. Each combination exists at most once.
In addition, volume of the flows are defined by uniformly drawn numbers in [0,1.5].


Output:

In the output, the case that any volume is set to 1 is considered ("hubs_cost_table_x" was neglected).
The volume is given to enable solving further hub location problem statements.
If not claimed otherwise, the 2-norm was used to calculate distances.

The problems were solved by reducing them to the facility location problem.
This was done by the Algorithm of Benedito and Pedrosa (BaP) as described in "Approximation algorithms for Median Hub Location problems"
and by the algorithm of Jost as described in "Approximation Algorithm for multi allocation hub location problems".
The paper of Jost contains further details.

For the MApHMP, a greedy k-FLP algorithm is obtained, opening in each iteration the hub improving the objective at most.
Any Output contains the choice of p in the title.

Similarly, for the uncapacitated FLP, the algorithm of Hochbaum is used.
The term "setup1" considers instances where any setup is set to 1 (or 2 in the DoubleSetUp case).
Since it is more time-consuming to solve the MAuHLP, the first 100 small instances are considered. 

In the Output file, the first line gives the algorithm's name.
Any of the following lines contain the corresponding objective value of the algorithm.
In the last line, a mean value is given.




Any data is unlicenced and this dataset can be used as benchmark instances by everyone.
CC0 1.0 Universal (CC0 1.0) Public Domain Dedication https://creativecommons.org/publicdomain/zero/1.0/  

