Skip to main content
. 2019 Apr 29;19(9):2008. doi: 10.3390/s19092008
Hierarchical Clustering Algorithm
Input: HRRP average range profile sample set S = {μ1, μ2, , μm};
            distance metric davg(Ci, Cj) = 1|Ci||Cj|μiCiμjCjd(μi, μj);
            cluster number k.
Process: forj = 1, 2, , mdo
                     Cj = {μj}
                end for
                for i = 1, 2, , m do
                     for j = i+1, , m do
                          M(i, j) = davg(Ci, Cj);
                          M(j, i) = M(i, j)
                     end for
                end for
                set the number of current clusters: q=m
                while q > k do
                     find the two nearest cluster Ci* and Cj*;
                     merge Ci* and Cj*: Ci* = Ci*  Cj*;
                     for j = j*+1, j*+2, , q do
                          renumber cluster Cj as Cj-1
                     end for
                     delete line j* and column j*  of matrix M
                     for j = i+1, , q-1 do
                          M(i*, j) = davg(Ci*, Cj);
                          M(j, i*) = M(i*, j)
                     end for
                     q = q  1
                 end while
Output: clusters C = {C1, C2, , Ck}