Course Syllabus

[LAST UPDATED March 19, 2019]

  • ABOUT THIS CLASS. The goal of this course is give an introduction to the optimization methods, including line search method, trust region method, Newton's method, linear programming, linear and non-linear least square methods. 
  • PREREQUISITES. Math 2D, 3A, 9 (10) or equivalent.
  • TEXTBOOK. Numerical Optimization, J. Nocedal and S. Wright.  FREE COPY HERE. You can also download it from the class files.
  • LECTURES. MWF 10:00 -- 10:50am @ALP 2600.
  • DISCUSSION SECTION. TuTh 11:00 -- 11:50 @ HIB 110.
  • INSTRUCTOR. Yimin Zhong,, Rowland Hall 510V.
  • TEACHING ASSISTANT. Lora Weiss,, Rowland Hall 410R.
    • Lecturer: MWF 11:00-12:00 @ Rowland Hall 510V.
    • TA: TBA
  • GRADES. final (30%), midterms (20% each), projects (20%), homework exercises (10%).

          A+ ≥ 96.5 > A ≥ 93.5 > A- ≥ 90.0
          B+ ≥ 86.5 > B ≥ 83.5 > B- ≥ 80.0
          C+ ≥ 76.5 > C ≥ 73.5 > C- ≥ 70.0
          D+ ≥ 66.5 > D ≥ 63.5 > D- ≥ 60.0 > F

  • HOMEWORK. The homework exercises are ALL from the textbook's exercises, the exercises might involve coding as well. The exercises are assigned on Mondays and (non-coding part) turned in on the next week's Thursday's discussion section.  The coding part can be submitted online, the submission should be one zip/tar file ONLY.
  • COLLABORATION. You are welcome to work in groups on homework exercises and projects, but you should write it up for your submission/exercises on your own. Code which is copied from either another student or from some other sources will NOT receive credit. On this and other matters, we will follow the university's academic honesty policy, which is linked at the end in the syllabus.
  • PROJECTS.  There will be 5 or 6 projects in this course, approximately once per non-exam week. The projects are supposed to implement in Python (if Python is not learnt, MATLAB could be used instead). The projects should be submitted online on this website. Each project will be given 2 weeks to complete. If submission is later than the deadline, there might be a penalty.
  • PROJECT REQUIREMENT. Your submission will be a tar/zip file. Your submission must include:
    • A README text file, describing how to run the code, where to retrieve the output/result.
    • ALL necessary files to run the code.
  • EXAMS. There are 2 midterms and 1 final exam, ALL of them are closed book. The midterms will be in-class 50 minutes long and non-cumulative. The final exam will be 120 minutes long and cumulative. For all of the exams, no calculators or electronic devices are allowed. All calculations required will be simple enough so that you can do them by hand. The tentative dates for the exams are:
    • Midterm 1: Mon. Feb 4. 10:00-10:50am @ ALP 2600
    • Midterm 2: Fri. March 1. 10:00-10:50am @ALP 2600
    • Final: Mon, March 18. 10:30am -- 12:30pm @ ALP 2600
  • EXAM MAKEUP POLICY. Requests for make-up final exams will be considered only under the following guidelines:
    • If the final exam violates the student's religious creed.
    • If the final exam time would result in loss of wages constituting financial hardship, need for child care resulting in financial hardship, inability to procure transportation or loss of employment.
    • If there is a verifiable emergency, which prevents the student from taking the final exam at the scheduled time (e.g., serious illness, death of immediate family member, or serious accident).
    • Python (Python 3 preferred). The easiest installation will be using anaconda.

Everyone in the classroom is expected to behave in a respectful and honest manner, both personally and academically. For a formal list of expected behavior and your rights at the university, please consult:

Course Summary:

Date Details Due