Oig(Ii)gwij Oji. (3.30)
jN
Mục tiêu của mạng là cực tiểu hóa sai số sau đây
E 1
2 iN
e2 , (3.31)
Có thể bạn quan tâm!
- Tổng Quan Về Mạng Nơ-Ron Nhân Tạo Trong Điều Khiển
- Điều Khiển Tự Động Dùng Mạng Nơ-Ron Nhân Tạo
- Wij O J I , (3.29)
- Các Phương Án Thích Nghi Cho Hệ Thống Điều Khiển Auv
- Đáp Ứng Hướng Đi Của Auv Khi Có Dòng Chảy (Tn3)
- Đáp Ứng Hướng Đi Của Auv Khi Có Dòng Chảy (Tn5)
Xem toàn bộ 169 trang tài liệu này.
i
trong đó
ei Od O
nếu i là nơ-ron lớp ra.
i i
Thuật toán cập nhật trọng số cho mạng nơ-ron trong [3] được viết như
sau
wg(I ) Oj
w w
g(I )O e , (3.32)
ij i O
ki ki
i j i
trong đó
wij
i kN
là số gia hay tốc độ thay đổi của trọng số,
g(Ii )
là đạo hàm của
g(Ii )
theo
Ii .
Phương trình (3.32) thể hiện thuật toán Brandt-Lin để cập nhật trọng số của mạng nơ-ron. Sau đó trong nghiên cứu [3] một bộ điều khiển nơ-ron dựa vào thuật toán Brandt-Lin được đề xuất và các thí nghiệm mô phỏng được trình bày đã minh họa hiệu quả của bộ điều khiển.
p
wjp
w
ij
i
Oi
Ii
Op
j
ek ek-1
ek-p+1
Ij Oj
Hình 3.3 Cấu trúc bộ điều khiển NNC
3.2.2 Mô hình tổng quát của bộ điều khiển NNC huấn luyện trực tuyến
Cấu trúc của bộ điều khiển NNC giới thiệu trong chương này được thể hiện trên hình 3.4. Sử dụng hàm mục tiêu dưới đây như trong tài liệu [3], [8], [9]:
E 1 ( X d X )T P( X d X ) 1 uT u
, (3.33)
k 2 k k k k 2 k k
Trong đó Xkd và Xk lần lượt là các véc-tơ trạng thái mong muốn và trạng
c
thái thực tế; uk là véc-tơ lệnh điều khiển và uk là véc-tơ điều khiển thực tế tác động lên hệ thống; P là ma trận đối xứng dương phản ánh các trọng số của các biến của đối tượng được điều khiển; Λ là ma trận đối xứng dương của véc-tơ điều khiển.
Thuật toán Brandt-Lin
Ek
Tác động bên
ngoài
+
NNC
C
tác động
ơ cấu
Đối tượng
-
ek
z-m
Hình 3.4 Cấu trúc bộ điều khiển NNC. Véc-tơ tín hiệu vào gồm sai số ek và các tín hiệu trễ của ek. Hàm mục tiêu Ek được xử lý bằng thuật toán Brandt- Lin nhằm cập nhật các trọng số sao cho giá trị của Ek được cực tiểu [3].
Đặt n và ; Khởi tạo Ek = 0
k = k + 1
SAI
Tính giá trị hàm mục tiêu Ek+1
Tính trọng số và tín hiệu điều khiển cho chu trình thứ k
Chu trình mới
Khởi tạo trọng số mạng
ite = 1
Tính tín hiệu ra của nơ- Vòng lặp ron lớp ẩn và lớp ra mới
Hiệu chỉnh trọng số
(Thuật toán BP)
ite = ite + 1
Quá trình lặp cập nhật trọng số
ite n
ĐÚNG
Hình 3.5 Sơ đồ giải thuật phương pháp huấn luyện lan truyền ngược “tăng cường” với n và bước học cố định.
Quá trình huấn luyện mạng nơ-ron được thực hiện trong mỗi chu trình điều khiển chỉ thị bởi đối số k với n là số lần huấn luyện trong một chu trình. Thuật toán thích nghi (3.32) được áp dụng để điều chỉnh trọng số của các kết nối trong mạng nơ-ron sao cho hàm mục tiêu Ek đạt được cực tiểu. Thông số
đầu vào của bộ điều khiển nơ-ron bao gồm sai số
ek X d X k
và các tín hiệu
k
trễ của sai số. Nhiệm vụ của bộ điều khiển nơ-ron là tạo ra các tín hiệu điều khiển phù hợp trong chu trình điều khiển tiếp theo sau khi đã “học” được đặc tính của trạng thái mong muốn cũng như trạng thái thực tế của đối tượng được điều khiển thông qua sai số ek.
3.3 Thiết kế hệ thống điều khiển nơ-ron cho AUV
3.3.1 Điều khiển riêng biệt các chuyển động của AUV
Harley và Marco trong nghiên cứu [26] đã giả thiết rằng một mô hình động học đầy đủ các bậc tự do có thể được chia ra 3 hệ thống con độc lập, gọi là điều khiển tốc độ theo chiều dọc, điều khiển hướng và điều khiển độ sâu [25-29]. Các phương trình họ đưa ra đều thu được từ phương trình chính (3.2), trong đó các thành phần không liên quan của các hệ thống con khác đều được bỏ qua.
Điều khiển tốc độ theo chiều dọc: Hệ thống con này chủ yếu điều khiển tốc độ theo chiều dọc của AUV là giá trị u, có phương trình vi phân như sau [31]:
(m − Xu̇ )u̇ = Xu|u|u|u| + Xthruster (3.34)
Trong đó, Xthruster là lực tạo bởi chân vịt của AUV. Lực này có thể tính được từ giá trị vận tốc điều khiển uc:
Xthruster = -Xu|u|uC|uC| (3.35)
Điều khiển hướng: Là hệ thống con điều khiển hướng làm nhiệm vụ điều khiển chuyển động xoay trên mặt phẳng ngang của AUV với các giá trị v, r, ψ. Phương trình vi phân của hệ thống con này được thể hiện như (3.36) [30], [31]:
ref
m − Yv̇ mxG − Yṙ 0 v −Yv muref − Yr 0 u Yuuδru2
[mxG − Nv̇ Izz − Nṙ 0] [ ṙ ] + [−Nv mxG − Nr 0] [ v ] = [Nuuδru2 ] δr (3.36)
0 0 1 ψ
0 −1 0 ψ
ref
0
AUV.
Trong đó, uref là vận tốc mong muốn, δr là góc bẻ lái gắn trên thân
Điều khiển độ sâu: Là hệ thống con điều khiển chuyển động của AUV
theo chiều đứng với các giá trị w, , và z. Phương trình vi phân hệ thống con này được mô tả như sau (2.6):
𝑚 − 𝑍𝑤̇ 𝑚𝑥𝐺 − 𝑍𝑞̇ 0 0 𝑤
−𝑍𝑤 𝑚𝑢𝑟𝑒𝑓 − 𝑍𝑞 0 0 𝑤
𝑚𝑥
− 𝑀
𝐼 − 𝑀
0 0 𝑞
−𝑀
𝑚𝑥 𝑢
− 𝑀
𝑧 𝑊 0 𝑞
[ 𝐺
𝑤 𝑧𝑧 𝑞
] [ ] +𝑤
𝐺 𝑟𝑒𝑓
𝑞 𝐺
[ ] =
0 0 1 0 𝜃
0 0 0 1 𝑧
0 −1 0 0𝜃
[ −1 0 𝑢𝑟𝑒𝑓 0] 𝑧
𝑍𝑢𝑢𝛿𝑠 𝑢𝑟𝑒𝑓2
𝑠
𝑀𝑢𝑢𝛿𝑠𝑢𝑟𝑒𝑓2
(3.37)
0
[ 0 ]
Trong đó, δs là góc của cánh chỉnh độ sâu gắn ở phần đuôi AUV.
3.3.2 Thiết kế bộ điều khiển nơ-ron cho các hệ thống con
Trong phần này tác giả thiết kế 3 hệ thống điều khiển nơ-ron độc lập cho 3 hệ thống con nói trên. Các biến vào và ra của mỗi BĐK nơ-ron phụ thuộc vào phương trình vi phân mô tả ở (3.34), (3.36) và (3.37).
a. Hệ thống điều khiển hướng
Hình 3.6 Sơ đồ hệ thống điều khiển hướng AUV
Dựa theo tài liệu [3], ta có thể sử dụng hàm mục tiêu cho bộ điều khiển dưới dạng:
E 1 [(d
)2 2 r 2 ], (3.38)
1k 2 1 k k
1 Rk 1 k
trong đó, Rk và rk
lần lượt là góc bẻ lái và tốc độ đổi hướng phương tiện ngầm
tại thời điểm k , các hằng số
1 , 1 , và 1
tương ứng là hệ số tỷ lệ, hệ số phản
hồi góc bẻ lái và hệ số vi phân hướng đi.
Bộ điều khiển nơ-ron được chọn là một mạng nơ-ron nhiều lớp truyền thẳng có một lớp ẩn. Mạng gồm bốn nơ-ron lớp vào, sáu nơ-ron lớp ẩn và một
nơ-ron lớp ra tương tự như đã mô tả ở [3]. Trong đó,
wij
là ký hiệu hàm trọng
lượng của nơ-ron lớp ra,
wjp
là ký hiệu hàm trọng lượng nơ-ron lớp ẩn. Các
chỉ số p, i và j tương ứng là số lượng nơ-ron lớp vào, lớp ra và lớp ẩn. Các tín hiệu vào của bộ điều khiển chỉ gồm sai số hướng đi của phương tiện ngầm và
k
các giá trị trễ của sai số này. Ký hiệu d
là hướng đi mong muốn và k là
hướng đi thực tế của phương tiện ngầm, nhiệm vụ của bộ điều khiển là tính toán góc bẻ lái phù hợp để hàm mục tiêu (3.38) đạt cực tiểu bằng luật cập nhật trọng số sau:
w1jp O1p [1j sig(I1j ) 1 0] O1p1j sig(I1j ) , (3.39)
k
k
w1ij 1sig(I1j ) (1e1k 1Rk 1rk) 1O1j (1e1k 1Rk 1rk) . (3.40) Chỉ số 1 biểu thị BĐK nơ-ron thứ nhất dùng cho điều khiển hướng,
1k
trong đó e
d
, và
O1 j
sig(I1 j )
1
1 exp(I1 j )
, (3.41)
I1 j (w1 jp O1 p ) 1 j , (3.42)
p
1j w1ij w1ij . (3.43)
b. Hệ thống điều khiển độ sâu
Tương tự [9] ta chọn hàm mục tiêu cho BĐK độ sâu như sau:
E 1 [(z d z
)2 2
w2 2 ] , (3.44)
k
2k 2 2 k k
2 Sk
2 k 2 k
trong đó
2 , 2 , 2 , và
2 là hằng số;
z d ,
zk là độ sâu mong muốn và độ sâu
thực; Sk
là góc bẻ của bánh lái độ sâu; wk
là tốc độ theo phương đứng; và k
là góc chúi của phương tiện ngầm (được thêm vào nhằm hạn chế góc chúi trong quá trình thay đổi độ sâu).
Hình 3.7 Sơ đồ hệ thống điều khiển độ sâu AUV
Luật cập nhật trọng số trong trường hợp này, áp dụng phương pháp biến đổi trong [3], được tính như sau:
w2jp O2p [2j sig(I2j ) 2 0] O2p2j sig(I2j ) , (3.45)
w2ij 2sig(I2j ) (2e2k 2Sk 2wk2k) .
2 O2j (2e2k 2Sk 2 wk 2k).
(3.46)
𝑘
Chỉ số 2 biểu thị BĐK nơ-ron thứ hai dùng cho điều khiển độ sâu, trong đó 𝑒2𝑘 = 𝑧𝑑 − 𝑧𝑘.
c. Hệ thống điều khiển tốc độ
Hình 3.8 Sơ đồ hệ thống điều khiển tốc độ AUV
Để thực hiện nhiệm vụ điều khiển tốc độ, hàm mục tiêu của bộ điều khiển NNC được chỉnh với các thành phần như sau:
𝐸 1 𝑑 2 2 2 2
3𝑘 = 2 [𝜌3(𝑢𝑘 − 𝑢𝑘) + 𝜆3𝑛𝑘 + 𝜎3𝑢̇𝑘 + 𝜅3𝑍𝑘 ], (3.47)
trong đó
, , , và là các hằng số; u d , uk
là giá trị mong muốn và
3 3 3 3 k
giá trị thực tế của tốc độ phương tiện; 𝑛𝑘là tốc độ vòng quay của máy; uklà
thành phần vi phân của tốc độ phương tiện; 𝑍𝑘 là tích phân của sai số tốc độ.
Luật cập nhật trọng số trong trường hợp này, áp dụng phương pháp biến đổi trong [3], được tính như sau:
𝑤̇ 3𝑗𝑝 = 𝑂3𝑝[𝜑3𝑗𝑠𝑖𝑔(−𝐼3𝑗) + 𝛾3 ⋅ 0] = 𝑂3𝑝𝜑3𝑗𝑠𝑖𝑔(−𝐼3𝑗), (3.48)
𝑤̇ 3𝑖𝑗 = 𝛾3 ⋅ 𝑠𝑖𝑔(𝐼3𝑗) ⋅ (𝜌3𝑒3𝑘 + 𝜆3𝑛𝑘 + 𝜎3𝑢̇𝑘 + 𝜅3𝑍𝑘
= 𝛾3 ⋅ 𝑂3𝑗 ⋅ (𝜌3𝑒3𝑘 + 𝜆3𝑛𝑘 + 𝜎3𝑢̇𝑘 + 𝜅3𝑍𝑘). (3.49) Chỉ số 3 biểu thị BĐK nơ-ron thứ ba dùng cho điều khiển tốc độ, trong
đó e3k
ud u
, và
k
k
Zk(t) e3k (t)dt
(3.50)
3.3.3 Điều khiển tổng hợp các chuyển động của AUV bằng phương pháp tách rời (decoupled control)
Hình 3.9 Sơ đồ hệ thống dẫn đường và điều khiển AUV
Trong luận án này, ngoài việc điều khiển riêng từng chuyển động của AUV (hướng, độ sâu và tốc độ) tác giả nghiên cứu điều khiển cả 3 yếu tố này trong hoạt động của AUV một cách đồng thời. Sơ đồ hệ thống điều khiển AUV về hướng đi, độ sâu, tốc độ và điều khiển dẫn đường, thực hiện các nhiệm vụ làm việc dưới nước được thể hiện trên Hình 3.9.
3.4 Hệ thống điều khiển dẫn đường AUV và thực hiện các nhiệm vụ dưới nước
3.4.1 Điều khiển AUV theo quỹ đạo đặt trước
Điều khiển AUV theo quỹ đạo đặt trước thường sử dụng trong trường hợp AUV khảo sát đáy biển, tìm kiếm cứu nạn, dò tìm hư hỏng trên đường ống ngầm… Việc điều khiển này giả định tốc độ AUV không thay đổi, quỹ đạo theo mặt phẳng ngang được định trước bằng các điểm chuyển hướng tạo thành tuyến (route). Độ sâu có thể thay đổi theo lệnh hoặc cố định. Trong đề tài này, tác giả sử dụng luật dẫn đường LOS (Line-of-Sight) để điều khiển AUV theo tuyến.
Giả sử AUV có tọa độ
x, y
trong hệ trục tọa độ {n} di chuyển trong
mặt phẳng nằm ngang và bám theo quỹ đạo mong muốn là một đoạn thẳng
được tạo thành từ hai điểm chuyển hướng
pn x , y
Tvà pnx , y T
k k k
k1 k1 k1
như trong hình 3.10, vận tốc và hướng đi AUV sẽ được xác định như sau:
x t 2y t 2
U t
t a tan 2y t , xt ,
(3.51)
(3.52)
Để xác định sai số bám quỹ đạo của con tàu e(t), ta tiến hành chuyển
tọa độ
x, y
của con tàu trong hệ trục tọa độ {n} sang hệ trục tọa độ tham
chiếu với gốc đặt tại waypoint
pn x , y
Tvà hệ trục tọa độ tham chiếu này
k k k
quay quanh trục zn của hệ trục tọa độ {n} một góc k được xác định như sau:
ak a tan 2yk 1 yk , xk 1 xk
(3.53)
p k k
t R
a Tpnt pn
(3.54)