ECE 466

Knowledge-Systems Engineering
Spring every other year
Catalog Data: 

ECE 466 - Knowledge-Systems Engineering

Description: Design and implementation of knowledge-based software systems, machine intelligence, expert system design, reasoning under uncertainty, advanced automated problem solving methods, case-based reasoning, machine learning, genetic algorithms, distributed intelligent systems, logical foundations of knowledge systems. Applications to robotics, manufacturing and CAD.

Grading: Regular grades are awarded for this course: A B C D E

May be convened with ECE 566

A special fee may apply for online sections


Russell, Stuart, and Peter Norvig. Artificial Intelligence: A Modern Approach. 3rd ed. Pearson, 2009.

Course Learning Outcomes: 
By the end of this course, the student will be able to:
  1. Understand propositional and first-order logic
  2. Represent information in first-order logical formulas, and perform formula unification/matching
  3. Understand forward and backward automated inference
  4. Formulate problems as state-space search
  5. Develop programs for breadth-first, depth-first, heuristic, and hill-climbing searches
  6. Represent information in semantic networks
  7. Understand constraint networks, constraint satisfaction, and develop programs for constraint satisfaction
  8. Understand genetic operators, genetic optimization and genetic learning, and write programs for this purpose
  9. Understand Bayes rules, Bayesian belief networks, and evidence accumulation
Course Topics: 
  • Knowledge representation in first-order logic, matching and unification of first-order logic formulae (2 lectures)
  • Rule-based expert systems, rule firing, forward and backward chaining (2 lectures)
  • Automated planning and problem solving, total-order problem solvers, least-commitment planning, hierarchical problem solving (4 lectures)
  • Search methods, depth-first search, breadth-first search, heuristic search, greedy search, A* algorithms, hill climbing (2 lectures)
  • Structured knowledge representation; representing knowledge using frames, objects and semantic networks; first-order logic correspondence; matching; inheritance; defaults; and automated inference (2 lectures)
  • Constraints, constraint networks, constraint satisfaction, node and arc consistency, compound labeling, constraint satisfaction algorithms, problem reduction, back jumping, interval constraints, interval calculus, algorithms for interval constraint satisfaction (4 lectures)
  • Genetic algorithms, genetic representation of knowledge, fitness functions, genetic operators, genetic search and optimization, genetic learning (2 lectures)
  • Bayesian probabilistic networks, fundamentals of probability theory, likelihood vectors and conditional probability matrices, hierarchical propagation of evidence, computational algorithms for general networks (5 lectures)
  • Dempster-Shafer theory of evidence, belief interval representations for uncertainty, evidence accumulation and propagation (2 lectures)
  • Knowledge-based decision systems, utility theory, utility functions, decision networks, decision-theoretic knowledge systems, sequential decision problems, value iteration (3 lectures)
Class/Laboratory Schedule: 

Two 75-minute lectures per week

Relationship to Student Outcomes: 

ECE 466 contributes directly to the following specific electrical and computer engineering student outcomes of the ECE department:

  • Ability to apply knowledge of mathematics, science and engineering (high)
  • Ability to identify, formulate and solve engineering problems (medium)
  • Ability to communicate effectively (low)
  • Recognition of the need for, and an ability to engage in, life-long learning (low)
Prepared by: 
Michael Marefat
Prepared Date: 

University of Arizona College of Engineering