Dissertação apresentada para obtenção do grau de Mestre em Inteligência Artificial e Computação, na Faculdade de Engenharia da Universidade do Porto