1. A hierarchal neural network architecture, comprising: at least three architecturally distinct, separately trainable, neural networks disposed at differing levels within a hierarchy, the at least three neural networks each having a plurality of neurons, and at least one respective input and at least one respective output, and being ordered within the hierarchy to represent different levels of cognitive complexity, and having interconnections with neural networks at adjacent higher and lower hierarchal levels, wherein outputs from each neural network at a respectively lower hierarchal level provide input for, and a basis for an output of, a neural network at a next respectively higher hierarchal level, and modifying signals from each neural network at a respectively higher hierarchal level provide feedback for at least a neural network at a next respectively lower hierarchal level; and said outputs being defined in terms of non-arbitrary organizations of actions available to a respective neural network dependent on at least its respective hierarchal level and represented level of cognitive complexity, wherein outputs of neural networks at different hierarchal levels have respectively different non-arbitrary organizations of actions, a relationship of input to output of a respective neural network at a respective hierarchal level being a transformation of the inputs received, to an output representing said non-arbitrary organization of said actions available to said respective neural network, modified in dependence on the feedback received from neural networks at respectively higher hierarchal levels.