84-4-8363484, Fax: 84-4-8363485, E-mail: ptcat@ioit.ncst.ac.vn Tóm tắt : Bài báo này trình bày kết quả nghiên cúu thiết kế bộ điều khiển bằng mạng nơron truyền thẳng được huấn luyện bằ
Trang 1THIẾT KẾ BỘ ĐIỀU KHIỂN BẰNG MẠNG NƠRON TRUYỀN THẲNG
THEO MÔ HÌNH MẪU LÀ MỘT KHÂU DAO ĐỘNG BẬC 2
KS Phạm Ngọc Minh, PGS-TSKH Phạm Thượng Cát
Phòng Công Nghệ Tự Động Hóa - Viện Công Nghệ Thông Tin
Viện Khoa Học và Công Nghệ Việt Nam Tel 84-4-8363484, Fax: 84-4-8363485, E-mail: ptcat@ioit.ncst.ac.vn
Tóm tắt : Bài báo này trình bày kết quả nghiên cúu thiết kế bộ điều khiển bằng mạng nơron truyền
thẳng được huấn luyện bằng giải thuật học lan truyền ngược lỗi BP và được cài đặt trên thiết bị điều
khiển thông minh ĐKTM, một sản phẩm công nghệ cao của phòng Công nghệ Tự động hoá - Viện
Công nghệ Thông tin
DESIGN AND IMPLEMENTATION OF A NEURO CONTROLLER USING
SECOND ORDER REFERENCE MODEL
Dipl.Eng Pham Ngoc Minh, Prof.DSC Pham Thuong Cat
Department for Automation Technology, Institute of Infomation Technology
Viet Nam Academy of Science and Technology Tel 84-4-8363484, Fax: 84-4-8363485, E-mail: ptcat@ioit.ncst.ac.vn
Abstract: This paper presents research results in design and implementation of a neural controller
using Error Back-Propagation Algorithm This controller has been installed in an intelligent control
ĐKTM device, a high-tech product of Department for Automation Technology - Institute of Information Technology
1 ĐẶT VẤN ĐỀ
Ngày nay, trí tuệ nhân tạo đang phát triển mạnh mẽ
nhằm tạo ra cơ sở xây dựng các hệ chuyên gia, hệ
trợ giúp quyết định Trí tuệ nhân tạo được xây dựng
trên cơ sở mạng nơron nhân tạo và ứng dụng trong
thiết kế hệ thống điều khiển thông minh mà trong
đó bộ điều khiển có khả năng tư duy như bộ não
của con người đang là xu hướng mới trong điều
khiển tự động
Mạng nơron là sự tái tạo bằng kỹ thuật những chức
năng của hệ thần kinh con người với vô số các
nơron được liên kết truyền thông với nhau trong
mạng Trong bài báo này, chúng tôi sẽ trình bày kết
quả ứng dụng mạng nơron trong chế tạo thiết bị
điều khiển thông minh
2 MÔ HÌNH MẠNG NƠRON LAN TRUYỀN
THẲNG NHIỀU LỚP
Trong báo cáo này, chúng tôi sử dụng mô hình
mạng nơron lan truyền thẳng nhiều lớp áp dụng cho
hệ thống SISO (single-input single-output) Mạng
nơron nhiều lớp lan truyền thẳng được mô tả như
hình 1 với 3 lớp – Input Layer (lớp vào), Hidden
Layer (lớp ẩn), Output Layer (lớp ra)
Trong đó:
• Các nơron trong mạng là nơron Fermi
• Input Layer gồm 1 nơron có trọng số bằng 1
Tín hiệu vào x được đưa tới nơron của Input Layer, khi đó tín hiệu ra của nơron là x
• Vector trọng số giữa Input Layer và Hidden Layer là Vi Tín hiệu ra của các nơron Input Layer được đưa vào các nơron của Hidden Layer, khi đó tín hiệu ra được tính theo công thức: O i = f(Vi*x+b)= f(netV i) (2.1) trong đó netV i =V i*x+b
b
Input Layer Hidden Layer
Output Layer
Hình 1 : Cấu trúc mạng nơron
Trang 2) 1 ( 1
1 )
i netV
dnetV
df e
netV
f
+
• Vector trọng số giữa Hidden Layer và Output
Layer là Wi Tín hiệu ra của các nơron Hidden
Layer được đưa vào nơron của Output Layer,
khi đó tín hiệu ra y được tính theo công thức:
(2.2) ) 1 (
1
1 ) ( )
* W
(
(3
1
y y dnetY
df
e netY f O f
−
=
⇒
+
=
=
=
∑
=
= 3
)
* W (
O
Sơ đồ giải thuật tính tín hiệu ra y được mô tả như
hình 2
3 HUẤN LUYỆN MẠNG NƠRON VỚI GIẢI
THUẬT HỌC LAN TRUYỀN NGƯỢC LỖI
BP
Trước khi sử dụng mạng Nơron, ta cần phải dạy
học cho mạng với nhiệm vụ xác định các trọng số
Vi , Wi Giải thuật học lan truyền ngược BP được
dùng để dạy mạng nhiều lớp Ta có tập các mẫu học
{x[k] , y[k] } Từ tập mẫu học x[k] và các trọng số
Vi[k] , Wi[k] của mạng, ta xác định được đầu ra
thực ~y [ k ] Trên cơ sơ so sánh với mẫu học y[k], các trọng số Wi[k] được hiệu chỉnh thành Wi[k+1] Tiếp tục từ Wi[k+1] sẽ hiệu chỉnh các trọng số
Vi[k]
• Với sai lệch cho mẫu học thứ k là
) ( ) ( k y~ k
y − , giá trị gia tăng ∆ Wi[k ] được xác định theo công thức cải biên của Widnow như sau:
) ( ] [ ] [ ] [
] [
~
i Y
i k netY i
O s
O netY
d
df k y k y s k W
δ
=
−
=
∆
(3.1)
Trong đó
] [
~
) ( ] [ ] [
k netY
df k y k
−
=
δ
là tín hiệu sai lệch của nơron đầu ra
Tham số s gọi là bước học,
s=0.1÷0.9
Có thể xác định Oi theo công thức 2.1
Sau khi tính được ∆W i [k], ta xác định được trọng số mới W i[k+1] theo công thức sau:
W i[k+1]=W i[k]+∆W i[k] (3.2)
• Sau khi đã có Wi[ k + 1 ] ta xác định giá trị gia tăng ∆ Vi[k ] theo công thức cải biên của Widnow như sau:
∆V i[k]==s.δVi.x (3.3)
)
3 1 ] [
+
netV d
df
i V k netV i Vi
i
δ δ
Sau khi tính được ∆V i [k], ta xác định được trọng số mới V i[k+1] theo công thức sau:
V i[k+1]=V i[k]+∆V i[k] (3.4) Thuật toán hiệu chỉnh các trọng số sẽ dừng đến khi sai lệch E < ε cho trước:
−
2
~ ) ( ) ( 2
1
k y k y
E (3.5)
Sơ đồ giải thuật huấn luyện mạng được mô tả trong hình 3,4
x[k]
NetVi = Vi*x[k]+ b
i
netV
i i
e
netV f O
− +
=
= 1
1
) (
∑
=
= 3
)
* (W
O netY
i = i + 1
i = 1
i > 3 Yes
No
netY e
netY f k y
− +
=
= 1
1
) ( ] [
~
Hình 2: Lưu đồ tính tín hiệu ra y của mạng nơron
Trang 3
4 XÂY DỰNG BỘ ĐIỀU KHIỂN DÙNG MẠNG NƠRON THEO MÔ HÌNH MẪU LÀ MỘT KHÂU DAO ĐỘNG BẬC 2
Bài toán đặt ra cần phải thiết kế bộ điều khiển bằng mạng nơron để tín hiệu ra của đối tượng điều khiển bám lấy tín hiệu ra của mô hình mẫu khi đối tượng
có tham số không biết trước hoặc bị thay đổi trong quá trình hoạt động Xét mô hình mẫu là khâu dao động bậc 2:
0 1 2
M( ) W
a s a s
K
+ +
= (4.1) với thông số KM , a1 và a2 được chọn phù hợp với các chỉ tiêu chất lượng mong muốn, a1 , a0 có thể ước lượng được Phương trình vi phân tương ứng là:
u K y a y a
y M + 1 M + 0 M = M (4.2)
Start
k = 1
x[k]
Create NN
~
y [k]
y[k]
2
~
] [ ] [
* 2
1
−
E
E < ε
Thuật toán lan truyền ngược BP
hiệu chỉnh các trọng số
] [ ] [ ] 1
W i + = i +∆ i
] [ ] [ ] 1
V i + = i +∆ i
k = k + 1
Stop Yes
I
II
No
Hình 3: Lưu đồ giải thuật huấn luyện mạng nơron
] [ ] [ ] 1 [
*
* ] [
) (
* ]) [ ] [ (
] [
~
k W k W k
W
O s
k W
netY d
df k y k y
i i
i
i y i
k netY y
∆ +
= +
=
∆
−
=
δ δ
i = 1
] [ ] [ ] 1 [
*
* ] [
] 1 [
* )
(
3 1 ] [
k V k V k V
x s
k V
k W netVi
d df
i i
i
Vi i
j y j k
netVi Vi
∆ +
= +
=
∆
+
=
δ
δ δ
i = i + 1
i > 3
I
II
No
Yes
Hình 4: Thuật toán lan truyền ngược BP hiệu chỉnh các trọng số Wi[k+1], Vi[k+1]
Trang 4Mạng nơron trong cấu trúc điều khiển theo vòng
kín đóng vai trò bộ điều khiển
Trong đó:
- SP : giá trị đặt Setpoint
- Yp : tín hiệu ra của đối tượng điều khiển
- Ep : sai lệch tín hiệu ra của đối tượng điều
khiển với tín hiệu ra mẫu Ep = YM – Yp
- Up : tín hiệu điều khiển
Các bước thiết kế bộ điều khiển dùng mạng Nơron
Bước 1: Huấn luyện mạng NN Inverse Model
ĐTĐK để nhận dạng động học nghịch mô hình đối
tượng điều khiển thực
Up - tín hiệu thử là một hàm f(t) tạo ra nhiều giá trị
mẫu đầu vào để huấn luyện điều chỉnh (W,b) của
mạng Nơron sao cho E2p →min
Sai số Ep = Up - UNN được sử dụng để huấn luyện
mạng, thông tin về sai số được lan truyền ngược
qua mạng nơron để hiệu chỉnh lại (W,b) theo giải
thuật học lan truyền ngược lỗi BP
Bước 2: Sau khi đã có bộ NN Inverse Model ĐTĐK , ta lắp bộ đó vào hệ thống để xác định bộ
NN Controller sao cho hệ thống giống mô hình mẫu
là một khâu dao động bậc 2
Mô hình mẫu
WM(s)
+
- YP
YM
EP
ĐTĐK
UP
SP
NN Controller
(điều chỉnh W,b)
Hình 5: Sơ đồ cấu trúc điều khiển mạch kín theo
mô hình mẫu WM (s)
ĐTĐK
Ep
+
-Yp
UNN
Up
NN Inverse Model ĐTĐK
Hình 6 : Sơ đồ huấn luyện mạng nơron nhận dạng
động học nghịch mô hình đối tượng điều khiển
Start
Up = f(t)
Chuyển đổi D/A Analog Output
ĐTĐK
Analog Input Chuyển đổi A/D
Nhận dạng mô hình ĐTĐK bằng mạng nơron theo thuật toán lan truyền ngược BP
[ ]2
* 2
1
NN p
Ep < ε
Stop
No
Yes
Hình 7: Lưu đồ thuật toán nhận dạng động học nghịch mô hình đối tượng điều khiển
NN Inverse Model ĐTĐK
Mô hình mẫu
WM(s)
+
-UNN
UP
EM
YM
X NN Controller
(điều chỉnh W,b)
Hình 8: Sơ đồ huấn luyện mạng nơron điều khiển theo mô hình mẫu
Trang 5Sẽ huấn luyện điều chỉnh (W,b) của mạng Nơron
sao cho E M2 →min Tính tín hiệu ra YM của mô
hình mẫu WM(s) bằng phương pháp số Runge-Kuta
tại các thời điểm t , từ giá trị YM ta cho lan truyền
ngược qua NN Model ĐTĐK được giá trị UNN ,
sai số EM = UNN – UP được sử dụng để luyện mạng
Thông tin về sai số được lan truyền ngược qua
mạng NN Model ĐTĐK mô phỏng động học
nghịch của đối tượng điểu khiển và mạng NN
Controller để hiệu chỉnh lại (W,b) của mạng
Thuật toán điều khiển dùng mạng nơron trên đã
được lập trình và cài đặt vào thiết bị điều khiển
thông minh ĐKTM của phòng Công nghệ Tự động
hoá - Viện Công nghệ Thông tin
5 MỘT SỐ KẾT QUẢ THỰC NGHIỆM KHI SỬ DỤNG BỘ ĐIỀU KHIỂN BẰNG MẠNG NƠRON TRÊN THIẾT BỊ ĐKTM
Chúng tôi đã sử dụng thuật điều khiển bằng mạng nơron trên thiết bị ĐKTM với đối tượng là khâu dao động được mô phỏng trên thiết bị mô phỏng MPĐT
Tín hiệu ra AO1 của thiết bị điều khiển thông minh
là tín hiệu điều khiển và cũng là tín hiệu vào của đối tượng, tín hiệu ra của đối tượng AO1 chính là tín hiệu vào của thiết bị điều khiển thông minh
Khi thiết bị điều khiển thông minh ở trạng thái Prog, đặt SP =1500, ac1=1, ac0=1,
Đối tượng điều khiển được chọn trên thiết bị mô phỏng MPĐT là khâu dao động (chọn trong hệ tuyến tính) có hàm truyền đạt:
1
5 0 )
+ +
=
s s s
W P (5.1) Đặt thiết bị điều khiển ở trạng thái RUN, cho phép điều khiển đối tượng ta thu được kết đáp ứng thời gian của đối tượng trên thiết bị mô phỏng MPĐT
Khi chạy ở mode RUN, chương trình sẽ tự động học đối tượng để chỉnh các trọng số của mạng nơron, sau 30s tín hiệu ra của đối tượng bám được tín hiệu ra của mô hình mẫu, sai số ε ->0
Start
Setpoint
Hiệu chỉnh các
trọng số Vi , Wi của
NN Contronller
theo thuật toán lan
truyền ngược BP
[ ]2
* 2
1
p NN
Ep < ε
Stop
No
Yes
UNN
Up
Tính đầu ra YM
của mô hình mẫu WM (s)
Tính UNN qua
mô hình
NN Inverse Model ĐTĐK
Hình 9: Lưu đồ thuật toán huấn luyện mạng
nơron điều khiển theo mô hình mẫu
AO1
AI1
(AI1)
MPDT
(AO1)
MPDT
Hình 10 : Sơ đồ ghép nối 2 thiết bị ĐKTM với MPĐT
Hình 11: Màn hình giao diện thiết bị MPĐT
Trang 6Nếu thay đổi hệ số K của khâu dao động trên thiết
bị mô phỏng MPĐT như K=0.75,K=1, K =2 ta vẫn
thu được kết quả tương tự
Quá trình huấn luyện mạng NN Controller trong
khoảng 22s , sau đó bắt đầu quá trình điều khiển
đối tượng
6 KẾT LUẬN
Phòng Công nghệ Tự động hoá - Viện Công nghệ
Thông tin đã nghiên cứu thiết kế bộ điều khiển trên
cơ sở mạng nơron nhân tạo cài đặt trong thiết bị
ĐKTM với mong muốn tạo ra một thiết bị điều
khiển thông minh có khả năng thích nghi với một
số ứng dụng thực tế như hệ thống điều khiển lò
nhiệt, điều khiển mức nước, điều khiển độ PH
…v.v
Kết quả nghiên cứu này chỉ là bước đầu tiếp cận
với lĩnh vực ứng dụng trí tuệ nhân tạo trong điều
khiển tự động Trong thời gian tới, chúng tôi sẽ
nghiên cứu để nâng cao khả năng thông minh cho
thiết bị ĐKTM với một số mô hình mạng nơron và
giải thuật học khác
TÀI LIỆU THAM KHẢO [1] CHIN-TENG LIN and C.S GEORGE LEE
Neural Fuzzy Systems A Neuro-Fuzzy Synergism to Intelligent Systems, Prentice Hall International, Inc, 1996 [2] SIMON HAYKIN,
Neural Networks a Comprehensive Foundation
Prentice Hall International, Inc, 1999 [3] BÙI CÔNG CƯỜNG,
NGUYỄN DOÃN PHƯỚC
Hệ mờ mạng nơron và ứng dụng,
Nhà xuất bản khoa học và kỹ thuật, 2002 [4] PHAN XUÂN MINH,
NGUYỄN DOÃN PHƯỚC
Lý thuyết điều khiển mờ,
Nhà xuất bản khoa học và kỹ thuật, 2002 [5] PHAN MINH TÂN,
TRẦN VIỆT PHONG, BÙI THANH QUYÊN, PHẠM THƯỢNG CÁT
Báo cáo “Nghiên cứu phát triển thiết bị MPĐT mô phỏng thời gian thực các đối tượng điều khiển”
Tuyển tập Hội nghị khoa học toàn quốc VICA5, Vol.1, pp 259-264 Hà nộI 2002
Hình 12: Đồ thị quá trình điều khiển đối tượng
trên thiết bị MPĐT với bộ điều khiển
mạng nơron cài đặt trên thiết bị ĐKTM
Quá trình huấn luyện
NN Controller Quá trình điều khiển đối tượng