Wsparcie planowania procesów produkcyjnych z wykorzystaniem narzędzi AI 4FACTORY – algorytmy genetyczne

Jedną z głównych potrzeb firm produkcyjnych jest ciągłe podnoszenie efektywności produkcji, co bezpośrednio przekłada się na wynik finansowy przedsiębiorstwa.

Wyzwanie – planowanie

Dobry plan produkcji jest tym, co ma decydujący wpływ na jej wydajność, jakość i pewność, że proces produkcji doprowadzi do wytworzenia produktów w odpowiedniej ilości w pożądanym/oczekiwanym czasie. Jakość planu produkcji jest czynnikiem decydującym o rentowności przedsiębiorstwa i jego możliwości dostosowania się do ciągle zmieniającej się sytuacji, związanej m.in. z zamówieniami składanymi przez klientów, dostawami surowców oraz możliwościami produkcyjnymi. Te z kolei determinowane są przez wydajność i dostępność stanowisk produkcyjnych oraz pracowników.

Jak doskonale wiemy, parametry te ulegają oczywiście ciągłym zmianom w czasie.

Biorąc powyższe pod uwagę – dla wyznaczenia planu produkcji o wysokiej jakości niezbędne są następujące czynniki:

  1. Dokładna znajomość aktualnego stanu procesu produkcji, stanów magazynowych, dostępności pracowników oraz dostępności stanowisk produkcyjnych.
  2. Skompletowanie wartości parametrów związanych z przewidywaną wydajnością, brakowością oraz awaryjnością poszczególnych procesów produkcyjnych.
  3. Wysokiej jakości optymalizator, dostosowany do rozwiązywania problemów o dynamicznej charakterystyce, który zaproponuje rozwiązanie problemu planowania.

Spełnienie warunku nr 1 jest często możliwe dzięki integracji z systemami klasy ERP 4FACTORY oraz systemami śledzenia produkcji (SFC 4FACTORY / IoT 4FACTORY).

Spełnienie warunku nr 2 jest znacznie trudniejsze, ponieważ wymaga szybkiej analizy dużej ilości dynamicznie zmieniających się danych. Na wartość parametrów produkcyjnych może wpływać wiele czynników. Na przykład na oczekiwaną brakowość produkcji może wpływać zastosowany materiał, maszyna i narzędzia (w tym ich stan techniczny), czy też pracownik wyznaczony do obsługi danego procesu produkcyjnego.

Ponadto, jej zmienny charakter wymaga nieustannego monitorowania i aktualizacji ogromnych ilości danych, co w praktyce może być niewykonalne nawet dla dużych i wyspecjalizowanych zespołów specjalistów.

Generalnie, tak duża ilość danych jest trudna do precyzyjnego zebrania i przetworzenia przez człowieka. W tym zakresie algorytmy sztucznej inteligencji znacznie przewyższają umysł człowieka, jeśli chodzi o możliwą do jej analizy ilość.

Jeśli chodzi o spełnienie warunku nr 3, DSR zakończyła niedawno realizację projektu (dofinansowanego ze środków NCBiR) wyspecyfikowania i wykonania właśnie takiego narzędzia – optymalizatora dla problemu planowania uwzględniającego zmienność informacji dotyczących parametrów produkcji.

W ramach zbudowanego rozwiązania wykorzystywane zostały przez nas metody sztucznej inteligencji, służące do optymalizacji, tzw. algorytmy ewolucyjne.

To innowacyjne narzędzie, tworzone z myślą o przedsiębiorstwach produkcyjnych, wykorzystuje najnowsze zdobycze nauki w zakresie obliczeń ewolucyjnych:

  • automatyczną dekompozycję struktury problemu (m.in. empiryczne uczenie się sprzężeń/powiązań oraz mechanizmy tzw. szarej skrzynki [ang. grey-box]) w trakcie procesu optymalizacji i wykorzystywanie tej wiedzy dla poprawienia skuteczności swojego działania;
  • mechanizmy związane z optymalizacją problemów dynamicznych, czyli takich, które ulegają częstym zmianom w czasie.

Zastosowanie tych mechanizmów pozwala na znaczne przyspieszenie procesu optymalizacji (wyniki optymalizacji mogą być dostępne nawet w czasie rzeczywistym) oraz podniesienie jakości proponowanego planu produkcji.

Algorytmy ewolucyjne uznawane są za jedne z najskuteczniejszych optymalizatorów dla problemów NP-trudnych, do których należy m.in. właśnie planowanie produkcji. Do tej pory nie były jednak jeszcze nigdy stosowane w tym zakresie. Zgodnie z naszą najlepszą wiedzą, zostają one wdrożone w harmonogramowaniu produkcji i przemyśle produkcyjnym po raz pierwszy.

Algorytmy ewolucyjne a algorytmy genetyczne

Pojęcie algorytmy ewolucyjne obejmuje metodologie inspirowane zasadą doboru naturalnego (K.Darwin) stosowane do rozwiązywania zagadnień trudnych.

W literaturze można znaleźć opisy wielu algorytmów, których działanie opiera się na wykorzystaniu mechanizmu ewolucji. Wyróżnia się następujące klasy algorytmów ewolucyjnych:

  • algorytmy genetyczne (ang. genetics algorithms – GA),
  • programowanie genetyczne (ang. genetic programming – GP),
  • strategie ewolucyjne (ang. evolutionary strategies – ES),
  • programowanie ewolucyjne (ang. evolutionary programming – EP).

Możemy także spotkać się z innymi, ogólnymi określeniami używanymi do opisu klasy metod wykorzystujących w procesie rozwiązywania problemu model obliczeniowy oparty na symulacji procesu ewolucji (wzorowany na ewolucji biologicznej). Są to obliczenia ewolucyjne (ang. evolutionary computing – EC) lub algorytmy ewolucyjne (ang. evolutionary algorithms – EA).

Sposób działania algorytmów genetycznych nieprzypadkowo przypomina zjawisko ewolucji biologicznej, ponieważ ich twórca- John Henry Holland właśnie z biologii czerpał inspiracje do swoich prac.

Metody te stosowane są do poszukiwania rozwiązań problemów trudno definiowalnych w sensie matematycznym (algorytm rozwiązania problemu jest nieznany lub bardzo złożony). Znajdują one zastosowanie wówczas, gdy nie jest dobrze określony lub poznany sposób rozwiązania problemu, ale znany jest sposób oceny jakości rozwiązania.

Algorytmy genetyczne są to algorytmy przeszukiwania przestrzeni alternatywnych rozwiązań oparte na mechanizmach doboru naturalnego (wybierany jest osobnik najlepiej przystosowany) oraz dziedziczności. Przetwarzają one populację osobników, z których każdy jest propozycją rozwiązania postawionego problemu. Każdemu osobnikowi jest przyporządkowana wartość liczbowa zwana przystosowaniem osobnika, która określa jakość reprezentowanego przez niego rozwiązania. Działanie algorytmu polega na wykonywaniu w pętli pewnego zestawu elementarnych operacji (m.in. selekcji czy krzyżowania) w wyniku czego powstają kolejne populacje osobników.

Każda nowa populacja składa się z osobników utworzonych z połączenia fragmentów najlepiej przystosowanych przedstawicieli poprzedniego pokolenia (krzyżowanie). W algorytmie występuje element losowości (selekcja), co nie oznacza, że przeszukiwanie przestrzeni potencjalnych rozwiązań ma charakter przypadkowy.

Wykorzystuje on doświadczenie wynikające z analizy osobników we wcześniejszych pokoleniach, co prowadzi do zbliżania się do najlepszego rozwiązania danego problemu. Są one najstarszym i najlepiej poznanym kierunkiem obliczeń ewolucyjnych. Pierwsze algorytmy genetyczne zostały opracowane w latach 60-tych XX wieku przez J. H. Hollanda z University of Michigan. Bardzo duże znaczenie w popularyzacji algorytmów genetycznych miał D. E. Goldberg.

Według Davida Goldberga algorytmy genetyczne posiadają następujące własności:

  • nie przetwarzają bezpośrednio parametrów zadania, lecz ich zakodowaną postać (często stosuje się kodowanie binarne),
  •  prowadzą poszukiwania wychodząc z wielu punktów (populacja zawiera wiele potencjalnych rozwiązań),
  • korzystają wyłącznie z funkcji przystosowania (celu) do oceny osobników w populacji, nie wymagają więc dodatkowych informacji o danym problemie np. algorytmu jego rozwiązania,
  •  stosują probabilistyczne (losowe) reguły wyboru.

Funkcje oceny w optymalizacji planów produkcyjnych

W odniesieniu do powyższego, wykorzystanie algorytmów ewolucyjnych do tworzenia optymalnych harmonogramów produkcji, należy rozumieć jako takie, które są zgodne ze zdefiniowaną funkcją celu.

Nowatorska metoda planowania i harmonogramowania zleceń tworzona przez DSR, umożliwia optymalizację planu produkcji z uwzględnieniem kryteriów maksymalnej efektywności procesów produkcyjnych, minimalizacji czasu poświęcanego na przezbrojenia maszyn, obniżenie kosztów, optymalizację związaną z kryteriami ochrony środowiska, rentowności, zużycia energii i bezpieczeństwa planu.

Tworzenie harmonogramu wykorzystuje w tym wypadku metody optymalizacji uwzględniającej dekompozycję problemu oraz rozszerza zakres zoptymalizowanej przestrzeni o wnioski płynące z ciągłej analizy danych o produkcji. Tym samym nie tylko opis kolejno realizowanych zleceń, ale wszystkie krytyczne parametry wpływające na efektywność i jakość produkcji, np. nastawy maszyn, parametry środowiskowe, opis behawioralny pracującej załogi, itp. (jeśli tylko będą mogły być mierzone – przy czym patrz niżej) mogą  być uwzględniane podczas optymalizacji harmonogramu.

Dzięki zastosowaniu metod uczenia maszynowego został opracowany zestaw modeli służących do predykcji parametrów produkcji, które umożliwiają estymację niedostępnych wielkości wpływających na optymalizację harmonogramu. Uwzględnienie tych predykcji, bazujących na rzeczywistych danych pochodzących bezpośrednio z układów automatyki przemysłowej, umożliwia planowanie z dokładnością do jakości pracy pracownika, obniżenie prawdopodobieństwa awarii i nieplanowanych przestojów, usprawnienie logistyki zaopatrzenia w surowce, jak i dystrybucję wyrobów gotowych oraz obniżenia ilości braków, co w efekcie zwiększy OEE.

Planowanie produkcji – zastosowanie algorytmów genetycznych

Zadanie planowania produkcji w fabrykach jest oparte na następujących informacjach:

  1. Ilości dostępnych zasobów produkcyjnych, w tym liczbie i dostępności stanowisk produkcyjnych, urządzeń (narzędzi), które na tych stanowiskach pracują i są niezbędne do procesu produkcji, dostępności operatorów, itp.
  2. Jakie narzędzia (urządzenia), na jakim stanowisku produkcyjnym i z użyciem jakich zasobów (prąd, czas pracownika) przetworzą daną ilość wchodzących do procesu produkcji surowców, komponentów i półproduktów, w określoną ilość wychodzących z procesu półproduktów, wyrobów gotowych (WG), odpadu – czyli technologia produkcyjna.

Technologia produkcyjna obejmuje również taką informację jak wydajność (czas wykonania pojedynczego cyklu produkcyjnego) oraz brakowość (odsetek wychodzących z procesu produkcji WG i półproduktów, który nie zostanie uznany za prawidłowy w procesie kontroli jakości).

  1. O zapotrzebowaniu na WG w czasie (na kiedy jaka ilość WG ma zostać wykonana dla jakiego odbiorcy).
  2. O dostępnych surowcach oraz o planowanych dostawach tych surowców.

Posiadając powyższe informacje można zaproponować plan produkcji optymalizowany pod kątem wybranego kryterium (lub ich kompilacji wynikającej np. z sumy ważonej grupującej kilka kryteriów do jednego, łącznego). W przypadku zadań modernizacji planu produkcji obejmujących dużą ilość danych (liczba stanowisk, dostępnych technologii produkcyjnych, duża liczba materiałów, itp.) zadanie optymalizacji może okazać się kosztowne obliczeniowo.

Wytworzenie wysokiej jakości planu produkcji może zatem wymagać:

  • znacznej ilości zasobów obliczeniowych, które mogą okazać się tak duże, że oczekiwanie na wysokiej jakości plan nie będzie akceptowalne dla użytkownika;
  • wysokiej jakości optymalizatora zdolnego do znalezienia rozwiązań (planu) zdefiniowanej jakości;
  • optymalizator taki musi być przygotowany do uwzględniania różnych kryteriów optymalizacji, w tym ich kombinacji (np. w postaci sumy ważonej).

Należy jednocześnie zauważyć, że dane wejściowe do stworzenia planu produkcji, choć ulegają zmianom w czasie, to zwykle zmiany te są w mniejszym horyzoncie czasowym nieznaczne. Dysponując wysokiej jakości rozwiązaniem (planem produkcji) sprzed zmiany danych wejściowych problemu, można łatwiej i szybciej dokonać optymalizacji po zmianie. Takie podejście pozwala osiągać doskonałe wyniki optymalizacji przy minimalnych nakładach obliczeniowych. Zdarza się, że dla bardzo dużych (kosztownych w optymalizacji) i skomplikowanych (trudno znaleźć rozwiązania wysokiej jakości) instancji problemów można znajdować rozwiązania optymalne (lub bliskie optymalnym) w czasie rzeczywistym lub bliskim rzeczywistemu.

Trzeci z wymienionych powyżej wymogów jest możliwy do osiągnięcia przy założeniu oparcia optymalizatora na idei algorytmu ewolucyjnego (EA). Zgodnie z obecnym stanem nauki, EA to wysoce uniwersalne optymalizatory, które są użyteczne w optymalizacji wielu różnych kryteriów.

Wracając do idei wykorzystania w budowanym optymalizatorze mechanizmów rozwiązywania problemów o dynamicznej naturze. Powyżej rozpatrywaliśmy zadanie optymalizacji planu produkcji, gdy zmianie uległa niewielka część zamówień klientów fabryki. Zadanie optymalizacji po zmianie zamówień jest podobne, choć nie takie same jak zadanie przed zmianą. Zmiana zaledwie kilku parametrów produkcji może powodować, że zależności pomiędzy zmiennymi będą mieć zupełnie inną charakterystykę . Jednak plany produkcji, które charakteryzowały się wysoką jakością przed zmianą zamówień, będą zazwyczaj posiadać fragmenty, które będą wartościowe również po zmianie zamówień.

Liczba tych wartościowych fragmentów może obejmować tylko niewielką część planu produkcji (bowiem niewielka zmiana zamówień może spowodować jednak dużą zmianę w planie produkcji). Jednak optymalizator, który jest w stanie zidentyfikować te wartościowe fragmenty i wykorzystać je w procesie optymalizacji, znajdzie wysokiej jakości plany produkcji po zmianie zamówień znacznie szybciej niż optymalizator pozbawiony takiej wiedzy.

Podsumowując

Obserwując aktualne trendy i kierunki rozwoju technologicznego związane z wykorzystaniem narzędzi sztucznej inteligencji, w naturalny sposób pomyśleliśmy o zastosowaniu ich także do optymalizacji procesów produkcyjnych.

Mamy silne przeświadczenie, że zbudowany przez DSR optymalizator planów produkcyjnych bazujący z jednej strony na mechanizmach uczenia maszynowego, a z drugiej wykorzystujący algorytmy ewolucyjne, jest narzędziem pozwalającym w krótkim czasie na osiąganie bardzo dobrych wyników w tym zakresie.

Autor: Piotr Słowiński – Project Manager PMP® DSR S.A.

Źródło: dsr.com.pl