♦ Welcome to CIS 324 — Introduction to AI ♦
Weeks |
Topics | Resources | Suggested Readings | Special Days | Important Dates |
HAs | Projects | Exams |
#1 8/28-9/1 |
- Introduction and syllabus.
Course website. Class policies and guidelines.
- Java AI program demos.
- Discussion on intelligence and artificial intelligence.
- AI categories/applications. AI programming.
- Turing test.
- Intelligent agents.
- Readings - Lucci & Kopec Chapter 1.
Monday, 8/28. Add/Drop and Late Registration via RAIL or at Ikenberry Hall.
Friday, 9/1. Last Day to Add/Drop or Late Register via RAIL or at Ikenberry Hall.
|
Assignment 1
|
#2 9/4-9/8 |
- "Classical AI" - top-down approaches.
- A problem solving framework - State. Operator. State space representation.
- State space search. Solution and solution path.
- Examples - 8-puzzle, knight's tour, and traveling-salesman problem.
- Exercise - 8-puzzle and water jug problems.
- Readings - Lucci & Kopec Chapter 2.
Monday, 9/4. Labor Day — Holiday.
Friday, 9/8. Last Day for Instructor-Approved Late Adds via RAIL.
|
|
#3 9/11-9/15 |
- Examples and exercises cont. - Game of Nim and farmer/wolf/goat/cabbage puzzle. Optional - Syntax analysis and theorem proof.
- Search methods. Breadth-first, depth-first, and best-first searches.
- Heuristic search. Evaluation functions.
- Java implementation of the state space search framework.
- Structure, classes, and methods of the framework.
- Readings - Lucci & Kopec Chapters 2-4.
|
Assignment 2
|
#4 9/18-9/22 |
- Q/As on Java implementation of the state space search framework.
|
Exam 1 on Wednesday. Covers weeks #1-3.
|
|
#5 9/25-9/29 |
- Java implementation of the state space search framework (cont.)
- Implementation of the water-jug problem.
|
Assignment 3
|
#6 10/2-10/6 |
- Dynamic programming search.
- 1D problem - Fibonacci numbers.
- 2D problem - coin change.
- Continuous knapsack problem. Procedure of greedy approaches.
- Exercises on dynamic programming search - Discrete knapsack problem.
- Readings - In-class examples.
|
|
#7 10/9-10/13 |
- Discrete knapsack problem answer.
Mid-term Exam Week.
Friday, 10/13. Last Day to Apply for May 2018 Graduation (Registrar’s Office).
|
Exam 2 at 5pm on Wednesday. Covers weeks #4-6.
|
|
#8 10/16-10/20 |
- Type and confidence of reasoning. Automated reasoning.
- Formal logics. Truth tables. Negation, conjunction, disjunction, and implication.
- Proofs of laws and formulas - de Morgan's, associative, and distributive laws.
- Predicate form. Conjunctive normal form (CNF). Clause form.
- Language representation of rules and facts. Examples and exercises - Happy student problem.
- Resolution refutation proofs. Inference methods - forward chaining and backward chaining. Exercises on CNFs and proofs.
- Fuzzy logic. Systems involving uncertainty/probability.
- Prisoner's dilemma problem. King's counterfeit coin problem.
- Readings - In-class examples. Lucci & Kopec Chapters 5 & 8.
Thursday & Friday, 10/19 & 10/20. Fall Break (or Make-up Days for Inclement Weather).
|
Assignment 4
|
#9 10/23-10/27 |
- Expert systems. Knowledge systems.
- Links to Prolog and Lisp interpreters.
- SWI Prolog reference manual.
- Introduction to Prolog. Recursion. Inference (is implied by).
- Conjunction and disjunction operators. Assignments/Statements.
- Examples/exercises - factorial, sum, exponential, and Fibonacci functions.
- Data structures in Prolog. List processing. Bar, head (car), and tail (cdr) operators.
- Examples/exercises - sum, length, append, reverse etc. list functions. Sample database.
- Case study - use Prolog to build a simple family tree (actually a graph). Starter database. Sample answers.
- Readings - In-class examples. Lucci & Kopec Chapter 9. Online resources for Prolog (see links).
Wednesday, 10/25. First Day of Academic Advisement for Continuing Students for Spring 2018.
Friday, 10/27. Last Day to Withdraw from a Full Semester Class — See Advisor by Noon.
|
|
#10 10/30-11/3 |
- Introduction to machine learning. Supervised and unsupervised learning.
- Rote learning. Concept learning. Learning by observation, from advice, from analogy etc.
- Introduction to artificial neural networks (ANNs).
- Perceptron learning – one of the simplest neural networks. Delta learning rule.
- Single instance training example.
- Multiple-instance training example.
- Readings - In-class examples. Lucci & Kopec Chapter 11.
|
|
#11 11/6-11/10 |
- Use matrixes to simplify the procedure for multiple-instance perceptrion training.
- Multiple-category classification method.
- Readings - In-class examples. Lucci & Kopec Chapter 11.
Monday, 11/6. First Day of Spring 2018 RAIL Registration for Continuing Students.
Wednesday, 11/8. Last Day of Academic Advisement for Continuing Students for Spring 2018.
|
Exam 3 on Wednesday. Covers weeks #7-10.
Assignment 5
|
|
#12 11/13-11/17 |
- Introduction to artificial memory.
- Hopfield network with one pattern.
- Hopfield network with multiple patterns.
- Implementation of Hopfield networks.
- Implementing a simple Hopfield network that memorizes two patterns.
- Example and exercise - 0 & 1 patterns. 2 simple patterns from exercise.
- Readings - In-class examples. Lucci & Kopec Chapter 11.
|
|
#13 11/20-11/24 |
Thanksgiving Recess.
|
|
#14 11/27-12/1 |
- Artificial intelligence inspired by natural behaviors and phenomena.
- Particle swarm optimization.
- Introduction to genetic algorithms.
- Concepts of gene, chromosome, individual, generation, crossover, and mutation. Selection based on fitness functions.
- Application of genetic algorithms to solve "hard" (e.g. NP-complete) problems.
- Example - CNF satisfiability problem. Traveling salesman problem (TSP).
- Readings - In-class examples. Lucci & Kopec Chapter 12.
|
Assignment 6
|
#15 12/4-12/8 |
- Implementation of genetic algorithms. Demos.
- Exercise - Implementation of the TSP problem.
- Summary of AI topics covered. Extensions.
- Final exam review.
- Readings - Lucci & Kopec Chapter 12.
Friday, 12/8. Last Day of Classes. Last Day for Complete Withdrawal from Semester.
|
|
#16 12/11-12/15 |
Final Exam Week.
|
Final Exam - 9 – 11 am, 12/14, Thursday.
|