ESE 605, Spring 2021 – Modern Convex OptimizationInstructor: Nikolai Matni (nmatni@seas.upenn.edu), Assistant Professor, ESE Department TAs: Yijie (Lisa) Zhao (zhaoyij@seas.upenn.edu), Alexander Robey (arobey1@seas.upenn.edu), Alp Aydinoglu (alpayd@seas.upenn.edu) Lectures: Tu/Th 3:00-4:30pm ET, Zoom lectures (check Piazza for Link/Passcode) will be recorded live and posted to Canvas afterwards. You may choose to attend the live recordings or watch asynchronously. Beyond showing basic respect to the instructor and your classmates, no requirements (e.g., cameras must be on, you may not watch from bed, no eating, etc.) will be asked of those tuning in to live lectures. Syllabus: ESE605-001 If you are trying to register for the class: use this form. Do not e-mail me, I cannot help you! Canvas: We will be using Canvas to manage class logistics. Please log in and register here. On Canvas, there will be a link to Piazza, please register there as well. We will be posting Zoom links/passcodes on Piazza approximately 30min before lecture to prevent Zoom bombing. Office hours
Course descriptionIn this course, you will learn to recognize and solve convex optimization problems that arise in applications across engineering, statistics, operations research, and finance. Examples will be chosen to illustrate the breadth and power of convex optimization, ranging from systems and control theory, to estimation, data fitting, information theory, and machine learning. A tentative list, subject to change, of what we will cover includes: convex sets, functions, and optimization problems; the basics of convex analysis; least-squares, linear and quadratic programs, semidefinite programs, minimax, extremal volume, and other problems; optimality conditions, duality theory, theorems of alternatives, and applications; interior-point algorithms for solving convex optimization problems, and their complexity analysis; applications to signal processing, statistics and machine learning, control, digital and analog circuit design, and finance. Course objectives
About the CoursePrerequisitesThis is a math intensive course. A solid foundation in linear algebra (at the level of Math 314), as well as comfort with analysis, probability, and statistics at an advanced undergraduate level is required. Familiarity with one of Matlab, Python, or Julia. Undergraduates need permission. Intended audienceThis course will benefit anyone who uses or will use scientific computation or optimization in engineering, statistics, signal processing, or related work (e.g., machine learning, finance). More specifically, convex optimization problems are likely to pop up in the work of people in the following departments and fields: Electrical Engineering (signal/image processing, communications, control), Aero/Astro Engineering (guidance, navigation, control, design), Mechanical & Civil Engineering (robotics, control, structural analysis), Computer Science (machine learning, robotics, computer graphics, algorithms & complexity, computer networking), & Operations Research (Wharton). ScheduleThe following schedule is tentative and subject to change.
TextbookThe textbook is Convex Optimization by Boyd and Vandenberghe, available online. Additional optional resources that may prove useful include:
SoftwareYou will use one of CVX (Matlab), CVXPY (Python), or Convex.jl (Julia), to write simple scripts. We refer to CVX, CVXPY, and Convex.jl collectively as CVX*. Grading
Note that these weights are approximate, and we reserve the right to change them later. Code of Academic Integrity: All students are expected to adhere to the University’s Code of Academic Integrity. |