CSE 788: Computer Character Animation Seminar

CSE 788: Computer Character Animation Seminar

Autumn 2010

Syllabus

Optimization:

  • parameter space, x
  • find maximun (or minimum) of objective function, f(x)
  • satisfying certian constraints (optional)
    • gi(x) = 0
    • hj(x) < 0 (or > 0)

Categorize by

  • objective function; linear v. non-linear; convex, concave
  • constraint equations: linear, non-linear; equality, inequality; convex, concave
  • search space: continuous, discrete
  • search method: e.g., gradient descent, random

For Class:

Other links

first projects

  • Kevin - matlab
  • Alex - some optimization problem from Dr. Shen
  • Zhaohui - HQP software
  • Ben - space-time particle
  • Jae - simple optimization problem
  • KC - NLOPT?
  • Zhili - opt packages on spacetime particle


Optimization categories

  • Constrained Optimization (pdf of slides)
  • ACM Portal breakdown
    1. Constrained optimization
    2. Convex programming
    3. Global optimization
    4. Gradient methods
    5. Inter programming
    6. Least squares methods
    7. Linear programming
    8. Nonlinear programming
    9. Quadratic programming methods
    10. Simulated annealing
    11. Stochastic programming
    12. Unconstrained optimization
  • Wikipedia's optimization breakdown
    • Convex programming
    • Integer programming
    • Quadratic programming
    • Nonlinear programming
    • Stochastic programming
    • Robust programming
    • Combinatorial optimization
    • Infinite-dimensional optimization
    • Heuristic algorithms
    • Constraint satisfaction
    • Disjunctive programming
    • Trajectory optimization

Methods commonly encountered

  • Linear function, linear constraints
    • Linear Programming
    • Simplex Method
  • Non-linear optimization
    • Convex problems
      • unconstrained
        • Analytic first derivative = 0
        • Iterative methods: descent methods, e.g., Gradient descent, Congugate gradient method, Powell's method, line search
        • Quadratic Programming
        • Sequential quadratic programming
      • constrained
        • Lagrange multiplier
  • Probabalistic algorithms
    • Genetic algorithms
    • Simulated Annealing
  • Search methods
    • Dynamic programming
    • Viterbi algorithm
  • Stochastic algorithms
    • Monte Carlo methods
    • Particle Swarm Optimization
  • Discrete Methods
    • integer programming
    • scheduling problems
    • knapsack problems
    • network flow problems
  • State estimation
    • Kalman filter
    • Condensation

Associated techniques often encountered

  • dimensionality reduction
    • PCA
    • LU decomposition
    • Isomap
    • factor analysis
    • linear discriminant analysis
    • ...

Optimization Approaches - web pages

Optimization Packages and Software - web pages


Sample problems

Some of these are toy problems some are complex. Some of these are fabricated problems, some are useful.
  • Given a cost function of object parameters, minimize the cost incurred over a time interval using constraints that the object is at location A at time t=0 and at location B at t=1. For example, the cost function might be a linear function of force applied to the object. Assum gravity and sticky collisions with the groundplane.
  • Given a few measurements of a human figure (e.g., height, weight, chest circumfrence) process a database of human figures to select a figure that minimizes distance from the measurements.
  • Given a database of motions, stitch together the best sequence of motions, with lowest transition cost and minimizes errors from path constraints.
  • Given a family of articulated linkages, find the one the travels the greatest distance when the joint is repeatedly articulated.
  • Given an articulated human figure, manimize the sum of joint torques that produce the most effective walking behavior.

Examples from the literature


Rick Parent
September, 2010