Artificial Intelligence


  • Paradigms, areas and applications of Artificial Intelligence.
  • Blind, informed and local search algorithms. Heuristics and evaluation functions. Complexity.
  • Inference in propositional logic, first order logic and Bayesian networks. Limitations.
  • Planning languages and algorithms for plan generation.
  • Learning approaches and its essential algorithms.
  • Model search problems, specify heurisitics and assess its behaviour in practice.
  • Implement search algorithms. Parameterise and experiment with the algorithms.
  • Model and solve problems with Logic Programming.
  • Model knowledge with Bayesian networks. Perform predictive and diagnosis tasks.
  • Choose appropriately instruments weighing the solution quality against the time/space necessary to obtain it.
  • Justify or choose solutions.
  • Do team work with report writing and deadline fulfillment.
  • Abstract modelling capabilities.

General characterization





Responsible teacher

João Alexandre Carvalho Pinheiro Leite


Weekly - 5

Total - 69

Teaching language



Available soon


The adopted book is [Stuart Russell & Peter Norvig, 2010].

Some topics are covered only in [Costa & Simões, 2008].

The remaining books are optional readings.


  • Stuart Russel and Peter Norvig. Artificial Intelligence. A Modern Approach, 3rd edition. Prentice-Hall, Inc., 2010.
  • E. Costa e A. Simões. Inteligência Artificial. Fundamentos e Aplicações. 2nd Edition, FCA, 2008.
  • L. Sterling and E. Shapiro. The Art of Prolog (2nd Ed.). MIT Press, 1994.


  • Matt Ginsberg. Essentials of Artificial Intelligence. Morgan Kaufmann, 1994
  • Nils J. Nilson. Artificial Intelligence: A new synthesis. Morgan Kaufmann, 1998
  • I. Bratko. Prolog Programming for Artificial Intelligence, 3rd Edition, Pearson-Education, 2001.
  • P. Blackburn, J. Bos, e K. Striegnitz. Learn prolog Now! College Publications, 2006.

Teaching method

In the theoretical classes, the essential points of the subject are presented orally and should be complemented with the reading of the advised manual. The laboratory classes are intended for the presentation and realization of practical work on various topics, accompanied by teachers. Some of the practical classes are designed for modeling and performing selected exercises from previous exams, in particular from Bayesian networks and Quest with opponents. Some assignments end with a quiz to assess student performance.

Students have at their disposal a web page that keeps up-to-date information on how it works.

The assessment is continuous and consists of a summative component that includes active participation in practical classes and the completion of the assignments (30% of the final grade), 2 tests (35% of the final grade each) during the semester or a final exam. (70% of grade in replacement of tests). It is necessary to have a test average or exam grade higher than 9.5.

Evaluation method


A unidade curricular tem duas componentes de avaliação que contribuem para a aprovação e classificação final:

  • Componente de Avaliação Teórico-Prática
  • Componente de Avaliação Sumativa

Componente de Avaliação Teórico-Prática

Poderá ser realizada através de dois testes teórico-práticos, em datas a indicar no CLIP, contribuíndo os dois testes com peso igual para a nota desta componente. Poderá ainda ser realizada através de um exame na época de recurso, em data a indicar no CLIP. A componente de avaliação Teórico-Prática, bem como a cada uma das suas partes (testes e exame), é classificada com uma nota de 0-20 valores, arredondada à primeira casa decimal.

Se os testes teórico-práticos ou o exame tiverem que ser realizados a distância, será usada a ferramenta de proctoring adoptada pela FCT NOVA - possivelmente a ferramenta Respondus (Lock Down Browser + Respondus Monitor) ou semelhante.

Componente de Avaliação Sumativa

Para esta componente da avaliação contribuirá o desempenho dos alunos nas aulas práticas, incluindo a participação activa nas tarefas dadas (exercícios de modelação, de implementação, etc.), e a resposta a pequenos questionários (quizz). A componente de avaliação sumativa é classificada com uma nota de 0-20, arredondada à primeira casa decimal.

Condições para Aprovação e Classificação Final

Para se obter aprovação à unidade curricular exige-se, cumulativamente, uma classificação não inferior a 9.5 valores na componente de avaliação Teórico-Prática, uma classificação não inferior a 8,0 no 2º Teste (no caso de aprovação na éooca normal) e uma classificação final não inferior a 10 valores, sendo esta obtida através da média ponderada das duas componentes de avaliação, arredondada às unidades, com os seguintes pesos relativos:

  • Componente de Avaliação Teórico-Prática: 70%
  • Componente Sumativa: 30%

Notas de trabalhos realizados em edições anteriores

As notas da componente prática desta disciplina obtidas nos anos lectivos de 2012/2013 a 2019/2020 são válidas para a componente de avaliação Sumativa deste ano. Os alunos que pretendam manter a nota desta componente não se poderão inscrever em turnos práticos.

Subject matter


1.Overview of Artificial Intelligence and its applications


2.1.Search agents and search problems.

2.2.Blind search.

2.3.Heuristic search in state-­space graphs. A* algorithm.

2.4.Local search and optimisation problems.

2.5.Adaptative agents.

2.6.Constraint Satisfaction Problems.

2.7.Adversarial search.

3.Knowledge Representation and Reasoning

3.1.Propositional logic.

3.2.First-­order logic.

3.3.Logic programming


4.1.Logical representation of classical planning problems.

4.2.Planning languages and algorithms. Partial order planning.


5.Uncertainty and probabilistic reasoning

5.1.Probability theory and Bayes'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' rule.

5.2.Bayesian networks.

6.Machine Learning

6.1.Learning agents. Approaches to the learning problem.

6.2.Conceptual and inductive learning.

6.3.Neuronal networks.



Informed Search
Local Search
Adverserial Search
Logic Programming
Uncertainty and Proabilistic Reasoning
Automated Learning