Page 40 - Compact Numerical Methods For Computers
P. 40
Chapter 3
THE SINGULAR-VALUE DECOMPOSITION AND
ITS USE TO SOLVE LEAST-SQUARES PROBLEMS
3.1. INTRODUCTION
This chapter presents an algorithm for accomplishing the powerful and versatile
singular-value decomposition. This allows the solution of a number of problems to
be realised in a way which permits instabilities to be identified at the same time.
This is a general strategy I like to incorporate into my programs as much as
possible since I find succinct diagnostic information invaluable when users raise
questions about computed answers-users do not in general raise too many idle
questions! They may, however, expect the computer and my programs to produce
reliable results from very suspect data, and the information these programs
generate together with a solution can often give an idea of how trustworthy are
the results. This is why the singular values are useful. In particular, the appear-
ance of singular values differing greatly in magnitude implies that our data are
nearly collinear. Collinearity introduces numerical problems simply because small
changes in the data give large changes in the results. For example, consider the
following two-dimensional vectors:
T
A = (1, 0)
T
B = (1, 0·1)
T
C = (0·95, 0·1) .
Vector C is very close to vector B, and both form an angle of approximately 6°
with vector A. However, while the angle between the vector sums (A + B) and
(A + C) is only about 0.07°, the angle between (B – A) and (C – A) is greater
than 26°. On the other hand, the set of vectors
T
A = (1, 0)
T
D = (0, 1)
T
E = (0, 0·95)
gives angles between (A + D) and (A + E) and between (D – A) and (E – A) of
approximately 1·5°. In summary, the sum of collinear vectors is well determined,
the difference is not. Both the sum and difference of vectors which are not
collinear are well determined.
30