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
Programs
Programs where the course is taught: