Minimizing Multivariate Functions with Newton's Method and Gerschgorin Theorem - Prof. Dia, Assignments of Mathematics

Instructions for a university-level homework assignment in which students are required to write a computer program to minimize a multivariate function using newton's method and the gerschgorin theorem. The assignment includes details on how to use the gerschgorin theorem to determine a parameter for the smallest eigenvalue, and the use of cvsrch for backtracking line search. The document also emphasizes the importance of proper documentation for the function newtonmin.

Typology: Assignments

Pre 2010

Uploaded on 02/13/2009

koofers-user-nk7
koofers-user-nk7 🇺🇸

4

(1)

9 documents

1 / 2

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
AMSC 607 / CMSC 764 Homework 1, Fall 2006
Due Thursday September 28, 2006, 2pm
Assignment: Solve Problem 10.16, p.340 (the 106th page of the pdf file). (In
my hard-copy of the book, it is Problem 16, p.327.) It begins, “Write a computer
program for minimizing a multivariate function....”
Changes:
Use the Gerschgorin Theorem to determine a parameter delta so that the
smallest eigenvalue of H+δIis at least 102kHk. Then compute the
Cholesky factors of H+δI.
Use cvsrch (see website) as your backtracking line search.
Notes:
Your implementation of Newton’s method should be in a function newtonmin
which can be easily applied to other functions f(x) with x Rnand n
arbitrary.
The function newtonmin should be well-documented, as if it were a library
code. In particular, documentation at the top of the function should
include:
purpose of code, since this is certainly the first thing a user wants to
know!
name of author, since it provides someone to whom bugs can be
reported and questions asked.
date of the original code and a list of later modifications, since it
gives information such as whether the code is likely to run under
the current computer environment and whether it might include the
latest advances.
description of each input parameter, so that a user knows what in-
formation needs to be provided and in what format.
description of each output parameter, so that a user knows what
information will be yielded.
brief description of the method and references, to help a user decide
whether the method fits his/her needs.
In-line documentation should identify the major sections of the code and
provide some detail on the method used. It is important in specifying the
algorithm, identifying bugs, and providing information to someone who
might need to modify the software in order to solve a slightly different
problem.
Note that the documentation should be an integral part of the code; in
other words, it is not enough to include it in a separate document, because
a potential user might not have access to that document.
1
pf2

Partial preview of the text

Download Minimizing Multivariate Functions with Newton's Method and Gerschgorin Theorem - Prof. Dia and more Assignments Mathematics in PDF only on Docsity!

AMSC 607 / CMSC 764 Homework 1, Fall 2006 Due Thursday September 28, 2006, 2pm

Assignment: Solve Problem 10.16, p.340 (the 106th page of the pdf file). (In my hard-copy of the book, it is Problem 16, p.327.) It begins, “Write a computer program for minimizing a multivariate function....”

Changes:

  • Use the Gerschgorin Theorem to determine a parameter delta so that the smallest eigenvalue of H + δI is at least 10−^2 ‖H‖∞. Then compute the Cholesky factors of H + δI.
  • Use cvsrch (see website) as your backtracking line search.

Notes:

  • Your implementation of Newton’s method should be in a function newtonmin which can be easily applied to other functions f (x) with x ∈ Rn^ and n arbitrary.
  • The function newtonmin should be well-documented, as if it were a library code. In particular, documentation at the top of the function should include: - purpose of code, since this is certainly the first thing a user wants to know! - name of author, since it provides someone to whom bugs can be reported and questions asked. - date of the original code and a list of later modifications, since it gives information such as whether the code is likely to run under the current computer environment and whether it might include the latest advances. - description of each input parameter, so that a user knows what in- formation needs to be provided and in what format. - description of each output parameter, so that a user knows what information will be yielded. - brief description of the method and references, to help a user decide whether the method fits his/her needs.

In-line documentation should identify the major sections of the code and provide some detail on the method used. It is important in specifying the algorithm, identifying bugs, and providing information to someone who might need to modify the software in order to solve a slightly different problem. Note that the documentation should be an integral part of the code; in other words, it is not enough to include it in a separate document, because a potential user might not have access to that document.

Maximum points:

  • newtonmin correctness: 15 points
  • newtonmin documentation: 10 points
  • Correct implementation of the 5 test problems: 5 points
  • Part (e): 20 points. Give special attention to this part. In particular, ∗ For each function, plot the iterates on a contour plot of the func- tion (contour). ∗ Comment on when the Hessian is modified. ∗ Compute the convergence rate for each of the 5 test problems. ∗ Comment carefully on whether each result is consistent with the convergence theory.

Submission: by hard-copy, given to me after class or delivered to my office. (I will ask for an electronic copy of your programs if I need them.)

  • Listings of each Matlab function and script that you wrote.
  • A Matlab “diary” of the output.
  • A copy of each plot.
  • Your written answer, separately for each of the 5 functions, of how the results are consistent with the theory of Newton’s method.

Gerschgorin Circle Theorem: All of the eigenvalues of the n × n matrix A lie in the union of the n disks in the complex plane defined by

{z : |aii − z| ≤

∑^ n

j = 1 j 6 = i

|aij |}

for i = 1,... , n. Therefore, if our matrix is real symmetric and none of these disks touches the negative real axis, then the matrix is positive definite.