Artificial Intelligence

Objectives

To provide the students with the historical and current context of Artificial Intelligence. To teach the functioning of a wide array of Artificial Intelligence methods, from the most classical techniques of search and reasoning to the most cutting-edge methods of machine learning. To raise awareness to the issue of ethics in Artificial Intelligence.

General characterization

Code

100101

Credits

0.0

Responsible teacher

Vítor Manuel Pereira Duarte dos Santos

Hours

Weekly - Available soon

Total - Available soon

Teaching language

Portuguese. If there are Erasmus students, classes will be taught in English

Prerequisites

None. This is an introductory course, with a wide range of contents, but not very deep, in particular on the most advanced methods. No programming skills required. The mathematics used is extremely basic.

Bibliography

Teaching method

Lessons include:
   - Theoretical explanations (on the white board)
   - Demos (on the computer)
   - Exercises (on paper)
   - Usage of some software (on the computer)
   - Tutorials by invited lecturers

 

Evaluation method

The theoretical evaluation will have a final written exam. 

The practical evaluation is composed by two components:

 - Prolog´s Project  (mandatory) - 20%  

 - Individual assignments  (4 small size assignments  to be chosen between 10 that will be proposed during the classes) - 80% 

     or

     one medium size AI project (Game of life)  - 80%

 

The grades of the practical and the theoretical assessments must be greater than eight.

 

1st phase Evaluation: Theoretical exam (30%) + Practice(70%)

2nd phase Evaluation: Theoretical exam (100%) or Theoretical exam (50%) + Practice(50%)

 

Subject matter

The curricular unit is organized in seven Learning Units (LU):

1 - Overview and brief history of AI

AI and Philosophy

Historical Overview of AI and applications

Paradigms and approaches

2 - Knowledge Representation and Reasoning

Software Agents (Cognitive Agents v. Reactive Agents, BDI model,...)

Propositional Logic & First Order Logic 

Logic Programming 

An Introduction to Prolog 

3 - Problem Solving

Agents and search problems 

Blind search (breadth-first, uniform cost, depth-first, bidirectional)

Heuristic search (informed) ( A*, iterative deepening A* (IDA*), Tabu, SMA`*) 

Local search and optimization problems ((hill climbing, simulated annealing)

Search with opponents (Games)

4 - Machine Learning

Apprentice agents. Approaches to the problem of learning

Artificial Neural Networks

   Neurobiology fundamentals

   McCulloch & Pitts¿ Neuron

   Hebb's Law

   Simple Pattern Recognition Networks: Perceptron, Adaline (hints to non-linearly separable problems and multi-layer neural nets);

   Pattern Associations (Hetero-Associative, Self-associative, Bidirectional (BAM))

   Unsupervised Competition-based networks (Maxnet, Mexican Hat, Hamming Net,  SOM)

   Multilayered artificial neural network (Backpropagation, Neocognitron)

5 -  Evolutionary computing

An introduction to Genetic Algorithms

Artificial Life

6.-  Distributed AI

Software Agent Societies

Social Reasoning / Social Laws

Strategies and approaches

7.- Future of Artificial Intelligence and social/philosophical impacts