The BRADLEY DEPARTMENT of ELECTRICAL and COMPUTER ENGINEERING

Undergraduate PROGRAMS

Course Information

Description

Problem solving methods; problem spaces; search techniques; knowledge representation; programming languages for AI; games; predicate logic; knowledge-based systems; machine learning; planning techniques; reactive systems; artifical neural networks; natural language understanding; computer vision; robotics.

Why take this course?

Computational systems are very good at repetitive tasks that are completely specified in advance. They do not perform so well at tasks that are poorly specified. The course presents Artificial Intelligence as providing the potential for making computers more useful, motivated in part by biological systems. Engineering applications are used to illustrate the concepts.

Design Technical Elective for CPE; Technical Elective for EE

Prerequisites

2574; STAT 4714

ECE 2574 is needed to ensure a modest level of programming ability. STAT 4714 is needed as a background for discussions of inductive inference and machine learning.

Major Measurable Learning Objectives

  • Formulate problems that involve knowledge representation and state-space search
  • Demonstrate proficiency with an AI programming language
  • Develop and analyze software that performs heuristic search
  • Develop and analyze software for game-playing using adversarial search
  • Use predicate logic to represent facts and perform resolution theorem proving
  • Develop algorithms and software for action planning, machine learning, natural language processing, and computer vision in constrained problem domains
  • Develop and analyze a knowledge-based ("expert") system
  • Describe the operation and limitations of common artificial neural network systems

Course Topics

Topic

Percentage of Course

What is artificial intelligence? 5%
Languages for Artificial Intelligence programming: Lisp, Prolog 10%
Problems and Problem Spaces 5%
Basic Problem Solving Methods and Heuristic Search 10%
Games 10%
Predicate Logic and Theorem Proving 10%
Knowledge Representation 5%
Knowledge-based (Expert) Systems 10%
Machine Learning 10%
Natural Language Understanding 10%
Computer Vision and Scene Analysis 5%
Planning Methods and Reactive Systems 10%