a logo for the course

Computational Methods in Optimization

David Gleich

Purdue University

Spring 2023

Course number CS-52000

Monday, Wednesday, Friday, 1:30-2:20pm

Location Lawson 1106


Homework 7

Please answer the following questions in complete sentences in a clearly prepared manuscript and submit the solution by the due date on Gradescope.

Remember that this is a graduate class. There may be elements of the problem statements that require you to fill in appropriate assumptions. You are also responsible for determining what evidence to include. An answer alone is rarely sufficient, but neither is an overly verbose description required. Use your judgement to focus your discussion on the most interesting pieces. The answer to "should I include 'something' in my solution?" will almost always be: Yes, if you think it helps support your answer.

Problem 0: Homework checklist

Problem 1

(Adapted from Nocedal and Wright 3.1, typos are my own) Backtracking line search is a simple method that attempts to balance sufficient decrease with a long step length by testing a sequence of points: and accepting the first point that satisfies sufficient decrease (which is the condition that for the line search function we discussed in class).

  1. Implement a backtracking line search routine to select the step length and add this to our simple gradient descent code from the lectures. (Note, you are free to implement gradient descent using your own code too, adapting our code is only suggested for convenience.)

  2. Prepare a plot of the step lengths (values of that were accepted) when we run gradient descent with this line search on the Rosenbrock function staring from the point and also the point .

  3. Implement Newton's method using line search as well. (Don't worry about singularity in the Hessian or any of the real issues that come up with Newton -- just use the search direction .

  4. Prepare a plot of the step lengths as in part 2.

  5. Discuss any notable differences or similarities.

Problem 2

(Exercise 4.2 in Kochenderfer and Wheeler) The first Wolfe condition requires . What is the maximum step length that satisfies this condition given that .

Problem 3

(Modified from Griva, Sofer, and Nash 11.5.8.) Consider the function where is a very large matrix and computing is expensive. Show how we can use the structure of the function to reduce the number of matrix vector products that would be required for checking the Wolfe conditions when searching in a direction . (Hint, compute once, and see how to re-use it.)

Problem 4

Read section 3.5 in Nocedal and Wright on step-length selection. Then solve problem 3.13 (typos are mine).

  1. In the notation we have from class where is the function projected into the current search direction, then show that the quadratic function that interpolates and is given by (3.57), i.e.

  2. Suppose that the sufficient decrease condition is not satisfied at . Then show that