Kiedy powinienem używać Reinforcement Learning vs PID Control?

12

Projektując rozwiązania problemów, takich jak Lunar Lander na OpenAIGym , Reinforcement Learning to kuszący sposób na zapewnienie agentowi odpowiedniej kontroli działania, tak aby z powodzeniem wylądować.

Ale w jakich przypadkach algorytmy systemu sterowania, takie jak sterowniki PID , wykonałyby tylko odpowiednie zadanie, jeśli nie lepsze niż Reinforcement Learning?

Pytania takie jak to świetnie sprawdzają się w teorii tego pytania, ale niewiele robią, aby odnieść się do części praktycznej.

Jako inżynier sztucznej inteligencji, jakie elementy domeny problemowej powinny sugerować, że kontroler PID jest niewystarczający do rozwiązania problemu, a zamiast tego należy zastosować algorytm uczenia wzmacniającego (lub odwrotnie)?

SeeDerekEngineer
źródło
Podstawowy pomysł na temat PID mówi, że nie jest to łatwe do zaprojektowania. W grę wchodzi wiele całek i różnic. Jest to w zasadzie taki sam pomysł, jak w przypadku zamiany statystyk na metody ML. Systemy sterowania są zdecydowanie bezbłędne, ale to zbyt wiele pracy.
DuttaA
2
właściwie to nie jest zbyt dużo pracy, jest dość standardem w branży, dzięki nowoczesnym narzędziom do projektowania systemu, takim jak MATLAB, możesz dostroić PID lub inny kontroler stosunkowo łatwo, aby zaspokoić twoje potrzeby. Uczenie się przez wzmocnienie nie jest stosowane w praktyce, ponieważ wymaga dużej ilości danych i nie ma teoretycznych gwarancji, jak w przypadku klasycznej teorii sterowania. Nawiasem mówiąc, projektowanie kontrolera nie wymaga bezpośredniej pracy z całkami / różnicami, dla systemów liniowych cała praca jest wykonywana w domenie Laplace'a, która obejmuje proste manipulacje algebraiczne
Brale_
@Brale_, ale wciąż wymaga dużej wiedzy teoretycznej. Domena Laplace upraszcza różnicę, ale musisz wiedzieć, jak projektować rzeczy (bieguny i zera), aby systemy nie stały się niestabilne. Trudno mi sobie wyobrazić, jak te rzeczy naprawdę działają.
DuttaA
2
Zasadą ogólną, która pomogła mi w poprzednich projektach, jeśli nie potrafisz wyjaśnić w kilku zdaniach optymalnej polityki (PID, RL lub w inny sposób), PID będą naprawdę bardzo trudne. Jaka jest optymalna polityka dla Pacmana?
Jaden Travnik

Odpowiedzi:

5

Myślę, że komentarze są w zasadzie na dobrej drodze.

Kontrolery PID są przydatne do znajdowania optymalnych polityk w ciągłych systemach dynamicznych i często te domeny są również używane jako punkty odniesienia dla RL, właśnie dlatego, że istnieje łatwo wyprowadzona optymalna polityka. Jednak w praktyce wolisz oczywiście kontroler PID dla każdej domeny, w której możesz łatwo go zaprojektować: zachowania kontrolera są dobrze zrozumiane, a rozwiązania RL są często trudne do interpretacji.

RL świeci w zadaniach, w których wiemy, jak wygląda dobre zachowanie (tj. Znamy funkcję nagrody) i wiemy, jak wyglądają wejścia czujnika (tj. Możemy całkowicie i dokładnie opisać dany stan numerycznie), ale mamy niewiele lub nie mam pojęcia, co tak naprawdę chcemy, aby agent zrobił, aby osiągnąć te nagrody.

Oto dobry przykład:

  • Gdybym chciał stworzyć agenta do manewrowania samolotem przed samolotem wroga ze znanymi wzorami ruchu za nim, zużywając najmniej paliwa, zdecydowanie wolałbym użyć kontrolera PID .

  • Gdybym chciał stworzyć agenta do kontrolowania samolotu i zestrzelenia samolotu wroga z wystarczającą ilością paliwa do wylądowania, ale bez formalnego opisu, w jaki sposób samolot wroga może zaatakować (być może ludzki ekspert pilotuje go w symulacji przeciwko naszemu agentowi) , Wolałbym RL .

John Doucette
źródło