**Class time and place:**11:00 - 12:20 TR, Synchronous Online Zoom Coordinates.**Instructor:**Prof. V. V. Veeravalli. 315 CSL, vvv at illinois dot edu, 333-0144

Office Hours: Wednesdays 5PM - 6PM. Zoom Coordinates.**Teaching Assistants:**Aditya Deshmukh, adll at illinois dot edu, and Akshayaa Magesh, amagesh2 at illinois dot edu

Office hours: Mondays 5PM - 7PM. Zoom Coordinates.- Please add yourself to the Piazza discussion site for the course.
- The Gradescope entry code is here .
- Please add yourself to ECE 490 on the CBTF Scheduler.

- Exam 1 will be held on Monday, October 12 from 7-8:30 PM using Gradescope/CBTF. 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 on Wednesday, November 18 from 7-8:30 PM using Gradescope/CBTF. You will be allowed two sheets of notes (8.5''x11'', both sides) for the exam. Otherwise the exam is closed book.

**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 September 8, 11 AM on Gradescope. Solutions.
- Homework Assignment 2: Due Tuesday September 22, 11 AM on Gradescope. Solutions.
- Homework Assignment 3: Due Tuesday October 6, 11 AM on Gradescope. Solutions.
- Spring 2017, Midterm 1 (practice exam).
- Exam 1 Solutions.
- Homework Assignment 4: Due Tuesday October 27, 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 either of the TAs during the TA office hours on the due date to demonstrate their code (through screen sharing on Zoom) and get the assignment graded -- the other members can be in Zoom meeting 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.

Check the assigned groups and time slots here.

- Computer Assignment 1: Due Monday September 28, 5 PM on Compass2g. Sample Q, b, and c to test your code are available here: Q, b, and c. The TAs will use Q, b, and c in this format to test your code. You can also generate additional Q, b, and c to test your code using this Python script.
- Computer Assignment 2: Due November 2nd, 5 PM on Compass2g.

**Note:** The videos of the lectures will also be available on Illinois Media Space on the ECE 490 Channel .

- Lecture 1 (pre), Lecture 1 (post), and Lecture 1 Video.
- Lecture 2 (pre), Lecture 2 (post), and Lecture 2 Video.
- Lecture 3 (pre), Lecture 3 (post), and Lecture 3 Video.
- Lecture 4 (pre), Lecture 4 (post), and Lecture 4 Video.
- Lecture 5 (pre), Lecture 5 (post), and Lecture 5 Video.
- Lecture 6 (pre), Lecture 6 (post), and Lecture 6 Video.
- Lecture 7 (pre), Lecture 7 (post), and Lecture 7 Video.
- Lecture 8 (pre), Lecture 8 (post), and Lecture 8 Video.
- Lecture 9 (pre), Lecture 9 (post), and Lecture 9 Video.
- Lecture 10 (pre), Lecture 10 (post), and Lecture 10 Video.
- Lecture 11 (pre), Lecture 11 (post), and Lecture 11 Video.
- Lecture 12 (pre), Lecture 12 (post), and Lecture 12 Video.
- Lecture 13 (pre), Lecture 13 (post), and Lecture 13 Video.
- Lecture 14 (pre) , Lecture 14 (post), and Lecture 14 Video.
- Lecture 15 (pre), Lecture 15 (post), and Lecture 15 Video.
- Lecture 16 (pre), Lecture 16 (post),and Lecture 16 Video.

**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, barrier function methods; strong and weak duality and Slater conditions; sub-gradient descent and conjugate gradient methods; proximal gradient descent; augmented Lagrangian methods; 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 October 12, and the second midterm exam (M2) will be held on November 18 via Gradescope/CBTF.
- 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 graduate and undergraduate 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.