Artificial Intelligence for Human Computer Interaction: A Modern Approach