dr inż. Paweł Maciąg
Optimal Control of Multibody Systems Using an Efficient, Parallelizable Adjoint Method
Promotor: |
|
dr hab. inż. Paweł Malczyk, prof. uczelni - Politechnika Warszawska Wydział MEiL |
|
Promotor pomocniczy: |
|
dr inż. Łukasz Woliński – Politechnika Warszawska Wydział MEiL |
|
Recenzenci: |
|
Prof. Dr.-Ing. Prof. E. h. Peter Eberhard – University of Stuttgart |
|
Dziedzina: |
|
nauki inżynieryjno-techniczne | |
Dyscyplina: |
|
inżynieria mechaniczna |
Streszczenie:
W ciągu ostatnich dekad znaczenie efektywnych obliczeniowo metod w komputerowo wspomaganym projektowaniu oraz sterowaniu układami robotycznymi wyraźnie wzrosło. Sterowanie optymalne jest dobrze ugruntowaną dziedziną wiedzy dającą narzędzia do rozwiązywania współczesnych nieliniowych problemów dynamiki i czerpiącą znacząco z metod optymalizacji. Jednocześnie wiele spośród nich wymaga zastosowania efektywnych algorytmów do systematycznego i dokładnego wyznaczania pochodnych względem zestawu zmiennych decyzyjnych.
Metoda adjoint -- wywodząca się z teorii sterowania optymalnego -- wykorzystuje model dynamiki układu wieloczłonowego (UW) do efektywnego obliczenia gradientu wskaźnika jakości i jest naturalnym podejściem w przypadku obecności dużej liczby zmiennych decyzyjnych. Model matematyczny układu ma wtedy formę równań ruchu, które w niniejszej rozprawie są wyrażone
za pomocą formalizmu Hamiltona. Pierwszym osiągnięciem rozprawy jest połączenie metody adjoint
z hamiltonowskimi modelami UW sformułowanymi w mieszanych współrzędnych złączowych
i absolutnych.
Choć metody służące do rozwiązywania zagadnień sterowania optymalnego charakteryzują się dużym stopniem dojrzałości, wciąż istnieje potrzeba rozwoju coraz efektywniejszych algorytmów możliwych do zastosowania w praktyce. Kluczową kwestią jest również ich skalowalność ze względu na rozmiar problemu, np. liczbę członów w łańcuchu kinematycznym. Istotnym celem niniejszej rozprawy jest usprawnienie metody adjoint przez opracowanie algorytmu równoległego rozwiązującego zadanie proste dynamiki i problem sprzężony (adjoint) w oparciu o schemat Dziel i Zdobywaj (DiZ). Rdzeniem proponowanej metody jest możliwość rekurencyjnego wyznaczania współczynników dla problemu sprzężonego, która bazuje na drzewie binarnym stowarzyszonym z topologią UW. Poszczególne procedury obliczeniowe związane z węzłami grafu można wykonywać w sposób równoległy, dzięki czemu podejście DiZ odznacza się dobrą skalowalnością obliczeń na wielu procesorach.
Algorytm DiZ stosowano już do rozwiązywania równań ruchu (zarówno w formie lagranżowskiej, jak i hamiltonowskiej) oraz do obliczania gradientu wskaźnika jakości metodą różniczkowania bezpośredniego (ang. direct differentiation method). Niniejsza rozprawa poszerza obecny stan wiedzy o propozycję metody adjoint zaimplementowanej w schemacie DiZ
i umożliwiającej wykorzystanie obliczeń równoległych.
Opracowane metody poddano zróżnicowanym testom numerycznym w środowisku Matlab
i pokazano ich możliwości aplikacyjne. Rozwiązano wybrane problemy projektowania oraz sterowania optymalnego dla mechanizmów płaskich i przestrzennych charakteryzujących się różnymi topologiami łańcucha kinematycznego. Otrzymane wyniki potwierdzają poprawność opracowanych metod. Ostatecznie w rozprawie szczegółowo omówiono otrzymane rezultaty pod kątem jakości rozwiązań oraz efektywności obliczeń.
Skalowalność metody adjoint i algorytmu DiZ zbadano poprzez rozwiązanie problemu sterowania optymalnego dla UW charakteryzującego się możliwością relatywnie łatwej zmiany liczby stopni swobody w łańcuchu kinematycznym. W tym celu opracowane metody zaimplementowano
w C++, a do zrównoleglenia obliczeń zastosowano dyrektywy kompilatora OpenMP. W oparciu o testowy model UW sprawdzono poprawność sformułowania oraz samej implementacji. Zmierzono również czasy wykonania programu dla różnych warunków zadania, w których zmianom podlegała liczba członów oraz liczba dostępnych wątków.
Opracowana metoda adjoint została zastosowana w układzie sterowania rzeczywistym robotem równoległym (planarny robot o dwóch stopniach swobody), dla którego zbudowano
i zidentyfikowano model matematyczny. Wyznaczone sygnały sterujące podano jako sprzężenia kompensujące w przód typu feedforward, które działały w koniunkcji z sygnałami z pętli sprzężenia zwrotnego. Badaniom podlegała jakość sterowania obiektem oraz wartości uchybów regulacji
w przypadku skomplikowanych trajektorii zadaniowych robota oraz potencjalnych ograniczeń
na amplitudy sygnału sterującego.