\begin{flushleft}
{\bf Leader Algorithm}
\end{flushleft}

\begin{itemize}
\item {\it step 1:\/}

Provide an initial {\bf threshold value} $\tau$, and
select the first (observation) data $p_1$ as 
the first {\bf leader} $L_1$ for cluster 1 $C_1$.
Let $n$ denote the number of clusters found so 
far; at step 1, $n \leftarrow 1$ due to 
$L_1 \leftarrow p_1$.

\item {\it step 2:\/}

For the current data $p_j$ ($j=2 \ldots N$),
compute the distance ``$\mbox{dist}(j,L_m)$''
between data $p_j$ and
each already-established leader $L_m$ ($m=1 \ldots n$)
in order to find the {\bf closest leader} to $p_j$;
\begin{itemize}
\item
If its minimum distance (i.e., $\mbox{min}_{m} \left\{ \mbox{dist}(j,L_m) \right\}$)
is less than or equal to the given threshold value $\tau$, 
then conclude that the current data $p_j$ belongs to cluster $m$.
\item 
Otherwise, designate the current data $p_j$ as a new leader $L_{n+1}$ 
for cluster $n+1$ ($L_{n+1} \leftarrow p_j$, and $n \leftarrow n+1$).
\end{itemize} 

\noindent
Repeat {\it step 2\/} for all data ($j=2 \ldots N$).

\item {\it step 3:\/} (optional)

After determining the number of clusters for a given
threshold value $\tau$,
compute the following error measure across the obtained 
$n$ clusters ($C_i, i=1 \ldots n$):
\begin{equation}
\label{eq:ClusError}
E_{cluster} = \sqrt{ \sum_{i=1}^{n} \sum_{p_k \in C_i}
( {\bf d}^i_{k} - \bar{{\bf x}}^i )^2 },
\end{equation} 
where ${\bf d}^i_{k}$ signifies $k$th data member $p_k$ in 
cluster~$i$ ($C_i$), and $\bar{{\bf x}}^i$ denotes 
the {\bf center} of cluster~$i$ calculated by
\begin{equation}
\label{eq:ClusCenterCalc}
\bar{{\bf x}}^i = \frac{\sum_{k=1}^{\# C_i} {\bf d}^i_{k}}{\# C_i}.
\end{equation} 
Note that $\# C_i$ denotes the number of data points in
culster~$i$.

\end{itemize} 
