Base Knowledge
Knowledge on linear algebra, differential calculus and programming are recommended.
Teaching Methodologies
The teaching activity takes place with the exposition of concepts, techniques and methods, with a strong focus on practical applications. Software will be used to support the resolution of larger sized problems. The classes are held with computer support, encouraging the practical application of algorithmic knowledge.
Learning Results
Objectives:
This subject introduces decision support techniques using mathematical programming, involving linear and integer linear models. It also addresses network optimization problems within linear programming.
The course includes techniques for solving the proposed mathematical models and related applications within Business Management and Information Systems. Besides the theoretical aspects involved, these problems and the associated models are addressed using appropriate software (Microsoft Excel, lp_solve, Python and GUROBI).
The course also focuses on the study of algorithms for Artificial Intelligence, including heuristic and metaheuristic techniques for solving combinatorial optimization problems. Special attention will be given to the practical application of these techniques.
Competences:
During the course, several problems of Business Management and Information Systems will be raised, through which it is intended to sensibilize the student sensitivity for the mathematical modelling aspects and properties, as well as their algorithmic resolution. This way, it is intended to establish bridges aimed at the use of quantitative analytical techniques to support the decision-making process.
Program
1 – Introduction to mathematical modelling
1.1 – Mathematical formulation of problems
1.2 – Applications of mathematical modelling to Business Management and Information Systems problems
2 – Linear Programming
2.1 – Properties of a linear model
2.2 – Solving techniques for continuous linear programming
2.3 – Using software for solving linear programs: Microsoft Excel, lp_solve, Python and GUROBI.
2.4 – Sensitivity and parametric analysis in linear programming
2.5 – Economic interpretation of solutions and its application to the decision-making process
3 – Network optimization
3.1 – Introduction to graphs/networks theory. Concepts and properties
3.2 – Using software means for solving network optimization problems
3.3 – Transportation and Assignment
3.4 – Shortest path problem
3.5 – Maximum flow problem
3.6 – Minimum cost flow problem
4 – Integer programming
4.1 – Definitions and interpretation of integer variables. Properties
4.2 – Some modelling techniques using binary variables
4.3 – Using software means for solving integer linear models: Microsoft Excel, lp_solve, Python and GUROBI.
4.4 – Integer programming applications
5 – Evolutionary algorithms for Artificial Intelligence
5.1 – Introduction to Artificial Intelligence
5.2 – Some approximative techniques for solving combinatorial optimization problems
5.3 – Greedy heuristics
5.4 – Local search heuristics
5.5 – A* algorithm
5.6 – Metaheurhstics with deterministic factors
5.7 – Metaheuristics with random factors
Curricular Unit Teachers
Pedro João Coimbra MartinsGrading Methods
The evaluation process in this curricular unit includes:
1) final exam - at the time set in the school calendar,
2) 2 assignments (optional) - done in groups of 2 to 4 students.
- The exams have the format of written tests.
- The student can only benefit from the assignments’ marks if he/she does not miss more than 7 classes.
- The marks from the assignments will be weighted in the final mark only if the exam mark is greater than or equal to 6.0 (out of 20).
- The assignments must be completed just during term time and will remain valid for all examination periods in the current academic year.
- Final mark (subject to the conditions previously exposed):
With work: Final mark = 0,4 (exam mark) + 0,6 (average of the marks of the assignments)
(if the limit of absences is respected and the examination mark is higher or equal to 6.0)
No work: Final mark = exam mark
The approval is obtained with a final grade higher or equal to 9.5 out of 20.
In the first lessons, the teacher will indicate a deadline for groups to inform of their intention to carry out the assignment and a deadline for the assignments’ report.
The reports should be placed in the "Submissão de Trabalhos" area of Inforestudante.
Internship(s)
NAO
Bibliography
Essential Bibliography
– Martins, P. Teaching materials made available at the NONIO platform, Author’s Edition.
– E. Costa e A. Simões, Inteligência Artificial. FCA, Lisboa, 2008.
– Hillier, F. S., & Lieberman, G. J. (2021). Introduction to Operations Research, Mc Graw-Hill. ISBN: 978-0-
071-13989-2
– Mourão, M. C., Santiago Pinto, L., Simões, O., Valente, J., & Pato, M. V. (2019). Investigação Operacional:
Exercícios e Aplicações, Escolar Editora. ISBN: 978-9-725-92556-0
Supplementary Bibliography
– Júdice, J. J., Martins, P. C., Pascoal, M. M. B., & Santos, J. P. (2006). Programação Linear, Departamento de
Matemática da Universidade de Coimbra.
– Júdice, J. J., Martins, P. C., Pascoal, M. M. B., & Santos, J. P. (2006). Optimização em Redes, Departamento
de Matemática da Universidade de Coimbra.
– Rardin, R.L. (2017), Optimization in Operations Research (2nd ed.), Pearson Higher Education, Hoboken.
ISBN: 978-0-13-438455-9
– Wolsey, L. (1998). Integer Programming, Wiley-Interscience.