Tài liệu tham khảo bài giảng mô hình hóa, Nhận dạng và mô phỏng bộ môn điều khiển tự động Khoa điện - điện tử -
Trang 1Chương 6: Thực nghiệm nhận dạng hệ thống
Huỳnh Thái Hồng – Bộ mơn Điều khiển Tự động
1
Chương 6
THỰC NGHIỆM NHẬN DẠNG HỆ THỐNG
Chương 6: Thực nghiệm nhận dạng hệ thống
6.1 Giới thiệu
6.2 Thí nghiệm thu thập dữ liệu
6.3 Tiền xử lý dữ liệu
6.4 Chọn cấu trúc mô hình
6.5 Chọn tiêu chuẩn ước lượng
6.6 Đánh giá chất lượng mô hình
Tham khảo:
[1] L Ljung (1999), System Identification – Theory for the user
chương 12-16
6.1 GIỚI THIỆU
Hình 6.1: Vòng lặp nhận dạng hệ thống
Thí nghiệm thu thập dữ liệu
Tốt ⇒ chấp nhận mô hình
Không tốt ⇒ lặp lại Không tốt ⇒ xét lại
thông tin biết trước
Xử lý sơ bộ dữ liệu
Chọn cấu trúc mô hình
Chọn tiêu chuẩn ước lượng Ước lượng thông số
Đánh giá mô hình
Trang 2Chương 6: Thực nghiệm nhận dạng hệ thống
Huỳnh Thái Hồng – Bộ mơn Điều khiển Tự động
2
6.2 THÍ NGHIỆM THU THẬP DỮ LIỆU
6.2.1 Các vấn đề liên quan đến thí nghiệm thu thập số liệu
1 Xác định ngõ vào, ngõ ra của hệ thống cần nhận dạng ⇒ xác định tín
hiệu “kích thích“ để thực hiện thí nghiệm thu thập số liệu và vị trí đặt cảm
biến để đo tín hiệu ra
2 Chọn tín hiệu vào Dạng tín hiệu vào ảnh hưởng rất lớn đến dữ liệu
quan sát Tín hiệu vào quyết định điểm làm việc của hệ thống, bộ phận nào
và chế độ làm việc nào của hệ thống được kích thích trong thí nghiệm
3 Xác định chu kỳ lấy mẫu
4 Xác định số mẫu dữ liệu cần thu thập
6.2.2 Chọn tín hiệu vào cho thí nghiệm nhận dạng hệ thống hở
1 Tín hiệu vào phải được chọn sao cho tập dữ liệu thu thập được phải đủ
giàu thông tin
• Tập dữ liệu Z∞ đủ giàu thông tin nếu ma trận phổ φz(ω) của tín hiệu
t y t
u
t
z( )= ( ) ( ) xác định dương với hầu hết mọi tần số ω
=
) ( ) (
) ( )
( )
(
ω φ ω φ
ω φ ω φ ω
φ
y yu
uy u
∑∞
−∞
=
−
=
τ
ωτ
τ ω
u
∑
=
∞
t N
N
R
1
) ( ) (
1 lim )
∑∞
−∞
=
−
=
τ
ωτ
τ ω
uy
∑
=
∞
t N
N
R
1
) ( ) (
1 lim )
• Đối với trường hợp nhận dạng hệ thống hở, tập dữ liệu thực nghiệm đủ
giàu thông tin khi tín hiệu vào u (t) là tín hiệu gần dừng có phổ φu(ω)>0 tại
hầu hết các tần số ω (“hầu hết” nghĩa là phổ có thể bằng 0 trong một miền
tần số đo được) Tín hiệu u (t) thỏa mãn điều kiện trên được gọi là tín hiệu
kích thích vững (persistently exciting)
Trang 3Chương 6: Thực nghiệm nhận dạng hệ thống
Huỳnh Thái Hồng – Bộ mơn Điều khiển Tự động
3
2 Có rất nhiều lựa chọn để tín hiệu vào là tín hiệu kích thích vững Khi chọn tín hiệu vào cần để ý các yếu tố sau:
i Tính chất tiệm cận của thông số ước lượng (độ lệch và phương sai) chỉ phụ thuộc phổ tín hiệu vào, không phụ thuộc dạng sóng tín hiệu vào
ii Tín hiệu vào phải có biên độ hữu hạn, u≤u(t)≤u
iii Tín hiệu vào tuần hoàn có một số ưu điểm
3 Dạng sóng tín hiệu vào – Hệ số đỉnh (Crest factor)
• Ma trận hiệp phương sai tỉ lệ nghịch với công suất tín hiệu vào ⇒ công suất tín hiệu vào càng lớn kết quả nhận dạng càng chính xác
• Tuy nhiên thực tế tín hiệu vào có biên độ hữu hạn (do giới hạn vật lý) nên công suất tín hiệu vào không thể tăng lớn tùy ý được
• Dạng sóng tín hiệu được xác định bởi hệ số đỉnh, định nghĩa như sau:
∑
=
∞
→
t N
t r
t u N
t u C
1 2
2 2
) (
1 lim
) (
max
(6.6)
Dễ thấy 1C r ≥ Trong lớp các tín hiệu bị chặn, tín hiệu có công suất lớn nhất khi C r =1, đó là tín hiệu nhị phân (u (t) chỉ có 2 mức u± ) Tuy nhiên tín hiệu nhị phân chỉ có thể sử dụng khi nhận dạng mô hình tuyến tính, không thể sử dụng khi nhận dạng mô hình phi tuyến vì đặc tính động của hệ phi tuyến không chỉ phụ thuộc tần số mà còn phụ thuộc biên độ tín hiệu vào
4 Thành phần tần số của tín hiệu vào
Tín hiệu vào cần được chọn sao cho công suất của tín hiệu tập trung vào miền tần số mà tại đó đặc tính tần số của mô hình nhạy với sự thay đổi thông số mô hình
Để nhận dạng mô hình tuyến tính cần chọn tín hiệu vào có phổ tần số
mong muốn và hệ số đỉnh càng nhỏ càng tốt, tuy nhiên hai yêu cầu trên lại
mâu thuẫn nhau: tín hiệu có phổ tần số thay đổi dễ dàng như mong muốn thì có hệ số đỉnh lớn và ngược lại
5 Các dạng tín hiệu vào thông dụng
• Nhiễu trắng phân bố Gauss qua bộ lọc tần số
Nhiễu trắng có mật độ phổ công suất (Power Spectral Density) bằng nhau tại mọi tần số, cho nhiễu trắng qua bộ lọc tần số ta sẽ được tín hiệu ngẫu nhiên có mật độ phổ công suất tập trung tại miền tần số mong muốn
Trang 4Chương 6: Thực nghiệm nhận dạng hệ thống
Huỳnh Thái Hồng – Bộ mơn Điều khiển Tự động
4
Về lý thuyết tín hiệu nhiễu Gauss có biên độ không bị chặn, do đó phải cho tín hiệu nhiễu Gauss bão hòa tại một giá trị ngưỡng nào đó để được tín hiệu ngẫu nhiên bị chặn Thí dụ có thể cho tín hiệu bão hòa ở mức biên độ bằng 3 lần độ lệch chuẩn, khi đó chỉ có khoảng 1% số mẫu tín hiệu bị ảnh hưởng, tín hiệu sẽ có hệ số đỉnh bằng 3 và méo tần số không đáng kể
Cần nhớ:Bộ công cụ Ident tạo tín hiệu vào phân bố Gauss bằng lệnh:
>> u = idinput(N, ‘RGS’,[wmin wmax],[µ-σ µ+σ])
Trong đó: N: số mẫu
‘RGS’: Random Gaussian Signal
[wmin wmax]: băng thông của tín hiệu (mặc định [0 1]) µ: giá trị trung bình của phân bố Gauss (mặc định 0) σ: độ lệch chuẩn của phân bố Gauss (mặc định 1)
-4
-2
0
2
4
20 200 400 600 800 1000 4
6 8
(a) (b) Hình 6.2: Tín hiệu ngẫu nhiên phân bố Gauss (a) Băng thông [0 1], µ =0, σ =1
(b) Băng thông [0 0.1], µ =5, σ =1
• Tín hiệu nhị phân ngẫu nhiên
Tín hiệu nhị phân ngẫu nhiên là tín hiệu có biên độ thay đổi ngẫu nhiên giữa hai mức cố định Có thể tạo ra tín hiệu nhị phân ngẫu nhiên bằng cách lấy dấu tín hiệu ngẫu nhiên phân bố Gauss, sau đó có thể dịch mức −1 và +1 sang hai mức bất kỳ
☺ Tín hiệu nhị phân ngẫu nhiên có hệ số đỉnh bằng 1
Không thể điều chỉnh như ý muốn dạng phổ tín hiệu
Cần nhớ:Bộ công cụ Ident tạo tín hiệu vào nhị phân ngẫu nhiên bằng lệnh:
>> u = idinput(N, ‘RBS’,[wmin wmax],[umin umax])
Trong đó: N: số mẫu
‘RBS’: Random Binary Signal
[wmin wmax]: băng thông của tín hiệu (mặc định [0 1]) [umin umax]: mức thấp và mức cao của tín hiệu
(mặc định [−1 +1])
Trang 5Chương 6: Thực nghiệm nhận dạng hệ thống
Huỳnh Thái Hồng – Bộ mơn Điều khiển Tự động
5
-1
-0.5
0
0.5
1
0 1 2 3 4 5
(a) (b) Hình 6.3: Tín hiệu nhị phân ngẫu nhiên (a) Băng thông [0 1], mức [−1 1]
(b) Băng thông [0 0.1], mức [0 5]
• Tín hiệu nhị phân ngẫu nhiên giả
(PRBS – Pseudo-Random Binary Signal)
Tín hiệu nhị phân ngẫu nhiên giả (PRBS) là tín hiệu tiền định, tuần hoàn có các tính chất giống tín hiệu nhiễu trắng Tín hiệu nhị phân ngẫu nhiên giả được tạo ra nhờ phương trình sai phân:
) 2 ), ( )
1 ( ( rem )
2 ), ( ) ( ( rem )
(rem: phần dư (remainder))
Tín hiệu PRBS là tín hiệu tuần hoàn với chu kỳ cực đại là M =2n −1, chu kỳ tuần hoàn của tín hiệu phụ thuộc vào A (q) Với mỗi giá trị n tồn tại
đa thức A (q) cho trong bảng dưới đây để chu kỳ tuần hoàn của tín hiệu PRBS đạt cực đại
Bảng 6.1: Đa thức A(q) tạo ra tín hiệu PRBS có độ dài cực đại,
các hệ số của A(q) không được liệt kê trong bảng có giá trị bằng 0
Bậc n M=2 n−1 Hệ số bằng 1
8 255 a1, a2, a7, a8
Trang 6Chương 6: Thực nghiệm nhận dạng hệ thống
Huỳnh Thái Hồng – Bộ mơn Điều khiển Tự động
6
Tín hiệu PRBS độ dài cực đại có biên độ thay đổi giữa hai giá trị u± có tính chất sau:
M
u t u M
M t
=
∑
=1
) (
1
(6.8)
−
±
±
=
= +
,
2 , , 0 )
( ) (
1 )
2
M M k
u k t u t u M k
t
Phổ công suất của tín hiệu PRBS là:
∑−
=
−
1
2
) / 2 (
2 )
k
M
π ω
Biểu thức (6.10) chứng tỏ phổ công suất của tín hiệu PRBS có M −1 vạch có độ cao bằng nhau phân bố trong miền −π ≤ω <π (không kể thành phần tần số ω=0) Điều này chứng tỏ tín hiệu PRBS có tính chất “giống” như nhiễu trắng tuần hoàn
☺ Tín hiệu PRBS có hệ số đỉnh bằng 1 (tối ưu)
Các tính chất tương tự nhiễu trắng của tín hiệu PRBS chỉ có được khi
số mẫu của tín hiệu bằng bội số của M Do đó khi kích thích hệ thống dùng
tín hiệu PRBS nên chọn số mẫu dữ liệu thu thập là N =kM (k: số nguyên),
và điều này làm hạn chế tùy chọn số mẫu dữ liệu thu thập
Cần nhớ:Bộ công cụ Ident tạo tín hiệu vào PRBS bằng lệnh:
>> u = idinput(N, ‘PRBS’,[0 B],[umin umax])
Trong đó: N: số mẫu
‘PRBS’: Pseudo-Random Binary Signal
[0 B]: 1/B là chu kỳ clock (mặc định B=1), u không thay đổi trong khoảng tối thiểu là 1/B mẫu
[umin umax]: mức thấp và mức cao của tín hiệu (mặc định [−1 +1])
-1
-0.5
0
0.5
1
0 200 400 600 800 1000 0
1 2 3 4 5
(a) (b) Hình 6.4: Tín hiệu nhị phân ngẫu nhiên (a) B=1, mức [−1 1]; (b) B=0.1, mức [0 5]
Trang 7Chương 6: Thực nghiệm nhận dạng hệ thống
Huỳnh Thái Hồng – Bộ mơn Điều khiển Tự động
7
• Tín hiệu đa hài (multi-sines)
Tín hiệu đa hài là tổng của nhiều thành phần hình sin
∑
=
+
= d
t a
t u
1
) cos(
)
Phổ của tín hiệu đa hài là:
∑
=
+ +
−
k u
a
1
2
)]
( ) (
[ 4 2
)
☺ Bằng cách chọn d, ak, ωk có thể tập trung công suất tín hiệu tại các tần số mong muốn một cách chính xác
Khuyết điểm của tín hiệu đa hài là hệ số đỉnh cao, có thể lên đến
d
2 nếu các thành phần hình sin cùng pha và có biên độ bằng nhau (để ý công suất của tín hiệu là ∑a k2/2, biên độ cực đại trong trường hợp các thành phần hình sin cùng pha là ∑a k ) Để giảm hệ số đỉnh cần chọn pha φk sao cho các thành phần lệch pha càng nhiều càng tốt Sau đây là cách chọn φk do Schoeder đề xuất:
1
φ chọn bất kỳ
π φ
φ
d
k
k
k
) 1
(
1
−
−
Cần nhớ:Bộ công cụ Ident tạo tín hiệu vào đa hài bằng lệnh:
>> u = idinput(N, ‘SINE’,[wmin wmax],[umin umax], SINEDATA) Trong đó: N: số mẫu
‘SINE’: Tín hiệu đa hài (multi-sines)
[wmin wmax]: tần số thấp nhất và cao nhất của các thành
phần hình sine (mặc định [0 1])
[umin umax]: mức thấp và mức cao của tín hiệu (mặc định [−1 +1])
SINEDATA = [No_of_Sinusoids, No_of_Trials, Grid_Skip]
0 200 400 600 800 1000
-1
-0.5
0
0.5
1
0 200 400 600 800 1000 0
1 2 3 4 5
(a) (b) Hình 6.5: Tín hiệu đa hài ngẫu nhiên (a) Tần số [0 1], mức [−1 1]; (b) Tần số [0 0.1], mức [0 5]
Trang 8Chương 6: Thực nghiệm nhận dạng hệ thống
Huỳnh Thái Hồng – Bộ mơn Điều khiển Tự động
8
6.2.3 Chọn chu kỳ lấy mẫu
• Lấy mẫu quá nhanh (chu kỳ lấy mẫu nhỏ) có thể dẫn đến các khó khăn khi ước lượng thông số bằng phương pháp số, mô hình khớp (fit) ở miền tần số cao Nếu hệ thống có thời gian chết thì việc chọn chu kỳ lấy mẫu quá nhỏ có thể sẽ làm cho hệ thống được mô hình hóa với khâu trể kéo dài trong nhiều chu kỳ lấy mẫu, điều này sẽ gây khó khăn khi sử dụng mô hình để thiết kế hệ thống điều khiển
• Lấy mẫu quá chậm (chu kỳ lấy mẫu lớn) có thể gây ra méo tần số làm mất thông tin Khi chu kỳ lấy mẫu tăng vượt quá thời hằng tự nhiên của hệ thống phương sai tăng đột ngột
• Chu kỳ lấy mẫu tối ưu trong trường hợp số mẫu dữ liệu cố định xấp xỉ thời hằng của hệ thống Nếu không biết trước thời hằng của hệ thống thì ta phải ước lượng, nếu thời hằng ước lượng cao hơn thực tế thì việc chọn chu kỳ lấy mẫu xấp xỉ thời hằng sẽ dẫn kết kết quả nhận dạng rất xấu
• Khi thu thập dữ liệu nên lấy mẫu càng nhanh càng tốt, chu kỳ lấy mẫu
T thực tế sẽ được chọn sau khi xử lý dữ liệu
6.3 TIỀN XỬ LÝ DỮ LIỆU
Dữ liệu thu thập khi thí nghiệm thường không thể sử dụng ngay trong các thuật toán nhận dạng hệ thống do các khiếm khuyết sau:
- Nhiễu tần số cao trong tập dữ liệu thu thập được
- Tập dữ liệu bị gián đoạn, thiếu dữ liệu, hoặc có các giá trị đo sai (outlier)
- Nhiễu tần số thấp, trôi (drift), độ lệch không (offset)
Do vậy, nếu thực hiện nhận dạng offline trước tiên nên vẽ đồ thị dữ liệu vào ra, xem xét đồ thị để phát hiện ra các khiếm khuyết trong tập dữ liệu và tiền xử lý tập dữ liệu để loại bỏ các khiếm khuyết (nếu có)
6.3.1 Trôi và khử trôi
Nhiễu tần số thấp, độ lệch không, nhiễu trôi, nhiễu chu kỳ thường gặp trong các tập dữ liệu Có hai hướng xử lý:
- Loại bỏ nhiễu bằng cách tiền xử lý dữ liệu
- Nhận dạng mô hình nhiễu
Độ lệch không của tín hiệu
Xét mô hình tuyến tính:
) ( ) ( ) ( ) ( ) (q y t B q u t v t
Trang 9Chương 6: Thực nghiệm nhận dạng hệ thống
Huỳnh Thái Hồng – Bộ mơn Điều khiển Tự động
9
Mô hình (6.14) mô tả quan hệ giữa u(t) và y(t), bao gồm đặc tính động
(sự thay đổi của u(t) ảnh hưởng đến y(t) như thế nào) và đặc tính tĩnh (quan
hệ giữa các giá trị xác lập u và y ) Đặc tính tĩnh cho bởi biểu thức:
u B y
Do vậy nếu sử dụng dữ liệu thô u m (t) và y m (t) để nhận dạng đa thức
A (q) và B(q) của mô hình (6.14) thì A(q) và B(q) phải thỏa mãn điều kiện
ràng buộc không cần thiết (6.15) Có một số cách giải quyết vấn đề trên:
1 Đặt y (t) và u(t) là độ lệch xung quanh điểm cân bằng vật lý
y t y t
u t u t
Bằng cách đổi biến (6.16) và (6.17), điều kiện ràng buộc (6.15) tự động
được thỏa mãn Trong trường hợp này mô hình (6.14) là mô hình tuyến tính
của hệ thống xung quanh điểm cân bằng
2 Loại bỏ trung bình mẫu:
=
t
t y N
y
1
) (
1
(6.18)
∑
=
t
t u N
u
1
) (
1
(6.19)
Sau đó áp dụng các công thức (6.16) và (6.17)
3 Ước lượng độ lệch không:
Thêm một hằng số vào mô hình để bù độ lệch không của tín hiệu:
A(q)y m(t)=B(q)u m(t)+α +v(t) (6.20)
Hằng số α được gộp vào vector thông số θ và được ước lượng từ dữ liệu
4 Dùng mô hình nhiễu có khâu tích phân
Biến đổi (6.20):
) ( ) ( 1 ) ( ) ( ) ( ) (q y t B q u t t v t
1 ) ( ) ( ) ( )
q t
u q B t y q
− +
) ( ) 1 (
1 )
( ) (
) ( )
q A q t
u q A
q B t
−
− +
trong đó: w(t)=αδ(t)+v(t)−v(t−1) (6.23)
Trang 10Chương 6: Thực nghiệm nhận dạng hệ thống
Huỳnh Thái Hồng – Bộ mơn Điều khiển Tự động
10
Vì vậy độ lệch α có thể mô tả bằng cách đổi mô hình nhiễu từ
) (
/
1
)
(q A q
H = sang H(q)=1/[(1−q−1)A(q)] Điều này tương đương với lọc
dữ liệu qua bộ lọc L(q)=(1−q−1), tức là lấy sai phân dữ liệu
) 1 ( ) ( ) ( ) ( ) (t =L q y t = y t − y t−
) 1 ( ) ( ) ( ) ( ) (t =L q u t =u t −u t−
5 Mở rộng mô hình nhiễu
Từ (6.22) ta có:
) ( ) ( ) 1 (
1 )
( ) ( ) 1 (
) ( ) 1 ( )
1
t w q A q t
u q A q
q B q t
−
+
−
−
Do đó nếu dùng mô hình với các đa thức A và B tăng lên 1 bậc ta có thể
nhận dạng được mô hình đúng của hệ thống
6 Lọc thông cao để loại trừ nhiễu tần số thấp
6.4 CHỌN CẤU TRÚC MÔ HÌNH
Chọn cấu trúc mô hình bao gồm 2 vấn đề:
- Chọn loại mô hình
- Chọn bậc mô hình
Tiêu chí chọn cấu trúc mô hình: chúng ta cần nhận dạng “mô hình có
chất lượng tốt với chi phí thấp nhất”
Chất lượng mô hình: Có thể đánh giá dựa vào tiêu chuẩn trung bình bình
phương sai số J (D) (D ={all design variables}) Để ý rằng, theo chương 5,
trung bình bình phương sai số có thể phân tích ra làm 2 thành phần: độ lệch
và phương sai
) ( ) ( ) (D J B D J P D
Mâu thuẫn:
- Độ lệch J B (D) càng giảm khi mô hình càng linh hoạt (bậc mô hình
càng cao, mô hình dùng càng nhiều tham số);
- Phương sai J P (D) tăng khi số lượng tham số sử dụng càng tăng
⇒ Cần chọn bậc mô hình sao cho dung hòa giữa độ lệch và phương sai
Chi phí nhận dạng mô hình:
- Độ phức tạp của thuật toán ước lượng tham số: có thể ước lượng
thông số bằng công thức giải tích hay phải ước lượng thông số bằng
Trang 11Chương 6: Thực nghiệm nhận dạng hệ thống
Huỳnh Thái Hồng – Bộ mơn Điều khiển Tự động
11
thuật toán lặp? Tính đạo hàm của bộ dự báo theo tham số
θ
∂y ˆ t( , )/ dễ dàng hay khó khăn?
- Tính chất của hàm tiêu chuẩn ước lượng mô hình: có cực trị duy nhất hay nhiều cực trị
6.4.1 Chọn loại mô hình
• Mô hình hộp xám (gray-box model):
Xây dựng mô hình tham số vật lý (physically parameterized model) của hệ thống bằng cách dựa vào hiểu biết về các qui luật vật lý bên trong hệ thống (tức là bằng cách mô hình hóa đã học ở chương 2), sau đó ước lượng tham số mô hình dựa vào dữ liệu thực nghiệm
• Mô hình hộp đen: (blackbox model) tuyến tính hay phi tuyến?
Hệ thống có thể mô tả bằng mô hình tuyến tính nếu:
- Quan hệ vào ra của hệ thống chỉ phụ thuộc vào tần số mà không phụ thuộc vào biên độ tín hiệu
- Khi tín hiệu vào là tín hiệu hình sin, ở trạng thái xác lập tín hiệu ra là tín hiệu hình sin cùng tần số với tín hiệu vào (không xuất hiện các thành phần hài bậc cao)
- Hệ thống làm việc trong phạm vi “nhỏ” xung quanh điểm tĩnh
Các trường hợp còn lại đều phải nhận dạng hệ thống dùng cấu trúc mô hình phi tuyến
6.4.2 Chọn bậc mô hình
Một trong những nguyên tắc cơ bản của lý thuyết nhận dạng hệ thống là xây dựng mô hình toán càng đơn giản càng tốt Khi bậc mô hình càng tăng, số thông số càng nhiều thì mô hình càng linh hoạt và sai số xấp xỉ càng giảm, tuy nhiên bậc tăng đến một mức nào đó thì dù tăng thêm sai số vẫn giảm không đáng kể, vì vậy tiêu chuẩn chọn lựa cấu trúc mô hình phải tính đến sai số mô hình và số thông số của mô hình
• Tiêu chuẩn chọn bậc mô hình tuyến tính theo thông số
Đối với các mô hình tuyến tính theo thông số, có nhiều tiêu chuẩn để chọn bậc của mô hình Nguyên tắc chung để đưa ra các tiêu chuẩn chọn bậc mô hình là sự cân bằng giữa độ chính xác và độ phức tạp của mô hình Tổng quát, các tiêu chuẩn này gồm hai thành phần: thành phần thứ nhất là trung