Đăng ký Đăng nhập
Trang chủ ANFIS VÀ ỨNG DỤNG NHẬN DẠNG VỊ TRÍ CON LẮC NGƯỢC...

Tài liệu ANFIS VÀ ỨNG DỤNG NHẬN DẠNG VỊ TRÍ CON LẮC NGƯỢC

.PDF
8
392
125

Mô tả:

ANFIS VÀ ỨNG DỤNG NHẬN DẠNG VỊ TRÍ CON LẮC NGƯỢC
Phạm Hữu Đức Dục Tạp chí KHOA HỌC & CÔNG NGHỆ 57(9): 57 – 62 ANFIS VÀ ỨNG DỤNG NHẬN DẠNG VỊ TRÍ CON LẮC NGƯỢC Phạm Hữu Đức Dục* Trường Đại học Kỹ thuật Công nghiệp - Đại học Thái Nguyên TÓM TẮT ANFIS (Adaptive Network-based Fuzzy Inference System) là mạng nơron mờ nổi tiếng, hiện đang được các nhà khoa học quan tâm trong các lĩnh vực nhận dạng và điều khiển đối tượng phi tuyến. Bài báo này đề xuất các luật cập nhật thông số điều chỉnh đối với các biến ngôn ngữ mờ ở đầu vào và các hệ số của hàm tuyến tính của đầu ra khi ANFIS sử dụng hàm liên thuộc dạng Gauss và ứng dụng chúng trong bài toán nhận dạng vị trí con lắc ngược. Từ khoá: ANFIS, hàm liên thuộc Gauss, nhận dạng, con lắc ngược. • 1. MỞ ĐẦU Nhận dạng đối tượng phi tuyến thông thường là bài toán rất phức tạp. Để nâng cao tính thông minh cho thiết bị nhận dạng thường ứng dụng các giải pháp sử dụng mạng nơron, hệ mờ, mạng nơron mờ.... ANFIS (Adaptive Network-based Fuzzy Inference System) là một mạng nơron mờ nổi tiếng, hiện đang được các nhà khoa học quan tâm trong các lĩnh v ực nhận dạng và điều khiển đối tượng phi tuyến. Bài báo này giới thiệu ANFIS, sau đó đề xuất các luật học cập nhật thông số điều chỉnh cho các biến ngôn ngữ mờ ở đầu vào và các hệ số của hàm tuyến tính của đầu ra khi mạng nơron mờ này sử dụng hàm liên thuộc dạng Gauss. Để minh chứng cho tính đúng đắn của các luật điều chỉnh vừa được đề xuất, bài báo này thực hiện ứng dụng chúng trong bài toán nhận dạng một đối tượng phi tuyến mạnh đó là vị trí con lắc ngược. 2. ANFIS ANFIS là mạng nơron mờ được [1], [2] giới thiệu. Luật học dạng TSK (Takasi, Sugeno và Kang) thứ j có dạng: j R j : IF u1 is A1 AND u 2 is A 2 .... AND j j n j j u n is A n THEN f j = µ j (p 0 + ∑ p i u i ) ; i =1 với u i , y tương ứng là các biến đầu vào, đầu ra; A ij (u i ) là các biến ngôn ngữ mờ; j p1 ∈ R là hệ số của hàm tuyến tính f j (i = 1, 2,..., n; j = 1, 2, ..., M ). Cấu trúc của ANFIS gồm 6 lớp như sau: Lớp 1: Là lớp đầu vào, mỗi nút thứ i có tín hiệu vào u i . Lớp 2: Mỗi phần tử tương ứng là một hàm liên thuộc µ j (u i ) . A i Lớp 3: Mỗi phần tử R j tương ứng thực n hiện một luật thứ j: µ j = ∏ µ ij (u i ) . i =1 Lớp 4: Mỗi phần tử N tương ứng thực hiện phép tính: *Phạm Hữu Đức Dục, Tel:0913238632, Email: [email protected] Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Phạm Hữu Đức Dục Tạp chí KHOA HỌC & CÔNG NGHỆ µj 57(9): 57 – 62 µj thông số nói trên. Do khuôn khổ bài báo có hạn nên không trình bày phần chứng minh, chỉ cung cấp kết quả của các luật này. Lớp 5: Mỗi phần tử j thực hiện phép tính: - Luật cập nhật thông số điều chỉnh ở lớp 5: µj = M ∑ j=1 . n j j f j = µ j (p 0 + ∑ p i u i ) . i =1 j Lớp 6: Có một phần tử thực hiện phép tính giá trị đầu ra: với: ∂E M ∑ µ jf j j=1 y= M ∑ j=1 µj j ∂p i M = ∑ µ jf j , u iµ j M ∑ µj j=1 ; j −( u i −ci ) 2 j 2.( δi ) 2 ; (u i ) = e µ j Ai Sai lệch trung bình bình phương giữa vị trí mong muốn yd và vị trí y: 2 Để E cực tiểu (hay y bám theo được y d ) cần tìm đư ợc luật cập nhật bộ thông số điều chỉnh gồm: thông số của hàm liên thuộc ở lớp 2 và bộ thông số j j j p 0 , p1j , p 2 ,..., p ij ,..., p n ở lớp 5. Phần sau đây đề xuất các luật điều chỉnh cập nhật giá trị của các bộ thông số điều chỉnh nói trên khi ANFIS sử dụng hàm liên thuộc Gauss, sau đó ứng dụng các luật đó trong nhận dạng vị trí con lắc ngược. { = (y − y d ) - Luật cập nhật bộ thông số điều chỉnh ở lớp 2: j=1    M n f   ∑  ∏µ j   j 1 d 1  d j=1  i =1 Ai ( u i )   2 = E = ( y − y) y −  2 2   M n  ∏µ  ∑ j     j=1  i =1 Ai ( u i )      ∂E ; j ∂p i j p i ( k + 1) = p i ( k ) − η p j j c i ( k + 1) = c i ( k ) − η c ∂E ; j ∂c i với: ∂E j ∂c i } 3. LUẬT ĐIỀU CHỈNH CỦA ANFIS VÀ ỨNG DỤNG ANFIS NHẬN DẠNG VỊ TRÍ CON LẮC NGƯỢC 3.1. Luật điều chỉnh của ANFIS Vấn đề đặt ra là cần tìm các luật cập nhật bộ các thông số điều chỉnh ở các lớp 2 và 5 cho ANFIS khi sử dụng hàm liên thuộc Gauss thực hiện theo phương pháp hạ gradient để tìm các luật điều chỉnh các j = (y − y d ) (f j − y)(u i − a i ( u i ))µ j ; j M δ i (u i ) 2 ∑ µ j j=1 j j δ i ( k + 1) = δ i ( k ) − η δ ∂E ; j ∂δ i với: ∂E ∂δij = ( y − yd ) (f j − y)(u i − a ij ( u i ))2 µ j ; M δij ( u i )3 ∑ µ j j=1 trong đó: η p, η c , η δ là các hệ số học. 3.2. Ứng dụng ANFIS nhận dạng vị trí con lắc ngược 3.2.1. Động học hệ xe goòng-con lắc ngược Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Phạm Hữu Đức Dục Tạp chí KHOA HỌC & CÔNG NGHỆ Hình 1 mô tả hệ xe goòng-con lắc ngược [3]. Phương trình động học có dạng:  x1 = x 2 ; 57(9): 57 – 62 ngược(m); f là lực đẩy tác động vào xe (N); g là gia tốc trọng trường và a= 1 . m+M 3.2.2. Thiết lập thiết bị nhận dạng Hình 1. Mô hình hệ xe goòng-con lắc ngược Hình 2. Sơ đồ ứng dụng mạng nơron Elman nhận dạng vị trí con lắc ngược  x2 = g sin( x 1 ) − amlx 2 sin(2x 1 ) / 2 − a cos( x 1 )f 2 4 l − aml cos 2 ( x 1 ) 3 với: x 1 và x 2 tương ứng là vị trí (rad) và tốc độ góc (rad/s) của con lắc ngược; m và M tương ứng là khối lượng con lắc ngược (kg) và khối lượng xe goòng (kg); l là một nửa chiều dài của con lắc Sử dụng sơ đồ nhận dạng song song [4] ứng dụng ANFIS nhận dạng vị trí con lắc ngược x1(k) trình bày ở hình 2. Hình 3 là sơ đồ mô phỏng số liệu vào/ra của con lắc ngược trên Matlab/ Simulink. Hình 4 mô tả sơ đồ cấu trúc của ANFIS nhận dạng vị trí con lắc ngược. Vị trí con lắc ngược tại thời điểm k là x1(k) không những chỉ phụ thuộc vào lực tác dụng f(k) mà còn phụ thuộc các giá trị quá khứ x1(k-1), mặt khác cần thoả mãn yêu cầu về cấu trúc của thiết bị nhận dạng không quá phức tạp. Từ đó chọn số đầu vào của ANFIS là 2, với các tín hiệu vào tương ứng là f(k), ∧ x1(k-1) và có 1 đầu ra là x1 (k ) . Chọn số hàm liên thuộc cho mỗi biến đầu vào là 2. Như vậy lớp 3 của ANFIS có 4 luật học tương ứng từ R1 đến R4 và ở lớp 5 thực hiện tính toán các hàm tuyến tính: j 2 j f j = µ j (p 0 + ∑ p i u i ) i =1 (với j=1, 2, 3, 4) Quá trình nhận dạng được tiến hành trong hai giai đoạn: học và kiểm tra sau đây. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Phạm Hữu Đức Dục Tạp chí KHOA HỌC & CÔNG NGHỆ 57(9): 57 – 62 Hình 3. Sơ đồ tính toán số liệu vào/ra vị trí con lắc ngược trên Matlab/Simulink. Hình 4. Sơ đồ cấu trúc của ANFIS nhận dạng vị trí con lắc ngược. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Phạm Hữu Đức Dục Tạp chí KHOA HỌC & CÔNG NGHỆ - Giai đoạn học Thực hiện quá trình tính toán số liệu vào/ra của vị trí con lắc ngược. Thông số sử dụng trong quá trình mô phỏng: m = 0.1 (kg); M = 10(kg); g = 9.8 (m/s2); l = 4(m). với lực tác dụng f ở dạng ngẫu nhiên trong khoảng [-1, 1] (hình 5). Thực hiện chạy mô hình tính toán thông số vào-ra trên Matlab/Simulink (hình 3) được đồ thị biểu diễn vị trí thực x1 của con lắc ngược của giai đoạn học trên đồ 57(9): 57 – 62 thị hình 8 đư ờng nét liền). Thực hiện ( giai đoạn học trên Matlab với các luật cập nhật thông số như sau. ∂p ij ; với: u iµ j ∧ = ( x1 − x1 ) j 4 ∂p i ∑ µj ∂E j =1 1 1 ∂E p ij ( t + 1) = p ij ( t ) − ηp 1 0.9 0.8 0.8 0.6 0.8 0.7 0.4 0.6 0.6 0.2 0.5 0 0.4 0.4 -0.2 0.3 -0.4 0.2 0.2 -0.6 0.1 -0.8 -1 0 0 10 20 30 40 50 60 70 80 90 Hình 5. Đồ thị lực tác dụng f(k) trong giai đoạn học 2.5 0 0 10 20 30 40 50 60 70 1 0.3 0.2 0.1 20 30 40 50 60 70 80 90 80 0.4 0.2 10 70 0.5 0.3 0 60 0.6 0.4 -0.5 50 0.7 0.5 0 40 0.8 0.6 0.5 30 1 0.7 1 20 0.9 0.8 1.5 10 Hình 6. Bộ hàm liên thuộc Hình 7. Bộ hàm liên thuộc ban đầu của đầu vào ban đầu của đầu vào f(k) x1(k-1) 0.9 2 0 80 0 0.1 0 10 20 30 40 50 60 70 80 Hình 8. Đồ thị x1(k)(nét liền), ∧1 (k) (nét đứt) giai Hình 9. Bộ hàm liên thuộc x sau khi học của đầu vào đoạn học f(k) 0 0 10 20 30 40 50 60 70 80 Hình 10. Bộ hàm liên thuộc sau khi học của đầu vàox1(k-1) 1 2 0.8 2 0.6 1.5 1.5 0.4 0.2 1 0 1 0.5 -0.2 0 2 -0.4 1.5 1 0.5 1 0 0.5 -0.8 -0.5 0 0 -1 -1 Hình 11 . Đồ thị 3 chiều quan hệ 0.5 -0.6 f(k), x1(k-1), ∧ x1 30 35 40 45 50 55 60 65 Hình 12 . Đồ thị lực tác dụng f(k) giai đoạn kiểm Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 0 10 20 30 40 50 60 70 80 70 Hình 13. Đồ thị x1(k) (nét liền), ∧ x 1 (k) (nét đứt) kiểm http://www.lrc-tnu.edu.vn Phạm Hữu Đức Dục Tạp chí KHOA HỌC & CÔNG NGHỆ (k) giai đoạn học tra j −( u i −ci ) 2 j 2.( δi ) 2 µ j (u i ) = e Ai ∂c j ∂c i với sai lệch: E=1.53604.10-4. ∧ ∧ ∂E = ( x1 − x1 ) ; j i j (f j − x 1 )(u i − a i (u i ))µ j ; 4 j δ i (u i ) 2 ∑ µ j j=1 j ∂E j δ i ( k + 1) = δ i ( k ) − η δ j ∂δ i . với: ∧ (f j − x1)(u i − a ij (u i ))2 µ j ∧ = ( x1− x1) 4 ∂δij δij (u i )3 ∑ µ j j=1 ∂E E= ; ∧ 1 T ∑ ( x 1 ( k ) − x 1 ( k )) 2 ; 2 k =1 với: i = 1, 2; j = 1, 2, 3, 4; p là ma trận hệ số kích. 2 1.5 1 0.5 0 2 1 1.5 0.5 1 0 0.5 -0.5 0 tra bộ thông số điều chỉnh của ANFIS ở lớp 5 như sau: p1=[0.0008 0.4591 0.0139]; p2=[0.0004 0.1260 -0.0497]; p3=[0.0071 -0.3223 -0.0234]; p4=[0.0144 0.0608 0.0650]. ; j j c i ( k + 1) = c i ( k ) − ηc ∂E 57(9): 57 – 62 -1 Hình 14. Đồ thị 3 chiều quan hệ f(k), x1(k-1), ∧1 (k) giai đoạn kiểm tra x thước (3x4); u(k)=[f(k) x1(k-1)]T; f=[f1 f2 f3 f4]T. Thực hiện mô phỏng trên Matlab cho giai đoạn học trong 1.000 chu kỳ. Kết quả mô phỏng được trình bày trên các ồ thị từ đ hình 5 đ ến hình 11, số liệu tính toán của * Giai đoạn kiểm tra Thực hiện tính toán bộ tín hiệu vào/ra giai đoạn kiểm tra bằng cách cho trước lực tác dụng f (hình 12) với vai trò là tín hiệu vào của sơ đồ mô phỏng trên Matlab/Simulink (hình 3). Thực hiện chạy mô phỏng để tính toán dữ liệu vào/ra trong giai đoạn kiểm tra, được đồ thị tín hiệu ra biểu diễn vị trí x1 của con lắc ngược của giai đ oạn kiểm tra trên đồ thị hình 13 đư ờng nét ( liền). Căn cứ vào kết quả thông số điều chỉnh tìm được của ANFIS trong giai đoạn học, đưa bộ dữ liệu vào/ra giai đoạn kiểm tra nói trên vào ANFIS, đ ược các đồ thị kết quả của giai đoạn kiểm tra từ hình 12 đ ến hình 14. Từ các kết quả mô phỏng trên đây của Matlab, thấy được rằng các tín ∧ hiệu tính toán nhận dạng x1 (k ) ở đầu ra của ANFIS luôn bám rất sát theo được tín hiệu vị trí thực của con lắc ngược x1(k) trong cả hai giai đoạn học và kiểm tra (trên các đồ thị hình 8 và 13). Do đó chứng tỏ được rằng ứng dụng thiết bị nhận dạng ANFIS (hình 4) cùng với các luật điều chỉnh cập nhật cho bộ thông số ở các lớp 2 và 5 đ nh ận dạng được vị ã trí con lắc ngược với sai lệch của giai đoạn học trong phạm vi cho phép. Mặt khác cũng cần thấy rằng với cấu trúc của thiết bị nhận dạng (hình 4) không phức tạp (chỉ có hai đầu vào ứng với hai tín hiệu f(k), x1(k-1); mỗi đầu vào chỉ có hai hàm liên thuộc dạng Gauss; cùng bốn luật học Rj (với j = 1, 2, 3, 4) ANFIS đ nh ận ã dạng được đối tượng có mức độ phi tuyến mạnh đó là vị trí con lắc ngược. Từ đó khẳng định được ứng dụng ANFIS Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Phạm Hữu Đức Dục Tạp chí KHOA HỌC & CÔNG NGHỆ cùng với các luật điều chỉnh được đề xuất trên đây là một giải pháp có nhiều ưu điểm, nâng cao được độ thông minh của thiết bị nhận dạng vị trí con lắc ngược nói riêng và có thể áp dụng cho nhận dạng đối tượng phi tuyến nói chung. IV. KẾT LUẬN Kết quả mô phỏng trên đây đã ch ỉ ra rằng các luật điều chỉnh được đề xuất cho ANFIS khi sử dụng hàm liên thuộc dạng Gauss là đúng đắn. Để giải quyết bài toán nhận dạng vị trí con lắc ngược là phần tử phi tuyến mạnh, chỉ cần sử dụng thiết bị nhận dạng ứng dụng ANFIS với cấu trúc và bộ các thông số điều chỉnh ở các lớp 2 và 5 không quá phức tạp, đã đ ạt được sai lệch có thể chấp nhận được. Điều này góp phần khẳng định được ANFIS là một mạng nơron mờ có nhiều ưu điểm, không những có thể ứng dụng nó trong bài toán nhận dạng đối tượng phi tuyến mà còn có thể ứng dụng nó trong trường hợp điều khiển các đối tượng phi tuyến có độ phức tạp cao. TÀI LIỆU THAM KHẢO 57(9): 57 – 62 [5]. http://www.mathworks.com, (1996), Matlab-The Language of Technical Computing; The MatthWorks. [1]. C.T. Lin, C.S. George Lee, (1996), Neural fuzzy systems, Prentice Hall Internatinal, Inc. [2]. J.S.R. Jang, (May/June 1993), “ANFIS: Adaptive-Network-Basec fuzzy inference systems”, IEEE Transactions on Systems, Man, and cybernetics, 665-685, Vol. 23, No. 3. [3]. L. K. Wong, Frank H. F. Leung, Peter K. S. Tam, (1998),” Lyapunov-FunctionBased Design of FuzzyLogic Controllers and Its Application on Combining Controllers”, IEEE Transactions on Industrial Electronics, 502-509, Vol. 45, No. 3. [4]. Narendra, Parthasarathy, (1990), “Identification and control of dynamical systems using Neural Networks”, IEEE. Trans. on Neural Networks, No.1, 4-27, Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Phạm Hữu Đức Dục Tạp chí KHOA HỌC & CÔNG NGHỆ 57(9): 57 – 62 SUMMARY ANFIS AND APPLYING TO IDENTIFY THE POSITION OF THE INVERTED PENDULUM Pham Huu Duc Duc* University of Economics and Business Admnistration, University of Technology • ANFIS (Adaptive Network-based Fuzzy Inference System) is the modern fuzzy-neural network, which is used by scientists to identify and control a nonlinear objects. This paper proposes an update parameters learning rule for the Gaussian membership fuction of the fuzzy linguistics variable in inputs and coefficients of the linear function in the output of ANFIS and applying to identify the position of the inverted pendulum. Key words: ANFIS, the Gaussian membership fuction, identification, the inverted pendulum. * Pham Huu Duc Duc, Tel:0913238632, Email: [email protected] Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
- Xem thêm -

Tài liệu liên quan