I. Introduction
In the past decade, the interest in Artificial Neural Networks (ANNs) has been growing steadily. One of the most attractive features of ANNs is their ability to solve problems that are too intractable for traditional computer, such as image processing, speech synthesis and analysis. ANNs can deal with those problems by being trained on a large representative set of examples. Then, they generalize what they learned to other cases (which are not members of the training-set). As a result of their specific structures, ANNs can be very robust for noise in their input data and be very fault-tolerant [1], [2].