TAU_P_CENTER ------------ This C code can be used in order to optimally solve the discrete version of the P-center problem, where the set of demand points and the set of potential service points are the same. The code is based on the algorithm described in "Relaxation Method for the Solution of the Minimax Location-Allocation Problem in Euclidean Space", by R. Chen and G. Y. Handler, Naval Research Logistics, Volume 34, pages 775-788, 1987. We use the Feasibility Subproblem algorithm from "An Efficient Exact Algorithm for the Vertex p-Center Problem and Computational Experiments for Different Set Covering Subproblems" by Taylan Ilhan, F. Aykut Ozsoy and Mustafa C. Pinar. HOW TO RUN THIS PROGRAM ----------------------- The straightforward way of running this program is: > ./relax filename number_of_service_points For instance: > ./relax distances.txt 3 The text file which is given as the first parameter should be constructed as follows: It should begin with n, the number of demand points / potential service points. The rest of the file contains the Cartesian coordinates of the n demand points. If you run: > ./relax distances.txt 3 40 this means that you want to find 3 service points, and your original upper bound for the best solution is 40 (rather than infinity). THE OUTPUT STRUCTURE -------------------- The algorithm we use is iterative. At each step we output the value of the current candidate solution (until the optimal solution is reached). If you would like the coordinates of the candidate solution to be printed at each step, you need to change the first line of the makefile to: OPTS = -DVERBOSE -O3 -Wall -Werror before compiling the program.