Algorithm 2 Unsupervised SOM clustering: |
Initialization: Initialize an empty cluster set ; assign all of the parking sensors to a single cluster; mark it as non-finalized; and add it to set . Initialize a second empty set , used to collect the clusters created by the algorithm through successive partitioning. Compute the global metrics and .
-
Evaluation: If set is empty, go to termination. Otherwise, pick a cluster at random from and compute its local metrics. Let and respectively be this cluster and the associated feature matrix. If either of the following conditions is verified, (c1) the local metrics and are non-dominated by the global ones or (c2) the cohesiveness of is such that , then perform bipartition on cluster (Step 2a below); otherwise, perform finalization (Step 2b below).
-
(a)
Bipartition: Remove from , and split it into two new clusters using a SOM (involving Step 1, Training, and Step 2, Clustering). Mark the two clusters so obtained as non-finalized and add them to set . Return to the evaluation step.
-
(b)
Finalization: Remove cluster from ; mark it as finalized; and add it to . This cluster will no longer be evaluated. Return to the evaluation step.
Termination: When all clusters have been finalized, merge all single-element clusters in in a single set, which is referred to as the outlier cluster. At this stage, contains the final clusters.
Polishing: A final polishing (or merging) procedure is executed on the final clusters in . 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.
|