GWR Algorithm


The Grow When Required Network

As part of my PhD thesis I developed an on-line, self-organising clustering algorithm, called the `Grow When Required' (GWR) algorithm because of the way that it adds nodes into the map space, that is particularly suited to novelty detection, but can also be used for other unsupervised learning tasks.

Details of the algorithm can be found in the following paper:
Stephen Marsland, Jonathan Shapiro and Ulrich Nehmzow
A Self-organising Network that Grows When Required
Neural Networks, 15(8-9):1041-1058, 2002,
and others available from my publications page, and my PhD thesis.
Please note that there is a reference to a similar piece of work omitted from this paper. It is:
A. Baraldi and P. Blonda, "A survey of fuzzy clustering algorithms for pattern recognition: Part II", IEEE Trans. Systems, Man and Cybernetics - Part B: Cybernetics, vol. 29, no. 6, pp. 786-801, Dec. 1999.

You can download MATLAB(R) code for the algorithm here. This code comes with absolutely no warranty, but please contact me if you find any bugs in it. If you use it, please acknowledge it.