Skip to content

jayurbain/artificial-intelligence

Repository files navigation


Artificial Intelligence

The objective of this course is to introduce the basic concepts of artificially intelligent systems. Topics covered include knowledge representation, search strategies and machine learning. An emphasis is placed on developing intelligent agents that can interact with their environment using machine learning techniques. Modern machine learning techniques for supervised, unsupervised, and reinforcement learning are introduced. The role of AI in engineering and computing systems is presented. Students complete exercises that allow them to apply AI in diverse problem settings including search, constraint satisfaction, game play, navigation, and natural language processing.

Prerequisites: MA-262 Probability and Statistics; programming maturity, and the ability to program in Python.

Helpful: CS3851 Algorithms, MA-383 Linear Algebra.

ABET: Math/Science, Engineering Topics.

2-2-3 (class hours/week, laboratory hours/week, credits)

Lectures are augmented with hands-on tutorials using Jupyter Notebooks. Laboratory assignments will be completed using Python and related data science and machine learning libraries: NumPy, Pandas, Scikit-learn, Matplotlib, TensorFlow, Keras, PyTorch.

Outcomes:

  • Understand the concepts of an intelligent agent and their environment.
  • Be able to address problems related to search, and its application to intelligent systems, including: game playing, decision making, and adversarial search.
  • Demonstrate an understanding of the principles of formal logic including propositional calculus, and first order logic.
  • Conduct proofs of correctness in reasoning systems using the methods of Unification and Resolution.
  • Understand the techniques involved with reasoning in the presence of uncertainty.
  • Understand and apply modern machine learning techniques for supervised, unsupervised, and reinforcement learning.
  • Understand the limitations and future challenges of AI.

References:

Artificial Intelligence, A Modern Approach. Stuart Russell and Peter Norvig. Third Edition. Pearson Education. Resources: http://aima.cs.berkeley.edu/

Reinforcement Learning: An Introduction Richard S. Sutton and Andrew G. Barto. Second Edition, in progress. MIT Press, Cambridge, MA, 2017. https://drive.google.com/file/d/1xeUDVGWGUUv1-ccUMAZHJLej2C7aAFWY/view

Deep Learning with Python, François Chollet. Manning, 2017.

Python Data Science Handbook, Jake VanderPlas, O'Reilly.


Week 1: Introduction to AI, AI History, Intelligent Agents

Lecture:

  1. Syllabus

  2. Introduction to Artificial Intelligence
    AI Demonstrations
    Reading: AIMA: Chapter 1

  3. Intelligent Agents
    Reading: AIMA: Chapter 2

Lab:

Outcomes addressed in week 1:

  • Understand the concepts of an intelligent agent and their environment.

Week 2: Search

Lecture:

  1. Uninformed Search
    Reading: AIMA: Chapter 3.1-3.5

  2. A* Search and heuristic functions
    Reading: AIMA: Chapter 4

Lab Notebooks:

Outcomes addressed in week 2:

  • Be able to address problems related to search, and its application to intelligent systems, including: game playing, decision making, and adversarial search.

Week 3: Constraint Satisfaction Problems, Games

Lecture:

  1. Online Search postpone
    Reading: AIMA Ch. 4.5

Lab Notebooks:

Outcomes addressed in week 3:

  • Understand the concepts of an intelligent agent and their environment.
  • Be able to address problems related to search, and its application to intelligent systems, including: game playing, decision making, and adversarial search.

Week 4: Logic and Inference

Lecture:

  1. Constraint Satisfaction

Reading: AIMA Ch. 5

  1. Game Play, Adversarial Search, Minimax
    Reading: AIMA Ch. 6.1-6.3, Sutton Ch. 3-4

  2. Game Play Uncertainty, Expectimax
    Reading: AIMA Ch. 6.1-6.3, Sutton Ch. 3-4.

Lab Notebooks:

Outcomes addressed in week 4:

  • Demonstrate an understanding of the principles of formal logic including propositional calculus, and first order logic.
  • Conduct proofs of correctness in reasoning systems using the methods of Unification and Resolution.

Week 5: Markov Decision Processes

Lecture:

  1. MDP 1
    Reading: AIMA Ch. 13-17, Sutton Ch. 3-4

  2. MDP 2
    Reading: AIMA Ch. 13-17, Sutton Ch. 3-4

  3. Midterm Study Guide

Lab Notebooks:

Outcomes addressed in week 5:

  • Understand the techniques involved with reasoning in the presence of uncertainty.

Week 6: Midterm, Introduction to Reinforcement Learning

Lecture:

  1. Midterm

  2. Reinforcement Learning I

Lab Notebooks:

Outcomes addressed in week 6:

  • Understand the concepts of an intelligent agent and their environment.
  • Understand and apply modern machine learning techniques for supervised, unsupervised, and reinforcement learning.

Week 7: Reinforcement Learning, Value Functions, Intro to Machine Learning, Supervised Learning

  1. Reinforcement Learning II

  2. Introduction to Machine Learning with KNN *review on your own *

  • Reading: ISLR Ch. 4.6.5
  1. Linear Regression 1
  • Reading: PDSH Ch. 5 p. 331-375, 390-399
  • Reading: ISLR Ch. 1, 2
  1. Logistic Regression Classification
  • Reading: ISLR Ch. 4

Lab Notebooks:

References:

Outcomes addressed in week 7:

  • Understand and apply modern machine learning techniques for supervised, unsupervised, and reinforcement learning.

Week 8: Macine Learning - Deep Learning

Lecture:

  1. Deep Learning Introduction 1
    Reference for earlier in class:

  2. Deep Learning Introduction 2 Optional

  3. Backpropagation Optional

YouTube: Deep Learning Revolution

Lab Notebooks:

Complete the following Get Started with TensorFlow tutorials. Optional, but recommended

https://www.tensorflow.org/tutorials/ Train your first neural network: basic classification
https://www.tensorflow.org/tutorials/keras/basic_classification Explore overfitting and underfitting
https://www.tensorflow.org/tutorials/keras/overfit_and_underfit

Outcomes addressed in week 8:

  • Understand the concepts of an intelligent agent and their environment.
  • Be able to address problems related to search, and its application to intelligent systems, including: game playing, decision making, and adversarial search.
  • Understand the techniques involved with reasoning in the presence of uncertainty.
  • Understand and apply modern machine learning techniques for supervised, unsupervised, and reinforcement learning.

Week 9: Convnets, Deep RL

Lecture:

  1. Convolutional Neural Networks

  2. Visualizing what ConvNets Learn

  3. Deep Q-Learning available Thursday

Reading:

  • DLP Ch. 5

Lab Notebooks:

Outcomes addressed in week 9:

  • Understand the concepts of an intelligent agent and their environment.
  • Be able to address problems related to search, and its application to intelligent systems, including: game playing, decision making, and adversarial search.
  • Understand the techniques involved with reasoning in the presence of uncertainty.
  • Understand and apply modern machine learning techniques for supervised, unsupervised, and reinforcement learning.

Week 10: Advanced Topics

Lecture:

  1. Generative Models, Autoencoders, Generative Adversarial Networks

  2. GAN coding walkthrough:
    DCGAN MNIST
    DCGAN CIFAR10

  3. Deep Learning AI State of the Art

  4. Final Exam Study Guide

Outcomes addressed in week 10:

  • Understand the concepts of an intelligent agent and their environment.
  • Be able to address problems related to search, and its application to intelligent systems, including: game playing, decision making, and adversarial search.
  • Understand the techniques involved with reasoning in the presence of uncertainty.
  • Understand and apply modern machine learning techniques for supervised, unsupervised, and reinforcement learning.

Optional material: Deep Learning for NLP

Lecture:

  1. NLP Classification optional

  2. NLP Translation optional

  3. Artificial General Intelligence (MIT)

  4. Artificial General Intelligence (Machine Learning Summer School)

Lab Notebooks:

Note: need to prune answers from notebooks

Outcomes addressed in week 10:

  • Understand the concepts of an intelligent agent and their environment.
  • Be able to address problems related to search, and its application to intelligent systems, including: game playing, decision making, and adversarial search.
  • Understand the techniques involved with reasoning in the presence of uncertainty.
  • Understand and apply modern machine learning techniques for supervised, unsupervised, and reinforcement learning.

Week 11: Final Exam

Wednesday 11:00 AM - 1:00 PM S243

About

Artificial Intelligence course materials

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published