You are on page 1of 47

ng dng mng n ron trong iu khin

Trong bi ny ti xin trao i mt s ch tn mn v mng n ron v ng dng trong iu khin. Hin nay
c nhiu sch v ti liu bng ting Anh vit v l thuyt mng n ron, nhng c l sch v ti ting Vit cn
kh t. Cc bn c th tm c tm tt l thuyt mng n ron trong mc 10.3 H thng iu khin mng n ron,
Chng 10 Thit k h thng iu khin thng minh trong cun Cng ngh iu khin tin tin ca tc gi
Roland
S.
Burns.
Mun thit k c h iu khin dng mng n ron, trc ht chng ta cn hiu c nguyn l ca mng n
ron. Chng ta hy xt mt mng n ron n gin gm ba lp: lp vo (input layer) c 2 n ron, lp n (hidden
layer) c 3 n ron v lp ra (output layer) c mt n ron nh c minh ha trong hnh sau (xem thm V d
10.4 trong 10.3 H thng iu khin mng n ron):

Hnh 1: Mng n ron c ba lp

Gi thit rng mng n ron ny c hun luyn dng thut ton lan truyn ngc (BPA). Tn hiu vo
v
ln lt c gi tr 0.2 v 0.6 v u ra mong mun
= 1. Cc trng lng (
) v sai lch ( ) c
cho
nh
sau:
Lp n (l=1):

Lp ra (l=2):

S dng MATLAB (khng dng Neural Network Toolbox), hy tnh u ra v t tnh cc gi tr mi cho
cc trng lng v sai lch. Gi thit l tc hc tp l = 0.5 v hm kch hot sigmoid c dng sau:

--Gii-Lan

truyn

thng

Lp n (l = 1): Tng n ron n:

hoc:
(1)

Cc hm kch hot sigmoid (j = 1 to 3):

v
(2)

Lp u ra (l = 2):
(3)

(4)

Nhp cc gi tr vo cc phng trnh (1) v (2):

Nhp cc gi tr vo phng trnh (3) v (4):


(5)

Lan

truyn

ngc

Lp u ra (l = 2): S dng phng trnh sau:

V j = 1 nn:
(6)

Quy

tc

en

ta:

Trng lng v sai lch mi cho lp u ra:


(7)

Lp n (l = 1): S dng phng trnh sau:

minh ha phng trnh ny, nu c hai n ron trong lp (l + 1), ngha l lp u ra, th nhng gi tr
cho lp (l + 1) c th c tnh. V vy, i vi lp l (lp n), nhng gi tr

v
l:

1:

2:

3:

Tuy nhin, v trong v d ny ch c mt n ron n trong lp (l + 1),


l

. Do vy nhng gi tr cho lp
l:

j = 1:

j = 2:
(8)

j = 3:

vy,

dng

quy

tc

en

ta,

gia

trng

lng

cho

lp

l:

Trng lng mi v sai lch mi cho lp n by gi tr thnh:


(9)

T cc tnh ton trn, chng ta c th s dng cc lnh MATLAB tnh cc trng lng v sai lch cho cc
lp nh sau:
matlab code
1.
2. % Vidu01.m
3.
4. x = [0.2;0.6];
5. Wi = [1.0 1.5;0.5 2.0;2.5 3.0];
6. bhj = [1.0;-0.5;1.5];
7. Wj = [3.0 2.0 1.0];
8. boj = -4;
9. dj = 1;
10. eta = 0.5; % learning rate
11.
12. % Calculate yj and new values for the weights and bias, assuming that
13. % learning rate eta = 0.5
14. % Forward propagation:
15. %L = 1;
16.
17. s = Wi*x + bhj
18.
19. y = 1./(1+exp(-s))
20.

21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.

s1 = Wj*y+boj
y1 = 1./(1+exp(-s1))
% Back propagation
del=y1*(1-y1)*(dj-y1)
% Delta rule:
xx = [1;y]
delw = eta*del*xx
newWj = Wj+delw(2:4)'
newboj = boj+delw(1)
% Hidden layer
delh = (y.*(1-y)).*(newWj'*del)
newxx = [1;x]
% Using the delta rul, the weight increments for hidden layer
% are calculated by:
Delhw = eta*delh*newxx'
% New weights and biases for the hidden layer:
newWi = Wi+[Delhw(2,:)' Delhw(3,:)']
newbhj = bhj + Delhw(1,:)'

Kt qu tnh trng lng v sai lch cho lp n l:


matlab code
1.
2. newWi =
3.
1.0110
4.
0.5022
5.
2.5066
6.
7. newbhj =
8.
1.0075
9.
-0.4985
10.
1.5045
11.

1.5006
2.0001
3.0003

--Ch :-- Chng trnh MATLAB trn ch minh ha cc bc tnh cho m hnh mng n ron c th trn.
lp chng trnh cho mt mng n ron tng qut chng ta cn phi lp cc hm cn thit cho thut ton
mng n ron. Nu s dng Neural Network Toolbox trong MATLAB chng ta c cc cng c lp cc
chng trnh m phng mng n ron. Nu bn c Neural Network Toolbox hy dng lnh sau xem chi tit v
hp cng c ny ca MATLAB:

matlab code
1.
2. >> help nnet
3.

Qua v d ny, chng ta c th tm tt thut ton mng n ron s dng thut lan truyn ngc nh sau:
--Bc 1-- Tng n ron n:
(10)

--Bc 2-- Hm kch hot sigmoid:


(11)

--Bc 3-- Quy tc en ta:


(12)

--Bc 4-- Trng lng mi:


(13)

--Bc 5-- Lp u ra:


(14)

(15)

--Bc 6-- Cc lp khc:


(16)

Qu trnh tip din cho n khi tha mn mt iu kin no , v d (theo Burns, 2001):
(i) ch s c tnh J t ti gi tr thp chp nhn c
(ii) mt s m lp cc i (s cc epochs) c vt qu

(iii) mt chu k (khong, period) thi gian hun luyn (rn luyn) c vt qu.
i vi (ii) hoc (iii) c th nh v c cc im cc tiu cc b. Theo nhng iu kin ny th BPA c th
s ti bt u, v nu li khng thnh cng, c th cn mt tp hp rn luyn (training) mi.
Cc hm kch hot (activation functions) c th s dng l:
1. Gii hn cng (hard limiting) (bc thang n v, unit step)
2. Tuyn tnh (linear) (tng u, ramp)
3. Tang hyperbolic (hyperbolic tangent)
4. Sigmoid hoc log-sigmoid

ng

mng

ron

trong

iu

khin

By gi chng ta hy th lm thm hai bi tp n gin sau (trch t cun Cng ngh iu khin tin tin
trn).
==Bi
tp
1==
Mt mng n ron c cu trc nh trong sau. Gi thit rng tt c cc hm kch hot l sigmoids, tnh cc gi tr
v
khi
cc
u
vo
l:
(a)
(b)

,
,

Hnh 1: Cu trc mng n ron cho Bi tp 1

khi

trng

lng

sai

lch

l:

Lp
,

Lp

ra

,
--Tr
(a)
(b)

li-,
,

--Gii-C nhiu cch biu din mng n ron. gii bi tp ny ti th v li m hnh mng n ron nh trong hnh
sau c th s thy d hiu hn:

Hnh 2: Mng n ron c hai lp: hai u vo, lp 1 (n) c 3 n ron, lp 2 (ra)
c hai n ron

Trong hnh: l vc t u vo,


l ma trn trng lng lp 1 (n),
l vc t sai lch lp 1 (n),
cc
hm kch hot lp 1 (n),
l vc t u ra ca lp 1 (n) v cng l u vo ca lp 2 (ra),
ma trn
trng lng lp 2 (ra),
vc t sai lch lp 2 (ra),
cc hm kch hot lp 2 (ra) v
l vc t u ra ca
lp
2
(ra).
Bi tp ny chnh l tnh gi tr u ra cho mng n ron truyn thng. S dng cng thc trn cho hai lp,
chng ta tnh nh sau:
matlab code
1.

2. % Baitap01.m
3.
4. %x = [0.3;0.5];
5. x = [0.9;0.1]
6. W1 = [1.0 2;3 3;2 1];
7. b1 = [2.0;-2;1];
8. W2 = [-3 -2 1;1 2 3];
9. b2 = [3;-3];
10. % desired outputs and learning rate:
11. %d = [0;1];
12. %eta = 0.5;
13.
14. % Forward propagation:
15.
16. s1 = W1*x + b1
17.
18. y1 = 1./(1+exp(-s1))
19.
20. s2 = W2*y1+b2
21.
22. y2 = 1./(1+exp(-s2))
23.

kt

qu

a) tn hiu vo l:
matlab code
1.
2. x
3.

= [0.3;0.5];

th
matlab code
1.
2. y2 =
3.
0.4502
4.
0.8623
5.

b) tn hiu vo l:
matlab code
1.

tnh

c:

2. x
3.

= [0.9;0.1];

th
matlab code
1.
2. y2 =
3.
0.4049
4.
0.9057
5.

Chng ta c kt qu ging vi p s. n y chng ta hy ngh thm nu by gi t mng n ron ny


vo lm mt phn t ca mt h thng no v tn hiu u vo lin tc (l mt chui) th chng ta s cn
phi
lp
chng
trnh
nh
th
no?
Bi tp sau s minh ha thut ton lan truyn ngc cho mng n ron trong Bi tp 1.
==Bi
tp
2==
Trong Bi tp 1(b), nu cc gi tr mc tiu cho u ra l
, v
, tnh cc gi tr mi cho
trng lng v sai lch s dng thut ton lan truyn ngc. Gi thit rng tc hc tp 0.5 khng c s hng
ng
lng.
li-ra:

--Tr
Lp
,
,
Lp

n:
,

,
Cc bn hy s dng my tnh tay (calculator) v giy nhp gii hai bi tp trn v sau dng MATLAB
cho ra cng kt qu th ti tin rng cc bn hiu c mng n ron. V sau khi hiu c mng n ron
trn, cc bn hy lm tip bi tp sau (Bi tp 3) hi phc tp hn mt cht. Lm bi tp sau l trang b
thm hnh trang tin ti thit k mt b iu khin mng n ron n gin cho mt i tng no .
--Gii
(BT2)- cp nht cc ma trn trng lng v sai lch thut bng thut ton lan truyn ngc ngi ta c th s dng
mt phng php ti u (v d sai s bnh phng nh nht). Thut lan truyn ngc dng hun luyn
mng n ron, ni nm na l iu chnh cc ma trn trng lng v sai lch trong cc lp. Thut ton lan truyn
(s dng phng php sai s bnh phng nh nht, hay theo Burns (2001) l phng php ti u ha gradient
gim (gradient-descent optimization method), thng qua Quy tc Delta vi tc hc tp v hm kch hot
sigmoid) c minh ha trong hnh sau:

Hnh 3: Minh ha thut ton lan truyn ngc cho mng n ron

S khi biu din tng ng nh sau:

Hnh 4: Minh ha thut ton lan truyn ngc cho mng n ron

Cc bc tnh ton nh sau:


matlab code

1.
2. % Baitap02.m
3.
4. %x = [0.3;0.5];
5. x = [0.9;0.1];
6. W1 = [1.0 2;3 3;2 1];
7. b1 = [2.0;-2;1];
8. W2 = [-3 -2 1;1 2 3];
9. b2 = [3;-3];
10. % desired outputs and learning rate:
11. d = [0;1];
12. eta = 0.5;
13.
14. % Forward propagation:
15.
16. s1 = W1*x + b1
17.
18. y1 = 1./(1+exp(-s1))
19.
20. s2 = W2*y1+b2
21.
22. y2 = 1./(1+exp(-s2))
23.
24. % Back propagation algorithm:
25. % Output layer:
26. e = y2.*(1-y2).*(d-y2)
27. Dw2 = (eta.*e)*y1'
28. W2new = W2+Dw2
29. Db2 = (eta.*e).*[1;1]
30. b2new = Db2+b2
31.
32. % Hidden layer:
33. e1 = (y1.*(1-y1)).*(W2new'*e)
34. Dw1=(eta.*e1)*x'
35. W1new = W1+Dw1
36. Db1 = (eta.*e1).*[1;1;1]
37. b1new = Db1+b1
38.

vi u vo (trng hp (b) trong Bi tp 1):


matlab code
1.
2. x
3.

thu
--Lp
Sai s:

= [0.9;0.1];

kt
ra

qu:
(2):--

matlab code
1.
2. e =
3.
-0.0976
4.
0.0080
5.

Ma trn trng lng v sai lch mi ca lp ra:


matlab code
1.
2. W2new =
3.
-3.0467
4.
1.0039
5.
6. b2new =
7.
2.9512
8.
-2.9960
9.

-2.0357
2.0029

0.9538
3.0038

--Lp
Sai s:
matlab code
1.
2. e1 =
3.
0.0126
4.
0.0422
5.
-0.0034
6.

Ma trn trng lng v sai lch mi ca lp n:


matlab code
1.
2. W1new =
3.
1.0057
4.
3.0190
5.
1.9985
6.
7. b1new =
8.
2.0063
9.
-1.9789
10.
0.9983
11.

2.0006
3.0021
0.9998

(1):--

Ch : Kt qu cho lp n hi khc so vi p s (Burns 2001) mt cht, ti ngh c th do php lm trn, nu


do nguyn nhn khc th cha tm ra!
By gi cc bn hy hnh dung mng n ron trong hai bi tp ny nhn cc tn hiu vo lin tc chng ta s c
mt mng n ron c hun luyn n thc hin mt nhim v tha mn mt yu cu no ... v cho n
y, ti tin chc cc bn t nht c cht khi nim v tng ca mng n ron nhn to! Bn hy tip tc
lm thm Bi tp s 3 hi phc tp hn di, v sau hy th ng dng thit k mt b iu khin s dng
mng n ron xem sao.
Cc bn c Hp cng c mng n ron (Neural Networks Toolbox, NNT) trong MATLAB hy th dng v
kim tra kt qu ca hai bi tp trn xem sao. Bn c th c c Hng dn s dng NNT c trong h thng
tr gip trc tuyn (online help) ca MATLAB hoc y.
==Bi
tp
3==
Cho mt mng n ron gm ba lp: lp vo, lp n v lp ra. Lp vo c 5 n ron, lp n c 10 n ron v lp
ra c 2 n ron nh trong hnh sau.

Hnh 1: Mng n ron c ba lp cho Bi tp 3

S
n
ron
lp
S
n
ron
lp
S
n
ron
lp
Tng
s
kiu
mu
tn
Hm
kch
hot
f(s)
Ch s c tnh (performance index) (tng bnh phng sai s):

vo
n
ra
hiu
l

=
=
=
vo
hm

5
10
2
32
sigmoid

nh

gi

tha

mn

iu

kin

<=

tol

0.1

trong

qu

trnh

hun

luyn.

Cc trng lng (weights) v sai lch (biases, cng c ti liu gi l ngng, thresholds):
Lp n:
matlab code
1.
2. W1 =
3.
0.5102
4.
0.8221
5.
0.8030
6.
0.9049
7.
0.9223
8.
0.0011
9.
0.7871
10.
0.9070
11.
0.5646
12.
0.4710
13.

0.7140
0.3178
0.6678
0.2822
0.5612
0.5418
0.6186
0.7586
0.7672
0.2028

0.5152
0.5877
0.0136
0.0650
0.6523
0.0069
0.0155
0.3807
0.7799
0.5796

0.6059
0.1302
0.5616
0.4766
0.7727
0.4513
0.8909
0.3311
0.4841
0.6665

0.9667
0.2544
0.4546
0.9837
0.1062
0.1957
0.7617
0.5041
0.8022
0.6768

Ch : W1 c chn ngu nhin s dng mt hm ngu nhin (eg. rand trong MATLAB): W1=WD*rand
(WD l mt h s t chn WD).
matlab code
1.
2. b1 =
3.
0.9000
4.
0.9000
5.
0.9000
6.
0.9000
7.
0.9000
8.
0.9000
9.
0.9000
10.
0.9000
11.
0.9000
12.
0.9000
13.

Lp ra:
matlab code

1.
2. W2 =
3. 0.9425 0.7701 0.7374 0.8663 0.9909 0.5039 0.6291 0.7926 0.4486 0.5244
4. 0.1715 0.1307 0.2188 0.1055 0.1414 0.4570 0.7881 0.2811 0.2248 0.9089
5.

Ch : cng ging nh trn, W2 c tnh bng mt hm ngu nhin, ngha l W2=WD*rand (WD t chn).
matlab code
1.
2. b2 =
3.
0.9000
4.
0.9000
5.

1. S dng 32 kiu mu khc nhau v thut ton lan truyn ngc hy lp chng trnh hun luyn cho mng
n ron trn cho n khi ch s c tnh t ti gi tr nh hn tol = 0.1 th dng chng trnh (eg. s ln lp N
= 10000). V th ch s v s ln lp (c th dng semilogy trong MATLAB). Dng d liu ban u sau:
Tn hiu vo:
matlab code
1.
2. x =
3.
0.1000
4.
0.1000
5.
0.1000
6.
0.1000
7.
0.1000
8.
0.1000
9.
0.1000
10.
0.1000
11.
0.1000
12.
0.1000
13.
0.1000
14.
0.1000
15.
0.1000
16.
0.1000
17.
0.1000
18.
0.1000
19.
0.9000
20.
0.9000
21.
0.9000
22.
0.9000
23.
0.9000
24.
0.9000
25.
0.9000
26.
0.9000
27.
0.9000

0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.9000

0.1000
0.1000
0.1000
0.1000
0.9000
0.9000
0.9000
0.9000
0.1000
0.1000
0.1000
0.1000
0.9000
0.9000
0.9000
0.9000
0.1000
0.1000
0.1000
0.1000
0.9000
0.9000
0.9000
0.9000
0.1000

0.1000
0.1000
0.9000
0.9000
0.1000
0.1000
0.9000
0.9000
0.1000
0.1000
0.9000
0.9000
0.1000
0.1000
0.9000
0.9000
0.1000
0.1000
0.9000
0.9000
0.1000
0.1000
0.9000
0.9000
0.1000

0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000

28.
29.
30.
31.
32.
33.
34.
35.

0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000

0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000

0.1000
0.1000
0.1000
0.9000
0.9000
0.9000
0.9000

0.1000
0.9000
0.9000
0.1000
0.1000
0.9000
0.9000

0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000

Tn hiu ra mong mun:


matlab code
1.
2. d = transpose
3.
0.1000
4.
0.1000
5.
0.1000
6.
0.1000
7.
0.1000
8.
0.1000
9.
0.1000
10.
0.9000
11.
0.1000
12.
0.1000
13.
0.1000
14.
0.9000
15.
0.1000
16.
0.9000
17.
0.9000
18.
0.9000
19.
0.1000
20.
0.1000
21.
0.1000
22.
0.9000
23.
0.1000
24.
0.9000
25.
0.9000
26.
0.9000
27.
0.1000
28.
0.9000
29.
0.9000
30.
0.9000
31.
0.9000
32.
0.9000
33.
0.9000
34.
0.9000
35.

of
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.1000
0.9000
0.9000
0.9000
0.1000
0.9000
0.1000
0.1000
0.1000
0.9000
0.9000
0.9000
0.1000
0.9000
0.1000
0.1000
0.1000
0.9000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000

2. Sau khi hun luyn mng n ron trn xong, cho tn hiu vo x = [0.15 0.85 0.10 0.95 0.05]', hy tnh cc tn
hiu
ra
y.

Lm xong bi tp ny chng ta s lp trnh tng qut thut ton mng n ron thnh mt hm s, v t chng
ta c th s dng hm s ny chy chng trnh cho bt k mt mng n ron no cng cu trc.
Cc bn quan tm hy cng vi ti gii bi tp ny v sau s so snh kt qu. Bn c th s dng MATLAB
hoc
cc
ngn
ng
khc
m
bn
s
dng
quen.
--Gii-(Tn hiu
Chng
Chng
(xin

ra

sau
xem

khi mng n
trnh
trnh
phn

ron

c hun
mu
mu
sau

luyn: y
bng

[0.10136

bng
trang

0.89999])
MATLAB
C
cui)

Bi tp nguyn vn bng ting Nht (rt may anh bn Nht tm li c cho, va nhn c hm nay
25.6.2007),
ai
bit
ting
Nht
c
th
tham
kho:
Trang 1:

Trang 2:

==Bi
tp
4==
Thit k mt b iu khin mng n ron (neural network autopilot) cho tu thy s dng m hnh Nomoto bc
nht:

trong T = 7.5 (giy) v K = 0.11, r = tc quay tr (yaw rate, rad/sec),


quay tr (rad). C th s dng m hnh ng hc bnh li nh sau:

= gc bnh li (rad) v

= gc

trong l gc bnh li mnh lnh,


l hng s thi gian bnh li (11.9 giy) v a l hng s (a = 1)
dng trnh chia cho khng. Qu o ca trng tm tu trong mt phng nm ngang theo phng trnh sau:

trong u v v l vn tc trt dc (m/s) v vn tc trt ngang (m/s). Vn tc ca tu


c tnh bng knots (hi l/gi). C th coi gn ng v = 0 v u = U. Hi l hng hi (Nautical mile) = 1852
mt. Chuyn ng ca tu (theo h ta qun tnh trn tri t) trong mt phng nm ngang (
trong
hnh di) c cho trong hnh sau.

Hnh 1: Chuyn ng ca tu trong mt phng nm ngang cho Bi


tp 4

Trc khi gii, chng ta kim tra c tnh iu ng tu (vng quay tr vi gc bnh li bng 10 ) nh hnh
sau:

Hnh 2: Vng quay tr ca tu c K = 0.11, T = 7.5 giy v gc bnh lnh = 10

Cc bn quan tm hy cng vi ti gii bi tp ny, sau s so snh phng php v kt qu.


--Gii-Chng trnh mu bng MATLAB (to be updated!)
Chng trnh mu bng C (to be updated!)
==Kt lun==
(to be updated)
Hi u
==Ti liu tham kho==
1. Burns, R.S. (2007). Cng ngh iu khin tin tin (bn ting Vit). ng dng iu khin.
2. Hagan, M.T., Demuth, H.B. and de Jess, O. (2002). An Introduction to the Use of Neural Networks in
Control Systems. International Journal of Robust and Nonlinear Control, Vol. 12, No. 11, pp. 959-985.
Xem thm thng tin trang web ca Martin T. Hagan

3. Trang web Wikipedia


4. Trang web ca Kevin Passino
==Bi

tp

(additional

exercise)==

Bn hy thit k my li t ng (autopilot) dng mng n ron a lp iu khin mt tu du c m t


bng m hnh Nomoto bc hai sau:
(1)

trong l hng tu (gc quay tr, yaw, rad) v


chng ta c hm truyn:

l gc bnh li (rad). Vi iu kin ban u bng 0,

(2)

trong v
l cc tham s h thng ca tu, v l hm s ca vn tc chy ti ca tu
l khng i) v chiu di tu :

(coi

(3)

(4)

Phng trnh (1) c th vit li thnh:


(5)

Ch : Theo Passino (2005), m hnh 5 thu c bng cch tuyn tnh ha phng trnh chuyn ng xung
quanh gc bnh li bng khng (
). Do vy, gc bnh li khng vt qu 5 , nu khng c gii hn
ny th m hnh khng cn chnh xc na. Vi mc ch thit k h thng my li t ng vi gc bnh li ln
hn 5 , do vy chng ta cn s dng m hnh thch hp hn. M hnh trn c m rng thnh m hnh sau:
(6)

trong

l hm phi tuyn ca

trng thi n nh sao cho


gn ng hm

. Hm

c th c xc nh bng mi quan h gia v

trong

. Bng th nghim xon c (spiral test) ngi ta c th tnh

nh sau:
(7)

trong v
thit
rng
Cc

l cc hng s thc v
gc
bnh
li
tham

(tu
Gi

chy
thit

lun dng. Chng ta c th chn


ln
nht
l
ca

vi
tu

tu

vn
chy

(hoc

tc
trong

. Chng ta cng gi
radians).
nh

ti
hai

khng
iu

sau:

i)
kin:

Chy

ba

lt:

Chy

ti:

Bn c th s dng phng php tch phn s phng php Euler hoc Runge-Kutta. Vi gc bnh li
, s dng phng php Runge-Kutta bc 4 (vi thi gian tch phn 1000 giy, bc tch phn
(integration step size) h = 1 giy) thu c kt qu (tu quay tr xon c) nh sau:

Hnh 1: Vng quay tr (xon c) ca tu du vi gc b li bng 10

y l tu du c chiu di L = 350 m v trng ti tnh (dwt) 389100 tn thuc loi tu du ln. T kt qu m


phng vi cc thng s cho chng ta thy th nghim xc nh ch s iu ng chng ta cn khu vc
th ln v su cn thit c kt qu chnh xc.
Cc bn quan tm hy tip tc thit k my li t ng dng mng n ron cho chic tu du ny. Hi vng cc
bn s li c con tu i vng quanh tri t:-)) (j/k).
Hi u
Ai mun c thm ti liu v m hnh tu du ny c th tm thy mt trong cc cun sch sau:
==Ti liu tham kho==
Astrom, K.J. and Wittenmark, B. (1995). Adaptive Control (2nd Ed.). Addison Wesley. (pp.402-406)
Fossen, T.I. (1994). Guidance and Control of Ocean Vehicles. John Wiley and Sons Inc., London.
Fossen, T.I. (2002). Marine Control Systems - Guidance, Navigation and Guidance of Ships, Rigs and
Underwater Vehicles. Marine Cybernetics. Trondheim, Norway.

Passino, K.M. (2005). Biomimicry for Optimization, Control, and Automation. Springer-Verlag London.
Ti ang gng din gii v mng n ron theo cch thc d hiu nht. Cc bn xem hnh sau, mng n ron
cho Bi tp 3.

Hnh 1: Mng n ron cho Bi tp 3

Trong cc sch vit v mng n ron c l cun Neural Network Design v ti liu hng dn s dng Neural
Network Toolbox User's Guide l d hiu nht. Ti tham kho hai cun ny v hnh din gii cho Bi tp
3. Nguyn l nh sau:
1. Ban u phi chy mt chng trnh khi ng mng n ron, tc l t cc gi tr ban u cho mng bao
gm cc gi tr u vo (x(0), cc ma trn trng lng (W(0)) v sai lch (b(0)) cho cc lp, v tn hiu mong
mun (d(0)), gi tr ch s c tnh mc tiu (Tol).
2. So snh u ra vi tn hiu mong mun (cng c gi l 'tn hiu thy " hoc mc tiu (target)), chy
chng trnh hun luyn mng n ron cho n khi tha mn iu kin tr s c tnh nh hn gi tr mc tiu,
cc gi tr trng lng v sai lch cho cc lp c cp nht W1(k), b1(k), W2(k), b2(k) th mng n ron bt
u lm vic n nh.
3. Khi c cc gi tr trng lng v sai lch mi th tn hiu vo mi s c tnh ton c u ra c gi tr
bng gi tr mong mun. Trong trng hp gi tr u ra khng bng gi tr mong mun th thut ton hun
luyn tip tc lm vic duy tr gi tr u ra bng vi gi tr mong mun.
4. Khi gi tr mong mun thay i th ton b mng s li c hun luyn u ra t c gi tr mi.
Khi p dng mng n ron trong cc thut ton khc nhau v d nh c lng (estimation) v nhn dng h
thng (system identification), nhn bit kiu mu (pattern recognition) hoc iu khin vn quan trng nht
l cch la chn mng, la chn cc lp v la chn cc gi tr ca cc ma trn trng lng v sai lch sao cho
ph hp. Do vy khi tm hiu thut ton s dng mng n ron chng ta s thy c rt nhiu kiu p dng khc
nhau. Mng n ron cng c th c kt hp vi nhng thut ton khc c mt thut ton tt hn.

Cc bn c kinh nghim v mng n ron xin cng trao i.


==Bi

tp

6==

Cho tu container c cc thng s sau: T = 18.3443 (giy), K = 0.1524, vn tc U0 = 7.7 m. Hy thit k my


li t ng s dng mng n ron cho tu container ny, s dng cc ngn ng lp trnh m bn thnh tho
nht.

Hnh 1: Vng quay tr tu Container (gc bnh li 10 )

Em vit li ci code ny chy th th thy n th chy ht 10000 ln ch khng chu thot khi vng lp bi
iu kin J<0.001.Em th v d 1 th n vn cn ng, c sai khc t cht nhng c bn vn cng bc.Em cng
th dng mng n tron xp x hm ri, nhng khng bit v sao n khng bm hm c, lc u em khng
thay i hm kch hot, vn l hm sigmoid nn n b chn, sau em thay bng hm tuyn tnh n c ung
o theo mt t nhng vn khng bm tt c, em tng s vng lp ln tnh hnh vn khng khc my.Nu
c th anh cho em mt v d anh nh!Cn y l ci code trn:
matlab code
1.
2.
3.
4.
5.

%===

clc
clear

xmau
=
[0.1000
0.1000;
6.
0.1000

0.1000
0.1000

0.1000

0.1000
0.1000

0.1000
0.9000;

7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.

0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000]';
36. d = [ 0.1000
37.
0.1000
38.
0.1000
39.
0.1000
40.
0.1000
41.
0.1000
42.
0.1000
43.
0.9000
44.
0.1000
45.
0.1000
46.
0.1000
47.
0.9000
48.
0.1000
49.
0.9000
50.
0.9000
51.
0.9000
52.
0.1000
53.
0.1000
54.
0.1000
55.
0.9000
56.
0.1000
57.
0.9000
58.
0.9000
59.
0.9000
60.
0.1000
61.
0.9000
62.
0.9000

0.1000
0.1000
0.1000
0.1000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.1000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000
0.9000;
0.9000;
0.9000;
0.9000;
0.9000;
0.9000;
0.9000;
0.1000;
0.9000;
0.9000;
0.9000;
0.1000;
0.9000;
0.1000;
0.1000;
0.1000;
0.9000;
0.9000;
0.9000;
0.1000;
0.9000;
0.1000;
0.1000;
0.1000;
0.9000;
0.1000;
0.1000;

0.9000
0.9000
0.1000
0.1000
0.9000
0.9000
0.1000
0.1000
0.9000
0.9000
0.1000
0.1000
0.9000
0.9000
0.1000
0.1000
0.9000
0.9000
0.1000
0.9000
0.9000
0.1000
0.1000
0.9000
0.9000
0.1000
0.1000
0.9000
0.9000

0.1000;
0.9000;
0.1000;
0.9000;
0.1000;
0.9000;
0.1000;
0.9000;
0.1000;
0.9000;
0.1000;
0.9000;
0.1000;
0.9000;
0.1000;
0.9000;
0.1000;
0.9000;
0.9000;
0.1000;
0.9000;
0.1000;
0.9000;
0.1000;
0.9000;
0.1000;
0.9000;
0.1000;
0.9000

63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.

0.9000
0.9000
0.9000
0.9000
0.9000

0.1000;
0.1000;
0.1000;
0.1000;
0.1000]'

;
L=3;
g=inline('1./(1+exp(-x))');
sodv=[5 10 2];
eta=0.5;
J=1;
dem=0;
for i=1:L-1
for n=1:sodv(i)
for m=1:sodv(i+1)
w{i}(m,n)=1*rand;
end
end
for m=1:sodv(i+1)
b{i}(m,1)=1*rand;
end
end
w{L}=ones(sodv(L));
w{1:2}
b{1:2}
while (J>0.001)& dem<10
dem=dem+1;
J=0;
for k=1:length(xmau)
x{1}=xmau(:,k);
for i=1:L-1
s{i}=w{i}*x{i}+b{i};
s{i}
x{i+1}=g(s{i});
x{i+1}
end
e=d(:,k)-x{3}
J=J+sum(e.^2);
for i=L-1:-1:1
e=(x{i+1}.*(1-x{i+1})).*(w{i+1}'*e)
deltw{i}=(eta.*e)*x{i}';
w{i}=w{i}+deltw{i};
deltb{i}=(eta.*e).*ones(sodv(i+1),1);
b{i}=b{i}+deltb{i};
end
end
J=J/2;
end

c c ci nhn bao qut v ng dng mng n ron trong iu khin chng ta tm i v tr hai bi tp 4
v 5 cho nhau. Chng ta hy gii Bi tp 5 trc. gii bi tp ny trc ht cc bn hy tham kho v d
trong mc 4.3 Design Example: Multilayer Perceptron for Tanker Ship Steering (Passino, 2005).
--Gii

Bi

tp

5--

Trc khi gii bi tp ny vi mt thut ton iu khin s dng mng n ron, chng ta hy xem xt phng
php thit k ca tc gi Passino (1996) s dng mng n ron cm gic a lp nh th no . c th hiu
c qu trnh thit k v m phng my li t ng dng mng n ron ti xin tm lc li kt qu m Passion
lm, v sau s pht trin thm mt my li t ng dng mng n ron kiu khc (c th ni s phc tp
hn). Ti trnh by tm tt li v d ny t khu kho st i tng c iu khin l tu du c chiu di 350
mt
cho
n
cc
khu
thit
k
my
li
t
ng.
--M

hnh

tu--

Nhm hiu c ng hc tu thy, chng ta p dng cc nh lut c hc Newton cho chuyn ng ca tu.
i vi tu mt nc nh tu du, chng ta c th b qua cc chuyn ng theo trc thng (trt ng, heave),
chuyn ng quay quanh trc x (lc ngang, roll), v chuyn ng quay quanh trc y (lc dc, pitch). Chng ta
ch xt ti ba chuyn ng trong mt phng nm ngang (trn b mt tri t) l chuyn ng trt thng
(surge), trt ngang (sway) v quay tr (yaw). My li t ng l mt h thng iu khin hng tu hay gc
quay tr (yaw angle). Hng tu c iu khin bng bnh li. Do m hnh tu du c s dng cho vic
thit k my li t ng l m hnh ton biu din mi quan h gia gc bnh li ( v gc quay tr .
Trong h ta bc ng (north-earth, c trc tung hng v pha bc - trng theo hng tnh v , v trc
honh hng v pha ng - trng theo hng tnh kinh ), m hnh n gin biu din chuyn ng quay tr
ca tu nh sau:
(1)

trong l hng tu (gc quay tr, rad),


khng, chng ta c hm truyn nh sau:

l gc bnh li (rad). Gi thit rng cc iu kin ban u bng

(2)

trong
,
,
v
l cc tham s h thng v l hm s ca vn tc trt dc ca tu
chuyn ng theo trc x vi vn tc khng i) v chiu di tu v c tnh nh sau:

trong

cc

gi

tr

th

chn

cho

tu

du

Astrom

(gi thit tu

Wittenmark

(1995):

Tu du chy ba lt (ballast, khng c hng):


,
,
,
v
(Ch : Passino dng t 'a very heavy ship' ch tu trng thi ballast c l khng ng chuyn
mn,
HA).
Tu ch y hng (full-loaded):
,
,
,
v
(Passino dng t 'a lighter ship' ch tu ch y hng c l khng ng chuyn mn, t ny ph hp vi tu
chy
ballast

trn
v
ngc
li
HA).
Vn
tc
tu
l
(m/s).

--Notes:-- S dng cc gi tr s trn chng ta c th kho st c tnh n nh ca tu (s dng cc phng


php kinh in nh qu o nghim, Nyquist diagram hoc Bode diagram). Bn c hy t tm hiu, thay s
vo phng trnh trn. Bn c cng c th vit c m hnh khng gian trng thi kho st kh nng iu
khin
(controllability)
v
kh
nng
quan
st
(obserability).
***(xem

phn

sau

cch

rt

ra

hnh

khng

gian

trng

thi)

Theo Passio (1996), m hnh (1) hoc (2) trn l phng trnh rt ra t vic tuyn tnh ha cc phng trnh
chuyn ng xung quanh gc bnh li bng khng (
). Do vy ch ng cho cc gc bnh li nh khng
qu 5 , nu khng m hnh ny khng cn chnh xc na. thit k my li t ng s dng mng n ron
cm gic a lp Passino (1996) s dng m hnh phi tuyn m rng thch hp hn vi nhng gc bnh li
ln hn 5 . M hnh phi tuyn m rng c m t nh sau:
(3)

trong

l mt hm phi tuyn ca

trng thi n nh sao cho


test) chng minh rng

. Hm

c th c xc nh t mi quan h gia v

. Mt th nghim c gi l 'th nghim xon c' (spiral


c th c tnh gn ng bng:
(4)

trong

v l cc hng s c gi tr thc v

lun lun dng. Chng ta c th la chn

Chng ta cng gi thit rng gc b li ca tu l


(hoc
radians). (Ch thm rng gii hn
gc bnh li y c tc gi Passino gi nh lm m phng, trong thc t gc bnh li ca tu theo tiu
chun ca IMO (International Maritime Organization) l
, HA).
Tm

hnh

khng

gian

trng

thi

ca

hnh

tuyn

tnh:

thit k v m phng tu du ny, chng ta cn bin i phng trnh (tuyn tnh) cho phn trc thnh
nhiu dng khc nhau. Chng ta hy tm m hnh khng gian trng thi ca m hnh tu bng cch vit li
phng trnh trn nh sau:
(1)

trong

Theo Ogata (2002, 4th Ed.) (hoc bn 3rd trang pp.76-80), m hnh khng gian trng thi ca h ny c
tnh nh sau (lc qua cc bc bin i):

Nu chng ta th xt kh nng iu khin v kh nng quan st ca h ny chng thy rng h c biu din
bng m hnh khng gian trng thi ny khng c kh nng iu khin (rank(M) = 2 < 3, s bin trng thi).
Khi lm m phng bng Simulink chng ta c th tch ra thnh hai thnh phn nh sau:

***
Xem

Phn

m
y:

MATLAB

TankerPassino.m

****
(211

views).

Trong phn trn chng ta c hm truyn ca tu du, chng ta c th kho st c tnh & tnh n nh ca
tu (da vo hm truyn h m m t mi quan h gia hng tu vo gc bnh li) s dng cc phng php
kho st nh biu Bode, biu Nyquist, phng php qu o nghim s. Ti ch tr trng v phng
din thc hnh, nn xin b qua phn l thuyt "nhc u" ny! Bng MATLAB v Simulink cc bn c th d
dng
kho
st
c
tnh
n
nh
ca
tu
***

Ht

phn

*****

Bn c c th t lp chng trnh m phng cho tu du s dng m hnh tuyn tnh. Trong phn sau ti trnh
by tm tt chng trnh m phng ca Passino (1996) s dung m hnh phi tuyn.
S dng m hnh phi tuyn, chng ta s bin i li. Gi thit rng h phi tuyn c dng sau:

trong
l vc t trng thi v
l vc t hm phi tuyn, g
l hm phi tuyn nh x trng thi v u vo ln u ra ca h thng, v
l trng thi ban u. Ch
rng f v g l cc hm bin thin theo thi gian do ph thuc r rng vo bin thi gian t. m phng (gii
phng trnh) h phi tuyn, chng ta c th s dng cc phng php s nh Phng php Euler, Phng
php
Runge-Kutta
(xin
xem
thm
ti
liu
tham
kho
Ton
ng
dng(*)).

thun tin cho vic lp trnh m phng, chng ta hy t:

Chng ta s vit phng trnh theo dng:

trong
thuc vo

. Chng ta cn la chn

v
v vi i = 1, 2, 3. Chng ta c:

sao cho

ch ph

Chn:
(2)

sao cho

khng ph thuc vo

Lc chn
sao cho
chng ta phng trnh c dng nh sau:

Nhng v

. Cui cng la chn

. S la chn ny cho

nn:

. Biu thc ny cung cp cc phng trnh ng cho m phng. Tip theo

Chng ta c

chng ta gi thit rng cc iu kin ban u l


v

. iu ny c ngha rng
hoc

i vi bi ton li tu, chng ta chn bc tch phn h = 1 giy, v


giy sao cho
giy (ngha l b iu khin c thc hin trn my tnh s vi thi gian ly mu
giy sao cho u
vo ca i tng c iu khin c sau trong mi khong thi gian 10 giy v a tn hiu iu khin vo
bnh
li).
m phng qu o chuyn ng ca tu trong mt phng nm ngang (vi trc x theo hng bc, trc y theo
hng ng) chng ta s dng phng trnh sau:

n gin chng ta c th gi nh u = U0 (tu chy ti vi vn tc khng i) v v = 0 (rt nh c th b


qua).
Chng trnh m phng cho m hnh tu du tuyn tnh (Passino 1996) c cho y (sau khi sa cha
v b sung mt s ch t chng trnh gc): tanker_model.m (163 views). Kt qu m phng cho bnh li 20
cho trong hai hnh sau:

Hnh 1: Hng tu, tc quay tr v bnh li

Hnh 2: Vng quay tr vi gc bnh li 20

Ch : Trong m hnh tu du ny vi gc bnh li dng th chng ta c gc quay tr m. L do: h ta


(trong mt phng nm ngang) dng trong m hnh ny c dng trong ti liu c trc x hng theo hng
ng, cn trc y c chiu hng theo hng nam. nhn cho thun mt, trong chng trnh c chnh sa qu
o thnh h ta c trc x hng theo hng bc, v trc y hng theo hng ng.
Nhn vo qu o chuyn ng ca tu chng ta thy vi mt gc bnh li khng i, tu quay tr theo qu
o hnh xon c (spiral).
Cho n y, cng c kin thc bn c c th lp chng trnh m phng cho tu du ny s dng iu
khin PID. Bn cng c th s dng kt qu m phng h my li t ng PID so snh vi kt qu m
phng ca my li t ng s dng mng n ron (trong phn sau) xem phng php no c p ng tt
hn!

Gii

Bi

tp

(tip)

Mng n ron nhn to c to ra t tng p dng mng n ron sinh hc. Vy th bn cht
ca mt mng n ron nhn to hot ng nh th no khi c p dng vo h thng iu khin?
c th hiu nguyn l ng dng mng n ron cho h iu khin t ng chng ta hy th
im qua c ch hot ng ca h thn kinh sinh hc. im c bn ca mng n ron sinh hc (v

d ca con ngi) l khi mi sinh ra h thng thn kinh ca em b c hnh thnh nhng
dng n gin nht, c th tm ni l cha bit lm c g c. H thng thn kinh ca mt con
ngi pht trin trong qu trnh sinh trng v c rn luyn qua trng hc (gio dc), qua
sinh hot x hi v qua mi quan h ca con ngi trong mi trng sng. Nh vy c th ni,
"u ra" ca mt con ngi (s ng x, thao tc chuyn mn...) ph thuc rt nhiu yu t: "u
vo", mi trng sng... c bit l mi trng hc tp v c hun luyn (t cc thy c gio).
tng to ra mng n ron nhn to l t nguyn l hot ng ca h thng n ron sinh hc, tt
nhin mng n ron nhn to n gin hn rt nhiu so vi mng n ron sinh hc, nhng n c
"tha hng" hai yu t quan trng nht l "hc tp" v "hun luyn" "trng thnh" v c
th lm c vic m con ngi ta mong mun! Ngha l mun p dng c mng n ron nhn
to vo trong mt lnh vc no ni chung, v trong h iu khin t ng ni ring th iu
quan trng quyt nh cho s thnh cng l "kh nng hc tp" ca mng (ph thuc vo cu trc
mng v cc bin s la chn cho u vo) v "chng trnh v phng php ging dy" (thut
ton
hun
luyn).
Trong qu trnh pht trin mng n ron nhn to, cho ti thp nin 80s tng chng b tc
nhng do c mt s tc gi khai thc c tng "hun luyn" (training hoc adaptation lm thch ng) mt mng n ron nhn to bng thut ton "lan truyn ngc" (back propagation)
v t cc tc gi i sau pht trin mng n ron theo cc hng tm ti v pht trin
"chng trnh hun luyn" cho mng n ron ng thi vi s h tr ca my tnh lm cho lnh
vc
mng
n
ron
hi
sinh.
T tng trn, chng ta s thy rng khi ng dng mng n ron vo h thng iu khin t
ng, c rt nhiu phng php khc nhau. Khi mng n ron c kt ni vi i tng c
iu khin (plant) th li c cc cch kt ni khc nhau. Do vy chng ta c th hnh dung c
rng h iu khin s dng mng n ron s phong ph v a dng n nhng no. Nh vy t
khi mng n ron c hi sinh, c rt nhiu ngi ngi th ng dng mng n ron vo vic
thit k h thng iu khin t ng cng nh trong cc lnh vc khc nhau, ngy nay chng
ta c th thy c rt nhiu cc cng trnh nghin cu cng nh cc sch khc nhau v mng n
ron.
tip cn ti ng dng mng n ron trong h iu khin chng ta hy theo hng tip cn t
n gin ti phc tp. Chng ta hy xem xt mt h iu khin mng n ron n gin s dng
mng n ron cm gic a lp v sau s xem xt mt s h iu khin mng n ron phc tp
hn.
Thit k b iu khin dng mng n ron cm gic a lp n gin (Passino (1996)
Trong v d ny tc gi Passino (1996) s dng mng n ron cm gic a lp (multilayer
perceptron neural network) cho b iu khin hng tu. S nguyn l my li t ng c
minh ha trong hnh sau:

Hnh 1: S minh ha my li t ng dng mng n ron cm gic a lp


(Passino 1996)

Lp vo ca mng n ron c hai tn hiu: hng tu mong mun


v hng tu thc . Mng
c ba lp n v mt lp ra nh c minh ha trong hnh sau. Chng ta c th biu din mng
nh
sau:
2-1-2-2-1 (2 tn hiu vo, 1 n ron trong lp n 1, 2 n ron trong lp n 2, 2 n ron trong lp n
3 v 1 n ron trong lp ra).

Hnh 2: S mng n ron cm gic a lp cho my li t ng (Passino


1996)

Ch thch: 1. hidden layer = lp n (c 3 lp), 2. output layer (lp ra); 3. linear activation
function = hm kch hot tuyn tnh; 4. logistic sigmoidal activation function = hm kch hot
sigmoid.
La

chn

cu

trc

lp

T Hnh trn, chng ta thy rng mng n ron cm gic a lp l nh x ca

u
v

tin
ln , u

vo ca tu. Chng ta gi u ra mng n ron cm gic a lp l


( thun tin chng ta b
qua cc arguments biu din mi quan h vi cc tham s ca mng). Mc tiu l xc nh nh
x
bng cch la chn s lp n ron, s n ron trong mi lp v cc trng lng (weights),
sai lch (biases) v hm kch hot (activation functions) cho tt c cc n ron (t quan im
nghin cu chc nng h thn kinh chnh l s tin ha xc nh nh x ny). thc hin
c vic ny, n gin chng ta ch ra mt la chn c th c cho mng n ron cm gic a
lp v gii thch mt s l do hp l t cu trc ca mng. Hy xt Hnh 4.10. Chng ta s dng
mt mng n ron cm gic bn lp vi c cc hm kch hot tuyn tnh v sigmoid. Trc ht,
hy xt lp n u tin. i vi lp ny, chng ta la chn
thy rng u ra ca lp n u tin s l sai s hng tu:

. Do vy, chng ta

iu th v y l mt n ron c th to ra c phng php so snh hai tn hiu lm c s


cho vic ra quyt nh iu khin truy theo (tracking) v iu chnh (regulation).
(xem

thm

trong

Passino)

La chn trng lng v sai lch (biases) (ngng, thresholds): xy dng cc c tnh phi tuyn
bng
cc
hm
bc
thang
trn
Tip theo, chng ta gii thch cch la chn trng lng v sai lch cho cc lp cn li. lm
c vic ny, hy xem mng n ron trong Hnh trn c hai ng truyn (2 paths) qu trnh
x l tn hiu e ca lp n u tin ti u ra . Tng tng rng bn tch ng truyn pha
di v xt k cu trc ca ng truyn pha trn. Chng ta s suy ngh v ng truyn pha
trn c dng iu chnh hng tu khi:

Trong trng hp ny, chng ta mun c mt tn hiu bnh li m (negative). Hy xt Hnh 4.8
(Passino 1996) m bn s thy rng gc bnh li dng (positive) s lm gim hng tu v
bnh li m s lm tng hng tu . Do vy nu
th chng ta co
do vy
chng ta cn tng hng tu ln. Chng ta s dng gc bnh li m. Tip theo, hy ch rng
i vi cc gi tr ln hn ca
chng ta cn cc gi tr ln hn lm gim hng tu nhanh. Vy chng ta s chn cc trng
lng v sai lch trong ng truyn pha trn nh th no thc hin kiu hnh ng iu
khin
ny?
xc nh cc gi tr cho trng lng v sai lch, chng ta hy ngh rng mi n ron lm nhim
v cung cp mt kiu o mch trn (smooth switching) (mt hm bc thang trn c cho

trong Hnh 4.6, v d, hm sigmoid) v iu chnh cc trng lng v sai lch xy dng cc
nh xc iu khin phi tuyn. Ch rng khi ch xt ti ng truyn pha trn chng ta c:

trong

Cc tham s trong phng trnh ny nh hng ti hnh dng phi tuyn t sai s e ti theo cch
sau:
:

,
,

di
:

chuyn
cn

nh
chnh

x
trc

ln

xung.

thng

ng

: di chuyn bc thang trn (hm logistic) theo chiu ngang, vi


di chuyn sang bn
tri.
[[math:w_{11}^{(2)}: cn chnh trc honh (bn c th ngh v iu ny ging nh kiu khuch
i
cho
mt
hm
s,
t
nht
l
cc
b).
S dng nhng tng ny, hy la chn:

Vi nhng la chn ny chng ta c nh x phi tuyn c cho trong th pha trn cng
Hnh 1.11. Hnh dng tng qut ca hm thch hp dng lm b iu khin cho
v n
to ra dng t l gia ln ca e v ln ca . Ch rng s la chn

cho kt qu

trong mng n ron cm gic l to ra c gc bnh li


. S la chn
n gin di
chuyn hm sang bn phi, sao cho gi tr ca hm s gn vi e = 0 to nn gc bnh l
.
Gi tr ca

nh hng ti nghing ca hm khi

lm tng ln, nn nu

la chn ln hn, th n s t c gc tr m ln nht


nhanh hn khi ln ca e tng.
S la chn ny hon thnh cu trc mng n ron cm gic cho ng truyn pha trn c
dng

iu
khin
trong
trng
p
m
.
Tip theo hy xt ng truyn pha di trong Hnh 4.10 (tng tng tc ra khi ng truyn
pha trn) c dng cho trng hp
. S dng nhng tng tng t la chn cc
tham s trn, chng ta hy chn:

Tnh phi tuyn thu c c thc hin trong ng truyn bn di c trnh din trong
th gia ca Hnh 4.11. Trc ht, ch rng hnh dng tng qut ca th ph hp dng lm
b iu khin cho trng hp m
; khi ln ca e tng theo hng m, cc gi tr dng
tng lin tc ca gc bnh li c to ra gng lm gim gi tr ca ti gi tr cho ca
. Cc gi tr ca

c la chn theo cng cch la chn cc gi tr tng

ng cho ng truyn pha trn. Gi tr ca


khong

c la chn di chuyn tnh phi tuyn ti


80
.

Hnh 3: Hnh 4.11 nh x mng n ron cm gic a lp,


th pha trn cn cho ng truyn pha trn ca mng n
ron t e ti , th gia cho ng truyn pha di ca
mng n ron t e ti , th cui cng cho c mng n ron
t e ti

La chn cho
hon thnh vic xc nh lp ra, n gin l tnh tng cc hm c to ra bi
ng truyn trn v di, cho kt qu nh x ton b t e ti nh c biu din trong Hnh
4.11 (ngha l khi c ng truyn trn v di trong Hnh 4.10 c dng). Ch rng do s
i xng trong cc la chn ca chng ta, e = 0 c rng
sao cho tu chy theo hng
ng (thng), bnh li khng phi iu chnh hng. S la chn ny hon thnh cu trc ca
mng
n
ron
cm
gi
a
lp

iu
chnh
hng
tu.
(xem

thm

Chng

trnh

trong
m

phng

Passino)
(Passino

1996)

Da trn nhng phn tch trn, Passino (1996) lp chn trnh m phng c kt qu nh sau.
Xem
Kt

y:
qu

tanker_mlpautopilot.m
m

(184

views)
phng

Kt qu m phng cho my li t ng iu khin tu du trong khong thi gian 1-4000 giy


c cho trong hnh sau. T 1-100 giy, hng mong mun
, t 100-2000 giy,
v t
.

Hnh 4: p ng hng tu (), tc quay tr (/giy), sai s () v gc bnh li


()

Qu o chuyn ng ca tu c cho trong hnh sau:

Hnh 5: Qu o chuyn ng ca trng tm tu

(xem thm cc phn nh gi v phn tch h iu khin mng n ron cm gic a lp trong
Passino (1996)).
Nhn

xt

T bi ton thit k m phng h iu khin dng mng n ron v kt qu m phng trn chng ta thy:
1. Bi ton minh ha c tng ca vic ng dng mng n ron trong cho h iu khin. Phng php
ny
l
kt
ni
trc
tip
mng
n
ron
vi
i
tng
iu
khin.
2.

Mng

ron

mi

ch

hot

ng

trn

ng

truyn

thng.

3. Mng n ron cha c thut ton hun luyn, cc trng lng v sai lch cha c lm mi.
4.

ng

(hng

tu)

cha

tt

lm.

Qua m phng thy m hnh phi tuyn ca tu du c c tnh quan h gia gc bnh li v hng tu kh c
bit, vi mt gc bnh li c nh gc quay tr mang gi tr m v qu o (vng quay tr) ca tu c dng
xon c. Khi cc bn thit k my li t ng dng lut PID cho m hnh tu ny khng phi d dng.
H ta dng cho tu c cho nh trong hnh sau:

Hnh 1: H ta tu du trong mt
phng nm ngang

Ch : y l tu du c ln, nu thc hin th nghim trn trng th da trn kt qu m phng trn, vi


thi gian ly mu 10 giy v tu chy vi tc 5 m/s (tc khong 9.3 knots (hi ly/gi) v ton b th nghim
nh trn th mt chng 2 gi 30 pht, vi khong cch trong khu vc chng khong 16 km theo hng tu
chy v khong cch ngang gn 7 km (theo qu o khi khng nh hng ca sng gi v dng chy). Cho
nn trong thc t lm nghin cu lm th nghim ton t l xch (full-scale experiments) trn tu thc v cng
tn km. Nn ngi ta lm th nghim trong b th vi tu m hnh, t tu m hnh suy ra cc tnh nng ca
tu thc theo cc nh lut ng dng (similarity laws) th s tn km t tin hn. Tuy nhin nu lm th
nghim trong b th dng tu m hnh th cng phi trang b nhng thit b o lng v iu khin cng khng
phi l r.
Trong cng nghip ng tu, sau khi h thy, hai bn giao nhn cng phi thc hin mt s th nghim trc
khi giao tu. Nhng ai quan tm n lnh vc iu khin tu t ng ny, ti ngh chc chn s c c hi kim
c vic lm tt trong nhng thp nin ti khi m ngnh ng tu VN ang pht trin.
(Ht Bi tp 5)
M rng: Cc bn quan tm c th s dng b iu khin mng n ron cm gic a lp trn tip tc thit
k mt b iu khin mng n ron c thut ton hun luyn nhm ti u ha cc gi tr ca trng lng v sai
lch.
(cn tip)
Trong cc phn tip theo, chng ta hy th thit k cc h my li s dng mng n ron phc tp hn v c s
dng cc thut ton hun luyn (thut ton lm thch nghi, adaptation algorithms).

Gii

Bi

tp

My li t ng mng n ron cm gic a lp cho tu hun luyn Shioji Maru


ng dng h iu khin mng n ron cm gic a lp Bi tp 5 cho tu hun luyn Shioji Maru dng m
hnh tuyn tnh bc nht Nomoto cho kt qu nh hnh sau.

Hnh 1: So snh p ng iu khin bng PID v NN

:
Xanh
en
[[file

tn
lin:
t
>>

hiu
p
on:

tham
ng
p
s

chiu
bng
ng

cp

bng
nht

(mong
NN-based
PID
sau

mun)
autopilot
autopilot
>>

Cc trng lng v sai lch ca mng n ron trong bi tp ny c chn ngc du v c gi tr nh hn gi


tr trong Bi tp 5. Trong chng trnh m phng ny c so snh p ng iu khin bng mng n ron vi
p ng iu khin bng PID. Kt qu m phng cho thy h iu khin NN cho p ng tt hn h iu
khin
PID.
Qua
m
phng
nhiu
ln
th
quan
st
thy
rng:
1. Khi c hai b iu khin c chn cc tham s (weights v biases cho mng n ron, khuch i Kp, Ki v
Kd cho b iu khin) tt nht th p p ng bng NN lun t gi tr mong mun trc (nh thy trong
th).
2. Khi c chn cc tham s ln th p ng bng NN c overshoot nh hn overshoot ca p ng bng PID.
Trong cc phn sau, ti s th thit k thm mt s b iu khin dng mng n ron phc tp hn. Nu c kt
qu
tt
ti
s
cp
nht.
Cc
thut
ton
d
kin
s
dng:

H iu khin mng n ron thch nghi vi tng tc thch nghi (adaptive interaction) with a constant
learning
rate
H

iu

khin

mng

ron

dng

thut

ton

lan

truyn

ngc

H iu khin mng n ron s dng thut ton tng tc thch nghi bin i tham s (with a timevarying learning rate)
mng n ur v hm n w

P=[-1 -1 2 2;0 5 0 5]
T=[-1 -1 1 1]
alphabet = P;
targets = T;
[R,Q] = size(alphabet);
[S2,Q] = size(targets);
S1 = 10;
net = newff(minmax(alphabet),[S1 S2],{'logsig' 'logsig'},'traingdx');
net.LW{2,1} = net.LW{2,1}*0.01;
net.b{2} = net.b{2}*0.01;
net.performFcn = 'mse';
net.trainParam.goal = 0.1;
net.trainParam.show = 20;
net.trainParam.epochs = 5000;
net.trainParam.mc = 0.95;
P = alphabet;
T = targets;
[net,tr] = train(net,P,T);
y=sim(net,P)

You might also like