Learning Artificial Intelligence Algorithms