Search and games, knowledge representation paradigms, natural language understanding, planning, perception. Use of the LISP language for one or more programming projects.