Artificial Neural Networks - Architectures and Algorithms