Instructor: Motaz Saad
Course Name: Artificial Intelligence / Intelligent and Decision Support Systems
Course ID: CSCI4304 / SICT4402
Term: Spring 2020
Prerequisites: Programming, Data Structure.
Course Description
This course provides students with the main fundamentals of Artificial Intelligence (AI). The course covers the main techniques that are used in AI examples (from chess-playing to self-driving cars). These techniques include search algorithms, probability, reasoning and inference, programming logic, expert systems, rule-based systems, fuzzy logic, machine learning, knowledge representation, pattern recognition, and natural language processing. The course helps students to use AI to solve specific problems in their future careers. The theoretical part of the course focuses on understanding concepts, structures, and algorithms, while the practical part (lab) includes a set of exercises to be performed using AI tools such as CLIPS, Weka, and Matlab.
Textbooks
Michael Negnevitsky, Artificial Intelligence: Intelligent Systems Approach, 3/E, ISBN: 9781408225745, 2011.
Stuart Russell and Peter Norvig, Artificial Intelligence: A Modern Approach, Global Edition 3/E, ISBN: 9781292153964, 2017.
Topics
Introduction: What is AI?
State of the art of AI
Intelligent Agents (1 week, chapter 2 from Modern Approach book)
Problem Solving and Search Algorithms (2 weeks, chapter 03 and chapter04 from Modern Approach book)
Problem Solving
Search Algorithms
Breadth-first search
Uniform-cost search
Depth-first search
Depth-limited search
Iterative deepening search
Best-first search
A* search
Heuristics
Game Playing (1 week, chapter06 from Modern Approach book). MinMax Algorithm.
Rule-based expert systems (1 week, Chapter 02 from Intelligent Systems Approach book)
Fuzzy expert systems (1 week, Chapter 04 and Chapter 05 from Intelligent Systems Approach book)
Artificial neural networks (Supervised) (Chapter 07 – Artificial Neural Networks – Supervised Learning)
Artificial neural networks (Unsupervised) (Chapter 08 – Artificial Neural Networks – Unsupervised Learning)
Evolutionary computation (Chapter 09 – Evolutionary Computation – Genetic Algorithms)
Hybrid intelligent systems
Chapter 11 – Hybrid Intelligent Systems – Neural Expert Systems and Neuro-fuzzy Systems
Chapter 12 – Hybrid Intelligent Systems – Evolutionary Neural Networks and Fuzzy Evolutionary Systems
Natural Language Processing (NLP Intro)
Video Lectures
IUG Video Lectures
My Desktop Recordings
Grading
Activities and Assignments 20%
Mid exam 30%
Final Exam 50%
Tools
CLIPS
Download
User Guide
Tutorial
Search tools from AI Space
PyKnow: Expert Systems for Python. Docs.
WEKA: a collection of machine learning algorithms
Genetic Algorithms with Python: Tutorial, code
Neural networks with python
build Neural Network from scratch in Python
Python Libraries
TensorFlow
Blocks
Lasagne
Keras
Deepy
Nolearn
NeuPy
Matlab toolboxes: Genetic Algorithm, Fuzzy Logic
Applications
Image captioning, image capturing with deep learning
0 Comments