The convex and non-convex programming. Nonlinear programming (unconditional optimization; quadratic programming, convex programming, separable programming, integer programming). Dynamic programming. Multi-criteria optimization. Compromising programming. Abstract programming. The calculus of variations. The content of this course will be harmonized with the research at the Faculty and the most current developments in the field of mathematics programming and combinatorial optimization.