Proposed: - A maximum number of iterations has been performed. - Fewer than a threshold percentage of data points are reassigned during an iteration. - All means migrate less than a threshold distance during an update cycle.