ECE 4524 - Artificial Intelligence and Engineering Applications
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
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
Percentage of Course
What is artificial intelligence?
Languages for Artificial Intelligence programming: Lisp, Prolog
Problems and Problem Spaces
Basic Problem Solving Methods and Heuristic Search