Information for Instructors
Prerequisites:
- Your students need the same background for the tutorial and applet as they
would for a linear algebra course. The tutorial and applet are intended to
be used within a linear algebra course or perhaps as a quick and simple introduction
to iterative methods for solving linear systems in an introductory numerical
analysis course. For the second part of the tutorial and some of the corresponding
exercises (pages 7-10), familiarity with vector norms and matrix norms is
helpful, but supplemental information is given (via a web link) within the
tutorial. Vector norms are normally covered prior to eigenvectors and eigenvalues
anyway, and matrix norms are often covered at about the same time as eigenvectors
and eigenvalues.
- You (the instructor) need no special background, except an interest in
and some familiarity with very basic numerical linear algebra.
- You will fnd more information on getting and using the applet in the Information
on the Java Applet. (This is also page 3 of the module for the benefit
of students.)
Because iterative methods are so important in solving so many of today’s real
world problems, it is important that a student’s first exposure to iterative
methods be as positive and simple, as well as informative and educational, as
possible. With this in mind, the main purpose of the tutorials and Java applet
is to allow for easy visualization and experimentation. In more detail, here
are the primary ideas of the module:
- Use each current approximation to get a better approximation.
- When multiple values are being computed and are interdependent, does one
use new values as computed or not?
- In virtually all numerical methods we approximate solutions. Even if it
might seem that we have reached the solutions exactly (for example, due to
rounding), we generally never reach the true solution exactly.
- How long does it take to reach an acceptable solution? In other words,
how much work is required per iteration for a given method, and how many iterations
are required to reach an acceptable error tolerence?
- Does a certain method always work? If not, what guarantees that it will
work? What affects how quickly it will work?
Features of the applet:
- The applet allows for clear and simple visualization of what each iterative
method is doing, in particular, how eigenvectors and eigenvalues affect the
convergence (or non-convergence) of each method. Repeatedly zooming-in on
the converging approximations helps students literally to see that iterative
methods don’t normally find a solution exactly, rather that each iteration
gives a better approximation, and you have to decide how good is good enough.
- The applet does the basic computations of each iteration to allow you to
easily and quickly do as many iterations as desired. This allows for very
easy experimentation that often tends to requires several iterations. Many
of the exercises take advantage of this fact and allow students to explore
a variety of basic ideas and considerations arising in iterative solution
of linear systems that would otherwise be impossible to do.
- The applet allows for a simple comparison of the three iterative methods
considered, including a comparison of their rates of convergence
- The applet is designed for easy use and is free. In particular, there is
virtually no learning curve and there is no software, calculator, etc. for
the student or department to purchase. The only requirement is a computer
with an Internet connection and the Java Plug-in, which is free and easy to
install.
One note regarding the fact that the applet deals only with 2 x 2
sytems. Obviously we would never use an iterative method to solve a 2
x 2 sytems. Indeed, we would not use an iterative method to solve any
small (64 x 64, 512 x 512, etc.) system. In my own
image processing research I typically deal with (sparse) systems of 65536
x 65536 (2562 x 2562)
or 262144 x 262144 (5122 x 5122).
Also, we don't generally use any of the three methods (Jacobi, Gauss-Seidel,
SOR) discussed in the tutorial or included in the applet, although some of their
basic ideas are found in any iterative method and sometimes the ideas unique
to each idea are actually found in preconditioners. Still, these methods are
very straightforward, which makes them relatively easy to understand, which
is why they are often a student's first taste of iterative methods for solving
linear systems.
Furthermore, when dealing with the 2 x 2 case (as opposed to 3
x 3, or especially larger systems), it is much easier to visualize the
results of these methods, which in my experience both as a learner and a teacher
is very valuable. With this said, the tutorial and the experiementation and
visualization that are possible via the applet are good as introductions to
iterative methods for solving Ax =
b, but of course for a numerical analysis or
numerical linear algebra course, further treatment of these topics would be
both appropriate and necessary. In particular, in further treatment of these
topics, it is important to point out that some of the simple and elegant results
seen in the 2 x 2 case are no longer true when dealing with larger
systems.
Often when first introducing iterative methods for solving linear systems,
only the Jacobi and Gauss Seidel Methods are considered. The SOR Method is consequently
presented at the end of Part 2 of the Tutorial (page 9), as an optional topic.
Here are a few suggestions for you on how to use this module and the applet. You can:
- Print whatever files you want your students to have, then photocopy and
distribute them.
- Give your students the URL for the starting
page of the module, and give information about what pages you want them
to access and what problems you want them to do.
- From the class homepage (or in class), give your students links to the
specific sections to use and/or read.
- Save whichever files you want, and give your students the links and any
other pertinent information on the class homepage. (There are a number of
small image files that are incorporated into these web pages that would also
need to be downloaded.)
- Cut out parts of the tutorial, rather than give the students the tutorial
exactly as written. Here are two possible examples:
- You might want your students to derive some or all of the formulas
given in tutorial, in which case you could simply cut out the parts of
the tutorial that give the derivations and the formulas.
- Or you might want your students to see the formulas (and their derivations)
for the Jacobi Method, but then require them to derive the corresponding
formulas for the Gauss-Seidel Method.
- Have your students submit snapshots of their work on the applet as part
of a HW assignment—one way of taking a snapshot of the applet is by pressing
Ctrl-Alt-PrintScreen (which creates a copy of the screen), and then pasting
it into another file, such as a MS Word file (Ctrl-V).
Since creating this tutorial and applet, I have taught linear algebra twice.
Both times I had to go to a conference about a month into the semester. I had
the students read the first part of the tutorial and use the applet to do the
Exercises (page 6) completely on their own in my absence. Then later in the
semester, after we had covered eigenvalues and eigenvectors, we discussed in
class the ideas covered in the second half of the tutorial, and the students
did Exercises from the second set (page 10). With this approach, students get
two tastes of iterative methods and numerical linear algebra: At first, they
simply see what the methods do, and later they get to understand how they work.
The homework exercises comprise problems corresponding to Part 1 of the tutorial
(Exercises 1 – 6, page 6) and to Part 2 of the tutorial (Exercises 7 – 18, page
10). I designed each homework problem carefully and thoughtfully to both pique
students' curiosity and to challenge them, taking advantage of the applet, which
does most of the tedious computation, and which allows for clear visualization.
There are several possibilities for student exercises. You can:
-
Simply assign some of the problems from the given Exercises,
including possibly assigning only certain parts of certain Exercises.
-
Design your own problem to be solved with the help of the applet,
or modify a problem from the given Exercises and assign it.
- Have your students use the applet in working homework exercises from the
class textbook that deal with solving 2 x 2 systems.
See the Exercises Goal Chart
for more details on the particular ideas each homework problem was designed to
explore.
For the applet and all other files:
© David M. Strong 2003 - 2005
All Rights Reserved