[home]
Introduction to AI (2022/2023)
Tutorial for Introduction to Artificial Intelligence
This page is intended for the English tutorial held each Tuesday at 12:20.
Textbooks
The lecture is based on Russell and Norvig, Artificial Intelligence: A Modern Approach, 4th Edition (Prentice Hall, 2020)
Organization
To earn the credit, it is necessary to earn enough points for solving programming oriented assignments. Each assignment is worth at least 10 points. The threshold for passing is $7 \times \text{number of assignments}$. The expected number of assignments is $10$, but this may change due to some unforeseen circumstances.
All of the assignments will be posted on ReCodEx. The source codes to solve the assignments are hosted on Git. All of the assignments are implemented in Python and due to the automatic checks performed by ReCodEx it is necessary to adhere to the provided templates. The deadline will always be around 2 weeks, but for the exact dates, see ReCodEx.
It is NOT mandatory to attend the classes, however, it is highly recommended as the topics discussed during the class may help you with solving the assignments.
It is forbidden to share the code of your solutions with your colleagues. On the other hand, it is allowed to discuss the approach to solving the assignments.
If someone feels that they are missing the opportunity to earn the credit, do not be afraid to contact me. Such cases will be dealt with individually based on your approach to the exercise.
Lectures
Here will be posted a brief summary of what happened in each lesson. If applicable, a PDF with exercises calculated during the lesson will also be posted.
 21.02.

 Organization info.
 Discussion about what is AI and what to expect during the class.
 28.02.

 Tree search vs Graph search
 Differences between DFS, BFS, Dijkstra, A* and an example on a specific graph.
 Basic heuristic design. When and why use monotonous and admissible heuristic.
 07.03.

 CSP
 Graph coloring using CSP and nqueens problem.
 How to solve CSP problem using search, arc consistency, AC3 algorithm, the difference between forward check and look ahead.
 14.03.

 SAT
 Encoding variables with nonbinary domains, encoding "at least 1" and "at most 1"
 DPLL algorithm, the order of pure literal elimination and unit clause propagation.
 21.03.

 Planning, classical planning vs SATplan
 PDDL, specifically, we solved the gripper problem.
 28.03.

 Finished up classical planning  forward and backward search.
 Probability, conditional probability, Bayesian network.
 Example of Wumpus world where we calculated probabilities of holes based on observation of breeze.
 04.04.

 Continuing with probability.
 Queries on Bayesian networks. Solving via enumeration and variable elimination.
 11.04.

 Markov chain (MC) and hidden Markov model (HMM).
 Prediction of sunny/rainy days by MC.
 18.04.

 Filtering and smoothing for HMM. Nice slides with solved examples may be found here.
 25.04.

 Decision making. Utility function vs reward.
 Value iteration. Policy iteration.
 02.05.

 Minimax, its problems, and solutions  depth (heuristic evaluation), branching factor (alphabeta pruning, policy).
 One turn games. Dominant strategy, Nash equilibrium.
 09.05.

 Machine learning.
 Decision trees, linear regression.
 16.05.

 Cancelled since only 1 student arrived. Discussed the last homework.