Vous êtes sur la page 1sur 96

The Binomial Model

The model has made option pricing accessible to MBA students and Önance
practitioners preparing for the CFA: It is a very useful tool for conveying the
ideas of delta hedging and no arbitrage, in addition to the subtle concept of risk
neutrality and option pricing. Here the model is considered in a slightly more
mathematical way. The basic assumptions in option pricing theory consist of
two forms, key:

! Short selling allowed

! No arbitrage opportunities

and relaxable

! Frictionless markets - no transaction costs, limits to trading or taxes

1
! Perfect liquidity

! Known volatility and interest rates

! No dividends on the underlying

The key assumptions underlying the binomial model are:

! an asset value changes only at discrete time intervals

! fractional trading is allowed

! an assetís worth can change to one of only two possible new values at
each time step.

2
Suppose the share price in íTrump Independent Tradersí today is 100p, on
GSE (Geniusís Stock Exchange). We write a call option on these shares with
a strike of 100p that expires tomorrow. Tomorrowís share price will be either

! 101p with probability 0.6

! 99p with probability 0.4

Question: What is todayís option value?

Method 1: Calculate the expected value of the call. If the share is 101p then
we exercise the option for 100p to obtain a 1p proÖt. On the other hand if the
share is 99p tomorrow then the option is worthless. The expected value is

C = 0:6 " 1p + 0:4 " 0p = 0:6p

3
Method 2: Set up a portfolio ! consisting of a long position in a call option
and short the shares
! = C # "S:
C is the value of the call; " the number of shares; S is the stock price of
Trump Independent Traders.

The delta means there is one degree of freedom so arrange the above so that
at T , the portfolio has the same value regardless if S = 101p or S = 99p.
C = 1p if S = 101p
C = 0p if S = 99p
=)
)

the two scenarios

xo If S = 101p at T then C = 1 therefore ! = 1 # "101

xo If S = 99p at T then C = 0 therefore ! = #"99

4
thus equating the 2 expressions for ! gives

1 # "101 = #"99
" = 12 ; ! = C # "S = #49:50p
So tomorrow the portfolio takes the value #49:50p regardless of whether the
stock rises or falls. We have created a perfectly risk free portfolio. If the
portfolio is worth #49:50p tomorrow, and interest rates are zero, how much
is the portfolio worth today? It must also be worth this amount today - this is
an example of no arbitrage. There are two ways to ensure we have #49:50p.

1. Buy one option and sell one half of the stock

2. Put the money under the mattress

Both of these portfolios must be worth the same today.

5
So we calculate the option value by writing
1 1
C#
2
" 100 = # " 99
2
C = 21

So clearly the part of the model we didnít need was the probability of the stock
rising or falling. This is saying that when option pricing the stock growing or
decreasing in value is irrelevant, i.e. the stock growth rate. This is because
we have hedged the option with the stock. Whilst we are not interested in the
direction that the stock moves, we do care about the stock price range (101
and 99), as that is related to the volatility. The larger the vol, the greater that
range is. Later we will see that the drift does not appear in the model when
pricing derivatives.

Example: A share price is currently £80. At the end of three months, it will be
either £84 or £76. Ignoring interest rates, calculate the value of a three-month
European call option with exercise price £79.

6
Binomial tree for share price is
84
80
76

Binomial tree for option price V is


5 (= max(84 # 79; 0))
V
0 (= max(76 # 79; 0)

Now set up a Black-Scholes hedged portfolio, V # "S , then binomial tree for
its value is
5 # 84"
V # 80"
#76"

7
For risk-free portfolio choose " such that 5 # 84" = #76" ) " = 58 . So
in absence of arbitrage, V # 80" = #76", and V = 2:5.

The stock volatility is of key importance in the pricing of options.

8
Earlier we had
1 # "101 = #"99
" =
1#0
= 12
101 # 99
Note it is purely a coincident in this example that delta has the same value as
the option. Note
Range of option payo§s
=
V+#V#
"= +
S # S# Range of stock prices
This model is discrete time, discrete stock. When we go to continuous time
continuous stock delta " will become @V @S :

! How does this change if interest rates are non-zero? Everything is as


before but we now have a discount factor.
Consider the earlier example but with r = 10% over one day, i.e.
1 1
=
1 + rt 1 + 0:1=252
% 0:9996

9
Now discount tomorrowís value to get to todays

V # 0:5 " 100 = #0:5 " 99 " 0:9996


V = 0:51963

So the portfolio value today must be the Present Value of the portfolio value
tomorrow.

Consider a portfolio !; long an option and short " assets. V & denotes the
option value corresponding to asset price S & :
S+ V+
S % V %
& S# & V#

! = V # "S

10
At time T there are two possible outcomes:

! # = V # # "S #
! + = V + # "S +
Choosing " so !# = !+ gives
V+#V#
"= +
S # S#
This choice of " makes ! risk-free, so no-arbitrage suggests that the return
on ! equal the risk-free rate, i.e.

erT ! = !# = !+
+ #
= S
V #V #
V # # "S # = V # #
!

S+ # S#
V # +
S #S # #
#S V #V+ #
=
$ % $ %

S+ # S#
= :
V #S + # S #V +
+
S #S #

11
Hence we can write

=
V #S + # S #V +
erT (V # "S )
S+ # S#
# + # + + #
erT V =
V S #S V
+
V #V
Se rT
+
!

# S+ # S#
erT S # S # + + rT
= V + V
S #e S #
$ S #S % !

S+ # S# S+ # S#
= qV + + (1 # q ) V #
and Önally we can write

V = e#rT qV + + (1 # q ) V #
$ %

where we deÖne
erT S # S #
q=
$ %

S+ # S#
with 0 < q < 1:

12
If compounding is discrete

(1 + rT ) S0 # S #
q=
$ %

S+ # S#
and the option price becomes

V = (1 # rT ) qV + + (1 # q ) V # :
$ %

q is a risk-neutral probability which come about from insistence on no arbitrage.


It has nothing to do with the real probabilities of S + and S # occurring. Pricing
a call using the real probability, p; will probably make you a proÖt, but a loss
is also possible. Pricing an option using the risk neutral probability; q; you will
certainly make neither a proÖt nor a loss.

13
Example: A share price is currently £63. At the end of each three-month
period, it will change by going up £3 or going down £3. Calculate the value of
a six-month European put option with strike price £61. The risk-free interest
rate is 4% per annum with continuous compounding.

Binomial tree for stock Binomial tree for option


69 0
% % (= max (61 # 69; 0))
66 P1
% & % &
63 63 P 0
& % & % (= max (61 # 63; 0))
60 P2
& &
57 4
(= max (61 # 57; 0))
We must Önd the values of P1 and P2 before we can solve for P:

14
If we set up a Black-Scholes delta hedged portfolio P1 # "1S; for P1; then
the binomial tree for its value is
#69"1
%
P1 # 66"1
&
#63"1
For a risk-free portfolio, we choose "1 s.t. #69"1 = #63"1; i.e. "1 = 0:
Then in the absence of arbitrage it must earn at the risk-free interest-rate and
P1 # 66"1 = e#0:04"(3=12) (#69"1) ! P1 = 0:
If we set up a Black-Scholes delta hedged portfolio P2 # "2S; for P2; then
the binomial tree for its value is
#63"2
%
P2 # 60"2
&
4 # 57"2

15
For a risk-free portfolio, we choose "2 s.t. #63"2 = 4 # 57"2; i.e. "2 =
#2=3: Then in the absence of arbitrage it must earn at the risk-free interest-
rate and

P2 # 60"2 = e#0:04"(3=12) (4 # 57"2) ! P2 = 1:58:


We can now set up a Black-Scholes hedged portfolio, P # "S; for P: The
binomial tree for its value is

P1 # 66"
%
P # 63"
&
P2 # 60"
For a risk-free portfolio, we choose " s.t.

=
P1 # P2 #P2
P1 # 66" = P2 # 60" ! " =
6 6
= #0:263:

16
Then in an arbitrage free market, the portfolio earns at the risk-free rate

P # 63" = e#0:04"(3=12) (#66")


P = " (63 # 65:34) = #0:263 " #2:34
= 0:6154
Hence the value of the put option is £0.62.

17
The one period model - Replication

Another way of looking at the Binomial model is in terms of replication: we


can replicate the option using only cash (or bonds) and the asset. That is,
mathematically, simply a rearrangement of the earlier equations. It is, never-
theless a very important interpretation.
In one time step:

1. The asset moves from S0 = s to S1 = su or S1 = sd:

2. An option X pays o§ xu if the asset price is su and xd if the price is sd:

18
Stock su Option: xu
% %
s V
& &
sd xd
t=0 t=1 t=0 t=1

3. There is a bond market in which a pound invested today is continuously


compounded at a constant (risk-free) rate r and becomes er ; one time-
step later. The dynamics of the risk-free asset Bt satisÖes

dBt = rBtdt; B0 = 1:
Integrating over [t; T ] ; where t = 0; T = 1 gives B1 = er :

Now consider a portfolio of bonds and 7 assets which at time t = 0; will

19
have an initial value of
! = 7s +
Now with this money we can buy or sell bonds or stocks in order to obtain
a new portfolio at time-step 1: At this new time-step there exist two possible
outcomes

!+ = 7su + er
!# = 7sd + er

In order to replicate the option insist that

! + = xu ; ! # = xd
Can we construct a hedging strategy which will guarantee to pay o§ the option,
whatever happens to the asset price?

20
The Hedging Strategy

We arrange the portfolio so that its value is exactly that of the required option
pay-out at the terminal time regardless of whether the stock moves up or down.
This is because having two unknowns 7; ; the amount of stock and bond,
and we wish to match the two possible terminal values, xu; xd; the option
payo§s. Thus we need to have

xu = 7su + er ;
xd = 7sd + er :
Subtracting the two expressions and rearranging gives

7= :
x u # xd
su # sd
Then substituting for 7 in either equation yields
x s u # xu s d
= e#r d
su # sd

21
This is a hedging strategy.

At time step 1; the value of the portfolio is


xu if S1 = s u
X=
xd if S1 = s d
( )

This is the option payo§. Thus, given V = 7s + we can construct the


above portfolio which has the same payo§ as the option. Hence the price for
the option must be V: Any other price would allow arbitrage as you could
play this hedging strategy, either buying or selling the option, and make a
guaranteed proÖt.

Thus the fair, arbitrage-free price for the option is given by


V = (7s + )
=
xu # xd x s u # xu s d
s + e#r d
su # sd su # sd
r
e s # sd r
su # e s
= e#r xu + xd :
!

su # sd su # sd

22
DeÖne

q= ;
er s # sd
su # sd
then we conclude that

V = e#r (qxu + (1 # q ) xd)


where
0 < q < 1:
We can think of q as a probability induced by insistence on no-arbitrage, i.e. the
so-called risk-neutral probability. It has nothing to do with the real probabilities
of su and sd occurring; these are p and 1 # p; in turn.

The option price can be viewed as the discounted expected value of the option
pay-o§ X with respect to the probabilities q;

V (1 # q ) xd)
= Eq e#r X :
= e#rh (qxu +
i

23
The fact that the risk neutral/fair value (or q#value) of a call is less than the
expected value of the call (under the real probability p), is not a puzzle.

Pricing a call using the real probability, p, you will probably make a proÖt, but
you might also might make a loss. Pricing an option using the risk-neutral
probability, q , you will certainly make neither a proÖt nor a loss.

24
Example: A stock is currently trading at 100: In one year it will have risen
to 103 or fallen to 98. If interest rates are zero, use a replicating strategy to
price a one year call option with strike K = 100:

Asset:
103 S (1) > 100
% Payo§ = 3
S (0) = 100
&
98 S (1) < 100
Payo§ = 0
Option:
V1 = 3
%
V0
&
V2 = 0

25
7 stocks and units of bonds.
1037 + = 3
987 + = 0
! 7 = 3=5; = #294=5
)

300 294
) V0 = S (0) " 7 + "1= = 1:2
5
#
5

q (up) = ; q (down) =
erts # sd su # erts
su # sd su # sd
where r = 0:

! 1 100 103
2
=
100 # 98
q (! 1) =
103 # 98 5
! 2 100 98
3
=
103 # 100
q (! 2 ) =
103 # 98 5

26
So the risk neutral probabilities are
2 3
;
5 5
) *

So the expected value (under the risk-neutral probabilities/measure) is


Q
E e #r(T #t) X
h i

where r = 0; t = 0; T = 1;

EQ [X ] = q (! i ) X (! i )
!
X

2 3
=
5
" 3 + " 0 = 1:2
5

27
Using Sample Paths

A binary option (also called a digital option) pays one dollar at time t = T if
the asset price is above a Öxed strike level K and is worthless otherwise.

Consider the following model with K = 5; r = 0 :


! S (0) S (1) S (2)
!1 4 7 11
!2 4 7 6
!3 4 3 6
!4 4 3 1

! S (0) S (1) S (2)


!1 s u u
!2 s u d
!3 s d u
!4 s d d

28
Asset:
11 S (2) > K Payo§ = 1
%
7
% &
S (0) = 4 6 S (2) > K Payo§ = 1
& %
3
&
1 S (2) < K Payo§ = 0

29
Option:
1
%
V1
% &
V0 1
& %
V2
&
0
Replicate backwards over each time period ísub-modelí:

Stock 11 Option: 1
% %
7 V1
& &
6 1

30
Replicate with 7 units of stock and units of bonds/riskless asset: V =
7S + ert
117 + = 1
=1
67 + = 1
! 7 = 0;
)

) V1 = S (1) " 7 + "1=7"0+1"1=1

Stock 6 Option: 1
% %
3 V2
& &
1 0
Replicate with 7 units of stock and units of bonds/riskless asset: V =
7S + ert
67 + = 1
7+ =0
! 7 = 15 ; = # 15
)

) V2 = S (1) " 7 + " 1 = 3 " 15 # 15 " 1 = 25 :

31
Stock 7 Option: 1
% %
4 V0
& &
3 0:4
Replicate with 7 units of stock and units of bonds/riskless asset: V =
7S + ert
77 + = 1
37 + = 0:4
! 7 = 0:15; = #0:05
)

) V0 = S (0) " 7 + " 1 = 4 " 0:15 # 0:05 " 1 = 0:55:


So the binary call option struck at 5 is valued at 0.55

Now calculate the risk-neutral probabilities and use these to validate the option
price calculated above.

32
q (up) = ; q (down) =
erts # sd su # erts
su # sd su # sd
where r = 0:

! 1 4 7 11
1
=
4#3 7#6
q (! 1) = "
7 # 3 11 # 6 20
!2 4 7 6
1
=
4 # 3 11 # 7
q (! 2 ) = "
7 # 3 11 # 6 5
!3 4 3 6
3
=
7#4 3#1
q (! 3 ) = "
7#3 6#1 10

33
!4 4 3 1
9
=
7#4 6#3
q (! 4 ) = "
7#3 6#1 20
So the expected value (under the risk-neutral probabilities/measure) is
Q
E e #r(T #t) X
h i

where r = 0; t = 0; T = 1;

EQ [X ] = q (! i ) X (! i )
!
X

1 1 3 9
=
20
"1+ "1+
5 10
"1+
20
"0
= 0:55
hence veriÖed.

34
Binomial Model II

Assume an asset which has value S and during a time step <t can either rise
to uS or fall to vS with 0 < v < 1 < u: So as earlier probabilities of a rise
and fall in turn are p and 1 # p:
uS
%
S
&
vS
<t
| {z }

V +"uS
%
V # "S
&
V #"vS
<t
| {z }

35
Also set uv = 1 so that after an up and down move, the asset returns to S:

To implement the Binomial model we need a model for asset price evolution
p
to predict future possible spot prices. So use <S = >S<t + ?S7 <t: The
3 constants u; v; p are chosen to give the binomial model the same drift and
di§usion as the SDE. For the correct drift, choose

pu + (1 # p) v = e><t (a)
and for the correct standard deviation set

2
pu2 + (1 # p) v 2 = e(2>+? )<t (b)

u (a) + v (a) gives

36
(u + v ) e><t = pu2 + uv # puv + pvu + v 2 # pv 2:
Rearrange to get

(u + v ) e><t = pu2 + + (1 # p) v 2 + uv
2
and we know from (b) that pu2 + (1 # p) v 2 = e(2>+? )<t and uv = 1:
Hence we have

(u + v ) e><t= e( 2>+? 2 )<t


+1)
2
(u + v ) = e#><t + e(>+? )<t:
Now recall that the quadratic equation ax2 + bx + c = 0 with roots C and
D has
b c
a a
C + D = # ; CD = :

37
We have
2 b
a
(u + v ) = e#><t + e(>+? )<t + #
c
a
uv = 1 +
hence u and v satisfy
(x # u) (x # v ) = 0
to give the quadratic
x2 # (u + v ) x + uv = 0 )

(u + v ) & (u + v )2 # 4uv
x=
q

2
so with u > 1

( >+? 2 ) <t 1 >+?


u= e
1 #><t
+e + e#><t +e( 2 )<t 2
2 2
#4
) * r
$ %

38
In this model, the hedging argument gives

V + # "uS = V # # "vS

which leads to " = : Because all other terms are known choose "
V+#V#
(u # v ) S
to eliminate risk.

We know tomorrowís option value therefore price today is tomorrowís value


discounted for interest rates
1 +
V # "S =
1 + r<t
V # "uS
$ %

so (1 + r<t) (V # "S ) = V + # "uS and replace using the deÖnition of "


above

(1 + r<t) V = V +
#v + 1 + r<t u # 1 # r<t
+V#
! !

(u # v ) (u # v )

39
where the risk-neutral probabilities are

q =
#v + 1 + r<t
(u # v )
:
u # 1 # r<t
1#q =
(u # v )
So (1 + r<t) V = V +q + V # (1 # q ) :

Finally we have

V = +
V+#V# uV # # vV +
(u # v ) (1 + r<t) (u # v )
With continuous compounding we have

q =
er<t # v
(u # v )
u # er<t
1#q =
(u # v )

40
The Continuous Time Limit

Performing a Taylor expansion around <t = 0 we have

u , 2
2
(1 # ><t + - - - ) + 1 + > + ? <t + - - - +
1$ $ $ % %%

2 2 2
e
1 #2><t
2
+ 2e? <t + e2(>+? )<t # 4
) *1

1 2 2 2
= 1 + ? <t + - - - + 1 # 2><t + 2 + 2? <t + 1 + 2><t + 2? <t # 4 + - - -
2 2
) *
1$ %

1 2
= 1 + ? <t + - - - +
2 2
4? <t + - - - 2
) *
1$ 2 %1

3
Ignoring the terms of order <t 2 and higher we get the result
1 1 2
= 1+ ?<t 2 + ? <t + - - -
2
) *

41
Since uv = 1 this implies that v = u#1. Using the expansion for u obtained
earlier we have

1 1 2
v = 1+ ?<t 2 + ? <t + - - -
2
) *#1

1 1 1
= 1+ ?<t 2 1 + ?<t 2 - - -
2
) ) * *#1

1 1 1 1 1 1
= 1# ?<t 2 1+ ?<t 2 + ?<t 2 1+ ?<t 2
2 2
+ ---
) * ) *2 !!

1 1
= 1 # ?<t 2 # ? 2<t + ? 2<t + - - -
2
1 1
= 1 # ?<t 2 + ? 2<t
2

42
So we have
1p
u , 1 + ? <t + ? 2<t
2
p 1
v , 1 # ? <t + ? 2<t
2
So to summarise we can write
p
u = ?
e p <t

v = e#? <t
q =
er<t # v
(u # v )
and use these to build the asset price tree using u and v; and then value the
option backwards from T using
er<tV (S; t) = qV (uS; t + <t) + (1 # q ) V (vS; t + <t)
and at each stage the hedge ratio " is obtained using

"= =
V+#V# V (uS; t + <t) # V (vS; t + <t)
(u # v ) S (u # v ) S

43
Now expand
@V p @V 1 2 2 @ 2V
V+ + ? <tS + 2 ? <tS ;
@t @S @S 2
= V (uS; t + <t) , V + <t
@V p @V 1 2 2 @ 2V
V # + 2 ? <tS :
@t @S @S 2
= V (vS; t + <t) , V + <t # ? <tS

Note that
p
2? <tS @V @V
"=
V+#V#
p @S =
@S
,
(u # v ) S 2? <tS
Then

V = +
V+#V# uV # # vV +
(u # v ) (1 + r<t) (u # v )
p
2? <tS @V 1 + ? <t V # 1 # ? <t V
= +
$ p % # $ p % +
p p
2? <t @S (1 + r<t) 2? <t

44
Rearranging to give

+ +
p p
(1 + r<t) 2? <tV = 2? <tS (1 + r<t) ;
@S
+ V # V +? <t V + V
@V $ # % p $ # %

and so
p p @V p @V
(1 + r<t) 2? <tV = 2? <tS (1 + r<t) +
@S
# 2? <tS
p 1 2 2 @ 2V @V
2? <t V + 2 ? <tS 2
+ <t ;
@S @t
@S!

@V @V @ 2V @V
(1 + r<t) V = S (1 + r<t) + V + 12 ? 2<tS 2 2 + <t ;
@S @S @S @t
#S
!

divide through by <t and allow <t #! 0


@V 1 2 2 @ 2V @V
rV = rS + 2? S +
@S @S 2 @t
and hence the Black-Scholes Equation.

45
Finite Di§erence Methods

Model Problem
Consider the following Black-Scholes pricing problem for the value of a Euro-
pean Call Option V = V (S; t) :
@V 1 2 2 @ 2V @V
+ & S 2
+ ( r D ) S
@t 2 @S @S
! ! rV = 0

V (0; t) = 0

S!1
lim V (S; t) ! S
V (S; T ) = max (S ! E; 0) ;
S 2 [0; 1) ; t 2 [0; T ]

46
The problem is to be solved over the following region:

S
Boundary
Condition

Final
Condition

t
Boundary
Condition

This is to be solved by a Finite Di§erence (FD) Scheme.

By expressing S = n,S and t = m,t; we will obtain a di§erence equation


for the Black-Scholes equation.

47
V (S; t) = V (n,S; m,t) = Vnm: ,S = S %=N where S % & E is a suitably
large value of S ; ,t = T =M:

Take N and M steps for S and t respectively, so

S = n,S 0'n'N
t = m,t 0 ' m ' M:

48
Taylor Series Approximations

We begin with the Taylor-series approximations for the 1st and 2nd order
derivatives:

If V = V (S; t) and S & t both change by an amount ,S and ,t in


turn, so that S ! S + ,S and t ! t + ,t then the change in V can be
obtained using a two-dimensional Taylor expansion
V (S + ,S; t + ,t) =

@V @V 1 @ 2V 2
V (S; t) + ,S + ,t + ,S
@S @t 2 @S 2
1 @ 2V 2 @ 2V 3 3
+ 2
,t + ,S,t + O ,S ; ,t
2 @t @S@t
! "

Consider
@V 2
V (S; t + ,t) = V (S; t) + ,t + O ,t
@t
! "

49
and rearranging gives a forward di§erence
@V
= + O (,t) :
V (S; t + ,t) ! V (S; t)
@t ,t
Let us use a backward time di§erence
@V
= + O (,t) ;
V (S; t) ! V (S; t ! ,t)
@t ,t
which becomes, in Önite di§erence form
@V
:
Vnm ! Vnm!1
@t ,t
(n,S; m,t) (
We now derive approximations for derivative terms involving S: Start by
considering V at S + ,S and S ! ,S
@V 1 @ 2V 2 3
V (S + ,S; t) = V (S; t) + ,S + ,S + O ,S (1)
@S 2 @S 2
! "

@V 1 @ 2V 2 3
,S + (2)
@S
V (S ! ,S; t) = V (S; t) !
2 @S 2
,S ! O ,S
! "

50
(1) ! (2) gives
@V 3
,S + O ,S
@S
V (S + ,S; t) ! V (S ! ,S; t) = 2
! "

which upon rearranging and using Önite di§erence notation yields


@V Vn+1
m !Vm
n!1 2
(n,S; m,t) = + O ,S
@S 2,S
! "

and hence giving us a scheme for the Örst derivative @V


@S :

(1) + (2) gives


@ 2 V ,S 2 + O ,S 4
@S 2
V (S + ,S; t) + V (S ! ,S; t) = 2V (S; t) +
! "

and hence
@ 2V V (S+,S; t)!2V (S;t)+V (S!,S; t) 2
= ,S 2
+ O ,S
@S 2
! "

51
and hence a Önite di§erence approximation for the second derivative
@ 2V Vn!1 n n+1
m ! 2V m + V m
2
(n,S; m,t) = + O ,S
@S 2 ,S 2
! "

@V @V Vn+1 n!1
m !V m
; ; (3)
Vnm !Vnm!1
@t ( ,t @S ( 2,S
@ 2V Vn!1 n n+1
m !2V m +V m

@S 2
( ,S 2

Substituting (3) in the BSE gives


Vnm !Vnm!1 1 2 2 m m m
,t + 2 n & Vn!1 ! 2Vn + Vn+1 +
m
! "

2 n+1
1 (r ! D ) n V m ! V m
n!1 ! rVn
! "

= 0

52
and rearrange to obtain a backward marching scheme in time
m!1
Vn m m
= Vn + ,t n & Vn!1 ! 2Vn + Vn+1m
2
# $
1 2 2! m "

1 m
+,t m !Vm
(r ! D) n Vn+1 n!1 ! rVn
# ! " $

m m
) F Vn!1; Vn ; Vn+1m
! 2 "

Now for the RHS collect coe¢cients of each variable term V; to get
m +5 Vm+6 Vm (4)
Vnm!1 = 4nVn!1 n n n n+1
where

4n = n & ! n (r ! D) ,t; (5)


1! 2 2 "

2 2
5 n = 1 ! r + n & ,t;
2 ! "

6n =
2
n & + n (r ! D) ,t
1! 2 2 "

53
(4) is a linear di§erence equation. We will use this to march backwards in
time, i.e. given a solution at time step m we can use (4) to approximate
a solution at the next time step (m ! 1) :The di§erence equation (4) is not
valid at the boundaries.

Boundary conditions:

At S = 0; i.e. n = 0, the BSE becomes


@V
@t
= rV )
V0m!1 = (1 ! r,t) V0m
This also follows from
40 = 0 = 6 0 ; 5 0 = 1 ! r,t:

As S becomes very large, i.e. S ! 1 i.e. S %; the probability of it becoming


lower than the Exercise becomes negligible, therefore 3 = 3 (t) only, hence
4 ! 0:

54
The problem arises at n = N: We cannot use our di§erence equation at the
boundary, as we end up with a term VNm+1, which is not deÖned. So we use
the gamma condition mentioned above.

Vn!1 n n+1
m ! 2V m + V m
= 0; which upon rearranging gives at
,S 2
We know 4 (
n=N
VNm+1 = 2VNm ! VNm!1
and substituting in the di§erence equation gives

VNm!1 = (4N ! 6 N ) VNm!1 + (5 N + 26 N ) VNm:

55
In summary, the scheme is
Vnm!1 = m
4nVn!1 + 5 nVnm m
+ 6 nVn+1
D.E
)

M > m + 1; 1'n'N !1

VnM
Final Payo§ Condition
= max (n,S ! E; 0)
)

0 ' n ' N;

=
V0m!1 5 0V0m
BC at (S = 0)
)

M +m+1

VNm!1 = + (5 N + 26 N ) VNm
BC at S %
(4N ! 6 N ) VNm!1
S = N ,S
)

M + m + 1;

56
Fourier Stability (Von Neumannís) Method

A method is called step-wise unstable if for a Öxed grid (i.e. ,t; ,S constant)
there exists an initial perturbation which "blows up" as t ! 1; i.e. as we
march in time. Here in a backward marching scheme we have t ! 0 (m ! 0) :
The question we wish to answer is "do small errors propagate along the grid
and grow exponentially?". We hope not!

Assume an initial disturbance which is proportional to exp (in! ) : We therefore


study the propagation of perturbations created at any given point in time.

If Vbnm is an approximation to the exact solution Vnm then

where Enm is the associated error. Then Enm also satisÖes the di§erence
Vbnm = Vnm + Enm

equation (4) to give


m + 5 Em + 6 Em :
Enm!1 = 4nEn!1 n n n n+1

57
Put
Enm = am exp (in! ) (6)
which is oscillatory of amplitude a and frequency !: Substituting (6) into
(4) gives
am!1e(in!) = 4namei(n!1)! + 5 namein! + 6 namei(n+1)!
which becomes
a!1 = 4ne!i! + 5 n + 6 nei! :

Now stability criteria arises from the balancing of the time dependency and
di§usion terms, so that
@V 1 2 2 @ 2V
+ & S 2
=0
@t 2 @S
From (5) we take the following contributions
1 1
4n = n2& 2,t; 5 n = 1 ! n2& 2,t; 6 n = n2& 2,t
2 2

58
a!1 = n & ,t e + e !i!
2
+ 1 ! n2& 2,t
1 2 2 ! i! "

= n2& 2,t (cos ! ! 1) + 1:


we have
!
a!1 = 1 ! 2n2& 2 sin2 ,t
2
For stability must be bounded, i.e.
a!1
backward marching scheme), i.e.
' '
' !1'
'a ' ' 1 () jaj + 1 (as it is a

!
2
' '
' '

which upon simplifying we Önd is


'1 ! 2n2& 2 sin2 ,t' ' 1
' '

1
(7)
& N
,t ' 2 2

so ,t ( O N !2 :
! "

The beauty of the explicit method lies in its simplicity, both in numerical and
computational terms.

59
However, the main disadvantage is associated with the stability criteria, given
by (7) :

This condition puts severe constraints on the viability of the method. If it is


not satisÖed, we will observe exponentially growing oscillations in our numerical
solution as we iterate backwards in time.

1
Given that ,t = O 2
; we see that the accuracy can be improved by
N
# $

increasing the number of asset steps N: However doubling N requires the


use of four times as many time-steps, to satisfy the stability condition.

60
Variable Parameters
There are a number of parameters in the BSE, which need not be constant.
FDM can easily handle problems involving non-constant parameters. Suppose
the volatility, dividend yield and interest rates are functions of asset price and
time, such that the pricing equation becomes

@V 2
@t @S = r (t) V:
+ 12 & (S; t)2 S 2 @@SV2 + (r (t) ! D (S; t)) S @V

The explicit FD scheme now becomes


Vnm!1 = 4m m m m m m
n Vn!1 + 5 n Vn + 6 n Vn+1
where
4n = m
(& n ) n ! (rn ! Dn ) n ,t;
1! m 2 2 "

m 2 2
5 n = 1 ! rn + (& n ) n ,t;
2 ! "

6n = m
2
(& n ) n + (rn ! Dn ) n ,t
1! m 2 2 "

61
Early Exercise Feature - American Options

If we can exercise an option during some time interval, before its expiry date,
then the no-arbitrage argument tells us that the value of the option V can
not be less than the payo§ P (S; t) during that time period, so

V + P (S; t) :

In the explicit scheme, the early exercise constraint can be implemented in a


most trivial manner. Consider the time interval T in which the option may
be exercised. As we step backwards in time, the option value is computed. If
this price is less than the payo§ during T; it is set equal to the payo§. So
at each time step, we solve the explicit scheme to obtain the option price V :
Then check the condition V < P (S; t)? If this is true then the option price
V = P (S; t), else V = U:

62
This strategy of checking the early exercise constraint is called the cuto§
method. Thus the explicit FDM can be expressed in compact form as

m +5 Vm+6 Vm
Unm!1 = 4nVn!1 n n n n+1
Unm!1
=
if Unm!1 + Pnm!1
Vnm!1
(

Pnm!1 if Unm!1 < Pnm!1


where Pnm is the FDA for the payo§ at (S; t) ; i.e. Pnm =Payo§(n,S; m,t)
as opposed to simply PnM at time t = T: So we have a time dependent payo§
function, deÖned (at each time step) for the life of the option at the time the
contract is written.

63
Implicit Finite Di§erence Approximations

We now introduce the Implicit Finite Di§erence (FD) Scheme.

By using the same notation as in the explicit case we will obtain an implicit
di§erence method for the Black-Scholes equation.

64
We begin with the Taylor-series approximations for the 1st and 2nd order deriv-
atives, where V (S; t) = V (n,S; m,t) = Vnm :
@V
+ O (,t) ;
Vnm ! Vnm!1
@t ,t
(
m!1 m!1
@V Vn+1 ! Vn!1 2
+ O ,S ;
@S
(
2,S
! "

m!1 m!1
@ 2V Vn!1 ! 2Vnm!1 + Vn+1 2
2 2
+ O ,S
@S ,S
(
! "

Substituting in the BSE gives and rearranging to obtain another backward


marching scheme in time gives the linear system
m!1 m!1
anVn!1 + bnVnm!1 + cnVn+1 = Vnm (8)
where
2 2
an = ! & n ! n (r ! D) ,t; bn = 1 + & n + r ,t;
2
1! 2 2 " ! "

cn = ! & n + n (r ! D) ,t (9)
2
1! 2 2 "

65
This expression is accurate to 2
O ,S ; ,t :
! "

The chief attraction of this method lies in its instability - it is stable for all
values of ,t and we call this scheme unconditionally stable.

As we know Vnm before Vnm!1; the system is implicit for the Vnm!1 term.

66
Boundary conditions:

At S = 0; i.e. n = 0, the BSE becomes

(1 + r,t) V0m!1 = V0m

The problem again arises at n = N (S ! 1) : We cannot use our di§erence


equation at the boundary, as we end up with a term VNm!1
+1 , which is not
deÖned. So we use the gamma condition mentioned above (4 ! 0).

As before we know
m!1 m!1
Vn!1 ! 2Vnm!1 + Vn+1
= 0:
,S 2
4(

Upon rearranging gives at n = N


m!1 m!1
VNm!1
+1 = 2 VN ! VN !1

67
and substituting in the di§erence equation gives

m!1 m!1
a !1 + bN VN = VNm!1;
where
b N VN b

a bN = 1 ! (N (r ! D) ! r) ,t;
In summary, the scheme is:
b N = N (r ! D ) ,t; b

m!1 m!1
anVn!1 + bnVnm!1 =
+ cnVn+1 Vnm
D.E
)

M + m + 1; 1'n'N !1
VnM
Final Payo§ Condition
= max (n,S ! E; 0)
)

0 ' n ' N;
=
(1 + r,t) V0m!1 V0m
Boundary condition at (S = 0)
)

M +m+1
m!1
a !1 Boundary condition at S %
S = N ,S
)
+ bbN VNm!1 = VNm
M + m + 1;
b N VN

68
We can write the problem as a system of linear equations, called a linear system,

a1V0m!1 + b1V1m!1 + c1V2m!1 = V1m


a2V1m!1 + b2V2m!1 + c2V3m!1 = V2m
...
...
m!1 m!1 m
aN !1VNm!1
!2 + bN !1 VN !1 + c N !1 VN = VN !1

b0 c0 ... ... ... 0 V0m!1


.. V0m
a1 b1 c1 0 . V1m!1 V1m
..
0

0 a2 b2 c2 . V2m
10 1

V2m!1
0 1

.. ... ... ... .. ..


. 0 . .
m
B

m!1
CB

..
.
B C B C

VN !1
CB

aN !1 bN !1 cN !1 VN !1
B C B C

VNm
CB

0 0 aN VNm!1
B CB C=B C

... ...
B C@ C @
A A
@ A
b bbN

69
So we are solving
AV m!1 = V m;
at each time step for the unknown vector V m!1: We note that the matrix A
is extremely sparse. A matrix consisting of a main diagonal together with one
above (super-diagonal) and one below (sub-diagonal) is called a tri-diagonal
matrix.

This linear system can now be solved directly or iteratively using e.g. the
Gauss-Seidel Method.

70
Note on Forward Marching

Recall in the Black-Scholes equation the transformation B = T ! t gives the


option value as a function of time to expiry. Write the time variable as

t = T ! m,t;
so that m = 0 represents t = T and m = M gives t = 0:The increasing m
from 0 to M gives a forward marching scheme
m+1 m+1
anVn!1 + bnVnm+1 + cnVn+1 = Vnm
with an; bn; cn given by (4) :

71
Stability

Suppose that the payo§ contains small errors. These will propagate as we
march backwards in time. As with the explicit scheme write

Vbnm = Vn m + Enm
where Enm is the associated error. Then Enm also satisÖes the di§erence
equation (8) to give
m!1 m!1
anEn!1 + bnEnm!1 + cnEn+1 = Enm: (10)
By general Fourier analysis we consider harmonic perturbations of the form

Enm = am exp (in! ) : (11)


So oscillatory of amplitude a and frequency !: Substituting (11) into (10)
gives

anam!1ei(n!1)! + bnam!1ein! + cnam!1ei(n+1)! = ame(in!)

72
which on simpliÖcation becomes

ane!i! + bn + cnei! = a:

Now stability criteria arises from the balancing of the time dependency and
di§usion terms, so that
@V 1 2 2 @ 2V
+ & S =0
@t 2 @S 2
From (9) we take the following contributions
1 1
an = ! n2& 2,t; bn = 1 + n2& 2,t; cn = ! n2& 2,t
2 2

a = 1 + n2& 2,t ! n & ,t e + e!i!


2
1 2 2 ! i! "

=2 cos !
| {z }

= 1 + n2& 2 (1 ! cos ! ) ,t:

73
Using the trigonometric identity cos 2x = 1 ! 2 sin2 x; we have
!
a = 1 + 2n2& 2 sin2 ,t
2
In order that errors do not grow as we step backwards in time, we require
jaj + 1,
!
' '
' '

which upon simplifying we Önd is valid for


'1 + 2n2& 2 sin2 ,t' + 1
'
2 '

,t > 0;
so stability is guaranteed for all values of ,t and the disturbances will die out
as we time-step back from expiry.

74
The Crank-Nicolson Scheme

The fully implicit method has the same order of accuracy (in time and asset
price) as the explicit scheme but is unconditionally stable , i.e. 8 ,t > 0:

The Crank-Nicolson method whilst being unconditionally stable has the addi-
tional advantage that it is also second order accurate in time.

75
Consider satisÖed at the midpoint
n,S; m ! 12 ,t and replace VS and VSS by means of a FD approxi-
! ! a PDE" being
"

mation at the mth and (m + 1)th time steps, i.e.

2 2
1 (m + (m ! 1)) ! m ! 1 :
! "

The method is regarded as an equally weighted average of the explicit and


implicit schemes with advantage over both individual cases due to accuracy
being O ,t2 :
! "

We can then write the FD approximations as


1 ,t Vnm !Vnm!1
@t 2 ,t
@V n,S; m ! (
! ! " "

1 ,t 1 @V (n,S; m,t) +
@S 2 2 @S
@V n,S; m ! (
! ! " "

2 @S
1 @V (n,S; (m ! 1) ,t)

@ 2V 1 1 @ 2 V (n,S; m,t) +
@S 2 2 @S 2
n,S; m ! 2 ,t (
! ! " "

2 @S 2
1 @ 2 V (n,S; (m ! 1) ,t)

76
and substitute into the BSE as earlier - keeping note of the fact that we are
stepping backwards in time. The resulting di§erence equation is
m!1 m!1 m +B Vm+C Vm
anVn!1 + bnVnm!1 + cnVn+1 = AnVn!1 n n n n+1
where
an = ! & n ! n (r ! D) ,t
4
1! 2 2 "

bn = 1+ & n + r ,t
2
1! 2 2 "

cn = ! & n + n (r ! D) ,t:
4
1! 2 2 "

1 2 2
An =
4
& n ! n (r ! D) ,t
! "

Bn = 1! & n + r ,t
2
1! 2 2 "

Cn =
4
& n + n (r ! D) ,t:
1! 2 2 "

and the matrix inversion problem we solve is


AV m!1 = BV m:

77
The F!Method

While the attraction of the fully implicit scheme lies in its unconditionally
stability, it is only Örst order accurate in time. The CrankñNicolson scheme is
an equally weighted average of both implicit and explicit methods and enjoys
second order accuracy in time. Now we construct a generalisation of the Crank-
Nicolson to obtain a weighted average of the two schemes with a weighted
parameter F such that F 2 [0; 1]. On a simple heat equation it would be
m+1 m+1
Vn+1 !2Vnm+1 +Vn!1
= F
Vnm+1 !Vnm
,t ,S 2
!

Vn+1 n n!1
m !2V m +V m
+(1 ! F) ,S 2 ;
# $

i.e. F0Implicit + (1 ! F) 0Explicit.

For the BSE we have


m!1 m!1 m +B Vm+C Vm
anVn!1 + bnVnm!1 + cnVn+1 = AnVn!1 n n n n+1

78
where

an = ! F & n ! n (r ! D) ,t
1 ! 2 2 "

bn = 2 2
1 + # & n + r ,t
2 ! "

cn = ! F & n + n (r ! D) ,t:
2
1 ! 2 2 "

1 2 2
An =
2
(1 ! F) & n ! n (r ! D) ,t
! "

Bn = 2 2
1 ! (1 ! F) & n + r ,t
! "

1 2 2
Cn =
2
(1 ! F) & n + n (r ! D) ,t:
! "

When F = 0; 12 and 1 the F method becomes the Explicit, Crank Nicolson and
Fully Implicit scheme, in turn.

The F method is a generalisation of the Crank-Nicolson scheme.

79
For a general value of F the local truncation error is
1 1
O ,t + ,S 2 ! F,t; ,S 4; ,t2 :
2 12
# $

When F = 0, 1=2 or 1 we get the results we have seen so far.

But if
1 ,S 2
F= !
2 12,t
then the local truncation error is improved.

The implementation of the method is no harder than the CrankñNicolson


scheme.

80
Three time-level methods

Numerical schemes are to two time levels. So far


we have considered V m+1; V m or V m; V m!1 . We can construct many
! not restricted
" ! the use of just
"

algorithms using three or more time levels, i.e.

V m+1 = g V m!1; V m
! "

Again, we would do this if it gave us a better local truncation error or had better
convergence properties. We already know that the centred time di§erence
Vnm+1 ! Vnm!1
2,t
is unstable for all values of ,t: However the scheme

Vnm+1 ! Vnm!1
= Vn+1 n
0 1

2
! "

2,t ,S
!V
=!2Vn m
1 B m m+1 ! V m!1 + V m C
@ n!1 A
| {z n }

is stable for all ,t:

81
Solving the linear System

We need to solve
b0 c0 0 ... ... 0 V0m!1
.. V0m
a1 b1 c1 . V1m!1 V1m
.. ..
0

... ...
0 a2 . . V2m
10 1 0 1

.. ... ... ... .. .. (12)


. 0 . .
m
B

m!1
CB

..
.
B C B C

VN !1
CB

aN !1 bN !1 cN !1 VN !1
B C B C

VNm
CB

0 0 an VNm!1
B CB C=B C

... ...
B C@ C @
A A
@ A

which is written as
b bbn

MVm!1 = Vm
which in principle is
Vm!1 = M!1Vm
which presents us with a highly ine¢cient way of solving this linear system.

However we can exploit the structure of M given that it is a tridiagonal matrix.

82
1 LU Decomposition (factorisation) of M: Only advantageous if the matrix
is non-time dependent, i.e. one factor model.

1 Iterative schemes for solution. Under this heading we have Jacobi/Gauss-


Seidel, SOR. Although slower than LU decomposition, they are more e¢-
cient in terms of memory and programming.

83
The LU Decomposition
Consider the matrix inversion problem
M:y = p
It is often advantageous to think of Gaussian elimination as constructing a lower
tridiagonal matrix L and an upper triangular matrix U; so that LU = M: The
problem becomes
M:y = (LU) :y
= L (U:y) = p
We introduce an intermediate vector z = Uy so that
Lz = p; Uy = z:
1 0 ... ... ... 0 d0 u0 0 ... ... 0
.. ..
l1 1 0 . 0 d1 u1 .
... .. ..
0 l2 1 . 0 0 d2 u2 .
0 1 0 1

.. ... ... ... .. U .. ... ... ...


. . . 0
B C B C

.. ..
. 1 0 . 0
B C B C

lN !1 dN !1 uN !1
0 0 1 0 0 0
L=B C; =B C

... ... lN ... ... dN


B C B C
@ A @ A

84
It is trivial to solve
Lz = p
by forward substitution.
1 0 0 z0 p0
... ... ...
..
l1 1 0 . z1 p1
... .. .. p2
0 l2 1 . .
0 10 1 0 1

.. .. .. ..
.
... ... ...
. . .
B

..
CB C B C

. 1 0 zN !1 pN !1
B

lN !1 pN
CB C=B C

0 0 1 zN
B

lN
CB C B C

... ...
B C@ A @ A
@ A

85
Having obtained z we Önd y by solving Uy = z;
d0 u0 0 ... ... 0 y0 z0
..
0 d1 u1 . y1 z1
.. .. ..
0 0 d2 u2 . . .
0 1 0 1 0 1

.. ... ... ... .. ..


. 0 . .
B

..
CB C B C

. 0 yN !1 zN !1
B

dN !1 uN !1
CB C=B C

0 0 0 yN zN
B

dN
CB C B C

... ...
B C@ A @ A
@ A

This gives us the solution, y; of our original problem, My = p:

This method can be also extended to decompose non-sparse matrices, i.e.


methods.
l11 0 ... ... ... 0
..
l21 l22 0 .
.. ... ..
. l32 .
A = LU , thus opening 0
up a wider class of associated 1

= .. ... ... ... ..


. .
B C

..
. ln!1 ln!1;n!1 0
B C
B C0

ln1 ln2 ... ... ... lnn


B C
@ A

u11 u12 ... ... ... u1n


0 u22 u23 ... ... u2n
... ... ..
0 0 .
0 1

.. ... ... ... ..


. .
B C

..
. 0 un!1;n!1 un!1;n
B C

0 0 0 unn
B C

... ...
B C
@ A

86
If lii = 1 8 1 ' i ' n as mentioned in the earlier discussion, this ensures a
unique solution and is called Doolittleís method. Croutís method requires
uii = 1 8 1 ' i ' n:

87
Iterative Techniques
The linear system
Mv = w
can be written
anvn!1 + bnvn + cnvn+1 = wn:
Rearranging allows us to write as
1
vn = (wn ! anvn!1 ! cnvn+1) ;
bn
and forms the basis of an iterative scheme. If the initial guess to the solution
(0)

(k+1) 1 (k) k
= ;
is vbn ; then we have the following iterative scheme

bn
# $

for varying k: Some texts present the above as


vbn wn ! anvbn!1 ! cnvbn+1

1 wn
vn = (!anvn!1 ! cnvn+1) + :
bn bn

88
So the unknown vector approximation becomes

v
Recalling from linear algebra, a matrix M with entries Mij is strictly diagonally
b (k+1) = Tv
b (k) + c

dominant if
jMiij >
j6=i
X '' '
'
'Mij ' ;

So in this case
jbnj > janj + jcnj
and hence the scheme will converge to the solution of the original problem,
(k)
k!1
Suppose the matrix M can be written in the form
lim vbn = vn

M=L+D+U
where D is a matrix with the diagonal elements of M (zero everywhere else).

89
L is a strictly lower-triangular part of M:

U is strictly upper part of M

b0 c0 0 . . .
a1 b1 c1
0 1

0 a2 . . . . . .
B C

... ... ...


B C
B C=
@ A

M
| {z }

0 0 0 ... b0 0 0 ... 0 c0 0 . . .
0 1 0 0 c1
0 1 0 1 0 1

0 ... b2 . . . 0 ... ...


B a C B 0 b C B 0 C

... ... ... ... ... ... ... ... ...


B 1 0 C B C B C
B C+B C+B C
@ 0 a2 A @ 0 0 A @ 0 A

A B C
The scheme now becomes
| {z } | {z } | {z }

v
b (k+1) = B!1w ! B!1 (A + C) v
b (k):

90
B!1 (A + C) is another matrix which premultiplies the iteration vector, call
this IM; to write
v
b (k+1) = B!1w ! IMv
b (k)

Given an N 0 N matrix M the spectral radius T (M) is deÖned as

T (M) = max jUij i = 1; 2; ::::::; n


where U is the eigenvalue of M:

Note: If U = 4 + i5 then jUj = 42 + 5 2


q

Convergence of the Jacobi method is proved theoretically by showing that the


spectral radius of the iteration matrix IM <1:

91
The Gauss Seidel Method

We can now reÖne the Jacobi method very simply by using the most up-to-date

(k+1) 1 (k+1) k
vbk+1 available to us, by writing

= :
bn
# $

(k+1)
vbn wn ! anvbn!1 ! cnvbn+1

(k)
Note that at iteration step (k + 1), we are using the most recent vbn!1 ;

anteed if the coe¢cient matrix is strictly diagonally dominant. Write the above
instead of vbn!1 which is used in Jacobi. Again, iteration convergence is guar-

as
(k+1) (k+1) k

which as a matrix problem becomes


bnvbn + anvbn!1 = wn ! cnvbn+1

(A + B ) v
Write
b (k+1) = w ! Cv
b (k):

Q = (A + B) ; IM = Q!1C

92
so our iteration problem becomes

v
As before convergence of this GS method is proved theoretically by showing
b (k+1) = Q!1w ! IMv
b (k):

that the spectral radius of the iteration matrix IM <1; but we will not be
implementing in terms of the iteration matrix.

93
Successive-Over-Relaxation (SOR) Methods
A large part of numerical analysis is based upon the need to improve the ef-
Öciency and speed of existing techniques. Although we have seen from the
Gauss-Seidel method that it is superior to Jacobi in this regard, we can never-
theless continue to look for improvements in convergence speed. In this section
we will brieáy look at a method called successive-over-relaxation.

Let x
b 2 Rn be an approximation to the actual solution for Ax = b:

The residual vector r for x


b is

r = b ! Ax
In Jacobi/Gauss-Seidel methods a residual vector is associated with each cal-
b

culation of an approximation component to the solution vector.

Aim: Generate a sequence of approximations that cause the associated residual


vectors to converge rapidly to zero.

94
SOR can be applied to either the Jacobi or the Gauss-Seidel method.

(k) (k)
k!1
be speeded up. This is the essence of SOR. To see how this works, begin by
The sequence of approximate solutions vbn such that lim vbn !! vn; can

writing
(k+1) (k) (k+1) (k)
= + :
# $

(k+1) (k)
vbn vbn vbn ! vbn

which can be regarded as a correction


# $

(k)
Of interest is the term vbn ! vbn

Introduce ! to control the magnitude of this correction term


to be added to vbn in order for it to get closer to the exact solution vn:

(k+1) (k) (k+1) (k)


x :
# $

(k+1)
bn = vbn + ! vbn ! vbn

So with careful choice of ! we hope that x will be a better approximation


(k+1)
:
bn
to vn than vbn

95
SOR correction for Jacobi
(k) 1 (k) k
u =
bn
# $

(k+1) (k) (k) (k)


bn wn ! anvbn!1 ! cnvbn+1
# $

SOR correction for GS


vbn = vbn + ! J u
bn ! vbn

(k) 1 (k+1) k
u =
bn
# $

(k+1) (k) (k) (k)


bn wn ! anvbn!1 ! cnvbn+1
# $

For 0 < ! < 1; the procedures are called under-relaxation methods and used
vbn = vbn + ! GS u
bn ! vbn

for convergence of systems which do not converge by Jacobi or Gauss-Seidel.

For ! > 1; the procedures are called over-relaxation methods which are
used to accelerate convergence of systems which are convergent by Jacobi or
Gauss-Seidel.

96

Vous aimerez peut-être aussi