Tải bản đầy đủ (.doc) (30 trang)

Tiểu luận môn mô hình hóa hệ thống điều khiển và mạng neuron

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.18 MB, 30 trang )

Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

ĐỀ BÀI: Cho tay máy một khớp như hình vẽ
1.Mô hình hóa hệ thống điều khiển trượt cánh tay robot một khớp
2.Ứng dụng mạng Neural truyền thẳng nhận dạng vị trí cánh tay robot một khớp
y
m
l
M1
θ
x

Kr

v2
y
m
v1
M1

Im
x
ω

Hình . Mô hình cánh tay rôbot
Im:
I:
Kr:
1:
l:
m:



Mô men quán tính của động cơ
Mô men quán tính của tay máy
Hệ số giảm tốc của hộp số
Chiều dài cánh tay
Chiều dài cánh tay
Khối lượng của vật

1


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural
A.PHẦN LÝ THUYẾT
1. Tổng quan về bộ não người và Neural sinh học
Hệ thần kinh của con người gồm thần kinh trung ương (não), tủy sống và các dây
thần kinh. Thần kinh trung ương được cấu tạo từ 2 lớp tế bào, tế bào thần kinh (gọi là
neuron) và tế bào glia. Trong đó, glia chỉ thực hiện chức năng hổ trợ, neuron mới trực tiếp
tham gia vào quá trình xử lý thông tin. Bộ não người chứa khoảng 10 11 neuron, với hơn
1014 liên kết giữa chúng, tạo thành một mạng tế bào thần kinh khổng lồ. Hình 1.1 cho thấy
tổng thể của một bộ não người.

Hình 1.1 Bộ não người
Mỗi neuron có phần thân với nhân bên trong (gọi là soma), một đầu thần kinh ra
(gọi là sợi trục axon) và một hệ thống dạng cây các dây thần kinh vào (gọi là dendrite).
xem hình 1.2. Trục dây thần kinh ra cũng có thể phân nhánh theo dạng cây để nối với các
dây thần kinh vào hoặc trực tiếp với nhân tế bào của các neuron khác thông qua các khớp
nối (gọi là synapse). Thông thường mỗi neuron có thể có từ vài chục đến vài trăm ngàn
khớp nối.

Hình 1.2 Cấu trúc của một neuron sinh học

Các tín hiệu truyền trong các dây thần kinh vào và ra của các neuron là tín hiệu điện, được
thực hiện thông qua quá trình giải phóng các chất hữu cơ.Các chất này được phát ra từ các
khớp nối, hình 1.3, dẫn tới các dây thần kinh vào sẽ làm tăng hay giảm điện thế của nhân

2


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural
tế bào. Khi điện thế đạt tới một ngưỡng nào đó (gọi là ngưỡng kích hoạt), sẽ tạo ra một
xung điện dẫn tới trục dây thần kinh ra. Xung này được truyền theo trục tới các nhánh rẽ,
khi chạm vào các khớp nối nối với các neuron khác, sẽ giải phóng các chất truyền điện,
hình 1.4. Người ta chia thành 2 loại khớp nối, khớp kích thích (excitatory) và khớp ức chế
(inhibitory).

Hình 1.3 Khớp nối thần kinh

Hình 1.4 Xung điện trên trục thần kinh
Việc nghiên cứu neuron sinh học cho thấy hoạt động của nó khá đơn giản, khi điện thế ở
dây thần kinh vào vượt quá một ngưỡng nào đó, neuron bắt đầu giật (firing), tạo ra một
xung điện truyền trên dây thần kinh ra đến các neuron khác, cơ chế này cho phép dễ dàng
tạo ra mô hình neuron nhân tạo.
2. Mô hình Neural nhân tạo
2.1. Mô hình Neuron một ngõ vào
Hình 2.1 là mô hình 1 neuron nhân tạo với một ngõ vào.

3


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural


Hình 2.1 Mô hình neuron 1 ngõ vào
Ngõ vào p truyền qua một kết nối có độ lợi w, gọi là trọng số kết nối (weight) tạo thành
wp, sau đó wp được đưa vào hàm kích hoạt f của neuron, gọi là hàm truyền sẽ tạo thành
ngõ ra a của neuron.
a = f(wp)
Trường hợp neuron có ngưỡng kích hoạt12(bias), wp được cộng với b, ngõ ra của neuron
sẽ là
a = f(wp+b)
Quá trình huấn luyện sẽ thay đổi trọng số w và ngưỡng b làm cho quan hệ vào ra p/a thay
đổi theo. Thông thường có 3 hàm truyền được sử dụng nhiều trong thực tế, đó là hàm
Linear, Log sigmoid và Hyperbolic tangent sigmoid.
Hàm truyền tuyến tính – ‘purelin’:
f(n) = n

Hình 2.2 Hàm truyền tuyến tính
Hàm truyền Log Sigmoid – ‘logsig’
1
f (n) 
1  e n

4


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

Hình 2.3 Hàm truyền Log Sigmoid
Hyperbolic tangent sigmoid – ‘tansig’
1  e  2n
f (n) 
1  e  2n


Hình 2.4 Hàm truyền Hyperbolic tangent sigmoid
Bằng cách sử dụng các hàm truyền khác nhau, ta được các neuron có tính chất khác nhau
tương ứng. Neural Network ToolBox của MATLAB cung cấp các hàm truyền được liệt kê
trong bảng 2.1.

Sự tương quan giữa neuron sinh học và neuron nhân tạo như bảng 2.2.
5


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural
Neuron sinh học
Tế bào
Khớp thần kinh
Đầu vào kích thích
Đầu vào ức chế
Kích hoạt bằng tần số
Phạm vi hoạt động giới hạn bởi
lý tính của tế bào

Neuron nhân tạo
Đơn vị (hay gọi là nút trong mạng)
Trọng số kết nối w
Trọng số kết nối dương
Trọng số kết nối âm
Trị ngưỡng b
Phạm vi hoạt động giới hạn bởi
hàm truyền f

2.2. Mô hình neuron nhiều ngõ vào

Tương tự như trên, mô hình neuron nhiều ngõ vào cho bởi hình 2.5, nhưng ngõ vào
p là một véctơ R phần tử
p1, p2, …, pR
Các trọng số kết nối tương ứng với từng ngõ vào là
w1,1, w1,2, …, w1,R
Với ngưỡng kích hoạt b ta có:
n = w1,1p1+ w1,2p2+ … + w1,RpR + b
Biểu diễn dạng véctơ, n = Wp+b, khi đó ngõ ra của neuron vẫn là:
a = f(Wp+b)

Hình 2.5 Mô hình neuron nhiều ngõ vào
3. Mạng Neural
Mạng neuron là một hệ thống gồm nhiều neuron kết nối với nhau và hoạt động
song song. Tính năng của mạng tùy thuộc vào cấu trúc của nó, các trọng số kết nối và quá
trình tính toán tại các neuron đơn lẻ. Mạng neuron có thể học từ dữ liệu mẫu và tổng quát
hóa dựa trên các mẫu đã học.
3.1. Phân loại mạng neuron
Người ta phân loại mạng neuron dựa vào kiểu kết nối của các neuron và dựa vào số lớp
neuron trong mạng
6


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural
Phân loại theo kiểu kết nối các neuron:
Dựa theo kiểu kết nối, ta có mạng neuron truyền thẳng (feedforward Neural Network) và
mạng hồi qui (recurrent NN). Trong mạng truyền thẳng, các kết nối đi theo một hướng
nhất định, không tạo thành chu trình. Ngược lại, các mạng hồi qui cho phép các kết nối
neuron tạo thành chu trình, với đỉnh là các neuron và cung là các kết nối giữa chúng. Các
neuron nhận tín hiệu vào gọi là neuron vào, các neuron đưa thông tin ra gọi là neuron ra,
các neuron còn lại gọi là neuron ẩn.

Phân loại theo số lớp neuron:
Các neuron trong mạng có thể được tổ chức thành các lớp theo nguyên tắc các neuron ở
lớp này, chỉ được nối với các neuron ở lớp khác, không cho phép kết nối giữa các neuron
trên cùng lớp, hoặc từ neuron lớp dưới lên neuron lớp trên, cũng không cho phép kết nối
nhảy qua 1 lớp. Lớp nhận tín hiệu vào gọi là lớp vào, lớp đưa thông tin ra gọi là lớp ra,
các lớp ở giữa gọi là lớp ẩn. Xem hình 3.1. Thông thường lớp vào không tham gia quá
trình tính toán của mạng neuron13, nên khi tính số lớp người ta không kể lớp vào. Ví dụ ở
hình 3.1a, ta có mạng 2 lớp, gồm lớp ẩn và lớp ra.
3.1.1. Mạng neuron một lớp
Mô hình mạng neuron 1 lớp với R neuron vào và S neuron ra14 như hình 3.2. Mỗi
phần tử trong véctơ vào p, được nối với từng nút vào tương ứng (các neuron nằm trên lớp
vào) thông qua ma trận trọng số W

Neuron thứ i (trong lớp tính toán) có:

Ngõ ra tương ứng của neuron thứ i là: ai = f(ni), trong đó f là hàm truyền của neuron.
Chúng ta có thể biểu diễn ngõ ra của mạng:
a = f(Wp+b)

7


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

Hình 3.1 Phân loại mạng neuron

Hình 3.2 Mạng neuron 1 lớp
3.1.2. Mạng neuron nhiều lớp
Một mạng neuron có thể có nhiều lớp, ngõ ra của lớp trước sẽ làm ngõ vào của lớp
sau. Quá trình tính toán trên mạng lần lượt tính toán trên từng lớp, trên mỗi lớp hoàn toàn

giống như tính toán đối với mạng một lớp. Trên hình 3.3, véctơ vào là p, ngõ ra là véctơ a.
8


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural
Tuy nhiên, ta thêm các chỉ số 1, 2, 3 để dễ phân biệt các lớp của mạng.

Hình 3.3 Mạng neuron nhiều lớp
Neural Network ToolBox của MATLAB cung cấp các hàm tạo mạng neuron được liệt kê
trong bảng 3.1.
Bảng 3.1 Các hàm tạo mạng neuron của MATLAB
New Neural Networks
Newc
newcf
newelm
newff
newfftd
newgrnn
newhop
newlin
newlind
newlvq
newp
newpnn
newrb
newrbe
newsom

Create a competitive layer.
Create a cascade-forward backpropagation network.

Create an Elman backpropagation network.
Create a feed-forward backpropagation network.
Create a feed-forward input-delay backprop network.
Design a generalized regression neural network.
Create a Hopfield recurrent network.
Create a linear layer.
Design a linear layer.
Create a learning vector quantization network
Create a perceptron.
Design a probabilistic neural network.
Design a radial basis network.
Design an exact radial basis network.
Create a self-organizing map.

9


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural
4. Huấn luyện mạng Neural
Huấn luyện mạng là quá trình thay đổi các trọng số kết nối cũng như cấu trúc của
mạng sao cho phù hợp với các mẫu học. Người ta phân biệt 3 kỹ thuật học, đó là học có
giám sát (supervised learning), học không giám sát (unsupervised learning) và học tăng
cường (reinforcement learning).
4.1. Học có giám sát
Là giải thuật điều chỉnh các trọng số kết nối dựa vào sự khác biệt giữa ngõ ra thực
tế của mạng (actual network output) và ngõ ra mong muốn (target or desired network
output)15, ứng với một tập tín hiệu vào. Học có giám sát đòi hỏi phải có một teacher hay
supervisor cung cấp ngõ ra mong muốn, vì thế người ta còn gọi là học có thầy. Giả sử ta
có tập mẫu học là {(p,t)}, với p là véctơ vào, t là véctơ ra mong muốn, tức là ứng với ngõ
vào p thì ngõ ra đúng của hệ phải là t. Gọi ngõ ra thực tế của mạng làa,thì giải thuật học

phải điều chỉnh mạng sao cho error=|t-a| nhỏ hơn một tiêu chuẩn nào đó.
Các giải thuật học có giám sát sẽ được đề cập chi tiết hơn ở các phần sau.
4.2. Học không giám sát
Trong phương pháp học không giám sát, không đòi hỏi tập ngõ ra mon muốn, vì
thế người ta gọi là học không thầy. Trong quá trình huấn luyện, chỉ có tập dữ liệu vào
được đưa vào mạng, mạng tự điều chỉnh theo nguyên tắc gộp các mẫu dữ liệu vào có đặc
điểm tương tự thành từng nhóm. Phương pháp này được dùng trong mạng Kohonen và
mạng ART. Có hai giải thuật học không giám sát là: Học cạnh tranh (Competitive
Learning) và Cấu hình tự tổ chức (Self-organizing feature maps – SOFM).
Giải thuật học cạnh tranh
Mạng neuron áp dụng giải thuật học này gọi là mạng cạnh tranh (competitive neural
network). Trong hình 4.1, khối || ndist || nhận véctơ vào p và ma trận trọng số IW1,1, để tạo
ra một véctơ có S1phần tử. Các phần tử của véctơ này có giá trị là khoảng cách Euclidean
âm (Euclidean distance < 0) giữa véctơ vào p và ma trận trọng số IW1,1. Sau đó véctơ này
được cộng với trị ngưỡng b1 tạo thành n1.Hàm truyền cạnh tranh C (competitive transfer
function), nhận n1 và làm cho các ngõ ra của các neuron bằng 0 ngoại trừ winning neuron
sẽ có ngõ ra bằng 1. Winning neuron là neuron mà khoảng cách Euclidean giữa véctơ
trọng số của nó và ngõ vào ít âm nhất, nghĩa là véctơ trọng số của nó gần đúng với véctơ
ngõ vào nhất.

10


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

Hình 4.1 Giải thuật học cạnh tranh
Các trọng số của winning neuron sẽ được cập nhật theo luật sau: Giả sử neuron thứ
i trong mạng là winning neuron, thì các phần tử ở hàng thứ i trong ma trận trọng số được
điều chỉnh như sau:
Trong đó là tốc độ học (learning rate), € [0, 1].Luật cập nhật trọng số này gọi là

luật Kohonen, nó cho phép các trọng số của một neuron học theo véctơ vào. Các neuron
có véctơ trọng số gần giống nhất so với véctơ vào sẽ được điều chỉnh cho gần giống hơn
nữa. Kết quả là, winning neuron ở bước huấn luyện16 thứ (i) sẽ gần giống với winning
neuron ở bước thứ (i+1), và sẽ khác xa so với winning neuron ở một bước huấn luyện nào
đó, mà ở đó véctơ ngõ vào có sự thay đổi.
Khi ta đưa nhiều mẫu huấn luyện khác nhau vào mạng, sẽ dẫn tới sự hình thành
từng nhóm neuron có các đặc điểm gần giống với các mẫu dữ liệu huấn luyện. Sau khi
huấn luyện, mạng sẽ hình thành nhiều nhóm neuron, mỗi nhóm sẽ phản ánh một đặc điểm
nào đó của các mẫu huấn luyện.
Điều này cũng tương đương như việc phân chia các vùng chức năng trên bộ não
người, vì lý do này mà giải thuật học cạnh tranh tỏ ra ưu điểm trong các ứng dụng nhận
dạng, ví dụ dựa trên những đặc điểm ‘thân quen’ còn lại để nhận dạng khuôn mặt người
10 năm sau.
Cấu hình tự tổ chức
Mạng neuron áp dụng giải thuật này gọi là mạng tự tổ chức SOFM (Self- organizing
feature maps), hình 4.2. Mạng này cũng giống như mạng cạnh tranh, chỉ khác ở chổ nó
không dùng ngưỡng kích hoạt b.

11


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

Hình 4.2 Cấu hình tự tổ chức
SOFM nhận biết winning neuron i* cũng giống như trong giải thuật học cạnh tranh, nhưng
thay vì chỉ điều chỉnh trọng số của neuron đó, nó còn điều chỉnh cả trọng số của tất cả các
neuron trong tập neuron láng giềng Ni*(d) của winning neuron i*,bao gồm i* và tất cả các
neuron láng giềng của nó. Các neuron i€ Ni*(d) được điều chỉnh trọng số theo luật sau:

Ta ký hiệu tập neuron láng giềng Ni*(d) với ý nghĩa như sau: Chỉ số i*cho biết winning

neuron là neuron thứ i trong tổng số neuron của mạng, chỉ số d cho biết số neuron láng
giềng của i* nằm trong vòng tròn bán kính là d neuron, tâm là winning neuron.
4.3. Học tăng cường
Học tăng cường là một giải thuật đặc biệt của học có giám sát. Thay vì phải do thầy
cung cấp ngõ ra mong muốn thì giải thuật này sẽ nhờ mộ ‘chuyên gia’ (critic) ước lượng
ngõ ra tốt nhất ứng với một ngõ vào cho trước. Tiêu biểu cho học tăng cường là giải thuật
di truyền (Genetic Algorithm - GA). Giải thuật GA đơn giản nhất được cho bởi lưu đồ
hình 4.3. Giải thuật này bắt đầu bằng cách khởi tạo thế hệ neuron hiện tại một cách ngẫu
nhiên, sau đó áp dụng các phép toán di truyền để tạo thế hệ mớ phù hợp hơn. Các phép
toán di truyền gồm có: Chọn lọc, lai tạo và đột biến. Có thể minh họa phép lai như hình
4.4. Giả sử có 2 chuỗi cha và mẹ, ta cắt 2 chuỗi này thành những đoạn nhỏ bằng nhau có
độ dài ngẫu nhiên, hoán đổi các chuỗi nhỏ này cho nhau ta sẽ thu được 2 con. Đơn giản
nhất là ta cắt chuỗi cha và mẹ thành 2 phần.

12


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

Bắt đầu

Khởi tạo thế hệ hiện tại

Đánh giá

đạt

Kết thúc

Không đạt

Chọn những neuron tốt

Lai tạo, đột biến

Thế hệ mới

Hình 4.3. Giải thuật GA
Cha:
100 010011110
Mẹ:
001 011000110
Con1:
100 011000110
Con2:
001 010011110
Hình 4.4 Phép lai của GA

13


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural
5.Nhận dạng đối tượng dùng mạng Neural
Giả sử ta có hệ thống nhận dạng đối tượng dùng mạng nơ-ron như hình 1:
x

Đối tượng P

y=d
+


x

+

x-x1

d-y1

Mạng nơ-ron

Đối tượng P

y1

x1

a)

+

y

+
Mạng nơ-ron
b)

Hình5. 1Cấu trúc mạng nơ-ron nhận dạng đối tượng điều khiển
a) Mô hình thuận

b) Mô hình ngược

Ta sử dụng mô hình thuận (hình5. 1-a) để nhận dạng đối tượng. Tín hiệu vào x được
đưa vào đồng thời cho cả đối tượng P và mạng nơ-ron. Tín hiệu ra của mạng nơ-ron y1
được so sánh với tín hiệu ra y của đối tượng P. Ta có sai lệch d-y1. Trong đó:
 d=y là tín hiệu ra của đối tượng ứng với tín hiệu vào x , đây cũng chính là tín
hiệu ra mong muốn đạt được của mạng nơ-ron
 y1 là tín hiệu ra thực của mạng nơ-ron.
Chuẩn của vec-tơ sai lệch 1‫׀׀‬y-d‫ ׀׀‬sẽ được sử dụng để đào tạo mạng nơ-ron. Nó sẽ
được lan truyền ngược trên toàn cấu trúc mạng để thay đổi khối lượng liên kết giữa các
nơ-ron để giảm thiểu độ sai lệch này. Kết quả ta sẽ có một mạng nơ-ron sau khi đào tạo sẽ
thực hiện một ánh xạ x→y1 ~y với bất kỳ một cấp chính xác kỳ nào mà ta mong muốn.
Mạng nơ-ron sau khi đào tạo chính là mô hình đồng dạng của đối tượng điều khiển.
Tương tự như vậy, ta sử dụng cấu trúc nhận dạng mô hình ngược của đối tượng P như
hình 5.1-b. Tín hiệu ra y của đối tượng P được sử dụng làm tín hiệu vào của mạng nơ-ron.
Tín hiệu ra của mạng nơ-ron x1 được so sánh với tín hiệu vào của đối tượng P. Chuẩn của
véc-tơ sai lệch ‫׀׀‬x-x1‫ ׀׀‬sẽ được sử dụng để đào tạo mạng nơ-ron. Nó được lan truyền
ngược trên toàn cấu trúc mạng để thay đổi khối lượng liên kết giữa các nơ-ron để làm
giảm thiểu độ sai lệch này. Mạng nơ-ron sau khi đào tạo sẽ chính là mô hình ngược của
đối tượng P. Nó thực hiện một ánh xạ ngược y→x 1 ~x với bất kỳ một cấp chính xác kỳ
nào mà ta mong muốn. Tuy nhiên, nếu mô hình ngược của đối tượng P không tồn tại duy
nhất, nghĩa là ứng với một giá tị của y sẽ có nhiều hơn một giá trị của x, thì ta không thể
thực hiện nhận dạng thành công được, chẳn hạn như trên hình 5. 2. Trong trường hợp này,
mạng nơ-ron chỉ thực hiện được một ánh xạ ngược y→x 1 bằng giá trị trung bình của các
giá trị x.

14


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

y


y

yb

yb
y*

ya
0

ya
xa

a)

xb

0

x

xa x1

b)

x2 xb

x


Hình 5. 2 Ví dụ nhận dạng mô hình ngược
Mô hình ngược tồn tại duy nhất
Mô hình ngược không tồn tại duy nhất
Khi tham số của đối tượng thay đổi trong quá trình hoạt động, các khối lượng của
mạng nơ-ron sẽ được thay đổi thích nghi với sự thay đổi tham số đó của đối tượng nếu
mạng được đào tạo on-line. Như vậy nhận dạng đối tượng điều khiển dùng mạng nơ-ron
mang tính thích nghi với sự thay đổi tham số của đối tượng trong quá trình hoạt động.
Hình 5.3-a trình bày một cấu trúc mạng được đào tạo on-line để nhận dạng một đối tượng
điều khiển trong một hệ hở. Trong mô hình này có hai mạng nơ-ron A và B. Bộ điều khiển
nơ-ron B là một phiên bản sao chép y nguyên theo mạng nơ-ron A. Mạng nơ-ron A được
đào tạo nhận dạng mô hình ngược của đối tượng. Mạng nơ-ron B sẽ bám theo mạng nơron A sau mỗi một bước đào tạo, nên tín hiệu vào d của bộ điều khiển nơ-ron B sẽ bằng tín
hiệu ra y của đối tượng P, có nghĩa là d=y. Vậy tín hiệu vào của bộ điều khiển nơ-ron B
chính là tín hiệu mong muốn nhận được của hệ thống. Nhưng ta lưu ý rằng sơ đồ này chỉ
có thể thực hiện được khi mô hình ngược của đối tượng tồn tại duy nhất. Mặt khác, sơ đồ
này không kinh tế vì phải sử dụng đến hai mạng nơ-ron.
Sơ đồ điều khiển hình 5.3-b có chức năng giống như sơ đồ điều khiển trên hình 5-a,
nhưng nó chỉ cần duy nhất một mạng nơ-ron. Tín hiệu vào mạng nơ-ron là giá trị mong
muốn nhận được của hệ thống. Chuẩn của vec-tơ sai lệch ‫׀׀‬d-y|| được sử dụng để đào tạo
mạng nơ-ron. Mạng nơ-ron được đào tạo chính là mô hình ngược của đối tượng.
Chú ý rằng, các sơ đồ nhận dạng điều khiển ở trên chỉ dùng cho các hệ thống tĩnh,
nghĩa là tín hiệu vào/ra là bất biến với thời gian. Đối với hệ thống động, mạng nơ-ron sẽ
cần đến các tín hiệu ra của hệ thống ở các thời điểm trước đó để nhận dạng đối tượng. Vì
thế ta sẽ thêm vào các khâu lấy trễ tín hiệu ra và dùng làm tín hiệu vào cấp cho mạng nơron.

15


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

d


x

Bộ điều khiển
nơ-ron B

x-x1

+

y

Đối tượng P
+
Mạng nơ-ron

x1

a)

x

Mạng nơ-ron

y

Đối tượng P
+
-


b)

+

d-y
y1

Hình 5.3 Điều khiển hệ hở với mạng nơ-ron nhận dạng mô hình ngược
a) Dùng hai mạng nơ-ron
b) Dùng một mạng nơ-ron

16


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

B. PHẦN BÀI TẬP
1. Mô hình hóa hệ thống điều khiển trượt cánh tay robot một khớp
1.1 Xây dựng mô hình toán học:
* Động năng hệ thống:
- Động năng cho phần quay:

1
1
K 1  I m 2  I 2
2
2
 K r
- Động năng cho M1:


1
1
 
K 2  M 1v12  M 1 2  
2
2
2

P2 M 1 g sin
2

2

- Động năng cho m:

1
1
K 3  mv22  m 2 2
2
2
P3 mgsin 
* Theo công thức Lagrange:

L K 1  K 2  K 3  P2  P3
1
1 M

M

2

I m K r  I  2   1  m 2 2   1  m  gsin
2
2 4

 2

d  L  L
   
dt    
L 
M
 
2
 I m K r  I   1  m 2 
 
 4
 






d  L 
  K 1
dt   
L
M

  1  m  gcos


 2

Suy ra:  K 1  K 2 g cos 
Khi kể đến ma sát thì ta có:

 K 1  K 2 g cos   Fm
Mô men của động cơ sinh ra:


   Fm  K 2 g cos 
K1
17


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural
Trong đó:

M

2
K 1  I m K r  I   1  m 2
 4

M

K 2  1  m 
 2

Ở đây bài toán đặt ra là:

Cho khối lượng m thay đổi
Fm không biết trước
Im, I, l, Kr, g đã biết trước
Yêu cầu θ đi theo θ đặt trước, chẳng hạn: θđặt =asin(ωt).
1.2 Xây dựng bộ điều khiển khiển trượt:
- Xét cho hệ SISO có dạng:

x ( n )  f ( x )  b( x ).u  d ( x ,t )

(1)

với hệ có mô hình như (1) áp dụng cho canh tay Robốt, ta có:

  Fm  K 2 g cos
 
K1
chọn:
U=Ueq+USL



Với: U eq bˆ  1  fˆ  xd  h1e



bˆ  bmax .bmin

1

 bmax 

M
2
I m K r  I  1 2


4

1
b 
min
5M 1 2

2
I
K

I


m
r

4
Và: U SL  K .sign( s )
Trong đó:

K




F  D  1   . fˆ  h1e  
bmin
bmax
bmin

  0 ; chọn η = 0,5
s h 1 e  e ,
h1>0
F F  Fˆ 0
m

m

m

18


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

D 0
Như vậy mô hình cánh tay Robôt là:

bmin 

1
2

Im Kr  I 


5M 1 2

4

b 

1

K1

1
1

bmax
 M1
 2 I K 2  I  M 1 2
2
Im Kr  I  
 m 
m r
4
 4


(2)
Với  dat a sin t

e    đat
Từ mô hình của cánh tay Robôt và cơ sở của bộ điều khiển trượt được trình bày
như trên, ta mô hình hóa hệ thống điều khiển cánh tay Robôt như sau:


Hình 1.1 Sơ đồ khối điều khiển cánh tay Robot

19


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural
Hình 1.2 Sơ đồ khối bộ mô hình cánh tay rôbot (khối Robot 1 link)

Hình 1.3 Sơ đồ khối bộ quỹ đạo đầu vào chuẩn (khối Trajectory)

Hình 1.4 Sơ đồ khối điều khiển theo nguyên lý trượt

20


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

Hình 1.5 Khai báo thông số Robot

Hình 1.6 Quỹ đạo mặt trượt

21


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

Hình 1.7 Quỹ đạo đầu vào

Hình 1.8 Quỹ đạo đầu ra thực tế


22


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

Hình 1.9 Tín hiệu sai lệch
Hình 1.10 Tín hiệu điều khiển
2. Ứng dụng mạng Neural nhận dạng vị trí cánh tay Robot một khớp
Ta có:

  Fm  K 2 g cos 
 
K1
 K    F   K g cos 
1

m

2

 K1  Fm   K 2 g cos 
tượng
K 2 g cos ,  2  KĐối
Đặt  2 1
2 g cos  là hàm xác định rõ nên không cần nhận
+
dạng,  1  K1  Fm có tính chất phi tuyến cao, do đó ta dùng mạng Neural tập trung
(k)


 (k )

 (k )

vào nhận dạng hàm này.

Mạng Neural

Mô hình
23nhận dạng


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural

Xác định cặp dữ liệu vào ra (P, T) để huấn luyện mạng:

  Fm
Ta có:   1
K1

 K1S 2 ( S )  1 ( S )  Fm S ( S ) .
 ( K1S 2  Fm S ) ( S )  1 ( S )
 (S )
1
 G(s) 

 1 ( S ) K1S 2  Fm S

Chương trình M-file xác định thông số hàm truyền đạt đối tượng rời rạc:
Im=0.1;

I=0.2;
M1=2;
m=1;
g=9.81;
l=1;
Kr=0.5;
Fm=0.2;
K1=(Im*Kr*Kr+I+M1*l*l/4+m*l*l);
% Tinh ham truyen
G=tf([1],[K1 Fm 0])
Gz=c2d(G,0.1)
Kết quả:

24


Tiểu luận Mô hình hóa hệ thống ĐL-ĐK và Điều khiển mạng Neural
Transfer function:
1
---------------------1.725 s^2 + 0.2 s
Transfer function:
0.002887 z + 0.002876
---------------------------z^2 - 1.988 z + 0.9885
Sampling time: 0.1
Đặt G ( z ) 






T ( z ) 0.002887 z  0.002876 0.002887 z  1  0.002876 z  2
 2

P( z )
z  1.988 z  0.9885
1  1.988 z  1  0.9885 z  2

T ( z ) 0.002887 z  0.002876 0.002887 z  1  0.002876z  2
G( z) 
 2

P( z )
z  1.988 z  0.9885
1  1.988 z  1  0.9885z  2
(1  1.988z  1  0.9885 z  2 )T ( z ) (0.002887 z  1  0.002876 z  2 ) P( z )
T (k )  1.988T (k  1)  0.9885T (k  2) 0.002887 P(k  1)  0.002876 P(k  2)
T (k ) 0.002887 P( k  1)  0.002876 P(k  2)  1.988T (k  1)  0.9885T (k  2)

Chương trình huấn luyện mạng:
%Thiet lap cap du lieu vao/ra de huan luyen mang
T(1)=0;
T(2)=0;
% Tao 600 mau ngau nhien (-5:5)
P=rand(1,600)*10-5;
for k=3:600
T(k)=0.002887*P(k-1)+0.002876*P(k-2)+1.988*T(k-1)-0.9885*T(k-2);
in(k-1)=T(k)/10;
end;
plantin=[in(2:598);in(3:599)];
plantout=T(2:598)/10;

%Chon so do mang noron, phuong phap dao tao, thiet lap cac tham so va chi tieu trong
qua trinh dao tao
net=newff(minmax(plantin),[1 10 1],{'tansig' 'tansig' 'tansig'}, 'trainlm', 'learngdm','mse')
net=init(net);
net.iw{1,1}
25


×