Introduction to all major topics in artificial intelligence including search, logic, optimization, constraint satisfaction, planning, multiagent systems, machine learning. The class prepares students for advanced study and research in each of the individual topics and provides students with tools to apply the approaches to numerous industrial applications. The assignments involve a mix of theoretical and implementation exercises.

**Professor**: Sam Ganzfried

**Teaching assistant:** Farzana Yusuf (fyusu003@fiu.edu)

**Textbook**s:

Artificial Intelligence: A Modern Approach by Stuart Russell and Peter Norvig (main textbook)

Operations Research Models and Methods by Paul Jensen and Jonathan Bard

Learn Python the Hard Way by Zed Shaw

**Background:** Students should be familiar with all the material in this document on mathematical proofs and with at least one standard programming language (e.g., Python, C, Java).

**Project: **For the class project students will implement an agent for 3-player Kuhn poker. This is a simple, yet interesting and nontrivial, variant of poker that has appeared in the AAAI Annual Computer Poker Competition. The grade will be partially based on performance against the other agents in a class-wide competition, as well as final reports and presentations describing the approaches used. Students can work alone or in groups of up to 3.

**Evaluation: **homeworks (every two weeks), midterm exam, final exam, class project

**Outline:**

1) Search

-- uninformed search, informed search, local search, adversarial search, constraint satisfaction

2) Logic

-- propositional logic, first-order logic, logical inference

3) Optimization

-- integer optimization, linear optimization, nonlinear optimization

4) Planning

-- classical planning, spatial planning

5) Probability

-- Bayesian networks, hidden Markov models

6) Decision making

-- Markov decision processes, multiagent systems, reinforcement learning

7) Machine learning

-- classification, regression, clustering, deep learning

**Lectures:**

Lecture 1 (8/22)

-- slides

-- assignment: read proof review document and Ch. 3.1-3.4 from Russell/Norvig textbook

Lecture 2 (8/24)

-- slides

-- slides from Python tutorial

-- assignment: read Ch. 3.5-3.7 from Russell/Norvig textbook

Lecture 3 (8/29)

-- slides

-- assignment: read Ch. 4 from Russell/Norvig textbook

Lecture 4 (8/31)

-- slides

-- assignment: read Ch. 5 from Russell/Norvig textbook

Lecture 5 (9/5)

-- slides

-- assignment: HW1 out (due 10/3), read Ch. 6 from Russell/Norvig textbook

Lecture 6 (9/19)

-- slides

-- assignment: read Ch. 7 from Russell/Norvig textbook

Lecture 7 (9/21)

-- slides

-- assignment: read Ch. 8 from Russell/Norvig textbook

Lecture 8 (9/26)

-- slides

-- assignment: read Ch. 9 from Russell/Norvig textbook

Lecture 9 (9/28)

-- slides

-- assignment: read Ch. 7-8 from Jensen textbook

Lecture 10 (10/3)

-- slides

-- assignment: read Ch. 2-3 from Jensen textbook

Lecture 11 (10/5)

-- slides

-- assignment: HW2 out (due 10/18), read Ch. 9-10 from Jensen textbook

Lecture 12 (10/10)

-- slides

-- assignment: read Ch. 10 from Russell/Norvig textbook

Lecture 13 (10/12)

-- slides

-- assignment: read Ch. 25 from Russell/Norvig textbook

Lecture 14 (10/17)

-- slides

Lecture 15 (10/19)

-- slides

Midterm exam (10/24)

Lecture 16 (10/26)

-- slides

-- assignment: read Ch. 13 from Russell/Norvig textbook

Lecture 17 (10/31)

-- slides

-- assignment: HW3 out (due 11/14), read Ch. 14 from Russell/Norvig textbook

Lecture 18 (11/2)

-- slides

-- assignment: read Ch. 15 from Russell/Norvig textbook

HW2 review and discussion by TA (11/7)

Lecture 19 (11/9)

-- slides

-- assignment: read Ch. 16 from Russell/Norvig textbook

Lecture 20 (11/14)

-- slides

-- assignment: HW4 out (due 12/1), read Ch. 17 from Russell/Norvig textbook

Lecture 21 (11/16)

-- slides

-- assignment: read Ch. 21 from Russell/Norvig textbook

Lecture 22 (11/21)

-- slides

-- assignment: read Ch. 22 from Russell/Norvig textbook

Lecture 23 (11/28)

-- slides

-- assignment: read Ch. 18 from Russell/Norvig textbook

Lecture 24 (11/30)

-- slides

-- assignment: final project agent code due 12/4.

Lecture 25 (12/5)

-- slides

-- assignment: final project paper and presentations due 12/7.

-- slides on neural networks (deep learning) (not covered on final exam)

Lecture 26 (12/7) (Project presentations)

-- Agent South

-- EFS

-- Juan

-- Kevin

-- TE

-- Thief

Artificial Intelligence