1. A method utilizing a neural network for solving a problem of optimizing an arrangement of a plurality of interconnected parts among N positions in M dimensions, the neural network having a plurality of neurons, each neuron having at least one input, each input having a synapse, each synapse having a weight, a composite weight being formed for a neuron as an ordered combination of the weight of each synapse of the neuron, the method comprising the steps of: a) assigning each of the plurality of neurons to a different part, of the plurality of parts; b) initializing the weight of each synapse of each neuron; and c) determining an arrangement of parts by performing a learning cycle, the learning cycle comprising the steps of: i) inputting a position coordinate indicative of one of the N positions to the inputs of a set of neurons, of the plurality of neurons; ii) generating, for each neuron of the set of neurons, a similarity value responsive to the input coordinate to a neuron and the composite weight of the neuron; iii) selecting a fittest neuron, from the set of neurons, whose similarity value is an extreme value across the set of neurons; iv) updating the weight of each synapse of the neurons of the set of neurons; and d) repeating the steps c)i through c)iv until all of the plurality of neurons have been selected as a fittest neuron.