Special Topics in Mechanical Engineering: Non-Linear Programming