Skip to main content
. 2016 Sep 23;16(10):1575. doi: 10.3390/s16101575
Algorithm 2 Unsupervised SOM clustering:
  1. Initialization: Initialize an empty cluster set A=; assign all of the parking sensors i=1,,N to a single cluster; mark it as non-finalized; and add it to set A. Initialize a second empty set B=, used to collect the clusters created by the algorithm through successive partitioning. Compute the global metrics meas1(X) and meas2(X).

  2. Evaluation: If set A is empty, go to termination. Otherwise, pick a cluster at random from A and compute its local metrics. Let C and Xp respectively be this cluster and the associated feature matrix. If either of the following conditions is verified, (c1) the local metrics meas1(Xp) and meas2(Xp) are non-dominated by the global ones or (c2) the cohesiveness of C is such that σ(Xp)>σth, then perform bipartition on cluster C (Step 2a below); otherwise, perform finalization (Step 2b below).

    • (a)

      Bipartition: Remove C from A, and split it into two new clusters using a 2×1 SOM (involving Step 1, Training, and Step 2, Clustering). Mark the two clusters so obtained as non-finalized and add them to set A. Return to the evaluation step.

    • (b)

      Finalization: Remove cluster C from A; mark it as finalized; and add it to B. This cluster will no longer be evaluated. Return to the evaluation step.

  3. Termination: When all clusters have been finalized, merge all single-element clusters in B in a single set, which is referred to as the outlier cluster. At this stage, B contains the final clusters.

  4. Polishing: A final polishing (or merging) procedure is executed on the final clusters in B. The aim of this is to join clusters that were separated to isolate outliers, but that actually contain points that are very close to one another. The polishing procedure is described below.