Knowledge-Systems Engineering
Spring 2014 // Offered every two years
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 web-delivered 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:

  • an ability to apply knowledge of mathematics, science and engineering (High)
  • an ability to identify, formulate, and solve engineering problems (Medium)
  • an ability to communicate effectively (Low)
  • a recognition of the need for, and an ability to engage in life-long learning (Low)
Prepared by: 
Dr. Michael Marefat
Prepared Date: 

University of Arizona College of Engineering