For a finite dataset, alternate nearest-centre assignment and replacement of each centre by the centroid of its assigned observations. Keep the current assignment whenever an observation is tied between nearest centres. A changed assignment then strictly decreases the within-cluster sum of squared Euclidean distances; updating centres cannot increase it by the centroid sum-of-squares identity.
After each centre update, the centres are determined by the current partition of a set of observation indices. There are only finitely many such partitions, so a strictly improving sequence cannot revisit one and must stop. A convenient exact stopping test is to check after each update whether every observation is still assigned to a nearest centre. This proof is for algorithm termination; it does not guarantee a global minimum.
Empty clusters need an explicit convention. To retain exactly nonempty clusters, transfer an observation from a cluster with at least two members to each empty cluster, making it a singleton centred at that observation. This cannot increase the objective: the transferred observation now has squared distance zero, and no other contribution changes before centre updating. A deterministic choice is an eligible observation farthest from its currently assigned centre, with ties resolved by index. After the first round, an empty cluster can arise only during a strictly improving reassignment, so these repairs preserve the finite-termination argument.
Write and suppose the cluster is nonempty. Expanding the Euclidean norm through its inner product gives
Sum over . The final term does not depend on , so its sum is , which proves the requested identity. This expansion is the starting point for the centroid sum-of-squares identity.
Combining the first two parts gives the centroid sum-of-squares identity
The added term is nonnegative and, since , vanishes exactly at . Thus the unique minimizing centroid in this step of K-means clustering is
An empty cluster needs a separate algorithmic convention because its sample mean is undefined and its objective is identically zero.
Use the corrected decomposition
The hint's minus sign before is a typographical error. Squaring, summing, and using for each coordinate gives the centroid sum-of-squares identity
Since and , the final term is strictly positive. Hence
Thus the centroid uniquely minimizes the sum of squared Euclidean distances to the observations.
Write for row of the data matrix. The k-means clustering objective is the within-cluster sum of squared Euclidean distances:
The nonempty form a partition of a set of observation indices. For fixed clusters, part (a) shows that the best is their centroid.
Initialize distinct centres, for example by choosing distinct observations. Then repeat the following steps:
  • Assign each observation to a nearest centre in Euclidean distance. Keep its current assignment on an exact tie; for a previously unassigned observation use a fixed ordering to resolve ties.
  • If a cluster is empty, choose an observation from a cluster with at least two members and make it the empty cluster's sole member, placing its centre at that observation. A definite rule is to choose an eligible observation farthest from its currently assigned centre, breaking ties by observation index. Repeat until all clusters are nonempty.
  • Replace each centre by the arithmetic mean of its assigned observations.
  • After updating, check whether every observation is still assigned to a nearest updated centre, retaining its assignment on ties. If so, stop; otherwise repeat.
The empty-cluster repair is possible for and cannot increase : the transferred observation now has squared distance zero, while all other squared distances stay unchanged before the centre update.
Assignment cannot increase , and any changed assignment strictly decreases it under the tie rule. Updating centres cannot increase by the centroid sum-of-squares identity. After an update, the centres are determined by the partition of a set. There are only finitely many possible assignments. Unless this is the initial round, any nonterminal round starts with an assignment that strictly reduces ; repairing empty clusters and updating cannot undo that decrease. Thus a partition cannot recur, proving finite termination of K-means clustering. The final result need not be a global minimum; different initial centres can lead to different final clusterings.
For observations , K-means clustering seeks nonempty clusters in cluster analysis and centroids minimizing
At fixed centroids, assigning each point to a nearest centroid minimizes its squared Euclidean distance. At fixed assignments, the centroid sum-of-squares identity shows that the sample mean uniquely minimizes each group's contribution. These alternating steps cannot increase .
For finite termination of K-means clustering, more than a lower bound on is needed. Keep an assignment unchanged when nearest centroids tie, and stop when assignments no longer change. Every change then strictly decreases . After updating the centroids, is determined by the partition of a set of indices; there are only finitely many choices for that partition of a set, so no strictly improving partition of a set can recur. Empty clusters in cluster analysis require a convention, such as moving a point from a nonsingleton cluster in cluster analysis to become its own centroid, which cannot increase . With such a consistent convention the algorithm terminates, although it may reach only a local minimum.