IS. Intelligent Systems (10 core hours)

IS1. Fundamental issues in intelligent systems (core -- 2 hours)

  Definitions of intelligent systems
  Optimality vs. speed tradeoff

IS2. Search and optimization methods (core -- 4 hours)

  Problem spaces
  Brute-force search (DFS, BFS, uniform cost search)
  Heuristic search (best-first, A*, IDA*)
  Local search (hill-climbing, simulated annealing, genetic search)
  Game-playing methods (minimax search, alpha-beta pruning)
  Constraint satisfaction (backtracking and heuristic repair)

IS3. Knowledge representation and reasoning (core -- 4 hours)

  Representation of space and time
  Representations of events and actions
  Probabilistic reasoning
  Bayes theorem
  Predicate calculus and resolution
  Logic programming and theorem proving
  AI planning systems

IS4. Learning

  Unsupervised vs. supervised learning
  Inductive vs. deductive
  Classification vs. clustering vs. prediction
  Decision tree learning and neural network learning as examples

IS5. Agents

  Action selection and planning
  Collaboration between people and agents
  Communication between people and agents
  Expert assistants
  Agent architectures
  Interacting with stochastic environments
  Reinforcement learning
  Multi-agent systems
  Game theory and auctions

IS6. Computer vision

  Image acquisition, processing, and display
  Edge detection
  Camera models
  Calibration of camera models from images
  Color constancy
  Texture
  Segmentation
  Object recognition
  Motion
  Tracking

IS7. Natural language processing

  Deterministic and stochastic grammars
  Parsing algorithms
  Corpus-based methods
  Information retrieval
  Language translation

IS8. Pattern recognition

  Statistical pattern recognition
  Syntactic pattern recognition
  Bayesian decision theory
  Linear discriminant functions
  Feature extraction for representation
  Feature extraction for classification
  Supervised learning
  Unsupervised learning and clustering

IS9. Advanced machine learning

  Learning belief networks
  Decision-tree learning
  Reinforcement learning algorithms
  Neural net learning
  Genetic algorithms and evolutionary programming
  Inductive logic programming
  PAC learning and beyond

IS10. Robotics

  Navigation and control
  Optimization and learning
  Perception
  Path planning
  Direct and inverse kinematics
  Robot programming
  Robot simulation environments

IS11. Knowledge-based systems

  Design and development of knowledge-based systems
  Knowledge representation mechanisms
  Reasoning with uncertainty (nonmonotonic logics, certainty factors, fuzzy logic)
  Knowledge acquisition techniques
  Knowledge engineering
  Tools for knowledge-based system development

IS12. Neural networks

  Single-layer networks
  Supervised learning
  Multi-layer perceptrons and back-propagation
  Competitive learning networks
  Examples of multi-layer networks
  Other network architectures and their applications

IS13. Genetic algorithms

  Brief history of evolutionary computation
  Theoretical foundations of genetic algorithms
  Implementing a genetic algorithm
  Applications of genetic algorithms
  Genetic programming