Optimization Methods in Discrete Geometry