Artificial Intelligence

Course objectives

General goals: The course aims at introducing students to a wide-spectrum presentation of Artificial Intelligence (AI). Specific goals: The course aims at making students proficient in the theoretical comprehension of a wide set of AI techniques and in the practical use of such techniques within the design of intelligent software systems. Knowledge and understanding: A wide-spectrum introduction to the foundational principles and the different branches of Artificial Intelligence (AI), knowledge about problem solving by searching, logic inference, planning, automated reasoning, learning. Applying knowledge and understanding: The successful student will be able to exploit the portfolio of techniques and the different approaches shown in the course for the design and the successful implementation of intelligent software systems. Critical and judgmental skills: Students will be able to take autonomous and rational decisions on the most effective AI techniques to employ in the design of intelligent software systems. Communication skills: Students will be able to interact proficiently with other AI researchers on a wide set of AI topics. Learning capabilities: Students will be able to extend their skills in the subjects of this course, by the autonomous reading of the scientific literature on AI.

Channel 1
TONI MANCINI Lecturers' profile

Program - Frequency - Exams

Course program
1. Introduction to Artificial Intelligence (AI), history and areas of AI 2. Agents, rationality, task environments 3. Non-informed search strategies: breadth-first, min-cost, depth-first, bounded depth, iterative deepening 4. Informed search strategies: best-first greedy, A*, heuristics: admissibility and consistency 5. Iterative refinement algorithms: hill-climbing, steepest-descent, simulated annealing, local beam, genetic algorithms 6. Constraint Satisfaction Problems: definition, variants, constraint propagation (node-, (generalised-)arc-, path-, K-consistency), backtracking, backjumping, local search 7. Knowledge and reasoning, logic-based agents, propositional logic, SAT 8. Knowledge and reasoning in first-order logic 9. Classical planning 10. Knowledge and reasoning under uncertainty: Bayesian networks, electives in decision theory 11. Electives in machine-learning: induction of decision trees; evaluation of performance of a learning algorithm, loss functions; model selection; ensemble learning: bagging, random forests, boosting; explainability, adversarial examples; parametric vs. non-parametric learning; k-nearest neighbours.
Prerequisites
Students are expected to have good knowledge of: 1) Imperative and object-oriented programming in any high-level language 2) Design of algorithms and data structures 3) General mathematics, algebra, set theory, probability theory 4) Propositional and first-order logic 5) Design of relational databases 6) Automata, computational complexity, decidability.
Books
Slides and lecture notes made available by the teacher.
Teaching mode
The course comprises lecture classes and labs covering the whole course programme.
Frequency
Attendance is not mandatory, but highly recommended.
Exam mode
The exams comprises two written parts (Prova A and Prova B) and a student project. In the written exams, students are requested to answer to questions on the entire programme. The two written exams cover half the course programme each (Part A and Part B, respectively). The student project consists in a written report (plus, possibly, software) to be presented in a seminar. Each written exam will contribute to the 30% of the final score. The student project and its presentation in a semina will contribute to the remaining 40%.
Bibliography
Further readings: Stuart Russell, Peter Norvig Artificial Intelligence, a Modern Approach. 4th Edition Pearson. ISBN 978-1292401133.
Lesson mode
The course comprises lectures and labs covering the whole course programme.
  • Lesson code1022262
  • Academic year2025/2026
  • CourseComputer Science
  • CurriculumMetodologico
  • Year3rd year
  • Semester2nd semester
  • SSDINF/01
  • CFU6