is the most difficult step. In Section 3, we will illustrate the importance of initialization, without which the entire procedure fails miserably. Our initialization strategy involves identifying a group of points with a high concentration of neighbors that represents the “core” of the selected cluster. These points can be used to provide a very rough covariance matrix estimate. This estimate can be improved as discussed in the algorithm later. Then, it can be used for calculating Mahalanobis distances for the rest of the points. Presumably, the closest points should belong to the same cluster and the first observed jump in distances can be seen as an indication that points from a different cluster start being captured. This strategy can be repeated K times, each time eliminating the selected points to avoid repetitive selection of the same clusters. Now, the outlined idea will be considered in greater detail. The algorithm’s key steps have names or numbers assigned to them. Steps 1–8 represent the initialization stage while Steps 9–11 implement the K-means algorithm.