Important notice
The course guide is provisional.
The PDF version of the course guide may take a few days to become available in the DDD.

Optimisation
Code: 42250Credits: 6
| Degree programme | Type | Course |
|---|---|---|
| Modelling for Science and Engineering | OB | 1 |
Contact lecturer
- Name :
- Albert Ruiz Cirera
- Email :
- albert.ruiz@uab.cat
Teaching staff
- Albert Ruiz Cirera
- Judit Chamorro Servent
Group languages
You can consult this information at the end of the document.
Prerequisites
-
Mathematical knowledge at the level of Science or Engineering bachelor degree.
-
Programming skills.
Objectives
The course is dedicated to studying and practicing various deterministic and heuristic optimization methods, with special emphasis on routing and convex optimization. The course will also cover other optimization topics.
This course aims to provide students with the necessary knowledge and basic tools to model and solve optimization problems.
Learning outcomes
- CA01 (Integrate specific optimisation tools with the aim of improving the efficiency and accuracy of different mathematical modelling processes.) Integrate specific optimisation tools with the aim of improving the efficiency and accuracy of different mathematical modelling processes.
- CA02 (Communicate the results obtained from addressing specific optimisation problems to an expert audience.) Communicate the results obtained from addressing specific optimisation problems to an expert audience.
- CA03 (Work in multidisciplinary teams to develop optimisation solutions in the modelling of processes and problems in applied and/or professional contexts.) Work in multidisciplinary teams to develop optimisation solutions in the modelling of processes and problems in applied and/or professional contexts.
- KA01 (Identify the most common programming environments to solve optimisation problems.) Identify the most common programming environments to solve optimisation problems.
- KA02 (Identify the structure and functionality of the main mathematical optimisation algorithms.) Identify the structure and functionality of the main mathematical optimisation algorithms.
- SA01 (Apply specific software to solve optimisation problems.) Apply specific software to solve optimisation problems.
- SA02 (Apply optimisation techniques that provide an adequate response to particular problems.) Apply optimisation techniques that provide an adequate response to particular problems.
- SA03 (Interpret the results obtained from implementing optimisation algorithms in particular problems.) Interpret the results obtained from implementing optimisation algorithms in particular problems.
Contents
Main contents:
- Combinatorial Algorithms for graphs and routing: Dijkstra and A* algorithms. Optimisation over graphs.
- Deterministic optimization (constrained and non-constrained).
Possible additional topics:
- Genetic Algorithms.
- Simulated Annealing.
- Ant colony optimisation algorithms.
- Others.
Learning activities and methodology
| Title | Hours | ECTS | Learning outcomes |
|---|---|---|---|
| Evaluation of the teaching performance and the subject | 0.25 | 0.01 | |
| Attending at the different sessions and related activities | 37.75 | 1.51 | |
| Assignments (implementation of the algorithms individual and group activities) | 44 | 1.76 |
The methodology is based on lectures (with slide presentations and blackboard explanations) and practical sessions.
Assessment
Continuous assessment activities
| Title | Weight | Hours | ECTS | Learning outcomes |
|---|---|---|---|---|
| Exam | 10% | 2 | 0.08 | CA02, KA02, SA02, SA03 |
| Projects in realistic cases in two-person teams (exceptionally, three-person) | 30% | 22 | 0.88 | CA01, CA02, CA03, KA01, KA02, SA01, SA02, SA03 |
| Individual projects in realistic cases | 30% | 22 | 0.88 | CA01, CA02, KA01, KA02, SA01, SA02, SA03 |
| Delivery and presentation of the final project (four-person teams) | 30% | 22 | 0.88 | CA01, CA02, CA03, KA01, KA02, SA01, SA02, SA03 |
The assessment has four parts:
- Individual assignments: summary report and code solving a given problem.
- Two-person assignments (if necessary due to the number of students, a group of 3 would be accepted): summary report and code solving a given problem.
- Four-person assignment (if necessary due to the number of students, a group of 3 or 5 would be accepted): report, (may include code) and oral presentation.
- Final exam.
The final grade for the subject will be:
- If 3.5 or more has been obtained in all parts of the subject: the weighted average according to the weight of each part.
- If 3.5 or more has not been obtained in all parts of the subject and the student has been evaluated, at least, by 50% of the subject: the minimum between 3.5 and the weighted average according to the weight of each part.
- If the student has been evaluated for less than 50% of the subject: not assessable.
Those students who, despite having been evaluated for at least 50% of the subject, do not pass it, may ask the professor to be re-evaluated for the parts that they have not passed (this re-evaluation may include an interview).
The instructions for each submission will make explicit what use of Artificial Intelligence can be made. Skipping these instructions will be considered academic fraud.
Bibliography
- David Beasley, David R. Bull and Ralph R. Martin, An Overview of Genetic Algorithms (Part 1: Fundamentals and Part 2: Research Topics).
- Ben-Tal, A., & Nemirovski, A. (2001). Lectures on modern convex optimization: analysis, algorithms, and engineering applications. Society for industrial and applied mathematics.
- Borwein, J., & Lewis, A. (2006). Convex Analysis and Nonlinear Optimization. CMS Books in Mathematics. Springer, New York, NY.
- Boyd, S. P., & Vandenberghe, L. (2004). Convex optimization. Cambridge university press.
- Marco Dorigoa and Christian Blum, Ant colony optimization theory: A survey, Theoretical Computer Science 344 (2005) 243 - 278.
- Hansen, P. C. (2010). Discrete inverse problems: insight and algorithms. Society for Industrial and Applied Mathematics.
- Anders Hansson, Martin Andersen, Optimization for Learning and Control, John Wiley & Sons, Inc., 2023.
- S. Kirkpatrick, C. D. Gelatt Jr. and M. P. Vecchi, Optimization by Simulated Annealing, Science, May 1983, Vol. 220, no. 4598, 671-680.
- Melanie Mitchell, An Introduction to Genetic Algorithms, A Bradford Book, The MIT Press, Cambridge Massachusetts, 1999.
- Nocedal, J., & Wright, S. J. (2006). Quadratic programming. Numerical optimization, 448-492.
- Nocedal, J., & Wright, S. J. (2006). Sequential Quadratic Programming. Numerical Optimization, 529-562.
- Judea Pearl, A* Algorithms and such: Heuristics: Intelligent Search Strategies for Computer Problem Solving, Addison-Wesley, 1984.
- William H. Press, Saul A. Teukolsky, William T. Vetterling, Brian P. Flannery, Numerical Recipes in C. The Art of Scientific Computing (second edition), Cambridge University Press.
- Alfio Quarteroni, Riccardo Sacco, Fausto Saleri, Numerical Mathematics, Texts in Applied Mathematics 37, Springer, 1991.
Software
Recommended sofware:
- C
- MATLAB
Course groups and languages
The information provided is provisional until November 30. After this date, you will be able to consult the language of each group through this link. To access the information, you will need to enter the course CODE
| Type of teaching | Group | Language | Semester | Shift |
|---|---|---|---|---|
| (TEm) Theory (master) | 1 | English | first semester | afternoon |