Dr hab. Sławomir Zadrożny, prof. PAN Warszawa, maj 2014 r. Instytut Badań Systemowych PAN ul. Newelska 6 01-447 Warszawa Recenzja rozprawy doktorskiej mgr inż. Krzysztofa ZANIEWSKIEGO pt. "Konstrukcja i testowanie automatów rozmytych za pomocą technik metaheurystycznych" Niniejsza recenzja została opracowana na prośbę Dyrektora Instytutu Badań Systemowych Polskiej Akademii Nauk, prof. dr. hab. inż. Zbigniewa Nahorskiego (por. pismo o znaku BA3-0004-9112/2014 z dnia 7 lutego 2014 roku). Recenzowana rozprawa doktorska dotyczy metod konstruowania pewnej klasy automatów skończonych, zgodnie z zadanym na wejściu ciągiem wejść i wyjść oraz metod testowania zgodności badanego automatu z podaną specyfikacją. W szczególności rozprawa dotyczy rozmytych automatów skończonych, co w dużym stopniu decyduje o jej oryginalności. W proponowanych w rozprawie rozwiązaniach stosuje się techniki z zakresu inteligencji obliczeniowej. Tematyka rozprawy jest nowoczesna i bez wątpienia należy do dyscypliny informatyka. Zadaniem postawionym w rozprawie jest opracowanie nowych metod konstrukcji rozmytych automatów skończonych oraz metod ich testowania. Zadanie to obejmuje kilka dodatkowych podzadań, takich jak opracowanie koncepcji zastosowania automatu dla danych ciągłych czy uogólnienie modelu automatu rozmytego. Zaproponowane w rozprawie rozwiązania można więc uznać za istotny wkład w teorię automatów rozmytych, obejmujący różnorodne aspekty tej teorii oraz jej praktyczne zastosowania. Recenzowana rozprawa doktorska składa się z 10 rozdziałów i liczy 142 strony. Podstawową część rozprawy, opisującą oryginalne rozwiązanie postawionego zadania, stanowią rozdziały od 6 do 9. Rozprawa zawiera bogaty spis literatury, obejmujący 125 pozycji. Omówię teraz treść poszczególnych rozdziałów, wskazując główne osiągnięcia doktoranta i ewentualne zauważone niedociągnięcia. We Wstępie doktorant pokrótce przedstawia koncepcję automatu skończonego i jego zastosowania. Omawia też w sposób syntetyczny zakres pracy, jej oryginalny. wkład oraz przeprowadzone eksperymenty obliczeniowe. Ważną część wstępu stanowi formalne postawienie zadania (celów pracy) oraz tez, które mają jednak w nieunikniony sposób nieco sztuczny charakter, jak w większości rozpraw doktorskich w obszarze nauk technicznych. Wstęp kończy krótki przegląd zawartości rozprawy. W rozdziale 2 wprowadza się definicje najważniejszych dla rozprawy pojęć: automatu skończonego i jego rozmytej wersji, przy czym ta druga definicja ma raczej nieformainy charakter. Ścisła definicja automatu rozmytego podana jest dopiero w rozdziale 5, co jest nieco niezręczne. Omawia się też inne warianty automatów (np. niedeterministyczne automaty skończone). Przedstawia się tu również krótko genezę automatów rozmytych i ich
możliwe praktyczne zastosowania. Omawia się zadanie konstrukcji automatu rozmytego na podstawie sekwencji wejść i wyjść i znane z literatury metody rozwiązania tego zadania, w szczególności z użyciem sieci neuronowych. Wskazuje się również, że w literaturze praktycznie brak prac dotyczących testowania automatów rozmytych. Rozdział zawiera też rozważania dotyczące technik uczenia aktywnego i uczenia na bieżąco, które później znajdują zastosowanie w proponowanych rozwiązaniach. Doktorant stosuje pojęcie automatu skończonego z wyjściem, co warto byłoby wyraźnie zaznaczyć w rozprawie. Rozdział 3 stanowi krótki przegląd wybranych pojęć z zakresu teorii zbiorów rozmytych i związanych z nimi metod analizy danych. Podaje się standardową definicję zbiorów rozmytych oraz omawia się operacje na nich, zdefiniowane za pomocą norm i konorm trójkątnych. Sporo miejsca poświęcono rozmytej analizie skupień, a w szczególności algorytmowi FCM. Algorytm ten jest stosowany w rozprawie do dyskretyzacji danych ciągłych, tak żeby mogły być przetwarzane przez rozmyty automat skończony. Warto byłoby w tym rozdziale omówić pojęcie relacji rozmytych i operacji na nich, jak również pojęcie iloczynu kartezjańskiego zbiorów rozmytych. Trochę mało przekonujące jest przedstawienie ogólnego zadania analizy skupień i technik stosowanych do jego rozwiązania. W rozdziale 4 omawia się metaheurystyki zastosowane do rozwiązania postawionego w rozprawie zadania. Opis obejmuje algorytmy symulowanego wyżarzania, zachłanny i roju cząstek. Istota poszczególnych metaheurystyk została poprawnie opisana, ale zostały one nieco zbyt skrótowo przedstawione. Rozdział 5 zawiera szczegółowe omówienie pojęcia rozmytego automatu skończonego, w ujęciu takim, jakie przyjęto w rozprawie. Zastępuje się pojedyncze elementy w definicji automatu zbiorami rozmytymi. Dotyczy to stanu w jakim znajduje się automat, symbolu podanego na wejściu oraz symbolu generowanego na wyjściu. Funkcja przejścia takiego automatu musi również być przystosowana do tych zmian i przyjmuje postać rozmytej relacji określonej na iloczynie kartezjańskim zbioru symboli wejściowych i zbioru stanów, przy czym ten ostatni występuje w tym iloczynie dwukrotnie. Podobnie przekształcona zostaje funkcja wyjścia automatu, która również przybiera postać relacji rozmytej określonej na odpowiednim iloczynie kartezjańskim zbiorów stanów, symboli wyjściowych i, ewentualnie, symboli wejściowych, zależnie od typu rozważanego automatu. Pokazane są przykłady rozmytych automatów skończonych, zarówno w postaci diagramów, jak i tabel reprezentujących odpowiednie relacje rozmyte. Należy podkreślić, że w całej rozprawie, najistotniejsze pojęcia są dobrze ilustrowane starannie przygotowanymi przykładami. Podana jest również alternatywna definicja rozmytego automatu skończonego, w której wprowadza się wartości progowe dla stopni przynależności symboli wejściowych w ten sposób, że te o mniejszym stopniu przynależności są przez automat ignorowane. Rozdział kończy przedstawienie taksonomii omawianych typów rozmytych automatów skończonych. Definicja rozmytego automatu skończonego podana jest nieco nieprzejrzyście. Wynika to, między innymi, z sygnalizowanego już wcześniej braku wprowadzenia w rozdziale 3 pojęcia relacji rozmytych i operacji na nich, a w szczególności operacji złożenia relacji. Właściwsze byłoby tu posługiwanie się, na przykład, pojęciem zbioru rozmytego symboli wejściowych zamiast pojęciem "wektora stopni przynależności" (por. np. iloczyn kartezjański q(k) i x(k) na s. 34). Występują tu również pewne niezręczności językowe, typu "przynależność do 2
stanów" czy "przynależności do symboli wejściowych", podczas gdy to stany i symbole wejściowe mają określone stopnie przynależności do odpowiednich zbiorów rozmytych. Trzeba jednak przyznać, że materia niełatwo poddaje się tu precyzyjnemu opisowi. Brak komentarza do rys. 5, że przedstawia on obraz automatu w chwili K = O; taki komentarz jest wymagany ze względu na pokazane na rysunku stopnie przynależności stanów, które mają charakter dynamiczny. Warto byłoby też powtórzyć przy okazji tego rysunku założenia o graficznej reprezentacji automatu, przyjęte na s. 13, dotyczące interpretacji faktu braku krawędzi w wierzchołku grafu dla danego symbolu wejściowego. Dodatkowo, ta interpretacja powinna być szerzej przedyskutowana w rozprawie. Brak też komentarza dotyczącego konsekwentnego sumowania się stopni przynależności do wartości l w tab. 3, przy jednoczesnym całkowitym braku takiego sumowania się w tab. 4. W rozdziale 6 omawia się zastosowanie algorytmu FCM do granulacji danych ciągłych, które mają być przetwarzane przez rozmyty automat skończony. Dotyczy to w szczególności symboli wejściowych i wyjściowych. Centroidy skupień uzyskanych z użyciem algorytmu FCM utożsamia się z symbolami wejściowymi/wyjściowymi. Dokonuje się dodatkowo dyskretyzacji (granulacji) przestrzeni każdej ze współrzędnych prototypu i uzyskuje się ich w pełni symboliczną reprezentację. Rozważa się również przekształcenie odwrotne, pozwalające zamienić wyjście automatu na liczbę rzeczywistą. Omawia się szczegółowo sposób prowadzenia granulacji na użytek różnych zadań, do których może zostać zastosowany rozmyty automat skończony, w szczególności do prognozowania i klasyfikacji. Tytuł rozdziału jest nieco niezręczny z powodu przyjęcia kalki w tłumaczeniu angielskiego słowa "concept" na "koncepcję", co w tym kontekście nie sprawdza się. Zbyt kategoryczne jest stwierdzenie, przewijające się przez całą rozprawę, że "dane świata rzeczywistego" są wyrażone wyłącznie w postaci liczb rzeczywistych (i podobne stwierdzenie na s. 49, że "W świecie rzeczywistym nie posługujemy się jednak symbolami..."). Poza tym, rys. 8 nie do końca stanowi przekonującą ilustrację rozważanego tu przekształcenia danych - przynajmniej jeśli nie opatrzy się go stosownym komentarzem. W rozdziale 7 szczegółowo i formalnie przedstawia się zadanie konstrukcji rozmytego automatu skończonego na podstawie sekwencji par symboli wejścia/wyjścia. Wprowadza się wskaźnik jakości, który pozwala ocenić na ile zgodnie z zadanymi sekwencjami skonstruowany automat odwzorowuje wejścia na wyjścia. Następnie doktorant proponuje dwuskładnikowy schemat konstruowania rozmytego automatu skończonego z użyciem technik metaheurystycznych. Pierwszy składnik dotyczy optymalizacji liczby stanów automatu, zaś drugi obejmuje optymalizację architektury automatu przy zadanej liczbie stanów. W rozprawie badane są konkretne warianty zaproponowanego schematu konstruowania automatu rozmytego. Różnią się one technikami metaheurystycznymi zastosowanymi w ramach poszczególnych składników schematu. Doktorant stosuje kombinacje algorytmów symulowanego wyżarzania (SA) i rojowego (psa). Kombinacje te badane są eksperymentalnie. Dla automatu o znanej architekturze generuje się sekwencje uczące wejść i wyjść, stanowiące zbiór danych uczących dla porównywanych algorytmów. Przyjmuje się przy tym pewne założenia upraszczające analizę i weryfikację wyników. Wyniki eksperymentów zostały przeanalizowane i na ich podstawie podjęto próbę opracowania algorytmu doboru danych uczących, które zapewniłyby jeszcze lepsze wyniki. Zaproponowano dwa takie podejścia, nawiązujące do koncepcji uczenia aktywnego i uczenia 3
na bieżąco, które doprowadziły do uzyskania lepszych wyników w powtórzonych eksperymentach obliczeniowych. Nieco brakuje pogłębionej analizy złożoności obliczeniowej zadania konstruowania automatu. Pewne jej elementy podano na s. 57. Pożądane byłoby również bardziej szczegółowe przedstawienie sposobu zastosowania metaheurystyk przy konstruowaniu automatu (na przykład bardziej szczegółowe omówienie reprezentacji problemu w ramach poszczególnych stosowanych technik). Brak komentarza na temat ciągłości danych prezentowanych na rys. 20 wobec wszędzie w tym rozdziale przyjmowanej symbolicznej postaci danych wejściowych/wyjściowych automatu. Brak również komentarza co do szczegółowej postaci algorytmu losowego i interpretacji uzyskanych z jego użyciem wyników, które są znacząco gorsze od pozostałych porównywanych algorytmów, ale bezwzględnie wydają się być lepsze niż można byłoby oczekiwać. Wskazane byłoby przeprowadzenie bardziej systematycznej, statystycznej analizy wyników eksperymentów obliczeniowych. Interesujące byłoby również bardziej szczegółowe porównanie architektury skonstruowanego automatu z oryginalnym automatem, z użyciem którego wygenerowano dane uczące. Taka analiza przeprowadzona jest tylko w odniesieniu do liczności zbioru stanów. Jednocześnie przy ilustracji wyników eksperymentów obliczeniowych (por. np. rys. 41) może warto znaleźć takie etykietowanie wierzchołków grafu, które najlepiej odpowiada grafowi reprezentującemu oryginalny automat. Oszczędność uzyskana przez zmniejszenie zbioru uczącego sekwencji wejścia/wyjścia (por. zdanie "W drugim przypadku otrzymamy... " na s. 75) wymaga dalszego uzasadnienia ze względu na konieczność wielokrotnego powtarzania procesu uczenia, który prowadzi do tej redukcji zbioru uczącego. Rozdział 8 dotyczy drugiego głównego podzadania postawionego w rozprawie, to jest testowania automatów. Najpierw omawia się znane w literaturze techniki testowania automatu skończonego. W szczególności rozważa się zagadnienie testowania zgodności zadanego automatu, traktowanego jako "czarna skrzynka", z podaną specyfikacją automatu skończonego. Główną uwagę przykłada się do metod opartych na tzw. unikalnych sekwencjach wejścia-wyjścia (Ula). Sekwencja taka zdefiniowana jest dla danego stanu i jej zastosowanie pozwala stwierdzić czy automat aktualnie znajduje się w tym stanie, czyli rozwiązuje ona zadanie weryfikacji aktualnego stanu automatu. Taka weryfikacja stanowi niezbędny element wielu procedur testowania zgodności automatu ze specyfikacją. W dalszej części rozdziału omawia się znane z literatury zastosowania metaheurystyk do generowania Ula i proponuje się własną metodę. Polega ona na zastosowaniu algorytmu psa z dwukryterialną funkcją przystosowania, która bierze pod uwagę zarówno unikalność sekwencji, jak i jej długość. Proponuje się odpowiednie kodowanie sekwencji, wymagane dla zastosowania psa. Doktorant przeprowadził eksperymenty obliczeniowe potwierdzające skuteczność zaproponowanej metody, chociaż ich zakres nie pozwala na wyciągnięcie daleko idących wniosków. Wreszcie, wp. 8.5 proponuje się metodę hybrydową, która daje najlepsze wyniki w kolejnych eksperymentach obliczeniowych. Polega ona na połączeniu algorytmu zachłannego i genetycznego. Pierwszy z algorytmów odgrywa główną rolę i generuje rozwiązania na podstawie tzw. ziarna, które z kolei dobierane jest z użyciem algorytmu genetycznego. Dla przyspieszenia obliczeń wprowadza się uproszczoną postać funkcji przystosowania. Szczegółowo przedstawia się zasadę funkcjonowania zaproponowanego algorytmu hybrydowego. Równie szczegółowo omawia się wyniki eksperymentów obliczeniowych, analizując skuteczność metody w zależności od liczby stanów 4
przedmiotowego automatu skończonego i gęstości jego grafu, jak również od liczności jego alfabetu symboli wyj ściowych. Pożądany byłby bliższy opis algorytmu losowego, stosowanego do porównań w eksperymentach obliczeniowych. Notacja przyjęta w (39) jest niejasna. W rozdziale 9 rozważa się zagadnienie testowania rozmytego automatu skończonego. Proponuje się zastosowanie w tym celu kilku metod. Najprostsza to losowe generowanie testowych sekwencji wejścia/wyjścia. Używa się przy tym różnych wskaźników oceny zgodności faktycznego wyjścia automatu z wyjściem wynikającym ze specyfikacji. Stosuje się tu między innymi te same wskaźniki, które zostały zaproponowane dla celów konstruowania rozmytego automatu skończonego w rozdziale 7. Kolejne metody testowania nawiązują do metod stosowanych dla klasycznych automatów skończonych. Jedna z nich polega na uproszczeniu automatu rozmytego do postaci automatu klasycznego i zastosowaniu jednej ze standardowych metod testowania. Metody przedstawione w tym rozdziale zostały opisane nieco zbyt skrótowo. Notacja q(s;) zastosowana we wzorze (45) powinna zostać odpowiednio skomentowana - wcześniej stosowane są oznaczenia postaci q;(t+ l). Rozdział 10 stanowi umiejętne podsumowanie treści rozprawy i uzyskanych w niej wyników. Praca jest dobrze napisana, zarówno pod względem redakcyjnym, jak i językowym. Doktorant nie ustrzegł się pewnej liczby niezręczności językowych, wśród których wymienić można następujące: - "przedstawiono [...J definicję automatów rozmytych posiadającą rozmyte stany,..." na s. 7 - "techniki heurystyczne konstruowały" na s. 7 - "wyliczania nowej przynależności" na s. 7 - "został wykorzystany do problemu detekcji" na s. 16 -,jest to przeciwieństwem automatu skończonego" na s. 17. - "aby spełnione były powyższe równania" na s. 25 - "Interpretacja ziaren informacji jest ograniczona..." - całe to zdanie na s. 48 nie jest jasne. - "do postaci rozumianej przez świat rzeczywisty" na s. 49 - "Oprócz konstrukcji automatu..." - całe to zdanie na s. 66 nie jest jasne - "wynik wzorcowy" czy "wynik idealny"? (por. np. s. 76); zdecydowanie należy dążyć do używania jednolitej terminologii W rozprawie występuje pewna niewielka liczba błędów literowych: - "zaproponowano konstrukcj~ automatu rozmytego" na s. 14 - "Dla przykładu,jeżeli [...J. Automat wygeneruje..." na s. 33 - por. kolejność indeksów stosowanych w przypadku ryh (na s. 34 i dalej) z opisem relacji R na s. 33 - w Def. 3 brakuje wymienienia symbolu E - "z poza" na s. 57 - "sekwencji treningowych" czy "sekwencji testowych"? (por. podpis pod rys. 37) - wp. 7.8 użycie słowa "modelu" jest zbędne (por. "modelu automatu") - "w na wyjściu" na s. 86 -,,1 +1" na s. 88 powinno być poprzedzone: "strategia ewolucyjna" - "karamy" na s. 89 i na s. 96 (por. również "kara" na s. 101) 5
- "że automat osiągną" w podpisie rys. 56 - "Zgeneralizowana" na s. 117 - "Uruchomiamy" na s. 122 - "zbiorku testowego" na s. 122 - "unikalna sekwencje" na s. 126 Podsumowując, pomimo pewnych wcześniej wymienionych uwag krytycznych, moja ocena rozprawy jest pozytywna. Rozprawa dotyczy nowoczesnej i perspektywicznej tematyki rozmytych automatów skończonych. Kompleksowo rozważa się problem ich modelowania, konstruowania oraz testowania. Stosuje się przy tym w umiejętny sposób znane techniki metaheurystyczne, które są twórczo łączone, co prowadzi do uzyskania efektywnych algorytmów. Przeprowadzone zostały liczne eksperymenty obliczeniowe służące porównaniu różnych wariantów proponowanych rozwiązań. Postawione w rozprawie zadanie zostało więc rozwiązane z użyciem nowych metod zaproponowanych przez doktoranta. Można więc stwierdzić, że przedstawiona do recenzji rozprawa stanowi oryginalne rozwiązanie problemu naukowego i wykazuje erudycję Autora oraz jego zdolność do samodzielnego prowadzenia pracy naukowej. W związku z powyższym stwierdzam, że w mojej opinii praca spełnia wymagania stawiane rozprawom doktorskim przez stosowne przepisy i wnoszę o jej przyjęcie i dopuszczenie do publicznej obrony. \/!fl.... Il/ ) r-'.'... '. '~..,-,,/'~~ 6