In the recent past, algorithms of solving many ill-posed problems in the field of Computer Vision are derived from modern Optimization methods. Allied areas of Machine learning, Pattern recognition and Video processing have also seen a rise in the use of such methods. This course will provide an overview of the theories and hands-on practice, required by students and scholars who intend to specialize in this field, to solve complex problems in computer vision and associated fields of study.