1.1 Knowledge and understanding: the student will improve her/his capability of analyzing and solving problem. She/He will see an overview of the Artificial Intelligence languages for modeling problems and techniques for solving them. In particular the course is mainly focused on logical-declarative modeling and on constraint based solution search
1.2 Applying knowledge and understanding: the student will be able to exploit the knowledge of the techniques and of the languages learnt for solving real-life problems, such as combinatorial problems, scheduling problem, automated reasoning problem etc. that are ubiquitous in industry.
2.1 Making judgements: given the formal specifics of a problem, the student will have the capability of understanding if it is one that can be naturally solved with the techniques seen in the course. In particular, if the problem is NP complete, these techniques allow compact encodings and allow to exploit the “AI’’ embedded into the solvers for solutions search. Similarly, if the problem is a KR problem where several agents have to reason individually or together for reaching a specified goal, the student will know how to model and solve it.
2.2 Communication: the student will learn the precise terminology, the possibilities, and the intrinsic limits of the “exact’’ part of artificial intelligence and is able to use them properly when presenting his work even to non specialists.
2.3 Lifelong learning skills: the student will learn some of the “magic’’ that is inside artificial intelligence and can use this knowledge as a starting point for the study of development of the area and of its application in several fields in the remaining part of its life. Of course, being the course held in English, she/he will improve her/his language skills.
M. Gelfond and Y. Kahl. Knowledge Representation, Reasoning, and the Design of Intelligent Agents. The Answer-Set Programming Approach. Cambridge University Press.
Lecture Notes available on-line