Introduction to Artificial Intelligence

About the course: The course will introduce some methods and algorithms from different sub-fields of AI. We will be mostly focused on data-oriented methods and problem-solving approaches. Each week, we will jump into very different topics such as data mining, natural language processing, machine learning, optimization, decision analysis, neural networks, and search algorithms. Most of these topics will be discussed in a broader context in the following years.

Prerequisites:

  • Python 3.8
  • Jupyter notebook; required libraries: matplotlib, numpy, graphviz, torch
  • It is suggested to use own laptops

Grading: link

Calendar:

Laboratories:

NOTOPIC
BonusPython tutorial: Extra files containing a tutorial on Python language.

Files: bundle
1Clustering: In this lab, you will get acquainted with the topic of clustering. You will make several programming assignments linked to K-Means and AHC algorithms.

Files: bundle
2Classification: In this lab, you will get acquainted with the topic of classification. You will make several programming assignments linked to Naive Bayes and K-NN algorithms.

Files: bundle
3Decision Trees: In this lab, you will get acquainted with the topic of decision trees. You will make several programming assignments linked to ID3 algorithm.

Files: bundle
4Evolutionary Algorithms: In this lab, you will get acquainted with the topic of evolutionary algorithms. You will make several programming assignments aiming to solve the Travelling Salesman Problem.

Files: bundle
5Decision Aiding: In this lab, you will get acquainted with the topic of decision aiding. You will make several programming assignments linked to ELECTRE I.

Files: bundle
6Artifical Neural Networks: In this lab, you will get acquainted with the topic of ANNs. You will make several programming assignments linked to perceptron implementation and deep networks.

Files: bundle
7Search Algorithms: In this lab, you will get acquainted with the topic of Search Algorithms. You will make several programming assignments linked to A* algorithm.

Files: bundle