ECE466

Knowledge-Systems Engineering
To be Offered Spring 2014
Designation: 
Technical Elective for ECE
Catalog Data: 
Offered every two years. 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.
May be convened with ECE 566
Other Fee 
Special fee may apply for web delivered sections. See the M.Eng Website (http://www.oneflexibledegree.com) for details
 


Grading: Regular grades are awarded for this course: A B C D E.
Usually offered: Spring

Textbook(s): 

"Artificial Intelligence: A Modern Approach", Stuart Russell, Peter Norvig, latest edition, Prentice Hall.

Course Learning Outcomes: 
  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, Look ahead, 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 from 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, Intro to 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.
4 major assignments during semester plus a few small assignments
One semester project
Midterm examination plus a final examination.
Computer Usage: Major assignments include programming in a high level language such as Java.

Relationship to Student Outcomes: 

(a)  an ability to apply knowledge of mathematics, science, and engineering (HIGH),
(e)  an ability to identify, formulate, and solve engineering problems (MEDIUM),
(g)  an ability to communicate effectively (LOW)
(i)  a recognition of the need for, and an ability to engage in life-long learning (LOW),

Prepared by: 
Dr. Michael Marefat
Prepared Date: 
01/01/2013

University of Arizona College of Engineering