Decision Support Systems


Decision support systems (DSS) are the core of modern decision making and DSS are nowadays employed in the vast majority of companies for solving complex optimization problems. The course presents the most used optimization techniques in the field of Machine Learning. Machine learning brings together computer science and statistics to harness the predictive power hidden in the data. It’s a must-have skill for all aspiring data analysts or anyone else who wants to wrestle all the available raw data into refined trends and predictions.

The course will teach you the end-to-end process of investigating data through a machine learning lens. It will teach you how to extract and identify useful features that best represent your data, a few of the most important machine learning algorithms, and how to evaluate the performance of your machine learning algorithms

General characterization





Responsible teacher

Flávio Luís Portas Pinheiro


Weekly - Available soon

Total - Available soon

Teaching language

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


There will be a some math in this course anda basic knowledge is needed to understand the topics of the course. You must be able to take simple derivatives and to understand simple statistical concepts. More mathematical background is not necessary but is helpful for appreciating some parts of the course.


Machine LearningTom Mitchell, McGraw Hill, 1997.

Papers and materials provided by the professor.

Teaching method

  • Theoretical classes where the different Machine Learning techniques commonly used for taking profitable decisions are presented.
  • Presentation of test cases published in the literature.

Evaluation method

First epoch: two tests. The final grade is the average of the two tests. A minimum grade is required in both the two tests.
Second epoch: final written exam (100% of the final grade). 

Subject matter

Optimization problems: definitions and examples.
No free lunch theorem. 
Local search techniques.
Population-based optimization algorithms.
Bio-inspired machine learning techniques.
Supervised and unsupervised learning.
Multi criteria optimization and Pareto dominance.
Neural Networks.