The aim of this course is to improve the skills of students in modeling and solving real life problems in the mathematical programming and optimization. Both deterministic and stochastic models are considered. The course objective is to study the mathematical programming techniques ,to develop various and complex models on the real-world situations, to give an invaluable skill that will  help students in other courses and in the workplace.