Sztuczna inteligencja w sterowaniu zrobotyzowanymi systemami wytwarzania

Sterowanie systemem przy wykorzystaniu metod sztucznej inteligencji daje możliwości bezpośrednich zmian w miarę napływu nowych zleceń produkcyjnych. W stosunkowo prosty sposób pozwala też na pominięcie często długotrwałego etapu wcześniejszego generowania harmonogramu. To tylko niektóre powody, dla których warto poznać tę metodę sterowania.

Systemami sztucznej inteligencji nazywane są systemy spełniające funkcje, które przyjęto uważać za charakterystyczne dla intelektualnej działalności człowieka. Jest ona związana z poszukiwaniem rozwiązań (działań, prawidłowości) w nowych, niestandardowych sytuacjach. Dlatego też zadanie można nazwać intelektualnym, jeżeli schemat lub dokładna (algorytmiczna) metoda jego rozwiązania nie jest znana a priori. Oczywiście zadanie i jego rozwiązanie można interpretować w dowolnie szerokim sensie, podobnie jak czyni to człowiek. Główną cechą charakterystyczną inteligentnego zrobotyzowanego systemu jest zatem zorientowanie na celowe zachowanie się w złożonym świecie zewnętrznym.

Zadanie to rozwiązywane jest dwojako:

  • Inteligentnym nazywa się system, który dla obserwatora z zewnątrz zachowuje się jak człowiek. Jest to realizowane w ten sposób, że system potrafi wybrać wcześniej zaprogramowane działanie adekwatnie do aktualnej sytuacji w świecie zewnętrznym. Schemat działania takiego systemu pokazano na rys. 1.
  • Inteligentnym nazywa się system, który ma zdolność uczenia się. Schemat lub dokładna (algorytmiczna) metoda działania nie jest znana a priori. System potrafi wybrać działanie adekwatne do posiadanej wiedzy i aktualnej sytuacji w świecie zewnętrznym. Schemat działania takiego systemu pokazano na rys. 2.

W artykule przedstawiono zastosowanie metod sztucznej inteligencji do rozwiązywania zadań harmonogramowania i sterowania produkcją w zrobotyzowanych systemach wytwarzania (patrz: rys. 3.).  
Harmonogramowanie produkcji jest zadaniem wyznaczenia rozdziału w czasie i przestrzeni, dostępnych zasobów produkcyjnych tak, aby zaspokoić zapotrzebowanie na produkowane przedmioty przy najlepszym wykorzystaniu tych zasobów. Harmonogram obejmuje następujące zadania:

  • ustalenie czasów poszczególnych operacji w sposób gwarantujący wymagane terminy,
  • wybór środków wytwarzania – dostosowanie maszyn oraz urządzeń wytwórczych w sposób gwarantujący realizację zadań i uniknięcie kolejek, 
  • rozdział materiałów – gwarantujący ciągłość pracy i termin realizacji zadań.  

Sterowanie produkcją to kierowanie pracą maszyn i urządzeń przez wpływanie na parametry i przebieg ich pracy, w celu zrealizowania harmonogramu (programowa i fizyczna realizacja wygenerowanego harmonogramu). Spośród znanych metod sztucznej inteligencji, stosowanych w planowaniu i doborze strategii działania, harmonogramowaniu oraz sterowaniu zrobotyzowanych systemów wytwarzania można wymienić:

  • systemy eksperckie, zwane też ekspertowymi lub doradczymi,
  • metody oparte na mechanizmie wnioskowania rozmytego wykorzystujące teorię zbiorów rozmytych i logikę rozmytą (Fuzzy Logic),
  • sztuczne sieci neuronowe,
  • metody wykorzystujące algorytmy genetyczne,
  • systemy agentowe i wieloagentowe.

Do rozwiązania zadań harmonogramowania i sterowania produkcją w zrobotyzowanych systemach wytwarzania zastosowano logikę rozmytą (Fuzzy Logic).  

Podstawy sterowania rozmytego  

Harmonogramowanie i sterowanie z wykorzystaniem wnioskowania rozmytego opiera się na wiedzy pozyskanej od doświadczonych ekspertów, którzy są w stanie wyrazić swoją wiedzę w postaci werbalnej. Wiedza o tym, jak należy sterować, może być wyrażona w postaci twierdzeń lingwistycznych. W klasycznej logice dwuwartościowej element należy lub nie należy do zbioru. W logice rozmytej wprowadzone jest pojęcie funkcji przynależności (term), która w zbiorach rozmytych jest oszacowaniem stopnia (najczęściej w przedziale 0, 1) wystąpienia określonego elementu w poszczególnych zbiorach.
Proces wnioskowania (patrz: rys. 4.) polega w pierwszym etapie na poszukiwaniu minimum wartości dla każdej przyjętej reguły, tzn. wyborze najmniejszej wartości spośród zbiorów wejściowych objętych analizowaną regułą. Blokiem wynikowym jest zbiór rozmyty Y, mający miano określonej wielkości fizycznej. W bloku „Defuzyfikacja” następuje końcowe wnioskowanie oparte na każdej z zasad podstawowych w ten sposób, że końcową wartością jest maksimum spośród podstawowych zbiorów rozmytych. Ustalenie maksimum pozwala na uwzględnienie wszystkich zasad (reguł) podstawowych. Takiproces wnioskowania nosi nazwę zasady min./maks. i jest podobny do sposobu myślenia człowieka.  
Przykładowe reguły lingwistyczne wykorzystujące trzy parametry pozwalające na wybór działania zrobotyzowanego systemu mogą mieć następującą postać:

Jeżeli czas przezbrojenia (X1) jest duży i czas obróbki (X2) jest średni, to priorytet (Y) jest średni.
Jeżeli czas przezbrojenia (X1) jest średni i czas obróbki (X2) jest mały, to priorytet (Y) jest mały.

Pozwala to na ocenę kolejnego działania zrobotyzowanego systemu wytwarzania.
 
Reguły rozmyte: przykład sterowania

Jako obiekt sterowania wg reguł rozmytych posłużył Miniaturowy Elastyczny System Wytwarzania, który został zaprojektowany i wykonany w Zakładzie Zautomatyzowanych Systemów Wytwarzania na Politechnice Szczecińskiej (patrz: rys. 5.). Zbudowany system zgodnie z założeniami jest miniaturą rzeczywistych systemów obróbkowych stosowanych w przemyśle o strukturze funkcjonalnej, takiej jak rzeczywiste systemy przemysłowe. Zawiera on: obrabiarki, urządzenia magazynowe, transportowe i manipulacyjne – stosowane i powiązane z sobą jak w rzeczywistych systemach przemysłowych. System odzwierciedla zachodzące w rzeczywistości różne procesy obróbki i przepływ przedmiotów. Umożliwia przeprowadzanie doświadczalnych weryfikacji różnych metod planowania, harmonogramowania i sterowania produkcji, również z obszaru sztucznej inteligencji.
Idea sterowania z wykorzystaniem reguł rozmytych opiera się na dynamicznym tworzeniu i korygowaniu harmonogramu pracy w miarę napływu danych wejściowych z zewnątrz. Korekcja harmonogramów odbywa się poprzez wymianę informacji między programem głównym zainstalowanym w komputerze nadrzędnym a programami podsystemowymi (patrz: rys. 6.). Metoda ta, w przeciwieństwie do sterowania klasycznego, wymaga zainstalowania w komputerze nadrzędnym oprogramowania, w którym decyzje sterujące podejmowane są na podstawie reguł rozmytych czytanych z zewnętrznych baz w programie FuzzyTECH.
Główny program sterujący zainstalowano w nadrzędnym komputerze, do którego wczytano przygotowane wcześniej bazy reguł rozmytych. Dla przemieszczeń układarki regałowej zapisano 3078 reguł, natomiast dla przemieszczeń wózka utworzono 2349 reguł.
Fragment bazy reguł rozmytych dla oceny ruchu układarki regałowej do stanowisk odkładczych pokazano na rys. 5. Sformułowanie lingwistyczne jednej z reguł przedstawiono poniżej:

Jeżeli stanowisko odkładcze mag_11 jest wolne (cel_11=pusty) i paleta na stanowisku odkładczym mag_12 jest gotowa do odebrania z marszrutą technologiczną M2 (cel_12=M2) i stanowisko odkładcze mag_21 jest wolne (cel_21=pusty) i stanowisko odkładcze mag_22 jest wolne (cel_22=pusty) i stanowisko odkładcze mag_wyj jest wolne (cel_p=pusty) ? to wybór przemieszczenia palety z mag_12 do magazynu wyjściowego mag_wyj jest bardzo dobry.
Na rys. 6. przedstawiono fragment bazy reguł rozmytych, pozwalających na ocenę przemieszczenia wózka transportowego do stanowisk odkładczych przy obrabiarkach.
Przedstawiony fragment bazy reguł opisuje zależności i sytuacje, jakie mogą zajść w trakcie pracy wózka oraz ocenę wyboru palety, która może zostać pobrana w następnej kolejności do stanowiska odkładczego tokarskiego mag_11. Poniżej zapisano sposób czytania bazy reguł (reguła nr 55) ,oceniającej przemieszczenie do stanowiska odkładczego tokarskiego mag_11:

Jeżeli czas maszynowy na stanowisku odkładczym mag_11 jest teraz (czas_mag11=krótki) i czas maszynowy na stanowisku mag_12 jest długi (czas_mag12=długi) i czas maszynowy na stanowisku mag_21 jest długi (czas_mag21=długi) i czas maszynowy na stanowisku mag_22 jest długi (czas_mag22=długi) ? to wybór przemieszczenia palety na mag_11 jest bardzo dobry w 50%.

Wprowadzone do programu bazy reguł rozmytych pozwalają na tworzenie i korygowanie nowych zleceń produkcyjnych podczas pracy systemu. Na podstawie wnioskowania rozmytego główny program sterujący podejmuje decyzje o wyborze kolejnego ruchu transportowego i/lub manipulacyjnego. Te same bazy posłużyły do doświadczalnej weryfikacji pracy systemu.  

Doświadczalne badania weryfikacyjne 

 Stworzone oprogramowanie pozwoliło na zbadanie efektywności pracy miniaturowego elastycznego systemu wytwarzania oraz weryfikację skuteczności zaimplementowanych baz reguł rozmytych ze standardowymi algorytmami sterującymi (np. FIFO). Porównano wyniki, a przede wszystkim czasy realizacji zleceń produkcyjnych uzyskanych z modelu komputerowego z czasami realizacji tych zleceń w rzeczywistym systemie. Badania przeprowadzono dla zdefiniowanych zleceń produkcyjnych (liczbaprzedmiotów przeznaczonych do obróbki, czas trwania operacji obróbkowych oraz marszruty technologiczne). Do badań przyjęto zestaw zleceń produkcyjnych wraz z czasami obróbkowymi. Dane do eksperymentu zestawiono w tabelach 1. i 2.
Na rys. 7. przedstawiono wyniki badań pracy miniaturowego elastycznego systemu wytwarzania:

  • sterowanego z harmonogramu generowanego z modelu utworzonego w programie eM-Plant działającego z wykorzystaniem reguł FIFO – „sterowanie FIFO”;
  • sterowanego z harmonogramu generowanego z modelu utworzonego w programie eM-Plant działającego z wykorzystaniem wnioskowania rozmytego FL – „sterowanie FL”;
  • sterowanego online (regulowanego) w układzie zamkniętym z wykorzystaniem wnioskowania rozmytego FL – „regulacja FL”.

Kryterium oceny jest całkowity czas realizacji wszystkich zleceń produkcyjnych.
Wyniki przeprowadzonych badań pozwalają na stwierdzenie, że przy sterowaniu online (regulacji) systemu opartej na wnioskowaniu rozmytym uzyskano taką samą kolejność realizacji zleceń i prawie taki sam całkowity czas pracy systemu, jak w przypadku sterowania pracą systemu z harmonogramów generowanych w modelu utworzonym w programie eM-Plant. Jest to czas znacznie krótszy niż przy sterowaniu konwencjonalnym z harmonogramu generowanego z wykorzystaniem reguł FIFO. Świadczy to o poprawności działania opracowanej metody sterowania (regulacji), a istotną zaletą jest możliwość pominięcia czasochłonnego etapu ręcznego generowania harmonogramu, a tym samym skrócenia czasu reakcji systemu na zmianę zleceń.
Warto zauważyć, że względny błąd czasu realizacji badanego zestawu zleceń w modelu FL w stosunku do czasu realizacji tego samego zestawu zleceń w obiekcie rzeczywistym nie przekracza 4%, co świadczyć może o przydatności modelu do identyfikacji zdarzeń w rzeczywistym systemie.  

Trzy razy tak

Warto zwrócić uwagę na trzy istotne kwestie, które przemawiają za wykorzystaniem omawianej metody. Po pierwsze, zastosowanie konwencjonalnego sterowania związane jest z koniecznością wcześniejszego opracowania harmonogramu pracy systemu. W przypadku pojawiania się częstych zmian zleceń produkcyjnych czas związany z przygotowaniem nowego harmonogramu może powodować powstanie opóźnień w pracy systemu. Po drugie, sterowanie systemem przy wykorzystaniu metod sztucznej inteligencji daje możliwości bezpośredniej zmiany sterowania w miarę napływu nowych zleceń produkcyjnych. Może odbywać się na podstawie harmonogramów generowanych w trybie offline oraz na podstawie harmonogramów tworzonych online. I wreszcie automatyczna regulacja online z zastosowaniem wnioskowania opartego na logice rozmytej w stosunkowo prosty sposób pomija etap często długotrwałego wcześniejszego generowania harmonogramu.  

Artykuły z cyklu Akademia Robotechu powstają w oparciu o tematykę seminarium, które odbyło się na III Międzynarodowych Targach Produkcji i Technologii PROTECH’07. Kolejny Robotech odbędzie się we wrocławskiej Hali Ludowej – Hali Stulecia 19 i 20 listopada 2008 r.

Szczegółowe informacje znajdują się pod adresem www.targi-protech.pl.

Prof. dr hab. inż. Jerzy Honczarenko, dr inż. Andrzej Jardzioch oraz dr inż. Mariusz Sosnowski są pracownikami Wydziału Inżynierii Mechanicznej i Mechatroniki Politechniki Szczecińskiej.