Math 171B (Spring 2023)
Problems in all areas of mathematics, applied science, engineering, economics, medicine and statistics can be posed as mathematical optimization problems. An optimization problem begins with a set of independent variables , and often includes conditions or restrictions that define acceptable values of the variables. Such restrictions are known as the constraints of the problem. The other essential component of an optimization problem is a single measure of ``goodness'', termed the objective function, which depends in some way on the variables. The solution of an optimization problem is a set of allowed values of the variables for which the objective function assumes its ``optimal'' value. In mathematical terms, this usually involves maximizing or minimizing.
For historical reasons, the subject is often also known as mathematical programming. However, it must be emphasized that mathematical programming has no direct connection with computer programming.
Math 171B is an upper-division course that is primarily concerned
with the area of nonlinear optimization, which involves the
minimization of a nonlinear function subject to nonlinear
constraints. Topics covered in this course include the
geometry of nonlinear programming, optimality conditions, the method
of gradient descent, Newton's method, penalty function methods,
augmented Lagrangian methods, and interior methods.
Some programming experience is recommended. Some homework assignments will
require the use of Matlab.
The aim of the class is for students to
- understand the basic theory and methods for nonlinear optimization problems,
- determine whether a problem has a solution or not, and
- gain practical experience by utilizing state-of-the-art tools.
Class guidelines:
- The lectures for this course will be podcast. Recordings will be posted on the Canvas Media Gallery.
- All HW assignments will count towards the final grade (i.e., none can be dropped). Late HW will not be accepted.
- It is okay to work in a study group, but you must inform the TA of the other members of your group.
- There will be no make-up exams. If you miss a midterm with an excused absence (i.e., illness with a note from a doctor), the other midterm and the final exam will be weighted accordingly.
- Students requesting accommodations for this course due to a disability must provide a current Authorization for Accommodation (AFA) letter (paper or electronic) issued by the Office for Students with Disabilities (https://osd.ucsd.edu). Students are required to discuss accommodation arrangements with instructors and OSD liaisons in the department in advance of any exams or assignments.
- I prefer not to answer technical questions by email (n emails for me to understand your question, m emails for you to understand my answer), but students are welcome to ask questions on Canvas/Piazza.
- You may use a laptop in class to view the lecture slides, but, please, no cell phones or text messaging.
- All downloaded class materials are subject to UC Copyright Restrictions and must not be reposted.
instructor | office hours | lectures | |
---|---|---|---|
Philip Gill | pgill@ucsd.edu |
Monday, Wednesday 10:30a – 11:30a AP&M' 5872 |
MWF 1:00p – 1:50p HSS 1330 |
teaching assistant | office hours | Thursday discussion section(s) | |
Xiaomeng Hu | x8hu@ucsd.edu | Wednesday 4:30p – 5:30p HSS 3070 | A04 AP&M B412 4p |
Yumeng Zhu | yuz064@ucsd.edu | Thursday 3p – 4p, Friday 10a – 11a HSS 3070 | A01, A02 AP&M B412 1p, 2p |
Midterm:
Homework:
- HW1 | HW1 solutions
- HW2 | MW2 | HW2 solutions | MW2 solutions
- HW3 | MW3 | HW3 solutions | MW3 solutions
- HW4 | MW4 | HW4 solutions | MW4 solutions
- HW5 | MW5 | HW5 solutions | MW5 solutions
- HW6 | MW6 | HW6 solutions | MW6 solutions
Lecture slides:
Download lecture slides from
the class calendar.
Class text and Matlab guide:
The class text is
available here. The
login/password is your UCSD login name (lowercase) and PID
(uppercase) (e.g., 'pgill', 'A12345678').
A brief introduction to basic Matlab commands is
available here.
Written assignments:
gradescope
Programming assignments:
matlab.ucsd.edu
Matlab m-files:
Important Dates:
- Mon April 3: First lecture
- Mon April 24: Midterm 1
- Mon May 22: Midterm 2
- Thu June 15 (11:30a – 2:30p): Final exam
- UCSD Enrollment Calendar
Grades:
Course grades will be computed from the best of the following two
formulas
- homework assignments (20%), two midterm examinations (20% each), and the final examination (40%), OR
- homework assignments (20%), best midterm examination (20%), and the final examination (60%).
Letter grades will be assigned based on the following scale: A+ > 99%, A > 93%, A- > 90%, B+ > 87%, B > 83%, B- > 80%, C+ > 77%, C > 72%, C- > 70%. I reserve the right to lower the scale (that is, any change to the scale will either improve your grade or leave it unchanged).
Textbook:
There is no required textbook for this course. A
copy of "Nonlinear Programming Notes" by Philip E. Gill and Margaret
H. Wright will be made available to enrolled students. Please do not
distribute or repost these notes.
Written assignments:
Students will turn in written
homework assignments
via gradescope. See
gradescope's help
center for directions on submitting assignments. Written
assignments can be hand-written or typed (e.g., via LaTeX).
Please try to write neatly and clearly indicate the start of
each problem. Remember to write your name and ID number.
Programming assignments:
Some homework assignments will require the use of Matlab.
Students will be required to submit extracts of their Matlab sessions
as part of their written homework assignments.
All enrolled students can obtain access to Matlab at
matlab.ucsd.edu.
Assignment due dates:
Due dates will be indicated in the course
calendar and on the assignments.
Midterm examinations:
The midterm examinations will be held in class on the designated days.
Final examination:
Final examination is scheduled for
Thursday June 15th from 11:30a to 2:30p in HSS 1330. The final
will cover all material presented during the quarter.
Regrade Policy:
It is the responsibility of the student to
check graded assignments and examinations and to check that there are
no errors or discrepancies. Students should look over their exams
and assignments after the grades are published. Any errors or
discrepancies should be brought to the attention of the instructor or
the teaching assistant immediately. As this course is using
gradescope, regrade requests should be submitted via gradescope.
However, regrade requests should be submitted in a timely manner
(preferably within one week from the grades being released).
Requests that arrive excessively late will be handled at the
discretion of the course staff.
The login and password are your UCSD login name (lowercase) and PID (uppercase) (e.g., 'pgill', 'A12345678').
You can download written assignments below. Upload your written assignments to Gradescope from Canvas.