Many problems in computer vision involve optimization. Choosing what to optimize can be difficult; firstly because optimization of the appropriate objective may be intractably difficult and secondly b