Phu Luc 3B - Bien Doi Tuong Tu So ADC

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 17

Ph lc 3B

Bin i tng t s

bin i tng t s
3.1.Gii thiu chung
V bn cht, a s cc ngun tin l cc ngun tng t, bao gm ting ni, hnh nh.... Trong
chng ny, ta xt mt s k thut v phng php bin i bn tin t ngun tng t thnh chui
s mt cch hu hiu. S cn thit phi bin i tng t thnh s bi l thng tin di dng s th:
(i) d dng x l hn; (ii) d dng truyn thng hn; (iii) d dng lu tr hn. Ch tng qut v
nn d liu, trong bin i tng t s ADC (Analog-to-Digital Conversion) l mt trng hp c
th, c th c phn thnh hai loi chnh:
1. Lng t ho (hay nn d liu c cht thot), trong ngun tng t c lng t ho
thnh mt s hu hn cc mc. Trong qu trnh ny, chc chn s xy ra mt s mo, dn n
s lm tht thot thng tin. Lng tin tht thot ny khng th khi phc li c. Cc k thut
ADC tng qut nh: iu ch xung m (PCM: Pulse-Code Modulation), iu ch xung m vi
sai (DPCM: Differential Pulse-Code Modulation), iu ch delta (DM: Delta Modulation),
lng t ho u, lng t ho khng u, v lng t ho vec-t, u thuc loi ny. Gii hn
cn bn v hiu nng ca lp cc s nn d liu ny c cho bi gii hn t s mo (ratedistortion bound).
2. M ho phi tp m (hay nn d liu khng tht thot), trong d liu s (thng l kt
qu ca lng t ho) c nn vi mc ch biu din chng t bit nht c th nhng vn khi
phc hon ton chui d liu gc t chui c nn (th hin tnh hiu qu ca m). Cc k
thut m ho ngun tin nh: m ho Huffman, m Lempel-Ziv, v m s hc, u thuc loi
nn d liu ny. Trong lp cc s m ho ny, khng xy ra tht thot thng tin. t c
gii hn cn bn v vic nn d liu c cho bi entropy ca ngun. Lu rng, entropy l
php o dnh gi lng tin c trong ngun tin.
Nhn xt: c hai loi ny u thuc loi m ha ngun tin, trong loi 1 c thc hin ADC,
sau khi c chui s liu t ADC s dng loi 2 thc hin hiu qu ca m ha ngun tin, hiu
qu ca m ha ngun tin c th c hiu l, cng mt lng tin ca ngun tin nu sau khi m ha
nhn c t bit nht. Mun vy cn phi c php o nh gi lng tin ca ngun tin.

3.2. o lng tin


Tn hiu li ra ca ngun tin (d liu, ting ni, hnh nh...) c th c m hnh ho nh mt qu
trnh ngu nhin. i vi mt qu trnh ngu nhin ri rc khng nh v dng, c th c xem nh
vic rt ra c lp mt bin ngu nhin X, th ni dung thng tin, hay entropy c nh ngha l

H ( X ) = p( x).log ( p( x) )
x

(3.2.1)

trong k hiu cho bng mu t (ch ci) ca ngun tin, p(x) l xc xut ca mu t (ch ci) x.
C s ca logarit thng c chn l 2, dn n entropy c tnh theo n v bit. i vi bng
mu t (ch ci) nh phn c cc xc sut p v p-1, th entropy Hb(p) c cho bi
H b ( p ) = p.log p (1 p ) .log (1 p )

(3.2.2)

th hm entropy nh phn c cho hnh 3.1.

-1-

Ph lc 3B

Bin i tng t s

Hnh 3.1. th hm entropy nh phn


Entropy ca mt ngun tin cho ta mt gii hn chn (bound) c bn v s bt cn thit biu din
mt ngun khi phc c y . Ni cch khc, c th thc hin m ha ngun tin vi s bit
trung bnh cn thit khi phc khng li gn bng H(X) nh ta mun nhng khng th nh hn
H(X).
(ngha l, khi phc tin khng li, th s bt trung bnh u ra b m ha ngun tin phi khng
c nh hn H(X), th c th m ha y c lng tin c trong ngn tin H(X) )
3.2.1. M ho phi tp m

M ho khng tp l thut ng chung cho mi s lm gim s bt cn thit cho vic biu din
u ra ngun tin nhm khi phc hon ho. nh l m ho khng tp, do Shannon pht biu rng,
c th s dng mt m c tc gn vi entropy ca ngun tin nhng khng c nh hn entropy
ca ngun khi phc hon ho ngun tin. N mt cch khc, vi bt k > 0 no, ta c th c
mt m c tc nh hn H(X) + , nhng ta khng th c c mt m c tc nh hn H(X),
bt lun tnh phc tp ca b m ho v b gii m. Tn ti mt nhiu gii thut m ho ngun
tin phi tp m: v d nh m ho Huffman, m ho Lempel-Ziv. Ta tho lun thut ton Huffman.
M ho Huffman

Trong m ho Huffman, ta gn cc t m di hn cho cc li ra ca ngun tin c kh nng xut hin


t hn v cc t m ngn hn cho cc li ra ca ngun c kh nng xut hin nhiu hn (tng hiu
nng ca m ha ngun tin). Mun vy,
Trc ht l to cy m, ta bt u bng vic hp nht hai li ra ca ngun c xc sut (kh nng)
nh nht to mt li hp nht mi c xc sut l tng ca cc xc sut thnh phn. Qu trnh ny
c lp li cho ti khi ch cn li mt li ra hp nht. Theo cch ny, ta to ra mt cy m.
-2-

Ph lc 3B

Bin i tng t s

Sau l to m t cy m, bng cch bt u t gc ca cy v gn cc digit 0 v 1 cho hai nhnh


bt k hp nht t cng mt nt, ta to ra c m.
Bng cch ny cho thy, ta to ra mt m c di trung bnh cu tiu trong s cc m t khng tin
t (prefix-free codes, cc m khng tin t l cc m trong khng c t m no l tin t "tip
u"ca t m khc ). Th d di y s cho thy lm th no thit k mt m Huffman.
Bi tp 3.1
[M ho Huffman]

Hy thit k mt m Huffman cho mt ngun tin c bng mu t (ch ci) v vct xc sut tng
ng l

= [ x1
x2
x3
x4
x5
x6
x7
x8
x9 ]


p = [ 0, 2 0,15 0,13 0,12 0,1 0, 09 0, 08 0, 07 0, 06]




Tng cc xc sut ny bng 1 th hin cho ngun tin c m ha


(s kin ngun tin c m ha l chc chn)

Hy tm di t m trung bnh ca m c to ra, v so snh n vi entropy ca ngun.


Li gii
di t m trung bnh ca m: T thut ton trn ta c cy m c cho 3.2. di t m
trung bnh cho m ny l
L=N
2  0,
2
+ 3 (0,15 + 0,13 + 0,12 + 0,1) + 4 (0, 09 + 0, 08 + 0, 07 + 0, 06) = 3,1 bit



2 bit
Xc sut xut hin u ra 2 bit
Xc sut xut hin u ra 4 bit
Xc sut xut hin u ra 3 bit


Ly tng trng s

Ly tng trng s

Ly tng trng s

Trn mt li ra ca ngun.
Entropy ca ngun: Entropy ca ngun c cho theo
9

H ( X ) = pi log pi = 3, 0371

bits/u ra ca ngun

i =1

Thy r, L > H ( X ) nh c mong i.

-3-

Ph lc 3B

Bin i tng t s

0,2

00

x1

100

x2

00

0,15

100
0,42

0,13

110

x3

010

x4

110

0,12

0,32

010
0,22

01

0,1

011

x5

011
0,09

1010 x6

1010

Xc xut =1

10
0,58

0,26

11

0,17
101

0,08

1011 x7

1011
0,07

1110

1110 x8

0,13

111

0,06

1111 x9

1111

Hnh 3.2 Cy m Huffman


Chng trnh Matlab NVD3_entropy.m di y thc hin tnh ton entropy ca mt vct xc sut
p.
function h=NVD3_entropy(p)
% N1
% p = [0.2 0.15 0.13 0.12 0.1 0.09 0.08 0.07 0.6];
%
H=NVD3_ENTROPY(P) tnh entropy theo phng trnh 4.2.1
%
vector xc sut u vo p.
% Kim tra iu kin 1: trnh xc sut m
if length(find(p<0))~=0,
error('Khng phi l vector xc sut, v tn ti phn t m')
end
% Kim tra iu kin 2: Tng cc phn t ca vector xc sut p phi bng 1
if abs(sum(p)-1)>10e-10,
error(' Khng phi l vector xc sut, v cng cc thnh phn khc 1')
end
h=sum(-p.*log2(p)); % Tnh entropy theo phng trnh 4.2.1

i lng

H (X )
L

(3.2.3)

c gi l hiu qu ca m Huffman. Hin nhin, ta lun lun c 1 . dng tng qut, c th


ch rng, di t m trung bnh i vi mt m Huffman bt k u tho mn
H ( X ) L < H ( X ) +1

(3.2.4)

Nu ta thit k mt m Huffman cho cc khi c di K ch khng phi cho tng ch ci n, th


ta s c
H (X ) L < H (X )+

1
K

(4.2.5)

bng cch tng K, ta c th tin gn n H(X) nh mong mun. Tt nhin, vic tng K s lm
tng mc phc tp. Cn lu rng, thut ton m ha Huffman khng dn n mt m duy nht
do cch gn tu cc bt 0 v 1 cho cc nhnh khc nhau ca cy. l ti sao m ta ni n mt

-4-

Ph lc 3B

Bin i tng t s

(a-mo t khng xc nh) m Huffman ch khng ni m (the- mo t xc nh) Huffman. Ngha


l, vi cng mt ngun tin, mi ln thc hin m ha ta c th nhn c kt qu khc.
Chng trnh Matlab thit k m Huffman cho ngun tin ri rc khng nh c vc-t xc sut
p c cho file NVD3_huffman.m di y. Kt qu chy chng trnh Matlab, ta c c cc t
m ln di trung bnh ca t m.
function [h,l]=NVD3_huffman(p);
% N2
% p = [0.2 0.15 0.13 0.12 0.1 0.09 0.08 0.07 0.06]
% NVD3_HUFFMAN
B to m Huffman
% [h,l]=NVD3_huffman(p), B to m Huffman
% 2 kt qu: h l ma trn m Huffman
%
l l di t m trung bnh i vi ngun tin c vector xc sut p.
% Kim tra iu kin 1: trnh xc sut m
if length(find(p<0))~=0,
error('Khng phi l vector xc sut, v tn ti phn t m')
end
% Kim tra iu kin 2: Tng cc phn t ca vector xc sut p phi bng 1
if abs(sum(p)-1)>10e-10,
error(' Khng phi l vector xc sut, v cng cc thnh phn khc 1')
end
%===============================
n
= length(p);
q
= p;
m
= zeros(n-1,n);
for i=1:n-1
[q,l]
= sort(q);
m(i,:)
= [l(1:n-i+1),zeros(1,i-1)];
q
= [q(1)+q(2),q(3:n),1];
end
for i=1:n-1
c(i,:)
= blanks(n*n); % blanks l hm ca Matlab
end
c(n-1,n)
='0';
c(n-1,2*n) ='1';
for i=2:n-1
c(n-i,1:n-1)
= c(n-i+1,n*(find(m(n-i+1,:)==1))...
-(n-2):n*(find(m(n-i+1,:)==1)));
c(n-i,n)
='0';
c(n-i,n+1:2*n-1) = c(n-i,1:n-1);
c(n-i,2*n)
='1';
for j=1:i-1
c(n-i,(j+1)*n+1:(j+2)*n)
= c(n-i+1,...
n*(find(m(n-i+1,:)==j+1)-1)+1:n*find(m(n-i+1,:)==j+1));
end
end
%========================================
for i=1:n
h(i,1:n) = c(1,n*(find(m(1,:)==i)-1)+1:find(m(1,:)==i)*n);
l1(i)
= length(find(abs(h(i,:))~=32));
end
l

= sum(p.*l1); % Tnh di trung bnh ca t m

Bi tp 3.2
[M ha Huffman]

Mt ngun tin ri rc khng nh c bng ch ci v cc xc sut tng ng nh sau


-5-

Ph lc 3B

Bin i tng t s

= [ x1
x2
x3
x4
x5
x6 ]


p = [ 0,1 0,3 0,05 0,09 0,21 0,25]

s c m ha bng m ha Huffman. Hy
1. Xc nh entropy ca ngun ny.
2. Tm m Huffman cho ngun tin v xc nh hiu qu ca m Huffman ny
3. Thit k m Huffman cho cc chui ngun c di bng 2, v so snh hiu qu ca m ny
vi hiu qu ca m tm c trong phn 2.
Li gii
1. Ta dng chng trnh Matlab NVD3_entropy.m tnh entropy, bng cch nhp vect xc
sut p = [0.1 0.3 0.05 0.09 0.21 0.25], gi hm NVD3_entropy(p), kt qu l 2,3549 bit
trn k hiu ngun tin.
2. Ta s dng chng trnh Matlab NVD3_huffman.m thit k m Huffman cho ngun ny.
Bng cch, nhp vect xc sut p = [0.1 0.3 0.05 0.09 0.21 0.25], gi hm NVD3_huffman(p)
Kt qu tm c: (i) cc t m l 010, 11, 0110, 00, v 10; (ii) di t m trung bnh i
vi m ny l 2,38 k hiu nh phn/u ra ca ngun. V vy, hiu qu ca m ny l

1 =

2,3549
= 0,9895
2,38

3. Mt ngun mi m u ra ca n l cc cp ch ci ca ngun ban u c 36 ch ci li ra


dng

{( x , x )}

i , j =1

. V ngun ny l khng nh, nn xc sut ca mi cp l tch ca cc xc

sut ch ci ring l. V vy, nhn c vct xc sut i vi ngun m rng ny, ta phi
to ra mt vc t c 36 phn t, mi thnh phn s l tch ca hai xc sut trong vct xc sut
gc p. iu ny c thc hin bng cch dng hm Matlab kron.m dng kron (p,p). Sau
dng hm NVD3_huffman(p) to m, c th l
T ca s lnh Matlab:
>> p = [0.1 0.3 0.05 0.09 0.21 0.25]
>>p2= kron(p,p)
Kt qu l, to ra vct xc sut p2 c 36 phn t l: (lu du chm "." v du phy "," trong
ca Matlab)

0.0100

0.0300

0.0050

0.0090 0.0210

0.0250

0.0300

0.0900 0.0150 0.0270

0.0630

0.0750

0.0050

0.0150 0.0025

0.0045

0.0105

0.0125 0.0090 0.0270

0.0045

0.0081

0.0189

0.0225 0.0210

0.0630

0.0105

0.0189 0.0441 0.0525

0.0250

0.0750

0.0125

0.0225 0.0525

0.0625

T vect xc sut p2, truyn vo hm [kq1,kq2] = NVD3_huffman(p2)


Kt qu l,
To ra cc t m Huffman c to ra kq1 l:

1110000; 01110; 10110111; 1011001; 111001; 00101; 01111; 000; 011010; 00111;
1001; 1100; 11101110; 011011; 111011110; 111011111; 1110001; 001000; 1011010;
-6-

Ph lc 3B

Bin i tng t s

01100; 10110110; 1011000; 101110; 111110; 111010; 1010; 110110; 101111; 11110;
0100; 00110; 1101; 001001; 111111; 0101; 1000
di t m trung bnh i vi ngun m rng ny l: kq2= 4,7420.

Entropy ca ngun m rng tm c bng cch dng hm kq3=NVD3_entropy(p2)


kq3 = 4,7097

V vy, hiu sut ca m Huffman ny l

2 =

4,7097
= 0,9932
4,7420

cho thy c mt s ci thin so vi hiu qu ca m Huffman c thit k trong phn 2.


Bi tp 3.3
[Mt m Huffman c hiu qu cc i]

Hy thit k mt m Huffman cho mt ngun c vct xc sut


1 1 1 1 1 1 1
1
1
,
p= , , , , , ,
,

2 4 8 16 32 64 128 256 256

Li gii
Ta s dng hm NVD3_huffuman.m xc nh m Huffman v di t m trung bnh tng
ng. Kt qu l, cc t m 1,01, 001, 0001, 00001, 000001, 0000001, 00000000, v 00000001.
di t m trung bnh l 1,9922 k hiu nh phn/ li ra ca ngun. Nu ta tm entropy ca ngun ny
bng hm NVD3_entropy.m, th ta s thy rng entropy ca ngun ny cng l 1,9922bt/li ra ca
ngun; do hiu qu ca m ny bng 1. Lu rng cch gi hm tng t nh bi tp 3.2
Cu hi: Trong cc iu kin no, th hiu qu ca mt m Huffman bng 1 ?

3.3. Lng t ho
Ta nghin cu hai phng php m ho ngun tin phi tp m l, vic nn chui u ra ca
ngun tin sao cho c th khi phc y thng tin t d liu nn . Trong cc phng thc
ny, d liu nn l mt hm xc nh ca li ra ngun tin, v li ra ca ngun tin cng l mt
hm xc nh ca d liu nn. S tng ng mtmt ny gia d liu nn v sn phm li ra
ca ngun tin ngha l cc entropy ca chng l bng nhau, v khng b tht thot thng tin trong
qu trnh m ho-gii m.
Trong nhiu ng dng, nh trong x l s ca cc tn hiu tng t, bng ch ci ca ngun
tin khng phi l ri rc, th s cc bt cn thit biu din mt sn phm li ra ca ngun tin l
khng hu hn. x l li ra ca ngun theo phng php s, th ngun phi c lng t ho
thnh mt s cc mc hu hn. Qu trnh ny lm gim s bit xung thnh mt s hu hn nhng
ng thi mang vo mt lng mo nht nh. Khng bao gi khi phc c lng tin b tht
thot do qu trnh lng t ha gy ra.
dng tng qut, cc s lng t ho c th c phn loi thnh hai loi sau: (i) s lng
t ho v hng, trong li c phn thnh lng t ha u v khng u; (ii) s lng t ho
vct. Trong lng t ho v hng, th mi u ra ca ngun tin c lng t ho ring r, trong
khi lng t ho vct, th cc khi u ra ca ngun tin c lng t ha
-7-

Ph lc 3B

Bin i tng t s

Cc b lng t ha v hng li c phn loi thnh cc b lng t ha u v cc b lng t


ha khng u. lng t ha u, th cc vng c chn c cng chiu di. Trong lng t ha
khng u, th cho php s dng cc vng c chiu di c chiu di khc nhau. Thy r, dng tng
qut, cc b lng t ho khng u tt hn cc b lng t ho u.
3.3.1. Lng t ho v hng

Trong qu trnh lng t ho v hng, di gi tr ca bin ngu nhin X c chia thnh N vng i
vi 1 i N khng chng cht nhau, c gi l cc khong lng t ho, v trong mi vng ta chn
mt im c gi l mt mc lng t. Khi , mi gi tr ca bin ngu nhin m ri vo vng i

c lng t thnh mc lng t th i, c k hiu l x i . Ngha l
x i Q ( x ) = xi
(3.3.1)
trong
xi i
(3.3.2)
2
Hin nhin, lng t ho kiu ny to ra mt sai s bnh phng trung bnh MSE l E ( x xi ) .

V vy, sai s lng t bnh phng trung bnh c cho bi

D=
i =1

x xi )
(

f X ( x)dx


Li

Ly bnh phng


(3.3.3)

Ly trung bnh ca bin ngu nhin ( x xi )


c pdf l f X ( x ) trn vng i

Ly trung bnh trn ton b di gi tr ca BNN


gm N vng gi nh phn b li trn tt c
cc vng trong ton b di gi tr ca BNN
l nh nhau v c lp thng k idd

trong fX (x) k hiu cho hm mt xc sut pdf ca bin ngu nhin ca ngun tin. T s tn
hiu trn tp m lng t SQNR (Signal-to-Quantization-Noise Ratio) c nh ngha l
E X 2
SQNR dB = 10 log10
D
L ng t ho u
Trong qu trnh lng t ho ng u, tt c cc vng lng t ha ngoi tr vng u tin v vng
cui cng, tc l vng 1 v N u c cng di c k hiu l ; v vy
1 = ( , a ]

2 = ( a, a + ]
3 = ( a + , a + 2 ]
:
N = ( + ( N 2), ]

Mc lng t ho ti u trong mi khong lng t ho c th chng minh c l trng tm ca


khong ; ngha l
-8-

Ph lc 3B

Bin i tng t s

xi = E X X i
=

x. f ( x)dx ,
f ( x)dx
i

(3.3.4)

1 i N

Do , vic thit k b lng t ho u tng ng vi vic xc nh v . Sau khi a v c


xc nh, cc gi tr ca x i v lng mo dn xut c th xc nh c d dng bng cc biu thc
(3.3.3) v (3.3.4). Trong mt s trng hp, s l thun tin hn c nu chn mt cch n gin cc
im gia ca cc min lng t ho lm cc mc lng t ho, ngha l ti khong cch /2 tnh t
cc bin ca cc min lng t.
Cc th ca hm lng t ho Q(x) i vi mt hm mt xc sut i xng ca X v cc gi
tr chn v l ca N c th hin trn cc hnh v 3.3 v 3.4 mt cch tng ng.
i vi hm mt xc sut i xng, bi ton thm ch tr nn n gin hn. Trong trng hp
nh vy.
( ai 1 , ai ] , 1 i N 1
(4.3.5)
i =
( ai 1 , aN ) , 1 = N
trong
a0 =

ai = ( i N / 2 )
a =
N

1 i N 1

(4.3.6)

Q ( x)
x6

x5

a+

x4
a + 3

a + 4

x3

x2
x1

Hnh 3.3 B lng t ha ng u vi N=6 (lu rng y a + 2 = 0 )

-9-

Ph lc 3B

Bin i tng t s

Q ( x)
x7
x6

a+ 2

a+

x5

x3
x2

a + 4

a + 5


a + 3

x1

Hnh 3.4 Hm lng t ha vi N=7 (lu rng y x4 = 0 )


Cn lu rng, trong trng hp ny, ta ch c mt tham s phi c chn t c mo ti
thiu. Ba chng trnh Matlab NVD3_centroid.m, NVD3_mse_dist.m, NVD3_uq_dist.m di y
thc hin tm trng tm ca mt vng, sai s lng t bnh phng trung bnh (MSE) i vi mt
phn b cho trc v cc bin ca vng lng t ho cho trc, v cui cng l lng mo khi dng
b lng t u lng t ho mt ngun cho trc. (Gi s rng, cc mc lng t c t ti
cc trng tm ca cc vng lng t ho). s dng cc hm ny, th phn b ca ngun, m c
th ph thuc n 3 tham s, phi c cho trong mt hm.
function y=NVD3_centroid(funfcn,a,b,tol,p1,p2,p3)
% N3
% CENTROID
%
Y =
%
%
%

tm trng tm ca hm trn mt vng


NVD3_CENTROID('F',A,B,TOL,P1,P2,P3) tm trng tm ca hm F c nh
ngha trong mt file.m trn vng [A,B] region. Hm c th cha m 3
tham s,p 1, P2, P3.
tol=sai s tng i (the relative error).

args
= [];
for n=1:nargin-4
args =[args,',p',int2str(n)];
end
args
= [args,')'];
funfcn1 ='x_fnct';
y1
= eval(['quad(funfcn1,a,b,tol,[],funfcn',args]);
y2
= eval(['quad(funfcn,a,b,tol,[]',args]);
y

= y1/y2;

function [y,dist]=NVD3_mse_dist(funfcn,a,tol,p1,p2,p3)
% N4
%NVD3_MSE_DIST
tr li sai s lng t trung bnh bnh phng.
%[Y,DIST]=NVD3_MSE_DIST(FUNFCN,A,TOL,P1,P2,P3)
% Trong :
% funfcn
= hm phn b c cho trong mt file.m. N c th ph thuc vo
3 tham s,p1,p2,p3.
% a
= vector xc nh cc bin ca cc vng lng t.

-10-

Ph lc 3B

Bin i tng t s

(lu rng: [a(1),a(length(a))] l support of funfcn)


% p1,p2,p3 = cc tha s ca funfcn.
% tol
= sai s tng i.
args = [];
for n=1:nargin-3
args =[args,',p',int2str(n)];
end
args
=[args,')'];
for i=1:length(a)-1
y(i) = eval(['centroid(funfcn,a(i),a(i+1),tol',args]);
end
dist=0;
for i=1:length(a)-1
newfun = 'x_a2_fnct' ;
dist
= dist+eval(['quad(newfun,a(i),a(i+1),tol,[],funfcn,', num2str(y(i)),
args]);
end

function [y,dist]=NVD3_uq_dist(funfcn,b,c,n,delta,s,tol,p1,p2,p3)
% N5
% NVD3_UQ_DIST
%

tr li phn b ca b lng t ha u vi cc im lng t ha


c thit lp ti cc trng tm

%[Y,DIST]=NVD3_UQ_DIST(FUNFCN,B,C,N,DELTA,S,TOL,P1,P2,P3)
% Trong :
% funfcn = hm mt ngun tin c cho mt file.m vi 3 tham s quan
%
trng nht p1,p2,p3.
% [b,c] = s h tr ca hm mt ngun
% n
= s mc lng t
% delta = kch thc mc.
% s
= bin ca vng lng t pha tri
% p1,p2,p3 = cc tham s ca hm u vo.
% y
= cc mc lng t.
% dist
= mo.
% tol
= sai s tng i.
if (c-b<delta*(n-2))
error('Qu nhiu mc i vi di ny.'); return
end
if (s<b)
error('Bin pha tri ngoi cng qu nh.'); return
end
if (s+(n-2)*delta>c)
error('Bin pha tri ngoi cng qu ln.'); return
end
args
= [];
for j=1:nargin-7
args = [args,',p',int2str(j)];
end
args
= [args,')'];
a(1)
= b;
for i=2:n
a(i) = s+(i-2)*delta;
end
a(n+1) = c;
[y,dist] = eval(['NVD3_mse_dist(funfcn,a,tol',args]);

-11-

Ph lc 3B

Bin i tng t s

Bi tp 3.4
[Xc nh cc trng tm]

Hy xc nh cc trng tm ca cc vng lng t ho i vi phn b Gaus c k vng bng 0 v


phng sai bng 1, trong cc bin ca cc vng lng t ho c cho bi (-5,-4,-2,0,1,3,5)
Li gii
Phn b Gaus c cho trong hm NVD3_normal.m. Phn b ny l mt hm ca hai tham s, l
trung bnh v phng sai, c k hiu l m v s (hay ). Min xc nh ca phn b Gaus l
( , ) , nhng p dng cc thng trnh tnh ton s, th ch cn s dng mt di rng bng

nhiu ln lch chun ca phn b l . Th d c th dng di m 10 s , m + 10 s . chng


trnh Matlab NVD3_sim34e.m di y s xc nh cc trng tm (cc mc lng t ti u)
% function y = NVD3_sim34e
% Chng trnh lin kt cho bi tp 3.4.
a = [-10,-5,-4,-2,0,1,3,5,10];
for i=1:length(a)-1
y(i) = NVD3_centroid('normal',a(i),a(i+1),0.001,0,1);
end

Kt qu l, cc mc lng t ho l: (-5,1865; -4,2168; -2,3706; -0,4599; 0,7228; 1,5101; 3,2827;


5,1865).
Bi tp 3.5
[Sai s trung bnh bnh phng MSE]

Trong bi tp minh ha 4.4, hy xc nh sai s trung bnh bnh phng MSE.


Li gii
Cho a = (-10, -5, -4, -2, 0, 1, 3, 5, 10), v s dng hm NVD3_ mse_dist.m, ta c sai s trung
bnh bnh phng MSE l 0,177. C th, c cho file NVD3_sim35e.m di y.
% function y = NVD3_sim35e
clc;
clear all;
close all;
a
=
[-10 -5 -4 -2 0 1 3 5 10];
[y,dist]
=
NVD3_mse_dist('normal',a,0.01,0,1);
display('==== XAC DINH SAI SO TRUNG BINH BINH PHUONG MSE - BAI TAP 4.5====');
display('---DU LIEU VAO: vector a ------ ');
disp(a);
display('==>KET QUA: Cac muc luong tu hoa y va MSE ');
display('
Cac muc luong tu hoa y la:');
disp(y)
display('
Sai so trung binh binh phong MSE la:');
disp(dist)

Kt qu chy chng trnh l:


==== XAC DINH SAI SO TRUNG BINH BINH PHUONG MSE - BAI TAP 3.5====

-12-

Ph lc 3B

Bin i tng t s

---DU LIEU VAO: vector a ------10 -5 -4 -2

5 10

==>KET QUA: Cac muc luong tu hoa y va MSE


Cac muc luong tu hoa y la:
-5.1716 -4.2168 -2.3706 -0.7228 0.4599 1.5101 3.2826 5.1716
Sai so trung binh binh phong MSE la:
0.1770

Bi tp 3.6
[Mo ca b lng t ho u]

Hy xc nh MSE i vi mt b lng t ho u vi 12 mc lng t, mi mc lng t c


di bng 1, c thit k cho ngun Gaus c trung bnh 0 v phng sai bng 4. Gi s rng, cc
vng lng t ho i xng nhau qua trung bnh ca phn b.
Li gii
Do gi thit v tnh i xng, nn cc bin ca cc vng lng t ho l 0, 1, 2, 3, 4, v 5,
v cc vng lng t ho l (- ,5], (-5, -4], (-4, -3], (-3, -2], (-2, -1], (-1, 0], (0, 1], (1,2], (2, 3], (3,
4], (4, 5], v (5, + ]. iu ny c ngha l trong hm NVD3_uq_dist.m, ta t b = -20, c = 20, =
1, n = 12, s = -5, tol = 0.001, p1 = 0 v p2 = 2. Thay cc gi tr ny vo hm NVD3_uq_dist.m, ta
nhn c mo sai s bnh phng l 0,0851, v cc gi tr lng t l 0,4897; 1,4691;
2,4487; 3,4286; 4,4089; 5,6455.
Hm NVD3_uq_mdqnt.m di y s xc nh mo sai s bnh phng i vi hm i vi
xng khi cc mc lng t c chn l im gia ca cc khong lng t. Trong trng hp ny,
cc mc lng t tng ng vi cc vng lng t ho u tin v cui cng c chn nm cch
hai bn lng t ngoi cng mt khong /2. iu ngha l: (i) nu s cc mc lng t l chn,
th cc bin lng t ho l 0, , 2 ,..., (N/2-1) v cc mc lng t l /2,
3 /2,..., (N-1) /2; (ii) Nu s cc mc lng t l l, th cc bin lng t ho l
/2, 3 /2,..., (N/2-1) v cc mc lng t l 0, , 2 ,...., (N-1) /2.
function dist=NVD3_uq_mdpnt(funfcn,b,n,delta,tol,p1,p2,p3)
% N7
%UQ_MDPNT
%

tr li phn b ca mt b lng t ha u vi cc im lng t ha


c t ti cc im gia

%DIST=UQ_MDPNT(FUNFCN,B,N,DELTA,TOL,P1,P2,P3).
% Trong :
%
funfcn = hm mt ngun tin c cho trong mt file.m vi 3 tham s
%
p1,p2,p3. Hm mt c gi s l hm chn.
%
[-b,b] = s h tr ca hm mt ngun tin.
%
n
= s mc
%
delta = kch c ( rng) mc.
%
p1,p2,p3 = cc tham s ca hm u vo.
%
dist
= lng mo.
%
tol
= sai s tng i.
if (2*b<delta*(n-1))
error('Qu nhiu mc cho di ny.'); return
end
args
= [];
for j=1:nargin-5
args = [args,',p',int2str(j)];

-13-

Ph lc 3B

Bin i tng t s

end
args = [args,')'];
a(1) = -b;
a(n+1)= b;
a(2) = -(n/2-1)*delta;
y(1) = a(2)-delta/2;
for i=3:n
a(i)
= a(i-1)+delta;
y(i-1) = a(i)-delta/2;
end
y(n) = a(n)+delta;
dist = 0;
for i=1:n
newfun = 'x_a2_fnct' ;
dist
= dist+eval(['quad(newfun,a(i),a(i+1),tol,[],funfcn,', num2str(y(i)),
args]);
end

Bi tp 3.7
[B lng t ho vi cc mc c t ti cc im gia]

Hy tm lng mo khi s dng b lng t ho u lng t ho bin ngu nhin Gaus c trung
bnh 0 v phng sai bng 1. S cc mc lng t ho l 11, v di ca mi vng lng t ho l
1.
Li gii
Trong hm NVD3_uq_mdpnt.m, ta thay normal (lu rng, tn hm cn phi c thay bng
'normal' vi cc du nhy) cho tn hm mt , p1=0 v p2=1 i vi cc tham s ca hm mt ,
n=11 cho s mc lng t, v =1 cho di ca cc mc lng t. i vi tham s b, n xc nh
di tnh ca hm mt , ta s dng gi tr b=10.p2=10 v chn phn gii (tol tolerance) l
0,001. Lng mo tnh c l 0,0833. C th, c thc thi bi file NVD3_sim37e.m di y
% function y = NVD3_sim37e
clc;
clear all;
close all;
%=======================
p1
= 0;
p2
= 1;
delta
= 1;
n
= 11;
tol
= 0.01;
b
= 10*p2;
data_input = [p1 p2 delta n b tol];
%========================
result1 = NVD3_uq_mdpnt('normal',b,n,delta,tol,p1,p2);
%========================
display('==== XAC DINH MEO BO LUONG TU VOI CAC MUC LUONG TU DAT O GIUA - BAI TAP
4.7 ====');
display('---DU LIEU VAO: [p1 p2 n
delta
b
tol] tuong ung nhu sau');
disp(data_input);
display('==>KET QUA: Luong meo');
disp(result1)

Kt qu chy chng trnh ny l:


==== XAC DINH MEO BO LUONG TU VOI CAC MUC LUONG TU DAT O GIUA - BAI TAP 3.7 ====

-14-

Ph lc 3B

Bin i tng t s

---DU LIEU VAO: [p1 p2 n delta b tol] tuong ung nhu sau
0

1.0000 1.0000 11.0000 10.0000 0.0100

==>KET QUA: Luong meo


0.0833

Lng t ho khng u
Trong lng t ho khng u, yu cu v cc vng lng t ho c di nh nhau, ngoi tr cc
min u v cui, c xem nh, v mi vng lng t ha c th c mt di bt k. Do trong
trng hp ny vic ti u ho c thc hin vi nhng iu kin gim nh hn, kt qu l c s
vt tri r rng hn so vi lng t ho u. Cc iu kin ti u i khi ny, c gi l cc iu
kin Lloyd-Max, c biu din l
ai

xf ( x)dx

x = ai1 X
ai
i
f ( x)dx
(3.3.7)

ai1 X

a = ( xi 1 xi )
i
2
T nhng phng trnh ny, ta kt lun rng cc mc lng t ho ti u l cc trng tm ca cc
vng lng t ho v cc bin ti u gia cc vng lng t ha l cc im gia ca cc mc lng
t ho. c c li gii i vi cc phng trnh Lloyd-Max, ta bt u vi tp cc mc lng t
ho x i . T tp ny, ta c th tm c mt tp cc bin vng lng t ho ai. T tp cc ai ny, ta c
th nhn c tp mi cc mc lng t ha. Qu trnh ny c tip tc cho n khi vic ci thin
v mo t bc lp ny sang bc lp khc khng th nhn ra c. Thut ton ny bo m hi t
ti mt tr ti thiu cc b, nhng dng tng qut th khng m bo t c gi tr ti thiu
ton b.
Th tc thit k b lng t ho ti u c trnh by trong file NVD3_lloydmax.m di y.
function [a,y,dist]=NVD3_lloydmax(funfcn,b,n,tol,p1,p2,p3)
% N8
%LLOYDMAX tr li b lng t ha Lloyd-Max v sai s lng t trung bnh bnh
%
phng i vi phn b i xng
% [A,Y,DIST]=LLOYDMAX(FUNFCN,B,N,TOL,P1,P2,P3).
%
funfcn = hm mt c cho mt file.m. N c tht ph thuc ti 3 tham s
%
p1,p2,p3.
%
a
= vector to ra cc bin ca cc vng lng t
%
[-b,b]
ly xp x s h tr ca hm mt .
%
n
= s vng lng t ha
%
y
= cc mc lng t ha
%
p1,p2,p3 = Cc tham s ca funfcn.
%
tol
= Sai s tng i
args = [];
for j=1:nargin-4
args =[args,',p',int2str(j)];
end
args
= [args,')'];
v
= eval(['variance(funfcn,-b,b,tol',args]);
a(1)
= -b;
d
= 2*b/n;
for i=2:n
a(i) = a(i-1)+d;

-15-

Ph lc 3B

Bin i tng t s

end
a(n+1) = b;
dist
= v;
[y,newdist] = eval(['NVD3_mse_dist(funfcn,a,tol',args]);
while(newdist<0.99*dist),
for i=2:n
a(i) = (y(i-1)+y(i))/2;
end
dist
= newdist;
[y,newdist] = eval(['NVD3_mse_dist(funfcn,a,tol',args]);
end

Bi tp 3.8.
[Thit k b lng t ho Lloyd-Max]

Hy thit k mt b lng t ho Lloyd-Max 10 mc cho ngun Gaus c trung bnh khng v


phng sai bng 1.
Li gii
S dng cc gi tr b=10, n=10, tol=0.01, p1=0, p2=1 trong NVD3_lloydmax.m, ta nhn c cc
bin lng t ho v vct mc lng t ho a v y l
a = 10, 2, 6, 1,51, 0,98, 0, 48, 0
y = 2,52, 1, 78, 1, 22, 0, 72, 0, 24

v lng mo tnh c l 0,02. Cc gi tr ny l cc gi tr xp x rt gn vi cc gi tr ti u


c cho trong bng [2]. C th, c thc thi bi file NVD3_sim38e.m di y
% function y = NVD3_sim38e
clc;
clear all;
close all;
%======================
n
= 10;
tol
= 0.01;
p1
= 0;
p2
= 1;
b
= 10*p2;
data_input = [n tol p1 p2 b];
%======================
[a,y,dist] = NVD3_lloydmax('normal',b,n,tol,p1,p2);
%======================
display('DU LIEU VAO la vector cac tham so [n tol p1 p2 b] tuong ung nhu sau:');
disp(data_input)
display('=>KET QUA:');
display('
Vector: a la');
disp(a)
display('
Vector: Y la');
disp(y)
display('
MEO LUONG TU: dist la');
disp(dist)

Kt qu chy chng trnh l:


-16-

Ph lc 3B

Bin i tng t s

DU LIEU VAO la vector cac tham so [n tol p1 p2 b] tuong ung nhu sau:
10.0000 0.0100

1.0000 10.0000

=>KET QUA:
Vector: a la
-10.0000 -2.1569 -1.5075 -0.9753 -0.4813 -0.0000 0.4813 0.9753 1.5075 2.1569 10.0000
Vector: Y la
-2.5092 -1.7701 -1.2126 -0.7137 -0.2361 0.2361 0.7137 1.2126 1.7701 2.5092
MEO LUONG TU: dist la

0.0248

-17-

You might also like