ĐIỀU KHIỂN QUÁ TRÌNH MIMO SỬ DỤNG MẠNG NƠ RON THÍCH<br />
NGHI VỚI THUẬT TOÁN MFA LÀM MÔ HÌNH THAM CHIẾU<br />
NGUYỄN QUỐC ĐỊNH<br />
Trường Đại học Bách Khoa - Đại học Đà Nẵng<br />
Tóm tắt: Bài báo này trình bày kết quả nghiên cứu việc sử dụng hệ nơron<br />
thích nghi để thiết kế bộ điều khiển mức chất lỏng cho hệ bồn nước đôi. Nội<br />
dung bài báo giới thiệu mô hình toán học MIMO (2 ngõ vào - 2 ngõ ra) của<br />
đối tượng điều khiển, từ đó, giới thiệu về thuật toán MFA để điều khiển quá<br />
trình cho hệ đơn ngõ vào – đơn ngõ ra (SISO) cũng như hệ nhiều ngõ vào –<br />
nhiều ngõ ra (MIMO). Trong đó, luật cập nhật trọng số cho mạng nơron<br />
thích nghi cũng như cấu trúc chi tiết của bộ điều khiển MIMO được xây<br />
dựng từ các bộ điều khiển SISO riêng rẽ cũng được đề cập tới. Hoạt động<br />
của bộ điều khiển được kiểm chứng bằng mô phỏng trên phần mềm MatlabSimulink. Kết quả mô phỏng cho thấy bộ điều khiển đã làm việc rất tốt. Nội<br />
dung bài báo này sẽ là tiền đề cho việc thiết kế bộ điều khiển lai kết hợp giữa<br />
hệ suy luận mờ và mạng nơron thích nghi để điều khiển cho các quá trình<br />
phi tuyến MIMO trong tương lai.<br />
<br />
1. MÔ HÌNH ĐỐI TƯỢNG HỆ BỒN NƯỚC ĐÔI<br />
Mô hình đối tượng hệ bồn nước đôi được mô tả như hình 1.1. Hệ bồn nước đôi làm đối<br />
tượng điều khiển là một hệ phi tuyến với 2 ngõ vào là tín hiệu điện áp điều khiển động<br />
cơ bơm nước u1(t), u2(t) và 2 ngõ ra là mức nước h1(t) và h2(t).<br />
<br />
Hình 1.1. Mô hình hệ bồn nước đôi<br />
<br />
Với qin1, qin2 lần lượt là lưu lượng nước máy bơm 1 và bơm 2 bơm vào bồn 1, bồn 2.<br />
qout1, qout2 lần lượt là lưu lượng nước chảy ra ngoài bồn 1, bồn 2.<br />
qout1_2, qout2_1 lần lượt là lưu lượng nước từ bồn 1 qua bồn 2 hoặc ngược lại.<br />
Theo tài liệu tham khảo [1], mô hình toán đối tượng được viết như sau:<br />
Tạp chí Khoa học và Giáo dục, Trường Đại học Sư phạm Huế<br />
ISSN 1859-1612, Số 02(18)/2011: tr. 20-27<br />
<br />
ĐIỆU KHIỂN QUÁ TRÌNH MIMO SỬ DỤNG MẠNG NƠ RON THÍCH NGHI...<br />
<br />
⎧ •<br />
1<br />
⎪h1 (t ) = A<br />
⎪<br />
1<br />
⎨ •<br />
⎪h (t ) = 1<br />
⎪⎩ 2<br />
A2<br />
<br />
(<br />
<br />
k1u1 (t ) − a1C D1 2 gh1 (t ) − C D12 sgn( h1 (t ) − h2 (t )) a12 2 g h1 (t ) − h2 (t )<br />
<br />
(<br />
<br />
21<br />
<br />
)<br />
<br />
k 2u 2 (t ) − a2C D 2 2 gh2 (t ) + C D12 sgn( h1 (t ) − h2 (t )) a12 2 g h1 (t ) − h2 (t )<br />
<br />
(1)<br />
<br />
)<br />
<br />
(2)<br />
<br />
2. MẠNG NƠ RON THÍCH NGHI SISO<br />
Bộ điều khiển được thiết kế theo tài liệu [4] đã nghiên cứu việc sử dụng thuật toán học<br />
<br />
Hình 2.1. Mạng nơ ron thích nghi SISO<br />
<br />
MFA (Model-Free Adaptive Control with CyboCon) với mạng nơ ron thích nghi.<br />
Theo [4], giải thuật điều khiển cho bộ điều khiển SISO được cho bởi:<br />
N<br />
<br />
p j (n) = ∑ wij (n)Ei (n) + 1<br />
<br />
(2.1)<br />
<br />
q j (n) = ϕ ( p j (n))<br />
<br />
(2.2)<br />
<br />
⎡ ⎛ N<br />
⎞ ⎤ N<br />
o(n) = ψ ⎢ϕ ⎜ ∑ hj (n)q j (n) + 1⎟ ⎥ = ∑ hj (n)q j (n) + 1<br />
⎢⎣ ⎝ j =1<br />
⎠ ⎥⎦ j =1<br />
<br />
(2.3)<br />
<br />
v(t) = Kc ⎡⎣o(t) + e(t)⎤⎦<br />
<br />
(2.4)<br />
<br />
i =1<br />
<br />
22<br />
<br />
NGUYỄN QUỐC ĐỊNH<br />
<br />
Mạng nơ ron thích nghi này với 3 lớp nơ ron có trọng số giữa lớp đầu và lớp ẩn là wij,<br />
trọng số giữa lớp ẩn với lớp ra là hi. Hai vectơ trọng số này được cập nhật theo luật cập<br />
nhật sau:<br />
<br />
Δwij (n) = η Kc<br />
Δhj (n) = η Kc<br />
<br />
N<br />
∂y(n)<br />
e(n)q j (n)(1 − q j (n))Ei (n)∑ hk (n)<br />
∂u(n)<br />
k =1<br />
<br />
∂y(n)<br />
e(n)q j (n)<br />
∂u(n)<br />
<br />
(2.5)<br />
<br />
(2.6)<br />
<br />
Mạng nơ ron thích nghi dùng giải thuật điều khiển MFA ở trên có 1 ngõ vào, 1 ngõ ra<br />
(SISO) cho nên việc điều khiển cho đối tượng phi tuyến MIMO là hệ bồn nước đôi thì<br />
không thể được.<br />
3. MẠNG NƠ RON THÍCH NGHI MIMO<br />
Trường hợp điều khiển đối tượng nhiều ngõ vào, nhiều ngõ ra (MIMO) như sau:<br />
<br />
Hình 3.1. Mô hình điều khiển MIMO<br />
<br />
Cụ thể sơ đồ điều khiển cho 2 ngõ vào và 2 ngõ ra dùng để điều khiển mức nước trong<br />
bình nước đôi như sau:<br />
<br />
Hình 3.2. Bộ điều khiển 2 ngõ vào, 2 ngõ ra với thuật toán MFA<br />
<br />
ĐIỆU KHIỂN QUÁ TRÌNH MIMO SỬ DỤNG MẠNG NƠ RON THÍCH NGHI...<br />
<br />
23<br />
<br />
Trong đó, khối Controller bao gồm 4 bộ điều khiển SISO được ghép nối như trên, mỗi<br />
bộ điều khiển là 1 mạng nơ ron như sau:<br />
<br />
Hình 3.3. Mạng nơ ron thích nghi cho cấu trúc MIMO<br />
<br />
Lúc này, mỗi bộ điều khiển C có giải thuật điều khiển như sau:<br />
- Bộ điều khiển C11<br />
<br />
p11<br />
j (n) =<br />
<br />
N<br />
<br />
w11(n)Ei11(n) + 1<br />
∑<br />
ij<br />
i =1<br />
<br />
(3.1)<br />
<br />
q11 (n) = ϕ ( p11(n))<br />
j<br />
<br />
(3.2)<br />
<br />
j<br />
<br />
v11 (n) =<br />
<br />
⎡<br />
K 11 ⎢<br />
c<br />
<br />
N<br />
<br />
⎤<br />
<br />
∑ h11j (n)q11j (n) + 1 + e1(n)⎥<br />
<br />
⎣ j =1<br />
<br />
(3.3)<br />
<br />
⎦<br />
N<br />
<br />
Δw11 (n) = η 11K11e1 (n)q11(n)(1 − q11(n))Ei11(n)∑ h11(n)<br />
<br />
(3.4)<br />
<br />
Δh11 (n) = η11K11e1(n)q11 (n)<br />
<br />
(3.5)<br />
<br />
c<br />
<br />
ij<br />
<br />
j<br />
<br />
c<br />
<br />
- Bộ điều khiển C22<br />
<br />
j<br />
<br />
j<br />
<br />
j<br />
<br />
k =1<br />
<br />
k<br />
<br />
24<br />
<br />
NGUYỄN QUỐC ĐỊNH<br />
<br />
N<br />
<br />
22<br />
22<br />
p22<br />
j (n) = ∑ w (n)Ei (n) + 1<br />
<br />
(3.6)<br />
<br />
q22 (n) = ϕ ( p22 (n))<br />
<br />
(3.6)<br />
<br />
⎡ N<br />
⎤<br />
v22 (n) = K 22 ⎢∑ h22 (n)q22 (n) + 1 + e2 (n)⎥<br />
c<br />
j<br />
⎣ j =1 j<br />
⎦<br />
<br />
(3.8)<br />
<br />
ij<br />
<br />
i =1<br />
<br />
j<br />
<br />
j<br />
<br />
22<br />
<br />
Δw (n) = η<br />
<br />
22<br />
<br />
ij<br />
<br />
K 22e2 (n)q22 (n)(1 − q22 (n))Ei22 (n)<br />
c<br />
j<br />
j<br />
<br />
N<br />
<br />
∑ hk22 (n)<br />
<br />
Δh22 (n) = η 22 K 22e2 (n)q22 (n)<br />
c<br />
<br />
j<br />
<br />
(3.9)<br />
<br />
k =1<br />
<br />
(3.10)<br />
<br />
j<br />
<br />
- Bộ điều khiển C21<br />
N<br />
<br />
21<br />
21<br />
p21<br />
j (n) = ∑ w (n)Ei (n) + 1<br />
<br />
(3.11)<br />
<br />
q21(n) = ϕ ( p21(n))<br />
<br />
(3.12)<br />
<br />
⎡ N<br />
⎤<br />
v21 (n) = K 21K 21 ⎢∑ h21 (n)q21 (n) + 1⎥<br />
s<br />
c<br />
j<br />
⎣ j =1 j<br />
⎦<br />
<br />
(3.13)<br />
<br />
ij<br />
<br />
i =1<br />
<br />
j<br />
<br />
j<br />
<br />
21<br />
<br />
Δw (n) = η<br />
<br />
21<br />
<br />
ij<br />
<br />
K 21e1(n)q21(n)(1 − q21(n))Ei21(n)<br />
c<br />
j<br />
j<br />
<br />
N<br />
<br />
∑ hk21(n)<br />
<br />
Δh21 (n) = η 21K 21e1(n)q21(n)<br />
c<br />
<br />
j<br />
<br />
(3.14)<br />
<br />
k =1<br />
<br />
(3.15)<br />
<br />
j<br />
<br />
- Bộ điều khiển C12<br />
N<br />
<br />
12<br />
12<br />
p12<br />
j (n) = ∑ w (n)Ei (n) + 1<br />
<br />
(3.16)<br />
<br />
q12 (n) = ϕ ( p12 (n))<br />
<br />
(3.17)<br />
<br />
⎡ N<br />
⎤<br />
v12 (n) = K 12 K 12 ⎢∑ h12 (n)q12 (n) + 1⎥<br />
s<br />
c<br />
j<br />
⎣ j =1 j<br />
⎦<br />
<br />
(3.18)<br />
<br />
ij<br />
<br />
i =1<br />
<br />
j<br />
<br />
j<br />
<br />
N<br />
<br />
Δw12 (n) = η 12 K12e2 (n)q12 (n)(1 − q12 (n))Ei12 (n)∑ h12 (n)<br />
ij<br />
<br />
c<br />
<br />
j<br />
<br />
j<br />
<br />
k =1<br />
<br />
k<br />
<br />
(3.19)<br />
<br />