Optimization using Linear Programming