1. Trang chủ
  2. » Luận Văn - Báo Cáo

(Luận văn) ứng dụng mạng nơ ron nhận dạng và điều khiển hệ thống nâng từ

76 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP PHẠM THANH THẢO lu an n va Tên luận văn: p ie gh tn to ỨNG DỤNG MẠNG NƠ-RON NHẬN DẠNG VÀ ĐIỀU KHIỂN HỆ THỐNG NÂNG TỪ d oa nl w u nf va an lu ll LUẬN VĂN THẠC SĨ KỸ THUẬT oi m z at nh Chuyên ngành: Kỹ thuật điều khiển Tự động hóa z m co l gm @ an Lu Thái Nguyên – 2015 n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si Cơng trình hồn thành tại: Trường Đại học kĩ thuật Công nghiệp, Đại học Thái Nguyên Ngƣời hƣớng dẫn khoa học: TS Nguyễn Hoài Nam lu an n va tn to gh Phản biện 1: PGS.TS Nguyễn Nhƣ Hiển p ie Phản biện 2: PGS.TS Bùi Trung Thành d oa nl w an lu va Luận văn bảo vệ trước Hội đồng chấm luận văn họp tại: ll u nf Trường Đại học Kỹ thuật Công Nghiệp, Đại học Thái Nguyên oi m Vào hồi 10 30 ngày 20 tháng 06 năm 2015 z at nh z m co l gm @ an Lu Có thể tìm hiểu luận văn Trung tâm học liệu Đại học Thái Nguyên Thư viện: Trường Đại học kỹ thuật Cơng nghiệp n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si LỜI CAM ĐOAN Tên là: Phạm Thanh Thảo Sinh ngày : 18 tháng 06 năm 1989 Học viên lớp cao học khố 15 CHTĐH - Trường đại học Kỹ thuật Cơng nghiệp Thái Nguyên Hiện công tác : Trung tâm dạy nghề huyện Đồng Hỷ - Thái Nguyên Xin cam đoan luận văn “Ứng dụng mạng nơ ron nhận dạng điều khiển hệ thống nâng từ” thầy giáo TS Nguyễn Hồi Nam hướng dẫn cơng trình nghiên cứu riêng Tất tài liệu tham khảo có lu an nguồn gốc, xuất xứ rõ ràng va n Tôi xin cam đoan tất nội dung luận văn nội tn to dung đề cương yêu cầu thầy giáo hướng dẫn Nếu có vấn đề ie gh nội dung luận văn, tơi xin hồn tồn chịu trách nhiệm với lời cam p đoan nl w d oa Thái Nguyên, ngày tháng năm 2015 ll u nf va an lu Học viên oi m Phạm Thanh Thảo z at nh z m co l gm @ an Lu n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si LỜI CẢM ƠN Sau thời gian nghiên cứu, làm việc khẩn trương hướng dẫn tận tình giúp đỡ thầy giáo TS Nguyễn Hoài Nam, luận văn với đề tài “Ứng dụng mạng nơ ron nhận dạng điều khiển hệ thống nâng từ” hồn thành Tơi xin bày tỏ lịng biết ơn sâu sắc tới: Thầy giáo hướng dẫn TS Nguyễn Hoài Nam tận tình dẫn, giúp đỡ tơi hồn thành luận văn Các thầy cô giáo Trường Đại học kỹ thuật công nghiệp Thái Nguyên lu an quan tâm động viên, giúp đỡ tơi suốt q trình học tập để hoàn thành n va luận văn tn to Mặc dù cố gắng hết sức, song điều kiện thời gian kinh nghiệm ie gh thực tế thân cịn ít, đề tài khơng thể tránh khỏi thiếu sót Vì p vậy, tơi mong nhận đóng góp ý kiến thầy giáo, cô giáo nl w bạn bè đồng nghiệp oa Tôi xin chân thành cảm ơn! d Thái Nguyên, ngày….tháng….năm 2015 an lu ll u nf va Học viên oi m z at nh Phạm Thanh Thảo z m co l gm @ an Lu n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si MỤC LỤC LỜI CAM ĐOAN LỜI CẢM ƠN MỤC LỤC DANH MỤC CÁC HÌNH VẼ CHƢƠNG I : CƠ SỞ LÝ THUYẾT MẠNG NƠRON 13 1.1 Nơ-ron sinh học 13 lu an 1.1.1 Chức năng, tổ chức hoạt động não người 13 n va 1.1.2 Mạng nơron sinh học 15 tn to 1.2 Mạng nơ ron nhân tạo 16 ie gh 1.2.1 Mạng nơ ron nhân tạo 16 p 1.2.2 Các tính chất mạng nơ ron nhân tạo 18 nl w 1.2.3 Các thành phần mạng nơ ron nhân tạo 18 d oa 1.2.4 Cấu trúc mạng nơ-ron 22 an lu 1.2.5 Phân loại mạng nơ-ron 23 u nf va 1.2.6 Quá trình thiết kế mạng nơ-ron 23 1.3 Ứng dụng mạng nơ-ron nhận dạng điều khiển 24 ll oi m 1.3.1 Nhận dạng hệ thống 24 z at nh 1.3.2 Điều khiển theo mơ hình mẫu 26 1.4 Kết luận 27 z @ gm CHƢƠNG II : TỔNG QUAN VỀ HỆ THỐNG NÂNG TỪ 28 m co l 2.1 Giới thiệu hệ thống nâng từ 28 2.2 Mơ hình hệ thống nâng từ 29 an Lu n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si 2.3 Ứng dụng mạng nơ ron nhận dạng mơ hình tốn hệ thống nâng từ 30 2.3.1 Huấn luyện mạng hở 31 2.3.2 Huấn luyện mạng kín 33 2.3.3 Nhận xét 35 2.4 Ứng dụng mạng nơ-ron điều khiển hệ thống nâng từ theo mơ hình mẫu 35 2.4.1 Huấn luyện mạng hở 37 2.4.2 Huấn luyện mạng kín 39 lu an 2.4.3 Nhận xét 41 va n 2.5 Kết luận 42 gh tn to CHƢƠNG III : THIẾT KẾ, CHẾ TẠO HỆ THỐNG NÂNG TỪ 43 p ie 3.1 Thiết kế chế tạo hệ thống nâng từ phịng thí nghiệm 43 nl w 3.2 Mơ hình thí nghiệm hệ thống nâng từ 44 d oa 3.2.1 Thiết bị đo góc 45 va an lu 3.2.2 Card điều khiển arduino 45 u nf 3.3 Thiết kế điều khiển PI cho hệ thống nâng từ thực 46 ll 3.3.1 Sơ đồ hệ thống điều khiển sử dụng điều khiển PI 46 m oi 3.3.2 Kết điều khiển sử dụng điều khiển PI 47 z at nh 3.4 Kết luận 48 z CHƢƠNG IV : ỨNG DỤNG MẠNG NƠ-RON NHẬN DẠNG VÀ ĐIỀU @ l gm KHIỂN HỆ THỐNG NÂNG TỪ 50 m co 4.1 Ứng dụng mạng nơ ron nhận dạng điều khiển hệ thống nâng từ thực 50 an Lu 4.1.1 Huấn luyện mạng hở 51 http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN n va 4.1.2 Huấn luyện mạng kín 53 si 4.1.3 Nhận xét 54 4.2 Ứng dụng mạng nơ-ron điều khiển hệ thống nâng từ thực 54 4.2.1 Huấn luyện mạng hở 54 4.2.2 Huấn luyện mạng kín 57 4.2.3 Nhận xét 59 4.4 Kết luận 60 KẾT LUẬN VÀ KIẾN NGHỊ 60 TÀI LIỆU THAM KHẢO 62 lu an n va p ie gh tn to d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu DANH MỤC CÁC HÌNH VẼ n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si Hình 1.1 Mơ hình nơron sinh học 14 Hình 1.2 Mơ hình nơron đơn giản 15 Hình 1.3 Mạng nơ-ron lớp 16 Hình 1.4 Mơ hình nơ-ron thứ i 17 Hình 1.5 Đồ thị loại hàm chuyển đổi 18 Hình 1.6 Cấu trúc huấn luyện mạng nơ-ron 19 Hình 1.7: Sơ đồ cấu trúc loại mạng nơ-ron 21 lu Hình 1.8 Sơ đồ khối trình nhận dạng hệ thống 23 an n va Hình 1.9 Sơ đồ khối trình điều khiển theo mơ hình mẫu 24 tn to Hình 2.1 Mơ hình hệ thống nâng vật bẳng từ trường đơn giản 27 p ie gh Hình 2.2: Cấu trúc mạng hở nhận dạng đối tượng 30 w Hình 2.3 Đầu mạng, đầu mẫu sai số 30 oa nl Hình 2.4 MSE mạng hở 31 d Hình 2.5 Cấu trúc mạng kín nhận dạng đối tượng 31 an lu u nf va Hình 2.6 Đầu mạng, đầu mẫu sai số 32 ll Hình 2.7 MSE mạng kín 32 m oi Hình 2.8 Sơ đồ hệ thống phát tín hiệu mẫu 34 z at nh Hình 2.9 Cấu trúc mạng điều khiển đối tượng (mạng hở) 35 z Hình 2.10 Đầu mạng, đầu mẫu sai số 36 gm @ Hình 2.11 MSE mạng hở 37 l m co Hình 2.12 Cấu trúc mạng điều khiển đối tượng (mạng kín) 38 an Lu Hình 2.13 Đầu mạng, đầu mẫu sai số 38 http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN n va Hình 2.14 MSE mạng kín 39 si Hình 3.1 Hệ thống thí nghiệm cho hệ thống nâng từ 41 Hình 3.2 Sơ đồ khối mơ hình thí nghiệm 42 Hình 3.3 Thiết bị đo góc 43 Hình 3.4 Card Aduino 43 Hình 3.5 Sơ đồ điều khiển PI điều khiển hệ thống nâng từ thực matlab 45 Hình 3.6 Kết điều khiển PI 46 Hình 4.1: Cấu trúc mạng hở nhận dạng đối tượng 49 lu an Hình 4.2 Đầu mạng, đầu mẫu sai số 50 n va tn to Hình 4.3 MSE mạng hở 50 ie gh Hình 4.4 Cấu trúc mạng kín nhận dạng đối tượng 51 p Hình 4.5 Đầu mạng, đầu mẫu sai số 51 oa nl w Hình 4.6 MSE mạng kín 52 d Hình 4.7 Cấu trúc mạng điều khiển đối tượng (mạng hở) 53 lu va an Hình 4.8 Đầu mạng, đầu mẫu sai số 54 ll u nf Hình 4.9 MSE mạng hở 55 oi m Hình 4.10 Cấu trúc mạng điều khiển đối tượng (mạng kín) 56 z at nh Hình 4.11 Đầu mạng, đầu mẫu sai số 56 z Hình 4.12 MSE mạng kín 57 an Lu Lý chọn đề tài m co l gm @ MỞ ĐẦU n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si Trong nhiều năm trở lại đây, với phát triển mạnh mẽ khoa học kỹ thuật góp phần thúc đẩy phát triển cơng nghiệp hóa, đại hóa ngồi nước Vì để đem lại chất lượng kỹ thuật hiệu kinh tế cao cần phải sử dụng ứng dụng hệ thống đại Trong lĩnh vực công nghiệp, hệ thống nâng từ (Maglev) sử dụng rộng rãi nhiều hệ thống kỹ thuật đem lại lợi ích đáng kể Hệ nâng vật từ trường (Magnetic levitation system) hệ phi tuyến ứng dụng nhiều kỹ thuật robot, phi thuyền không gian, đệm từ triệt tiêu ma sát ổ trục quay thay cho ổ đỡ khí truyền thống, phương tiện giao lu an thông chạy đệm từ với tốc độ cao, cách ly dao động phận n va máy móc với mơi trường bên ngồi Hiện nay, nhiều phương tiện di chuyển tn to lại sử dụng hệ thống nâng vật từ trường (Maglev) hoạt động dựa theo gh nguyên lý từ trường đẩy, phương pháp nhanh tiện so với p ie phương tiện có bánh Hệ thống nâng vật từ trường tàu đệm từ tốc w độ cao sử dụng phổ biến nhiều quốc gia Nhật Bản, Mỹ oa nl phương tiện chuyên chở nâng lên, dẫn lái đẩy tới lực từ d lực điện từ Phương pháp nhanh, tiết kiệm chi phí tiện nghi lu u nf cấu trúc khí va an loại phương tiện cơng cộng sử dụng bánh xe, giảm ma sát loại bỏ ll Các hệ thống nâng từ phân chia hệ thống hút đẩy m oi dựa nguồn gốc lực từ Những loại có độ phi tuyến cao thường z at nh thay đổi vịng mở nên khó đưa vào hệ thống điều khiển Vì z quan trọng việc xây dựng cấu trúc điều khiển hiệu suất cao gm @ việc điều chỉnh vị trí vật nâng Hệ thống số tác l giả nghiên cứu điều khiển thành công với nhiều phương pháp khác m co Tuy nhiên thực tế, việc xác định mô hình đối tượng đặc biệt mong muốn an Lu đối tượng phi tuyến cao gặp nhiều khó khăn đơi khơng đạt kết n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si TÀI LIỆU THAM KHẢO Tiếng Việt : [1] TS Nguyễn Như Hiển TS Lại Khắc Lãi (2007), Hệ mờ nơron kỹ thuật điều khiển, NXB Khoa học tự nhiên công nghệ Hà Nội [2] Nguyễn Phùng Quang, Matlab Simulink, NXB Khoa học Kỹ thuật, Hà Nội, 2006 [3] Nguyễn Dỗn Phước, Phân tích điều khiển hệ phi tuyến, NXB Bách khoa, 2012 [4] Nguyễn Doãn Phước, Lý thuyết điều khiển tuyến tính, NXB KH&KT, 2007 lu an [5] Nguyễn Doãn Phước, Lý thuyết điều khiển nâng cao, NXB KH&KT, n va 2007 tuyến, NXB KH&KT, 2003 [7] Nguyễn Chí Ngơn, Phạm Thanh Tùng Dương Hồi Nghĩa, Điều khiển ie gh tn to [6] Nguyễn Doãn Phước Phan Xuân Minh, Lý thuyết điều khiển phi p trượt dùng mạng nơron hệ nâng vật từ trường, Tạp chí khoa học 2011: Tiếng Anh: d oa nl w 17b 140-147 an lu [8] Demuth H., M Beale, M Hagan, 2010 Neural Network u nf va Toolbox™ User’s Guide, The MathWorks, Inc [9] H W Lee, K C Kim and J Lee, “Review of maglev train technologies”, ll oi m IEEE Transactionson Magnetics, Vol 42, Issue , July 2006 z at nh [10] C T Lin and C P Jou, “GA-Based Fuzzy Reinforcement Learning for Control of a MagneticBearing System,” IEEE Trans On Systems, Man, And Cybernetics – z @ Part B: Cybernetics, Vol 30, No 2,April 2000 levitation system”, Automatica 37, 2001 m co l gm [11] Z J Yang, M T, “Adaptive robust nonlinear control of a magnetic [12] A E Hajjaji and M Ouladsine, “Modeling and Nonlinear Control of an Lu Magnetic Levitation Systems,” IEEE Trans On Industrial Electronics, Vol 48, n http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN va No 4, August 2001 si [13] I M M Hassan and A M Mohamed, “Variable Structure Control of a Magnetic Levitation System”, Proceedingsof the American Control Conference Arlington, VA June 25-27,2001 [14] Z J Yang, K Miyazaki, S Kanae and K Wada, „Robust PositionControl of a Magnetic Levitation System via Dynamic Surface Control Technique,‟ IEEE Trans On Industrial Electronics, Vol 51,No 1, February 2004 [15] Z J Yang, K Kunitoshi, S Kanae, and K Wada, “Adaptive Robust Output-Feedback Control ofa Magnetic Levitation System by K-Filter Approach,” IEEE IEEE Trans On Industrial Electronics, Vol 55,No 1, January lu an 2008 n va [16] P Jain and M J Nigam, “Comparative analysis of MIT Rule and tn to aifferential evolution on magnetic levitation system,” International Journal of gh Electronics and Electrical Engineering Vol 3, No 2, April, 2015 p ie [17] Martin T H., Howard B D and Orlando D J., “An introduction to the use w of neuralnetworksincontrol systems,”Int J Robust Nonlinear Control 2002 d oa nl [18] http://en.m.wikipedia.org/wiki/Magnetic_levitation ll u nf va an lu oi m z at nh z m co l gm @ an Lu n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si Phụ lục 1: Chƣơng trình huấn luyện nhận dạng mơ hình hệ thống nâng từ thực Matlab (mạng hở) load mau net=narxnet(1:2,1:2,6); view(net); net.trainFcn='trainlm'; net.performFcn='mse'; net.trainParam.goal=1e-5; lu an net.trainParam.epochs=1000; n va net.trainParam.min_grad=1e-10; tn to net.trainParam.time=inf; ie gh net.trainParam.sigma=5e-5; p net.trainParam.lambda=5e-10; nl w net.trainParam.max_fail=10000; oa x=num2cell(R1'); d t=num2cell(T1'); an lu [xs,xi,ai,ts]=preparets(net,x,{},t); va oi m y=cell2mat(y); ll y=net(xs,xi,ai); u nf [net,tr]=train(net,xs,ts,xi,ai); m co Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn n va legend('Network Output','Target') an Lu plot(ti,y,'r',ti,t1,'b') l subplot(2,1,1) gm t1=cell2mat(ts); @ ti=1:n; z n=length(xs); z at nh figure(1) ac th si grid on subplot(2,1,2) plot(ti,y-t1,'r') grid on legend('Error') figure(2) plot(tr.perf) grid on title('MSE') lu an mse_end=min(tr.perf) n va save thao_1 net tn to Phụ lục 2: Chƣơng trình huấn luyện nhận dạng mơ hình hệ thống nâng gh từ thực Matlab (mạng kín) p ie load mau load thao_1 w d view(net) oa nl net = closeloop(net); oi m perfc = cell(1,N); ll netc = cell(1,N); u nf N = 3997; va an lu C = 3; an Lu k = floor(rand*m/C); m co net1 = net; l C = C + 1; gm for i =1:N @ m = length('T1'); z d = 1; z at nh figu = cell(2,N); n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si if k == k = 1; end net1.trainFcn = 'trainlm'; net1.performFcn = 'mse'; net1.trainParam.goal = 0; net1.trainParam.epochs = 1000; net1.trainParam.min_grad = 1e-15; net1.trainParam.time = inf; lu an net1.trainParam.sigma = 5e-5; n va net1.trainParam.lambda = 5e-7; tn to net1.trainParam.max_fail = 10000; gh [x,xr] = batch_data01(C,R1',k,d); p ie [t,rt] = batch_data01(C,T1',k,d); net1 = configure(net1,x,t); w oa nl [xs,xi,ai,ts] = preparets(net1,x,{},t); d [net1,tr] = train(net1,xs,ts,xi,ai); ll perfc{1,i} = tr.perf; u nf netc{1,i} = net; va an lu net = net1; oi m end an Lu y = net(xs,xi,ai); m co [xs,xi,ai,ts]=preparets(net,xr,{},rt); l mse_end = min(perfc{1,end}) gm title('MSE') @ grid on z plot(perfc{1,end}) z at nh figure(1) n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si y = cell2mat(y); figure(2) n = length(xs); ti = 1:n; t1 = cell2mat(ts); subplot(2,1,1) plot(ti,y,'r',ti,t1,'b') legend('Network Output','Target') grid on lu an subplot(2,1,2) n va plot(ti,y-t1,'r') tn to grid on gh legend('Error') p ie mse_end = min(tr.perf) save thao_2 netc w d tmin = 1; oa nl Phụ lục 3: Chƣơng trình tạo tín hiệu mẫu để huấn luyện điều khiển lu va an tmax = 2; u nf umin = 0; ll umax = 1.5; m % Sampling time t_desired = 20; % number of samples oi Ts = 0.01; z at nh % store time % store reference input b = umin + rand*(umax-umin); an Lu a = tmin + rand*(tmax-tmin); m co while data_length < t_desired l gm ref_data = rand*umax; @ t_data = 0; z data_length = 0; n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si t = [data_length+Ts data_length+a]; t_data = [t_data t]; ref_data = [ref_data b b]; data_length = data_length + a; end reference_input = [t_data;ref_data]'; plot(t_data,ref_data) title('Reference input') grid on lu an vitri = reference_input; n va save thao_3 vitri Ts tn to Phụ lục 4: Chƣơng trình huấn luyện điều khiển cho mơ hình hệ thống gh nâng từ Matlab (mạng hở) p ie load thao_2 nnplant = netc{1,end}; w d s1 = 6; oa nl s = nnplant.layers{1}.size; ll T = T2'; u nf va an R = R2'; lu load mauBDK oi m numInputs = 2; layerConnect = [0 0;1 0 0;0 0;0 0]; = m co net l gm @ inputConnect = [1 1;0 0;0 1;0 0]; z biasConnect = [1;1;1;1]; z at nh numLayers = 4; net.outputConnect = [0 0 1]; an Lu network(numInputs,numLayers,biasConnect,inputConnect,layerConnect); n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si net.layers{1}.transferFcn = 'tansig'; net.layers{2}.transferFcn = 'purelin'; net.layers{3}.transferFcn = 'tansig'; net.layers{4}.transferFcn = 'purelin'; d34 = max(nnplant.layerWeights{1,2}.delays); net.inputWeights{3,2}.delays = 1:d34; d11 = max(nnplant.inputWeights{1,1}.delays); net.layerWeights{3,2}.delays = 1:d11; net.layerWeights{1,2}.delays = 1:2; lu an net.inputWeights{1,1}.delays = 1:2; n va net.inputWeights{1,2}.delays = 1:2; tn to net.layers{1}.size = s1; gh net.layers{2}.size = 1; p ie net.layers{3}.size = s; net.layers{4}.size = 1; w oa nl net.layers{1}.initFcn = 'initnw'; d net.layers{2}.initFcn = 'initnw'; lu net.performFcn = 'mse'; net.trainParam.goal = 1e-3; ll u nf va an net.trainFcn = 'trainlm'; oi m net.trainParam.epochs = 10000; an Lu net = configure(net,x,t); m co t = num2cell(T); l x = num2cell([R;T]); gm net = init(net); @ net.trainParam.max_fail = 10000; z net.trainParam.time = inf; z at nh net.trainParam.min_grad = 1e-50; n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si [xs,xi,ai,ts]=preparets(net,x,t,{}); net = train(net,xs,ts,xi,ai); net.LW{3,2} = nnplant.IW{1,1}; net.b{3} = nnplant.b{1}; net.IW{3,2} = nnplant.LW{1,2}; net.LW{4,3} = nnplant.LW{2,1}; net.b{4} = nnplant.b{2}; net.biases{3}.learn = 0; net.biases{4}.learn = 0; lu an net.layerWeights{3,2}.learn = 0; n va net.inputWeights{3,2}.learn = 0; tn to net.layerWeights{4,3}.learn = 0; gh net.trainParam.epochs = 10000; p ie view(net) [net,tr] = train(net,xs,ts,xi,ai); w oa nl y = net(xs,xi,ai); d y = cell2mat(y); ll oi m subplot(2,1,1) u nf ti = 1:length(ts); va figure(1) an lu ts = cell2mat(ts); an Lu legend('Error') m co grid on l plot(ti,y-ts,'r') gm subplot(2,1,2) @ grid on z legend('Network Output','Target') z at nh plot(ti,y,'r',ti,ts,'b') n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si figure(2) plot(tr.perf) grid on title('MSE') mse_end = tr.perf(1,end) save thao_BDK net Phụ lục 5: Chƣơng trình chuyển đổi từ mạng hở sang mạng kín điều khiển clc lu an load BDK_mrc n va load thao_BDK tn to C = 3; gh numInputs = 1; p ie numLayers = 4; biasConnect = [1;1;1;1]; w oa nl inputConnect = [1;0;0;0]; d layerConnect = [0 1;1 0 0;0 1;0 0]; lu = va an netc u nf network(numInputs,numLayers,biasConnect,inputConnect,layerConnect); ll netc.outputConnect = [0 0 1]; m oi netc.layers{1}.transferFcn = 'tansig'; z at nh netc.layers{2}.transferFcn = 'purelin'; an Lu netc.layerWeights{3,2}.delays = 1:d32; m co d32 = max(net.layerWeights{3,2}.delays); l netc.layerWeights{3,4}.delays = 1:d34; gm d34 = max(net.inputWeights{3,2}.delays); @ netc.layers{4}.transferFcn = 'purelin'; z netc.layers{3}.transferFcn = 'tansig'; n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si d12 = max(net.layerWeights{1,2}.delays); netc.layerWeights{1,2}.delays = 1:d12; d11 = max(net.inputWeights{1,1}.delays); netc.inputWeights{1,1}.delays = 1:d11; d14 = max(net.inputWeights{1,2}.delays); netc.layerWeights{1,4}.delays = 1:d14; netc.layers{1}.size = net.layers{1}.size; netc.layers{2}.size = net.layers{2}.size; netc.layers{3}.size = net.layers{3}.size; lu an netc.layers{4}.size = net.layers{4}.size; n va netc.trainFcn = 'trainlm'; tn to netc.performFcn = 'mse'; gh netc.trainParam.goal = 0; p ie netc.trainParam.epochs = 1; netc.trainParam.min_grad = 1e-50; w oa nl netc.trainParam.time = inf; d netc.trainParam.sigma = 5e-5; lu va an netc.trainParam.lambda = 5e-7; oi m k = floor(rand*m/C); ll m = length(R2); u nf netc.trainParam.max_fail = 10000; an Lu netc = configure(netc,x,t); m co [t,rt] = batch_data01(C,T2,k,d); l [x,xr] = batch_data01(C,R2,k,d); gm d = 1; @ end z k = 1; z at nh if k == n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si [xs,xi,ai,ts]=preparets(netc,x,t,{}); netc = train(netc,xs,ts,xi,ai); netc.IW{1,1} = net.IW{1,1}; netc.b{1} = net.b{1}; netc.LW{1,2} = net.LW{1,2}; netc.LW{1,4} = net.IW{1,2}; netc.LW{2,1} = net.LW{2,1}; netc.b{2} = net.b{2}; netc.LW{3,2} = net.LW{3,2}; lu an netc.b{3} = net.b{3}; n va netc.LW{3,4} = net.IW{3,2}; tn to netc.LW{4,3} = net.LW{4,3}; gh netc.b{4} = net.b{4}; p ie save thao_BDK1 netc view(netc) w oa nl Phụ lục 6: Chƣơng trình huấn luyện điều khiển cho mơ hình hệ thống d nâng từ Matlab (mạng kín) ll u nf oi m C = 3; va d = 1; an load thao_BDK1 lu clc an Lu for i = 1:N m co figu = cell(2,N); l perfc = cell(1,N); gm netc = cell(1,N); @ net = netc; z m = length(R2); z at nh N = 1997; n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si C = C + 1; net1 = net; k = floor(rand*m/C); if k == k = 1; end net1.trainFcn = 'trainlm'; net1.performFcn = 'mse'; net1.trainParam.goal = 1e-3; lu an net1.trainParam.epochs = 200; n va net1.trainParam.min_grad = 1e-50; tn to net1.trainParam.time = inf; gh net1.trainParam.lambda = 5e-10; p ie net1.trainParam.max_fail = 10000; net1.biases{3}.learn = 0; w oa nl net1.biases{4}.learn = 0; d net1.layerWeights{3,2}.learn = 0; lu va an net1.layerWeights{3,4}.learn = 0; u nf net1.layerWeights{4,3}.learn = 0; ll [x,xr] = batch_data01(C,P,k,d); oi m [t,rt] = batch_data01(C,T,k,d); an Lu netc{1,i} = net; m co net = net1; l [net1,tr] = train(net1,xs,ts,xi,ai); gm [xs,xi,ai,ts]=preparets(net1,x,t,{}); @ net1 = configure(net1,x,t); z figu{2,i} = rt; z at nh figu{1,i} = xr; n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si perfc{1,i} = tr.perf; end figure(1) plot(perfc{1,end}) grid on title('MSE') figure(2) [xs,xi,ai,ts]=preparets(net1,xr,rt,{}); y = net(xs,xi,ai); lu an y = cell2mat(y); n va ts = cell2mat(ts); tn to ti = 1:length(ts); gh subplot(2,1,1) p ie plot(ti,y,'r',ti,ts,'b') legend('Network Output','Target') subplot(2,1,2) oi m mse_end = tr.perf(1,end) ll legend('Error') u nf va an grid on lu plot(ti,y-ts,'r') d oa nl w grid on z at nh save thao_BDK2 netc net1 perfc z m co l gm @ an Lu n va http://www.lrc.tnu.edu.vn ac th Số hóa Trung tâm Học liệu – ĐHTN si lu an n va p ie gh tn to d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu n va ac th http://www.lrc.tnu.edu.vn Số hóa Trung tâm Học liệu – ĐHTN si

Ngày đăng: 24/07/2023, 09:47

Xem thêm: