ICS 361: Introduction to Artificial Intelligence Programming

Description: Introduction to the theory of Artificial Intelligence and the practical application of AI techniques in Functional (Common LISP and/or Scheme) and Logic (Prolog) programming languages. Students gain practical experience through programming assignments and projects. A-F only.

Objectives: The objective of the course is to expose students to the concepts in artificial intelligence and the functional and logic programming paradigms. This is fundamental knowledge for all computer science students as described in the current ACM (Association for Computing Machinery) curriculum recommendations. Artificial intelligence has only been available to seniors (400 level) and infrequently offered at UH. The addition of this course will bring the fundamentals of artificial intelligence along with alternative programming paradigms to more students. This course integrates with the new curriculum and provides an alternative to ICS313, programming language theory, which is a requirement for ICS majors.

Course Learning Outcomes: • Students are familiar with the fundamental concepts and algorithms of Artificial Intelligence including searching, planning, problem solving, logic and knowledge representation. • Students are able to implement AI algorithms in a functional (e.g., Scheme or Lisp) or logic (e.g., Prolog) programming language. • Students appreciate the problems, current limitations and future potential of AI • Students are able to recognize when AI techniques might be successfully applied to problem and when the problem is beyond the current state-of-the-art in AI • Students have successfully implemented several small AI programs.

Program Learning Outcomes

Prerequisites: 241 and (212 or 215), or consent.

Textbook(s): AI Algorithms, Data Structures, and Idioms in Prolog, Lisp, and Java, 6th edition by George F. Luger and William A Stubblefield, Addison Wesley. Artificial Intelligence: Structures and Strategies for Complex Problem Solving, 6th edition by George F. Luger, Addison Wesley.

Grading: 40% on assignments 20% on in-class quizzes 15% on the midterm exam 25% on the final exam.