POSZUKIWANIE OPTYMALNEJ TRAJEKTORII … · POSZUKIWANIE OPTYMALNEJ TRAJEKTORII MANIPULATORA SCARA Z...

6
MODELOWANIE INŻYNIERSKIE 2017 nr 62, ISSN 1896-771X 18 POSZUKIWANIE OPTYMALNEJ TRAJEKTORII MANIPULATORA SCARA Z WYKORZYSTANIEM METOD RRT I PSO Dawid Cekus 1a , Dorian Skrobek 1b 1 Instytut Mechaniki i Podstaw Konstrukcji Maszyn, Politechnika Częstochowska a [email protected], b [email protected] Streszczenie Niniejsza praca przybliża zagadnienia związane z wykorzystaniem metody roju cząstek (Particle Swarm Optimiza- tion - PSO) i kilku wariantów algorytmu RRT (Rapidly Exploring Random Tree) do poszukiwania optymalnej trajektorii pracy manipulatora typu SCARA. Zadanie polegało na określeniu najkrótszej drogi łączącej dwa zdefi- niowane punkty z jednoczesnym ominięciem przeszkód. Wysokość przeszkód uniemożliwiała przenoszenie elemen- tów ponad nimi, co sprowadziło zagadnienie do problemu dwuwymiarowego. W artykule analizowano wpływ wy- branych parametrów każdego z algorytmów w celu znalezienia najkrótszej trajektorii. Na podstawie kinematyki odwrotnej wyznaczono poszczególne położenia ramion manipulatora dla wyznaczonej najkrótszej ścieżki roboczej. Słowa kluczowe: cykl roboczy, manipulator, optymalizacja, PSO, RRT SEARCHING FOR OPTIMAL TRAJECTORY OF SCARA MANIPULATOR USING RRT AND PSO METHODS Summary This paper presents application of Particle Swarm Optimization (PSO) method and a few variants of RRT (Rap- idly Exploring Random Tree) algorithm to search for the optimal trajectory of SCARA manipulator work. The task was to calculate the shortest path connecting two defined points avoiding obstacles. It is assumed that the transfer of elements above obstacles was impossible, therefore the problem was considered in two-dimensional space. The influence of selected parameters of each method on algorithm performance and the study results has been analyzed. For the shortest trajectory the position manipulator arms has been calculated on the basis of in- verse kinematics. Keywords: duty cycle, manipulator, optimization, PSO, RRT 1. WSTĘP Manipulator jest maszyną przeznaczoną do wykonywa- nia operacji związanych ze zmianą położenia detalu podczas jego obróbki lub montażu. Zadania, jakie może wykonywać manipulator, są zależne od jego konstrukcji i ogólnych parametrów, takich jak np. wymiary prze- strzeni roboczej, udźwig, dokładność i powtarzalność [14]. Elementy konstrukcyjne można optymalizować już na etapie projektowania [2, 8, 17], natomiast cykl pracy manipulatora zależy od algorytmów sterowania, wyzna- czających między innymi trajektorię ruchu. Analizowany manipulator jest manipulatorem typu SCARA. Manipulator ten składa się z pionowej, obroto- wej kolumny o wysokości H, dwóch ramion o długo- ściach L1 i L2 oraz członu wysuwnego R z zamocowanym chwytakiem. Strukturę manipulatora wraz z układami współrzędnych pokazano na rys. 1. W niniejszej pracy przedstawiono zastosowanie metody roju cząstek (PSO - Particle Swarm Optimization) i kilku wariantów metody planowania ścieżki (RRT - Rapidly-exploring Random Tree) do poszukiwania minimalnej długości trajektorii pomiędzy dwoma zdefi-

Transcript of POSZUKIWANIE OPTYMALNEJ TRAJEKTORII … · POSZUKIWANIE OPTYMALNEJ TRAJEKTORII MANIPULATORA SCARA Z...

MODELOWANIE INŻYNIERSKIE 2017 nr 62, ISSN 1896-771X

18

POSZUKIWANIE OPTYMALNEJ TRAJEKTORII MANIPULATORA SCARA Z WYKORZYSTANIEM METOD RRT I PSO Dawid Cekus1a, Dorian Skrobek1b

1Instytut Mechaniki i Podstaw Konstrukcji Maszyn, Politechnika Częstochowska [email protected], [email protected]

Streszczenie Niniejsza praca przybliża zagadnienia związane z wykorzystaniem metody roju cząstek (Particle Swarm Optimiza-tion - PSO) i kilku wariantów algorytmu RRT (Rapidly Exploring Random Tree) do poszukiwania optymalnej trajektorii pracy manipulatora typu SCARA. Zadanie polegało na określeniu najkrótszej drogi łączącej dwa zdefi-niowane punkty z jednoczesnym ominięciem przeszkód. Wysokość przeszkód uniemożliwiała przenoszenie elemen-tów ponad nimi, co sprowadziło zagadnienie do problemu dwuwymiarowego. W artykule analizowano wpływ wy-branych parametrów każdego z algorytmów w celu znalezienia najkrótszej trajektorii. Na podstawie kinematyki odwrotnej wyznaczono poszczególne położenia ramion manipulatora dla wyznaczonej najkrótszej ścieżki roboczej.

Słowa kluczowe: cykl roboczy, manipulator, optymalizacja, PSO, RRT

SEARCHING FOR OPTIMAL TRAJECTORY OF SCARA MANIPULATOR USING RRT AND PSO METHODS

Summary This paper presents application of Particle Swarm Optimization (PSO) method and a few variants of RRT (Rap-idly Exploring Random Tree) algorithm to search for the optimal trajectory of SCARA manipulator work. The task was to calculate the shortest path connecting two defined points avoiding obstacles. It is assumed that the transfer of elements above obstacles was impossible, therefore the problem was considered in two-dimensional space. The influence of selected parameters of each method on algorithm performance and the study results has been analyzed. For the shortest trajectory the position manipulator arms has been calculated on the basis of in-verse kinematics.

Keywords: duty cycle, manipulator, optimization, PSO, RRT

1. WSTĘP

Manipulator jest maszyną przeznaczoną do wykonywa-nia operacji związanych ze zmianą położenia detalu podczas jego obróbki lub montażu. Zadania, jakie może wykonywać manipulator, są zależne od jego konstrukcji i ogólnych parametrów, takich jak np. wymiary prze-strzeni roboczej, udźwig, dokładność i powtarzalność [14]. Elementy konstrukcyjne można optymalizować już na etapie projektowania [2, 8, 17], natomiast cykl pracy manipulatora zależy od algorytmów sterowania, wyzna-czających między innymi trajektorię ruchu.

Analizowany manipulator jest manipulatorem typu SCARA. Manipulator ten składa się z pionowej, obroto-wej kolumny o wysokości H, dwóch ramion o długo-ściach L1 i L2 oraz członu wysuwnego R z zamocowanym chwytakiem. Strukturę manipulatora wraz z układami współrzędnych pokazano na rys. 1.

W niniejszej pracy przedstawiono zastosowanie metody roju cząstek (PSO - Particle Swarm Optimization) i kilku wariantów metody planowania ścieżki (RRT - Rapidly-exploring Random Tree) do poszukiwania minimalnej długości trajektorii pomiędzy dwoma zdefi-

Dawid Cekus, Dorian Skrobek

19

niowanymi punktami, przy czym w przestrzeni roboczej znajdują się przeszkody. Założono, że wysokość prze-szkód uniemożliwia przenoszenie elementów ponad nimi, co sprowadza zagadnienie do problemu dwu-wymiarowego (rys. 2).

Rys. 1. Manipulator SCARA: a) model manipulatora w przy-kładowym środowisku pracy, b) przyjęty schemat kinematyczny manipulatora

Rys. 2. Obszar roboczy manipulatora (widok z góry)

2. Algorytm roju cząstek (PSO)

Algorytm roju cząstek został zaproponowany w 1995 r. przez Kennedy’ego i Eberharta [7], a następnie został zmodyfikowany poprzez przekształcenie równań ruchu cząstek (połączenie wersji globalnej i lokalnej) [4, 15 16]. Metoda PSO działa według algorytmu pokazanego na rys. 3, a poszczególne zmienne oznaczają: χ - współczyn-nik ścisku; xn

m - pozycja i-tej cząstki w poprzednim kroku iteracji; Vn

m - wektor prędkości; pm - najlepsze znalezione położenie i-tej cząstki; gm - najlepsze znalezio-ne położenie w całym roju; w - współczynnik wagi, określony na poziomie i-tej cząstki; c1, c2 –współczynniki uczenia; r1, r2 –losowe liczby z przedziału [0,1], x(n+1)

m –nowa pozycja i-tej cząstki.

Rys. 3. Schemat blokowy algorytmu PSO

3. Algorytmy planowania ścieżki (RRT)

Algorytm planowania ścieżki jest algorytmem probabili-stycznym z pojedynczym zapytaniem (jeden punkt startowy). Algorytm RRT został zademonstrowany w 2000 r. przez Kuffnera Jr i La Valle’a [9, 11] i jest cały czas rozwijany. Omówione metody RRT nie są dokładne, tzn. przyjmuje się, że trajektoria została znaleziona, kiedy punkt startowy zostanie połączony ścieżką z punktem, który znajduje się w zdefiniowanym obszarze rozwiązania (najczęściej jest to okrąg). Oczywi-ście tę niedogodność można rozwiązać już po zakończe-niu działania algorytmu, łącząc wyznaczony węzeł końcowy z punktem końcowym. Wyznaczona w ten sposób trajektoria nie jest często optymalna, ale w zastosowaniu dla obiektów, które muszą jak najszyb-ciej pokonać określoną drogę, jest zazwyczaj akcepto-walna. Działanie algorytmu opiera się na zasadzie po-szukiwania sąsiadów (pnear) dla kolejno dodawanych punktów (prand) generowanych losowo w zdefiniowanym obszarze poszukiwań, a następnie wstawianiu nowych węzłów (pnew) do budowanego w ten sposób drzewa, w celu dotarcia do kolejnego punktu prand. Węzły (pnew) muszą znajdować się wzajemnie w odległości mniejszej bądź równej ∆L. Na rys. 4 przedstawiono schemat działania algorytmów RRT.

POSZUKIWANIE OPTYMALNEJ TRAJEKTORII MANIPULATORA SCARA (…)

20

Rys. 4. Schemat działania algorytmów RRT z zaznaczonym maksymalnym przyrostem drzewa ∆L

Na rysunkach 5, 7, 9 przedstawiono pseudokody algo-rytmów RRT, RRT* i RRT*FN. W przedstawionych pseudokodach zastosowano następujące oznaczenie: ∆L - maksymalny przyrost drzewa, pi – i-ty węzeł, It – mak-symalna liczba iteracji.

Na rysunkach 6, 8, 10 przedstawiono przykładowe obliczenia w celu pokazania różnic w działaniu algoryt-mów RRT. Rysunki te zawierają również przeszkody wraz z uzyskanym drzewem dla każdej z metod oraz znalezione przez algorytmy trajektorie.

Rys. 5. Pseudokod RRT [9, 10, 11]

Rys. 6. Przykładowe obliczenia RRT

W podstawowej wersji algorytm RRT przerywa dalsze poszukiwania w momencie znalezienia pierwszego roz-wiązania.

Algorytm RRT* (rys. 7, 8) [6], przedstawiony w roku 2011 przez Karamana i Frazzolego nie zostaje przerwany

po wyznaczeniu drogi łączącej dwa punkty, lecz działa aż do spełnienia warunku zatrzymania, którym najczę-ściej jest założona liczba iteracji. Po zakończeniu działa-nia algorytm porównuje długości znalezionych trajektorii i wybiera najkrótszą drogę łączącą punkty.

Rys. 7. Pseudokod RRT* [5, 6, 13]

Rys. 8. Przykładowe obliczenia RRT*

Metoda RRT*FN [1] (rys. 9, 10) jest ulepszeniem meto-dy RRT*, w której algorytm usuwa węzły drzewa cha-rakteryzujące się najgorszym rozwiązaniem, a następnie wstawia taką samą liczbę węzłów w nowe miejsca. Dodawanie nowych węzłów może odbyć się losowo w całym obszarze poszukiwań, jednak najczęściej nowe węzły są wstawiane w okolicy węzła, który charaktery-zuje się najkrótszą odległością do celu.

Rys. 9. Pseudokod RRT*FN [1]

Dawid Cekus, Dorian Skrobek

21

Rys. 10. Przykładowe obliczenia RRT*FN

4. PRZYKŁADOWE WYNIKI OBLICZEŃ NUMERYCZNYCH

Na działanie algorytmów PSO i RRT oddziałuje wiele parametrów. W przypadku algorytmu PSO wpływ na długość trajektorii mają następujące parametry: współ-czynniki uczenia, liczba punktów pomocniczych, sposób zmiany współczynnika inercji w trakcie każdej iteracji, liczba iteracji oraz liczebność roju [3]. W przypadku algorytmu RRT dominującą rolę odgrywa maksymalny przyrost drzewa, promień poszukiwania sąsiadów dla węzłów, liczba sąsiadów [1, 5, 6, 9, 10, 11, 13].

Wykorzystując metodę PSO i RRT, wyznaczono trajek-torie łączące zdefiniowany punkt startowy i końcowy z jednoczesnym ominięciem przeszkód. Uzyskane wyniki zestawiono w tabeli 1 (dla algorytmu PSO) i 2 (dla algorytmów RRT). Czas (T) przedstawiony w tabelach to czas od początku działania algorytmu do jego zakoń-czenia, z pominięciem czasu na wczytanie parametrów, zapis oraz wyświetlenie wyników w postaci graficznej. W algorytmach RRT założono, że maksymalna liczba sąsiadów dla węzła wynosi cztery oraz że promień po-szukiwania sąsiadów jest równy 6∆L.

Tabela 1. Długość trajektorii (L) i czas obliczeń (T) dla róż-nych parametrów algorytmu PSO

It

Liczba punktów pomocniczych

10 15 30

L [mm] T [s] L [mm] T [s] L [mm] T [s]

150

1521.99 14.85 1525.29 14.87 1553.33 14.96

1521.77 14.14 1527.45 14.26 1562.38 14.60

1521.48 14.00 1523.69 14.51 1577.11 14.35

300

1521.69 28.50 1522.04 28.41 1576.64 28.72

1521.50 28.19 1526.65 28.44 1573.20 28.57

1521.43 28.43 1526.10 29.79 1556.83 28.65

700

1522.17 67.28 1521.50 65.84 1531.50 65.90

1521.64 65.78 1521.29 65.78 1541.35 64.29

1521.42 66.13 1522.24 65.79 1537.18 65.34

Tabela 2. Długość trajektorii (L) i czas obliczeń (T) dla róż-nych parametrów algorytmów RRT, RRT*, RRT*FN

RRT RRT

It 4000 6000

pi 40000 60000

∆L [mm] L [mm] T [s] ∆L [mm] L [mm] T [s]

10 1870 0.68 10 1870 1.33

15 1874.23 0.69 15 1874.23 1.29

30 1857.59 0.68 30 1857.59 1.29

RRT* RRT*

It 4000 6000

pi 40000 60000

∆L [mm] L [mm] T [s] ∆L [mm] L [mm] T [s]

12 1875.04 0.79 11 1901.16 1.93

17 1987.61 0.82 16 1854.25 2.05

32 1905.66 0.84 31 1911.46 2.11

RRT*FN RRT*FN

It 4000 6000

pi 30000 50000

∆L [mm] L [mm] T [s] ∆L [mm] L [mm] T [s]

9 1863 1.00 8 1879.56 1.87

14 1975.81 1.07 13 1838.20 1.90

29 1838.32 1.02 28 1918.99 2.13

Na rys. 7 zilustrowano najkrótsze trajektorie wyznaczone z wykorzystaniem algorytmu PSO i trzech wariantów metody RRT.

Rys. 11. Wyznaczone trajektorie

Najkrótszą trajektorię (PSO) wraz z wyznaczonymi na podstawie kinematyki odwrotnej wybranymi położeniami ramion manipulatora SCARA pokazano na rys. 8.

POSZUKIWANIE OPTYMALNEJ TRAJEKTORII MANIPULATORA SCARA (…)

22

Rys. 12. Najkrótsza znaleziona trajektoria (PSO) wraz z wybranymi położeniami ramion manipulatora (L1 i L2)

Na podstawie przestawionych wyników można stwier-dzić, że zaproponowane metody RRT znajdują trajekto-rie łączące punkt startowy z punktem końcowym, lecz nie jest to trajektoria optymalna, jak ma to miejsce w przypadku algorytmu PSO. Metody RRT zyskują natomiast na czasie obliczeń. Pozwalają one znaleźć

trajektorię kilkadziesiąt razy szybciej w porównaniu do metody PSO.

5. PODSUMOWANIE

Zaprezentowane w niniejszej pracy metody PSO i RRT można zastosować do poszukiwania trajektorii końcówki roboczej manipulatora w środowisku pracy, gdzie wystę-pują przeszkody pomiędzy punktem początkowym i końcowym. W przypadku stałego cyklu roboczego jednoznacznie należy wykorzystać algorytm PSO, który potrafi znaleźć optymalną trajektorię. Jednak w sytuacji, gdy każdy cykl roboczy jest inny, bardziej optymalna może być metoda RRT. Mimo iż długość trajektorii nie będzie minimalna, to czas obliczeń zrekompensuje czas niezbędny na pokonanie dłuższej drogi. Jednocześnie wskazane byłoby przeprowadzenie aproksymacji ścieżki, bez której manipulator mógłby doznać tak zwanych szarpnięć, wynikających z gwałtownej zmiany kierunku wektora prędkości. Metodę PSO można także zastosować przy optymalizacji wielokryterialnej, np. minimalizując długość trajektorii i zużycie energii elektrycznej lub w innej kombinacji istotnych parametrów.

W celu otrzymania modelu w pełni funkcjonalnego, powyższe obliczenia numeryczne należy poprzeć wyni-kami analizy przeprowadzonej na obiekcie rzeczywistym [12], co będzie przedmiotem kolejnych prac autorów.

Literatura

1. Adiyatov O., Varol H. A.: Rapidly-exploring random tree based memory efficient motion planning. 2013 IEEE

International Conference on Mechatronics and Automation (ICMA), 2013, p. 354–359

DOI: 10.1109/ICMA.2013.6617944.

2. Buratowski T.: Teoria robotyki. Kraków: Wyd. AGH, , 2012.

3. Cekus D., Skrobek D.: Trajectory optimization of a SCARA manipulator using Particle Swarm Optimization.

“Machine Dynamics Research” 2016, Vol. 40, No 1, p. 45-53 (w druku).

4. Cheng R., Yao M.: Particle Swarm Optimizer with Time-Varying Parameters based on a Novel Operator.

“Applied Mathematics & Information Sciences” 2001, Vol. 5, Iss. 2, p. 33-38.

5. Islam F.; Nasir J.; Malik U.; Ayaz Y., Hassan O.: RRT*-Smart: Rapid convergence implementation of RRT*

towards optimal solution. In: International Conference on Mechatronics and Automation (ICMA), Chengdu,

China, 2012, p. 1651-1656.

6. Karaman S., Frazzoli E.: Sampling-based algorithms for optimal motion planning. “The International Journal of

Robotics Research” 2011, 30(7), p. 846-894.

7. Kennedy J., Eberhart R. C.: Particle Swarm Optimization, Piscataway, NJ:IEEE Service Center, Proceedings of

the IEEE International Conference on Neutral Networks, 1995, Vol. 4, p. 1942-1948.

8. Kozłowski K., Dutkiewicz P., Wróblewski W.: Modelowanie i sterowanie robotów. Warszawa: Wyd. Nauk.

PWN, 2012. ISBN: 9788301140816.

9. Kuffner J. J. Jr, LaValle S. M.: RRT - connect: An efficient approach to single-query path planning. In: Robot-

ics and Automation, 2000. Proceedings. ICRA'00. IEEE International Conference, Vol. 2, p. 995-1001.

10. LaValle S. M.: Rapidly-exploring random trees: a new tool for path planning: technical report. Computer Sci-

ence Department, Iowa State University (TR 98-11), 1998.

11. LaValle S. M.; Kuffner J. J. Jr.: Randomized

Research” 2001, 20 (5).

12. Pierzgalski M., Ptak P., Cekus D.,

Rover. “Procedia Engineering” 2017,

13. Qureshi A. H., Ayaz Y.: Intelligent bidirectional rapidly

complex cluttered environments

DOI: 10.1016/j.robot.2015.02.007

14. Rygałło A.: Robotyka dla mechatro

tronika. Politechnika Częstochowska „Plan Rozwoju Politechniki Częstochowskiej”

15. Szczepanik M.: Algorytmy rojowe w optymalizacji układów mechaniczn

978-83-7880-138-2

16. Tarnowski W.: Optymalizacja i polioptymalizacja w technice

2011. ISBN 978-83-7365-273-6

17. Uhl T., Bojko T., Mrozek Z., Petko M., Szwabowski W.,

wania mechatronicznego. Kraków: AGH,

Artykuł dostępny na podstawie licencji Creative Commons Uznanie autorstwa 3.0 Polska. http://creativecommons.org/licenses/by/3.0/pl

Dawid Cekus, Dorian Skrobek

23

: Randomized kinodynamic planning. “The International Journal of Robotics

P., Cekus D., Sokół K.: Modeling and stress analysis of a manipulator

” 2017, Vol. 177, p. 121-126, 2017. DOI: 10.1016/j.proeng.2017.02.199

Qureshi A. H., Ayaz Y.: Intelligent bidirectional rapidly-exploring random trees for optimal motion planning in

complex cluttered environments. “Robotics and Autonomous System” 2015,

oników: podręcznik w postaci elektronicznej dla studentów kierunku

zęstochowska „Plan Rozwoju Politechniki Częstochowskiej”, 2008

Szczepanik M.: Algorytmy rojowe w optymalizacji układów mechanicznych. Gliwice: Wyd

Tarnowski W.: Optymalizacja i polioptymalizacja w technice. Koszalin: Wyd. Uczel. Politechniki Koszalińskiej,

Uhl T., Bojko T., Mrozek Z., Petko M., Szwabowski W., Korendo Z., Bogacz M.: Wybrane problemy projekt

Kraków: AGH, Wyd. Katedry Robotyki i Dynamiki Maszyn, AGH, 1999

Artykuł dostępny na podstawie licencji Creative Commons Uznanie autorstwa 3.0 Polska. http://creativecommons.org/licenses/by/3.0/pl

The International Journal of Robotics

anipulator mounted on a Mars

016/j.proeng.2017.02.199

exploring random trees for optimal motion planning in

” 2015, 68, p. 1-11.

odręcznik w postaci elektronicznej dla studentów kierunku mecha-

Wyd. Pol. Śl., 2013. ISBN:

Politechniki Koszalińskiej,

Korendo Z., Bogacz M.: Wybrane problemy projekto-

Katedry Robotyki i Dynamiki Maszyn, AGH, 1999.

Artykuł dostępny na podstawie licencji Creative Commons Uznanie autorstwa 3.0 Polska.