Project assigned for Algorithms class (CSCI 406) with the following instructions:
"You are given n points p1, p2, ..., pn in three-dimensional space. Your task is to partition the n points into k sets so that the maximum distance between any two points in the same set is minimized. Your algorithm should use the Manhattan distance metric, which for two points (x1, y1, z1) and (x2, y2, z2), is defined as |x1 − x2| + |y1 − y2| + |z1 − z2|."
Used modified version of Simulated Annealing to attempt to find solution. Usage:
SimulatedAnnealing.exe 'filename' 'number of steps' 'number of restarts'
Use '?' and 'input size' 'input sets' instead of filename to generate a random input