// initialization phase
if(logger.isVerbose()) {
logger.verbose("1. Initialization phase...");
}
int sampleSize = Math.min(relation.size(), k_i * k);
DBIDs sampleSet = DBIDUtil.randomSample(relation.getDBIDs(), sampleSize, random.nextLong());
int medoidSize = Math.min(relation.size(), m_i * k);
DBIDs medoids = greedy(distFunc, sampleSet, medoidSize, random);
if(logger.isDebugging()) {
StringBuffer msg = new StringBuffer();
msg.append("\n");
msg.append("sampleSize ").append(sampleSize).append("\n");