**Class time and place:**11:00 - 12:20 TR in ECEB 3081.**Instructor:**Prof. V. V. Veeravalli. 315 CSL, vvv at illinois dot edu, 333-0144

Instructor Office Hours (online only): Wednesdays 5PM - 6PM. Zoom Coordinates.**Teaching Assistants:**Adarsh Subramaniam, adarshm2 at illinois dot edu, and Aditya Deshmukh, adarshm2 at illinois dot edu

TA Office hours: Mondays 5PM - 7PM.**In person**in ECEB 3036, and also synchronously on Zoom. Zoom Coordinates.- Please add yourself to the Piazza discussion site for the course. The access code is here .
- The Gradescope entry code is here .

- Exam 1 will be held
**in person**on Monday, March 6 from 7-8:50 PM in ECEB 1013. You will be allowed one sheet of notes (8.5''x11'', both sides) for the exam. Otherwise the exam is closed book. - Exam 2 will be held
**in person**on Monday, May 1 from 7-8:50 PM in ECEB 1013. You will be allowed two sheets of notes (8.5''x11'', both sides) for the exam. Otherwise the exam is closed book. The exam will cover all the material from class, with an emphasis on material covered since Midterm 1.

**Note:** Please submit your homework assignments on Gradescope. Scan your handwritten solutions into a pdf file to submit. At the time of submission please don't forget indicate which page/s contain the answers to each of the questions.

- Homework Assignment 1: Due Tuesday Jan 31, 11 AM on Gradescope.

**Note:** Computer assignments are to be done in assigned groups. Each student in a group will be awarded the same points after the assignment is graded. The code should be uploaded by a single member of the group on Compass2g before the due date, 5:00 PM. In case you have mutiple files, upload a zipped folder. One student from each group must meet with the assigned TA during the TA office hours on the due date to demonstrate their code in-person and get the assignment graded -- the other members can be present in-person to answer questions. Each group will be assigned a time slot for for this purpose in the period from 5:00 PM -- 7:00 PM on the due date.

- Lecture 1 (pre), Lecture 1 (post).
- Lecture 2 (pre), Lecture 2 (post).
- Lecture 3 (pre), Lecture 3 (post).
- Lecture 4 (pre), Lecture 4 (post).

**Syllabus:**This is a senior/first year graduate-level course on optimization. Topics include necessary and sufficient conditions for local optima; characterization of convex sets and functions; unconstrained optimization, gradient descent and it variants; constrained optimization and the gradient projection method; optimization with equality and inequality constraints, Lagrange multipliers, KKT conditions; penalty and barrier function methods; weak and strong duality and Slater conditions; augmented Lagrangian methods; sub-gradient methods; proximal gradient descent; applications.

Prerequisites: Linear algebra at the level of Math 415, programming skills at the level of ECE 220.**Textbook:**D. Bertsekas. Nonlinear Programming, Athena Scientific, 2016.**Other References:**

S. Boyd and L. Vandenberghe, Convex Optimization, Cambridge University Press, 2004.

D. Luenberger and Y. Ye. Linear and Nonlinear Programming, Springer, 2008.**Exams, homework, grading, etc.:**- Homework (H) problems will be assigned on a (approx.) fortnightly basis and be submitted via Gradescope . Collaboration on the homework is permitted, however each student must write and submit independent solutions. No late homework will be accepted (unless an extension is granted in advance by the instructor).
- There will be three programming assignments (P), which will be done in Python. The assignments will be done collaboratively in teams.
- There will be two mid-term exams. The first midterm exam (M1) will be held on March 6, and the second midterm exam (M2) will be held on May 1. Both will be evening exams from 7-8:50 pm in ECEB 1013.
- Students taking the course for 4 credit hours will be required to do a paper review project (R). Details will be provided later in the semester.
- Grading will be done separately for the 4 credit hour and 3 credit hour students. For 4 credit hour students the course grade will be determined by your performance in the H, M1, M2, P and R according to the formula:

Score = .2H + .2P + .2R + max{.25M1 + .15M2, .15M1 + .25M2}.

For 3 credit hour students, the course grade will be determined by the formula:

Score = .25H + .25P + max{.3M1 + .2M2, .2M1 + .3M2}.

Here H, M1, M2, P and R are normalized to 100.