Question:

On the HW, N&S uses a strange numbering system. They restart the numbering at 10.1 after each section! Hence there are two problems numbered 10.16 (one after section 10.2 and then the one you want after section 10.5). I think the one you want is #10.17, not #10.16. Also, there are 3 problems that start "Write a computer program for minimizing a multivariate function", of which the one on pg 106 is the first (another on pg 128 and again on pg 140)!

Answer:

Correct.

Question:

For the first function, X is three dimensional. Do you want 3 contour plots?

Answer:

You may omit the contour plot for f_(1).

Question:

What are the parameters for the function newtonmin?

Answer:

One way to do it:
1. the name of a function that evaluates the function to be minimized
2. the name of a function that evaluates the gradient of the function
3. the name of a function that evaluates the Hessian matrix
4. an initial guess at the solution.
5. a convergence tolerance
Note that in Matlab, you pass a function name "myfunction" using the parameter "@myfunction", and you call the function using Matlab's "feval".

(09/21/06) If you want to use a different set of parameters, that is fine, as long as newtonmin remains "general purpose".

Question:

What values should we use for the parameters in cvsrch?

Answer:

(09/21/06) Determining good values is part of the assignment, as is documenting (in newtonmin) how you decided to set them.

Question:

How do we get the gradient and Hessian values?

Answer:

(09/21/06) Either program them yourself or find an automatic differentiation program (search "automatic differentiation matlab" on the internet). Two notes: automatic differentiation packages are a bit difficult to work with, and note that this is not the same as symbolic computation.

Question:

Does our program need to be able to compute a direction of negative curvature?

Answer:

(09/21/06) No.