Credits
6
Types
Compulsory
Requirements
This subject has not requirements
, but it has got previous capacities
Department
EIO
Teachers
Person in charge
- Jordi Castro Pérez ( jordi.castro@upc.edu )
Others
- F. Javier Heredia Cervera ( f.javier.heredia@upc.edu )
Weekly hours
Theory
2
Problems
1
Laboratory
1
Guided learning
0
Autonomous learning
6
Competences
Technical competencies
Transversals
Generic
Objectives
-
To solve data science problems previously formulated as mathematical optimization problems.
Related competences: CE3, CT5, CT6, CG1, CG2, -
To know what a mathematical optimization problem is, what types of problems are there, and to have a basic knowledge of optimization algorithms.
Related competences: CE3, CT5, CG1, CG2, -
To model mathematical optimization problems and to formulate them through modeling languages. To know how to choose the best method or "solver" according to the type of problem.
Related competences: CT5, CT6, CG2,
Contents
-
Unconstrained Optimization.
Problem modeling. Optimality conditions. Convexity. Descent directions. Line search methods. The gradient or steepest descent method, and variants (stochastic gradients, etc.); convergence rate of the gradient method. The Newton method and globally convergent variants (e.g., modified Newton); Newton's convergence rate. Quasi-Newton Methods. Applications: neural networks, LASSO regression, etc. -
Constrained Optimization.
Problem modeling. Convexity. Optimality conditions (Karush-Kuhn-Tucker conditions). Particular cases: linear optimization and quadratic optimization. Simplex method for linear optimization. Duality in optimization. Dual linear and quadratic problems. Applications: support vector machines, etc. -
Integer Optimization.
Modeling of problems with binary and/or integer variables.. Combinatorial problems Properties of integer and combinatorial optimization problems. Solution methods: branch-and-bound, and cutting plans. Applications: clustering, k-median, classification, etc.
Activities
Activity Evaluation act
Teaching methodology
Theoretical lectures where the concepts will be introduced, including exercises to fix these concepts (75%)Problems and lab sessions (25%).
Evaluation methodology
There will be 3 marks (each in [0,10]):Pr: lab mark.
ExP: midterm exam mark (for the 1st part of the course).
ExF: final exam mark (for the 2nd part of the course). The 1st part of the course is not evaluated in the final exam.
The final grade (NF) will be calculated as follows:
NF= 0.3 * Pr + 0.35 * ExP + 0.35 * ExF
Students with NF<5 will be allowed to do a re-evaluation exam. In the re-evaluation the only mark considered will be that of the re-evaluation exam (i.e., the lab mark is not used). The final mark of the subject after the re-evaluation will be the maximum between the mark of the ordinary exam and the mark of the re-evaluation exam.
Bibliography
Basic
-
Numerical optimization
- Nocedal, J.; Wright, S.J,
Springer,
2006.
ISBN: 9780387303031
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003178739706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Linear and nonlinear programming
- Luenberger, D.G.; Ye, Y,
Springer,
2021.
ISBN: 9783030854492
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991005136979306711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Integer programming
- Wolsey, L.A,
Wiley,
2021.
ISBN: 9781119606536
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991005125279506711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
AMPL: a modeling language for mathematical programming
- Fourer, R.; Gay, D.M.; Kernighan, B.W,
Thomson/Brooks/Cole,
2003.
ISBN: 0534388094
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991002629329706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
An introduction to support vector machines: and other kermel-based learning methods
- Cristianini, N.; Shawe-Taylor, J,
Cambridge University Press,
2000.
ISBN: 0521780195
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991001992979706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Web links
- El llenguatge de modelització AMPL. http://ampl.com/
- Eina per a autoaprenentage d'algoritmes de Programació Lineal i Entera. http://www-eio.upc.es/teaching/ple/pfc_ing.html
- NEOS Server for numerical optimization https://neos-server.org/neos/