Professional Documents
Culture Documents
2
1
) ( ) (
x
x
dx x f x F ; (PT 2-10)
Trong ) (x f l hm mt xc sut ca x.
Hnh 2-2.Hm phn phi xc sut
T phng trnh trn ta c th thy:
1 ) ( ) ( = =
dx x f x F ; (PT 2-11)
1
C hai thut ng tng ng trong sch ting Anh biu th Hm phn phi xc sut l: Probability
Distribution Function (PDF) v Cumulative Distribution Function (CDF).
10
Mt s tnh cht ca hm mt xc sut
nh l 2-1: Hm mt xc sut ca tng hai bin ngu nhin
c lp s l tch chp ca hai hm mt xc sut thnh phn.
Tc l:
dy y x f y f x f
j i
X X X
) ( ) ( ) ( ; (PT 2-12)
Trong :
i
X v
j
X l hai bin ngu nhin,
j i
X X X + =
. Hm
) (x f
X
, ) (x f
i
X
v ) (x f
j
X
l cc hm mt xc sut tng ng.
Chng minh: (pending)
2.2.3. Hm tn sut v phn phi xc sut ca bin ngu nhin ri rc
Xt X l bin ngu nhin ri rc c tp cc gi tr ri rc
K
x x x ,..., ,
2 1
.
Hm tn sut (frequency function) ca bin ngu nhin ri rc
c xc nh bi:
K i x X P x
i i X
,..., 2 , 1 ) ( ) (
~
= = = ; (PT 2-13)
Xem xt s kin b X a < vi
1
x a < v
1 +
<
k k
x b x , chng ta c:
=
=
+ + + = <
=
0 ) (
) (
~
) (
~
) (
~
) (
~
) (
1
2 1
a X P
x
x x x b X a P
k
i
i X
k X X X
K
(PT 2-14)
Khi , hm phn phi xc sut ca ca bin ngu nhin ri rc c
xc nh:
<
<
=
+
=
K
k k
k
i
i X X
x x
x x x x
x x
x F
1
) (
~
0
) (
1
1
1
; (PT 2-15)
) (
~
) ( ) (
1 i X i X i X
x x F x F =
(PT 2-16)
Th d 2-5: Truyn bn tin s qua knh nhiu, xc sut li truyn mt
s l
5
2
) ( = E P ; xc sut truyn ng mt s l
5
3
) ( 1 ) ( = = E P C P
11
Xc sut truyn khng li:
125
27
5
3
) ( ) ( ) ( ) (
3
= |
.
|
\
|
= = C P C P C P CCC P
Xc sut truyn bn tin ba s, mt s b li:
125
54
5
3
5
2
3
2
= |
.
|
\
|
Xc sut truyn bn tin ba s, hai s b li:
125
36
5
3
5
2
3
2
= |
.
|
\
|
Xc sut truyn tt c ba s b li:
125
8
5
2
) ( ) ( ) ( ) (
3
= |
.
|
\
|
= = E P E P E P EEE P
Nu ta chn ) (S X l s li bn tin thu c th X l bin ngu nhin
ri rc vi K = 4 gi tr c th c l =
i
x 0, 1, 2, 3. T y ta s c
) (
~
i X
x cng vi ) (
i X
x F c th l ) 0 (
~
) 0 (
X X
F = ; ) 1 (
~
) 0 (
~
) 1 (
X X X
F + = ,
.v.v.
Bng 2-2: Kt qu Th d 2-5
i
x
) (
~
i X
x
) (
i X
x F
0
125
27
5
3
3
= |
.
|
\
|
125
27
1
125
54
5
3
5
2
3
2
= |
.
|
\
|
125
81
2
125
36
5
3
5
2
3
2
= |
.
|
\
|
125
117
3
125
8
5
2
3
= |
.
|
\
|
125
125
0 x
) (
~
i X
x
1 2 3
27/125
54/125
36/125
8/125
0
F
X
(x)
x
1
27/125
1 2 3
81/125
117/125
Hnh 2-3: Kt qu Th d 2-5
12
2.2.4. Cc tham s c trng ca bin ngu nhin
K vng ca bin ngu nhin (expectation)
nh ngha 2-7: K vng ca bin ngu nhin X k hiu l
X
m hoc | | X E c xc nh:
| |
+
= = dx x xf m X E
X X
) ( ; X lin tc (PT 2-17)
| |
= =
i
i X i X
x x m X E ) (
~
; X ri rc (PT 2-18)
Mt s tnh cht ca k vng
| | c c E = ; c l hng s
| | | | X E c X c E =
| | | | | | Y E b X E a Y b X a E + = +
| | | | | | Y E X E Y X E = nu X v Y c lp vi nhau
Th d 2-6: Tm k vng ca bin ngu nhin X khi bit:
>
<
=
4 1
4 2 ) 2 (
2 0
) (
2
x
x x a
x
x F
X
Gii: Do X lin tc, ) (x F
X
lin tc, nn ti x=4,
4
1
1 ) 2 4 (
2
= = a a .
T y ta xc nh c hm mt xc sut:
| |
| |
=
4 , 2 0
4 , 2 ) 2 (
2
1
) (
x
x x
x f
X
K vng ca bin ngu nhin X c xc nh:
| |
3
10
2 6
) 2 (
2
) (
4
2
2 3 4
2
=
(
= = =
+
x x
dx x
x
dx x xf X E
X
Th d 2-7: Tm k vng ca bin ngu nhin X khi bit bng phn
phi
x 0 1 2 3
) (
~
x
X
0,064 0,288 0,432 0,216
13
Gii:
| | 8 , 1 216 , 0 . 3 432 , 0 . 2 288 , 0 . 1 064 , 0 . 0 ) (
~
) (
~
3
0
= + + + = = =
= i
i X i
i
i X i
x x x x X E
Phng sai ca bin ngu nhin (variance)
nh ngha 2-8: Phng sai ca bin ngu nhin X k hiu l
2
X
hoc | | X VAR c xc nh:
| | ( ) | | ( )
+
= = = dx x f m X m X E X VAR
X X X X
) (
2 2 2
; (PT 2-19)
Nhn xt: ( )
X
m X l lch ca bin X so vi trung bnh ca n,
do vy phng sai chnh l trung bnh ca bnh phng lch .
Phng sai c trng cho phn tn ca bin ngu nhin xung
quanh gi tr k vng ca bin . Phng sai cng ln th bt nh
ca bin tng ng cng ln.
( ) | | | |
2 2 2 2
X X X
m X E m X E = = ; (PT 2-20)
Nu X l bin ri rc:
2
2 2
) (
~
) (
~
|
.
|
\
|
=
i
i X
i
i X i X
x x x x ; (PT 2-21)
Nu X l bin lin tc :
2
2 2
) ( ) (
|
|
.
|
\
|
=
+
+
dx x xf dx x f x
X X X
; (PT 2-22)
Th d 2-8: Tm phng sai ca bin ngu nhin X khi bit bng
phn phi:
x 0 1 2 3
) (
~
x
X
0,064 0,288 0,432 0,216
Gii:
2
X
| |
2 2
X
m X E =
Theo Th d 2-7,
X
m = 1,8
| | 96 , 3 216 , 0 . 3 432 , 0 . 2 288 , 0 . 1 064 , 0 . 0
2 2 2 2 2
= + + + = X E
| | 72 , 0 24 , 3 96 , 3
2 2 2
= = =
X X
m X E
Th d 2-9: Cho hm mt xc sut ca bin ngu nhin X tun
theo quy lut phn b hm s m:
14
> >
=
0 ; 0
0 0
) (
x e
x
x f
x X
Tnh phng sai ca X.
Gii:
| |
1 1
) (
2
0
= = = =
+
dx e x dx x xf X E
x
X
;
| |
= = =
0
2
2 2 2
2
. . ) (
dx e x dx x f x X E
x
X
| |
2
2 2 2
1
= =
X X
m X E
lch chun ca bin ngu nhin (standard deviation)
nh ngha 2-9: lch chun ca bin ngu nhin X, k hiu
l
X
c xc nh bi:
( ) | |
2 2
X X X
m X E = = ; (PT 2-23)
H s thay i ca bin ngu nhin
nh ngha 2-10: H s thay i ca bin ngu nhin X, k
hiu l
X
c c xc nh bi:
| | X E
c
X
X
= ; (PT 2-24)
2.3. Cc m hnh phn b xc sut c bn
2.3.1. Phn b Bernoulli (Bernoulli distribution)
nh ngha 2-11: Phn b Bernoulli l phn b ngu nhin ca
bin ri rc. Bin ngu nhin ny nhn hai gi tr l 1 vi xc sut
p v 0 vi xc sut (1-p).
Nh vy, gi tr k vng v phng sai ca phn b Bernoulli c
tnh nh sau:
p X E = ) ( ; (PT 2-25)
) 1 ( p p
X
= ; (PT 2-26)
15
2.3.2. Phn b nh thc (binomial distribution)
nh ngha 2-12: Mt bin ngu nhin X c phn b nh thc
bc n, nu n c nhng gi tr 0, 1, 2, , n vi xc sut:
k n k
q p
k
n
k X P
|
|
.
|
\
|
= = ) ( ; (PT 2-27)
Trong 1 0 < < p ; 1 = + q p v k = 0, 1, 2,, n v
)! ( !
!
k n k
n
k
n
=
|
|
.
|
\
|
Hm mt xc sut ca phn b nh thc c tnh nh sau:
) ( ) (
0
k x q p
k
n
x P
k n k
n
k
X
|
|
.
|
\
|
=
=
; (PT 2-28)
vi ) (x l hm xung n v (unit impulse function), hay cn gi l hm
Delta Dirac. Tng ng, chng ta c hm phn phi xc sut:
) ( ) (
0
k x u q p
k
n
x F
k n k
n
k
|
|
.
|
\
|
=
=
; (PT 2-29)
vi ) (x u l hm bc n v (unit step function). Hm bc n v
c nh ngha nh sau :
<
=
0 ; 1
0 ; 0
) (
x
x
x u ; (PT 2-30)
K vng, phng sai v h s thay i ca bin ngu nhin X tun
theo phn b nh thc c xc nh:
p n m X E
X
= = ) ( ; (PT 2-31)
) 1 (
2
p p n q p n
X
= = ; (PT 2-32)
| | p n
p
X E
c
X
X
= =
) 1 (
; (PT 2-33)
2.3.2. Phn b u (uniform distribution)
nh ngha 2-13: Mt bin ngu nhin X tun theo phn b u
nu n c hm mt xc sut l hng s trong khong | | b a, :
> <
=
) ( ) ( 0
1
) (
b x a x
b x a
a b
x f ; (PT 2-34)
16
Nu a = 0, b = 1, chng ta c phn b u n v (unit uniform
distribution):
> <
=
) 1 ( ) 0 ( 0
1 0 1
) (
x x
x
x f ; (PT 2-35)
Tng ng, chng ta c hm phn phi xc sut:
b x a
a b
a x
x F
= ; ) ( ; (PT 2-36)
K vng, phng sai v h s thay i ca bin ngu nhin X tun
theo phn b u c xc nh:
2
) (
b a
m X E
X
+
= = ; (PT 2-37)
( )
12
2
2
a b
X
= ; (PT 2-38)
| |
( )
( )
2
2
3 b a
a b
X E
c
X
X
+
= =
; (PT 2-39)
2.3.3. Phn b chun (Gaussian distribution)
nh ngha 2-14: Mt bin ngu nhin X tun theo phn b
chun (hay cn c gi l phn b Gauss) nu hm mt xc
sut c dng:
2 2
2 / ) (
2
1
) (
=
x
X
e x f ; (PT 2-40)
Tng ng, chng ta c hm phn phi xc sut:
= =
/ ) (
2 / 2 / ) (
2 2 2
2
1
2
1
) (
x x
X
d e d e x F ; (PT 2-41)
K vng, phng sai v h s thay i ca bin ngu nhin X tun
theo phn b chun c xc nh:
= =
X
m X E ) ( ; (PT 2-42)
2 2
=
X
; (PT 2-43)
| |
= =
X E
c
X
X
; (PT 2-44)
17
2.3.4. Phn b m (exponential distribution)
nh ngha 2-15: Phn b m l mt phn b ngu nhin ca
mt bin x lin tc vi hm mt xc sut:
x
e x f
= ) ( ; (PT 2-45)
Ngoi ra, hm phn b xc sut, k vng, phng sai v h s thay
i ca ca bin ngu nhin x tun theo phn b m c tnh nh
sau:
x
e x F
=1 ) ( ; (PT 2-46)
1
) ( = x E ; (PT 2-47)
2
1
) (
= x ; (PT 2-48)
| |
1 = =
X E
c
X
X
; (PT 2-49)
Trong 0 > l tham s tc (rate parameter), ) (x f l hm mt
xc sut, ) (x F l hm phn phi xc sut, ) (x E l k vng, ) (x
l phng sai v
X
c l h s thay i ca bin x.
Phn b hm s m kh quan trng v thng c dng ph
bin trong l thuyt hng i m t cc phn b ngu nhin
xy ra trong cc h thng thng tin, th d nh s phn b ca
khong thi gian n gia cc cuc gi cng nh thi gian phc
v ca h thng tng i in thoi.
Mt tnh cht quan trng ca bin ngu nhin X tun theo phn
b hm s m l thuc tnh khng nh (memoryless):
) ( 1 ) | ( t X P e u X t u X P
t
= = > +
; (PT 2-50)
Nhn xt: Phng trnh trn cho thy hm phn b xc sut trong
mt khong [u; u+t] khng ph thuc vo gi tr khi u u m ch ph
thuc vo rng ca khong gi tr t.
2.3.5. Phn b Poisson (Poinsson distribution)
nh ngha 2-16: Mt bin ngu nhin ri rc X c phn b
Poisson vi tham s ( 0 > ) nu n ly nhng gi tr 0, 1, 2,,
n vi xc sut:
;
!
) (
k
e k X P
k
= = k = 0, 1, (PT 2-51)
18
Phn b Poisson c hm mt xc sut nh sau :
) (
!
) (
0
k x
k
e x P
k
k
X
=
; (PT 2-52)
vi ) (x l hm xung n v (unit impulse function). Tng ng, chng
ta c hm phn phi xc sut
) (
!
) (
0
k x u
k
e x F
k
k
X
=
; (PT 2-53)
vi ) (x u l hm bc n v
2
(unit step function).
K vng, phng sai v h s thay i ca bin ngu nhin X tun
theo phn b Poisson c xc nh:
= =
X
m X E ) ( ; (PT 2-54)
=
2
X
; (PT 2-55)
| |
1
= =
X E
c
X
X
; (PT 2-56)
2.3.6. Phn b Gamma (Gamma distribution)
nh ngha 2-17: Phn b Gamma l phn b ngu nhin ca
mt bin x lin tc vi hm mt xc sut:
<
0 ; 0
0 ;
)! 1 (
) (
1
x
x e
n
x
x f
x
n
n
; (PT 2-57)
Ngoi ra, hm phn b xc sut, k vng v phng sai ca phn b
Gamma nh sau:
<
=
0 ; 0
0 ;
)! 1 (
) (
0
1
x
x
n
dy e y
x F
x
y n
; (PT 2-58)
n
x E = ) ( ; (PT 2-59)
2
2
n
X
= ; (PT 2-60)
2
Hm bc n v c nh ngha theo PT 2-30
19
Trong : v n l hai tham s ca phn b Gamma. 0 > c
gi l tham s t l (scale parameter), n nguyn dng c gi l
tham s hnh dng (shape parameter).
2.3.7. Mi lin h gia phn b m v phn b Gamma
nh l 2-2: C mt tp hp bin ngu nhin
i
X c lp v
tun theo phn b m vi tham s 0 > , ) ,..., 2 , 1 ( n i .Bin ngu
nhin X c nh ngha nh sau:
=
=
n
i
i
X X
1
; (PT 2-61)
Hm mt xc sut ca bin X tun theo phn b Gamma,
ngha l:
<
0 ; 0
0 ;
)! 1 (
) (
1
X
X e
n
X
X f
X
n
n
X
; (PT 2-62)
Chng minh:
Cc bin
i
X c lp tun theo phn b m vi tham s 0 > , v th:
<
=
0 ; 0
0 ;
) (
x
x e
x f
x
X
i
;
Cn phi tm mt xc sut ca bin ngu nhin
=
=
n
i
i
X X
1
. S
dng phng php quy np:
Trng hp n=1:
1
X X = , do :
<
=
0 ; 0
0 ;
! 0
) (
0
x
x e
x
X f
x
X
; (PT 2-63)
Gi thit (PT 2-62) ng cho trng hp n nguyn dng bt
k, phi chng minh (PT 2-62) ng cho trng hp n + 1:
;
1
1
+
=
+ =
n
n
i
i
X X X (PT 2-64)
Trong theo gi thit th:
20
<
=
0 ; 0
0 ;
)! 1 (
) (
1
1
X
X e
n
X
X f
X
n n
X
n
i
i
; (PT 2-65)
Do hai bin
=
n
i
i
X
1
v
1 + n
X l hai bin c lp, theo nh l 2-1 hm
mt xc sut ca bin X tng hai bin trn s l tch chp ca
hai hm mt xc sut thnh phn, tc l:
dY Y X f X f X f
n
n
i
i
X
X
X
) ( ) ( ) (
1
1
=
+
=
; (PT 2-66)
<
0 ; 0
0 ;
)! 1 (
) (
0
) (
1
X
X dY e e
n
Y
X f
X
Y X Y
n
n
X
; (PT 2-67)
<
=
+
0 ; 0
0 ;
!
) (
0
1 1
X
X dY nY
n
e
X f
X
n
X
n
X
; (PT 2-68)
Nh vy cui cng ta c:
<
0 ; 0
0 ;
)! 1 (
) (
1
X
X e
n
X
X f
X
n
n
X
; (PT 2-69)
nh l c chng minh
nh l 2-2 s c s dng trong mt s chng minh Chng 3.
2.4. Tin trnh ngu nhin (stochastic process)
2.4.1. Khi nim v nh ngha
Vn c bn lin quan n phn tch thng k cc h thng thng tin
s l c tnh ca cc tn hiu ngu nhin nh cc tn hiu thoi, tn
hiu truyn hnh, d liu my tnh s v tn hiu nhiu Nhng tn
hiu ngu nhin ny c hai c tnh:
Cc tn hiu ny u l nhng hm bin i theo thi gian
c xc nh trong mt s khong thi gian quan trc.
Cc tn hiu ny l ngu nhin v khng th m t c chnh
xc dng sng ca tn hiu quan st c.
Xem xt mt th nghim ngu nhin c nh ra bi cc kt qu s t
mt tp hp cc gi tr S ca php th. Vi mi mt im mu s,
tng ng chng ta c mt hm bin thin theo thi gian:
T t T s t X ), , ( ; (PT 2-70)
21
y 2T l ton b khong thi gian quan trc. i vi mi mt im
mu c nh
j
s , th ca hm ) , (
i
s t X theo thi gian c gi l
hm mu ca mt tin trnh ngu nhin. n gin v mt k hiu,
chng ta biu th hm mu ny di dng:
) , ( ) (
j j
s t X t x = ; (PT 2-71)
Hnh 2.5 minh ha mt tp hp cc hm mu{ } n j t x
j
,..., 2 , 1 ) ( = . T
hnh v ny, chng ta thy rng, i vi thi im t
k
c nh trong
khong thi gian quan trc, tp hp cc s:
{ } { } ) , ( ), , ( ), , ( ) ( , ), ( ), (
2 1 2 1 n k k k k n k k
s t X s t X s t X t x t x t x K K = ; (PT 2-72)
hnh thnh nn mt bin ngu nhin. Do vy, chng ta c mt
tp hp cc bin ngu nhin ) , ( s t X hnh thnh nn mt tin trnh
ngu nhin.
n gin v mt k hiu, ngi ta thng b s v dng ) (t X biu
th cho mt tin trnh ngu nhin.
Hnh 2-4. Tp hp cc hm mu
nh ngha 2-18: Tin trnh ngu nhin ) (t X c nh ngha l
mt tp hp ca cc hm thi gian cng vi mt lut xc sut
nht nh
2.4.2. Phn loi
S khc nhau c bn gia bin ngu nhin v tin trnh ngu
nhin ch: vi bin ngu nhin, kt qu php th ca th nghim
ngu nhin c nh x thnh mt gi tr s; cn vi tin trnh ngu
nhin, kt qu ca php th c nh x thnh mt hm thi gian.
22
Ph thuc vo tnh lin tc hoc ri rc ca khng gian mu S v t,
mt tin trnh ngu nhin c th c phn chia thnh bn loi khc
nhau:
Chui ngu nhin ri rc (Discrete Random Sequence) nu
c S v t l nhng gi tr ri rc: Th d: Nu
n
X i din cho
kt qu th n ca vic tung mt con xc sc th { } 1 , n X
n
l
mt chui ngu nhin ri rc v t={1, 2, 3, } v S={1, 2, 3, 4, 5,
6}.
Chui ngu nhin lin tc (Continuous Random Sequence)
nu t l ri rc cn S l lin tc. Th d: Nu
n
X i din cho
nhit ti gi th n trong ngy th { } 24 1 , n X
n
l mt chui
ngu nhin lin tc v nhit c th l bt k gi tr no trong
mt khong gi tr xc nh v do vy lin tc.
Tin trnh ngu nhin ri rc (Discrete Random Process)
nu t l lin tc v S l ri rc. Th d: Nu ) (t X i din cho
s cuc gi in thoi nhn c trong khong thi gian ) , 0 ( t
th )} ( { t X l tin trnh ngu nhin ri rc v ,...} 3 , 2 , 1 , 0 { = S .
Tin trnh ngu nhin lin tc (Continuous Random
Process) nu c t v S l lin tc. Th d: Nu ) (t X i din
cho nhit cao nht ti mt a im no trong khong thi
gian ) , 0 ( t , th )} ( { t X l tin trnh ngu nhin lin tc.
Ni mt cch tng qut, t ri rc hoc lin tc lin quan n S, cn
chui hoc tin trnh lin quan n t.
Ngoi ra, cc tin trnh ngu nhin cn c phn bit thnh: tin
trnh ngu nhin xc nh v tin trnh ngu nhin khng
xc nh:
Nu gi tr ca bt k hm mu no khng c d on chnh
xc t cc gi tr quan trc c trong qu kh th tin trnh
ngu nhin c gi l khng xc nh.
Mt tin trnh ngu nhin c gi l xc nh nu gi tr tng
lai ca bt k mt hm mu no u c th d on c t
cc gi tr trong qu kh. Th d: ( ) + = t A t X
0
cos ) (
2.5. Cc c tnh thng k ca tin trnh ngu nhin
2.5.1. Cc hm quan h xc sut
Xem xt mt tin trnh ngu nhin ) (t X . i vi mt thi im xc nh
t
1
,
1 1
) ( X t X = l mt bin ngu nhin v hm phn b xc sut
) ; (
1 1
t x F
X
ca n c xc nh:
{ }
1 1 1 1
) ( ) ; ( x t X P t x F
X
=
;
1
X
(PT 2-73)
23
) ; (
1 1
t x F
X
c gi l hm bc mt ca ) (t X . Hm mt xc
sut bc mt tng ng c xc nh:
1
1 1
1 1
) ; (
) ; (
x
t x F
t x f
X
X
= ; (PT 2-74)
Tng t, vi t
1
, t
2
,
1 1
) ( X t X = v
2 2
) ( X t X = i din cho hai bin
ngu nhin. Phn b chung ca chng c gi l phn b bc hai
v c xc nh bi:
{ }
2 2 1 1 2 1 2 1
) ( , ) ( ) , ; , ( x t X x t X P t t x x F
X
= ; (PT 2-75)
Trong
2 1
, X X .
Hm mt bc hai tng ng c xc nh:
2 1
2 1 2 1
2
2 1 2 1
) , ; , (
) , ; , (
x x
t t x x F
t t x x f
X
X
= ; (PT 2-76)
Theo cch tng t, i vi n bin ngu nhin
) , , 1 ( , ) ( n i X t X
i i
K = = , hm phn b bc n l:
{ }
n n n n X
x t X x t X x t X P t t t x x x F = ) ( , , ) ( , ) ( ) , , , ; , , , (
2 2 1 1 2 1 2 1
K K K
(PT 2-77)
Hm mt bc n tng ng l:
n
n n X
n
n n X
x x x
t t t x x x F
t t t x x x f
=
K
K K
K K
2 1
2 1 2 1
2 1 2 1
) , , , ; , , , (
) , , ; , , , ( ;
(PT 2-78)
2.5.2. Cc trung bnh thng k
K vng (mean) ca mt tin trnh ngu nhin ) (t X c xc nh:
| |
+
= = dx t x xf t m t X E
X X
) ; ( ) ( ) ( ; (PT 2-79)
24
Nh vy, y ) (t X c xem nh l bin ngu nhin i vi mt
gi tr c nh t.
Hm t tng quan (autocorrelation) ca ) (t X c xc nh:
| |
+
+
= =
2 1 2 1 2 1 2 1 2 1 2 1
) , ; , ( ) ( ) ( ) , ( dx dx t t x x f x x t X t X E t t R
X XX
;
(PT 2-80)
Hm t hip bin (autocovariance) ca ) (t X c xc nh:
| || | { } ) ( ) ( ) , ( ) ( ) ( ) ( ) ( ) , (
2 1 2 1 2 2 1 1 2 1
t m t m t t R t m t X t m t X E t t C
X X XX X X XX
= =
(PT 2-81)
Hm m men chung bc n ca ) (t X c xc nh:
| |
+
+
=
n n n X n
dx dx t t x x f x x t X t X E L K K L L L
1 1 1 1 2 1
) , , ; , , ( ) ( ) ( ;
(PT 2-82)
2.5.3. Tnh dng
Tnh dng cm nhn cht
nh ngha 2-19: Mt tin trnh ngu nhin ) (t X c gi l c
tnh dng cm nhn cht (strict-sense stationary SSS) nu cc
c tnh thng k ca n khng thay i khi c s dch chuyn
no v mt thi gian so vi ban u. Ni cch khc, tin trnh
) (t X l SSS nu:
c c t c t x x f t t x x f
n n X n n X
+ + = ); , , ; , , ( ) , , ; , , (
1 1 1 1
K K K K ;
(PT 2-83)
T phng trnh (PT 2-83), chng ta thy rng
c c t x f t x f
X X
+ = ); ; ( ) ; (
1 1 1 1
. Do vy, hm mt bc mt ca tin
trnh dng ) (t X l c lp vi t. Do :
) ( ) ; (
1 1
x f t x f
X X
= ; (PT 2-84)
25
Tng t, c c t c t x x f t t x x f
X X
+ + = ); , ; , ( ) , ; , (
2 1 2 1 2 1 2 1
. t
1
t c = ,
chng ta c:
) , 0 ; , ( ) , ; , (
1 2 2 1 2 1 2 1
t t x x f t t x x f
X X
= ; (PT 2-85)
Nhn xt: Cc phng trnh trn ch cho chng ta thy rng,
nu ) (t X l SSS, hm mt chung ca cc bin ngu nhin
) (t X v ) ( + t X l c lp vi t v ch ph thuc vo khong thi
gian chnh lch gia chng.
Tnh dng cm nhn lng
nh ngha 2-20: Mt tin trnh ngu nhin ) (t X c tnh dng
cm nhn lng (wide-sense stationary WSS) nu k vng ca
n l hng s:
| |
X
m t X E = ) ( ; (PT 2-86)
v hm t tng quan ca n ch ph thuc vo chnh lch
thi gian :
| | ) ( ) ( ) (
XX
R t X t X E = + ; (PT 2-87)
T phung trnh (2-86) v (2-87), hm t hip bin ca mt tin trnh
WSS cng ch ph thuc vo chnh lch thi gian :
2
) ( ) (
X XX XX
m R C = ; (PT 2-88)
t = 0, t phng trnh (2-88), chng ta c:
| | ) 0 ( ) (
2
XX
R t X E = ; (PT 2-89)
Nh vy, cng sut trung bnh ca tin trnh WSS c lp vi t v
bng ) 0 (
XX
R .
Lu rng, mt tin trnh SSS l WSS, nhng mt tin trnh
WSS cha hn l SSS.
Hai tin trnh ) (t X v ) (t Y c gi l c tnh dng cm nhn lng
chung (jointly WSS) nu bn thn ring tng tin trnh l WSS v
hm tng quan cho (cross-correlation) gia chng ch ph thuc
vo chnh lch thi gian .
| | ) ( ) ( ) ( ) , (
XY XY
R t Y t X E t t R = + = + ; (PT 2-90)
T phng trnh (2-90), hm hip bin cho (cross-covariance) ca
cc tin trnh WSS chung gia ) (t X v ) (t Y cng ph thuc vo chnh
lch thi gian :
Y X XY XY
m m R C = ) ( ) ( ; (PT 2-91)
26
Trung bnh thi gian v ergodic
K vng trung bnh thi gian (time-averaged) ca mt hm mu
) (t x ca mt tin trnh ngu nhin ) (t X c nh ngha:
= =
2 /
72
) (
1
lim ) (
T
T
T
dt t x
T
t x x ; (PT 2-92)
Tng t, hm t tng quan trung bnh thi gian ca mt
hm mu ) (t x c xc nh:
+ = + =
2 /
72
) ( ) (
1
lim ) ( ) ( ) (
T
T
T
XX
dt t x t x
T
t x t x R ; (PT 2-93)
Lu rng: x v ) (
XX
R l cc bin ngu nhin; gi tr ca chng ph
thuc hm mu ca ) (t X c s dng.
Nu ) (t X l tin trnh dng, bng vic ly gi tr trung bnh (k vng)
trn c hai pha ca phng trnh (2-92) v (2-93) chng ta c:
| | | |
X
T
T
T
m dt t x E
T
x E = =
2 /
72
) (
1
lim ; (PT 2-94)
| | | | ) ( ) ( ) (
1
lim ) (
2 /
72
XX
T
T
T
XX
R dt t x t x E
T
R E = + =
; (PT 2-95)
T cc phng trnh (2-94) v (2-95) chng ta thy, k vng ca trung
bnh thi gian bng vi k vng thng k v k vng ca t tng
quan trung bnh thi gian bng vi t tng quan thng k.
Mt tin trnh ngu nhin ) (t X c tnh ergodic nu cc trung
bnh thi gian l nh nhau cho tt c cc hm mu v bng cc
trung bnh thng k tng ng.
Do vy, trong mt tin trnh ergodic, tt c cc thng k ca n c th
nhn c qua vic quan trc mt hm mu n ) , ( ) ( s t X t x = ; (s l
c nh) ca tin trnh.
Mt tin trnh dng ) (t X c gi l ergodic theo k vng nu:
| |
X
m t X E t x x = = = ) ( ) ( ; (PT 2-96)
Tng t, mt tin trnh dng ) (t X c gi l ergodic theo t
tng quan nu:
27
| | ) ( ) ( ) ( ) ( ) ( ) (
XX XX
R t X t X E t x t x R = + = + = ; (PT 2-97)
Trong thc t, vic kim tra tnh ergodic ca mt tn trnh ngu nhin l
rt kh khn. Mt gi thit hp l cho vic phn tch phn ln cc tn
hiu thng tin cc dng sng ngu nhin ca chng c tnh ergodic
theo k vng v theo t tng quan.
2.6. Cc tin trnh ngu nhin thng gp
2.6.1. Tin trnh m
Tin trnh m (counting process)
nh ngha 2-21: Mt tin trnh ngu nhin { } 0 ), ( t t N c
gi l tin trnh m (counting process) nu ) (t N i din cho
tng s cc s kin xut hin cho ti thi im t. Ni cch khc,
mt tin trnh m phi tha mn cc iu kin sau:
i. 0 ) ( t N .
ii. ) (t N l s nguyn.
iii. Nu t s < , th ) ( ) ( t N s N .
iv. i vi t s < th ) ( ) ( s N t N chnh l s s kin xut hin
trong khong thi gian ) , ( t s .
Hnh 2-5. Tin trnh m
Th d 2-10:
Tin trnh tng trng c lp (independent increments)
nh ngha 2-22: Mt tin trnh m { } 0 ), ( t t N c gi tng
trng c lp (independent increments) nu nh )] ( ) ( [ t N s N
( t s > ) v )] ( ) ( [ v N u N ( v u > ) l hai bin ngu nhin c lp vi
iu kin ) , ( s t v ) , ( u v l hai khong thi gian c lp, khng
trng nhau.
Hnh 2-6. Tin trnh tng trng c lp
Th d 2-11:
28
Tin trnh tng trng dng (stationary increments)
nh ngha 2-23: Mt tin trnh m c gi l tng trng
dng (stationary increments) nu s cc s kin trong khong
thi gian ( ) s t s t + +
2 1
, ; tc l )} ( ) ( {
1 2
s t N s t N + + c cng phn
b vi s s kin xut hin trong khong thi gian ) , (
2 1
t t ; tc l
{ } ) ( ) (
1 2
t N t N i vi mi
2 1
t t < v 0 > s .
Ni cch khc, tin trnh m l tng trng dng nu nh vic phn
b s cc s kin xut hin trong bt k khong thi gian no ch ph
thuc vo di ca khong thi gian quan trc m khng ph thuc
vo thi im bt u tin hnh quan trc.
Hnh 2-7. Tin trnh tng trng dng
Th d 2-12:
2.6.2. Tin trnh Poisson
2.7. Kt lun
Chng 2 tp trung gii thiu nhng khi nim c bn v xc sut,
bin ngu nhin v cc hm xc sut, cc phn b xc sut c bn,
tng quan v tin trnh ngu nhin v mt s tin trnh ngu nhin ph
bin nh Poisson, Gauss, Markov. y c th c xem nh l
nhng kin thc c bn, nhm h tr bn c trong vic hc v tm
hiu nhng chng tip theo.
Tin trnh tng trng c lp
Tin trnh tng trng dng
Tin trnh Bernoulli (Bernoulli process)
Tin trnh nh thc (Binomial process)
Tin trnh Poisson:
Mt s nh l ca tin trnh Poisson
Tnh cht ca tin trnh Poisson
Tnh hp nht (merging property)
Tnh tch bit
29
Chng 3 H thng hng i
3.1. Gii thiu
Trong Chng 2, chng ta kho st cc tin trnh ngu nhin thng
dng. y chnh l cc cng c ton hc thng c s dng trong
h thng hng i c cp trong chng ny.
Hng i l thnh phn khng th thiu khi m hnh ha h thng s
dng phng php ton hc v l cng c hu hiu nh gi hiu
nng hot ng ca cc h thng phc v ni chung cng nh ca h
thng my tnh v thng tin ni ring.
nh ngha 3-1: H thng phc v l h thng c s
dng phc v cc yu cu nht nh hoc cc khch hng
thng qua cc im cung cp dch v. Yu cu hoc khch hng
ri h thng sau khi dch v c cung cp.
Th d 3-1:
Cc h thng in thoi: p ng s lng ln khch hng quay s
kt ni n mt trong nhng ng ra hu hn ca tng i.
Trong mng my tnh: khi gi tin c chuyn t ngun ti ch v i
qua mt s lng cc nt trung gian. H thng hng i xut hin ti
mi nt mng qu trnh lu tm thng tin ti b m.
H thng my tnh: khi cc cng vic tnh ton v tuyn lm vic ca
h thng yu cu dch v t b x l trung tm v t cc ngun khc.
Tt c cc h thng trn th d trn u c m t bng khi nim
hng i.
3.2. M hnh hng i K hiu Kendall
3.2.1. M hnh hng i n
Mt hng i n gin c nh ngha bi cc c im c bn sau
y:
Tin trnh ti (arrival process): c c trng bi tc yu
cu (hoc s kin) ti h thng (yu cu trn n v thi
gian) v tnh cht ngu nhin ca tin trnh ti.
Th d: cc gi tin c gi ti u vo ca mt router l mt tin
trnh ti, c c trng bi s gi/s v phn b ngu nhin ca
cc gi, tc l phn b ngu nhin ca khong thi gian gia hai
gi lin tip, th d nh phn b m.
30
Tin trnh phc v (service process): tin trnh phc v gn
lin vi cc trm phc v (server) trong mt h thng phc v.
Mi trm phc v bao gi cng c c trng bi tc phc
v trung bnh (s yu cu trn mt n v thi gian) v tnh
cht ngu nhin ca tin trnh phc v.
Th d: Cc gi tin c gi ra u ra ca mt router c coi nh
mt tin trnh phc v v c c trng bi s gi c phc v
trong 1s. Thng thng cc gi tin trong Internet c di thay i,
v vy thi gian phc v mt gi tin trung bnh (thi gian gi gi
t bit u tin n bit cui cng ln ng truyn) s c tnh
cht ngu nhin tun theo mt phn b no .
S trm phc v (server): Mt h thng phc v c th c
nhiu trm phc v. Trong trng hp ny h thng phc v c
th phc v mt lc nhiu yu cu.
Quy tc phc v (service strategy): th hin nguyn tc v
trnh t phc v cc yu cu khi chng i vo h thng phc v.
Th d: trong nguyn tc FIFO yu cu no vo h thng trc th
c phc v trc. Trong nguyn tc LIFO, yu cu no vo h
thng sau cng li c phc v u tin.
Hng i (queue): Khi mt yu cu i vo mt h thng phc
v, nu tt c cc trm phc v u bn th yu cu s phi
i trong hng i. Hng i c c trng bi ln K.
Hnh 3-1 minh ha mt h thng hng i vi N trm phc v, ln
hng i K, tin trnh ti vi tham s v N tin trnh phc v vi tham
s {
1
, ...,
n
}.
Hnh 3-1. H thng hng i vi N trm phc v, hng i c ln K
31
3.2.2. K hiu Kendall
K hiu Kendall c s dng m t h thng hng i n, do
David George Kendall pht trin. H thng hng i c m t bng
mt chui k t nh sau:
A/S/C/[K]/[P]/[D]
Cc k t trong du ngoc vung khng bt buc phi c. Trong :
A v S: Th hin phn b ngu nhin ca tin trnh ti (A) v
tin trnh phc v (S). Mt s phn b ngu nhin thng dng
l:
M: phn b Markov hay phn b m
D: phn b xc nh, phi ngu nhin (derterministic). Trong
phn b D khong thi gian gia 2 s kin n h thng hoc
thi gian x l mt yu cu ti trm phc v l hng s.
G hoc GI: Phn b ngu nhin bt k.
C: S trm phc v, C ; 1 C
K: Th hin s yu cu m h thng c th cha c, k c
yu cu ang c phc v bi trm phc v, N K ; 0 K .
Nu K c b qua th mc nh = K
P: S lng cc yu cu i vo h thng (Calling population).
Nu P c b qua th mc nh = P .
D: Quy tc phc v (service discipline/strategy).
FIFO (First-In-First-Out): Yu cu no vo h thng trc c
phc v trc.
LIFO (Last-In-First-Out): Yu cu no vo h thng sau cng
c phc v u tin.
Round-robin (RR): H thng RR c nhiu hng i cho nhiu
tin trnh ti khc nhau. Cc yu cu ca cc tin trnh ti c
phc v theo th t ln lt (Hnh 3-2).
32
Hnh 3-2. Round robin
SIRO (Service In Random Order): Cc yu cu c phc v
theo trnh t ngu nhin, khng ph thuc vo trnh t ti h
thng.
PQ (Priority Queue): Hng i c u tin. Ging nh RR, h
thng ny c nhiu hng i cho cc tin trnh ti khc nhau.
Tuy nhin th t phc v cc yu cu trong cc hng i tun
theo trnh t u tin. Trm phc v s phc v cc yu cu
trong hng i c mc u tin cao nht. Khi hng i ny rng,
trm phc v s chuyn xung phc v hng i c yu cu
mc u tin thp hn. Khi mt hng i bt k mc u tin
cao hn c yu cu, trm phc v s chuyn sang phc v yu
cu hng i c mc u tin cao.
Th d 3-2:
H thng hng i M/M/2/K:
Tin trnh ti theo phn b m.
Tin trnh phc v theo phn b m.
H thng c 2 trm phc v.
Hng i c ln l K.
S lng yu cu i vo h thng l .
Quy tc phc v: FIFO (ngm nh).
3.2.3. Cc tham s quan trng nh gi c tnh ca h thng hng i
Khi nh gi c tnh ca h thng hng i, ngi ta thng hay ch
n cc tham s sau:
S yu cu trung bnh nm trong h thng N.
S yu cu trung bnh nm trong hng i
q
N .
S yu cu trung bnh c x l trm phc v
S
N .
Mi quan h v ngha ca 3 tham s trn s c cp k
hn cc phn tip theo.
Thi gian trung bnh mt yu cu lu li trong h
thng W.
Thi gian trung bnh mt yu cu phi ch trong hng
i trc khi c phc v
q
T .
Thi gian phc v trung bnh mt yu cu ti trm phc
v
S
T .
Xc sut thi gian mt yu cu phi i trong
hng i
q
t nh hn mt khong thi gian t cho trc
} { t t p
q
< .
33
Xc sut h thng c i yu cu
i
p .
Xc sut mt yu cu b t chi e, tc xc sut yu
cu khng c php i vo h thng do hng i b y.
3.3. H thng hng i trng thi n nh nh l Little
3.3.1. H thng hng i n nh
Xt mt h thng c ranh gii ng (enclosed network), gi tt l mng
ng (Hnh 3-3). Mng ny c th c mt hoc nhiu cng cho yu
cu i ti h thng (cng vo) v mt s cng cho yu cu i ra (cng
ra).
nh ngha 3-2: Mt mng khng t to ra cc yu cu, khng
hy cc yu cu, khng thay i tnh cht cc yu cu trong
mng c gi l mng ng (enclosed network).
Hnh 3-3. Mng ng
Do mng khng to ra m cng khng hy cc yu cu, yu cu ch c
th i vo, c lu gi trong mng v i ra khi mng. Nu tng yu
cu trung bnh i vo mng ln hn tng yu cu i ra khi mng th
tng s yu cu nm trong mng s khng ngng tng ln. Mt khc,
nu tc ti nh hn tc i ra th tng yu cu trong mng s
gim v khng. Ti thi im , tc ti v tc ra s cn bng
nhau.
Vi l lun nh trn, chng ta nhn thy mt h thng trng
thi n nh lun c tng tc ti trung bnh v tng tc ra
trung bnh bng nhau.
34
Mt tnh cht quan trng ca h thng trng thi n nh l tnh
cht thng k ca mng ti mt thi im cho trc s tng
ng vi tnh cht thng k ca mng ti mt thi im bt k.
Cc h thng hng i c xem xt trong quyn sch ny l mt
trng hp ring ca mng ng, hot ng n inh. Thng thng
khi xc nh c tnh ca mt h thng hng i, ngi ta quan tm
n cc tham s sau:
) (t N : s yu cu nm trong h thng ti thi im t.
) (t N
q
: s yu cu nm trong hng i ti thi im t.
) (t N
S
: s yu cu ang c phc v.
T: Thi gian tng cng mt yu cu nm trong h thng hng
i.
q
T : Thi gian mt yu cu phi nm ch trong hng i trc
khi n lt n c phc v.
S
T : thi gian mt yu cu c phc v bi server.
Ta c th d dng suy lun:
) ( ) ( ) ( t N t N t N
q S
+ = ; (PT 3-1)
T=
q
T +
S
T ; (PT 3-2)
Mt khc, nu gi:
l tc trung bnh ca yu cu i ti h thng (s yu
cu/n v thi gian).
l tc phc v trung bnh ca trm phc v (s yu
cu/n v thi gian).
c l s trm phc v ca h thng hng i
Ta nh ngha ti ca h thng bng biu thc:
c
= ; (PT 3-3)
35
cn c gi l mt lu lng ca h thng (traffic intensity)
v c ngha l phn thi gian m ngi quan st bn ngoi bt gp
ti thiu mt trm phc v trng thi bn (ang phc v yu cu).
Ngoi ra, c th hiu c l tc phc v trung bnh ca ton h
thng hng i. T nh ngha chng ta thy rng:
1 0 ; (PT 3-4)
3.3.2. nh l Little
Xt mt mng ng bt k vi cc tham s sau:
) (t N - S yu cu nm trong h thng ti thi im t.
t
- S yu cu i n h thng trong khong thi gian t (0,t).
t
- S yu cu ri khi h thng trong khong thi gian t
(0,t).
Nh vy nu gi
t
N l s lng yu cu trung bnh nm trong h
thng trong (0,t), ta c:
=
t
t
dt t N
t
N
0
) (
1
; (PT 3-5)
Mt khc gi:
i
T l thi gian m yu cu i lu li trong h thng.
t
l s yu cu n h thng trong khong thi gian (0,t):
t
t
t
= ; (PT 3-6)
t
T l thi gian lu li trung bnh ca yu cu trong h thng
trong khong thi gian (0,t):
=
=
t
i
i
t
t
T T
1
1
; (PT 3-7)
Gi s cc gii hn sau y tn ti :
t
t
t
t
t
t
T T N N
= = = lim ; lim ; lim ;
nh l Little c pht biu nh sau:
nh l 3-1: S yu cu trung bnh nm trong h thng bng
tch ca tc ti trung bnh vi thi gian lu li h thng trung
bnh ca yu cu:
T N = ; (PT 3-8)
36
Chng minh nh l Little:
Chng minh cng thc Little bng phng php hnh hc theo nh
minh ha di y.
Hnh 3-4. Quan h gia s yu cu ti v s yu cu c phc v
Xt trong khong (0,t) :
Din tch phn gch cho:
= =
t
t
t
dt t t dt t N S
0
0
)] ( ) ( [ ) ( ; (PT 3-9)
Mt khc din tch ny cng bng:
=
=
t
i
t
Ti S
1
1 ; (PT 3-10)
Nh vy, t (PT 3-9, 3-10) ta rt ra:
=
=
t
i
t
Ti dt t N
0
1
) (
(PT 3-11)
Hay:
t
i
i
t
o
t
t
T
t
dt t N
t
=
=
1
) (
1
(PT 3-12)
tc l :
t t t
T N = ; (PT 3-13)
Nu gii hn sau y tn ti :
t
t
t
t
t
t
T T N N
= = = lim ; lim ; lim ; (PT 3-14)
T (PT 3-13) v (3-14)
T N = ; (PT 3-15)
37
Cng thc c chng minh
Nhn xt: nh l Little ng cho mt mng ng bt k, khng
ph thuc vo cc tham s hng i, tin trnh n v tin trnh
phc v.
3.3.3. Mt s c tnh khc ca h thng ng, hot ng trng thi n
nh
Xt mt h thng hng i nh Hnh 3-5. H thng hng i c c
trng bi cc tham s sau:
Tin trnh ti vi tc trung bnh .
c trm phc v vi tc phc v trung bnh ca tng trm l
.
Hng i c ln v tn (yu cu lun c chp nhn).
Nu xem xt h thng hng i nh mt mng ng bao gm hng
i v cc trm phc v nh Hnh 3-5 a, theo nh l Little ta c:
T N = ; (PT 3-16)
Mt khc, nu xem xt ring khi hng i ca h thng hng i trn
(Hnh 3-5 b), cn c vo nh ngha ta thy y vn l mt mng ng,
v vy c th p dng nh l Little nh sau:
q q
T N = ; (PT 3-17)
Mt khc theo (PT 3-2): T=
q
T +
S
T vi
c
T
S
1
= v theo (PT 3-16) v
(PT 3-17):
q
N
c
N
+ =
1
; (PT 3-18)
Hay:
q
N
c
N + =
; (PT 3-19)
Ngoi ra theo (PT 3-3)
c
= nn (PT 3-19) tr thnh:
q
N N + = (PT 3-20)
Nh vy ta c th ni rng chnh l s yu cu trung bnh m h
thng phc v phi x l ti cc trm phc v.
38
Nhn xt: nh l Little v cc c tnh ca h thng ng m
chng ta xt n thi im ny khng ph thuc vo cc c
im ring bit ca tng h thng hng i nh tin trnh n,
tin trnh phc v, s trm phc v .v.v. Tuy nhin nu mun
kho st cc c tnh khc ca h thng hng i chng ta cn
phi bit cc c tnh thng k ca lung lu lng u vo cng
nh tin trnh x l yu cu.
(a)
(b)
Hnh 3-5.H thng hng i c quan st vi hai ranh gii khc nhau:
(a) Hng i v cc trm phc v; (b) Hng i
3.4. Hng i M/M/1/1
K t phn ny, chng ta ln lt kho st c tnh hot ng ca cc
h thng hng i t n gin n phc tp, vi cc c tnh thng k
cho trc ca tin trnh n v tin trnh phc v.
39
Ch rng iu kin kho st c tnh mt h thng hng i
l chng phi hot ng ch n nh, ngha l cc tnh cht
thng k ca h thng khng ph thuc vo thi gian. Mt h
thng nh vy cn c gi l mt h thng dng.
Hnh 3-6. Hng i M/M/1/1
H thng hng i M/M/1/1 c c trng bi:
Tin trnh ti tun theo phn b m vi tham s l .
Tin trnh phc v tun theo phn b m vi tham s l .
Mt trm phc v
Khng c hng i, nh vy h thng c th cha ti a mt
yu cu.
Gi ) (t N l s yu cu trong h thng ti thi im t. Do ch c hai kh
nng l h thng khng c yu cu, hoc trm phc v ang x l mt
yu cu nn: } 1 , 0 { ) ( t N .
Gi:
) , (
2 1
t t p
i
n
l xc sut trong khong thi gian ) , (
2 1
t t c n yu
cu i vo h thng.
) , (
2 1
t t p
o
k
l xc sut trong khong thi gian ) , (
2 1
t t c k yu
cu i ra khi h thng.
Nhim v u tin t ra l phi tnh xc sut ) ( } 0 ) ( {
0
t p t N p = v
) ( } 1 ) ( {
1
t p t N p = . Mun vy ta xt khong thi gian ) , 0 ( dt t + nh
trn Hnh 3-7.
Hnh 3-7. Khong thi gian xt
Xt trng hp 0 ) ( = t N
Trc ht phi tnh } 0 ) ( { = + dt t N p . Ta nhn thy rng:
Nu (Ti thi im dt t + h thng khng c yu cu no) th:
[(Ti thi im t h thng khng c yu cu no) V (Trong khong
thi gian ) , ( dt t t + khng c yu cu no n h thng)]
HOC
40
[(Ti thi im t c 1 yu cu trong h thng) V (Trong khong
thi gian ) , ( dt t t + c mt yu cu ri khi h thng)]
HOC
[(Ti thi im t h thng khng c yu cu no) V (Trong khong
thi gian ) , ( dt t t + c 1 yu cu n h thng) V (Trong khong
thi gian ) , ( dt t t + c 1 yu cu ri khi h thng)]
Chng ta c th biu din trng hp trn bng biu thc ton hc
nh sau:
+ + = + ) , ( ) ( ) (
0 0 0
dt t t p t p dt t p
i
) , ( ) , ( ) ( ) , ( ) (
1 1 0 1 1
dt t t p dt t t p t p dt t t p t p
o i o
+ + + + + (PT 3-21)
Theo nh ngha ca phn b Markov, ta c:
dt dt t t p
i
= + 1 ) , (
0
; (PT 3-22)
dt dt t t p
o
= + ) , (
1
; (PT 3-23)
dt dt t t p
i
= + ) , (
1
; (PT 3-24)
Thay vo (PT 3-21) ta c:
dt dt t p dt t p dt t p dt t p ) ( ) ( ) 1 )( ( ) (
0 1 0 0
+ + = + (PT 3-25)
S hng th 3 ca v phi trong (PT 3-25) bng 0 do
2
) (dt tin ti 0
nhanh hn dt . Do ta c:
dt t p dt t p dt t p ) ( ) 1 )( ( ) (
1 0 0
+ = +
Hoc:
) ( ) (
) ( ) (
1 0
0 0
t p t p
dt
t p dt t p
+ =
+
; (PT 3-26)
Cui cng c:
) ( ) (
) (
1 0
0
t p t p
dt
t dp
+ = ; (PT 3-27)
Nhn xt rng h thng ang xt l mt h thng dng, khng ph
thuc vo thi gian nn:
0
) (
0
=
dt
t dp
; (PT 3-28)
Do (PT 3-27) tr thnh:
1 0
p p = ; (PT 3-29)
Mt khc:
1
1 0
= + p p ; (PT 3-30)
Gii h phng trnh (PT 3-29) v (PT 3-30) ta c:
41
+
=
+
=
1
0
p
p
; (PT 3-31)
T (PT 3-31) ta nhn thy rng xc sut
B
p mt yu cu b t chi
chnh l xc sut
1
p yu cu i vo h thng nhn thy trm phc
v ang bn.
+
=
B
p ; (PT 3-32)
S yu cu trung bnh trong mt h thng:
+
= = =
=
1
1
0
p np N
n
n
; (PT 3-33)
3.5. Hng i M/M/1/
Hnh 3-8. Hng i M/M/1/
H thng hng i M/M/1/ c c trng bi:
Tin trnh ti tun theo phn b m vi tham s l .
Tin trnh phc v tun theo phn b m vi tham s l .
Mt trm phc v
Hng i c ln l v hn, tc l khng xy ra trng hp
dch v b t chi.
3.5.1. Xc sut c n yu cu trong h thng
Cng nh trng hp hng i M/M/1/1, u tin chng ta phi tnh
xc sut ) (t p
n
ti thi im t c n yu cu trong h thng hng i.
Cng l lun nh trng hp trn, chng ta xt trong mt khong thi
gian [0, t+dt] (Hnh 3-7).
Mt khc theo nh ngha v phn b Poisson, chng ta cng bit rng
mt yu cu n h thng trong khong thi gian [t, t+dt] vi xc sut
42
l dt . , mt yu cu ri khi h thng trong khong thi gian [t, t+dt]
vi xc sut l dt . . Cng gi thit rng xc sut xy ra cc s kin
trong cc khong thi gian khng trng nhau l c lp.
Vi 0 > n xc sut ) ( dt t p
n
+ c tnh nh sau:
) ( dt t p
n
+ = P{n-1 yu cu trong h thng ti t} x
P{1 yu cu n h thng trong [t, t+dt]} x
P{0 yu cu i ra khi h thng trong [t, t+dt]} +
+ P{n yu cu trong h thng ti t} x
P{0 yu cu n h thng trong [t, t+dt]} x
P{0 yu cu i ra khi h thng trong [t, t+dt]} +
+ P{n yu cu trong h thng ti t} x
P{1 yu cu n h thng trong [t, t+dt]} x
P{1 yu cu i ra khi h thng trong [t, t+dt]} +
+ P{n+1 yu cu trong h thng ti t} x
P{0 yu cu n h thng trong [t, t+dt]} x
P{1 yu cu i ra khi h thng trong [t, t+dt]} ;
Nh vy chng ta c th biu din phng trnh trn di dng:
= + ) ( dt t p
n
+
) 1 ( ) (
1
dt dt t p
n
+ + ) 1 )( 1 )( ( dt dt t p
n
+ + dt dt t p
n
) (
dt dt t p
n
) 1 )( (
1
+
+
; (PT 3-34)
Cc s hng c cha thnh phn
2
) (dt c th b qua nn (PT 3-
34) tr thnh:
dt t p dt dt t p dt t p dt t p
n n n n
) ( ) 1 )( ( ) ( ) (
1 1 +
+ + = + ; (PT 3-35)
T (PT 3-35):
) ( ) ( ) ( ) (
) ( ) (
1 1
t p t p t p
dt
t p dt t p
n n n
n n
+
+ + =
+
;
Hay:
) ( ) ( ) ( ) (
) (
1 1
t p t p t p
dt
t dp
n n n
n
+
+ + = ; (PT 3-36)
Vi n=0, xc sut ) (
0
dt t p + c tnh tng t nh trong h
thng M/M/1/1:
) ( ) (
) (
1 0
0
t p t p
dt
t dp
+ = ; (PT 3-37)
43
Nh vy ta c h phng trnh (PT 3-36) v (PT 3-37). Do h thng
ang xt l h thng dng, khng ph thuc thi gian nn:
} ,..., 1 , 0 { ; 0
) (
= n
dt
t dp
n
; (PT 3-38)
T (PT 3-36, 37, 38) ta c h phng trnh:
+ = +
=
+ 1 1
0 1
) (
n n n
p p p
p p
; (PT 3-39)
T (PT 3-39) rt ra:
0 0
p p p
n
n
n
=
|
|
.
|
\
|
= ; (PT 3-40)
y l ti ca h thng v c tnh theo (PT 3-3) ( 1 ). Vi
v cho trc, tnh
n
p cn phi bit
0
p . Da vo iu kin sau
1
0
=
= n
n
p ta c:
1
0
0
=
= n
n
p ; (PT 3-41)
Hay
= =
=
1
) 1 ( 1
1 1
0
0
n
n
p ; (PT 3-42)
Do :
) 1 ( =
n
n
p ; (PT 3-43)
3.5.2. Tnh ton cc tham s hiu nng
u tin chng ta phi tnh s yu cu trung bnh trong h
thng:
=
= = =
0 0
1
) 1 (
n n
n
n
n np N
;
Nh vy:
=
1
N ; (PT 3-44)
Tip theo tnh s yu cu nm trong hng i trung bnh,
chng ta rng nu c n yu cu nm trong h thng th s
44
c (n-1) yu cu nm trong hng i v 1 yu cu ang c
phc v bi trm phc v ( 1 n ), do :
= = = =
=
=
) ( ) 1 (
0
0 0 1 1 1
p p np p np p n N
n
n
n
n
n n
n
n
n n q
) 1 (
0
p N = ; (PT 3-45)
T (PT-3-45) c:
=
1
2
q
N ; (PT 3-46)
Tnh xc sut mt yu cu phi i trong hng i mt
khong thi gian t t
q
vi t cho trc - ) ( t t p
q
. Chng ta l
lun nh sau:
Nu mt yu cu mi n h thng khi khng c yu cu no ang
nm trong h thng, yu cu s c phc v ngay, c ngha l
0 =
q
t :
= = = 1 ) 0 (
0
p t p
q
; (PT 3-47)
Nu mt yu cu mi n h thng v bt gp n yu cu
trong h thng th yu cu s phi i n khong thi gian phc
v vi phn b m trc khi n c phc v.
n q
S S S t + + + = ...
2 1
; (PT 3-48)
Vi
i
S l khong thi gian phc v yu cu th i, c phn b m
vi tham s . Nh vy theo nh l 2-2, hm mt xc sut
ca
q
t s tun theo phn b Gamma, do xc sut
) | ( n N t t p
q
= c tnh nh sau:
= =
t
x
n
q
dx e
n
x
n N t t p
0
1
)! 1 (
) (
) | (
; (PT 3-49)
Nh vy ta c:
= = = <
=
n
n
q q
p n N t t p t t p
1
) | ( ) 0 (
=
1
1
0
1
0
1
)! 1 (
) (
) 1 ( ) 1 .(
)! 1 (
) (
n
n t
x n
n
t
x
n
dx
n
x
e dx e
n
x
= = =
dx e dx e e
t
x x
t
x
0
) (
0
) ( ) 1 (
] 1 [
) ( t
e
= ;
45
Do :
] 1 [ ) 0 (
) ( t
q
e t t p
= < ; (PT 3-50)
Theo (PT 3-47) ta c:
] 1 [ 1 ) (
) ( t
q
e t t p
+ = ;
Hay:
t
q
e t t p
) (
1 ) (
= ; (PT 3-51)
Tnh thi gian lu li trung bnh ca mt yu cu trong h
thng:
Theo nh l Little: T N = hay
N
T = ; Theo (PT 3-44) ta c:
=
1
1 1
1
1
T ; (PT 3-52)
Tnh thi gian trung bnh mt yu cu phi i trong hng i:
Cng theo nh l Little ta c:
q
q
N
T = ; Theo (PT 3-46):
=
1
1
1
1
2
q
T ; (PT 3-53)
Nhn xt:
Trong h thng hng i M/M/1/ khi th tt c cc
tham s hiu nng u tin ti v cng. C ngha l nu
th h thng hot ng khng n nh.
q
T c th tnh trc tip t (PT 3-51) nh sau:
=
0
) ( dt t t p
dt
d
t T
q q
; (PT 3-54)
Ch rng ) ( t t p
q
chnh l hm phn phi xc sut ca
q
t do
) ( t t p
dt
d
q
l hm mt xc sut, v vy (PT 3-54) l k vng
ca
q
t .
46
3.6. Tin trnh sinh t (Birth Death Process)
Ta gi mt h thng hng i ang trng thi i nu trong h thng
ang c i yu cu. Nhn vo cc trng thi ca h thng hng i
M/M/1/1 v M/M/1/ , c th l cc phng trnh xc sut (PT 3-28) v
(PT 3-39) ta c nhn xt sau:
Nhn xt: Nu h thng hng i c tin trnh ti v tin trnh
phc v u tun theo phn b m th h thng s c tnh cht
cn bng xc sut, ngha l xc sut h thng chuyn t trng
thi i sang trng thi (i+1) hoc (i-1) s bng xc tng xc sut h
thng chuyn t trng thi (i+1) hoc (i-1) v trng thi i.
Hnh 3-9. Cn bng xc sut ti trng thi i. Tin trnhsinh t
Nhn xt trn c th c biu din nh trn Hnh 3-9 hoc
1 1
) (
+
+ = +
i i i
p p p ; (PT 3-55)
Trong
j
p l xc sut h thng c j yu cu. Qu trnh sinh t
v cc tnh cht ca n c trnh by chi tit trong [13, 14, 19].
3.7. Hng i M/M/1/K
Hnh 3-10. H thng M/M/1/K
H thng hng i M/M/1/K c c trng bi:
Tin trnh ti tun theo phn b m vi tham s l .
Tin trnh phc v tun theo phn b m vi tham s l .
Mt trm phc v.
47
Hng i c ln K phn t. Nh vy nu mt yu cu i vo
hng i m trong hng i c K yu cu khc th yu cu
mi n s b t chi.
3.7.1. Xc sut c n yu cu trong h thng
u tin chng ta biu din h thng hng i M/M/1/K bng tin trnh
sinh t (Hnh 3-11).
Hnh 3-11. H thng hng i M/M/1/K
H phng trnh cn bng ca h thng ny c biu din nh sau:
} 1 ,..., 1 { ;
;
) (
1
1 1
1 0
= =
+ = +
=
+
K n
K n p p
p p p
p p
K K
n n n
(PT 3-56)
T h phng trnh trn, ta c:
} , 0 { ;
0
K n p p
n
n
= (PT 3-57)
Mt khc ta cng c:
=
=
K
n
n
p
0
1;
T tnh ra c:
1
0
0
1
1 1
+
=
= =
K K
n
n
p
; (PT 3-58)
n
K
n
p
=
+1
1
1
; (PT 3-59)
3.7.2. Tnh ton cc tham s hiu nng
Tnh xc sut t chi dch v (xc sut mt yu cu)
48
Chng ta nhn xt rng mt yu cu b t chi khi n n hng i v
thy c K yu cu ang trong hng i. Gi xc sut mt yu cu
b t chi dch v l
loss
P , ta nhn thy rng:
K
K
K loss
p P
= =
+1
1
1
; } ,..., 0 { K n (PT 3-60)
Tnh s yu cu trung bnh trong h thng:
Ta c:
=
+
=
= =
K
n
n
K
K
n
n
n np N
1
1
1
1
1
; (PT 3-61)
tnh c (PT 3-61) chng ta ch n phng trnh sau:
=
+
= =
K
n
K
n
f
0
1
1
1
) (
; (PT 3-62)
Ly vi phn (PT 3-62):
=
+
+ +
= =
K
n
K K
n
K K
n f
1
2
1
1
) 1 (
) 1 ( 1
) (
; (PT 3-63)
Thay (PT 3-63) vo (PT 3-61) ta c:
1
1
1
) 1 (
1
+
+
=
K
K
K N
; (PT 3-64)
Ch rng trong trng hp 1 , khc vi hng i M/M/1/, t h
phng trnh (PT 3-56) ta c th rt ra:
0
p p
n
= vi n=0, 1, , K.
Do :
1
1
+
=
K
p
n
; } ,..., 1 , 0 { K n (PT 3-65)
Vy trong trng hp 1 thay vo (PT 3.61):
=
= =
K
n
n
K
np N
1
2
; (PT 3-66)
Tnh s yu cu trung bnh trong hng i:
= = =
= = =
K
n
K
n
n
K
n
n n q
p N p np p n N
1
0
1 1
) 1 ( ) 1 ( ; (PT 3-67)
49
Cui cng ta c:
1
1
1
) 1 (
1
1
+
+
+
+
=
K
K
q
K
N
; (PT 3-68)
Cng nh trong cc h thng hng i trc, ta tnh phn b
xc sut ca thi gian i
q
t trong hng i. y cn ch
rng, khi mt yu cu ti hng i v bt gp tng cng K yu
cu nm trong hng i th yu cu s b t chi.
Nh vy u tin phi tnh xc sut
n
q l xc sut c n yu cu
ang trong h thng, vi iu kin 1 K n :
K
n n
n
p
p
K n P
p
K n n N P q
=
= =
1 ) 1 (
) 1 | ( ; (PT 3-69)
Do :
1 ,..., 1 , 0 ;
1
) 1 (
=
= K n q
K
n
n
; (PT 3-70)
Gi xc sut mt yu cu phi i mt khong thi gian t t
q
v ang c n yu cu trong h thng ( 1 ,..., 1 , 0 = K n )
l: ) , ( n N t t p
q
= . Theo cng thc xc sut c iu kin:
) 1 | ( ) | ( ) , ( = = = = K n n N P n N t t p n N t t p
q q
n q
q n N t t p ) | ( = = ; (PT 3-71)
Nh vy, cng l lun nh trong trng hp hng i M/M/1/ ta
c:
=
= + = =
1
1
) | ( ) 0 ( ) (
K
n
n q q q
q n N t t p t p t t p ; (PT 3-72)
+ =
1
1
0
1
0
)! 1 (
) (
) (
K
n
t
x
n
n q
dx e
n
x
q q t T p
;
=
1
0
0
1
)! 1 (
) (
K
n
t
x
n
n q
dx e
n
x
q t t p
;
Cui cng ta tnh c:
=
1
0
0
1
)! 1 ( 1
1
) (
K
n
t
x
n
n
K
q
dx e
n
x
t t p
; (PT 3-73)
50
T (PT 3-73) ta c th tnh thi gian trung bnh m cc yu cu
phi nm ch trong hng i l:
=
= =
0 0
1 1
0
)! 1 (
) (
) ( dt e
n
t
t q dt t t p
dt
d
t T
t
n K
n
n q q
; (PT 3-74)
Ch rng:
0
)! 1 (
!
)! 1 (
1
n
n
n
dx e x
n
x n
; (PT 3-75)
Do c th c tnh (kt hp vi (PT 3-69)):
= =
1
0
1
0
) (
1
1 1
1
1 1 1
K
n
K
K
K
n
n
K
n q
Kp N
p
np
p
nq T
; (PT 3-76)
Mt khc theo (PT 3-67):
) ( ) 1 (
0 K q
Kp N p N N = = ;
Cui cng ta c:
q
K
q
N
p
T
=
1
1 1
; (PT 3-77)
Nhn xt: Nu gi ) 1 (
K a
p l tc yu cu i vo
hng i th (PT 3-77) tun theo nh l Little:
a
q
q
N
T
= ; (PT 3-78)
Nu quan st hng i M/M/1/K trn quan im mt h thng
ng, chng ta rng ti u vo h thng dng yu cu u
vo vi tc trung bnh s c chia thnh hai nhnh: nhnh
yu cu i vo hng i vi tc trung bnh ) 1 (
K a
p = v
nhnh cc yu cu b t chi vi tc trung bnh
K L
p = .
Hnh 3-12. H thng M/M/1/K trn quan im h thng ng
Cng tnh ton tng t nh trn, ta c thi gian trung bnh T
mt yu cu lu li h thng:
51
a K
N
N
p
T
=
=
1
1 1
; (PT 3-79)
3.8. Hng i M/M/c/
Hnh 3-13 Hng i M/M/c/
H thng hng i M/M/c/ c cc c im sau:
Tin trnh ti tun theo phn b m vi tham s l .
C c trm phc v.
Tin trnh phc v ca mt trm i bt k tun theo phn b m
vi tham s l
i
.
Hng i c chiu di v tn.
3.8.1. Xc sut c n yu cu trong h thng
H thng
52
Chng 4 Mng hng i
4.1. Mng ni tip
53
Chng 5 nh tuyn trong
mng thng tin
5.1. Yu cu v nh tuyn trong mng thng tin
5.1.1. Vai tr ca nh tuyn trong mng thng tin
5.1.2. Cc khi nim trong l thuyt graph
Phn ny gii thiu cc thut ng v cc khi nim c bn nhm m
t cc mng, graph, v cc thuc tnh ca n. L thuyt graph l mt
mn hc xut hin t lu, nhng l thuyt ny c mt s thut ng
c chp nhn khc nhau dng cho cc khi nim c bn. V th c
th s dng mt s thut ng khc nhau lp m hnh graph cho
mng. Cc thut ng c trnh by di y ny l cc thut ng
c cng nhn v c s dng thng xuyn chng ny.
Mt graph G, c nh nghi bi tp hp cc nh V v tp hp cc
cnh E. Cc nh thng c gi l cc nt v chng biu din v tr
(v d mt im cha lu lng hoc mt khu vc cha thit b truyn
thng). Cc cnh c gi l cc lin kt v chng biu din phng
tin truyn thng. Graph c th c biu din nh sau:
G=(V, E)
Hnh 4.1 l mt v d ca mt graph.
Hnh 4.1. Mt graph n gin
Mc d theo l thuyt, V c th l tp hp rng hoc khng xc nh,
nhng thng thng V l tp hp xc nh khc rng, ngha l c th
biu din
V={v
i
| i=1,2,......N}
Trong N l s lng nt. Tng t E c biu din:
E={e
i
| i=1,2,......M}
54
Mt lin kt, ej, tng ng mt kt ni gia mt cp nt. C th biu
din mt lin kt ej gia nt i v k bi
e
j
=(v
i
,v
k
)
hoc bi
e
j
=(i,k)
Mt lin kt gi l i ti mt nt nu nt l mt trong hai im
cui ca lin kt. Nt i v k gi l k nhau nu tn ti mt lin kt (i, k)
gia chng. Nhng nt nh vy c xem l cc nt lng ging.
Bc ca nt l s lng lin kt i ti nt hay l s lng nt lng
ging. Hai khi nim trn l tng ng nhau trong cc graph thng
thng. Tuy nhin vi cc graph c nhiu hn mt lin kt gia cng
mt cp nt, th hai khi nim trn l khng tng ng. Trong
trng hp , bc ca mt nt c nh ngha l s lng lin kt
i ti nt .
Mt lin kt c th c hai hng. Khi th t ca cc nt l khng c
nghi. Ngc li th t cc nt c ngha. Trong trng hp th t
cc nt c ngha, mt lin kt c th c xem nh l mt cung v
c nh ngha
a
j
=[v
i
,v
k
]
hoc n gin hn
a
j
=[i,k]
k c gi l cn k hng ra i vi i nu mt cung [i,k] tn ti v
bc hng ra ca i l s lng cc cung nh vy. Khi nim cn k
hng vo v bc cn k hng vo cng c nh ngha tng
t.
Mt graph gi l mt mng nu cc lin kt v cc nt c mt trong
lin kt c cc thuc tnh (chng hn nh di, dung lng, loi...).
Cc mng c s dng m hnh cc vn cn quan tm trong
truyn thng, cc thuc tnh ring bit ca nt v lin kt th lin quan
n cc vn c th trong truyn thng.
S khc nhau gia cc lin kt v cc cung l rt quan trng c v
vic lp m hnh cho mng ln qu trnh hot ng bn trong ca cc
thut ton, v vy s khc nhau cn phi lun c phn bit r rng.
V mt hnh hc cc lin kt l cc ng thng kt ni cc cp nt
cn cc cung l cc ng thng c mi tn mt u, biu din
chiu ca cung.
Mt graph c cc lin kt gi l graph v hng, tuy nhin mt
graph c cc cung gi l graph hu hng. Mt graph hu hng
c th c c cc lin kt v hng. Thng thng , cc graph c
gi s l v hng, hoc s phn bit l khng c ngha.
C th c kh nng xy ra hin tng xut hin nhiu hn mt lin kt
gia cng mt cp nt (iu ny tng ng vi vic c nhiu knh
thng tin gia hai chuyn mch). Nhng lin kt nh vy c gi l
55
cc lin kt song song. Mt graph c lin kt song song gi l mt
multigraph.
Cng c kh nng xut hin cc lin kt gia mt nt no v chnh
nt . Nhng lin kt c gi l cc self loop. Chng t khi xut
hin v thng xut hin do vic xem hai nt nh l mt nt trong qu
trnh lp m hnh graph cho mt mng hoc pht sinh trong qu trnh
thc hin mt thut ton c vic hp nht cc nt. Hnh 4.2 minh ho
mt graph c cc lin kt song song v cc self loop. Mt graph khng
c cc lin kt song song hoc cc self loop gi l mt graph n
gin. Vic biu din v vn dng cc graph n gin l tng i d
dng, v vy gi thit rng cc graph c xem xt l cc graph n
gin. Nu c s khc bit vi gi thit ny, chng s c ch ra.
5.2. Cc m hnh nh tuyn qung b (broadcast routing)
5.2.1. Lan trn gi (flooding)
Mt dng mnh hn ca nh tuyn ring bit l lan trn gi. Trong
phng thc ny, mi gi i n router s c gi i trn tt c cc
ng ra tr ng m n i n. Phng thc lan trn gi ny hin
nhin l to ra rt nhiu gi sao chp (duplicate). Trn thc t, s gi
ny l khng xc nh tr khi thc hin mt s bin php hn ch
qu trnh ny.
Mt trong nhng bin php l s dng b m bc nhy trong
phn tiu ca mi gi. Gi tr ny s b gim i mt ti mi bc
nhy. Gi s b loi b khi b m t gi tr khng. V mt l tng,
b m bc nhy s c gi tr ban u tng ng vi di t
ngun n ch. Nu nh ngi gi khng bit di ca ng i,
n c th t gi tr ban u ca b m cho trng hp xu nht. Khi
gi tr ban u s c t bng ng knh ca mng con.
Mt k thut khc ngn s lan trn gi l thm s th t vo tiu
cc gi. Mi router s cn c mt danh sach theo nt ngun ch ra
nhng s th t t ngun c xem xt. trnh danh sch
pht trin khng gii hn, mi danh sch s tng ln bi s m k
ch ra rng tt c cc s th t n k c xem. Khi mt gi i ti,
rt d dng c th kim tra c gi l bn sao hay khng. Nu ng
gi l bn sao th gi ny s b loi b.
Lan trn gi c u im l lan trn gi lun lun chn ng ngn
nht. C c u im ny l do v phng din l thuyt n chn tt
c cc ng c th do n s chn c ng ngn nht. Tuy
nhin nhc im ca n l s lng gi gi trong mng qu nhiu.
S dng lan trn gi trong hu ht cc ng dng l khng thc t.
Tuy vy lan trn gi c th s dng trong nhng ng dng sau.
Trong ng dng qun s, mng s dng phng thc lan trn
gi gi cho mng lun lun hot ng tt khi i mt vi
qun ch.
56
Trong nhng ng dng c s d liu phn b, i khi cn thit
phi cp nht tt c c s d liu. Trong trng hp s
dng lan trn gi l cn thit. V d s dng lan trn gi gi
cp nht bn nh tuyn bi v cp nht khng da trn
chnh xc ca bng nh tuyn.
Phng php lan trn gi c th c dng nh l n v
so snh phng thc nh tuyn khc. Lan trn gi lun lun
chn ng ngn nht. iu dn n khng c gii thut
no c th tm c tr ngn hn.
Mt bin i ca phng php lan trn gi l lan trn gi c chn lc.
Trong gii thut ny, router ch gi gi i ra trn cc ng m i theo
hng ch. iu c ngha l khng gi gi n nhng ng m
r rang nm trn hng sai.
5.2.2. nh tuyn bc ngu nhin (random walk)
Trong phng php nh tuyn ny, router s chuyn gi i n trn
mt ng u ra c chn mt cch ngu nhin. Mc tiu ca
phng php ny l cc gi lang thang trong mng cui cng cng
n ch. Vi phng php ny gip cho qu trnh cn bng ti gia
cc ng. Cng ging nh phng php nh tuyn lan trn gi,
phng php ny lun m bo l gi cui cng s n ch. So vi
phng php trc th s nhn rng gi trong mng s t hn. Nhc
im ca phng php ny l ng t ngun n ch c th di
hn ng ngn nht. Do tr ng truyn s di hn s tr ngn
nht thc s tn ti trong mng.
5.2.3. nh tuyn khoai ty nng (hot potato)
nh tuyn ring bit l loi nh tuyn m router quyt nh tuyn i
ch da vo thng tin bn thn n lm lt c.
y l mt thut ton tng thch ring bit (isolated adaptive
algorithm). Khi mt gi n mt nt, router s c gng chuyn gi i
cng nhanh cng tt bng cch cho n vo hng ch u ra ngn
nht. Ni cch khc, khi c gi i n router s tnh ton s gi c
nm ch truyn tren mi ng u ra. Sau n s gn gi mi
vo cui hng ch ngn nht m khng quan tm n ng s i
u. Hnh 5-1 biu din cc hng ch u ra bn trong mt router ti
mt thi im no . C ba hng ch u ra tng ng vi 03
ng ra. Cc gi ang xp hng trn mi ng ch c truyn
i. Trong v d y, hng ch n F l hng ch ngn nht vi ch
c mt gi nm trn hng ch ny. Giu thut khoai ty nng do s
t gi mi n vo hng ch ny.
57
Hnh 5-1. Hng ch bn trong router
C th bin i tng ny mt cht bng cch kt hp nh tuyn
tnh vi gii thut khoai ty nng. Khi gi i n, router s tnh n c
nhng trng s tnh ca ng dy v di hng ch. Mt kh nng
l s dng la chn tnh tt nht tr khi di hng ch ln hn mt
ngng no . Mt kh nng khc l s dng di hng ch ngn
nht tr trng s tnh ca n l qu thp. Cn mt cch khc l sp
xp cc ng theo trng s tnh ca n v sau li sp xp theo
di hng ch ca n. Sau s chn ng c tng v tr sp xp l
nh nht. D gii thut no c chn i chng na cng c c tnh
l khi t ti th ng c trng s cao nht s c chn, nhng s
lm cho hng ch cho ng ny tng ln. Sau mt s lu lng
s c chuyn sang ng t ti hn.
5.2.4. nh tuyn ngun (source routing) v m hnh cy (spanning tree)
Chng ta s xt mt s thut ton c bn dng cho vic tm kim cc
cy c s dng thit k v phn tch mng. Mt cy l mt graph
khng c cc vng; bt k mt cp nt no cng ch c duy nht mt
ng i. y ch yu xem xt cc graph v hng, nhng graph
c cc lin kt c s dng c hai chiu trong qu trnh to ra cc
ng i.
V mt s l do, cc cy rt hu dng v c s dng nh l graph
c bn cho cc thut ton v cc k thut phn tch v thit k mng.
Th nht, cc cy l mng ti thiu; cung cp mt s kt ni m khng
mt lin kt no l khng cn thit. Th hai, do vic ch cung cp duy
nht mt ng i gia mt cp nt bt k, cc cy gii quyt cc vn
v nh tuyn (ngha l quyt nh vic chuyn lu lng gia hai
nt). iu lm n gin mng v dng ca n. Tuy nhin, v cc
cy lin thng ti thiu nn cng n gin v c tin cy ti thiu.
l nguyn nhn ti sao cc mng thc t thng c tnh lin thng cao
hn. Chnh v vy, vic thit k mt mng thng bt u bng mt
cy.
5.2.5. Duyt cy
Cho trc mt cy no , chng ta c th i ti mi nt ca n. Qu
trnh gi l mt qu trnh duyt cy. Trong qu trnh thc hin, cc
cnh trong cy c duyt hai ln, mi ln theo mt hng khc
58
nhau. C nhiu cch duyt khc nhau. u tin, ch ra mt nt ca cy
lm nt gc. Vic duyt c thc hin xoay quanh nt . C mt s
iu kin la chn nt gc ny (chng hn nt gc l mt khu vc
my tnh trung tm). Ngoi ra, nt gc c th c chn mt cch
ngu nhin.
Gi s nt A trong hnh 4.1 l nt gc ca cy. T A chng ta c th
ln lt i ti cc nt k cn ca n nh l B, C hoc D. Sau , li i
theo cc nt k cn ca chng (B, C v D) l E, F, G v H. Tip tc i
ti ln lt cc nt k cn khc bn cnh cc nt ny. Khi , vic
duyt ny s kt thc khi ti cc nt I, J, K v L. Qu trnh ny c
gi l tm kim theo chiu rng. Trong qu trnh tm kim theo chiu
rng mt c im cn ch l nhng nt gn nt gc nht s c
ti trc. Vic tm kim s thc hin theo mi hng cng lc. iu
i khi c ch v c thc hin d dng.
Mt thut ton nhm i ti mi nt ca cy th c gi l thut ton
duyt cy. Thut ton sau y, Bfstree, thc hin mt qu trnh tm
kim theo chiu rng. (Chng ta quy c rng, cc tn hm c k t
u tin l k t hoa phn bit chng vi cc tn bin). Bfstree
s s dng mt danh sch k cn n_adj_list, danh sch ny lit k
tt c cc nt k cn ca mi nt thuc cy. n gin hn, gi s
rng cy ny l mt cy hu hng hng ra nhn t gc v do
n_adj_list s ch bao gm cc nt k cn vi mt nt no m
cc nt k cn xa gc hn so vi nt ang xt.
Hnh 5-2. Duyt cy
void <-BfsTree ( n, root, n_adj_list ):
59
dcl n_adj_list [n, list ]
scan_queue [queue ]
InitializeQueue (scan_queue )
Enqueue( root, scan_queue )
while (NotEmpty(scan_queue))
node <- Dequeue (scan_queue)
Visit(node )
for each (neighbor , n_adj_list [node ])
Enqueue(neighbor, scan_queue)
Visit l mt th tc trong thc hin mt s qu trnh no i vi
mi nt (chng hn nh in ln mn hnh cc thng tin ca mi nt .v.v).
Thut ton ny c thc hin cng mt hng i. Hng i l mt
FIFO; trong cc phn t c thm vo t pha sau hng i v
chuyn ra t pha trc. Cc th tc InitializeQueue, Enqueue,
Dequeue, NotEmpty lm vic trn cc hng i. InitializeQueue
thit lp mt hng i rng. Enqueue, Dequeue l cc th tc thm
mt phn t vo cui hng i v chuyn mt phn t ra t u
hng i. Hm NotEmpty tr v TRUE hoc FALSE tu thuc vo
hng i c rng hay khng.
n_adj_list l mt chui m mi phn t ca chui l mt danh
sch. n_adj_list[n] l mt danh sch cc nt k cn nt n. Nh
ni chng trc, for_each(element, list), l mt cu
trc iu khin thc hin vng lp i vi tt c cc phn t ca list
v thc hin cc m bn trong vng lp, trong vng lp cc phn
t ca list ln lt c s dng. Th tc trn hot ng vi gi thit
l n_adj_list c thit lp trc khi th tc BfsTree c gi.
Tng t, ta c th nh ngha mt qu trnh tm kim theo chiu su.
Qu trnh ny cng bt u t nt gc. Qu trnh duyt tip tc thc
hin nt lng ging cha c duyt ca nt va mi c duyt. Ta
cng gi s rng cy bao gm cc lin kt c hng i ra xa nt gc.
V d 4.1:
Tr li vi graph trong hnh 4.1, ta c th ti nt B t nt A. Sau , ta
ti nt E, k cn vi nt B-nt c duyt gn thi im hin ti nht.
Nt E ny khng c nt k cn cha duyt no, do vy ta phi quay
tr li nt B i sang nt F. Ta tip tc i ti cc nt I, J, K (cng vi
vic quay li nt I), v nt L. Sau ta quay tr v nt A, tip tc ti
cc nt cn li l C, D, G v H. Do vy, ton b qu trnh duyt l:
A, B, E, F, I, J, K, L, C, D, G, H
Nh rng th t ca qu trnh duyt l khng duy nht. Trong qu
trnh duyt trn ta chn cc nt k cn xm nhp theo th t t tri
qua phi. Nu chn theo th t khc, qu trnh duyt l:
A, B, F, I, J, K, L, E, D, H, G, C
60
Trt t thc t ca qu trnh duyt ph thuc vo tng thut ton c
th. iu ny cng ng vi mt qu trnh tm kim theo chiu rng.
Kim tra thut ton BfsTree, trt t ny l mt hm ca trt t cc
nt cn k trong n_adj_list.
Thut ton DfsTree sau s thc hin mt qu trnh tm kim theo
chiu su.
void <- DfsTree(n, root, n_adj_list):
dcl n_adj_list [n, list]
Visit(root)
for each(neighbor, n_adj_list[node])
DfsTree(n, neighbor, n_adj-list)
Qu trnh tm kim ny s c thc hin vi s tr gip ca mt
ngn xp theo kiu LIFO, ngha l phn t c thm vo v chuyn
ra t nh ngn xp. Trong trng hp ny, chng ta thng gi
quy DfsTree, thc t chng ta s dng ngn xp h thng, ngha
l s dng loi ngn xp m h thng s dng lu gi cc li gi
hm v i s.
C hai loi duyt trnh by trn u l qu trnh duyt thun (ngha l
cc qu trnh ny duyt mt nt ri sau duyt ti nt tip theo ca
nt ). Qu trnh duyt ngc i khi cng rt cn thit, trong qu
trnh duyt ngc mt nt c duyt sau khi duyt nt tip ca
nt . D nhin, cng c th thnh lp mt danh sch thun v sau
o ngc danh sch . Cng c th thay th trt t tm kim mt
cch trc tip nh th tc sau:
void <- PostorderDfsTree(n, root, n_adj_list):
dcl n_adj_list [n, list]
for each(neighbor, n_adj_list[node])
PostorderDfsTree(n, neighbor,
n_adj_list)
Visit (root)
Cc thnh phn lin thng trong cc graph v hng
Ta c th p dng khi nim duyt cc nt vo mt graph v hng,
n gin ch bng cch theo di cc nt c duyt v sau
khng duyt cc nt na.
C th duyt mt graph v hng nh sau:
void <- Dfs(n, root, n_adj_list):
dcl n_adj_list [n, list]
visited [n]
void <- DfsLoop (node)
61
if (not(visited [node])
visited [node]<-TRUE
visit [node]
for each(neighbor, n_adj_list[node])
DfsLoop (neighbor)
visited <-FALSE
DfsLoop (root)
Ch rng cu lnh
Visited <-FALSE
khi to ton b cc phn t mng c duyt bng FALSE. Cng
cn ch rng th tc DfsLoop c nh ngha bn trong th tc
Dfs nn DfsLoop c th truy cp ti visited v n_adj_list (Lu
rng cch d nht c cc gi m cho cc hm c dng hm Dfs
trn l trc tin hy c thn ca hm chnh ri quay tr li c thn
ca cc hm nhng nh hm DfsLoop).
Ch rng trong qu trnh duyt chng ta ngm kim tra tt c cc
cnh trong graph, mt ln cho mi u cui ca mi cnh. C th, vi
mi cnh (i, j) ca graph th j l mt phn t ca n_adj_list[i] v i
l mt thnh phn trong n_adj_list[j]. Thc t, c th a chnh
cc cnh vo cc danh sch k cn ca n v sau tm nt
im cui khc ca cnh bng hm:
node <- OtherEnd(node1, edge)
Hm ny s tr v mt im cui ca edge khc vi node1. iu
lm phc tp qu trnh thc hin i cht. C th d dng thy rng
phc tp ca cc thut ton duyt cy ny bng O(E), vi E l s
lng cnh trong graph.
By gi chng ta c th tm c cc thnh phn lin thng ca mt
graph v hng bng cch duyt mi thnh phn. Chng ta s nh
du mi nt bng mt ch s thnh phn khi chng ta tin hnh. Cc
bin n_component s theo di bt k thnh phn no m chng ta i
ti
void <- LabelComponent (n, n_adj_list):
dcl n_component_number [n],
n_adj_list[n,list]
void <- Visit [node]
n_component_number [node]<- ncomponents
n_component_number<-0
ncomponent<-0
for each(node, node_set)
if (n_component_number [node]=0)
ncomponent +=1
Dfs (node, n_adj_list)
62
Chng ta nh nghi mt hm Visit thit lp mt ch s thnh
phn cc nt c duyt. Hm ny nm bn trong th tc
LabelComponent v ch c th c gi t trong th tc . Mt
khc, Dfs cn c nh ngha bn ngoi, v th n c th c gi
t bt k u.
Trong khi thc hin qu trnh duyt theo chiu rng v chiu su mt
graph v hng, nhng cnh ni mt nt vi mt nt lng ging cha
duyt trc khi duyt nt to ra mt cy, nu graph l khng lin
thng th to ra mt rng.
Hnh 5-3. Cc thnh phn
Hnh 5-3 biu din mt graph c 4 thnh phn. Gi s vng trn tp
cc nt i theo tun t alphabet, cc thnh phn c nh s theo
trt t cc nt c ch ci "thp nht" v ch s thnh phn c biu
din bn cnh nt.
Vi mi thnh phn, thut ton trn s gi Dfs kim tra thnh phn
. Trong , thut ton cng kim tra cc cnh, mi cnh mt ln. V
th, phc tp ca n c bc bng bc ca tng s cc nt cng vi
s cc cnh trong tt c cc thnh phn (ngha l phc tp ca
thut ton bng O(N+E)).
Cy bc cu ti thiu (Minimum Spanning Tree)
C th s dng Dfs tm mt cy bc cu nu c mt cy bc cu
tn ti. Cy tm c thng l cy v hng. Vic tm cy "tt nht"
thng rt quan trng . Chnh v vy, chng ta c th gn mt " di"
cho mi cnh trong graph v t ra yu cu tm mt cy c di ti
thiu. Thc t, " di" c th l khong cch, gi, hoc l mt i
lng nh gi tr hoc tin cy. Mt cy c tng gi l ti thiu
c gi l cy bc cu ti thiu.
Ni chung, nu graph l mt graph khng lin thng, chng ta c th
tm c mt rng bc cu ti thiu. Mt rng bc cu ti thiu l mt
tp hp cc cnh ni n graph mt cch ti a c tng di l ti
thiu. Bi ton ny c th c xem nh l vic la chn mt graph
63
con ca graph gc cha tt c cc nt ca graph gc v cc cnh
c la chn. u tin, to mt graph c n nt, n thnh phn v
khng c cnh no c. Mi ln, chng ta chn mt cnh thm vo
graph ny hai thnh phn lin thng trc cha c kt ni c
lin kt li vi nhau to ra mt thnh phn lin thng mi (ch khng
chn cc cnh thm vo mt thnh phn lin thng trc v to ra
mt vng). V vy, ti bt k giai on no ca thut ton, quan h:
n=c+e
lun c duy tr, y n l s lng nt trong graph, e l s cnh
c la chn tnh cho ti thi im xt v c l s lng thnh phn
trong graph tnh cho ti thi im xt. cui thut ton, e bng n tr
i s thnh phn trong graph gc; nu graph gc l lin thng, chng
ta s tm c mt cy c (n-1) cnh. Nh gii thch trn, Dfs s
tm ra mt rng bc cu. Tuy nhin, chng ta thng khng tm c
cy bc cu c tng di ti thiu.
Thut ton "hu n"
Mt cch tip cn kh d tm mt cy c tng di ti thiu l,
mi giai on ca thut ton, la chn cnh ngn nht c th. Thut
ton gi l thut ton "hu n". Thut ton ny c tnh cht "thin
cn" ngha l khng lng trc c cc kt qu cui cng do cc
quyt nh m chng a ra mi bc gy ra. Thay vo , chng
ch a ra cch chn tt nht cho mi qu trnh la chn. Ni chung,
thut ton "hu n" khng tm c li gii ti u cho mt bi ton.
Thc t thut ton thm ch cn khng tm c mt li gii kh thi
ngay c khi li gii tn ti. Tuy nhin chng hiu qu v d thc
hin. Chnh v vy chng c s dng rng ri. Cc thut ton ny
cng thng to c s cho cc thut ton c tnh hiu qu v phc
tp hn.
V th, cu hi u tin t ra khi xem xt vic ng dng mt thut
ton gii quyt mt bi ton l liu bi ton y c hay khng cu
trc no m bo cho thut ton hot ng tt. Hy vng rng thut
ton t ra cng m bo c mt li gii kh thi nu li gii tn ti.
Khi , n s m bo tnh ti u v m bo yu cu no v thi
gian thc hin. Bi ton tm cc cy bc cu ti thiu thc s c mt
cu trc mnh cho php thut ton "hu n" m bo c tnh ti u
cng nh m bo phc tp tnh ton mc va phi.
Dng chung ca thut ton "hu n" l:
Bt u bng mt li gii rng s.
Trong khi vn cn c cc phn t cn xt,
Tm e, phn t "tt nht" vn cha xt
Nu vic thm e vo s l kh thi th e c thm vo s, nu vic
thm khng kh thi th loi b e.
64
Cc yu cu cc kh nng sau:
So snh gi tr ca cc phn t xc nh phn t no l "tt
nht"
Kim tra tnh kh thi ca mt tp cc phn t
Khi nim "tt nht" lin quan n mc ch ca bi ton. Nu mc
ch l ti thiu, "tt nht" ngha l b nht. Ngc li, "tt nht" ngha
l ln nht.
Thng thng, mi gi tr gn lin vi mt phn t, v gi tr gn lin
vi mt tp n gin ch l tng cc gi tr i cng ca cc phn t
trong tp . l trng hp cho bi ton cy bc cu ti thiu c
xt trong phn ny. Tuy nhin, khng phi l trng hp chung.
Chng hn, thay cho vic ti thiu tng di ca tt c cc cnh
trong mt cy, mc ch ca bi ton l ti thiu ho di cc cnh
di nht trong cy. Trong trng hp , gi tr ca mt cnh l di
ca cnh v gi tr ca mt tp s l di ca cnh di nht nm
trong tp.
Mun tm c cnh "tt nht" b sung, hy nh gi cc cnh
theo nh hng v gi tr ca n ti gi tr ca tp. Gi s V(S) l
gi tr ca tp S v v(e,S) l gi tr ca mt phn t e th v(e,S) c quan
h vi tp S bi cng thc
v(e,S)= V(S e) - V(S)
Trong trng hp ti thiu di ca cnh di nht trong mt cy.
v(e,S) bng 0 i vi bt k cnh no khng di hn cnh di nht
c chn. Ngc li, n s bng hiu di gia cnh vi cnh di
nht c chn, khi hiu ln hn 0.
Trong trng hp chung, gi tr ca tp c th thay i mt cch ngu
nhin khi cc phn t c b sung vo n. Chng ta c th gn gi
tr 1 cho cc tp c s lng phn t l chn v 2 cho cc tp c s
lng phn t l l. iu lm cho cc gi tr ca cc phn t ch l
mt trong hai gi tr +1 v -1. Trong trng hp ny, thut ton "hu
n" khng c s dng. By gi gi s rng "trng lng" ca mt
tp bin i theo mt cch hp l hn th khi , s c mt c s hp
l hn cho vic ch ra phn t "tt nht". Mt iu quan trng cn ch
l, khi tp ln ln, gi tr ca phn t m trc khng c xem
xt c th thay i do cc phn t thm vo tp . Khi iu ny xy
ra, thut ton "hu n" c th mc li trong cc la chn ca n v s
nh hng ti cht lng ca li gii m chng ta nhn c.
Tng t, trong hu ht cc trng hp, tnh kh thi c th b nh
hng mt cch ngu nhin do s b sung phn t. Chnh v vy,
trong cc bi ton m nhng tp c s lng phn t chn c th
c xem l kh thi v nhng tp c s phn t l l c th c xem
l khng kh thi th thut ton "hu n" hoc bt k thut ton no c
b sung cc phn t, mi ln mt phn t, s khng hot ng. V vy
chng ta s gi thit cc tnh cht sau, nhng tnh cht ny lun c
duy tr trong mi trng hp xem xt:
Tnh cht 1:
65
Bt k mt tp con no ca mt tp kh thi th cng kh thi, c bit
tp rng cng l mt tp kh thi.
Ngoi ra gi thit rng phc tp ca thut ton tnh ton gi tr
ca mt tp v kim tra s kh thi ca chng l va phi, c bit, khi
phc tp ny l mt a thc ca s nt v cnh trong graph.
list<-Greedy (properties)
dcl properties [list, list]
candidate_set[list]
solution[list]
void<-GreedyLoop ( *candidate_set,
*solution)
dcl test_set[list],solution[list],
candidate_set[list]
element <-
SelectBestElement(candidate_set)
test_set <-Append(element,solution)
if(Test(test_set))
solution<-test_set
candidate_set<-
Delete(element,candidate_set)
if(not(Empty(candidate_set)))
Greedy_loop(*candidate_set,
*solution)
candidate_set<-ElementsOf(properties)
solution<-
if(!(Empty(element_set)))
GreedyLoop(*candidate_set, *solution)
return(solution)
By gi ta c th xem xt su hn cc cu lnh ca thut ton "hu
n". Cc cu lnh ca thut ton hi kh hiu v chng da trn nh
ngha ca hai hm, Test v SelestBestElement (l hm kim tra
tnh kh thi v nh gi cc tp). Chng ta cng gi s rng c mt
cu trc properties, l mt danh sch ca cc danh sch cha tt c
cc thng tin cn thit kim tra v nh gi tt c cc tp. Mt danh
sch ca cc danh sch n gin ch l mt danh sch lin kt, m
mi thnh vin ca n l mt danh sch. Thm ch cu trc c th
c lng vo nhau su hn, ngha l c cc danh sch nm bn
trong cc danh sch nm bn trong cc danh sch. Cu trc nh vy
tng i ph bin v c th c s dng biu din hu ht cc
kiu thng tin. C th lu gi di, loi lin kt, dung lng, hoc
a ch. Bn thn cc mc thng tin ny c th l mt cu trc phc
tp; ngha l cu trc c th lu gi gi v cc dung lng ca mt
vi loi knh khc nhau cho mi lin kt.
66
Trn thc t, iu rt c ch cho vic duy tr cc cu trc d liu tr
gip cho php thut ton thc hin hiu qu hn. Bi ton v cy
bc cu ti thiu l mt v d. Tuy nhin, r rng, gi s rng tt c
qu trnh tnh ton c thc hin trn mt cu trc properties sn c
( c khi to). c s dng biu din tp rng. Append v
Delete l cc hm b sung v chuyn i mt phn t khi mt danh
sch. ElementsOf ch n gin ch ra cc phn t ca mt danh
sch; v vy, ban u tt c cc phn t trong properties l cc ng
c. C rt nhiu cch thc hin cc qu trnh ny. properties c th
l mt dy v cc hm Append, Delete v ElementsOf c th hot
ng vi cc danh sch ch s (danh sch m cc phn t l cc ch
s mng). Trong thc t cch thc hin c chn l cch lm sao
cho vic thc hin cc hm Test v SelectBestElement l tt
nht.
on gi m trn gi thit rng thut ton "hu n" s dng li khi
khng cn phn t no xem xt. Trong thc t, c nhiu nguyn
nhn thut ton dng li. Mt trong nhng nguyn nhn l khi kt
qu xu i khi cc phn t c tip tc thm vo. iu nay xy ra khi
tt c cc phn t cn li u mang gi tr m trong khi chng ta ang
c tm cho mt gi tr ti a. Mt nguyn nhn khc l khi bit rng
khng cn phn t no trong tp ng c c kh nng kt hp vi
cc phn t va c chn to ra mt li gii kh thi. iu ny xy ra
khi mt cy bc cu ton b cc nt c tm thy.
Gi s rng thut ton dng li khi iu l hp l, cn nu khng,
cc phn t khng lin quan s b loi ra khi li gii.
Gi thit rng, cc li gii cho mt bi ton tho mn tnh cht 1 v gi
tr ca tp n gin ch l tng cc gi tr ca cc phn t trong tp.
Ngoi ra, gi thit thm rng tnh cht sau c tho mn:
Tnh cht 2:
Nu hai tp Sp v Sp+1 ln lt c p v p+1 phn t l cc li gii v
tn ti mt phn t e thuc tp Sp+1 nhng khng thuc tp Sp th
Sp{e} l mt li gii.
Chng ta thy rng, cc cnh ca cc rng tho mn tnh cht 2,
ngha l nu c hai rng, mt c p cnh v rng kia c p+1 th lun
tm c mt cnh thuc tp ln hn m vic thm cnh vo tp
nh hn khng to ra mt chu trnh.
Mt tp cc li gii tho mn cc tnh cht trn gi l mt matroid. nh
l sau y l rt quan trng (chng ta ch tha nhn ch khng chng
minh).
nh l 4.1
Thut ton hu n m bo m mt li gii ti u cho mt bi
ton khi v ch khi cc li gii to ra mt matroid.
67
C th thy rng, tnh cht 1 v tnh cht 2 l iu kin cn v
m bo tnh ti u ca thut ton hu n . Nu c mt li gii cho
mt bi ton no m n tho mn hai tnh cht 1 v 2 th cch n
gin nht l dng thut ton hu n gii quyt n. iu ng
vi mt cy bc cu.
Sau y l mt nh l khng km phn quan trng.
nh l 4.2
Nu cc li gii kh thi cho mt bi ton no to ra mt
matroid th tt c cc tp kh thi ti a c s lng phn t nh
nhau.
Trong , mt tp kh thi ti a l mt tp m khi thm cc phn t
vo th tnh kh thi ca n khng c bo ton; N khng nht thit
phi c s lng phn t ti a cng nh khng nht thit phi c
trng lng ln nht.
nh l o ca nh l trn cng c th ng nghi l nu tnh cht 1
c tho mn v mi tp kh thi ti a c cng s lng phn t, th
tnh cht 2 c tho mn.
nh l 4.2 cho php chng ta chuyn i mt bi ton ti thiu P
thnh mt bi ton ti a P' bng cch thay i cc gi tr ca cc phn
t. Gi thit rng tt c v(xj) trong P c gi tr m. Li gii ti u cho
bi ton P c s lng phn t ti a l m th chng ta c th to ra
mt bi ton ti a P' t P bng cch thit lp cc gi tr ca cc phn
t trong P' thnh -v(xj). Tt c cc phn t u c gi tr dng v P'
c mt li gii ti u cha m phn t. Thc ra, th t ca cc li gii
ti a phi c o li: li gii c gi tr ti a trong P' cng l li gii
c gi tr ti thiu trong P.
Gi s lc nay ta cn tm mt li gii c gi tr ti thiu, tun theo iu
kin l c s lng ti a cc phn t. S tnh c cc phn t c gi tr
dng. C th gii quyt bi ton P nh l mt bi ton ti a P' bng
cch thit lp cc gi tr ca cc phn t thnh B-v(xj) vi B c gi tr
ln hn gi tr ln nht ca xj. Khi cc gi tr trong P' u dng v
P' l mt li gii ti u c m phn t. Th t ca tt c cc tp kh thi
ti a b o ngc: mt tp c gi tr l V trong P th c gi tr l
mB-V trong li gii P'. Mt gi tr ti a trong P' th c gi tr ti thiu
trong P. Quy tc ny cng ng vi cc cy bc cu tho mn tnh
cht 1 v tnh cht 2 v c th tm mt cy bc cu ti thiu bng cch
s dng mt thut ton hu n.
Thut ton Kruskal
Thut ton Kruskal l mt thut ton hu n c s dng tm
mt cy bc cu ti thiu. Tnh ng n ca thut ton da trn cc
nh l sau:
nh l 4.3
68
Cc rng th tho mn tnh cht 1 v 2.
Nh chng ta bit, mt rng l mt tp hp cc cnh m tp hp
khng cha cc chu trnh. R rng l bt k mt tp con cc cnh
no ca mt rng (thm ch c tp rng) cng l mt rng, v vy tnh
cht 1 c tho mn.
thy rng tnh cht 2 cng tho mn, xt mt graph c biu din
trong hnh 4.4.
Hnh 4.3.
Gi s c mt rng F1 c p cnh. Rng {2,4} l mt v d vi p=2, v
n c biu din bng nt t trong hnh 4.4. Khi xt mt rng
khc F2 c p+1 cnh. C hai trng hp c xt.
Trng hp 1: F2 i ti mt nt n, nhng F1 khng i ti nt . Mt
v d ca trng hp ny l rng {1, 4, 6}, rng ny i ti E cn F1 th
khng. Trong trng hp ny, c th to ra rng {2, 4, 6} bng cch
thm cnh 6 vo rng {2,4}.
Trng hp 2: F2 ch i ti cc nt m F1 i ti. Mt v d ca trng
hp ny l rng {1. 4. 5}. Xt S, mt tp cc nt m F1 i ti. Cho
rng c k nt trong tp S. V F1 l mt rng nn mi cnh trong F1
gim s lng thnh phn trong S i mt, do tng s lng thnh
phn l k-p. Tng t, F2 to ra k-(p+1) thnh phn t S (s lng
thnh phn va ni b hn vi s lng thnh phn ca F1). V vy,
mt cnh tn ti trong F2 m cc im cui ca n nm cc thnh
phn khc nhau trong F1 th c th thm cnh vo F1 m khng
to ra mt chu trnh. Cnh 3 l mt cnh c tnh cht trong v d
ny (cnh 1 v 5 cng l nhng cnh nh vy).
V th, chng ta thy rng nu tnh cht 1 v 2 c tho mn th mt
thut ton hu n c th tm c mt li gii ti u cho c bi ton
cy bc cu ti thiu ln bi ton cy bc cu ti a. Ch rng mt
cy bc cu l mt rng c s cnh ti a N-1 cnh vi N l s nt
trong mng. Sau y chng ta s xt bi ton ti thiu.
69
Thut ton Kruskal thc hin vic sp xp cc cnh vi cnh u tin
l cnh ngn nht v tip theo chn tt c cc cnh m nhng cnh
ny khng cng vi cc cnh c la chn trc to ra cc chu
trnh. Chnh v th, vic thc hin thut ton n gin l:
list <- kruskal_l( n, m, lengths )
dcl length[m], permutation[m],
solution[list]
permution <- VectorSort( n , lengths )
solution <-
for each ( edge , permutation )
if ( Test(edge , solution ) )
solution <- Append ( edge , solution )
return( solution )
VectorSort c u vo l mt vector c di l n v kt qu tr v
l th t sp xp cc s nguyn t 1 ti n. S sp xp gi cho gi
tr tng ng trong vector theo th t tng dn.
V d 4.2:
Gi s rng n= 5 v gi tr ca mt vector l
31, 19, 42, 66, 27
VectorSort s tr v th t sp xp nh sau:
2, 5, 1, 3, 4
Test nhn mt danh sch cc cnh v tr v gi tr TRUE nu cc
cnh khng cha mt chu trnh. V Test c gi cho mi nt, s
hiu qu ca ton b thut ton tu thuc vo tnh hiu qu ca vic
thc hin Test. Nu mi khi cc cnh c thm vo cy, chng ta
theo di c cc nt ca cnh thuc cc thnh phn no th Test tr
nn n gin; n gin ch l vic kim tra xem cc nt cui ca
cc cnh ang c xt c cng mt thnh phn khng. Nu cng,
cnh s to ra mt chu trnh. Ngc li, cnh khng to nn chu
trnh.
Tip l xem xt vic duy tr cu trc thnh phn. C mt s cch
tip cn. Mt trong cc cch l mi nt duy tr mt con tr n
mt nt khc trong cng mt thnh phn v c mt nt mi thnh
phn gi l nt gc ca thnh phn th tr vo chnh n. V th lc u,
bn thn mi nt l mt thnh phn v n tr vo chnh n. Khi mt
cnh c thm vo gia hai nt i v j, tr i ti j. Sau , khi mt cnh
c thm vo gia mt nt i trong mt thnh phn c nt gc l k v
mt nt j trong mt thnh phn c nt gc l l th tr k ti l. V vy,
chng ta c th kim tra mt cnh bng cch da vo cc con tr t
cc nt cui ca n v xem rng chng c dn n cng mt ni hay
70
khng. Chui cc con tr cng ngn, vic kim tra cng d dng.
Nhm gi cho cc chui cc con tr ngn, Tarjan gi nn lm gn
cc chui khi chng c duyt trong qu trnh kim tra. C th, ng
gi mt hm FindComponent c to ra nh sau:
index <- FindComponent(node , *next)
dcl next[]
p=next[node]
q=next[p]
while ( p!=q )
next[node]= q
node = q
p=next[node]
q=next[p]
return (p)
FindComponent tr v nt gc ca thnh phn cha node. Hm ny
cng iu chnh next , nt hng v nt gc cha nt . c bit,
hm ny iu chnh next hng ti im tng cao hn. Tarjan ch ra
rng, bng cch , th lm gn ng i ti nt gc mt cc hon
ton cn hn l khng lm gn mt cht no c v ton b kt qu
trong vic tm kim v cp nht next ch ln hn so vi O(n+m) mt
cht vi n l s lng nt v m l s lng cnh c kim tra.
V d 4.3:
Hnh 5-4. Php tnh Minimum Spanning Tree ( MST)
Xt mt mng c biu din trong hnh 4.4. cc du * trong hnh
c gii thch di y. u tin, sp xp cc cnh v sau ln
lt xem xt tng cnh, bt u t cnh nh nht. V th, chng ta
xem (A, C) l cnh u tin. Gi FindComponent cho nt A ta thy c
p ln q u l A nn FindComponent tr v A nh l nt gc ca
thnh phn cha nt A. Tng t, FindComponent tr v C nh l
nt gc ca thnh phn cha nt C. V th, chng ta mang A v C vo
cy v thit lp next[A] bng C. Sau , xt (B, D). Hm cng thc
71
hin tng t v B, D c thm vo cy, next[B] bng D. Chng ta
xt (C, E), chp nhn n v thit lp next[C] bng E.
By gi, xt (A, E). Trong FindComponent, p l C cn q l E. V th
chng ta chy vo vng lp while , thit lp next[A] bng E v rt
ngn ng i t A ti E vi E l nt gc ca thnh phn cha chng.
Node, p v q c thit lp thnh E v FindComponent tr v E nh
l nt gc ca thnh phn cha nt A. FindComponent cng tr v E
nh l nt gc ca thnh phn cha E. V th, c hai im cui ca (A,
E) l cng mt thnh phn nn (A, E) b loi b.
Tip n, xt (A, B). Trong qu trnh gi FindComponent i vi nt
A, chng ta thy rng p=q=E v next khng thay i. Tng t, qu
trnh gi FindComponent i vi nt B ta c p=q=D. V th, chng
ta thit lp next[E] bng D. Ch rng, chng ta khng thit lp
next[A] bng B, m li thit lp next i vi nt gc ca thnh phn
ca A bng vi nt gc ca thnh phn ca B.
Cui cng, (C, D) c kim tra v b loi b.
Trong hnh 4.4 nhng cnh trong cy bc cu c phn bit bi mt
du * ngay bn cnh cc cnh . Ni dung cc next c ch ra
bng cc cung (cc cnh hu hng) c mi tn. Chng hn,
next[B] bng D c ch ra bng mt mi tn t B ti D. Ch rng,
cc cung c nh ngha bi next to ra mt cy, nhng ni chung
cy khng phi l mt cy bc cu ti thiu. Thc vy, vi trng
hp c mt cung (E, D), ngay c khi cc cung khng cn thit phi
l mt phn graph. V vy, bn thn next ch nh ngha cu trc
thnh phn khi tin hnh thc hin thut ton. Chng ta to mt danh
sch hin cc cnh c chn dnh cho vic bao gp trong cy. Gi
ca cy c nh ngha bi next tng i bng phng, nghi l cc
ng i ti cc nt gc ca cc thnh phn l ngn khin
FindComponent hot ng hiu qu.
Hin nhin, s phc tp ca thut ton Kruskal c quyt nh bi
vic sp xp cc cnh, s sp xp c phc tp l O(m log m).
Nu c th tm c cy bc cu trc khi phi kim tra tt c cc
cnh th chng ta c th ci tin qu trnh bng cch thc hin sp
xp phn on. C th, chng ta c th lu gi cc cnh trong mt
khi (heap) v sau ly ra, kim tra mi cnh cho n khi mt cy
c to ra. Chng ta d dng bit c qu trnh dng vo lc
no; ch n gin l theo di s lng cnh c xt v dng li
khi c n-1 cnh c chp nhn.
Chng ta gi s rng, cc qu trnh qun l khi (heap) nh thit lp,
b xung v ly d liu ra l n gin. iu quan trng cn ch y
l phc tp ca vic thit lp mt khi (heap) c m phn t l O(m),
phc tp ca vic tm phn t b nht l O(1) v phc tp ca
vic khi phc mt khi (heap) sau khi b xung, xo, hoc thay i mt
gi tr l O(logm). Chnh v vy, nu chng ta xt k cnh tm cy bc
cu, phc tp trong vic duy tr mt khi (heap) bng O(m+klogm),
phc tp ny b hn O(mlogm) nu k c bc b hn bc ca m. k
72
ti thiu bng O(n) nn nu graph l kh mng th vic s dng khi
(heap) s khng c li. Nu graph l dy c th vic lu tr c th
c xem xt. y l phin bn cui cng ca thut ton Kruskal,
thut ton ny tn dng cc hiu ng ni trn.
list <- Kruskal_l( n, m, lengths )
dcl length[m], ends[m,2], next[n],
solution[list], l_heap[heap]
for each ( node , n )
next[node]<-node
l_heap <-HeapSet(m, lengths)
#_accept <-0
solution <-
while ( (#_accept < n-1) and
!(HeapEmpty(l_heap))
edge <- HeapPop(*l_heap)
c1=FindComponent(ends[edge,1], *next)
c2=FindComponent(ends[edge,2], *next)
if (c1 !=c2 )
next[c2] <- c1
solution <- Append ( edge , solution )
#_accept=#_accept+1
return( solution )
HeapSet to ra mt khi (heap) da vo cc gi tr cho trc v tr v
chnh khi (heap) . HeapPop tr v ch s ca gi tr nh ca khi
(heap) ch khng phi bn thn gi tr . iu ny c li hn vic tr
v mt gi tr v t ch s lun bit c gi tr c ch s ch t gi
tr khng th bit c ch s ca gi tr . Cng cn ch rng
HeapPop lm khi (heap) thay i. HeapEmpty tr v gi tr TRUE
nu khi (heap) rng. Mng ends cha cc im cui ca cc cnh.
Thut ton Prim
Thut ton ny c nhng u im ring bit, c bit l khi mng dy
c, trong vic xem xt mt bi ton tm kim cc cy bc cu ti thiu
(MST). Hn na cc thut ton phc tp hn c xy dng da vo
cc thut ton MST ny; v mt s cc thut ton ny hot ng tt
hn vi cc cu trc d liu c s dng cho thut ton sau y,
thut ton ny c pht biu bi Prim. Tm li, cc thut ton ny
ph hp vi cc qu trnh thc hin song song bi v cc qu trnh
c thc hin bng cc ton t vector. Thut ton Prim c th c
miu t nh sau:
73
Bt u vi mt nt thuc cy cn tt c cc nt khc khng
thuc cy ( ngoi cy).
Trong khi cn c cc nt khng thuc cy
Tm nt khng thuc cy gn nht so vi cy
a nt vo cy v ghi li cnh ni nt vi cy
Thut ton Prim da trn nhng nh l sau y:
nh l 4.4.
Mt cy l mt MST nu v ch nu cy cha cnh ngn nht
trong mi cutset chia cc nt thnh hai thnh phn.
thc hin thut ton Prim, cn phi theo di khong cch t mi
nt khng thuc cy ti cy v cp nht khong cch mi khi c
mt nt c thm vo cy. Vic c thc hin d dng; n
gin ch l duy tr mt dy d_tree c cc thng tin v khong cch
ni trn. Qu trnh tun theo:
array[n] <- Prim( n , root , dist )
dcl dist[n,n] , pred[n], d_tree[n],
in_tree[n]
index <- FindMin()
d_min <- INFINITY
for each( i , n )
if(!(in_tree[j]) and (d_tree[i]<
d_min))
i_min <- i
d_min <- d_tree[i]
return ( i_min )
void <-Scan(i)
for each ( j , n )
if(!(in_tree[j]) and
(d_tree[j]>dist{i,j]))
d_tree[j]<- dist[i,j]
pred[j]<-i
d_tree <- INFINITY
pred <- -1
in_tree <- FALSE
d_tree(root)<-0
#_in_tree <-0
74
while (#_in_tree < n)
i <- FindMin()
in_tree[i]<- TRUE
Scan(i)
#_in_tree =#_in_tree + 1
return (pred)
FindMin tr v mt nt khng thuc cy v gn cy nht. Scan cp
nht khong cch ti cy i vi cc nt khng thuc cy.
C th thy rng phc tp ca thut ton ny l O(n2); c hai hm
FindMin v Scan c phc tp l O(n) v mi hm c thc hin
n ln. So snh vi thut ton Kruskal ta thy rng phc tp ca
thut ton Prim tng nhanh hn so vi phc tp ca thut ton
Kruskal nu m, s lng cc cnh, bng O(n2),cn nu m c cng bc
vi n th phc tp ca thut ton Kruskal tng nhanh hn.
C th tng tc thut ton Prim trong trng hp graph l mt graph
mng bng cch ch quan tm n cc nt lng ging ca nt i va
c thm vo cy. Nu sn c cc thng tin k lin, vng lp for
trong Scan c th tr thnh.
for each (j , n_adj_list[i] )
phc tp ca Scan tr thnh O(d) vi d l bc ca nt i. Chnh v
th phc tp tng cng ca Scan gim t O(n2) xung O(m).
Thit lp mt tp k lin cho ton b mt graph l mt php ton c
phc tp bng O(m):
index[nn,list] <- SetAdj(n ,m, ends)
dcl ends[m,2], n_adj_list[n,list]
for node = 1 to n
n_adj_list[node] <-
for edge = 1 to m
Append(edge, n_adj_list[end[edge,1]])
Append(edge, n_adj_list[end[edge,2]])
C th tng tc FindMin nu ta thit lp mt khi (heap) cha cc gi
tr trong d_tree. V th, chng ta c th ly ra gi tr thp nht v
phc tp tng cng ca qu trnh ly ra l O(nlogn). Vn ch l
chng ta phi iu chnh khi (heap) khi mt gi tr trong d_tree thay
i. Qu trnh iu chnh c phc tp l O(mlogn) trong trng
hp xu nht v c kh nng mi cnh s c mt ln cp nht v mi
ln cp nht i hi mt php ton c phc tp l O(logn). Do ,
phc tap ca ton b thut ton Prim l O(mlogn). Qua th nghim
c th thy rng hai thut ton Prim v Kruskal c tc nh nhau,
nhng ni chung, thut ton Prim thch hp hn vi cc mng dy cn
thut ton Kruskal thch hp hn i vi cc mng mng. Tuy vy,
75
nhng thut ton ny ch l mt phn ca cc th tc ln v phc tp
hn, l nhng th tc hot ng hiu qu vi mt trong nhng
thut ton ny.
Hnh 4.2. Graph c lin kt song song v self loop
Bng 4.1
Nt init. A C E B D
A 0 0(-) 0(-) 0(-) 0(-) 0(-)
B 100 10(A) 10(A) 10(A) 10(A) 10(A)
C 100 2(A) 2(A) 2(A) 2(A) 2(A)
D 100 100(-) 11(A) 11(A) 5(B) 5(B)
E 100 7(A) 6(C) 6(C) 6(C) 6(C)
V d 4.4:
Tr li hnh 4.4, gi s rng cc cnh khng c biu din c di
bng 100. Thut ton Kruskal s chn (A, C), (B, D), (C, E), v loi (A,
E) bi v n to ra mt chu trnh vi cc cnh c chn l (A, C)
v (C, E), chn (A, B) sau dng li v mt cy bc cu hon ton
c tm thy.
Thut ton Prim bt u t nt A, nt A s c thm vo cy. Tip
theo l cc nt C, E, B v D. Bng 4.1 tng kt cc qu trnh thc hin
ca thut ton Prim, biu din d_tree v pred khi thut ton thc
hin. Cui thut ton, pred[B] l A, tng ng vi (A, B) l mt
phn ca cy. Tng t, pred ch ra (A, C), (B, D) v (C, E) l cc
phn ca cy. V vy, thut ton Prim s la chn c cy ging vi
cy m thut ton Kruskal nhng th t cc lin kt c la chn l
khc nhau.
Mt ng i trong mt mng l mt chui lin tip cc lin kt bt u
t mt nt s no v kt thc ti mt nt t no . Nhng ng i
nh vy c gi l mt ng i s, t. Ch rng th t cc lin kt
trong ng i l c ngha. Mt ng i c th l hu hng hoc
76
v hng tu thuc vo vic cc thnh phn ca n l cc lin kt hay
l cc cung. Ngi ta gi mt ng i l ng i n gin nu
khng c nt no xut hin qu hai ln trong ng i . Ch rng
mt ng i n gin trong mt graph n gin c th c biu
din bng chui lin tip cc nt m ng i cha v chui cc nt
biu din duy nht mt chui cc lin kt .
Nu s trng vi t th ng i gi l mt chu trnh, v nu mt nt
trung gian xut hin khng qu mt ln th chu trnh c gi l
chu trnh n gin. Mt chu trnh n gin trong mt graph n
gin c th c biu din bi mt chui cc nt lin tip.
V d 4.5:
Xt graph hu hng trong hnh 4.4. Cc thnh phn lin thng bn
c xc dnh bi
{A B C D} {E F G} {H} {I} {J}
Cc cung (A, H), (D, I), (I, J) v (J, G) khng l mt phn mt thnh
phn lin thng bn no c. Xem graph trong hnh 4.3 l mt graph v
hng (ngha l xem cc cung l cc lin kt v hng), th graph ny
c mt thnh phn duy nht, v th n l mt graph lin thng.
Cho mt graph G = (V, E), H l mt graph con nu H = (V', E'), trong
V' l tp con ca V and E' l tp hp con ca E. Cc tp con ny c
th c hoc khng tun theo quy nh nu.
Hnh 4.4. Graph hu hng
Mt graph khng h cha cc chu trnh gi l mt cy. Mt cy bc
cu l mt graph lin thng khng c cc chu trnh. Nhng graph nh
vy c gi mt cch n gin l cy. Khi graph khng lin thng
hon ton c gi l mt rng. Chng ta thng cp cc cy
trong cc graph v hng.
77
Trong cc graph hu hng, c mt cu trc tng t vi cy gi l
cy phn nhnh. Mt cy phn nhnh l mt graph hu hng c
cc ng i t mt nt (gi l nt gc ca cy phn nhnh) ti
tt c cc nt khc hoc ni mt cch khc l graph hu hng c cc
ng i t tt c cc nt khc n nt gc. Mt cy phn nhnh s
tr thnh mt cy nu n l v hng.
Cc cy bc cu c rt nhiu thuc tnh ng quan tm, nhng thuc
tnh khin cho cc cy bc cu rt hu ch trong qu trnh thit k
mng truyn thng. Th nht, cc cy bc cu l lin thng ti thiu c
ngha l: chng l cc graph lin thng nhng khng tn ti mt tp
con cc cnh no trong cy to ra mt graph lin thng. Chnh v vy,
nu mc ch ch n gin l thit k mt mng lin thng c gi ti
thiu th gii php ti u nht l chn mt cy. iu ny c th hiu
c v trong mt cy lun c mt v ch mt ng i gia mt cp
nt. iu khng gy kh khn ng k trong vic nh tuyn trong
cy v lm n gin cc thit b truyn thng lin quan i rt nhiu.
Ch rng mt graph c N nt th bt k mt cy no bc cu tt c
cc nt th c ng (N-1) cnh. Bt k mt rng no c k thnh phn
th cha ng (N-k) cnh. Nhn xt ny c th suy ra t lp lun sau:
khi c mt graph c N nt v khng c cnh no th c N thnh phn,
v c mi cnh thm vo nhm kt ni hai thnh phn th s lng
thnh phn gim i mt.
Mt tp hp cc cnh m s bin mt ca n chia ct mt graph (hay
ni mt cch khc l lm tng s lng thnh phn ca graph) c
gi l mt tp chia ct. Mt tp chia ct no chia ct cc nt
thnh hai tp X v Y c gi l mt cutset hoc mt XY-cutset.
Hu ht cc vn cn quan tm u lin quan n cc cutset ti
thiu (nghi l cc cutset khng phi l tp con ca mt cutset khc).
Trong mt cy, mt cnh bt k l mt cutset ti thiu. Mt tp ti thiu
cc nt m s bin mt ca n phn chia cc nt cn li thnh hai tp
gi l mt cut. Cc vn cn quan tm cng thng lin quan n
cc cut ti thiu.
V d 4.6:
Hnh 4.4 biu din mt graph v hng. Cc tp cc lin kt
{(A, C), (B, D)}
v
{(C, E), (D, E), (E, F)}
l cc v d ca cc cutset ti thiu.
Tp cui cng l mt v d v mt loi tp trong tp cc lin kt i
ti mt nt thnh vin bt k u l mt cutset v cc cutset chia
ct nt ra khi cc nt khc.
Tp (C, D) l mt cut. Nt A cng l mt cut. Mt nt duy nht m s
bin mt ca n chia ct graph gi l mt im khp ni.
Tp hp cc lin kt:
78
{(A, B), (A, C), (A, G), (C, D), (C, E), (E, F)}
l mt cy. Bt k tp con no ca tp ny, k c tp y hay tp rng,
u l mt rng.
Hnh 4.4. Cc cutset, cc cut, cc cy
5.3. Cc m hnh nh tuyn thng dng
5.3.1. nh tuyn ngn nht (Shortest path Routing)
Bi ton tm cc ng i ngn nht l mt bi ton kh quan trng
trong qu trnh thit k v phn tch mng. Hu ht cc bi ton nh
tuyn c th gii quyt nh gii quyt bi ton tm ng i ngn nht
khi mt " di " thch hp c gn vo mi cnh (hoc cung) trong
mng. Trong khi cc thut ton thit k th c gng tm kim cch to
ra cc mng tho mn tiu chun di ng i.
Bi ton n gin nht ca loi ton ny l tm ng i ngn nht
gia hai nt cho trc. Loi bi ton ny c th l bi ton tm ng
i ngn nht t mt nt ti tt c cc nt cn li, tng ng bi ton
tm ng i ngn nht t tt c cc im n mt im. i khi i
hi phi tm ng i ngn nht gia tt c cc cp nt. Cc ng i
i khi c nhng gii hn nht nh (chng hn nh gii hn s lng
cc cnh trong ng i).
Tip theo, chng ta xt cc graph hu hng v gi s rng bit
di ca mt cung gia mi cp nt i v j l lij. Cc di ny khng
cn phi i xng. Khi mt cung khng tn ti th di lij c gi s
l rt ln (chng hn ln gp n ln di cung ln nht trong mng).
Ch rng c th p dng qu trnh ny cho cc mng v hng
bng cch thay mi cnh bng hai cung c cng di. Ban u gi
s rng lij
l dng hon ton; sau gi thit ny c th c thay
i.
79
Thut ton Dijkstra
Tt c cc thut ton tm ng i ngn nht u da vo cc nhn
xt c minh ho trn hnh 4.5, l vic lng nhau gia cc ng
i ngn nht ngha l mt nt k thuc mt ng i ngn
nht t i ti j th ng i ngn nht t i ti j s bng ng i ngn
nht t i ti k kt hp vi ng i ngn nht t j ti k. V th, chng
ta c th tm ng i ngn nht bng cng thc quy sau:
) (
min kj ik
k
ij
d d d + =
dxy l di ca ng i ngn nht t x ti y. Kh khn ca cch
tip cn ny l phi c mt cch khi ng quy no v chng ta
khng th khi ng vi cc gi tr bt k v phi ca phng trnh
4.2. C mt s cch thc hin vic ny, mi cch l c s cho mt
thut ton khc nhau.
Hnh 4.5. Cc ng ngn nht lng nhau
Thut ton Dijkstra ph hp cho vic tm ng i ngn nht t mt
nt i ti tt c cc nt khc. Bt u bng cch thit lp
d
ii
= 0
v
d
ij
= i j
sau thit lp
d
ij
l
ij
j l nt k cn ca i
Sau tm nt j c dij l b nht. Tip ly chnh nt j va chn
khai trin cc khong cch cc nt khc, ngha l bng cch thit lp
d
ik
min (d
ik
, d
ij
+l
jk
)
Ti mi giai on ca qu trnh, gi tr ca dik l gi tr c lng hin
c ca ng i ngn nht t i ti k; v thc ra l di ng i
ngn nht c tm cho ti thi im . Xem djk nh l nhn trn
nt k. Qu trnh s dng mt nt trin khai cc nhn cho cc nt
khc gi l qu trnh qut nt.
Thc hin tng t, tip tc tm cc nt cha c qut c nhn b
nht v qut n. Ch rng, v gi thit rng tt c cc ljk u dng
do mt nt khng th gn cho nt khc mt nhn b hn chnh
nhn ca nt . V vy, khi mt nt c qut th vic qut li n nht
thit khng bao gi xy ra. V th, mi nt ch cn c qut mt ln.
Nu nhn trn mt nt thay i, nt phi c qut li. Thut ton
Dijkstra c th c vit nh sau:
80
array[n] <-Dijkstra (n, root, dist)
dcl dist[n,n], pred[n], sp_dist[n],
scanned[n]
index <- FindMin( )
d_min <- INFINITY
for each (i , n )
if (!(scanned[j])&& (sp_dist[i]<
d_min) )
i_min <- i
d_min <- sp_dist[i]
return (i_min)
void <- Scan( i )
for each ( j , n)
if((sp_dist[j] > sp_dist[i] +
dist[i,j]))
sp_dist[j]<- sp_dist[i] +
dist[i,j]
pred[j]<- i
sp_dist<- INFINITY
pred <- -1
scanned <-FALSE
sp_dist[root]<- 0
#_scanned <- 0
while (#_scanned < n )
i <- FindMin()
Scan( i )
#_scanned= #_scanned + 1
return ( pred )
Trong thut ton vit trn, hm ch tr v dy pred , dy ny
cha tt c cc ng i. Hm cng c th tr v dy sp_dist, dy
ny cha di ca cc ng i, hoc hm tr v c hai dy nu
cn thit.
Thut ton trng rt quen thuc. N gn ging vi thut ton tm cy
bc cu ti thiu Prim. Ch khc nhau ch, cc nt trong thut ton
ny c gn nhn l di ca ton b ng i ch khng phi l
di ca mt cnh. Ch rng thut ton ny thc hin vi graph
hu hng trong khi thut ton Prim ch thc hin vi graph v
hng. Tuy nhin v mt cu trc, cc thut ton l rt n gin.
phc tp ca thut ton Dijkstra, cng ging nh phc tp ca
thut ton Prim , l O(N2).
Cng ging nh thut ton Prim, thut ton Dijkstra thch hp vi cc
mng dy v c bit thch hp vi cc qu trnh thc hin song song
( y php ton scan c th c thc hin song song, v bn cht
phc tp ca qu trnh l O(1) ch khng phi l O(N)). Hn ch
81
ch yu ca thut ton ny l khng c c nhiu u im khi mng
l mng v ch ph hp vi cc mng c di cc cnh l dng.
Hnh 4.6. Cc ng i ngn nht t A
V d 4.7:
Xt mt mng trong hnh 4.6. Mc tiu y l tm cc ng i ngn
nht t nt A ti cc nt khc. Khi u, A c gn nhn 0 v cc
nt khc c gn nhn l v cng ln. Qut nt A, B c gn bng
5 v C c gn l 1. C l nt mang nhn b nht nn sau C c
qut v B c gn bng 4 (=1+3), trong khi D c gn bng 6. Tip
theo B (c nhn bng 4) c qut; D v E c gn ln lt l 5 v
10. Sau D (c nhn bng 5) c qut v F c gn bng 9. E
c qut v dn n khng c nhn mi. F l nt c nhn b nht
nn khng cn phi qut v khng c nt no phi nh nhn li. Mi
nt ch c qut mt ln. Ch rng vic qut cc nt c cc nhn
theo th t tng dn l mt iu cn lu v trong qu trnh thc hin
thut ton mt s nt c nh li s. Cc nt c qut ngay tc
th hoc l phi c qut li sau .
Ch rng cc ng i t A n cc nt khc (ngha l (A, C), (C, B),
(B, D), (B, E) v (D, F)) to ra mt cy. iu ny khng l mt s trng
hp ngu nhin. N l h qu trc tip t vic lng nhau ca cc
ng i ngn nht. Chng hn, nu k thuc ng i ngn nht t i
ti j th ng i ngn nht t i ti j s l tng ca ng i ngn nht
t i ti k v ng i ngn nht t k ti j.
Tng t nh trong v d minh ho cho thut ton Prim, kt qu ca v
d trn c th c trnh by mt cch ngn gn nh bng sau:
82
Bng 4.2
Nt init. A(0) C(1) B(4) D(5) F(9) E(10)
A 0(-) 0(-) 0(-) 0(-) 0(-) 0(-) 0(-)
B (-) 5(A) 4(C) 4(C) 4(C) 4(C) 4(C)
C (-) 1(A) 1(A) 1(A) 1(A) 1(A) 1(A)
D (-) (-) 6(C) 5(B) 5(B) 5(B) 5(B)
E (-) (-) (-) 10(B) 10(B) 10(B) 10(B)
F (-) (-) (-) (-) 9(D) 9(D) 9(D)
Thut ton Bellman
Mt thut ton khc ca dng thut ton Dijkstra do Bellman pht biu
v sau c Moore v Page pht trin, l vic qut cc nt theo
th t m chng c nh nhn. Vic loi tr vic phi tm nhn
nh nht, nhng to ra kh nng; mt nt c th cn qut nhiu hn
mt ln.
Trong dng n gin nht, thut ton Bellman duy tr mt hng i cc
nt qut. Khi mt nt c nh nhn n c thm vo hng i
tr khi n tn ti trong hng i. Hng i c qun l theo quy
tc vo trc, ra trc. V th cc nt c qut theo th t m chng
c nh nhn. Nu mt nt c nh nhn li sau khi nt c
qut th n c thm vo sau hng i v c qut ln na.
V d 4.8:
Trong v d hnh 4.6, chng ta bt u qu trnh bng cc t nt A
vo hng i. Qut A cc nhn 5 v 1 ln lt c gn cho nt B v
C, ng thi cc nt B v C c a vo hng i (v cc nt ny
nhn gi tr mi v cha c mt trong hng i). Tip chng ta qut
nt B v cc nt E v D c nh nhn ln lt l 11 v 6. D v E
cng c t vo hng i. Sau chng ta qut C, khi B c
gn nhn l 4 v li c t vo sau hng i. E c qut v F
c gn nhn 13 v a vo hng i. D c qut v F c gn
nhn l 10; F vn cn trong hng i nn F khng c a vo
hng i. B c qut ln th hai. trong ln qut ny E v D ln lt
c nh nhn l 10 v 5 ng thi c hai nt c t vo hng
i. F c qut v khng nh nhn nt no c. E c qut khng
nh nhn nt no c. D c qut v F c nh nhn 9 v c
a vo hng i. F c qut v khng nh du nt no c.
Cc nt B, C, D v F c qut hai ln. l ci gi phi tr cho vic
khng qut cc nt theo th t. Mt khc trong thut ton ny khng
cn thit phi tm kim cc nt c nhn nh nht.
Cng nh trong hai v d 4.4 v 4.5 cho thut ton Prim v thut ton
Dijkstra, chng ta c th trnh by kt qu ca cc qu trnh trong v d
ny nh trong bng sau
83
Bng 4.3
Nt init. A(0) B(5) C(1) E(11) D(6)
A 0(-) A 0(-) B 0(-) C 0(-) E 0(-) D 0(-) B
B (-) 5(A) C 5(A) E 4(C) D 4(C) B 4(C) F
C (-) 1(A) 1(A) D 1(A) B 1(A) F 1(A)
D (-) (-) 6(B) 6(B) 6(B) 6(B)
E (-) (-) 11(B) 11(B) 11(B) 11(B)
F (-) (-) (-) (-) 13(E) 10(D)
B(4) F(10) E(10) D(5) F(9)
A 0(-) F 0(-) E 0(-) D 0(-) F 0(-)
B 4(C) E 4(C) D 4(C) 4(C) 4(C)
C 1(A) D 1(A) 1(A) 1(A) 1(A)
D 5(B) 5(B) 5(B) 5(B) 5(B)
E 10(B) 10(B) 10(B) 10(B) 10(B)
F 10(D) 10(D) 10(D) 9(D) 9(D)
Thut ton c th vit nh sau:
array[n]<-Bellman (n, root, dist)
dcl dist[n][n], pred[n], sp_dist[n],
in_queue[n]
scan_queue[queue]
void <- Scan( i )
in_queue[i]<- FALSE
for j=1 to n
if((sp_dist[j] > sp_diat[i] +
dist[i,j]))
sp_dist[j]<- sp_diat[i] +
dist[i,j]
pred[j]<- i
if ( not ( in_queue[j] ) )
Push(scan_queue, j )
in_queue[j]<- TRUE
sp_dist<- INFINITY
pred <- -1
in_queue <-FALSE
initialize_queue( scan_queue )
sp_dist[root]<- 0
Push(scan_queue , root )
in_queue <-TRUE
84
while (not(Empty( scan_queue ))
i <- Pop(scan_queue)
Scan( i )
return ( pred )
Mt hng i chun c s dng qu trnh trn. C th s dng dy
in_queue theo di nt no ang hin c trong hng i.
Theo qu trnh c vit trn th thut ton Bellman l mt qu trnh
tm kim theo chiu rng. Ngi ta chng minh c rng trong
trng hp xu nht, mt nt c qut n-1 ln. V vy qu trnh qut
trong trng hp xu nht c phc tp l O(n) vi n l s lng
cc nt. T suy ra rng phc tp ca ton b thut ton l O(n
3
).
Tuy nhin trong thc t cc nt khng thng xuyn c qut li
nhiu ln.
Trong hu ht cc trng hp thc t, s ln qut trung bnh trn mt
nt l rt nh, ti a l 3 hoc 4, ngay c khi mng c hng ngn nt.
Nu bc trung bnh ca nt nh, iu ny thng xy ra trong cc
mng thc t, th thi gian cho vic tm kim nt cha qut b nht l
phn c nh hng nht ca thut ton Dijkstra. V vy trong thc t
thut ton Bellman c xem l nhanh hn so vi thut ton Dijkstra
mc d phc tp trong trng hp xu nht ca thut ton Bellman
ln hn.
Tng t c th ci tin phc tp ca th tc Scan bng cch duy
tr mt danh sch k cn cho mi nt. phc tp ca Scan tr thnh
O(d) thay v O(n) vi d l bc ca nt ang qut. V vy, trn thc t
phc tp ca thut ton Bellman thng bng O(E) vi E l s cnh
ca graph.
Ngoi vic c th ci thin cht lng trung bnh ca thut ton trong
nhiu trng hp, thut ton Bellman cn c mt u im na l
thut ton hot ng ngay c khi di cc cnh l cc gi tr m.
Thut ton Dijkstra da vo quy tc: mt nt khng th gn cho nt
khc mt nhn b hn nhn ca chnh nt. iu ch ng khi khng
c cc cung c di l m trong khi thut ton Bellman khng cn
phi gi thit nh vy v qut li cc nt mi khi nt c gn nhn
li. V th, thut ton ny rt ph hp khi xut hin cc cung c di
m. Tuy nhin cn ch rng khi graph c mt chu trnh c tng di
m th thm ch thut ton Bellman cng khng kh dng. Trong
trng hp ny, thut ton khng kt thc v cc nt tip tc nh
nhn cc nt khc mt cch v hn. C mt s dng khc nhau ca
thut ton Bellman, ngoi thut ton ny ra cn c mt s cc thut
ton tm ng i ngn nht t mt im ti cc im khc trong
trng hp khc nhau.
Thut ton Floyd
C th thy rng bi ton tm kim ng ngn nht gia mi cp nt
nng n gp N ln bi ton tm ng i ngn nht t mt nt n tt
85
c cc nt khc. Mt kh nng c th l s dng thut ton
Bellman hoc thut ton Dijkstra N ln, bt u t mi nt ngun. Mt
kh nng khc, c bit thch hp vi cc mng dy, l s dng thut
ton Floyd.
Thut ton Floyd da vo quan h quy c trnh by trong
phn gii thiu thut ton Dijkstra, nhng thut ton ny s dng quan
h quy theo mt cch khc. Lc ny, d
ij
(k) c nh ngha l
ng i ngn nht t i ti j s dng cc nt c nh s l k hoc
thp hn nh l cc nt trung gian. V th d
ij
(0) c nh nghi nh l
l
ij
, di ca lin kt t nt i ti nt j, nu lin kt tn ti hoc d
ij
(0)
s bng v cng nu lin kt khng tn ti. V vy,
d
ij
(k) = min (d
ij
(k-1), d
ik
(k-1) + d
kj
(k-1) )
ngha l, chng ta ch quan tm n vic s dng nt k nh l mt
im qu giang cho mi ng i t i ti j. Thut ton c th c vit
nh sau:
array[n] <-Floyd (n, dist)
dcl dist[n][n], pred[n][n], sp_dist[n,n]
for each (i , n )
for each (i , n )
sp_dist[i,j] <- dist[i, j]
pred[i, j]<- i
for each (k , n )
for each (i , n )
for each (j , n )
if((sp_dist[i,j]> sp_dist[i,k] +
dist[k,j]))
sp_dist[i,j]<- sp_dist[i,k] +
dist[k,j]
pred[i, j]<- pred[k,j]
return ( pred )
pred[i,j] cha nt trung gian cui cng ca ng i t i ti j v
c th c s dng khi phc ng i t i ti j. Ging nh thut
ton Bellman, thut ton Floyd hot ng c vi cc di cung l m.
Nu xut hin cc chu trnh c tng di m th thut ton Floyd
dng li nhng khng bo m cc ng i l ngn nht. Cc chu
trnh c tng di m c th c nhn bit nh s xut hin ca
cc con s m trn ng cho chnh ca dy sp_dist.
86
Hnh 4.7: V d graph
V d 4.9:
Xt graph trong hnh 4.7. Mng cha khong cch ban u v mng
cha nt trung gian cui cng ca mi ng i c cho trc nh
sau:
n n
A B C D E A B C D E
T
A 0 3 2 - -
T
A A A A A A
B - 0 - 2 - B B B B B B
C - 5 0 - 2 C C C C C C
D - - 1 0 1 D D D D D D
E - - - - 0 E E E E E E
sp_dist pred
Ch rng sp_dist c cc gi tr 0 trn ng cho chnh v v
cng ln (c biu din l du "-") nu gia hai nt khng tn ti mt
lin kt. Ngoi ra v graph l graph hu hng v khng i xng nn
sp_dist cng khng i xng.
Xt A ta thy A l mt nt trung gian khng nh hng n cc dy
ny v khng c cung no i ti n v v th khng c ng i no i
qua A. Tuy nhin, xt nt B ta thy rng nt B gy nn s thay i v
tr (A, D) v (C, D) trong cc dy trn , c th nh sau :
n n
A B C D E A B C D E
T
A 0 3 2 5 -
T
A A A A B A
B - 0 - 2 - B B B B B B
C - 5 0 7 2 C C C C B C
87
D - - 1 0 1 D D D D D D
E - - - - 0 E D D D D D
sp_dist pred
Tip tc xt cc nt C, D v E th gy nn s thay i c th nh sau:
n n
A B C D E A B C D E
T
A 0 3 2 5 4
T
A A A A B C
B - 0 3 2 3 B B B D B D
C - 5 0 7 2 C C C C B C
D - 6 1 0 1 D D C D D D
E - - - - 0 E E E E E E
sp_dist pred
Cc thut ton tm i ngn nht m rng
Trong qu trnh thit k v phn tch mng i khi chng ta phi tm
ng i ngn nht gia mi cp cc nt (hoc mt s cp) sau khi c
s thay i di mt cung. Vic thay i ny bao gm c vic thm
hoc loi b mt cung (trong trng hp di ca cung c th
c xem nh l chuyn t khng xc nh thnh xc nh hoc
ngc li). V th ta gi thit rng ng i ngn nht gia tt c cc
cp nt l bit trc v bi ton t ra y l xc nh (nu c)
nhng s thay i do vic thay i di ca mt cung no . Thut
ton sau y c Murchland pht biu, trong xem xt ring r cho
tng trng hp: tng v gim di ca cc cung . Nhng thut ton
ny hot ng vi cc graph hu hng v c th hot ng vi cc
di cung l m, tuy nhin thut ton ny vn khng gii quyt cc
chu trnh c tng di l m.
di cung gim
Gi s rng di cung (i,j) c gim. V s lng nhau trong cc
ng i ngn nht (ngha l mt nt k thuc mt ng i ngn nht
t i ti j th ng i ngn nht t i ti j s bng ng i ngn nht
t i ti k hp vi ng i ngn nht t j ti k) nn nu cung (i, j)
khng phi l ng i ngn nht sau khi cung ny c lm ngn
(trong trng hp ny cung (i, j) c th khng phi l ng i ngn
nht trc khi di ca cung (i, j) b thay i) th n khng phi l mt
phn ca ng i ngn nht no c v s thay i c b qua.
Tng t, nu (i, j) l mt phn ca ng i ngn nht t k ti m th
n phi l mt phn ca ng i ngn nht t k ti j v ng i
ngn nht t i ti m. Thc ra, ng i ngn nht t k ti m mi phi
88
chui cc ng i t k ti i c, lin kt (i, j) v ng i t j ti m.
iu ny c biu din trong hnh 4.8.
Hnh 4.8. ng i ngn nht m rng khi (i, j) c lm ngn
V th cn phi qut cc nt i v j tm cc tp K v M thch hp
cha cc nt k v m nh trong hnh 4.8 v thc hin vic xt cc cp
nt, mi nt t mt tp (K hoc M ni trn ). Vi i thuc K v j
thuc M thc hin vic kim tra iu kin sau
d
km
> d
ki
+l
ij
+d
jm
nu ng, cp nht d
km
v nt trung gian cui cng ca ng i ny.
Thut ton ny c th c vit nh sau:
(array[n,n], array[n,n]) <-
sp_decrease(n,i,j,length,*dist,sp_dist,pred )
dcl dist[n,n], pred[n,n], sp_dist[n,n],
setk[set], setm[set]
dist[i, j]<- length
if(length >=sp_dist[i,j])
return( sp_dist, pred )
setk <-
setm <-
for each (k, n)
if(sp_dist[k,j]> sp_dist[k,i] + length)
append(k, setk )
for each (m, n)
if(sp_dist[i,m]> sp_dist[j,m] + length)
append(m, setm )
for each (k , setk )
for each (m , setm )
if(sp_dist[k,m]>
sp_dist[k,i] + length + sp_dist[j,m])
sp_dist[k,m]<-
sp_dist[k,i] + length + sp_dist[j,m]
if ( j = m )
pred[k, m]<- i
89
else
pred[k, m]<- pred[j, m]
return ( sp_dist , pred )
Thut ton tr v sp_dist v pred, ng i ngn nht c cp
nht v cc dy cha nt trung gian cui cng ca mi ng i ngn
nht. Hm c xy dng trong on gi m trn c u vo l dy
cha cc di ca cc lin kt hin c dist , im cui (i v j) ca
lin kt mi c lm ngn v di mi ca lin kt c lm ngn
length . l danh sch rng.
C th thy rng, trong trng hp xu nht phc tp ca th tc
trn l O(n
2
) v trong th tc trn c hai vng lp c phc tp trong
trng hp xu nht l O(n). Trong thc t, trng hp c hai tp u
c phc tp l O(n) l t khi gp v v th phc tp thc t ca
thut ton thng thp hn nhiu.
di cung tng
By gi xt trng hp mt lin kt (i,j) c ko di hoc b loi b
khi graph (trong trng hp ny di ca lin kt c xem l v
cng ln). Nu (i, j) khng phi l mt phn ca ng i ngn nht t
k ti m trc khi di lin kt (i,j) c tng ln th sau lin kt
ny chc chn cng khng thuc ng i ngn nht t k ti m. V
vy cn kim tra cp (k, m) c ng i ngn nht tho mn iu kin:
d
km
= d
ki
+ l
ij
+ d
jm
Ch rng, nu l
ij
khng phi l mt phn ca ng i ngn nht t i
ti j th khng c thay i no xy ra. Thut ton ny c th c vit
nh sau:
(array[n,n], array[n,n]) <-
sp_increase(n,i,j,*dist,length,
sp_dist,pred )
dcl dist[n,n], pred[n,n], pairs[set]
if(length > sp_dist[i,j])
dist[i,j] <- length
return( sp_dist, pred )
pairs <-
for each (k, n)
for each (m, n)
if(sp_dist[k,m]=
sp_dist[k,i] + dist[i,j]+ sp_dist[i,m])
append( (k,m), pairs )
sp_dist[k,m] <- dist[k,m]
dist[i,j] <- length
90
for each (a , n )
for each ((k,m) , pairs )
if(sp_dist[k,m] > sp_dist[k,a]+
sp_dist[a,m])
sp_dist[k,m]<- sp_dist[k,a]+
sp_dist[a,m]
pred[k, m]<- pred[a, m]
return ( sp_dist , pred )
Trong trng hp ny, pairs l mt tp cc cp nt cn phi c
kim tra. V vy, cc phn t ca pairs l cc cp nt. Thut ton ny
c cc tham s vo ra ging nh thut ton cp nht cc ng i
ngn nht khi gim di mt cung.
V bn cht thut ton ny ging nh thut ton Floyd, ch khc nhau
ch thut ton ny ch hot ng vi cc cp c chn cha lin
kt b thay i trc khi lin kt ny c ko di.
phc tp ca th tc ny l O(np) vi p l s cp nt trong tp
pairs . Trong trng hp xu nht, tp pairs c th cha n(n-1)
cp nt v v th phc tp l O(n
3
), ging vi phc tp ca thut
ton Floyd. Tuy nhin trong thc t p thng rt b.
Hnh 4.9
V d 4.10: (v d cho trng hp di cung gim)
Xt mt mng trong hnh 4.9. Cc cnh trong mng ny l cc lin kt
hai hng. di ca cc ng i ngn nht gia cc cp nt c
cho trc trong bng 4.4.
By gi thm mt cung (B, E) c l
BE
= 1. V
d
BE
> l
BE
chng ta thc hin qu trnh. Ngoi ra v
d
BC
> l
BE
+ d
EC
nhng
d
Bx
l
BE
+ d
Ex
91
i vi tt c cc nt khc. V vy
set
m
= C, E
Tng t,
set
k
= A, B
Bng 4.4
A B C D E
A 0 2 3 5 4
B 2 0 5 3 6
C 3 5 0 5 1
D 5 3 5 0 4
E 4 6 1 4 0
By gi chng ta xt cc cp nt
(k, m) vi k set
k
v m set
m
, (ngha l cc cp (A,C), (A, E), (B, C)
v (B, E)). Chng ta thy rng tt c cc cp tr cp (A, C) u b thay
i nn chng ta cp nht cc ng i ngn nht v nt trung gian
cui cng ca mi ng i ngn nht gia cc cp nt ny. Ma trn
ng i ngn nht by gi c biu din trong bng 4.3
Bng 4.5
A B C D E
A 0 2 3 5 3
B 2 0 2 3 1
C 3 5 0 5 1
D 5 3 5 0 4
E 4 6 1 4 0
Ch rng, ma trn ny khng cn i xng na v mt cung (B, E)
va mi c thm vo mng.
By gi gi s rng l
BE
= 5 (v d cho bi ton c s tng di mt
cung). Kim tra ma trn ng i ngn nht, ta thy rng trc khi
thay i l
BE
th
d
BE
= l
BE
Chng ta kim tra tt c cc cp nt (k, m) v thy rng iu kin
d
km
= d
ki
+ l
ij
+ d
jm
92
ch c cc cp (A, E), (B, C) v (B, E) tho mn. V th chng ta thc
hin php gn sau
pairs <- {(A, E), (B, C), (B, E)}
v sau thc hin lp trn tt c cc nt trung gian, kim tra cc
ng i ngn nht i vi cc cp ny. Khi thc hin qu trnh ny,
ch rng ng i ngn nht t A ti E tr thnh 4 (qua nt C) v
ng i ngn nht t B ti C tr thnh 5 (qua A). Tuy nhin, i vi
ng i ngn nht t B ti E th cung (B, E) c gi nguyn. di
cc ng i ngn nht gia cc cp nt c ch ra trong bng 4.6.
Bng 4.6
A B C D E
A 0 2 3 5 4
B 2 0 5 3 5
C 3 5 0 5 1
D 5 3 5 0 4
E 4 6 1 4 0
Flow Network
Cho mt t-p mng v mt yu cu duy nht t mt nt ngun s ti
mt nt ch d, yu cu t ra y l tm mt dng lung kh thi,
ngha l tm mt tp cc lung lin kt tho mn yu cu duy nht ni
trn m khng c bt k lung ca lin kt no c gi tr vt qu dung
lng ca chnh lin kt . T-p mng c biu din di dng
tp cc lin kt l
ij
, i cng vi cc dung lng c
ij
. V trong thc t cc
mng l cc mng tha nn c th lu tr topo mng di dng cc
danh sch hin v khai thc cc tnh cht ca mng tha. Ngoi ra c
th lu tr cc dung lng di dng mt ma trn, trong c
ij
c
gn bng 0 khi l
ij
khng tn ti.
Bi ton v th tr thnh bi ton tm mt hoc nhiu ng i t s ti
d ri gi lung i qua cc ng ny ng thi m bo yu cu
cho. Tng cc lung bng vi gi tr yu cu v tng lung trn mi
lin kt khng vt qu dung lng ca lin kt.
C mt s dng ca bi ton ny. Dng u tin, nh ni trn, l
bi ton tm cc lung tho mn mt yu cu no . Mt dng khc
l bi ton ti a ho gi tr lung t s ti d ng thi tho mn iu
kin dung lng. Dng cui cng l khi chng ta bit c gi trn
mt n v lung dnh cho mi lin kt, bi ton t ra l tm mt lung
tho mn yu cu cho trc c gi ti thiu. Cc li gii cho cc bi
ton ny lin h cht ch vi nhau v s c xem xt su hn. Hn
na, li gii cho bi ton ny l c s cho vic gii quyt cc bi ton
phc tp hn gi l bi ton lung a hng, bi ton c rt nhiu yu
93
cu gia cc ngun v cc ch. y l bi ton ht sc quan trng
trong vic thit k mng v s c ni k chng sau.
Ch rng trong trng hp ny ta ang xt cc lin kt hu hng
(ngha l c s khc nhau gia c
ij
v c
ji
). Tuy nhin c th gii quyt
cc mng v hng bng cch thay th mi lin kt v hng l
ij
bng
hai lin kt hu hng c cc dung lng ring r. Nh chng ta s
thy, trong bt k lin kt no v u trong qu trnh tm li gii cho
bi ton ny, ch c lung theo mt hng.
C th biu din bi ton ny di dng bi ton tm cc lung f
ij
tho
mn cc iu kin sau:
s i f f
d i r f f
s i r f f
j j
ji ij
j
ij
j
ji ij
j
ij
j
ji ij
=
= =
= =
; 0
;
;
ij ij
c f
j i f
ij
, ; 0
Thut ton Ford-Fulkerson
Thut ton tt nht cho vic gii bi ton lung n hng l thut ton
Ford-Fulkerson. Thut ton ny ch ra cc ng i t ngun s ti ch
d v gi cc lung ln nht c th qua mi ng m khng vi phm
gii hn dung lng. Thc ra thut ton c iu khin nhm ch ra
cc ng i v in y chng bng cc lung.
Hnh 4.10. Mng n gin
Chng hn xt mt mng trong hnh 4.10. Gi s tt c cc lin kt c
dung lng l 1. Chng ta c th gi mt n v lung trn ng i
SABD v mt trn ng i SEFD. V tng dung lng ca cc lin
kt ri S l 2 v mi n v lung t S ti D phi s dng mt n v
dung lng ri khi S ny do khng c lung no khc na tha
mn yu cu. Ngoi ra, v mi n v lung phi s dng t nht mt
n v dung lng ca mt SD-cut bt k (vi SD-cut l mt tp cc
lin kt m s bin mt ca n phn tch S khi D) nn lung t S ti
D ln nht khng th ln hn dung lng ca bt k cut no (dung
94
lng ca cut l tng dung lng ca tt c cc lin kt thuc cut). Do
ta c b sau:
B 4.1 (Ford-Fulkerson)
Lung t S ti D ln nht khng th ln hn dung lng ca cut
c dung lng nh nht
Thc ra, lung t S ti D ln nht chnh bng dung lng ca SD-cut
c dung lng b nht. chnh l nh l Lung Ln nht- Cutset
B nht ni ting ca Ford-Fulkerson.
Gii hn (1) nu trn gi l iu kin gii hn bo ton lung. iu
kin ny m bo rng vi cc nt khc vi nt ngun v nt ch th
lung vo bng vi lung ra. Trong trng hp ny, cc nt ngun
(ch) c lung ra (vo) phi bng lung t ngun ti ch. Bt k SD-
cut no cng phn chia cc nt thnh hai tp X v Y vi S thuc X v
D thuc Y. Nu iu kin (1) i vi tt c cc nt thuc tp X c
cng li th ta thy rng lung tng t X ti Y tr i lung tng t Y ti
X c kt qu bng lung t S ti D. Ch rng tng cc phn v tri
chnh bng tng cc lung trong cc lin kt c mt u thuc X cn
u kia thuc Y, tr i tng cc lung trong cc lin kt c mt u
thuc Y cn u kia thuc X. Cc lin kt c hai u cng thuc X
khng tham gia vo tng ny v chng xut hin trong tng nhng c
du ngc nhau. Cc lin kt khng c u no thuc X cng khng
xut hin trong tng. S tham gia vo v phi ca iu kin; tt c cc
nt khc khng tham gia.
V th, tho mn nh l trn cn phi:
Lung tng i qua cut c dung lng b nht phi bng dung lng
ca cut ngha l tt c cc lin kt thuc ct phi trng thi bo
ho (lung bng dung lng).
Lung i ngc cut ny phi bng 0.
Thc ra, tt cc cut c dung lng b nht phi l bo ho v iu
xy ra vo cui thut ton. Thut ton thc hin bng cch ch ra cc
ng i c dung lng b v gi lung i qua ton b cc ng i
. Khi khng tm ra mt ng i no c c dung lng b, mt cut
bo ho c ch ra v thut ton kt thc. Cc cut c dung lng b
khc cng bo ho nhng chng khng c thut ton ch ra.
number <- FFflow(n , s , d , cap , *flow )
dcl cap[n][n] , flow[n][n], pred[n],
sign[n] , mxf[n] , scan_queue[queue]
void <-Scan( i )
for each( j , n )
if( predd[j] = U )
if(flow[i,j] < cap[i,j])
95
mxflow <- min(mxf[i],cap[i,j]-
flow[i,j])
mxf[j],pred[j],sign[j] <-
mxflow,i,+ else if (
flow[j,i] > 0)
mxflow <- min(mxf[i],flow[j,i])
mxf[j],pred[j],sign[j] <-
mxflow,i,-
Push(scan_queue, j)
void <-Backtrack( )
n <- d
tot_flow <- tot_flow + mxf[d]
while ( n != s )
p <- pred[n]
if (sign[n] = + )
flow[p,n]<- flow[p,n] +
mxf[d]
else
flow[n,p]<- flow[n,p] +
mxf[d]
tot_flow <- 0
flow <- 0
flag <- TRUE
while ( flag )
pred <- U
Initialize_queue ( scan_queue )
Push( scan_queue , s )
mxf[s] <-INFINITY
while( !(Empty(scan_queue) &&(pred[d] = U) )
i<- Pop(scan_queue)
Scan( i )
if( pred[d] != U )
Backtrack( )
flag <- (pred[d] !=U)
return( tot_flow )
Trong trng hp n gin nht, thut ton Ford-Fulkerson c vit
nh trong on gi m trn vi n l s nt, m l s lin kt. Mi nt c
mt nhn:
(maxflow, pred, sign)
Nhn ny biu din gi tr lung ln nht c th trn ng i hin
hnh tnh cho ti thi im ang xt, nt lin trc ca nt ang xt
trong ng i hin hnh v chiu ca lung i qua lin kt. Gi tr
tng trng U l khng xc nh; gi tr thc s ca U nn c phn
bit vi bt k gi tr hp l no khc.
96
Thut ton tr v lung trong mi lin kt. Tng lung i t ngun ti
ch c th c tnh bng tng cc lung i ra khi ngun (hoc i ti
ch). Thut ton ch ra ng i t ngun ti ch bng cch s dng
mt thut ton c ci bin t thut ton Bellman. Thut ton ny
cho php s dng mt lin kt (i,j) theo hng ti (ngha l t i ti j)
nu lung t i ti j l f
ij
b hn dung lng ca lin kt c
ij
. N cng
cho php s dng lin kt theo chiu ngc li (ngha l lin kt (i.j)
c s dng a lung t j ti i), nhng iu ny ch xy ra nu
trc c mt lung t i ti j l dng. Trong trng hp ny, lung
c loi ra khi lin kt (i,j).
Lung ln nht theo chiu t i ti j l c
ij
- f
ij
. Lung ln nht theo chiu
t j ti i l f
ij
. i lng mxf, trong cc nhn ca mi nt, ch ra lung
ln nht c th c gi i trn mt ng i.
Bn trong vng while trn, chng ta bt u t nt ngun s v thc
hin vic tm kim nhn d. Nu thnh cng, chng ta c th quan st
ngc t d v s theo pred t d. Thc ra qu trnh ny bao gm vic
tng lung trong mi lin kt theo hng thun v gim lung trong
mi lin kt theo hng ngc li. Nu khng c nhn cho d, thut
ton kt thc. Khi thut ton ch ra lung ln nht; cc lin kt (i, j)
c i c gn nhn v j khng c gn nhn to ra cc cut bo ho.
Hm Scan c phc tp l O(n). Mt dng khc ca thut ton ny
hot ng c hiu qu hn, l dng c hm Scan c phc tp
l O(d) vi d l bc ca nt, hm ny to ra mt danh sch cha cc
nt k cn cho mi nt nt. Trong Scan(i) thay th
for j=1 to n
bng
for each ( j , adj_set[i] )
Khi thut ton dng li, mt cut hon ton c nh ngha. Cc nt c
nhn khc U th thuc tp X v cc nt cn li th thuc Y, vi X v Y
c nh nghi nh trc y. Vic nh nhn bo m rng tt c
cc cung trong X,Y-cut l bo ho, v tt c cc cung trong Y,X-cut c
lung bng 0. iu ny c th thy r khi ch rng thut ton dng
li khi vic nh nhn khng c tip tc na. Bt k cung cha bo
ho no thuc S,D cut hoc bt k cung no thuc D,S cut c lung
khc khng th c th c s dng tip tc vic nh nhn. Khi
chng ta khng tip tc nh nhn ngha l khi khng c nhng
cung nh vy. V vy, lung t S ti D bng vi dung lng ca X,Y-
cut v nh l Lung ln nht - Cut b nht ngm c chng
minh.
V d 4.11:
Xem xt vic s dng cc cung theo chiu ngc cng l mt vic
quan trng. Nu vic ny khng c thc hin th s khng m bo
rng lung l ln nht. Xt mt mng trong hnh 4.10. Gi s rng,
ng i u tin l SAFD. mt n v lung c gi i trn ton b
ng i. Tip mt ng i khc c tm kim. S khng th
nh nhn A bi v SA l mt cung bo ho. S nh nhn E v E nh
97
nhn F, F khng th nh nhn D v FD l mt cung bo ho. Ch
rng, khng tn ti mt cung t F ti A; cung FA ch c hng t A ti
F. iu cn ch y l thut ton phi s dng cung FA theo chiu
ngc, do loi b mt n v lung khi cung . iu cho php
F nh nhn A, A nh nhn B v B nh nhn D. V th mt ng i
th hai c tm thy, l ng i SEFABD c cung FA c s
dng theo chiu ngc. Kt qu ca vic gi lung trn hai ng i
l gi mt n v lung t S ti E, ti F, ti D v mt n v lung nh
vy t S ti A, ti B v ti D. n v lung ban u trn lin kt AF
c loi tr trong ng i th hai v lung mng trn cung ny
bng 0. Hai ng i c tm thy bng thut ton c th kt hp to
thnh hai ng i mi.
Nh trnh by trn, i vi mt mng c N nt v E cnh, mt ln
s dng thut ton ny tm mt ng i n th c phc tp
bng O(N
2
) v mi nt c qut ti a mt ln (cc nt khng c
nh li nhn), v phc tp ca php qut l O(N). Vi thut ton
c sa i t thut ton Bellman c s dng danh sch k cn,
mi nt c kim tra ti a mt ln t mi u v mt ln thc hin
vic c phc tp bng O(E). phc tp trong vic thit lp
danh sch k cn l O(E) v ch cn i qua cc cung mt ln duy nht
cng vi vic chn cc nt vo danh sch k cn. V vy, i vi cc
mng tha, phc tp khng qu ln.
C th thy rng phc tp ca ton b thut ton bng tch ca
phc tp khi tm mt ng i n v s ng i tm c. Nu
dung lng ca cc cung l cc s nguyn th mi ng i cng
thm t nht mt n v lung vo mng. V th s lng ng i
c gii hn bi lung cui cng F. Do phc tp ton b ca
thut ton l O(EF).
Hnh 4.11. Mng n gin
Ni chung, F c th rt ln. Xt mt mng trong hnh 4.11. Tt c cc
cung ngoi tr cung (A, B) u c dung lng bng K, mt s rt ln.
(A, B) c dung lng bng 1. Gi s ng i u tin l SABD. V
cung (A, B) c dung lng bng 1, nn ch c mt n v lung c th
chuyn qua ng i ny. Tip , gi s rng SBAD l ng i
c tm thy. V ch c mt n v lung c loi khi (A, B) nn
cng ch c duy nht mt n v lung c gi trn ng i ny.
Thut ton thc hin tm kim c 2K ng i, cc ng i SABD
v SBAD c lp i lp li, trong mi ng i c mt n v
98
lung c gi i, v th phc tp t ti phc tp trong trng
hp xu nht.
Cc bi ton tng t nh bi ton nu trn s khng th xy ra nu
thut ton tm cc ng i tm c cc ng i c s bc ti
thiu. Thut ton tm kim theo chiu rng s thc hin vic ny. T
trc ti nay, bi ton lung ln nht c tm hiu kh k v c
rt nhiu thut ton cng nh cc thut ton ci tin t cc thut ton
dng gii quyt bi ton ny.
Trong thc t, qu trnh thc hin thut ton nu trn c th hot
ng gii quyt hoc l bi ton lung ln nht hoc l bi ton tm
mt lung c mt gi tr c th no . By gi chng ta s xem xt bi
ton tm cc lung c gi nh nht.
Cc lung c gi nh nht
Gi thit rng chng ta bit gi ca mt n v lung c
ij
trn mi
lin kt. Yu cu t ra l tm mt lung t ngun ti ch vi gi tr
cho trc c gi b nht, trong gi ca mt lung c nh ngha
bng tng tt c cc tch ca lung trn mi lin kt nhn vi gi ca
mt n v lung trn lin kt . Tng t, c th chng ta cn tm
mt lung vi tr s ln nht c gi b nht. Chng hn, chng ta cn
tm mt gi ti thiu, nhng vn m bo l c th to ra mt lung c
tr s ln nht.
Cch n gin nht tm mt lung c gi ti thiu l sa i
thut ton Ford-Fulkerson tm cc ng i ngn nht thay v tm
cc ng i c bc nh nht vi gi ca mt n v lung c s
dng nh cc di. Thut ton Bellman hoc bt k thut ton tm
ng ngn nht no cng c th c lm cho tng thch vi mc
ch ny. Yu cu t ra l phi theo di c lung trn mi lin kt
v ging nh trong thut ton Ford-Fulkerson, y ch s dng cc
lin kt cha bo ho theo chiu thun, v ch s dng cc lin kt
theo chiu ngc nu cc lin kt ang c lung theo chiu thun
dng.
Cch thc hin trn c th c xem nh l vic thc hin thut ton
Ford-Fulkerson vi mt vi sa i. Lc ny, mi nhn c thm mt
i lng th t p, l di ca ng i. Gi tr c cp nht
ging nh cch lm trong thut ton Bellman. Chng hn, mt nt
c di l p s gn cho nt lng ging ca n mt di ng i l
q vi q bng tng ca p v di ca lin kt ni hai nt.
99
Hnh 4.12. Lung c gi thp nht
V d 4.12:
Trong hnh 4.12 mi lin kt c gn mt nhn (gi ca mt n v
lung, dung lng). Cc lin kt l cc lin kt hai hng. Chng hn,
gi ca vic chuyn mt n v lung gia A v B theo mt trong hai
hng l 4. S dng thut ton Ford-Fulkerson, sa i cch theo di
di cc ng i v cho php mt nt c nh nhn li nu
di ng i trong nhn ca nt ny c ci tin (tch cc hn)
gii quyt bi ton. V th, mi nt c mt nhn
(pathlength, maxflow, pred, sign)
S c nhn (0, INFINITY, PHI, PHI), nhn ny ch ra rng c
mt gi ( di ng i) bng 0 tnh t ngun, khng c gii hn v
lung, v khng c nt lin trc. Tt c cc nt khc ban u khng
c nhn hoc c nhn gn ging vi nhn sau
(INFINITY, INFINITY, PHI, PHI)
Mt nhn c di ng i khng xc nh tng ng vi vic
khng c nhn no v bt k khi no nh nhn, cng c mt nhn c
di ng i xc nh thay th mt nhn nh vy.
S c t vo danh sch qut v n l nt u tin c qut, S
nh nhn C bng (2, 4, S, +) v C c t vo danh sch
qut. V di gia S v chnh n bng 0 v khng c gii hn v
lung m n c th chuyn qua, nn di ng i ch n gin l
di ca lin kt t S ti C v lung ln nht chnh l dung lng
ca lin kt (S, C). S gn nhn A bng (2, 3, S, +) v A c t
vo danh sch qut. Vic chn nt no c nh nhn trc mang
tnh ngu nhin. iu ny tu thuc vo th t c thit lp trong
danh sch k cn.
Sau C c qut, C th nh nhn S nhng iu l khng th
v S c mt nhn c di ng i bng 0, trong khi C c gn
mt nhn c di ng i bng 4. Tuy nhin C c th nh nhn E
bng (8, 3, C, +). di ng i bng 8 chnh l tng ca 2 (
di ng i trong nhn hin c ca C) v 6 ( di ca lin kt t C
ti E). Lung ln nht chnh l gi tr b nht ca 4 (lung ln nht
trong nhn ca C) v 3 (dung lng ca lin kt t C ti E tr i lung
100
hin ti l 0). E c a vo danh sch qut. Tng t C gn nhn
B bng (11, 4, C, +) v B c a vo danh sch qut.
Sau A c qut. A c th gn li nhn cho B bng nhn c di
ng i b hn v B c nhn bng (6, 2, A, +). Ch rng B
c gn li nhn c di ng i b hn, mc d iu dn n
lung ln nht trong nhn b hn. iu ny c th gim lung trn
ng i nhng khng lm gim tng lung c gi ti D; s
nh nhn kiu ny ch n gin l yu cu cn thm ng i
chuyn lung . Mc d B c gn li nhn nhng khng c a
vo danh sch qut v B tn ti trong danh sch qut.
E sau c qut, nt ny gn nhn D bng (11, 3, C, +). D l
nt ch nn khng cn phi a vo danh sch qut. Mc d D c
gn nhn nhng vn phi tip tc nh nhn cho n khi danh sch
thnh rng bi v vn c th c mt ng i tt hn. E khng th gn
nhn B ln na v nhn ca B c di ng i bng 6 trong khi E
ch c th gn 9 cho B. Tip B c qut v D c nh nhn
bng (9, 2, B, +).
Lc ny, danh sch qut rng. i ngc ng i t D, ng i
ny c cc nt sau: B (nt trc ca D), A (nt trc ca B) v S.
Thm 2 n v lung (lung ln nht trong nhn ca D) vo cc lin
kt (S, A), (A, B) v (B, D). Lc ny c ba lin kt c cc lung c
lung dng, v th chng iu kin s dng theo chiu ngc
li. Lin kt (A, B) bo ho theo chiu thun v ch iu kin s
dng theo chiu ngc.
Ln tm th hai c kt qu l ng i SCED c di l 11 v lung
bng 3. Ln tm th ba c kt qu l ng i SCEBD c di l 12
v lung bng 1.
Trong ln tm th t, tt c mi nt u c gn nhn tr nt D,
nhng D khng th c gn nhn nn thut ton kt thc. iu ny
tng ng vi cc cut c dung lng bng 6 gia cc nt cn li v
nt D. V th c mt lung ln nht bng vi dung lng ca mt cut
ti thiu. iu ny to ra tng gi tr bng
(9x2 + 11x3 + 12x1) = 63
Nu ch mun gi ba n v lung th iu c th thc hin vi gi
bng
(9x2 + 11x1) = 29
vi ng i u tin v ng i th hai. Chnh v vy, thut ton
ny c th c s dng gii quyt bi ton lung ln nht, gi b
nht ln bi ton tm lung vi gi tr cho trc c gi b nht. Trong
bi ton tm lung vi gi tr cho trc c gi b nht, thut ton c th
dng li khi lung t ti gi tr mong mun. Trong bi ton lung ln
nht, gi b nht, nh ni trn, thut ton c thc hin cho
n khi khng c ng i no na c tm thy.
S m rng thut ton Ford-Fulkerson l ng n. iu bt li duy
nht l vic phi mt s m bo v phc tp tnh ton. Khng
101
cn c vic tm kim theo chiu su na, v c th phi tm mt
ng i m php tm kim c phc tp bng O(L) vi lung c
ln l L. Trong thc t, cc ng i c di b nht c xu hng c
bc nh nht v t khi c s thay i ng k v thi gian hot ng.
Th nhng, theo nh l iu c th xy ra. iu ny t ra yu cu
v s pht trin cc thut ton phc tp hn c phc tp trong
trng hp xu nht b hn. Nhng thut ton nh th gi l thut
ton kp, rt nhiu trong s chng bt u bng vic s dng thut
ton Ford-Fulkerson tm mt lung ti a (hoc mt lung c gi tr
cho trc) v sau tm kim ng chuyn lung khc theo mt chu
trnh c di m, chuyn lung khi ng i c gi cao hn ti
ng i c gi thp hn.
5.4. Bi tp (Pending)
102
Chng 6 iu khin lung v
chng tc nghn
6.1. Tng quan
6.1.1. M u
Trong trao i thng tin, khi pha pht truyn d liu n pha thu th
d liu u tin c lu trong b m pha thu. D liu trong b m
ny sau khi c x l v chuyn ln cc lp pha trn th s c
xa i, dnh b m cho cc d liu k tip.
Trn thc t trao i thng tin trong mng, c th xy ra tnh trng pha
pht truyn d liu vi tc cao hn kh nng x l ca pha thu,
dn n b m ca pha thu s y dn v b trn. Trong trng hp
ny, pha thu khng th nhn thm cc gi d liu t pha pht dn
n vic pha pht phi thc hin truyn li d liu, gy lng ph bng
thng trn ng truyn.
Nhm gim thiu vic phi truyn li thng tin v mt gi do trn hng
i, cn c c ch thc hin kim sot v iu khin lu lng thng
tin i n mt thit b/mng. Chc nng ny c thc hin bi k
thut iu khin lung v kim sot tc nghn.
V d 5.1: hot ng ca mng khi khng c s kim sot
Hnh: Hot ng ca mng khi khng c s kim sot
Trn hnh v ny cc s trn mi lin kt th hin tc truyn d liu
trn ng . Gi s c hai kt ni t B n A (theo ng B Y X
103
A, tc
BA
Kbps) v t C n D (theo ng C Z X D, tc
CD
Kbps).
Gi thit h thng mng khng c kim sot, ngha l tt c cc gi
tin u c th truy cp ti nguyn ca mng, v b m ti cc nt X,
Y v Z c th c s dng bi bt k gi tin no. Gi thit mi trng
truyn khng c li, lc ny cc gi tin khng b sai nhng vn c th
phi c truyn li nu n b nt mng hy do khng cn dung lng
b m lu gi tin tm thi trc khi x l. Gi thit khi gi tin b
mt v khng c lu trong b m th nt pht n s thc hin pht
li nhm m bo vic truyn tin tin cy.
minh ha cho vic iu khin trong mng, ta tm hiu cc trng
hp sau:
1) Trng hp 1: 7
BA
Kbps = v 0
CD
= .
Trong trng hp ny khng xy ra tc nghn v lu lng t B n A
s c mng trung chuyn ht. Tc thng tin n nt A chnh
bng tc thng tin nt B a vo mng, cc ng B-Y, Y-X v X-A
u c tc 7 Kbps
2) Trng hp 2: 8
BA
= + Kbps ( > 0) v 0
CD
=
Trong trng hp ny, tc thng tin t B n A ln hn tc hot
ng ca ng t X n A. V l do ny, tc thng tin t Y n X
ln hn t X n A, lng thng tin d tha s phi c lu trong b
m ca X. B m ca X s dn b y v trn dn n cc gi thng
tin t Y n s khng c lu v b hy. V b m ca Y lu li cc
gi tin cha c bo nhn ( truyn li) nn b m ca Y cng dn
b y v trn.
Nt X c th chuyn 8 Kbps khi lu lng u vo ca n l 8+ Kbps
(X hy Kbps). Lc ny, ng Y X s c tc 8+2 Kbps (trong
8+ Kbps l thng tin t B n v Kbps l thng tin pht li).
Nhng v nt X ch c th truyn 8 Kbps nn n hy 2 Kbps v Y li
phi truyn li lng thng tin ny. Qu trnh ny c tip din v cui
cng ng ni Y X s hot ng vi tc 56 Kbps. Tng t nh
vy, ng lin kt t B n Y cng s hot ng vi tc 16 Kbps
(bao gm c cc gi mi v cc gi c pht li)
gii quyt vn ny, c th lm theo hai cch:
Xy dng h thng mng c kh nng p ng tc ca
thng tin t X n A (8+ Kbps) nhm p ng vi yu cu v
tc ca B gii php ny ch thc s kh thi v hiu qu khi
tc pht tin ca B l n nh trong mt thi gian di, nu
khng hiu qu s dng ti nguyn rt thp nu xy dng h
thng mng c kh nng p ng lu lng ln nhng li ch
hot ng vi cc yu cu trao i lu lng nh.
Gii hn tc truyn tin ca B xung cn 8 Kbps phng n
ny kh thi khi yu cu truyn tin ca B trong phn ln thi gian
104
< 8 Kbps v tc vt 8 Kbps ch din ra trong thi gian
ngn.
Trong hai phng n ny, trn thc t ngi ta s dng phng n 2
vi s h tr ca cc giao thc mng.
3) Trng hp 3: 7
BA
Kbps = v 7
CD
Kbps =
Tng t nh trng hp 1, trng hp 3 khng xy ra tc nghn
trong mng. Thng tin c chuyn n A v D vi tc 7Kbps cho
mi nt. Mi mt lin kt trong mng s hot ng vi tc 7Kbps
4) Trng hp 4: 8
BA
= + Kbps v 7
CD
= Kbps ( > 0)
Trong trng hp ny, ng i t C n D c dung lng (tc )
p ng yu cu cho kt ni C D; tuy nhin yu cu truyn thng
tin trn ng B A vt qu kh nng x l ca tuyn truyn ny.
Trong trng hp ny, hai kt ni B A v C D chia s b m ca
nt X. Nh xt trong trng hp 2, lu lng thng tin t B n A
lm trn b m ca X, iu ny dn n thng tin t B v C khi n X
u b hy. Hin tng ny xy ra i vi tt c cc gi tin (c B v C)
cho d nguyn nhn gy ra l do B. H qu l nt Y v Z cng b trn
b m v tt c cc ng lin kt s hot ng vi tc cc i
ca chng.
Do trc khi chuyn gi tin t B v C n A v D tng ng, nt X
phi lu cc gi tin ny vo b m x l nn trong trng hp b
m X b trn, X s phi hy cc gi tin ny. Do tc thng tin Y X
gp i tc thng tin Z X (khi cc lin kt ny hot ng vi tc
c nh) nn s lng gi tin t Y n X s gp i t Z n X. Ni
mt cch khc, X s hy (hay chp nhn) cc gi tin t Y v Z n
theo t l 2:1. Lc ny thng tin t B n A hot ng vi tc 8
Kbps trong khi thng tin t C n D ch hot ng vi tc 4 Kbps.
So vi trng hp 3, ta thy:
Thng lng tng cng ca mng gim t 14 Kbps xung cn
12 Kbps.
Nt C b i x khng cng bng v tc truyn thng tin ca
n n D b gim t 7 Kbps xung cn 4 Kbps trong khi nt B
khng b nh hng nhiu (gim t 8+ Kbps xung 8 Kbps).
Ngoi ra, nguyn nhn gy ra tc nghn li l do nt B.
gii quyt vn ny, ngi ta c th dnh mt phn dung lng
b m ti X cho cc gi tin t C i n. Vic dnh trc ti nguyn
ny c v nh tri ngc vi nguyn tc ca chuyn mch gi khi ti
nguyn trong mng c chia s bi tt cc cc nt v ngi dng.
Tuy nhin, trn thc t ngi ta c th nh i iu ny m bo
tnh cng bng trong mng.
Hnh di y m t thng lng ca mng trong mi quan h vi lu
lng u vo.
Thng lng: l tc chuyn thng tin ca mng tnh theo gi
/s
105
Lu lng: l tc thng tin i n mng (bao gm c thng
tin mi v thng tin c truyn li)
Hnh: Thng lng ca mng trong mi quan h vi lu lng u vo
Trong trng hp l tng, mng s thc hin chuyn tt c cc gi i
vo mng trong trng hp tc n ca cc gi ny nh hn kh
nng trung chuyn ca mng (lu lng nh hn thng lng). Khi
lu lng thng tin n vt qu thng lng ca mng, trong trng
hp l tng th mng phi c kh nng chuyn cc gi vi tc
bng thng lng ca mng (theo ng l tng trn hnh v)
Trong trng hp thc t, nu h thng mng khng c kim sot
v c cc c ch iu khin, mng s thc hin chuyn tt c cc gi
tin khi lu lng nh hn mt ngng no . Khi lu lng vt qu
gi tr ngng th thng lng bt u gim. Lu lng n cng
nhiu th thng lng cng gim. Trong mt s trng hp dn n
tnh trng deadlock ngha l mng hu nh khng chuyn c gi tin
no na.
Trong trng hp c thc hin iu khin lung v iu khin tc
nghn, h thng mng s c kim sot v c kh nng hot ng
tt ngay c khi c trng hp qu ti xy ra (lu lng i vo mng
ln hn thng lng ca mng). Tuy nhin, do vic thc hin iu
khin lung v tc nghn i hi phi c cc thng tin iu khin nn
thng lng thc t (trong trng hp mng cha qu ti) s nh hn
trng hp l tng, thm ch nh hn so vi trng hp khng c
iu khin.
6.1.2. Khi nim iu khin lung
nh ngha iu khin lung l c ch nhm m bo vic
truyn thng tin ca pha pht khng vt qu kh nng x l
ca pha thu.
Trong k thut mng, iu khin lung c chia lm hai loi.
106
iu khin lung gia hai nt u cui (end-to-end): nhm m
bo nt ngun (ni khi to phin thng tin) thc hin truyn
thng tin khng vt qu kh nng x l ca nt ch (ni kt
thc phin thng tin).
iu khin lung gia hai nt trong mng (hop-by-hop): l vic
thc hin iu khin lung gia hai nt lin tip trn ng i
t ngun n ch.
6.1.3. Khi nim chng tc nghn
nh ngha Chng tc nghn l c ch kim sot thng tin
i vo mng nhm m bo tng lu lng thng tin i vo mng
khng vt qu kh nng x l ca ton mng.
Chng tc nghn c chia lm hai loi:
iu khin truy nhp mng (network access): kim sot v
iu khin lng thng tin c th i vo trong mng.
iu khin cp pht b m (buffer allocation): l c ch
thc hin ti cc nt mng nhm m bo vic s dng b
m l cng bng v trnh vic khng truyn tin c do b
m ca tt c cc nt b trn (deadlock).
Chng tc nghn lin quan n vic kim sot thng tin trn ton
mng, trong khi iu khin lung l vic kim sot thng tin gia hai
u cui c th. Hai k thut ny c im tng ng l phi gii hn
lu lng thng tin nhm trnh kh nng qu ti ca h thng ch.
Do tnh cht gn kt ca hai khi nim ny, a phn cc ti liu u s
dng ln (hoc kt hp) cc khi nim iu khin lung (flow control)
v iu khin tc nghn (congestion control).
V l do , trong ti liu ny, chng ti s dng khi nim iu khin
lung din t c hai phm tr. Trong nhng trng hp c th cn
phi phn bit lm r hai khi nim, chng ti s c nhng ch thch r
rng.
6.1.4. Nhim v ch yu ca iu khin lung v chng tc nghn
iu khin lung v chng tc nghn c s dng khi c s gii hn
v ti nguyn (thng l bng thng) gia im truy nhp thng tin.
Khi nim im truy nhp y c th l gia hai ngi s dng,
gia ngi s dng vi im truy nhp mng hay gia hai thit b
mng
Mc ch chnh ca vic s dng iu khin lung v chng tc nghn
trong mng l nhm:
Ti u ha thng lng s dng ca mng: trong trng
hp thng tin ch truyn gia hai ngi dng, vic ti u ha
tc truyn tin khng cn t ra. Tuy nhin, trong mt h
107
thng mng vi s tham gia trao i thng tin ca nhiu nt
mng, vic ti u ha thng lng ca h thng mng phc
tp hn nhiu.
Gim tr gi khi i qua mng: ng trn phng din
ngi s dng, tr gi t u cui n u cui cng nh cng
tt. Tuy nhin, iu khin lung ( lp mng) khng nhm thc
hin iu . iu khin lung ch m bo tr ca gi tin khi i
qua mng nm mt mc chp nhn c thng qua vic gii
hn s lng gi tin i vo mng (v do , gim tr hng i).
V l do , iu khin lung khng c tc dng vi nhng ng
dng i hi tr nh trong khi li truyn trn h thng h tng
tc thp. Trong trng hp ny, vic p ng yu cu ca
ngi s dng ch c th c thc hin thng qua vic nng
cp h thng hay s dng cc gii thut nh tuyn ti u hn.
Mc ch chnh ca vic gim tr gi l gim s lng ph ti
nguyn khi phi truyn li gi. Vic truyn li c c th do hai
nguyn nhn: (1) hng i ca cc nt mng b y dn n
gi thng tin b hy v phi truyn li; (2) thng tin bo nhn
quay tr li nt ngun qu tr khin pha pht cho rng thng
tin truyn i b mt v phi truyn li
m bo tnh cng bng cho vic trao i thng tin
trn mng: m bo tnh cng bng trong trao i thng tin l
mt trong nhng yu t tin quyt ca k thut mng. Vic m
bo tnh cng bng cho php ngi s dng c dng ti
nguyn mng vi c hi nh nhau. Trong trng hp ngi s
dng c chia thnh cc nhm vi mc u tin khc nhau
th bo m tnh cng bng c thc hin i vi cc ngi
dng trong cng mt nhm.
m bo trnh tc nghn trong mng: tc nghn l hin
tng thng lng ca mng gim v tr tng ln khi lng
thng tin i vo mng tng. iu khin lung cung cp c ch
gii hn lng thng tin i vo mng nhm trnh hin tng
tc nghn k trn. C th hnh dung iu khin lung nh hot
ng ca cnh st giao thng trn ng ph vo gi cao
im.
Nh trn trnh by, iu khin lung v trnh tc nghn thng
c s dng kt hp vi nhau kim sot thng tin trn mng.
iu khin lung v trnh tc nghn c s dng nhiu nht ti cc
lp lin kt d liu (data link), lp mng (network) v lp giao vn
(transport) trong iu khin lung hop-by-hop c s dng lp
lin kt d liu, iu khin lung end-to-end c s dng lp giao
vn v iu khin tc nghn c s dng lp mng.
6.1.5. Phn loi iu khin lung v trnh tc nghn
Trong cc phn ti, chng ta s ln lt tm hiu cc c ch v chnh
sch thc hin iu khin lung v trnh tc nghn. Cc c ch ny
c phn ra lm ba loi chnh:
108
Cc c ch cp pht b m
Cc c ch ca s
Cc c ch iu khin truy nhp mng
6.2. Tnh cng bng
6.2.1. nh ngha
nh ngha Tnh cng bng l kh nng m bo cho cc
ngi dng, cc ng dng khc nhau c s dng ti nguyn
mng vi c hi nh nhau.
m bo tnh cng bng l mt trong nhng tiu ch hng u ca k
thut mng.
V d: xem li v d u chng (v d s...) thy c tnh cng
bng.
6.2.2. Tnh cng bng v mt bng truyn
nh ngha Tnh cng bng v mt bng truyn th hin
kh nng chia s bng truyn cng bng cho tt c ngi dng
hoc kt ni.
V d 5.2: Xt m hnh mng nh trn hnh v di y. Lin kt
gia cc nt c tc 1Mbps.
Thng lng ca mng s t cc i (bng 3Mbps) nu cc
kt ni 2, 3 v 4 c s dng ton b 1 Mbps bng thng v
kt ni 1 khng c cung cp lng bng thng no c
Mt khi nim khc ca tnh cng bng l cho mi kt ni s
dng 0,5Mbps bng thng. Lc ny tng thng lng ca mng
s l 2Mbps.
Nu cung cp lng ti nguyn mng (bng thng) cho tt c
cc kt ni l nh nhau, lc y cc kt ni 2, 3, 4 s c s
dng 0,75Mbps v kt ni 1 s dng 0,25 Mbps (v c s
dng trn ton b ng truyn)
Hnh: Minh ha s nh i gia thng lng v tnh cng bng
109
6.2.3. Tnh cng bng v mt b m
Hnh v di minh ha khi nim s dng b m
Gi s nt mng B c dung lng b m hu hn
Lin kt 1 (t A n B) c tc 10Mbps, lin kt 2 (t D n
B) c tc 1 Mbps.
Nu khng c c ch iu khin lung v qun l b m, t l
s dng dung lng b m ti B ca hai lin kt 1 v 2 s l
10:1 (do tc thng tin n B tng ng l 10Mbps v
1Mbps)
B
D
C A
E
Kt ni 2
Kt ni 1
10
1
1
1
Hnh: Minh ha v s khng cng bng khi s dng b m
Hnh v di minh ha hin tng tc nghn xy ra do trn b m.
Trong hnh (a), b m ca nt A c in y bi thng
tin n t B v ngc li. H qu l A v B khng nhn c
thm thng tin t nhau v vic truyn thng tin l khng thc
hin c (deadlock)
Trong hnh (b), gi s b m ca A y cc gi thng tin ca
B, b m ca B y thng tin ca C v b m ca C y cc
thng tin ca A. Tng t nh trng hp hnh A, trong trng
hp ny, vic truyn tin cng khng thc hin c do trn b
m.
110
Hnh: Tc nghn do trn b m
nh ngha Tnh cng bng v mt b m l kh nng
m bo vic s dng b m ca cc ngi dng, cc ng
dng hay kt ni l cng bng.
Vi vic s dng c ch iu khin lung v cc c ch qun l b
m, vic phn chia s dng b m gia cc ngi dng, ng dng
hay cc kt ni s c thc hin cng bng hn.
6.2.4. C ch pht li ARQ
Cc c ch iu khin lung v iu khin tc nghn theo phng
php ca s c hot ng tng t nh cc c ch pht li ARQ
(Automatic Repeat Request). V l do , trong phn ny, chng ti
trnh by cc khi nim c bn v cc c ch ARQ lm nn tng cho
vic tm hiu v iu khin lung v iu khin tc nghn cc phn
sau.
Khi truyn thng tin trong mng, thng tin truyn t pha pht sang
pha thu c th b sai li hoc mt. Trong trng hp thng tin b mt,
cn phi thc hin truyn li thng tin. Vi trng hp thng tin b sai,
c th sa sai bng mt trong hai cch:
Sa li trc tip bn thu: pha thu sau khi pht hin li c th
sa li trc tip ngay bn thu m khng yu cu phi pht li.
c th thc hin c iu ny, thng tin trc khi truyn i
phi c ci cc m sa li (bn cnh vic c kh nng pht
hin li, cn c kh nng sa li).
111
Yu cu pha pht truyn li: pha thu sau khi kim tra v pht
hin c li s yu cu pha pht truyn li thng tin.
c im ca hai phng php sa li trn:
Sa li trc tip bn thu (Forward Error Correction FEC): ch
cn truyn thng tin mt ln, khng yu cu phi truyn li
thng tin trong trng hp c li. Tuy nhin, s lng bit thng
tin c th sa sai ph thuc vo s loi m sa sai v s bit
thng tin thm vo cho mc ch sa sai. Nhn chung, s bt
thng tin thm vo cng ln th s bit c th sa sai cng nhiu,
tuy nhin hiu sut thng tin (s bit thng tin hu ch trn tng
s bit truyn i) li thp.
Sa li bng cch truyn li: khc vi sa li trc tip bn thu,
trong trng hp sa li bng cch truyn li, thng tin trc
khi pht ch cn thm cc bit thng tin phc v cho mc ch
pht hin li (s bit thm vo t hn so vi trng hp sa li)
do hiu sut truyn thng tin cao hn so vi trng hp
trn. Tuy nhin, trong trng hp c li xy ra vi khung thng
tin th ton b khung thng tin phi c truyn li (gim hiu
sut truyn tin).
Vi u nhc im ca cc phng php trn, sa li bng
cch truyn li thng c dng trong mi trng c t l li
bit thp (truyn dn hu tuyn) trong khi sa li bn thu thng
c dng trong trng hp mi trng truyn dn c t l li
bit cao (v tuyn). c th i ph vi trng hp li chm
(burst noise), c th p dng mt s c ch nh ghp xen k
thng tin (interleaving).
Trong khun kh chng ny, chng ti trnh by vic iu khin li
theo c ch pht li. Cc c ch ny c gi l ARQ (Automatic
Repeat Request). C ch sa li trc tip bn thu c trnh by
trong cc ni dung ca mn hc khc.
Cc c ch pht li c chia ra lm 3 loi chnh:
C ch pht li dng v i (Stop-and-Wait ARQ)
C ch pht li theo nhm (Go-back-N ARQ)
C ch pht li c la chn (Selective repeat ARQ)
Phn di y s ln lt trnh by nguyn tc hot ng cng nh
nh gi hiu nng ca mi phng php.
6.2.5. Stop-and-Wait ARQ
C ch hot ng
Trong c ch pht li theo phng php dng v i (Stop-and-Wait
ARQ), pha pht s thc hin pht mt khung thng tin sau dng
li, ch pha thu bo nhn.
112
Pha thu khi nhn ng khung thng tin v x l xong s gi
bo nhn li cho pha pht. Pha pht sau khi nhn c bo
nhn s pht khung thng tin tip theo.
Pha thu khi nhn khung thng tin v pht hin sai s gi bo
sai li cho pha pht. Pha pht sau khi nhn c bo sai s
thc hin pht li khung thng tin.
Bo nhn c s dng cho khung thng tin ng v c gi l ACK
(vit tt ca ch Acknowledgement). Bo sai c s dng cho khung
thng tin b sai v c gi l NAK (vit tt ca ch Negative
Acknowledgement).
Hnh v di y m t nguyn tc hot ng c bn ca c ch pht
li dng v i.
Packet 0 CRC Packet 1 CRC Packet 1 CRC
Nhn ng
khung 0
Nhn ng
khung 1
Pht hin
khung 1 sai
Trc thi gian bn thu
Trc thi gian bn pht
Thi gian
ACK NAK
Hnh: Pht li theo c ch dng v i
5) Cu hi: Trong trng hp pha pht khng nhn c thng tin
g t pha thu, pha pht s lm g?
Pha pht khng nhn c thng tin t pha thu trong hai trng hp:
Khung thng tin b mt, pha thu khng nhn c g v cng
khng gi thng bo cho pha pht.
Pha thu nhn c ng khung thng tin v gi ACK ri,
nhng ACK b mt; hoc pha thu nhn c khung thng tin
v pht hin sai v gi NAK nhng khung ny b mt.
trnh tnh trng pha pht khng pht thng tin do ch ACK (hoc
NAK) t pha thu, mi khi pht mt khung thng tin, pha pht s t
mt ng h m ngc (time-out) cho khung thng tin . Ht
khong thi gian time-out, nu pha pht ko nhn c thng tin g t
pha thu th n s ch ng pht li khung thng tin b time-out.
6) Cu hi: Trong trng hp pha pht phi pht li khung thng tin
do time-out, nhng khung thng tin c nhn ng pha
thu ri (time-out xy ra do ACK b mt), pha thu lm th no c
th phn bit l khung thng tin ny l khung pht li hay khung
thng tin mi?
c th phn bit c cc khung thng tin vi nhau, cn nh s
khc khung. Trong trng hp ny, ch cn dng mt bit nh s
khung (0 hoc 1).
113
trnh tnh trng cc nhm ln gia cc khung thng tin c pht
v bo nhn tng ng, tt c cc khung c truyn i gia hai pha
pht thu u c nh s (0, 1) lun phin. S th t khung thng
tin t pha pht sang pha thu nm trong trng SN (Sequence
Number) v s th t ca bo nhn t pha thu sang pha pht nm
trong trng RN (Request Number). SN l s th t c khi to
bn pht, trong khi , RN l s th t ca khung tip theo m pha
thu mun nhn. RN = SN + 1 trong trng hp khung ng (ng vi
ACK), RN = SN trong trng hp pha thu yu cu pht li do khung
sai (ng vi NAK).
Trn thc t, thng tin trao i gia hai im thng c truyn theo
hai chiu, ngha l ng thi tn ti hai knh truyn t pht n thu v
ngc li. Trong trng hp ny, khung ACK/NAK (hay trng RN)
khng cn nm trong mt khung bo nhn c lp m c th nm
ngay trong tiu ca khung thng tin c truyn theo chiu t thu
n pht. Mt s giao thc c khung thng tin bo nhn c lp
(ACK/NAK) trong khi mt s giao thc khc li s dng lun khung
thng tin truyn theo chiu ngc li (t thu sang pht) thc hin
bo nhn (hay bo li) cho khung thng tin t pht sang thu
Tm tt c ch hot ng ca Stop-and-Wait ARQ
Pha pht gi s ti thi im u SN = 0
1) Nhn gi tin t lp pha trn v gn SN cho gi tin ny
2) Gi gi tin SN ny trong mt khung thng tin c s th t l SN
3) Ch khung thng tin (khng c li, ng vai tr l khung bo nhn)
t pha thu.
Nu khung nhn c khng c li, v trong trng Request c
RN > SN th t gi tr SN = RN v quay li bc 1
Nu khng nhn c khung thng tin trong mt khong thi gian
nh trc (time-out), th thc hin bc 2
Pha thu gi s ti thi im u RN = 0
4) Khi nhn c mt khung thng tin (khng c li) t pha pht,
chuyn khung ny ln lp pha trn v tng gi tr RN ln 1
5) Trong trng hp nhn c khung thng tin c li, gi li mt
khung thng tin cho pha pht vi RN c gi nguyn (khung bo
sai - NAK). Khung c gi t pha thu ny c th cha c thng
tin t pha thu sng pha pht ch khng n thun ch dng cho
mc ch bo sai.
Hnh di y m t nguyn tc hot ng ca c ch Stop-and-Wait
ARQ khi c s dng SN v RN.
114
Hnh: Stop-and-Wait ARQ c s dng SN/RN
Hiu sut ca phng php Stop-and-Wait ARQ
nh ngha Hiu sut ca vic truyn tin gia pha pht v thu
l t l gia thi gian pha pht cn pht xong lng thng tin
trn tng thi gian cn thit truyn lng thng tin .
Tng thi gian cn thit y bao gm thi gian tr khi truyn tn hiu
t pht sang thu (v ngc li) cng nh thi gian x l thng tin v
thi gian ch bo nhn t pha thu.
tnh hiu sut tnh cho phng php ARQ dng v i, ngi ta
tnh cho mt khung thng tin in hnh, hiu sut ca c mt phin
truyn cho nhiu khung thng tin v bn cht chnh bng hiu sut khi
tnh cho mt khung (v c t s v mu s cng nhn vi mt h s t
l l s khung thng tin c truyn)
Trng hp 1: Gi thit mi trng khng c li, thng tin t truyn
t pha pht sang pha thu ch chu nh hng ca tr
Hnh: Gin thi gian khi truyn tin t pht sang thu, khng c li
Trong :
T
F
= thi gian pht khung thng tin
T
D
= tr truyn sng gia pha pht v pha thu
115
T
P
= thi gian x l khung thng tin pha thu
T
ACK
= thi gian pht khung ACK
T
P
= thi gian x l khung ACK pha pht
Ta c:
Thi gian pha pht cn pht xong khung thng tin l T
F
Tng thi gian cn thit truyn khung thng tin l T =
T
F
+T
D
+T
P
+T
ACK
+T
D
+T
P
. V thi gian x l khung thng tin T
P
v
T
P
l kh nh nn c th b qua. Trong trng hp kch thc
khung thng tin F ln hn khung bo nhn ACK rt nhiu th c
th b qua c T
ACK
. Nh vy T = T
F
+2T
D
.
Hiu sut truyn:
2
F
F D
T
T T
=
+
=
1
1 2a +
vi a =
D
F
T
T
Trong :
D
d
T
v
= vi d l khong cch gia hai trm pht v thu; v l vn tc
truyn sng trong mi trng. v = 3.10
8
m/s khi truyn trong khng
gian t do.
F
L
T
R
= vi L l kch thc khung thng tin v R l tc ng
truyn
Khi
Rd
a
vL
= , a cng nh th hiu sut truyn cng ln
V d 5.3: tnh hiu sut ca phng php pht li theo c ch ARQ
dng v i cho tuyn thng tin v tinh. Gi thit khong cch t v
tinh ti mt t l 36.000 km, vn tc truyn sng trong khng kh l
3.10
8
m/s, tc thng tin l 56 Kbps v khung c kch thc 4000
bits.
Gii: Ta c
3 6
8 3
56.10 .36.10
1, 68
3.10 .4.10
Rd
a
vL
= = = ,
Do hiu sut
1 1
22, 94%
1 2 1 2.1, 68 a
= = =
+ +
.
Hin ti, cc dch v thng tin v tinh c tc ln hn nhiu (R ln)
nn h s a cng ln v hiu sut s cn nh hn trng hp v d
ny.
V d 5.4: tnh hiu sut ca phng php pht li theo v d trn
nhng s dng co kt ni trong mng LAN vi khong cch gia hai
116
trm l 100 m, vn tc truyn sng trn cp ng l 2.10
8
m/s, tc
truyn thng tin l 10 Mbps v khung c kch thc 500 bits.
Gii: tnh tng t nh trng hp trn, ta c
6
8
10.10 .100
0, 01
2.10 .500
Rd
a
vL
= = = , hiu sut
1 1
98, 04%
1 2 1 2.0, 01 a
= = =
+ +
Nh vy, vi thng tin trong mng LAN, do c ly nh nn hiu sut
c ci thin so vi trng hp truyn thng tin v tinh.
6) Trng hp 2: phn trn, tnh ton hiu sut, chng ta
gi thit mi trng truyn l tng (khng c li). Tuy nhin, mi
trng truyn thc t lun c li v c c trng bi xc sut li
p, do , hiu sut truyn trn thc t s nh hn so vi trng
hp l tng.
nh ngha xc sut li Xc sut li p (0 p 1) l xc sut
pha thu nhn c bit 0 khi pha pht truyn bit 1 (hoc ngc
li).
Xc sut li cng ln th mi trng truyn cng khng tt, khi p = 0 th
mi trng truyn khng c li (l tng); p = 1 l khi mi trng
truyn lun lun c li (s khng dng truyn tin).
Khi 0,5 < p < 1 tc l kh nng pha thu nhn c thng tin c li s
ln hn nhn c thng tin ng, trong trng hp ny, ch cn o
bit lung thng tin thu c l ta c th chuyn thnh trng hp 0 < p
< 0,5. V l do , trong l thuyt thng tin, ngi ta ch tm hiu cc
mi trng truyn dn c xc sut li 0 p 0,5.
Nh trn trnh by, khi truyn thng tin trong mi trng c li, c
th xy ra trng hp phi truyn li khung thng tin (do li), do ,
hiu sut trong trng hp ny nh hn trng hp l tng. Gi N
R
l s khung thng tin phi truyn cho n khi ng ( 1 N
R
), khi
y, hiu sut ca trng hp khng l tng s l '
ideal
reality
R
N
= . Vn
y l tnh c gi tr N
R.
n gin ha, ta gi thit ACK v
NAK khng b li. Ta thy, vi xc sut li l p th:
Xc sut truyn khung thnh cng ngay ln u l 1-p
Xc sut truyn khung n ln th hai mi thnh cng l
p(1-p)
Tng qu ho: xc sut truyn khung n ln th i mi
thnh cng l p
i-1
(1-p)
Vy:
1
1
1
(1 )
1
i
R
i
N ip p
p
=
= =
.
117
Hiu sut ca phng php ARQ dng v i trong trng hp thc
t:
1
1 2
ideal
reality
R
p
N a
= =
+
Nhn xt
Nh phn trn trnh by, hiu sut ca phng php truyn theo
c ch dng v i ph thuc vo h s
Rd
a
vL
= , a cng nh th hiu
sut cng ln. Ta thy a s nh khi v.L ln hoc khi R.d nh.
R nh y l iu khng mong mun khi truyn thng tin v
trn thc t, ngi ta mong mun truyn tin vi tc ng
truyn cng cao cng tt.
d nh tham s khong cch gia pha pht v pha thu
thng khng thay i c do ph thuc vo nhng yu cu
khch quan bn ngoi.
v ln vn tc truyn sng trong mi trng c cc gi tr nht
nh v rt kh c th thay i.
L ln c th tng kch thc khung tng hiu sut. Tuy
nhin phng php ny c nhc im l thng tin truyn li
s ln nu khung thng tin ban u b sai. Cng v l do ny m
mi mi trng truyn dn nht nh s c kch thc khung ti
u tng ng.
Nh vy, h s a gn nh khng th thay i dn n phng php
truyn li theo c ch dng v i khng c s dng ph bin do
hiu qu s dng ng truyn khng cao. nng hiu sut ln, cn
c nhng c ch mi nhm m bo pha pht c th tn dng c
thi gian rnh ri trong khi ch bo nhn t pha thu. Ngi ta da
trn c ch dng v i ny to ra cc c ch mi cho hiu qu
truyn cao hn, c th l c ch truyn li theo nhm (Go-back-N
ARQ) v c ch pht li theo yu cu (Selective Repeat ARQ).
6.2.6. Go-back-N ARQ
C ch hot ng
Vi c ch pht li Go-back-N, pha pht s c pht nhiu hn mt
khung thng tin trc khi nhn c bo nhn t pha thu. S khung
thng tin cc i m pha pht c th pht (k hiu l W) c gi l
kch thc ca s. Vi c ch hot ng ny, Go-back-N (v c
phng php selective repeat trnh by phn sau) c gi l c
ch ca s trt (sliding window)
Mi khi pht xong mt khung thng tin, pha pht gim kch thc ca
s i 1, khi kch thc ca s bng 0, pha pht s khng c pht
thm khung thng tin no na (iu ny m bo s khung thng tin
118
ng thi n pha thu khng vt qu W, v do , khng vt qu
kh nng x l ca pha thu).
Mi khi pha thu nhn c mt khung thng tin ng v x l xong,
pha thu s gi li mt bo nhn ACK cho pha pht. Khi nhn c
bo nhn ny, pha pht s tng kch thc ca s W ln 1. iu ny
ng ngha vi vic pha pht s c pht thm mt khung na,
ngoi W khung pht trc , v pha thu x l xong mt khung,
v nh vy, tng s khung m pha thu phi x l ti mt thi im vn
khng vt qu W.
c th phn bit cc khung trn ng truyn, cc khung cn c
nh s th t. Nu dng k bit nh s th tng s khung c
nh s s l 2
k
(t 0 n 2
k
1) v do , kch thc ca s ti a
W
max
= 2
k
(v mt l thuyt).
V d s dng 3 bit nh s th t cho cc khung thng tin. Lc
ny kch thc ca s cc i s l 7 (yu cu sinh vin gii thch l
do). Ti thi im ban u, c pha pht v thu u c kch thc ca
s l 7 th hin rng pha pht c php pht ti a l 7 khung (bt
u t khung F0). Sau khi pha pht pht c ba khung (F0, F1,
F2) v cha nhn c ACK, pha pht gim kch thc ca s xung
cn 4. Lc ny ca s pha pht bao gm cc khung t F3 n F6 th
hin rng pha pht cn c php truyn ti a l 4 khung na, bt
u t khung F3.
pha thu, sau khi nhn ng v x l xong ba khung F0, F1 v F2
th s gi li ACK3 cho pha pht. ACK3 nhm m ch rng: Pha thu
nhn v x l xong cc khung cho n F2 v pha thu ang sn
sng nhn khung 3. Thc t, pha thu sn sng nhn 7 khung bt u
t khung F3. Phia thu ng thi tng kch thc ca s bn thu ln 7,
bao cc khung t F3 cho n F1.
Pha pht sau khi nhn c ACK3 s tng kch thc ca s thm 3
n v. Lc ny ca s pha pht W = 7 v bao cc khung t F3 n
F1. Gi s lc ny pha pht thc hin pht cc khung t F3 n F6 (4
khung). Sau khi pht, pha pht s gim kch thc ca s i 4 (W =
3), lc ny ca s ch cn bao cc khung F7, F0 v F1.
Pha thu gi li ACK4, bo rng n nhn v x l xong khung F3,
ACK4 m ch rng pha pht c php pht ti a l 7 khung bt u
t F4. Tuy nhin khi ACK4 v n pha pht th pha pht thc hin
pht cc khung F4, F5 v F6 ri, nh vy, pha pht s ch cn pht
c ti a l 4 khung bt u t F7.
Hnh di y minh ha nguyn tc hot ng ca c ch ca s
trt.
119
Hnh: Nguyn tc hot ng ca c ch ca s trt
Trong trng hp l tng (khng c li xy ra) th c ch ca s
trt m bo s khung thng tin t pha pht n pha thu khng
vt qu kch thc ca s. Trong trng hp ny, khng c s phn
bit gia Go-back-N v selective repeat (v chng c gi chung l
sliding window).
Khi c li xy ra, vic truyn li cc khung li ca c ch ca s trt
c thc hin theo hai cch khc nhau:
Go-back-N: pha pht s thc hin pht li khung thng tin b
sai v tt c cc khung thng tin khc c truyn, tnh t
khung b sai.
Selective repeat: pha pht s ch pht li cc khung thng tin b
sai
c th hiu r hn v c ch hot ng ca Go-back-N, ta xt mt
s trng hp c th sau:
1) Khung thng tin b li c th xy ra mt trong ba trng hp:
Pha pht pht khung i, pha thu thu ng cc khung t i
1 tr v trc. Lc ny pha thu s gi NAK i (RN = i) cho
pha pht bo li cho khung i. Khi pha pht nhn c NAK
i, n s thc hin pht li khung i v tt c cc khung sau i (nu
cc khung c pht).
Khung thng tin i b mt trn ng truyn, gi s pha thu
nhn c khung i+1, lc ny pha thu thy cc khung n
khng theo th t (nhn c i+1 trc khi nhn c i) v
120
hiu rng khung i mt. Pha thu s gi li NAK i cho pha
pht.
Khung thng tin i b mt trn ng truyn v pha pht khng
gi thm khung thng tin no na. Lc ny pha thu khng
nhn c g v khng gi li ACK hay NAK. Pha pht ch
n time-out ca khung thng tin i v thc hin truyn li khung
ny.
2) Khung ACK b li ACK b li c th xy ra mt trong hai trng
hp:
Pha thu nhn c khung i v gi ACK(i+1) v pha pht v
ACK ny b mt trn ng truyn. Gi s trc khi time-out
ca khung i xy ra, pha pht nhn c ACK(i+2) (hoc
ACK(i+n) vi n > 1) th pha pht hiu rng khung i c
nhn ng. Kt lun ny c gii thch nh sau: khi pha thu
gi ACK(i+2) ngha l pha thu nhn ng (v chp nhn)
khung i+1, iu cng ng ngha vi vic pha thu nhn
ng khung i. Ngi ta ni c ch ca Go-back-N s dng
cummulative ACK (ngha l cc ACK sau cng ng thi bo
nhn cho cc khung trc )
Nu trong khong thi gian time-out ca khung i, pha pht
khng nhn c ACK(i+n) no c th sau time-out, pha pht
s phi pht li khung i (v tt c cc khung sau ).
3) Khung NAK b li trong trng hp NAK b li, ngha l khung i b
li, lc ny pha thu s khng nhn thm mt khung no sau khung
i (v cng s khng gi bo nhn). Vi trng hp ny pha pht
bt buc phi ch n time-out v thc hin pht li khung thng
tin i.
4) n gin vn , chng ta khng xem xt trng hp ACK v
NAK b sai (nu xt th s nh th no???)
Hnh 1-8 y trnh by nguyn tc pht li ca ARQ Go-back-N khi c
li xy ra vi khung thng tin
Hnh 5-8: Minh ha c ch Go-back-N ARQ
Mt s ch ca c ch hot ng ARQ Go-back-N
Bn cnh nguyn tc hot ng v minh ha trnh by trn y, cn
ch mt s im sau khi tm hiu hot ng ca Go-back-N
121
Trong trng hp pha thu c kh nng x l W khung thng tin
th khng cn b m. Pha thu ch nhn v x l thng tin theo
ng th t (da trn s th t nh trn cc khung)
Pha thu chuyn cc gi thng tin ln lp cao hn theo th
t
Pha thu s khng nhn khung i+1 nu cha nhn c
khung i. iu ny l nguyn nhn khin pha thu khng cn
phi c b m
Pha pht phi lu ti a l W khung thng tin trong b m
ch ACK
Hiu sut ca c ch ARQ Go-back-N
Tng t nh trng hp ARQ dng v i, khi tnh hiu sut ca
phng php pht li ARQ Go-back-N, chng ta cng tnh trong hai
trng hp: trng hp l tng v v trng hp thc t.
1) Trng hp 1: trong iu kin l tng
c th tnh c hiu sut ca phng php ARQ Go-back-N
trong trng hp l tng, chng ta da trn hiu sut ca phng
php dng v i bit. l:
1
1 2a
=
+
trong
D
F
T
a=
T
. Nu chun
ha n v T
F
= 1 n v thi gian (gi thit thi gian pht khung l 1
n v chun) th tr truyn sng t gia hai trm thu pht l a n v
thi gian. Ni mt cch khc, khung thng tin truyn t pht sang thu
v khung ACK/NAK truyn t thu v pht mt mt khong thi gian l
a n v thi gian.
Hnh 1-9 trnh by v gin thi gian ca phng php ca s trt.
Hnh 1-9(a) minh ha trong trng hp kch thc ca s W > 2a + 1
v hnh 1-9 (b) minh ha trong trng hp kch thc ca s W < 2a
+ 1.
Quy c:
[X] l s nguyn nh nht ln hn hay bng X.
A l pha pht, B l pha thu
122
Hnh 5-9(a): Gin thi gian phng php ca s trt, W > 2a+1
A
A
A
A
B
B
B
B
t
0
t
0
+ a
t
0
+ a + 1
t
0
+ 2a + 1
Bit u khung 1
Khung 1 Khung 2 Khung [a] ...
Khung 2 Khung 3 Khung [a+1] ...
Bit u ACK2
Khung [a+2] Khung N ...
ACK2
Hnh 5-9(b): Gin thi gian phng php ca s trt, W < 2a+1
Hiu sut ca phng php ny ph thuc vo kch thc ca s W
v gi tr a. Trn hnh 1-9(a) v 1-9(b), pha pht A thc hin truyn
cc khung ti thi im t
0
(bit u tin ca khung u tin). Bit u tin
ny n pha thu B ti thi im t
0
+a. Ton b khung u tin n B ti
thi im t
0
+a+1. Gi thit b qua thi gian x l, nh vy B cng c
th gi bo nhn ACK ti thi im t
0
+a+1. Trong trng hp kch
thc bo nhn nh th y cng l thi im ton b bo nhn ACK
ri khi pha thu. Bo nhn ny n pha pht A ti thi im t
0
+2a+1.
Gi thit pha pht lun c d liu c th truyn lin tc, khi y c
hai trng hp xy ra.
Nu W 2a+1: bo nhn u tin n pha pht trc khi W =
0. K t thi im A nhn c bo nhn u tin, c mi mt
n v thi gian A pht c mt khung thng tin v cng ng
thi nhn c mt bo nhn, nh vy A c th pht tin lin tc
123
Nu W < 2a+1: kch thc ca s pha pht W = 0 t ti thi
im t
0
+W (xy ra trc thi im t
0
+2a+1) v pha pht khng
th pht khung trong khong thi gian t t
0
+W n t
0
+2a+1.
Hiu sut ca phng php ca s trt lc ny:
2 1
window
W
a
=
+
khi W < 2a+1 v 1
window
= khi W 2a + 1
2) Trng hp 2: trong trng hp thc t, do c li xy ra nn hiu
sut thc t nh hn hiu sut trong trng hp l tng
window
Go back N
R
N
= trong N
R
l s l pht trung bnh cho n khi
thnh cng.
Vi trng hp Go-back-N, mi khi c li xy ra, pha pht s phi
pht li K khung (vic xc nh K s c tnh phn sau).
Xc sut khung thng tin c truyn n ln th i th ng
1
( ) .(1 )
i
p i p p
= (trong p
i-1
l xc sut i-1 ln truyn u tin b
sai) v 1-p l xc sut ln truyn th i ng.
Vi trng hp ny, tng s khung phi truyn li s l f(i) = 1 + (i-1).K
trong (i-1).K l tng s khung phi truyn li cho i-1 ln truyn sai.
Vy s khung trung bnh cn truyn trong trng hp truyn n ln
th i mi ng l N(i) = f(i).p(i)
S khung trung bnh cn truyn cho n khi thnh cng:
| |
1 1
1 1
( ). (1 ) (1-K)+Ki (1 )
i i
R
i i
N f i p p p p
= =
= =
1 1
1 1
(1 ) (1 ) (1 )
i i
R
i i
N K p p K ip p
= =
= +
S dng cc kt qu sau:
1
0 1
1
1
i i
i i
r r
r
= =
= =
V:
i-1
2
1
1
i.r
(1 )
i
r
=
=
Ta c:
1
1
1 1
R
K p Kp
N K
p p
+
= + =
Tnh K:
tnh hiu sut ca phng php Go-back-N, ta gi thit pha pht
lun c d liu pht (thc hin pht lin tc, tr khi phi dng li do
kch thc ca s = 0). Nh vy,
124
Nu W 2a + 1 th K 2a + 1 do khi NAK ca khung i v th
pha pht pht thm c 2a + 1 khung
Nu W < 2a + 1 th K = W do khi NAK ca khung i v th pha
pht pht xong kch thc ca s (W khung) v ang ch
bo nhn cho khung i pht tip.
Hiu sut:
1
1 2
Go back N
p
ap
=
+
khi W 2a+1
V:
W(1-p)
(2a+1)(1-p+Wp)
Go back N
= khi W < 2a+1
Nhn xt
u im ca phng php ARQ Go-back-N l hiu sut cao hn so
vi phng php ARQ dng v i. Bn cnh , c ch x l thng
tin pha thu kh n gin v khng cn b m.
Tuy nhin, phng php ny c nhc im l cn truyn li qu
nhiu khung thng tin trong trng hp khung thng tin b li. khc
phc nhc im ny, ngi ta xut s dng c ch ARQ pht li
theo yu cu (Selective repeat ARQ)
6.2.7. Selective repeat ARQ
C ch hot ng
Tng t nh c ch pht li Go-back-N, c ch pht li c la chn
(selective repeat ARQ) cng da trn phng php ca s trt. Pha
pht c php pht ti a W khung thng tin (kch thc ca s)
trc khi nhn c bo nhn.
im khc bit gia selective repeat v Go-back-N nm cch hai
phng thc ny x l khung thng tin b li. Vi trng hp selective
repeat, pha pht s ch thc hin pht li khung thng tin b li m
khng cn pht li tt c cc khung khc sau khung li nu nh cc
khung khng b sai. C ch ny gip tng hiu qu s dng ng
truyn so vi c ch Go-back-N.
Hnh 5-10 m t nguyn tc hot ng ca selective repeat
125
Hnh 1-10: Nguyn tc hot ng ca selective repeat
Mt s ch ca selective repeat ARQ
Do pha pht ch thc hin pht li cc khung b li, do cc khung
n pha thu c th khng theo th t nh khi c pht i pha
pht
Pha thu phi c kh nng x l cc khung thng tin khng theo
th t.
Do cc khung thng tin phi c a ln lp trn theo ng
th t nn pha thu phi c b m lu tm cc khung thng
tin trong khi ch cc khung b mt hoc li c pht li.
Pha pht phi thc hin bo nhn cho tt c cc khung thng tin m
n nhn ng. Cc khung thng tin khng c bo nhn trong
khong thi gian time-out tng ng s c coi l b mt hoc li
Trong trng hp pha thu nhn c mt khung thng tin sai, pha
thu c th gi NAK bo li v yu cu truyn li khung (selective
reject)
Hiu sut ca c ch selective repeat ARQ
Tng t nh trng hp Go-back-N, hiu sut ca c ch selective
repeat cng c tnh cho hai trng hp: l tng v khng l tng
1) Trng hp 1: l tng.
Do bn cht ca selective repeat l cng hot ng da trn phng
php ca s trt (ging Go-back-N) nn trong trng hp l tng
(khng c li), hiu sut ca selective repeat cng chnh l hiu sut
ca Go-back-N v l hiu sut ca phng php ca s trt khi mi
trng khng c li.
Hiu sut:
2 1
window
W
a
=
+
khi W < 2a+1
v
1
window
= khi W 2a+1
2) Trng hp 2: khng l tng
126
Trong trng hp ny, hiu sut ca phng php selective repeat s
bng hiu sut ca phng php ca s trt trong trng hp l
tng chia cho s ln pht li trung bnh N
R
(tng t nh trng hp
Go-back-N). Hiu sut
window
selective repeat
R
N
= . Tuy nhin N
R
trong trng
hp selective repeat khc vi trng hp Go-back-N.
Tnh N
R
do bn cht ca vic truyn li trong selective repeat hon
ton tng t nh trong phng php dng v i nn vi cch tnh
tng t,
1
1
R
N
p
=
.
Hiu sut:
(1 )
2 1
selective repeat
W p
a
=
+
khi W < 2a+1
v
1
selective repeat
p
= khi W 2a+1
Nhn xt
C ch selective repeat cho hiu sut hot ng trn ng truyn
cao hn so vi Go-back-N do c ch ny s dng ng truyn hiu
qu hn. Tuy nhin, c ch selective repeat hot ng phc tp hn
do n yu cu pha thu phi c kh nng x l cc khung thng tin n
pha thu khng theo th t. Ngoi ra, pha thu cn phi c b m
c th lu tm thi cc khung thng tin ny.
6.3. iu khin lung v trnh tc nghn theo phng php ca s
C ch iu khin lung v chng tc nghn da trn phng php
ca s c thc hin bi vic gii hn s lng gi tin c truyn
pha pht nhm m bo thng tin ny khng vt qu kh nng x
l ca pha thu.
Theo c ch ny, pha pht s khng thc hin pht tin chng no
pha thu cn cha x l xong gi tin (hoc mt s gi tin) trc . Khi
pha thu x l xong thng tin do pha pht gi n th n s bo cho
pha pht bit v lc ny, pha pht s tip tc gi cc gi tin tip theo.
C ch ny m bo vic truyn tin khng bao gi vt qu kh nng
x l ca pha thu.
Vi vic kt hp hot ng nhp nhng gia pha pht v pha thu (c
s dng bo nhn), s lng gi tin ng thi tn ti trn ng
truyn nm trong gii hn nht nh. Nu pha thu c b m vi dung
lng ln hn tng kch thc cc gi tin ny th b m pha thu s
khng bao gi b trn.
Cc tin trnh thng tin c th chu s nh hng ca iu khin lung
gm c cc knh o c lp, mt nhm cc knh o hay ton b lung
thng tin t mt nt mng ny n mt nt mng khc.
127
Cc phng php iu khin lung c da trn cc phng php
iu khin li v pht li ARQ lp 2 ca m hnh OSI ( c trnh
by phn trn).
6.3.1. iu khin lung theo ca s (Window Flow Control)
Phng php iu khin lung theo ca s trt l phng php
c s dng ph bin nht thi im hin ti. Trong phn ny,
chng ti s ln lt trnh by vic iu khin lung theo ca s trt
theo hai c ch end-to-end (iu khin lung gia im pht v im
thu trong mng) v hop-by-hop (iu khin lung gia hai nt mng
lin tip).
Ca s End-to-End
Nh phn trn ni, phng php iu khin lung theo ca s da
trn c s phng php ca s trt ARQ lm vic ti lp lin kt d
liu. Cc khung thng tin t pht sang thu v khung bo nhn, bo li
truyn t thu sang pht c nh s th t phn bit, kch thc
ca s W < 2
k
vi k l s bit dng nh s phn bit cc khung.
Hnh 5-11: V d pha pht truyn tin lin tc khi W = 3
Hnh 1-11 trnh by mi lin h gia kch thc ca s v tc
truyn thng tin. Gi X l thi gian pht mt khung thng tin, W l kch
thc ca s v d l tng tr t pht n thu (dng cho khung thng
tin) v t thu n pht (dng cho bo nhn), round-trip delay.
Trong hnh v ny, kch thc ca s W = 3, d W.X. Nh l lun
trong phn ARQ, lc ny pha pht c th truyn thng tin lin tc m
khng cn phi dng li i. Tc pht thng tin r = 1/X v trong
trng hp ny, iu khin lung khng c ngha (v pha pht c th
pht tin vi tc cao nht m khng b hn ch)
128
Hnh 5-12: V d pha pht truyn tin khng lin tc khi W = 3
Hnh 1-12 trnh by trng hp d > W.X, trong trng hp ny, ta thy
c vai tr ca iu khin lung. Pha pht thc hin pht W khung
thng tin sau dng li ch bo nhn pha thu, ri mi c pht
tip. Ni mt cch khc, lng thng tin n pha thu (hay lng thng
tin i vo mng) b hn ch nh hn kh nng pht cc i ca
pha pht. iu ny xy ra khi round-trip delay ln nn khi pha pht
thc hin pht xong W gi tin ri nhng bo nhn u tin vn cha
quay tr li. Lc ny pha pht phi ngng pht v ch bo nhn v W
gim xung 0 (xem li phn nguyn tc hot ng ca ca s
trt). Nu pha pht lun c thng tin pht th tc pht tin trung
bnh s l W/d gi/s
Kt hp c hai trng hp hnh 5-11 v 5-12, ta tnh c tc pht
tin cc i khi k n round-trip delay s l
1 W
,
d
r
X
=
`
)
Khi d tng (c tc nghn), iu khin lung s thc hin vai tr
ca n v gii hn tc truyn tin
Khi khng c tc nghn xy ra, d gim v r tng ln
129
T
t
h
n
g
t
i
n
p
h
t
r
Hnh 5-13: Quan h gia tc truyn dn v round-trip delay trong
iu khin lung
Hnh 5-13 trnh by quan h ca tc truyn dn v round-trip delay
trong c ch iu khin lung. Tc truyn tin s b gim khi xy ra
tc nghn (tr tng). Ngoi ra, c ch ca s phn ng kh nhanh vi
tc nghn (trong khong thi gian truyn W gi). S phn ng nhanh
vi tc nghn kt hp vi thng tin iu khin t l u im chnh ca
c ch ca s so vi cc c ch khc.
Nguyn tc chn kch thc ca s:
1) Trong trng hp khng c tc nghn xy ra, kch thc ca s
c chn ln m bo tc truyn thng tin t r = 1/X
gi/s.
Quy c:
d = round-trip delay khi tr hng i xp x 0 (khng c tc
nghn) y l tr tnh t lc pht gi thng tin bn pht v
nhn ACK t pha thu
N = s nt mng dc theo ng truyn t pht n thu
D = tr truyn sng dc theo ng truyn
d = 2.N.X + 2.D
m bo tc truyn tin ti a (khi khng c tc nghn), cn m
bo W.X d hay W 2.N + 2.D/X. Ta nhn thy:
Khi D < X th W 2.N kch thc ca s khng ph thuc vo
tr truyn sng.
Khi D >> X th W 2.D/X kch thc ca s khng ph thuc
vo chiu di ng i.
2) Trong trng hp c tc nghn xy ra, th tr round-trip d > d (d
bao gm c tr hng i do tc nghn)
Phng php ca s End-to-End c nhng hn ch nht nh. l:
130
Kh m bo tr nm trong gii hn cho php khi lu lng
vo mng tng
Gi s trong mng c n tin trnh iu khin lung vi kch thc ca
s tng ng l W
1
, W
2
, ... W
n
. Lc ny, tng s gi tin trong mng s
l
i
1
.W
n
i
i
=
trong
i
l mt h s trong khong 0 n 1 ph thuc
vo thi gian tr ca ACK. Theo nh lut Littles th tr trung bnh ca
gi tin trong mng s l
i
1
.W
n
i
i
T
=
=
n
g
l
n
g
c
a
m
n
g
Hnh: Mi quan h gia kch thc ca s v lu lng mng
Hnh trn y trnh by mi quan h gia kch thc ca s v thng
lng ca mng. Khi lu lng vo mng nh, kch thc ca s ln
t ra ti u do tn dng c thi gian truyn gi tin, tuy nhin, khi lu
lng vo mng tng ln, vic s dng kch thc ca s ln s gy
ra tc nghn do c qu nhiu gi tin c th c gi cng lc vo
mng. Trong trng hp ny, ngi ta s dng cc ca s c kch
thc nh p ng vi tnh trng ca mng.
Vic thay i kch thc ca s mt cch mm do cho ph hp vi
tnh trng lu lng ca mng chnh l cch thc iu khin tc nghn
ca cc thit b u cui (pha pht v pha thu). C ch thay i kch
thc ca s theo trnh trng lu lng mng c gi l c ch ca
s thch ng (adaptive window).
Vn ca iu khin tc nghn theo phng php ca s thch ng
l iu kin quyt nh vic tng v gim kch thc ca s. c th
thc hin c iu ny, pha pht da trn cc thng tin phn hi t
pha thu hoc cc thit b trn ng truyn t pht n thu thc
hin iu chnh kch thc ca s.
Khi xt n cc thit b mng trung gian gia pht v thu (tm gi l
thit b mng), ngi ta chia lm hai loi:
Thit b mng thng minh (active intermediate system) l cc
thit b mng c kh nng pht hin tc nghn ang xy ra
hoc c th xy ra v c kh nng thng bo cho pha pht
Thit b mng khng thng minh( passive intermediate system)
cc thit b ny khng c kh nng pht hin tc nghn, vic
xc nh tnh trng tc nghn hon ton c thc hin bi
pha pht.
Trong cc phn di y, chng ti s trnh by hot ng ca c ch
ca s thch ng cho c hai loi thit b mng ny
134
Thit b mng thng minh
K thut iu khin tc nghn s dng thit b mng thng minh hot
ng nh sau:
Thit b mng pht hin tnh trng tc nghn xy ra hoc sp
xy ra (v d: dung lng b m vt qu mt ngng no
)
Khi pht hin tc nghn, thit bi mng thng bo cho tt c cc
nt ngun (pha pht) thc hin pht thng tin qua thit b
mng ny
Cc nt ngun thc hin gim kch thc ca s gim tc
nghn (vi vic gim kch thc ca s, pha pht gim s
lng gi tin c th i vo mng)
Cc nt ngun c th tng kch thc ca s nu chng xc
nh c rng tnh trng tc nghn c gii quyt.
Ch rng, khi nim kch thc ca s y l kch thc ca s
cc i, hay s lng gi tin c th ng thi c pht i m khng
cn bo nhn. Trn thc t, kch thc ca s hot ng ca nt
ngun lun thay i (gim nu pha ngun pht gi tin v tng nu nt
ngun nhn c bo nhn).
Cc tham s c th dng xc nh tc nghn ti nt mng l dung
lng b m (cn trng nhiu hay t), kh nng hot ng ca CPU
(nhiu hay t) hoc mc s dng bng thng ca ng truyn.
c th cnh bo cho pha pht, nt mng c th s dng mt trong
hai c ch:
S dng mt gi tin cnh bo c lp phng php ny cho
php pha pht nhanh chng nhn c thng tin tc nghn v
phn ng kp thi. Tuy nhin, hn ch ca phng php ny l
phi s dng gi tin c lp gy lng ph bng thng v phc
tp ha vic qun l
S dng mt bit ch th tc nghn nm trong trng iu khin
ca gi tin mang d liu t pha thu sang pha pht. Bit ch th
tc nghn bng 0 th hin tc nghn khng xy ra v bit ny
bng 1 khi tc nghn xy ra.
Pha pht s da trn thng tin cnh bo no quyt nh vic tng
gim kch thc ca s.
Nu vic thay i kch thc ca s ch c da trn mt gi tin
phn hi th c th xy ra tnh trng h thng hot ng khng hiu
qu (nu nt mng gi mt gi tin cnh bo tc nghn ri li gi mt
gi thng bo khng tc nghn). V vy, trn thc t, pha pht s da
trn mt s lng thng bo nht nh t pha nt mng ri mi kt
lun v tnh trng tc nghn. Thng thng, vi mt s lng thng
bo nhn c, nu s gi tin cnh bo tc nghn vt qu mt gii
hn no th pha pht s coi l c tc nghn xy ra v gim kch
135
thc ca s. Nu s lng cnh bo ny nh hn gii hn cho php
th pha pht s coi l khng c tc nghn v tng kch thc ca s.
Vic tng va gim kch thc ca s c th tun theo mt trong hai
quy tc: php cng v php nhn.
Php cng:
new old
W W I = + trong W
new
v W
old
l kch thc
ca s mi v c, I l h s tng gim. Khi I > 0 l tng kch
thc ca s v I < 0 l gim kch thc ca s
Php nhn:
new old
W W = vi cc quy c tng t nh trn.
Khi > 1 l tng kch thc ca s v < 1 l gim kch thc
ca s. Trong trng hp kch thc ca s khng phi s
nguyn th kch thc s c quy v s nguyn gn nht.
Trong ng dng c th, ngi ta thng dng php cng khi tng v
dng php nhn khi gim.
Hnh di y trnh by nguyn tc tng gim kch thc ca s da
trn bit ch th tc nghn c gi i t nt mng c tc nghn. Trong
v d ny, kch thc ca s ban u l W = 4, vic kt lun v tnh
trng tc nghn c da trn cc nhm 7 bo nhn gi v. Trong 7
bo nhn , nu c ln hn hoc bng 4 bo nhn c bit ch th tc
nghn bng 1 th nt ngun coi l c tc nghn v gim kch thc
ca s, ngc li th nt ngun coi l khng c tc nghn v tng kch
thc ca s. Trong trng hp ny, vic gim c thc hin theo
php nhn vi = 0,7 v vic tng c thc hin theo php cng vi
I = 1.
136
Hnh: S dng bit ch th tc nghn thay i kch thc ca s
Thit b mng khng thng minh
Trong trng hp ny, cc thit bi mng khng c kh nng cnh bo
cho pha pht v tnh trng tc nghn v vic xc nh tc nghn trong
mng hon ton da trn vic suy on ca nt ngun. Thit b mng
khng thng minh l cc thit bi mng n gin, khng c kh nng
xc nh trng thi b m, trng thi CPU hay trng thi s dng
ng truyn. Trong mt s trng hp khc, do yu cu hot ng
vi tc cao nn cc thit b mng c th cng khng kim tra v
trnh trng tc nghn c th xy ra mi khi gi tin i qua thit b.
Khi khng c s h tr ca thit b mng, nt ngun kt lun v trng
thi tc nghn hon ton da trn bo nhn c gi v. Trong
trng hp mng b tc nghn, bo nhn c th b tr ln (tr bo
nhn hoc tr gi n pha thu) hoc c th b mt (mt bo nhn hoc
mt gi nn khng c bo nhn). Trong trng hp mt bo nhn
137
hoc bo nhn n qu tr, nt ngun s phi pht li gi v vic pht
li ny c th coi l mt tn hiu kt lun v tnh trng tc nghn.
C ch tc nghn ny gi l c ch iu khin tc nghn dng ca s
thch ng da trn time-out v hot ng nh sau:
Ti thi im ban u, nt ngun t kch thc ca s bng
W
max
Mi khi c time-out xy ra v pha pht phi thc hin pht li
gi tin th nt ngun s t W = 1
Mi khi nhn c n bo nhn t nt ch, pha pht li tng
kch thc ca s ln 1. Kch thc ca s s khng bao gi
vt qu kch thc ca s W
max
. Vi vic thay i gi tr n,
ngi ta c th thc hin iu khin tc nghn nhiu mc
khc nhau.
Trong trng hp ny, chng ta gi thit t l li bit l kh nh v time-
out xy ra hon ton l do tr ch khng phi do mt gi v li bit.
V d trn hnh di y minh ha c ch iu khin tc nghn theo
ca s thch ng da trn time-out. Trong v d ny, kch thc ca
s ban u W
max
= 4, v gi tr n = 2. Gi thit rng cc nt mng trung
gian c th gy ra tr hoc hy gi tin hoc bo nhn nu tc nghn
xy ra. iu ny dn n h qu l c time-out xy ra ti nt ngun
cho cc gi tin .
138
Hnh: S dng time-out v ACK tng/gim kch thc ca s
6.4. iu khin lung v chng tc nghn da trn bng thng (rate-based flow
control)
6.4.1. Khi nim
Trong phn trn, chng ta thy hn ch c bn ca iu khin
lung theo phng php ca s l tr gi s tng t l vi s lng
kt ni cn thc hin iu khin lung. Mc d c th gim kch thc
139
ca s c th gim tr gi tuy nhin phng php ny khng d
thc hin.
c th p ng c yu cu ca iu khin lung, ngi ta
xut cc phng php thc hin iu khin lung v chng tc nghn
da trn vic hn ch bng thng. C ch kim sot bng thng m
bo lng thng tin ca ngi dng a vo mng khng vt qu
mt mc no nhm trnh tc nghn trong mng. Trong mt s
trng hp c th, thng tin ca ngi dng a vo mng c th
vt qu lng thng tin gii hn mt mc no cho php.
C ch kim sot bng thng ca thng tin i vo mng chia lm hai
loi:
Kim sot cht (strict implementation) vi tc thng tin
vo mng trung bnh l r gi/s, th h thng kim sot s ch cho
mt gi vo c sau mi 1/r giy. Phng php ny khng ph
hp cho cc thng tin c thay i vi bin ln (bursty traffic).
V d in hnh ca phng php ny l c ch TDMA.
Kim sot lng (less-strict implementation) vi tc thng
tin vo mng trung bnh l r gi/s th h thng kim sot s cho
W gi vo mng trong khong thi gian W/r giy. Trong
phng php ny, tc d liu trung bnh l khng i nhng
cho h thng cho php nhn ti a W gi ti mt thi im
(bursty traffic). C ch ny thng c trin khai vi vic s
dng go r (leaky bucket)
Trong phn di y, chng ti s trnh by nguyn tc hot ng ca
go r.
6.4.2. iu khin bng thng theo thut ton go r (leaky bucket)
Nguyn tc hot ng ca leaky bucket
Hnh 5-15 di y minh ho m hnh go r
Hnh 5-15: M hnh go r
Trong m hnh ny, nt mng c trang b mt go r dng kim sot
lu lng thng tin i vo mng. Go l mt b m c kh nng lu
tr ti a l W th bi. Cc th bi c in vo go vi tc r th
bi/s. Khi go y th bi th th bi s khng c in thm vo
go.
140
Mi khi mt gi tin n v c th c vo c mng th gi tin
phi nhn c mt th bi. Tc trung bnh ca thng tin vo mng
l r gi tin/s v bng tc in th bi vo go.
Trong trng hp go r y th bi, nt mng c th cho ti a W gi
tin vo mng ti mt thi im (burst size). Nu W nh th kh nng
kim sot tc lung thng tin vo l tt, nu W ln th kh nng h
tr burst tt.
Vi vic s dng go r, lung thng tin vo mng c tc khng
vt qu r gi/s. Nu mng c nhiu nt mng giao tip vi bn
ngoi (entry point), mi nt mng c trang b mt go r kim
sot lu lng thng tin vo mng th cho d tc thng tin ca n
cc nt c th thay i, nhng tc thng tin trong mng kh n
nh. Vi c im ny, ngi ta ni go r thc hin chc nng nh
dng lu lng.
Tnh ton hiu nng ca leaky bucket (pending)
Tr trung bnh ca gi khi i qua leaky bucket
di hng i gi trung bnh
Chn cc tham s ca leaky bucket (pending)
M hnh cng bng cc i cc tiu (max-min fairness)
Mt trong nhng vn kh khn nht ca thc hin iu khin lung
v kim sot tc nghn l m bo tnh cng bng cho cc kt ni
hoc ngi dng khi xy ra tc nghn. Khi nim tnh cng bng th
hin ch cc kt ni, ngi dng c s dng ti nguyn mng vi
c hi nh nhau. c th hiu r hn v tnh cng bng, xt m hnh
mng trn hnh v 5-16 di y
Hnh 5-16: Tnh cng bng
Trn hnh 1-16, ng ni A B v B C c dung lng 1 v ng
ni C D c dung lng 3. Kt ni 1 i qua tt c cc nt A, B, C, D;
kt ni 2 i qua A, B; kt ni 3 i qua B, C; kt ni 4 i qua C, D.
Ta thy, c tc ca cc kt ni 1, 2 v 3 u l 1/2 m bo cc
kt ni ny s dng bng thng trn cc ng A B v B C l cng
bng. Tuy nhin, trn ng lin kt C D, mc d n c chia s
bi kt ni 1 v kt ni 4, tuy nhin bng thng ca kt ni 4 c th t
n 5/2 v kt ni 1 ch s dng ht 1/2 m thi.
Nh vy, tnh cng bng khng ch n thun l chia s bng thng
bnh ng cho cc kt ni/ngi dng trn tt c cc phn vng trong
mng m n c hiu v s dng mm do trong tng trng hp
c th.
141
Vic s dng ti nguyn mng hiu qu nht c th trong khi vn c
th m bo c tnh cng bng cho cc kt ni c thc hin bi
c ch iu khin lung cc i cc tiu (maxmin flow control). C
ch ny c xy dng trn m hnh cng bng cc i cc tiu
(max-min fairness).
Nguyn tc hot ng c bn ca c ch iu khin lung cc i
cc tiu nh sau:
Nguyn tc Sau khi ngi dng vi yu cu t nht v ti
nguyn c p ng cng bng, cc ti nguyn cn li c
tip tc phn chia (mt cch cng bng) cho nhng ngi dng
cn li. Trong nhm ngi dng ny, ti nguyn li c phn
chia sao cho ngi dng c yu cu t nht c p ng, v
qu trnh c tip tc n ht. Ni mt cch khc, vic cp pht ti
nguyn mng cho mt ngi dng i khng c lm nh hng
n ti nguyn cp cc ngii dng khc vi yu cu t hn i.
Mt s quy c v nh ngha:
Gi thit mng l mt th c hng G = (N, A) trong N l
tp hp cc nt v A l tp hp cc ng lin kt gia cc nt
P l tp hp cc kt ni hin s dng trong mng, mt kt ni
bt k trong tp hp cc kt ni c k hiu l p.
r
p
l tc (hay bng thng) dng cho kt ni p.
Vi mt ng lin kt a bt k (a A) th lu lng thng tin trn lin
kt a l ( ).
a p p
p P
F a r
trong ( ) 1
p
a = nu kt ni p i qua lin kt
a v bng 0 trong trng hp ngc li. Gi C
a
l dung lng ca lin
kt a, khi y ta c: r
p
0 vi p P v F
a
C
a
vi a A (*)
Mc ch ca c ch cng bng cc i cc tiu l tm c tp
hp cc gi tr r
p
(vi p P) tha mn (*) ng thi tha mn nguyn
tc ca quy ch cng bng cc i cc tiu. Tp hp cc gi tr r
p
to thnh vector cng bng cc i cc tiu, k hiu l r.
Mt c im quan trng ca vector cng bng cc i cc tiu l
vi mi mt kt ni p bt k thuc P, c t nht mt lin kt a m p i
qua sao cho F
a
= C
a
v r
p
khng nh hn tc ca bt k kt ni no
trn lin kt . Lin kt gi l im nghn ca p (bottleneck arc).
Hnh 1-17 minh hot khi nim vector cng bng cc i cc tiu v
khi nim im nghn.
142
1 4
2 3
5
Kt ni 1 (tc 2/3)
Kt ni 5 (tc 1/3)
Kt ni 3 (tc 1/3)
Kt ni 2 (tc 1/3)
Kt ni 4 (tc 1)
Gi thit: ng ni gia
cc nt u c tc l 1
Hnh 5-17: V d v tnh cng bng cc i cc tiu
Trn hnh 5-17, im nghn ca cc kt ni 1, 2, 3, 4 v 5 ln lt l
(3,5), (2,3), (2,3), (4,5) v (2,3). Lin kt (3,5) khng phi im nghn
cho kt ni 5 v lin kt ny c chia s bi hai kt ni 1 v 5 trong
kt ni 1 c tc cao hn kt ni 5 trn lin kt ny. Lin kt (1,3)
khng phi l im tc nghn ca tt c cc kt ni v ti nguyn trn
kt ni ny cha c s dng ht (cn d tha 1/3 tc )
Thut ton tm gi tr bng thng ti u (max-min fair algorithm)
Phn ny s trnh by thut ton tm gi tr bng thng ti u.
1) Khi to tt c cc kt ni vi tc = 0
Tng tc ca tt c cc kt ni vi mt lng nh bng nhau , lp li qu
trnh ny cho n khi tn ti cc lin kt c tng bng thng t n gi tr bng
thng cc i (F
a
= C
a
). Lc ny:
Tt c cc kt ni chia s lin kt ny u s dng bng thng
bng nhau
Lin kt ny l im tc nghn i vi tt c cc kt ni s
dng lin kt ny
Ngng vic tng bng thng cho cc kt ni ny v cc kt ni
ny t n trng thi cn bng cc i cc tiu
2) Lp li qu trnh tng tc cho cc kt ni khc cha t n
im tc nghn cho n khi li tm thy cc im tc nghn ng
vi cc kt ni khc (lp li bc 2)
3) Thut ton kt thc khi tt c cc kt ni u tm c im tc
nghn.
C cn phi minh ha bng cng thc khng???
V d: xt trng hp tm bng thng ti u trong phng php cng
bng cc i cc tiu nh trn hnh 1-17. Gi thit tt c cc lin kt
u c tc l 1.
Bc 1: tt c cc kt ni u c tc 1/3, lin kt (2,3) bo
ha (t gi tr cc i) v tc ca ba kt ni (2, 3 v 5) i
trn lin kt ny c t gi tr 1/3.
143
Bc 2: hai kt ni 1 v 4 c tng thm mt lng bng
thng l 1/3 v t gi tr 2/3. Lc ny lin kt (3,5) bo ha v
tc ca kt ni 1 t gi tr 2/3
Bc 3: kt ni 4 c tng thm mt lng l 1/3 v t n
gi tr 1. Lin kt (4,5) lc ny tr nn bo ha v tc ca kt
ni 4 t c l 1.
Bc 4: cc ny tt c cc kt ni u i qua cc lin kt
bo ha (im nghn) nn gii thut dng li y v kt qu
ca gii thut tm gi tr bng thng ti u chnh l bng thng
ca cc kt ni cho phn trn.
Di y l thut ton tm gi tr bng thng ti u. Quy c:
A
k
l tp hp cc lin kt cha bo ha (cha hot ng vi tc
cc i ca lin kt) ti lc bt u bc k.
P
k
l tp hp cc kt ni khng i qua lin kt bo ha no, tnh
ti lc bt u ca bc k
n
k
a
l s lng kt ni trong P
k
s dng lin kt a. y l s kt
ni s chia s phn dung lng ng truyn cn cha dng
ht ca lin kt a.
k
r% l phn bng thng tng ln cho mi kt ni trong P
k
ti
bc th k
Ti iu khin ban u: k = 1, F
0
a
= 0, r
0
p
= 0, P
1
= P v A
1
= A
Thut ton hot ng nh sau:
k
a
n := s lng ng
k
p P vi ( ) 1
p
a =
1
: ( ) /
min
k
k k k
a a a
a A
r C F n
= %
1
1
( )
( )
k k k
p
k
p
k k
p
r r p P
r
r p P
%
: ( ).
k k
a p p
a A
F a r
{ }
k+1
A : | 0
k
a a
a C F = >
{ }
1 k+1
: | ( ) 0, or all a A
k
p
P p a f
+
= =
: 1 k k = +
Nu P
k
l tp hp rng th dng li, nu khng
th quay li bc 1.
6.4.3. Thut ton GPS (pending)
144
6.5. Bi tp (Pending)
145
Chng 7 K thut m phng
7.1. Gii thiu
Cng c NS2 (network simulator version 2) [5] c pht trin bi
trng i hc Berkeley (M) l mt cng c cho php m phng v
nh gi c tnh ca mng my tnh v vin thng thay th cho vic
tin hnh thc nghim trn thit b thc t. Do c mt s u im nh
m ngun m, c cc module ng dng phong ph, NS2 hin l mt
trong nhng cng c m phng c ph bin rng ri nht hin nay
trn th gii, c bit l trong cc vin nghin cu v trng i hc.
Trong chng ny, trc tin chng ti s trnh by khi nim chung
v phng php m phng da trn cc s kin ri rc (discrete
event simulation). Tip theo, nhm cung cp cho ngi c mt ci
nhn tng quan v cc cng c m phng cho mng, chng ti s gii
thiu mt s cng c m phng mng thng dng hin nay v phn
tch cc u nhc im ca chng. Cu trc ca NS2, cc module c
sn cng nh ng dng ca chng s c trnh by trong phn tip
theo. Sau cng l mt s kt lun chung v phm vi ng dng cng
nh u nhc im ca NS2.
7.2. M phng da trn cc s kin ri rc v cc cng c
7.2.1. Phng php m phng da trn s kin ri rc
Trc khi i vo trnh by khi nim m phng da trn s kin ri
rc, chng ti nh ngha mt s khi nim sau:
nh ngha 6.1 - M hnh m phng (Simulation Model): l
s biu din mt h thng cn m phng bng cch m t cc
mi quan h ton hc, logic hoc cu trc ca n v mt trng
thi, cc thc th lm nn h thng, s kin lm thay i trng
thi h thng, cc tin trnh hoc cc hot ng ca h thng .
nh ngha 6.2 - Trng thi h thng (System State): l tp
hp cc bin cn thit cha ng y thng tin m t mt
h thng ti mt thi im bt k.
nh ngha 6.3 - Thc th (Entity): Mt m hnh ca h thng
cn m phng c chia nh thnh cc thc th vi cc chc
nng khc nhau (th d hng i, server, gi d liu .v.v.)
146
nh ngha 6.4 - Thuc tnh (Attributes): Mi thc th trong
mt h thng s c cc thuc tnh khc nhau c trng cho thc
th , th d nh lut phc v cc gi trong mt hng i .v.v..
nh ngha 6.5 - S kin (Event): S xut hin ca mt s
kin s lm thay i trng thi ca mt h thng (th d s kin
xut hin ca gi mi s lm tng s gi ang ch trong mt
hng i).
nh ngha 6.6 - Bn ghi s kin (Event Notice): L mt bn
ghi c gn thi gian s xy ra mt s kin trong tng lai, cng
vi n l nhng d liu cn thit thc hin s kin , th d
nh kiu s kin v thi gian xy ra s kin.
nh ngha 6.7 - Danh sch s kin (Event List): L mt
danh sch cha nhiu bn ghi s kin c sp xp theo trnh t
thi gian xy ra cc s kin .
nh ngha 6.8 - Hot ng (Activity): l mt qung thi gian
vi di c xc nh (khong thi gian truyn mt gi tin,
thi gian n gia hai gi tin lin tip) v thi im bt u ca
hot ng cng c xc nh.
nh ngha 6.9 - Tr (Delay): l mt qung thi gian vi di
khng xc nh (nh khong thi gian i ca mt gi tin trong
mt hng i khi ng trc n cn n gi ang i).
nh ngha 6.10 - ng h (Clock): L mt bin s th hin
thi gian m phng ca mt h thng.
T nhng khi nim c bn trn, phng php m phng da trn s
kin ri rc c xy dng bng cch m hnh ho mt h thng m
trng thi ca n thay i ti cc thi im ri rc, tc l thi im xy
ra mt s kin no . Nh vy qu trnh chy mt m phng thc
cht l qu trnh kho st mt h thng khi trng thi ca n thay i t
thi im ny sang thi im khc, tng ng vi thi im xy ra
cc s kin theo trnh t thi gian tng dn.
Th d 6.1:
d hiu c th ly mt th d v mt h thng bao gm mt hng
i Q v hai thc th phc v (server) A v B cng phc v cc gi
ang i Q. u tin cc gi s i vo hng i Q v i cho n
lt mnh c phc v. Thc th A v B c thi gian phc v gi
trung bnh l t
sa
v t
sb
(y chnh l hai thuc tnh tng ng vi A v
B). Khi c mt gi n, nu A ang ri th A s phc v gi , nu A
bn B ri th B phc v, nu khng gi s i ti hng i Q (Hnh 6.1).
147
Hnh 6.1. H thng gm 1 hng i v 2 thc th phc v
C th m hnh ho h thng ny bng 3 trng thi th hin bng 3
tham s:
L
Q
: di hng i (s gi hin ti c trong Q)
S
A
: 0 A bn; 1 A ri
S
B
: 0 B bn; 1 B ri
Ngoi ra cng c th nh ngha 3 kiu s kin lm thay i trng thi
ca h thng nh sau:
1) S kin E
1
: mt gi P
i
no i vo hng i;
2) S kin E
2
: gi P
i
bt u c phc v bi A hoc B;
3) S kin E
3
: gi P
i
c phc v xong.
Gi s ti thi im t
1
gi P
n
c A phc v xong, P
n+1
bt u c
phc v, ti thi im t
2
gi P
i
i vo hng i Q.
Hnh 6.2. M phng h thng vi trnh t thi gian tng dn
148
Hnh 6.2 th hin qu trnh m phng mt h thng theo trnh t thi
gian ca ng h v qu trnh thay i, b sung cc bn ghi s kin
trong bn danh sch s kin. Vic x l danh sch s kin l mt
trong nhng nhim v chnh ca bt k mt chng trnh m phng
no. Do cc bn ghi s kin l mt chui c sp xp theo trnh t
thi gian, mt danh sch s kin bao gi cng c hai con tr: mt con
tr tr vo u bn danh sch v con tr th hai tr vo bn ghi cui
cng trong danh sch. Mi bn ghi cng phi c cc con tr tr n
bn ghi tip theo nm trong bn danh sch. Cc thao tc lin quan n
danh sch s kin bao gm:
1) Xo bn ghi u danh sch;
2) Xo bn ghi v tr bt k trong danh sch;
3) Thm mt bn ghi vo u hoc cui danh sch;
4) Thm mt bn ghi vo v tr bt k trong danh sch ph thuc vo
thi gian xy ra s kin. Cc phng php m hnh ho mt h
thng thng tin cng nh cc chi tit v k thut m phng c th
tm thy trong [1][2][3].
7.2.2. Cc cng c m phng thng dng da trn s kin ri rc
Trc khi i vo trnh by cu trc ca cng c NS2, phn ny s
im li mt s cng c m phng thng dng hin nay v nhn xt
u nhc im ca chng.
OPNET [8] l mt sn phm thng mi tng i ni ting ca cng
ty OPNET, bao gm hai phn chnh l OPNET Modeler v phn m
rng cho mng khng dy OPNET Wireless Module. OPNET chy
di mi trng Windows cng nh Unix/Linux. OPNET rt thch hp
cho cc t chc cng nghip trong vic quy hoch v nh gi cht
lng dch v ca mng thc t bi n c sn mt th vin rt phong
ph vi cc module m phng thit b ca nhiu nh sn xut khc
nhau nh Cisco, Lucent, Juniper. Tuy nhin i vi cc c s nghin
cu v trng i hc, c l OPNET khng ph hp do gi tng i
t, mt khc khi m hnh ho mt h thng, OPNET yu cu phi s
dng th vin vi cc thit b c th nn vic xy dng cc m hnh
tng qut s gp kh khn.
Ptolemy II [9] l mt b cng c m phng trn nn Java c pht
trin bi trng Berkeley (M). Ptolemy II c th c ti xung min
ph, tuy nhin Ptolemy II ch cung cp mi trng m phng da trn
s kin ri rc ni chung, cc module h tr cho m phng h thng
mng khng c nhiu nn ngi lp trnh phi t pht trin cc ng
dng ca ring mnh.
OMNET++ [10] l chng trnh m phng cho h thng mng c
pht trin bi Andras Varga, trng i hc Bch khoa Budapest.
OMNET++ c vit bng ngn ng C++ v h tr c Windows ln
Unix/Linux. OMNET++ c th ti xung min ph. Ngoi ra OMNET++
s dng giao din ho thn thin vi ngi s dng (nh trong mi
trng pht trin ca OPNET), do khi lng cng vic v phc
149
tp khi pht trin mt module mi c gim nh kh nhiu. Tuy nhin
OMNET++ vn cn kh mi trong cng ng nghin cu nn cc
module c sn vn cha nhiu.
NS2 [5] l cng c m phng mng c s dng kh rng ri hin
nay trong cc trng i hc v vin nghin cu. NS2 c pht trin
trong khun kh ca d n VINT, kt hp gia trng Berkeley, Vin
Khoa hc thng tin ISI, Xerox PARC v phng th nghim quc gia
Lawrence Berkeley. NS2 l cng c m phng hng i tng, c
pht trin da trn hai ngn ng l C++ v OTcl (Object-oriented Tcl),
ch yu chy trong mi trng Unix/Linux. u im ca NS2 l m
ngun m, c cng ng s dng v pht trin kh ng o nn cc
module h tr cho m phng mng (nh cc giao thc, cc c ch
m bo cht lng dch v, cc cng ngh mng lp 2, 3) rt phong
ph. Tuy nhin n cng c mt s nhc im:
Do khng c giao din ho vi ngi s dng nn vic to
cc kch bn m phng cng nh pht trin cc module mi
phc tp hn cc cng c khc nh OPNET hoc OMNET++;
Kh nng h tr cc h iu hnh khc nh Windows km;
Do c pht trin bi nhiu c nhn v t chc khc nhau
nn cu trc NS2 tng i phc tp, sau mt thi gian lm
quen v dng th nht nh ngi s dng mi c kh nng
lm ch chng trnh, c bit khi phi to ra cc module chc
nng mi. Sau y chng ti s tp trung gii thiu cng c
NS2. Vic so snh v lit k cng c m phng v nh gi
hot ng ca mng c th tm thy trong [2][11][12].
7.3. Cng c m phng mng NS2
7.3.1. Cu trc
Hnh 3. Cu trc ca cng c m phng NS
M phng NS c xy dng trn c s hai ngn ng:
C++: NS c mt th vin phong ph v i tng mng v
giao thc c m t bng C++ (th d nh cc nt mng,
ng ni, ngun, hng i .v.v.).
150
OTcl: Ngoi ra chng trnh thng dch OTcl (OTcl l ngn ng
m rng cc chc nng hng i tng ca Tcl) cho php
ngi s dng xy dng cc kch bn m phng c th v
truyn tham s cho cc thc th C++. Mi i tng (tng
ng vi tng thc th) trong C++ s c mt i tng tng
ng lp OTcl nh th hin Hnh 3.
Nh vy C++ l phn cho d liu v l li ca NS cn OTcl l phn t
cu hnh cho chng trnh m phng. NS phi s dng 2 ngn ng l
do c hai nhim v khc nhau khi tin hnh m phng. Mt mt, m t
chi tit cc giao thc, cc khi hoc c ch ca mng yu cu phi s
dng cc ngn ng bc cao x l s liu, thc hin cc thut ton.
i vi nhim v ny do yu cu v tnh hiu qu ca chng trnh
m phng (nh khong thi gian chy chng trnh, qun l b nh
.v.v.), cc thc th bt buc phi c vit di C++. Mt khc, cc
qu trnh xy dng mt kch bn m phng nh t cu hnh cho cc
phn t mng, truyn cc tham s c th, thit lp topo cho mng th
ch s dng cc phn t c sn nn yu cu khu ny l thi
gian thit lp mt cu hnh phi thp (v cc kch bn m phng c th
lp i lp li). V vy, mt chng trnh thng dch nh OTcl l thch
hp.
Trong mt kch bn m phng di dng OTcl do ngi dung a ra,
chng ta c th thit lp mt topo mng, nhng giao thc v ng dng
c th m chng ta mun m phng v mu ca u ra m chng ta
mong nhn c t m phng, OTcl c th s dng nhng i tng
c bin dch trong C++ qua mt lin kt OTcl (s dng tclCL l th
vin gn kt d dng chia s chc nng v bin) to ra mt nh
x 1-1 ca i tng OTcl cho mi i tng C++ cng nh nh
ngha s lin h gia cc i tng .
Nh trnh by trn, mt trong nhng phn c bn ca NS cng l
bn danh sch s kin m y ngi ta gi l b phn hoch s
kin (event scheduler). NS s dng 4 phng php phn hoch s
kin khc nhau, c trnh by c th trong [4]. Mt s kin l mt i
tng trong C++ bao gm mt s hiu nhn dng (ID) duy nht, thi
gian c phn hoch v con tr tr n mt i tng thc thi s
kin .
Cu trc ca mt s kin v b phn hoch s kin c nh ngha
nh sau:
class Event {
public:
Event* next_; /* event list */
Handler* handler_; /* handler to call when
event ready */
double time_; /* time at which event is ready
*/
int uid_; /* unique ID */
Event() : time_(0), uid_(0) {}
151
};
/*
* The base class for all event handlers. When
an events scheduled
* time arrives, it is passed to handle which
must consume it.
* i.e., if it needs to be freed it, it must be
freed by the handler.
*/
class Handler {
public:
virtual void handle(Event* event);
};
Cc gi tin trong NS c nh ngha t lp Event nh sau:
class Packet : public Event {
private:
friend class PacketQueue;
u_char* bits_;
...
protected:
static Packet* free_;
public:
Packet* next_; /* for queues and the free list
*/
static int hdrlen_;
Packet() : bits_(0), datalen_(0), next_(0) {}
u_char* const bits() { return (bits_); }
static void free(Packet*);
...
};
7.3.2. Cc tin ch trong NS h tr cho m phng mng [Pending]
Cc module phc v cho m phng mng my tnh v vin thng:
Mobile networks, mobile IP, DiffServ, IntServ, MPLS, UDP/TCP/IP,
SCTP, routing protocols (mobile ad-hoc, unicast, multicast), RED, RIO,
WFQ, CSMA/CD, ON/OFF source, Pareto .v.v.
Cc chng trnh tr gip trong vic khai thc s liu m phng: Nam,
XGraph .v.v.
7.3.3. Th d (Pending)
7.4. Kt lun (Pending)
152
7.5. Bi tp (Pending)
153
Ti liu tham kho
[1] John S. Carson II, Barry L. Nelson, Discrete-Event System Simulation, Jerry
Banks, Prentice Hall 1996
[2] Richard Blum, Network Performance Open Source Toolkit Using Netperf,
tcptrace, NIST Net, and SSFNet, Wiley Publishing 2003
[3] Raj Jain, The Art of Computer Systems Performance Analysis: Techniques for
Experimental Design, Measurement, Simulation and Modeling, John Wiley and
Sons 1991
[4] Kannan Varadhan, Kevin Fall, NS Manual, http://www.isi.edu/nsnam/ns/ns-
documentation.html
[5] http://www.isi.edu/nsnam/ns/
[6] Marc Greis, NS Tutorial, http://www.isi.edu/nsnam/ns/tutorial/index.html
[7] Eintan Altman, Tania Jimnez, NS for Beginners, http://www-
sop.inria.fr/maestro/personnel/Eitan.Altman/COURS-NS/n3.pdf
[8] http://www.opnet.com
[9] http://ptolemy.eecs.berkeley.edu/ptolemyII/index.htm
[10] http://www.omnetpp.org/
[11] http://www.inrialpes.fr/planete/people/ernst/Documents/simulator.html
[12] http://www.topology.org/soft/sim.html
[13] Kishor Shridharbhai Trivedi, Probability and Statistics with Reliability,
Queuing, and Computer Science Applications, Wiley-Interscience, 2001
[14] Donald Gross, Carl M. Harris, Fundamentals of Queueing Theory, Wiley-
Interscience,1998
[15] Dimitri Bertsekas, Robert Gallager, Data Networks, Prentice-Hall International
Editions, 1987
[16] Andrew S. Tanenbaum, Computer Networks, Prentice-Hall, 2003
[17] Joseph L. Hammond, Peter J.P.O' Reilly, Performance Analysis of Local
Computer Networks, Addison-Wesley, 1988
[18] Jeremiah F. Hayes, Thimma V. J. Ganesh Babu, Modeling and Analysis of
Telecommunications Networks, Wiley-Interscience, 2004
[19] Gunter Bolch, Stefan Greiner, Hermann de Meer, Kishor S. Trivedi, Queuing
Networks and Markov Chains, Modeling and Performance Evaluation with
Computer Science Evaluation, John Wiley and Sons, 1998
[20] Rudolf Avenhaus, Quantitative Modelle fr Rechen- und
Kommunikationssysteme, Universitt der Bundeswehr Mnchen, 2000
154
155
Ph lc 1