Functioning of self-organizing neural network is divided into three stages:

     System, which is supposed to realize functioning of self-organizing network, should consist of few basic elements. First of them is a matrix of neurons which are stimulated by input signals. Those signals should describe some attributes of effects which occure in the surrounding. Thanks to that description the net is able to group those effects. Information about events is translated into impulses which stimulate neurons. Group of signals transfered to every neuron doesn't have to be identical, even its number may be various. However they have to realize one condition: unambiguously define those events.

     Another part of the net is a mechanism which defines the stage of similarity of every neuron's wage and input signal. Moreover it assigns the unit with the best match - the winner. At the beginning the wages are small random numbers. It's important that no symetry may occure. While learning, those wages are being modificated in the best way to show an internal structure of input data. However there is a risk that neurons could link with some values before groups are correctly recognized. Then the learning process should be repeated with diffrent wages.

     At last, absolutely necessary for self-organizing process is that the net is able to adapt wages values of winning neuron and his neighbours, according to response strenght. Net topology can be defined in a very simple way by determining the neighbours of every neuron. Let's call the unit whose response on stimulation is maximal the image of this stimulation. Then we can presume that the net is in order, if topologic relations between input signals and their images are identical.