artificial intelligence programming assignment 2