Discrete Geometry and Optimization