CS441 Introduction to Artificial Intelligence

CS441: Introduction to Artificial Intelligence

Classes: Wednesday 14.00 – 17.00 pm

Location: Courses will be online on Discord (for server link please contact Elif Su YİĞİT <elifsu.yigit@optiwisdom.com> )

Instructor: Dr. Şadi Evren ŞEKER (+9 0531 605 6726)

E-Mail: ai@sadievrenseker.com

Web Site: TBA

 

Course Content:

  • History and Philosophy of the Artificial Intelligence (AI)
  • Classical AI approaches like search problems, machine learning, constraint satisfaction, graphical models, logic etc.
  • Learning how to model a complex real-world problem by the classical AI approach

Objectives:

  • Introduction to Artificial Intelligence Problems
  • Programming with Python for solving Real Life problems with AI Algorithms
  • Writing a real world application with an AI module (like a game)
  • Introducing sub-AI topics like neural computing, uncertainity and bayesian networks, concept of learning (supervised / unsupervised) etc.

Texts:

  • S. Russell and P. Norvig Artificial Intelligence: A Modern Approach Prentice Hall
  • —A must check : http://aima.cs.berkeley.edu
  • Another useful link: https://www.cse.wustl.edu/~garnett/cse511a/
  • Some parts of the course is related to Machine Learning, Data Science, Data Mining, Pattern Recognition, Natural Language Processing, Statistics, Logic, Artificial Neural Networks and Fuzzy Logic, so you can read any [text] books about the topics.

—Grading:

Final Exam (100%).

Requirements and grading details: You are asked to solve the same problem with 2 different AI approaches in same programming language (you can pick any programming language) and compare them. The grading details are listed below:

  • Cheating = 0%, if somebody else solves your problem, writes your code, or you submit an already solved project without any effort on the project and without understanding the approach, strategy or coding, than you will be considered as you have submitted somebody else’s code and you will get 0 and fail the course, without exception.
  • Grading from Approach 1 = Code for Approach 1 (Code will be questioned during demonstration) (25%) + Detailed Report about Approach 1 (5%) + Presentation about Approach 1 ( 5%) = 35%
  • Grading from Approach 2 = Code for Approach 2 (Code will be questioned during demonstration) (25%) + Detailed Report about Approach 2 (5%) + Presentation about Approach 2 ( 5%) = 35%
  • Grading from comparing your approaches = If you have coded two approaches and if both of them are working, then you are asked to compare their advantages and disadvantages, processing complexity, memory complexity, your comments about these approaches. (presentation 10% + report 10% + demonstration 10%).

Grading summary : Approach 1 (35%) + Approach 2 ( 35%) + Comparison (30%) = 100%

  • These percents only represents the maximum score you can get from any part of the project, the grading may be lower, related to the quality of your submission.
  • Also grading will be individual, so depending on the answers during the demonstration you can get a different grade than your team mates.

Important Dates about Projects:

  • 5th of Jan, until midnight, for the submissions of project code (submit all related libraries or data files to execute your code), report (word or pdf format) and presentation files (power point or pdf format).
  • 6th of Jan, until 14.00, project presentation video (submit a video link to the discord channel, so everybody in the class can watch your presentation, the video link can be a youtube video or any drive link)
  • Final Exam week , TBA, Demonstrations, you will be invited to a time slot of 30 minutes. Please check the discord channel for updates.

Final Exam date will be announced at the end of the semester, demonstrations will be by invitation, during the final exams week.

Projects:

Final Project will be group work (max 3 people in a group), and expectations are : Project Report, Project Presentation, Running Code in Python (updated: the programming language is up to you, but you have to use the same programming environment/language for the whole project).

Projects should include at least 2 implementation from following list:  1) Search/ Heuristic, 2) CSP, 3) Game Trees, 4) Logic, 5) Fuzzy, 6) Machine Learning / ANN

Late Submission Policy: Any late submission will get 10% penalty for each 24 hours. Demonstration has no postpone and if you don’t appear on demo time you lose your grade percent from your code.

Course Outline:

  • —Introduction and Agents (chapters 1,2)
  • —Search (chapters 3,4,5,6)
  • —Logic (chapters 7,8,9)
  • —Planning (chapters 11,12)
  • —Uncertainty (chapters 13,14)
  • —Learning (chapters 18,20)
  • —Natural Language Processing (chapter 22,23)

Schedule and Contents (Very Very Very Tentative):

  • Class 1, :[PPT] Introduction : Course Demonstration Slides, Introduction Slides
  • Class 2, : [PPT] Agents
  • Class 3, :  [PPT] Search
  • Class 4, : No Class
  • Class 5, : [PPT] Heuristic Search
  • Class 6, : [PPT]Constraint Satisfaction Problems
  • Class 7, : [PPT] Game Playing
  • Class 8, : Constraint Satisfaction Problems (CSP)
  • Class 9, : [PPT] Logic, [PPT]First Order Logic, Inference in First Order Logic, [PPT] Uncertainity and Fuzzy Logic.
  • Class 10, : Supervised / Unsupervised Learning and Classification / Clustering Problems, k-nn, Decision Tree, Random Forest, Logistic Regression
  • Class 11, : Regression : Logistic Regression, Decision Tree Regression, Linear Regression, Polynomial Regression
  • Class 12, :  [PPT] Artificial Neural Networks
  • Class 13, : Project Presentations
  • Class 15, : Project Presentations
  • Class 16, : No Class. [PPT] Genetic Algorithms
  • Final Exam : Date TBA

Collaboration Policy: You may freely use internet resources and your course notes in completing assignments and quizzes for this course. You may not consult any person other than the professor when completing quizzes or exams. (Clarifying questions should be directed to the professor.) On assignments you may collaborate with others in the course, so long as you personally prepare the materials submitted under your name, and they accurately reflect your understanding of the topic. Any collaborations should be indicated by a note submitted with the assignment.

Announcements

Please fill the knowledge card attached here, and send it back via email.