Mathematical Optimization Techniques