LỜI CAM ĐOAN .i
LỜI CẢM ƠN .ii
MỤC LỤC.iii
DANH MỤC CÁC BẢNG BIỂU .v
DANH MỤC CÁC HÌNH VẼ VÀ ĐỒ THỊ .vi
MỞ ĐẦU.1
1. TÍNH CẤP THIẾT CỦA ĐỀ TÀI . 1
2. MỤC TIÊU, ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU . 2
2.1 Mục tiêu nghiên cứu. 2
2.2 Đối tượng nghiên cứu. 2
2.3 Phạm vi nghiên cứu. 2
3. PHƯƠNG PHÁP NGHIÊN CỨU. 2
4. Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN CỦA ĐỀ TÀI . 3
4.1 Ý nghĩa khoa học . 3
4.2 Ý nghĩa thực tiễn. 3
Chương I. TỔNG QUAN VỀ CHUYỂN ĐỘNG ĐẲNG TỐC KHÔNG GIAN .4
1.1 Các cơ cấu đổi hướng chuyển động trong không gian. 4
1.2 Một số nghiên cứu điển hình về cơ cấu khớp thấp . 6
1.3 Hướng nghiên cứu của đề tài . 10
KẾT LUẬN. 11
Chương 2: PHƯƠNG PHÁP GIẢM GRADIENT TỔNG QUÁT .12
2.1 Khái niệm Gradient . 12
2.2 Phương pháp giảm Gradient (Reduced Gradient). 13
2.3 Phương pháp giảm Gradient tổng quát . 18
2.4 Ảnh hưởng của phép tính sai phân đến độ chính xác của bài toán . 20
2.5 Trình tối ưu Solver của Excel . 23
KẾT LUẬN CHƯƠNG 2. 33
Chương 3: KHẢO SÁT ĐỘNG HỌC CƠ CẤU KHỚP THẤP BẰNG RGG .34
3.1 Mô hình hóa truyền động trục bằng kỹ thuật robot. 34
3.2 Khảo sát tính đẳng tốc truyền động trục . 35
3.3 Khảo sát giới hạn chuyển hướng của truyền động trục. 36
3.4 Minh họa tính đẳng tốc một số cơ cấu truyền động trục. 37
59 trang |
Chia sẻ: honganh20 | Ngày: 26/02/2022 | Lượt xem: 374 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Luận văn Phương pháp số cho bài toán động học cơ cấu khớp thấp hụt dẫn động, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
PHƯƠNG PHÁP GIẢM GRADIENT TỔNG QUÁT
TRONG KỸ THUẬT ROBOT
Vì cơ cấu chuyển hướng không gian sử dụng toàn khớp thấp như đề cập đến
trong chương 1 sẽ được tác giả xem như một robot hụt dẫn động. Công cụ hiệu quả
nhất cho bài toán động học của đối tượng này là phương pháp GRG [6]. Chương 2
này sẽ trình bày các vấn đề cơ bản nhất về phương pháp GRG làm cơ sở cho
chương 3.
2.1 Khái niệm Gradient
Trong giải tích vectơ, gradient của một trường vô hướng là một vectơ có chiều
hướng về phía mức độ tăng lớn nhất của trường vô hướng:
y= f (x1,, xn) (2.1)
Theo định nghĩa, gradient là một vectơ cột mà thành phần là đạo hàm theo tất cả
các biến củaf:
1
1
,...,
T
n
n
y y
f
x x
(2.2)
*Ý nghĩa của gradient
Ví dụ, nhiệt độ trong một căn phòng được cho bởi một trường vô hướng t,
sao cho tại mỗi điểm (x; y; z) nhiệt độ là t(x; y; z) (giả thiết rằng nhiệt độ không
thay đổi theo thời gian). Trong trường hợp này, tại mỗi điểm trong căn phòng,
gradient của t tại điểm đó cho biết hướng mà theo đó nhiệt độ tăng lên nhanh nhất.
Độ lớn của gradient quyết định nhiệt độ thay đổi nhanh đến mức nào nếu ta đi theo
hướng đó.
Trong một ví dụ khác, một ngọn đồi có độ cao so với mực nước biển tại
điểm (x; y) là H(x; y) . Gradient của H tại mỗi điểm là một vector chỉ theo hướng
dốc nhấttại điểm đó. Độ dốc của dốc này được cho biết bởi độ lớn của vector
gradient.
13
Gradient còn có thể được dùng để đo sự thay đổi của một trường vô hướng
theo những hướng khác, không chỉ hướng có sự thay đổi lớn nhất, bằng cách lấy
tíchđiểm. Trong ví dụ ở trên, giả sử dốc lên đồi dốc nhất là 40%. Nếu một con
đường đi thẳng lên đồi thì đoạn dốc nhất trên con đường đó cũng là 40%. Nếu thay
vì đi thẳng, con đường này đi vòng quanh đồi theo một góc, nó sẽ kém dốc hơn[8].
2.2 Phương pháp giảm Gradient (Reduced Gradient)
Trong toán tối ưu, chúng ta thường xuyên phải tìm giá trị nhỏ nhất (hoặc đôi
khi là lớn nhất) của một hàm số nào đó. Nhìn chung, việc tìm giá trị nhỏ nhất của
các hàm là rất phức tạp, thậm chí là bất khả thi. Thay vào đó, người ta thường cố
gắng tìm các điểm cực tiểu, và ở một mức độ nào đó, coi đó là nghiệm cần tìm của
bài toán.
Các điểm cực tiểu là nghiệm của phương trình mà tại đó đạo hàm bằng 0.
Nếu bằng một cách nào đó có thể tìm được toàn bộ (hữu hạn) các điểm cực tiểu, ta
chỉ cần thay từng điểm cực tiểu đó vào hàm số rồi tìm điểm làm cho hàm có giá trị
nhỏ nhất. Tuy nhiên, trong hầu hết các trường hợp, việc giải phương trình đạo hàm
bằng 0 là bất khả thi. Nguyên nhân có thể đến từ sự phức tạp của dạng của đạo hàm,
từ việc các điểm dữ liệu có số chiều lớn, hoặc từ việc có quá nhiều điểm dữ liệu.
Hướng tiếp cận phổ biến nhất là xuất phát từ một điểm mà chúng ta coi
là gần với nghiệm của bài toán, sau đó dùng một phép toán lặp để tiến dần đến điểm
cần tìm, tức đến khi đạo hàm gần với 0. Giảm Gradient và các biến thể của nó là
một trong những phương pháp được dùng nhiều nhất. [7][8]Phương pháp giảm
Gradient có thể được xem như là sự mở rộng của phương pháp Gradient đối với bài
toán tối ưu có ràng buộc(Linearly Constrained optimization (LC)). Xét bài toán lồi
có ràng buộc tuyến tính sau:
(LC) min f (x)
Sao cho Ax = b,
x ≥ 0
(2.3)
Các giả thuyết:
f làkhả vi và liên tục;
14
Mỗi tập con của m cột của ma trận A cỡ là độc lập tuyến tính;
Mỗi điểm cực trị của tập khả thi có ít nhất m phần tử dương (giả thuyết
không suy biến).
Hoàn toàn chứng minh được rằng theo giả thuyết không suy biến, mỗi có ít
nhất m phần tử dương.
Nếu , gọi một tập gồm m cột B của A là một cơ sở nếu thì cột i là một cột
của B. Chia xthành biếncơ sở và các biến không cơ sở sao cho các biến cơ sở
tương ứng với các cột của B. Chú ý rằng không bắt buộc bằng 0.
Để đơn giản các ký hiệu, giả thiết rằng có thể phân chia ma trận Athành A = [B, N]
và phân chia x cho phù hợp, với . Do đó ta có thể viết lại Ax = b thành:
(2.4)
Do đó
(2.5)
( tồn tại theo giả thuyết)
Với , chúng ta sẽ chọn B là các cột tương ứng với các thành phần lớn nhất m
của x.
Các biến cơ sở bây giờ có thể bị loại bỏ khỏi bài toán (2.3) để có được bài toán
cực tiểu:
Sao cho:
,
Trong đó
.
Chú ý rằng bất kỳ hướng khả thi s đối với bài toán (LC) trong (2.3) đều phải thỏa
mãn As = 0. Nếu chúng ta viết đối với một cơ sở B cho trước, điều kiện
As = 0 có thể viết lại thành:
15
Giải phương trình này được:
(2.6)
Chọn hướng tìm kiếm
Nhắc lại rằng s là một hướng giảm của f tại khi và chỉ khi , điều
này tương đương với
Với là gradient tương ứng với các biến cơ sở, thay từ (2.6) có:
Gọi:
(2.7)
là gradient giảm của f tại x đối với B cơ sở.
Như vậy:
Nói cách khác, gradient giảm r đóng vai trò tương tự trong bài toán giảm như
gradient đã làm trong bài toán gốc (LC). Trên thực tế, gradient giảm chính xác là
gradient của hàm với trong bài toán giảm.
Bên cạnh đó chứng minh được rằng , trong đó:
.
Nhắc lại rằng phương pháp gradient sử dụng hướng tìm kiếm .
Tương tự, ý tưởng cơ sở cho phương pháp giảm gradient là sử dụng gradient giảm
âm như hướng tìm kiếm cho các biến , và sau đó tính hướng tìm kiếm đối
với các biến từ
(2.8)
Tại phép lặp k của thuật toán chúng ta thực hiện một thuật toán line search nhằm
tìm sao cho:
Trong đó là một cận trên trên chiều dài bước khả thi tối đa và được cho bởi:
16
= (2.9)
Sự lựa chọn này đối với bảo đảm rằng và
Những hiệu chỉnh cần thiết đối với hướng tìm kiếm
Nếu chúng ta chọn , khi đó có thể xảy ra và tại phép lặp i
nào đó.Trong trường hợp này và chúng ta không thể thực hiện được bước
tìm kiếm. Một nghiệm với tập các phần tử không cơ sở có thể có các tình huống
sau:
(2.10)
Chú ý rằng điều này tránh được các bước 0 và các bước rất nhỏ.
Kết quả hội tụ
Vì phương pháp giảm gradient có thể được xem là một sự mở rộng của
phương pháp gradient, không có gì là bất ngờ rằng các kết quả hội tụ ở phương
pháp giảm gradient tương tự như đối với phương pháp gradient. Giả định rằng
phương pháp giảm gradient phát sinh các giá trị lặp:
Định lý 2.1Hướng tìm kiếm tại luôn là một hướng giảm có thể khả thi trừ khi
. Nếu , thì là một điểm KKT của bài toán (LC).
(Điều kiện tối ưu Karush-Kuhn-Tucker (KKT))
So sánh điều này với phương pháp gradient trong đó, theo định nghĩa, khi và
chỉ khi là một điểm dừng (
Thuật toán giảm gradient: tóm tắt
1. Sự khởi tạo
Chọn một điểm bắt đầu sao cho Ax = b. Đểk = 0
2.Bước chính
[1.1] Hình thành B từ những cột của A tương ứng với các thành phần lớn
nhất mcủa .
17
Xác định Nlà các cột còn lại của A, xác định là các phần tử của tương
ứng với B,và xác định tương tự.
[1.2] Tính gradient giảm r từ (2.7)
[1.3] Tính từ (2.10) và từ (2.8). Hình thành từ và .
[1.4] Nếu , DỪNG LẠI ( là một điểm KKT)
3. Line search
[2.1] Tính từ (2.9)
[2.2] Thực hiện thuật toánline search
[2.3] Đặt và thay k bằng k + 1.
[2.4] Lặp lại bước chính.
Nhận xét:
Trong toàn bộ thuật toán, nghiệm không nhất thiết phải là một nghiệm cơ
sở, do đó các tọa độ dương trong có thể xuất hiện. Các biến này thường
được đề cập đến như là các biến siêu cơ sở.
Nhớ lại rằng chúng ta đã đưa ra một giả thuyết không suy biến khó kiểm tra
trong thực tiễn. Nếu suy biến xảy ra trong thực tế, các kỹ thuật tương tự như
trong trương hợp tối ưu tuyến tính được áp dụng để giải quyết suy biến và
ngăn chặn chu kỳ.
Phương pháp đơn hình lồi thu được như là sự chuyển hóa của sơ đồ giảm
gradient ở trên nếu định nghĩa hướng tìm kiếm được sửa đổi. Chúng ta chỉ
cho phép một tọa độ j của khác 0 và được xác định theo: .
Phần còn lại của tọa độ được xác định bằng 0 và ,
trong đó là cột thứ j của ma trận A.
18
Phương pháp đơn hình của LO thu được như một sự chuyên môn hóa của
Phương pháp đơn hình lồi. Người ta giả thuyết rằng hàm mục tiêu là tuyến
tính và nghiệm đầu tiên là một nghiệm cơ sở.
2.3 Phương pháp giảm Gradient tổng quát
Trước khi phát triển thuật toán giảm Gradient tổng quát, vài phương pháp quy
hoạch phi tuyến đã chỉ có thể được giải quyết trong những trường hợp đặc biệt.
Năm 1963 và 1967, Wolfe đã phát triển một thuật toán mà có thể giải quyết các bài
toán với hàm mục tiêu phi tuyến và ràng buộc tuyến tính. Sự mở rộng của phương
pháp của Wolfe để giải một dạng tổng quát của bài toán quy hoạch phi tuyến, với
tên gọi là Generalized Reduced Gradient (GRG) đã được trình bày bởi Abadie và
Carpentier vào năm 1967.
Phương pháp giảm gradient có thể được tổng quát hóa cho bài toán tối ưu có
ràng buộc phi tuyến. Tương tự với trường hợp có ràng buộc tuyến tính, chúng ta xét
bài toán với các ràng buộc là đẳng thức và các biến không âm như sau:
min f(x)
Sao cho (2.11)
,
Trong đó các hàm f, h1,...,hmđược cho là khả vi và liên tục.
Ý tưởng cơ sở là thay thế các phương trình phi tuyến bằng phép xấp xỉ Taylor
tuyến tính của chúng tại giá trị hiện tại của x, và sau đó áp dụng thuật toán giảm
gradient để cho kết quả bài toán.
Giả định rằng gradient của các hàm ràng buộc là độc lập tuyến tính tại mọi
điểm , và do đó mỗi x khả thi có ít nhất m phần tử dương. Những giả định này
bảo đảm rằng chúng ta có thể luôn áp dụng thuật toán giảm gradient đối với bài toán
tuyến tính hóa. Khó khăn thêm ở đây là vìvùng khả thi không phải là lồi. Quy
trình nàycó thể tạo ra phép lặp nằm ngoài , và sau đó cần bổ sung một số yếu tố
cần thiết để khôi phục lại tính khả thi.Cho một nghiệm khả thi với
với tất cả j đã cho. Theo giả thuyết ma trận Jacobian của các ràng buộc
19
tại mỗi có đủ hạng, để đơn giản tại điểm sẽ được
biểu thị bởi .
Giả định rằng tìm đượcmột B cơ sở,với . Sau đó xây dựng tương tự như
áp dụngtrong trường hợp tuyến tính. Chúng ta tạo ra một hướng tìm kiếm giảm
gradient bằng cách giữ gần hết những ràng buộc tuyến tính hóa hợp lệ. Bằng cách
xây dựng theo hướng này sẽ được trong không gian rỗng của A. Cụ thể, đối với các
ràng buộc tuyến tính hóa ta có:
Từ đây ta có
Và vì b = nên
Do đó các biến cơ sở có thể bị loại khỏi tuyến tính hóa của bài toán (2.11). Bài
toán lúc này trở thành:
min
sao cho
.
Trong đó . Sử dụng ký hiệu:
Gradient của gọi là gradient giảm có thể được biểu diễn như sau:
Từ bước tiếp theo sự hình thành hướng tìm kiếm s tiếp tục theo cách tương
tựnhư trong trường hợp bị ràng buộc tuyến tính. Do tính phi tuyến của các ràng
buộc nhìn chung sẽ không cố định. Do đó cần phải tiến
hành thêm vài bước để khôi phục tính khả thi.
Cần chú ý đặc biệt đến kiểm soát kích cỡ bước. Kích cỡ bước lớn hơn có thể
cho phép sự cải tiến lớn hơn của mục tiêu nhưng mặt khác, lại dẫn đến tính không
khả thi lớn hơn của các ràng buộc.
20
Trong các phiên bản cũ của phương pháp GRG, phương pháp Newton được
áp dụng đối với hệ đẳng thức phi tuyếnH(x) = 0 từ điểm ban đầu để tạo ra một
phép lặp khả thi tiếp theo. Trong những bổ sung gần đây, hướng giảm gradient được
kết hợp bởi một hướng từ không gian con trực giao (miền không gian của AT) và sau
đó thuật toánline search (rời rạc, phi tuyến) đã hiệu chỉnh được tiến hành. Các sơ đồ
này khá phức tạp và không được thảo luận chi tiết tại đây.
2.4 Ảnh hưởng của phép tính sai phân đến độ chính xác của bài toán
Vì là phương pháp có sử dụng đạo hàm theo phân loại bài toán tối ưu nên
ảnh hưởng của đạo hàm đến độ chính xác kết quả cũng như tốc độ tìm kiếm cần
được bàn luận.
Trước hết chúng ta nhắc lại cách tính đa thức nội suy của Newton dưới dạng tổng
quát như sau:
Trên đoạn a x b cho một lưới các điểm chia ix , i = 0, 1, 2,.., n:
1 2, ,..., na x x x b (2.12)
Tại các nút ix cho giá trị của hàm số y = f(x) là ( )i iy f x , i = 1, 2,...,n
Bảng 2.1. Dữ liệu nội suy đa thức Newton
x x0 x1 x2 ... xn-1 xn
y y0 y1 y2 ... yn-1 yn
Hãy xây dựng một đa thức bậc n:
n n 1n 0 1 n 1 np x a x a x a x a
Sao cho np x trùng với f(x) tại các nút px nghĩa là:
n i ip x y , i = 0, 1, 2,..., n
Tỉ hiệu cấp 1 của y tại xi, xj là:
i j
i j
i j
y y
y x ,x
x x
(2.13)
Tỉ hiệu cấp hai của y tại xi, xj, xk là:
i j j k
i j k
i k
y x ,x y x ,x
y x ,x ,x
x x
(2.14)
21
v.v...
Các tỉ hiệu này có tính đối xứng:
i j j iy x , x y x , x
i j k k j iy x , x , x y x , x , x
Với y(x) = Pn(x) là một đa thức bậc n thì tỉ hiệu cấp một tại x, x0 là:
n n 0
n 0
0
P x P x
P x,x
x x
(2.15)
Là một đa thức bậc n – 1, tỉ hiệu cấp hai tại x, x0, x1 là:
n 0 n 0 1
n 0 1
1
P x,x P x ,x
P x,x ,x
x x
(2.16)
Là một đa thức bậc n – 2, và tới tỉ hiệu cấp n + 1 thì:
n 0 nP x,x ,...,x 0 (2.17)
Từ định nghĩa của các tỉ hiệu ta suy ra:
n n 0 0 n 0
n 0 n 0 1 1 n 0 1
n 0 1 n 0 1 2 2 n 0 1 2
n 0 n 1 n 0 1 n n n 0 n
P x P x x x P x,x
P x,x P x ,x x x P x,x ,x
P x,x ,x P x ,x ,x x x P x,x ,x ,x
.................
P x,x ,..., x P x ,x ,..., x x x P x,x ,..., x
(2.18)
Vì n 0 nP x,x ,...,x 0 , nên từ đó ta có
n n 0 0 n 0 1
0 1 n 0 1 2
0 n 1 n 0 n
P x P x x x P x ,x
x x x x P x ,x ,x
x x x x P x ,...,x
(2.19)
Nếu Pn(x) = pn(x) là đa thức nội suy của hàm y = f(x) thì:
n i n i i iP x p x f x y , i 0,1,..., n.
Do đó các tỉ hiệu từ cấp một đến cấp n của Pn và của y ở (2.19) là trùng nhau. Vì
vậy thay cho (2.19) ta có:
22
n 0 0 0 1
0 1 0 1 2
0 1 n 1 0 n
p x y x x y x ,x
x x x x y x ,x ,x
x x x x x x y x ,...,x
(2.20)
Đa thức này là đa thức Newton tiến xuất phát từ nút xn của hàm y = f(x).Đa thức sau
đây là đa thức Newton lùi xuất phát từ nút xn của hàm y = f(x):
n n n n n 1
n n 1 n n 1 n 2
n n 1 1 n 0
P x y x x y x ,x
x x x x y x ,x ,x
x x x x x x y x ,...,x
(2.21)
Giả sử các nút xi cách đềuxi = x0 + ih, i = 0,1,..,nkhi đó h gọi là bước nội suy.
Sai phân tiến cấp một tại i: i i 1 iy y y
Sai phân tiến cấp hai tại i: 2 i i i 2 i 1 iy y y 2y y
Sai phân tiến cấp n tại i là: n n 1i iy y
Khi đó ta có:
0
0 1
2
0
0 1 2 2
n
0
0 n n
y
y x ,x
h
y
y x ,x ,x
2h
....................
y
y x ,..., x
n!h
(2.22)
Bây giờ đặt x = x0 + ht trong đa thức Newton tiến (2.20) ta được:
0
2 n
n 0 0 0 0x x ht
t t 1 t t 1 t n 1
p x y t y y y
2! n!
(2.23)
Gọi là đa thức Newton tiến xuất phát từ x0 trong trường hợp nút cách đều.
Với n = 1 ta có:
0
1 0 0x x ht
p x y t y
(2.24)
Với n = 2 ta có:
0
2
2 0 0 0x x ht
t t 1
p x y t y y
2t
(2.25)
Một cách tương tự, sai phân lùi tại i:
23
i i i 1
2
i i i i 1 i 2
n n 1
i i
y y y
y y y 2y y
...........
y y
(2.26)
Đa thức nội suy Newton lùi xuất phát từ xn trong trường hợp nút cách đều:
0
2 n
n n n n nx x ht
t t 1 t t 1 t n 1
p x y t y y y
2! n!
(2.27)
Với bài toán có các ràng buộc tuyến tính thay đổi chậm như bài toán tối ưu
động học robot với hàm mục tiêu ở dạng Banana Rosenbrock và dùng thuật toán
GRG để giải quyết thì sai phân tiến sẽ cho độ chính xác kết quả cao hơn, cần phải
lưu ý điều này khi tính toán và lập trình. Sai phân lùi chỉ được dùng trong trường
hợp các ràng buộc của hàm mục tiêu biến đổi nhanh và khi thuật toán báo không thể
cải tiến kết quả thu được. Minh chứng cho vấn đề này độc giả có thể tự kiểm chứng
ngay trên trình solver của excel bằng cách giữ nguyên các tùy chọn của bài toán, chỉ
thay đổi cách tính đạo hàm từ forward sang central. Độ chính xác của lời giải sẽ
tăng lên đáng kể sau khi thay đổi xảy ra.
2.5 Trình tối ưu Solver của Excel
Bài toán động học ngược là căn cứ chính để xây dựng lập trình mạch chuyển
vị điều khiển động học robot, trong bài toán này nếu điều khiển online lượng dữ
liệu tức thời sinh ra từ việc giải lặp lại bài toán ngược nhiều lần là rất lớn và đòi hỏi
tốc độ xử lý nhanh. Đó là lý do cần có một phương pháp thực sự hiệu quả cho vấn
đề này, nhìn chung tất cả các phương pháp nói ở trên đều rất khó vận dụng vì đòi
hỏi người vận dụng có trực giác toán học tốt để đánh giá mỗi một biến đổi. Trong
mục này giới thiệu công cụ cho phương pháp tối ưu hàm phi tuyến và thảo luận đầy
đủ các khả năng của phương pháp này trong ứng dụng thực tế.
Thông thường những ứng dụng toán học được định hướng chủ yếu với
Matlab và mapple nhưng các thực nghiệm cụ thể cho thấy những hàm chuẩn của
các công cụ này không hiệu quả khi giải bài toán tối ưu dưới dạng hệ phương trình
siêu việt hoặc tối ưu hóa hàm siêu việt bị ràng buộc giống như mô hình bài toán giới
thiệu ở đây.
24
Giải thuật được sử dụng ở đây là phương pháp giảm gradient tổng quát về bản chất
là một phương pháp có sử dụng đạo hàm. Do các tìm kiếm được thực hiện theo
hướng hàm giảm giá trị mạnh nhất, là hướng ngược với hướng của véc tơ gradient
nên kết quả được cải thiện mạnh nhất sau mỗi vòng lặp. Chương trình ứng dụng cụ
thể là gói Solver được tích hợp kèm theo Excel của MS OFFICE. Chương trình
này sẵn có trên bất cứ máy tính nào, tuy nhiên solver là gói tùy chọn trong khi
cài đặt nên nếu không lựa chọn cài đặt ngay từ đầu có thể cần cài bổ sung khi
muốn sử dụng.
Bước 1: Kiểm tra tùy chọn Solver trong Excel xem đã được cài đặt chưa
Hình 2.1. Cài đặt bổ sung gói Solver cho ứng dụng tối ưu
Bước 2: Hoàn thành việc xây dựng hệ phương trình bài toán động học ngược
cho robot bằng một ứng dụng nào đó, chẳng hạn matlab để lấy số liệu khai báo form
cho bài toán ngược trên Excel.
Bước 3: Khởi tạo giao diện cho bài toán tối ưu từ Excel theo thứ tự như sau
Hình 2.2. Giao diện bài toán để nhập số liệu
25
Các nhãn q1 đến q6 tượng trưng cho biến khớp, là nơi để xuất kết quả khi bài
toán giải xong. Các ô trong hàng 3 chỉ là nhãn, trong quá trình thao tác nó chỉ gợi
nhớ các địa chỉ nằm ở dòng 3 trong cùng cột chính là giá trị thực của nó. Ví dụ ở
bước thứ nhất thường gán tất cả các biến bằng 0, khi giải bài toán kết quả được xuất
ra đây, trong giao diện này khi nhập chỉ nhập giá trị vào dòng 6 là các tọa độ khâu
tác động cuối trong không gian công tác.
Các nhãn ny, ..,pz là các địa chỉ nhập không gian công tác, số liệu lấy từ các
ma trận tọa độ thực khi cần giải bài toán.
Các địa chỉ f1 đến f6 là nơi khai báo từng tọa độ lý thuyết theo ma trận tọa độ lý
thuyết, hàm mục tiêu f là tổng bình phương tất cả các hàm từ f1 đến f6 để hạn chế độ
dài tối đa theo quy định của Excel về độ dài biểu thức không quá 255 ký tự.
Cách làm này còn cho biết thêm một thông tin về mức độ thỏa mãn mục tiêu của
từng bậc tự do so với khả năng di động tối đa của nó đã đáp ứng tác vụ đang thực
hiện hay chưa.
Bước 4: khai báo các tọa độ lý thuyết vào giao diện chính
Hình 2.3. Nhập dữ liệu theo địa chỉ đã khởi tạo sẵn
Trong hình 2.3 có thể thấy để chỉ sin(q1) người dùng cần đặt con trỏ vào ô B4
nằm bên dưới giá trị q1 chứ không gõ q1 từ bàn phím, khi đó phần mềm tự duy trì
một liên kết động tới ô này để thực hiện nhập/ xuất số liệu theo địa chỉ. Mỗi hàm f
là một số hạng dạng (px – a14)2 lấy từ hàm mục tiêu L ở trên. Trong đó hàm f được
định nghĩa là tổng các địa chỉ f1 đến f6
26
Hình 2.4. khai báo hàm mục tiêu qua các địa chỉ f1 đến f6
Bước 5: Khai báo các ràng buộc và kiểu mục tiêu của bài toán tối ưu
Đặt con trỏ vào ô B13 là địa chỉ mục tiêu sau đó chọn Tools/ Solver để xuất hiện
hộp thoại solver.
Hình 2.5. Hộp thoại Solver
Ở mục Set Target Cells kích chuột vào biểu tượng con trỏ màu đỏ để xuất hiện
chỉ định vị trí của ô mục tiêu trên màn hình giao diện chính. Trong hộp thoại này
chọn mục tiêu của bài toán cần giải là min trong mục Equal to.
27
Hình 2.6. chỉ định mục tiêu bằng chuột
Sau khi chỉ định mục tiêu bằng chuột trong thẻ solver parameters có thể thấy
địa chỉ của mục tiêu được hiển thị.
Bước 6: Khai báo địa chỉ các biến khớp
Từ hình 16 trong mục By Changing Cells, chọn biểu tượng con trỏ màu đỏ để
con chuột biến thành con trỏ chọn, quét các ô là địa chỉ biến khớp trên giao diện
chính để đánh dấu các điểm xuất dữ liệu kết quả bài toán ngược mỗi khi hoàn
thành bài toán.
Hình 2.7. Chỉ định các địa chỉ biến khớp bằng con trỏ
Bước 7: Khai báo các ràng buộc về biên của bào toán tối ưu
Từ hình 16 trong hộp thoại solver, đặt con trỏ vào ô Subject to the Constraints và
chọn Add để khai báo ràng buộc với các biến khớp, thông tin cho mục này lấy từ
Catalog của robot, nó bao gồm giới hạn chuyển động cụ thể của mỗi bậc tự do quay
hoặc tịnh tiến.
28
Hình 2.8. Khai báo các loại ràng buộc với biến khớp
Khi hoàn thành công việc này giới hạn biến thiên của từng bậc tự do được cập
nhật vào mô hình như hình 19, có thể sửa chữa hay xóa bỏ các ràng buộc này như
thấy trên hình 19.
Bước 8: Khai báo các tùy chọn tối ưu khác
Hình 2.9. Khai báo các tùy chọn khác cho bài toán
Các tùy chọn khác như thấy trong hình 2.9 bao gồm:
- Max time: thời gian tối đa cho một lần chạy chương trình, nếu quá giá trị này
chương trình chưa tìm thấy giá trị mục tiêu tối ưu, nó sẽ báo ra kết quả ở vòng lặp
sau cùng.
29
- Iteration: số lần lặp tối đa cho một lần chạy chương trình, nếu quá giá trị này
chưa tìm được giá trị tối ưu chương trình báo ra kết quả ở lần lặp sau cùng.
- Tolerance: Mức độ sai lệch các giá trị ở 5 vòng lặp liên tiếp nếu không vượt
quá giá trị này sẽ được coi là tối ưu.
- Convergence: Tính hội tụ
Đây là các tham số cơ bản, các tùy chọn khác để hiểu và sử dụng đúng cần có hiểu
biết về bài toán tối ưu.
Bảng 2.2. Các thuật ngữ của công cụ Solver trên giao diện chương trình
Thuật ngữ ý nghĩa
Set target cell Ô chứa hàm mục tiêu (ô đích)
Equal to max Chọn mục này khi cần tìm max của hàm mục tiêu
Equal to min Chọn mục này khi cần tìm min của hàm mục tiêu
Equal to value of
Chọn mục này và nhập giá trị vào ô hình chữ nhật bên cạnh nếu
muốn ô đích bằng một giá trị nhất định.
By changing cells Chọn các ô chứa các biến của bài toán
Subject to the
constrains
Mục này dùng để nhập các ràng buộc của bài toán
Add Hiển thị hộp thoại Add constraint để thêm các ràng buộc
Change Hiển thị hộp thoại Change Constraint để thay đổi ràng buộc
Delete Để xóa ràng buộc đã chọn
Guess
Để đoán các giá trị trong các ô không chứa công thức do công
thức trong ô đích (target cell) trỏ đến.
Solve Thực hiện việc giải bài toán
Close
Đóng hộp thoại Solver parameters mà không tiến hành giải bài
toán
30
Thuật ngữ ý nghĩa
Option
Hiển thị hộp thoại Solver options để ghi mô hình bài toán, nạp
lại mô hình đã ghi hoặc nhập các lựa chọn khác cho việc giải
bài toán
Reset all
Xóa các thiết lập cho bài toán hiện tại và khôi phục các thiết lập
ngầm định
Help Hiển thị trợ giúp cho Solver
Bảng 2.3. Ý nghĩa của tự chọn trong Option của cụng cụ Solver
Tùy chọn ý nghĩa
Max time Thời gian giải bài toán, ngầm định là 100 s, giá trị tối đa
là 32767 s
iteration Số lần lặp, ngầm định là 100, số lần tối đa là 32767.
Precision Độ chính xác. Giá trị này luôn nằm trong khoảng [0,1]
để điều chỉnh sai số cho các ràng buộc. Giá trị càng gần
0 càng đòi hỏi độ chính xác cao của các ràng buộc.
Tolerance Giá trị này tính bằng (%) và có tác dụng đối với các bài
toán có ràng buộc nguyên. Giá trị lựa chọn càng lớn thì
bài toán càng giải nhanh
Convergence Mức độ hội tụ của hàm mục tiêu. Giá trị này nằm trong
khoảng [0, 1]. Lựa chọn này chỉ có ý nghĩa đối với bài
toán quy hoạch phi tuyến. Sau 5 lần lặp cuối cùng, nếu
thay đổi trong giá trị hàm mục tiêu nhỏ hơn giá trị này
thì Solver dừng quá trình tính toán.Giá trị này càng nhỏ
thì thời gian tính toán càng dài.
Assume Linear Model Giả thiết mô hình tuyến tính. Chọn mục này đối với bài
toán quy hoạch tuyến tính.
Assume Non - Negative Giả thiết các biến không âm. Chọn mục này khi cú ràng
31
Tùy chọn ý nghĩa
buộc về dấu của các biến.
Use Automatic Scale Chọn mục này khi giá trị đầu vào và kết quả có độ lớn
khác nhau. Ví dụ tìm tối đa hóa lợi nhuận khi đầu tư tính
bằng triệu dolla
Show Iteration Result Chọn mục này khi muốn Solver hiển thị các kết quả
trung gian của mỗi bước lặp.
Estimates:
- Tangent
- Quadratic
Chỉ thị cho Solver cách ước lượng giá trị theo một
phương tìm kiếm.
Tangent: Ngoại suy sử dụng xấp xỉ bậc nhất.
Quadratic: Ngoại suy sử dụng xấp xỉ bậc hai. Lựa chọn
này cho độ chính xác cao hơn đối với các bài toán quy
hoạch phi tuyến.
Derivatives:
- Forward
- Central
Chỉ thị cho Solver cách tính đạo hàm riêng phần cho
Các file đính kèm theo tài liệu này:
- luan_van_phuong_phap_so_cho_bai_toan_dong_hoc_co_cau_khop_th.pdf