
1
THIẾ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: )()*( iii netVfbxVfO =+
=
(2.1)
trong đó bxVnetV ii +
=
*
Vi W i
b
Input Output
Input
Layer
Hidden
Layer
Output
Layer
x y
Hình 1 : Cấu trúc m
ạ
n
g
nơron

2
)1(
1
1
)( ii
i
netV
iOO
dnetV
df
e
netVf
i
−=⇒
+
=−
• 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
1i i
yy
dnetY
df
e
netYfOfy netY
i
−=⇒
+
=== −
=
∑
Trong đó ∑
=
=3
1i)*W(
i
i
OnetY
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 ][
~
ky . 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ừ W
i[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à
)()( ~
kyky −, giá trị gia tăng ][kWi
∆ được
xác định theo công thức cải biên của Widnow
như sau:
..
)(
][][][
][
~
iY
i
knetY
i
Os
O
netYd
df
kykyskW
δ
=
−=∆ (3.1)
Trong đó
][
~
)(
][][
knetY
YnetYd
df
kyky
−=
δ
là tín hiệu sai lệch của nơron đầu ra.
Tham số s gọi là bước học,
9.01.0 ÷=s
Có thể xác định Oi theo công thức 2.1.
Sau khi tính được ][kWi
∆
, ta xác định được
trọng số mới ]1[
+
kWi theo công thức sau:
][][]1[ kWkWkW iii ∆+
=
+
(3.2)
• Sau khi đã có ]1[W +k
i ta xác định giá trị gia
tăng ][kVi
∆
theo công thức cải biên của
Widnow như sau:
xskV Vii ..][
δ
=
=
∆
(3.3)
]1[W
)( i
3
1
][
+= ∑
=
k
netVd
df
i
V
knetV
i
Vi
i
δδ
Sau khi tính được ][kVi
∆, ta xác định được
trọng số mới ]1[ +kVi theo công thức sau:
][][]1[ kVkVkV iii ∆
+
=
+
(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
1kykyE (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
ii
e
netVfO
−
+
=
=
1
1
)(
∑
=
=3
1i)*(W
i
i
OnetY
i = i + 1
i = 1
i > 3
Yes
N
o
netY
e
netYfky
−
+
=
=
1
1
)(][
~
Hình 2: Lưu đồ tính tín hiệu ra y của mạng nơron

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:
01
2
M)(W
asas
K
sM
++
= (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à:
uKyayay MMMM =
+
+
01 (4.2)
Star
t
k = 1
x[k]
Create NN
~
y[k]
y[k]
2
~][][*
2
1
−= kykyE
E < ε
Thuật toán lan truyền ngược BP
hiệu chỉnh các trọng số
][][]1[ kWkWkW iii ∆+=
+
][][]1[ kVkVkV iii ∆+=
+
k = k + 1
Sto
p
Yes
I
II
N
o
Hình 3: Lưu đồ giải thuật huấn luyện mạng nơron
][][]1[
**][
)(
*])[][(
][
~
kWkWkW
OskW
netYd
df
kyky
iii
iyi
knetY
y
∆+=+
=∆
−=
δ
δ
i = 1
][][]1[
**][
]1[*
)(
3
1
][
kVkVkV
xskV
kW
netVid
df
iii
Vii
j
jy
knetVi
Vi
∆+=+
=∆
+= ∑
=
δ
δδ
i = i + 1
i > 3
I
II
N
o
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]

4
Mạ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 min
2→
p
E.
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
Star
t
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
NNpp UUE −=
Ep < ε
Sto
p
N
o
Yes
UNN Up
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

5
Sẽ huấn luyện điều chỉnh (W,b) của mạng Nơron
sao cho min
2→
M
E. 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
)( 2++
=ss
sWP (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
Star
t
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
pNNp UUE −=
Ep < ε
Sto
p
N
o
Yes
U
NN
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ơ đồ
g
hé
p
nối 2 thiết b
ị
ĐKTM với MPĐT
Hình 11: Màn hình
g
iao di
ệ
n thiết b
ị
MPĐT