Go to:
Esta página em português Ajuda Autenticar-se
Projecto da Casa da U. Porto
You are here: Start > EIC0029

Site map
Edifício A (Administração) Edifício B (Aulas) - Bloco I Edifício B (Aulas) - Bloco II Edifício B (Aulas) - Bloco III Edifício B (Aulas) - Bloco IV Edifício C (Biblioteca) Edifício D (CICA) Edifício E (Química) Edifício F (Minas e Metalurgia) Edifício F (Minas e Metalurgia) Edifício G (Civil) Edifício H (Civil) Edifício I (Electrotecnia) Edifício J (Electrotecnia) Edifício K (Pavilhão FCNAUP) Edifício L (Mecânica) Edifício M (Mecânica) Edifício N (Garagem) Edifício O (Cafetaria) Edifício P (Cantina) Edifício Q (Central de Gases) Edifício R (Laboratório de Engenharia do Ambiente) Edifício S (INESC) Edifício T (Torre do INEGI) Edifício U (Nave do INEGI) Edifício X (Associação de Estudantes)

Artificial Intelligence

Code: EIC0029     Acronym: IART

Classification Keyword
OFICIAL Artificial Intelligence

Instance: 2015/2016 - 2S Ícone do Moodle

Active? Yes
Web Page: http://www.fe.up.pt/~eol/IA/ia1516.html
Responsible unit: Department of Informatics Engineering
Course/CS Responsible: Master in Informatics and Computing Engineering

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
MIEIC 158 Syllabus since 2009/2010 3 - 6 56 162

Teaching Staff - Responsibilities

Teacher Responsibility
Eugénio da Costa Oliveira

Teaching - Hours

Lectures: 3,00
Recitations: 1,00
Type Teacher Classes Hour
Lectures Totals 1 3,00
Eugénio da Costa Oliveira 3,00
Recitations Totals 6 6,00
Ana Paula Cunha da Rocha 2,00
Henrique Daniel de Avelar Lopes Cardoso 4,00

Teaching language



This course provides a set of subjects (topics) that are the core for the Intelligent System area.


  • To know what characterizes and distinguishes AI and how to apply it.
  • To know how to automatically represent, acquire, manipulate and apply knowledge using Computational Systems.
  • To develop a small project using AI techniques.

Percentual Distribution: Scientific component: 60%; Technological component: 40%

Learning outcomes and competences

At the end of the course, the student is expected to know how to automatically represent, acquire, manipulate and apply knowledge. Namely, the student should be able to:

  • Know how to represent inexact knowledge.
  • Compare heuristic and systematic methods in the search for solutions.
  • Develop interfaces in Natural Language and inference engines for Expert Systems.
  • Get acquainted with inductive and deductive learning algorithms.


Working method


Pre-requirements (prior knowledge) and co-requirements (common knowledge)

Knowledge of object-oriented and logic-based programming.



  • Objectives
  • Methodology (teaching and evaluation)
  • Artificial Intelligence evolution
  • Documentation


  • Definitions: what is AI?
  • Applications: in what domains?
  • Basic notions of Agent
  • Agent architectures: from Reactive to Cognitive Agents


  • Production Systems
  • Control Strategies of Systematic Search
  • Backward and Forward chaining
  • Depth-first and Breadth-first
  • Hill climbing
  • Search by trying: backtracking
  • Graph search
  • “Branch and Bound” algorithm
  • Heuristic search: "Best-first"
  • A* algorithm and graceful decay of admissibility
  • Means-Ends Analysis
  • Constraint satisfaction methods: relaxation principles
  • Game-playing as Search Problems: Minmax, Alpha-Beta pruning
  • Examples in Prolog of basic strategies: depth-first and breath-first
  • Evolutionary algorithms


  • Definition of a Knowledge Representation System
  • Knowledge representation structures: Production rules; Associative Networks - Frames; Scripts
  • Predicate Logic and other logics
  • Uncertain reasoning: Probabilistic Model; Certainty Factors; Dempster-Schafer model; Fuzzy logic


  • Knowledge-Based Systems
  • Expert Systems: Definition; Structure; Knowledge Representation and Meta-Knowledge; Inference engine and Explanation building; Expert System cases example: ORBI; SMYCIN; ARCA
  • Demonstrations
  • Generic Systems: "Shells"


  • Objectives and difficulties
  • Syntactic and Semantic Analysis
  • ATN; Semantic Grammars; Case Grammars
  • Classical approach and the use of Logics
  • Definite Clause Grammar; some examples in portuguese
  • Extraposition Grammars


  • Types of Learning
  • Learning concepts; learning by example; learning by analogy; Explanation-Based Learning: Algorithms for EBG, mEBG e IOL; Examples.
  • Inductive Learning: ID3 and C4.5, advantages and drawbacks
  • Application examples


  • Basic principles (processing element; network structure; learning laws)
  • Fundamental Algorithms (perceptron, back-propagation)
  • Application example


Mandatory literature

Stuart Russell, Peter Norvig; Artificial intelligence. ISBN: 978-0-13-207148-2

Complementary Bibliography

Bratko, Ivan; Prolog programming for artificial intelligence, N. ISBN: 0-201-40375-7
J. Ross Quinlan; Programs for Machine Learning, Morgan Kaufmann Publishers, 1998
Ernesto Costa e Anabela Simões; Inteligência artificial. ISBN: 972-722-269-2
Elaine Rich, Kevin Knight; Artificial intelligence. ISBN: 0-07-100894-2

Teaching methods and learning activities

Theoretical classes: exposition with interaction. Theoretical-practical classes: programming exercises in Prolog and project development.


Java, C/C++
Prolog: SWI, Sicstus, LPA


Technological sciences > Engineering > Knowledge engineering

Evaluation Type

Distributed evaluation with final exam

Assessment Components

Designation Weight (%)
Exame 50,00
Teste 15,00
Trabalho escrito 15,00
Trabalho laboratorial 20,00
Total: 100,00

Amount of time allocated to each course unit

Designation Time (hours)
Estudo autónomo 50,00
Frequência das aulas 56,00
Trabalho laboratorial 56,00
Total: 162,00

Eligibility for exams

Not exceed the absence limit allowed and have a minimum of 37,5% in the distributed classification (DC)

Calculation formula of final grade

Distributed Classification (DC): weight=50%, including (% related to the distributed classification):

  • Interim Report + Intercim work (15%);
  • Assignment’s quality and presentation performance (40%);
  • Final Report (15%);
  • Evaluation during classes: mini-exams (30%)

Test/Exam (EC): weight=50% (2h30m test with consultation).

 To pass, the student must have a minimum of 37.5% in each of the two evaluation components, distributed (DC) and exam (EC).

Examinations or Special Assignments

One practical assignment and the respective report (weight=50%) and an exam (weight=50%).

To get approved, the student must have a grade equal or higher to 37,5% in each of the evaluation items.

Special assessment (TE, DA, ...)

One practical assignment and the respective report (weight=50%) and an exam (weight=50%).

To be approved, the student must have a grade equal or higher to 37,5% in each of the evaluation items.

Classification improvement

Assignment, exam or both.

Mini-exams' grades are not taken into account for this purpose. Its valuation will be added to the Exam component.

Recommend this page Top
Copyright 1996-2019 © Faculdade de Engenharia da Universidade do Porto  I Terms and Conditions  I Accessibility  I Index A-Z  I Guest Book
Page generated on: 2019-03-21 at 10:45:27