Computer Graphics Optimization

Class Information

  • Instructor: Edgar SIMO-SERRA
  • Dates: Apr, 2019〜Aug, 2019
  • Lectures: Tuesday, 4th Period (14:45〜16:15)
  • Room: 53-304教室
  • E-mail:


The class slides and materials are primarily in English. The class explanations will be in Japanese, and, if necessary, English.

This courses focuses on different optimization approaches and their relationship with computer graphics optimization, such as colorization, texture synthesis, or shape manipulation. The course covers both convex and non-linear optimization, including discussion on recent developments such as deep learning. Each lecture will attempt to explain the theoretical foundations of a particular algorithm, and then explain real research examples based on the explained techniques.

The course will be evaluated mainly based on a large project and a final exam. The project will be done in small groups and consist of putting into practice the techniques learned in the class.

The programming assignments and project will be done in python using Jupyter notebooks. While the basics of python will be taught in this class, it is highly recommended that students complement this with self-study using the additional resources.

Class Schedule

  1. Overview, Introduction, Least-Squares slides CO Chapter 1 NO Chapter 1+2
  2. Line Search slides NO Chapter 3
  3. Convex Optimization 1: Definitions slides CO Chapter 2+3+4
  4. Convex Optimization 2: Duality slides CO Chapter 5
  5. Unconstrained Minimization slides CO Chapter 9 NO Chapter 2
  6. Newton and Quasi-Newton Methods slides NO Chapter 6
  7. Derivatives slides NO Chapter 8
  8. Linear Programming: Interior-point Methods slides CO Chapter 11 NO Chapter 14
  9. Review slides
  10. Metaheuristics slides EM
  11. Deep Learning 1: Data, Models
  12. Deep Learning 2: Advanced Techniques slides
  13. Paper Review slides
  14. Presentation slides
  15. Final Exam


  • CO Stephen Boyd, Convex Optimization, Cambridge University Press, 2004. ISBN: 978-0521833783 website PDF
  • NO Jorge Nocedal and Stephen Wright, Numerical Optimization (2nd Edition), Springer, 2006. ISBN: 978-0387303031
  • EM Sean Luke. Essentials of Metaheuristics., 2013. ISBN: 978-1300549628 website
  • Additional Resources
    • Aharon Ben-Tal and Arkadi Nemirovski, Lectures on Modern Convex Optimization PDF
    • Sébastian Bubeck, Convex Optimization: Algorithms and Complexity PDF
    • Jake VanderPlas, A Whirlwind Tour of Python, O’Reilly Media, 2016. ISBN: 978-1492037859 website
    • Jake VanderPlas, Python Data Science Handbook, O’Reilly Media, 2016. ISBN: 978-1491912058 website
    • Charles R. Severance, Python for Everybody: Exploring Data Using Python 3, Createspace Independent Pub, 2016. ISBN: 978-1530051120 website
    • Aston Zhang, Zack C. Lipton, Mu Li, Alex J. Smola, Dive into Deep Learning, 2019. website