ID:
SCV0847
Durata (ore):
80
CFU:
9
SSD:
Logica matematica
Anno:
2026
Dati Generali
Periodo di attività
Secondo Semestre (22/02/2027 - 28/05/2027)
Syllabus
Obiettivi Formativi
The course aims to provide basic knowledge of how logical and, more in general, rule-based systems can be used to deal with computational issues, in particular in relation with artificial intelligence and knowledge representation. Such knowledge is aimed at forming and increasing the abstraction of information through symbolic representation and thus the ability to understand an abstract and symbolic scientific language.
At the end of the course the student will:
1. Know the basic logical systems: propositional and predicative logic, description logics and other logics of interest for knowledge representation.
2. Know how to design agents that use search algorithms to plan their actions, even in scenarios in which the environment is not fully observable and/or non-deterministic or in simple multi-agent scenarios. Understand the main computational tradeoffs involved in the choice of the environment representation and of the search algorithm.
3. Know how to make use of local search-based approaches to search efficiently for configurations that meet certain criteria and/or minimize a cost.
4. Know how to write programs in logic programming (Prolog) for representing knowledge.
5. Know how to deal with pure declarative programming (Answer Set Programming) for planning problems and for finding solutions to puzzles and games
6. Understand tools and properties of constraint programming, know and apply some of the relevant Prolog libraries.
Expected learning outcomes include the ability to identify any errors in computational argument, and to have the ability to use a formal language for the description of computational problems.
At the end of the course the student will:
1. Know the basic logical systems: propositional and predicative logic, description logics and other logics of interest for knowledge representation.
2. Know how to design agents that use search algorithms to plan their actions, even in scenarios in which the environment is not fully observable and/or non-deterministic or in simple multi-agent scenarios. Understand the main computational tradeoffs involved in the choice of the environment representation and of the search algorithm.
3. Know how to make use of local search-based approaches to search efficiently for configurations that meet certain criteria and/or minimize a cost.
4. Know how to write programs in logic programming (Prolog) for representing knowledge.
5. Know how to deal with pure declarative programming (Answer Set Programming) for planning problems and for finding solutions to puzzles and games
6. Understand tools and properties of constraint programming, know and apply some of the relevant Prolog libraries.
Expected learning outcomes include the ability to identify any errors in computational argument, and to have the ability to use a formal language for the description of computational problems.
Prerequisiti
Knowledge of basic concepts of discrete mathematics is required. In the course the basic notions of propositional and predicate logic will be summarized, but some prior knowledge is advisable.
Metodi didattici
56h lectures + 24h Exercises. The lessons aim at presenting multiple aspects of mathematical logic and symbolic reasoning in the realm of artificial intelligence, as well as practical applications of the proposed software.
Verifica Apprendimento
The scope of the exam is to certify that students have all knowledge and ability explained above, by evaluating the knowledge skill and the ability to understand and then to expose the logical contents of the course.
The student will have to create a simple project that makes use of the techniques discussed in the course and then write a short report (3-5 pages long) about it. The exam will consist in a discussion of that report and of the student’s project, which will then branch into a more general discussion about the arguments of the course. The teacher will not police against the use of LLMs or other automated tools to help developing the project or writing the report; however, students will need to be able to talk intelligently about their work, explaining the reasoning behind their implementation choices and defending the assertions in their report.
Final mark (out of 30) depends on the completeness, correctness, and insightfulness of the implementation and report (50%), the clarity of the exposition (25%) and adequateness of answers (25%).
If a student fails the exam or wishes to repeat it, they will be free to reuse/refine their previous project and report or to choose a different argument.
The student will have to create a simple project that makes use of the techniques discussed in the course and then write a short report (3-5 pages long) about it. The exam will consist in a discussion of that report and of the student’s project, which will then branch into a more general discussion about the arguments of the course. The teacher will not police against the use of LLMs or other automated tools to help developing the project or writing the report; however, students will need to be able to talk intelligently about their work, explaining the reasoning behind their implementation choices and defending the assertions in their report.
Final mark (out of 30) depends on the completeness, correctness, and insightfulness of the implementation and report (50%), the clarity of the exposition (25%) and adequateness of answers (25%).
If a student fails the exam or wishes to repeat it, they will be free to reuse/refine their previous project and report or to choose a different argument.
Contenuti
Propositional logic, truth tables, satisfiability and validity, predicate logic, language, semantics and expressivity, clauses and resolution (8h+ 2h exercises, objective 1)
Description Logics, syntax and semantics. Tableau Algorithm for ACL. The Web Ontology Language and the Semantic Web. Other logics of interest for knowledge representation. (6h +2h exercises, objective 1)
Search in simple environments: Uninformed Search algorithms (breadth-first, uniform-cost, depth-first, iterative deepening, bidirectional), Heuristics, Informed Search algorithms (A*, IDA*, RBFS). Application to designing agents in simple environments. (6h+2h exercises, objective 2)
Search in complex environments: Local Search algorithms (hill climbing, simulated annealing, beam search, evolutionary algorithms). Search with nondeterministic actions and in partially observable environments. Online Search and Learning Real-time A*. (6h + 2h exercises, objectives 2 and 3).
Game-playing agents: Minimax Search, Alpha-Beta Pruning. Heuristics, H-Minimax, and Forward Pruning. Stochastic Games and Partially Observable Games (4h + 2 exercises, objective 2)
Logic programming, basic examples, recursion, lists and non-logical features, Logic for knowledge representation, SWI-PROLOG (10h + 6h exercises, objective 4)
Answer set programming, pure declarative paradigms, logic programming for solving games and puzzles (10 h+4h exercises, objective 5)
Constraint Satisfaction Problems: General definition. Solving Constraint Satisfaction Problems via local search: min-conflicts, tabu search, constraint weighting. Constraint Propagation and Local Consistency. The AC-3 Algorithm. Forward Checking and the MAC algorithm. Tree Constraint Satisfaction Problems and Cutset Conditioning. (6h + 4h exercises, objectives 5 and 6)
Description Logics, syntax and semantics. Tableau Algorithm for ACL. The Web Ontology Language and the Semantic Web. Other logics of interest for knowledge representation. (6h +2h exercises, objective 1)
Search in simple environments: Uninformed Search algorithms (breadth-first, uniform-cost, depth-first, iterative deepening, bidirectional), Heuristics, Informed Search algorithms (A*, IDA*, RBFS). Application to designing agents in simple environments. (6h+2h exercises, objective 2)
Search in complex environments: Local Search algorithms (hill climbing, simulated annealing, beam search, evolutionary algorithms). Search with nondeterministic actions and in partially observable environments. Online Search and Learning Real-time A*. (6h + 2h exercises, objectives 2 and 3).
Game-playing agents: Minimax Search, Alpha-Beta Pruning. Heuristics, H-Minimax, and Forward Pruning. Stochastic Games and Partially Observable Games (4h + 2 exercises, objective 2)
Logic programming, basic examples, recursion, lists and non-logical features, Logic for knowledge representation, SWI-PROLOG (10h + 6h exercises, objective 4)
Answer set programming, pure declarative paradigms, logic programming for solving games and puzzles (10 h+4h exercises, objective 5)
Constraint Satisfaction Problems: General definition. Solving Constraint Satisfaction Problems via local search: min-conflicts, tabu search, constraint weighting. Constraint Propagation and Local Consistency. The AC-3 Algorithm. Forward Checking and the MAC algorithm. Tree Constraint Satisfaction Problems and Cutset Conditioning. (6h + 4h exercises, objectives 5 and 6)
Lingua Insegnamento
INGLESE
Altre informazioni
The teacher receives by appointment, upon request by e-mail to pietro.galliani@uninsubria.it
Corsi
Corsi
INFORMATICA
Laurea Magistrale
2 anni
No Results Found
Persone
Persone (2)
Docenti di ruolo di Ia fascia
No Results Found