justin solomon sebastian claici
play

Justin Solomon Sebastian Claici MIT MIT Justin Solomon Sebastian - PowerPoint PPT Presentation

Justin Solomon Sebastian Claici MIT MIT Justin Solomon Sebastian Claici MIT MIT Client Which optimization tool is relevant? Designer Can I design an algorithm for this problem? Patterns, algorithms, & examples common in


  1. Justin Solomon Sebastian Claici MIT MIT

  2. Justin Solomon Sebastian Claici MIT MIT

  3.  Client Which optimization tool is relevant?  Designer Can I design an algorithm for this problem?

  4. Patterns, algorithms, & examples common in geometry processing. Optimization is a huge field.

  5. Image from “Isometry - Aware Preconditioning for Mesh Parameterization” Claici, Bessmeltsev, Schaefer, & Solomon

  6. Difficult because: • Distortion is nonlinear/nonconvex • Parameterization must be one-to-one

  7. One contribution per triangle

  8. Part I (Justin)  Vocabulary  Simple examples  Unconstrained optimization  Equality-constrained optimization

  9. Part II (Sebastian)  Inequality constraints  Advanced algorithms  Examples  Conclusion

  10. Part I (Justin)  Vocabulary  Simple examples  Unconstrained optimization  Equality-constrained optimization

  11. Objective (“Energy Function”)

  12. Equality Constraints

  13. Inequality Constraints

  14. https://en.wikipedia.org/?title=Gradient Gradient

  15. https://en.wikipedia.org/wiki/Jacobian_matrix_and_determinant Jacobian

  16. http://math.etsu.edu/multicalc/prealpha/Chap2/Chap2-5/10-3a-t3.gif Hessian

  17. (unconstrained) Saddle point Local max Local min Critical point

  18. Image from “Interactive Exploration of Design Trade - Offs” Schulz, Wang, Grinspun, Solomon, & Matusik

  19. Part I (Justin)  Vocabulary  Simple examples  Unconstrained optimization  Equality-constrained optimization

  20. How effective are generic optimization tools?

  21. How effective are generic optimization tools?

  22. Try the simplest solver first.

  23. (assume A is symmetric and positive definite)

  24. Normal equations (better solvers for this case!)

  25. G. Peyré, mesh processing course slides

  26.  𝒙 𝒋𝒌 ≡ 𝟐 : Tutte embedding  𝒙 𝒋𝒌 from mesh: Harmonic embedding Assumption: 𝒙 symmetric.

  27.  Never construct 𝑩 −𝟐 explicitly (if you can avoid it)  Added structure helps Sparsity, symmetry, positive definiteness

  28.  Direct ( explicit matrix)  Dense: Gaussian elimination/LU, QR for least-squares  Sparse: Reordering (SuiteSparse, Eigen)  Iterative ( apply matrix repeatedly)  Positive definite: Conjugate gradients  Symmetric: MINRES, GMRES  Generic: LSQR

  29. Induced by the connectivity of the triangle mesh. Iteration of CG has local effect ⇒ Precondition!

  30. What if 𝑾 𝟏 = {} ?

  31. Mullen et al. “Spectral Conformal Parameterization.” SGP 2008. Easy fix

  32. Prevents trivial solution 𝒚 ≡ 𝟏 . Extract the smallest eigenvalue.

  33. Roughly: 1.Extract Laplace-Beltrami eigenfunctions: 2.Find mapping matrix (linear solve!): Ovsjanikov et al. “Functional Maps.” SIGGRAPH 2012.

  34. Part I (Justin)  Vocabulary  Simple examples  Unconstrained optimization  Equality-constrained optimization

  35. Unstructured.

  36. Multiple optima! Line search Gradient descent

  37. Quadratic convergence on convex problems! (Nesterov 1983) Accelerated gradient descent

  38. 1 2 Line search for stability 3 Newton’s Method

  39. Hessian approximation  (Often sparse) approximation from previous samples and gradients  Inverse in closed form! Quasi-Newton: BFGS and friends

  40. Examples: • “Accelerated Quadratic Proxy for Geometric Optimization” (Kovalsky et al. 2016) • “ Scalable Locally Injective Maps” (Rabinovich et al. 2016) • “Isometry -Aware Preconditioning for Mesh Parameterization ” (Claici et al. 2017) • …several others

  41. “Accelerated Quadratic Proxy for Geometric Optimization” (Kovalsky et al. 2016)

  42. Fröhlich and Botsch . “Example - Driven Deformations Based on Discrete Shells.” CGF 2011.

  43. Roughly: 1. Linearly interpolate edge lengths and dihedral angles. 2. Nonlinear optimization for vertex positions. Sum of squares: Gauss-Newton

  44.  Matlab: fminunc or minfunc  C++: libLBFGS , dlib , others Typically provide functions for function and gradient (and optionally, Hessian). Try several!

  45. Part I (Justin)  Vocabulary  Simple examples  Unconstrained optimization  Equality-constrained optimization

  46. - Decrease f : −𝛂𝒈 -Violate constraint: ±𝛂𝒉

  47. Want:

  48. Turns constrained optimization into unconstrained root-finding.

  49.  Reparameterization Eliminate constraints to reduce to unconstrained case  Newton’s method Approximation: quadratic function with linear constraint  Penalty method Augment objective with barrier term, e.g. 𝒈 𝒚 + 𝝇|𝒉 𝒚 |

  50. Fix (or adjust) damping parameter 𝝁 > 𝟏 . Example: Levenberg-Marquardt

  51. Huang et al. “L1 -Based Construction of Polycube Maps from Complex Shapes.” TOG 2014. Align with coordinate axes Preserve area Note: Final method includes more terms!

  52. • Start with a feasible point • Don’t ever enter the infeasible region • Use a barrier in the objective Bijective Parameterization with Free Boundaries (Smith & Schaefer, SIGGRAPH 2015)

  53. versus Try lightweight options

  54. “Geometric median” Repeatedly solve linear systems

  55. d can be a Bregman divergence

  56. Decompose as sum of hard part f and easy part g . https://blogs.princeton.edu/imabandit/2013/04/11/orf523-ista-and-fista/

  57. Does nothing when constraint is satisfied Add constraint to objective

  58. https://web.stanford.edu/~boyd/papers/pdf/admm_slides.pdf

  59. Augmented part Solomon et al. “Earth Mover’s Distances on Discrete Surfaces.” SIGGRAPH 2014. Want two easy subproblems

  60. https://en.wikipedia.org/wiki/Frank%E2%80%93Wolfe_algorithm Linearize objective, preserve constraints

Recommend


More recommend