Michal Stanek-Systemy Hybrydowe

20
Systemy Hybrydowe Wprowadzenie Michal Stanek ([email protected]) 21 stycznia 2005 Streszczenie Praca ta stanowi wprowadzenie w zagadnienie systemów hybrydowych (inteligentnych systemów hybrydowych). W dokumencie zawarte są pod- stawowe informacje dotyczące wyjaśnienia pojęć, przeglądu najczęściej wykorzystywanych metod sztucznej inteligencji oraz charakterystyki ich zalet i wad. Druga część pracy skupia się już na bardziej szczególowych aspektach zagadnienia. Wyjaśnione w niej zostaly powody oraz cele sto- sowania systemów hybrydowych, proponowane w literaturze architektury oraz modele komunikacji. Końcową część pracy stanowi analiza kierunków rozwoju. 1

description

mstanek.blogspot.com

Transcript of Michal Stanek-Systemy Hybrydowe

Page 1: Michal Stanek-Systemy Hybrydowe

Systemy HybrydoweWprowadzenie

Michał Stanek([email protected])

21 stycznia 2005

Streszczenie

Praca ta stanowi wprowadzenie w zagadnienie systemów hybrydowych(inteligentnych systemów hybrydowych). W dokumencie zawarte są pod-stawowe informacje dotyczące wyjaśnienia pojęć, przeglądu najczęściejwykorzystywanych metod sztucznej inteligencji oraz charakterystyki ichzalet i wad. Druga część pracy skupia się już na bardziej szczegółowychaspektach zagadnienia. Wyjaśnione w niej zostały powody oraz cele sto-sowania systemów hybrydowych, proponowane w literaturze architekturyoraz modele komunikacji. Końcową część pracy stanowi analiza kierunkówrozwoju.

1

Page 2: Michal Stanek-Systemy Hybrydowe

SPIS TREŚCI 2

Spis treści

1 Wstęp 4

2 Metody sztucznej inteligencji 52.1 Krótki rys historyczny . . . . . . . . . . . . . . . . . . . . . . . . 52.2 Przegląd metod sztucznej inteligencji . . . . . . . . . . . . . . . . 6

2.2.1 Systemy eskpertowe . . . . . . . . . . . . . . . . . . . . . 62.2.2 Sieci neuronowe . . . . . . . . . . . . . . . . . . . . . . . . 72.2.3 Algorytmy genetyczne . . . . . . . . . . . . . . . . . . . . 82.2.4 Logika rozmyta . . . . . . . . . . . . . . . . . . . . . . . . 10

2.3 Ocena użyteczności poszczególnych rozwiązań . . . . . . . . . . . 10

3 Systemy hybrydowe 123.1 Cele systemu hybrydowego . . . . . . . . . . . . . . . . . . . . . 123.2 Architektury budowy systemów hybrydowych . . . . . . . . . . . 14

3.2.1 Systemy niezależne . . . . . . . . . . . . . . . . . . . . . . 143.2.2 Systemy transformujące . . . . . . . . . . . . . . . . . . . 143.2.3 Systemy luźno związane . . . . . . . . . . . . . . . . . . . 153.2.4 Systemy zintegorwane . . . . . . . . . . . . . . . . . . . . 153.2.5 Systemy w pełni zintegrowane . . . . . . . . . . . . . . . . 15

3.3 Modele pracy systemu hybrydowego . . . . . . . . . . . . . . . . 163.4 Przykładowy system hybrydowy . . . . . . . . . . . . . . . . . . 173.5 Kierunki rozwoju systemów hybrydowych . . . . . . . . . . . . . 18

Spis rysunków

1 Kroki milowe rozwoju sztucznej inteligencji . . . . . . . . . . . . 52 Reprezentacja ideowa systemu ekspertowego . . . . . . . . . . . . 63 Model neuronu oraz sieci neuronowej . . . . . . . . . . . . . . . . 84 Przykład klasteryzacji danych . . . . . . . . . . . . . . . . . . . . 85 Schemat procesu działania algorytmu genetycznego . . . . . . . . 96 Przykładowa reprezentacja zbiorów za pomocą logiki rozmytej . . 107 Właściwości różnych metod sztucznej inteligencji . . . . . . . . . 118 Możliwe elementy systemu hybrydowego . . . . . . . . . . . . . . 139 Model systemu niezależnego . . . . . . . . . . . . . . . . . . . . . 1410 Model systemu transformującego . . . . . . . . . . . . . . . . . . 1411 Model systemu luźno powiązanego . . . . . . . . . . . . . . . . . 1512 Model systemu zintegrowanego . . . . . . . . . . . . . . . . . . . 1613 Model systemu w pełni zintegrowanego . . . . . . . . . . . . . . . 1614 Model przetwarzania w systemach hybrydowych . . . . . . . . . . 1715 Model ideowy połączenia Systemu ekspertowego z siecią neuronową 1816 Ilość prac naukowych na temat systemów hybrydowych . . . . . 19

Page 3: Michal Stanek-Systemy Hybrydowe

SPIS RYSUNKÓW 3

17 Model agenta w systemie wieloagentowym . . . . . . . . . . . . . 19

Page 4: Michal Stanek-Systemy Hybrydowe

1 WSTĘP 4

1 Wstęp

Wydaje mi się, że wprowadzenie do systemów hybrydowych powinienem roz-począć od wyjaśnienia samej nazwy, ponieważ dla osób niezaznajomionych zzagadnieniem, może wydawać się dziwna i niezrozumiała, a przez to mylnieinterpretowana.Według jednej z definicji słownikowych system jest układem elementów o

określonej strukturze, będący uporządkowaną logicznie całością. Hybryda, tonatomiast mieszaniec powstały ze skrzyżowania dwóch różnych gatunków, ras,odmian, dziwoląg łączący cechy różnych osobników. Idea systemu hybrydowegobazuje wobec tego na integracji wielu dostępnych technik, metod, narzędzi wjednej spójnej i określonej strukturze stanowiącej logicznie uporządkowaną ca-łość (wspólnie dążącą do osiągnięcia celu). Nasuwa się wobec tego pytanie, poco łączy się wiele różnych rozwiązań? Najogólniej można powiedzieć, że w celuosiągnięcia bardziej zadawalającego efektu niż przy wykorzystaniu każdej z tychtechnik osobno.Inteligentne systemy hybrydowe (Intelligent Hybrid Systems) starają się in-

tegrować odmienne techniki sztucznej inteligencji (logika rozmyta, sieci neu-ronowe, obliczenia ewolucyjne, metody probabilistyczne, maszynowe uczenie,systemy ekspertowe, itd. . . ). Fundamentem powstawania takich rozwiązań jeststwierdzenie, że metody te między sobą są komplementarne. W praktyce oznaczato, że metody te wzajemnie się uzupełniają, wady jednej są kompensowane zale-tami innej. Istnieje wiele możliwych kombinacji wśród systemów symbolicznychi metod tak zwanej miękkiej sztucznej inteligencji (soft-computing)1, oraz wielemożliwych sposobów ich łączenia. Dla przykładu sieci neuronowe mogą być łą-czone z logiką rozmytą, wnioskowaniem na podstawie przykładów, algorytmamigenetycznymi.W ostatnich latach, bardzo gwałtowny wzrost zapotrzebowania na wyrafi-

nowane i złożone rozwiązania z dziedziny inteligentnych systemów informatycz-nych sprawia, że osiągnięcie pełnego sukcesu nie jest możliwe bez wykorzystaniamożliwości, jakie oferują nam systemy hybrydowe. Reprezentacja i manipula-cja, przy pomocy komputerów, dużymi ilościami wiedzy oraz zapewnienie ichintegralności, spójności i efektywności wykorzystania jest jednym z kluczowychnurtów badań w dziedzinie szeroko pojętej sztucznej inteligencji. Należy zda-wać sobie sprawę z tego, że przyjęty przez nas format przechowywania i repre-zentacji wiedzy powinien być w stanie poradzić sobie z pewnymi oczywistymiproblemami. Niedokładność i niekompletność zgromadzonej wiedzy to jeden znich. Różne sposoby przechowywania tejże wiedzy (np. sieci neuronowe, logikarozmyta, systemy ekspertowe) posiadają specyficzne własności radzenia sobie zdanymi niepewnymi, nieprecyzyjnymi albo nawet nieprawidłowymi. Pewne me-tody lepiej nadają się do przechowywania danych numerycznych, jeszcze innesprawdzają się lepiej, kiedy pragniemy operować na danych w postaci symbo-licznej. Nie ma zadowalającego uniwersalnego rozwiązania, pozwalającego radzićsobie z wszystkimi problemami związanymi z reprezentacją wiedzy.

1Pierwszy raz użył tego terminu Lotfi A. Zadeh 1995

Page 5: Michal Stanek-Systemy Hybrydowe

2 METODY SZTUCZNEJ INTELIGENCJI 5

2 Metody sztucznej inteligencji

2.1 Krótki rys historyczny

Podobnie jak wiele innych, sztuczna inteligencja jest dziedziną nauki, która roz-wija się w bardzo prężny sposób. W stosunkowo krótkiej historii, bo zaledwie 60letniej, zaproponowano wiele koncepcji, które w znaczącym stopniu przyczyniłysię do rozwoju, nie tylko jej, ale również wielu innych dziedzin w tym np. teoriisterowania i podejmowania decyzji. Pewne kroki milowe rozwoju AI (ArtificialIntelligence) prezentuje rysunek 1.Wiele proponowanych teorii inspirowanych było przez naturę. Podczas gdy

jedne próbowały ją naśladować (systemy ekspertowe, wnioskowanie na podsta-wie przykładów, logika rozmyta) inne ją kopiowały (sieci neuronowe, algorytmygenetyczne). Bardzo dużo danych wdrożeń systemów sztucznej inteligencji, pro-jektowanych jako systemy ekspertowe, miało miejsce na przełomie lat 1970 -1980 (MYCIN, DENDRAL, PROSPECTOR). Systemy te zostały tak oto zde-finiowane przez prof. Feigenbaum’a:

”inteligentne programy komputerowe wykorzystujące wiedzę orazmechanizm wnioskowania w celu rozwiązania problemów, które sąna tyle skomplikowane, że celem ich rozwiązania wymagają szczegó-łowej ekspertyzy wykonanej przez człowieka”.

Każde z rozwiązań posiadało jednak pewne braki i ograniczenia. Problememsystemów ekspertowych była między innymi akwizycja wiedzy. Nowe rozwiąza-nia, były odpowiedzią na wady poprzednich. Nowe koncepcje wprowadzały nowemożliwości, ale jednocześnie nowe ograniczenia. W pewnym momencie stało sięoczywiste, że pewne metody da się, a nawet trzeba ze sobą łączyć, aby móc z ichpomocą rozwiązać problemy, które wcześniej były nierozwiązywalne (przy wy-korzystaniu tylko jednej). W ten sposób postało pojęcie i rozpoczęły się badanianad systemami hybrydowymi.

Rysunek 1: Kroki milowe rozwoju sztucznej inteligencji

Page 6: Michal Stanek-Systemy Hybrydowe

2 METODY SZTUCZNEJ INTELIGENCJI 6

2.2 Przegląd metod sztucznej inteligencji

2.2.1 Systemy eskpertowe

Tak jak zostało to przedstawione w poprzednim punkcie idea systemu eksperto-wego zainspirowana była sposobem, w jaki ludzie (eksperci w danej dziedzinie)rozwiązują zagadnienia i na podstawie pewnych przesłanek dochodzą do kon-kluzji (wniosków).Typowa budowa systemu ekspertowego została przedstawiona na rysunku 2.

Poszczególne bloki odpowiadają za inne funkcje, bloki przedstawione koloremjasnoszarym prezentują właściwą część systemu ekspertowego:

• Baza wiedzy - stanowi bazę faktów, jaką dysponuje system. Baza ta budo-wana jest na podstawie danych pozyskanych od ekspertów dziedzinowych,a przekazuje ją do systemu inżynier wiedzy.

• Blok rozumowania (mechanizm wnioskowania) jest to najważniejszy skład-nik systemu ekspertowego, jego zadaniem jest wyciąganie wniosków z prze-słanek i pytań wprowadzanych przez użytkownika i generowanie odpowie-dzi.

• Mechanizmu wyjaśniający - umożliwia wyjaśnienie, na życzenie użytkow-nika, dlaczego system udzielił takiej, a nie innej odpowiedzi, albo dlaczegosystem zadał użytkownikowi określone pytanie.

Ekstrakcją wiedzy od ekspertów zajmują się na ogół inżynierowie wiedzy.Jest to zwykle długi i żmudny proces, ponieważ wiedza stosowana przez ludzkichekspertów jest zwykle wiedzą praktyczną i intuicyjną.

Rysunek 2: Reprezentacja ideowa systemu ekspertowego

Page 7: Michal Stanek-Systemy Hybrydowe

2 METODY SZTUCZNEJ INTELIGENCJI 7

Początkowo systemy ekspertowe były podatne na problemy związane z akwi-zycją (pozyskiwaniem wiedzy) i wnioskowaniem z niepewnością. W gruncie rze-czy problem transferu wiedzy ludzkiej do systemu ekspertowego jest kluczowyi nazywany jest w literaturze ”‘wąskim gardłem akwizycji wiedzy”’ (knowledgeacquisition bottleneck) [Giarratano98]. Jest to oczywiste o ile zrozumie się jakciężkim i długim procesem jest przekazanie posiadanej przez eksperta wiedzy.Często wiedza ta jest rutynowa, bądź też intuicyjna, a sam ekspert nie zdajesobie sprawy z jej posiadania. Drugim problemem systemów ekspertowych jestprzekazywanie wiedzy nieścisłej, niepełnej i przybliżonej.

Systemy ekspertowe wykorzystywane są m.in. w zagadnieniach:

• diagnozowania,

• przewidywania,

• interpretacji,

• planowania,

• kontroli.

2.2.2 Sieci neuronowe

Idea sieci neuronowych zainspirowana została modelem funkcjonowania mózguczłowieka. Sieć neuronowa składa się z neuronów oraz połączeń miedzynero-nowych (rysunek 3). Sieć uczy się zależności, które występują między danymi,można powiedzieć, że sama ekstrahuje reguły, które w systemie ekspertowymtrzeba było przekazać ręcznie. Informacje na temat tych właśnie reguł kodowa-ne są w połączeniach miedzyneuronowych, a dokładniej w wagach wejść każde-go neuronu. W odróżnieniu od systemu ekspertowego, typowa sieć neuronowapracuje na danych numerycznych, a nie symbolicznych. Problemem staje sięproces wyjaśnienia, dlaczego sieć odpowiedziała tak a nie inaczej. Wiedza niejest zapisana w czytelny dla człowieka sposób. Można powiedzieć, że sieć działai generuje odpowiedzi, ale tak naprawdę nie wiemy, dlaczego takie a nie inne.Jest to bardzo poważne ograniczenie, ponieważ czasami musimy wiedzieć, najakiej podstawie została podjęta pewna decyzja. Dużą zaletą sieci neuronowychjest fakt automatycznego wydobywania wiedzy z przykładów uczących (tutajpojawia się problem doboru odpowiednich przykładów uczących i testujących).Oprócz sieci neuronowych uczonych z nauczycielem istnieją również sieci,

które uczą się bez nadzoru (rysunek 3). Wynikiem ich nauki jest rozpoznaniezależności, jakie występują miedzy danymi. Sieci takie potrafią wyróżniać kla-stry danych (grupy danych pod jakimś względem do siebie podobnych).

Sieci neuronowe wykorzystywane są m.in. do:

• rozpoznawania obiektów,

• kompresji danych,

Page 8: Michal Stanek-Systemy Hybrydowe

2 METODY SZTUCZNEJ INTELIGENCJI 8

• analizy serii danych i przewidywania,

• detekcji anormalnych stanów pracy systemu,

• analizy oraz klasteryzacji danych,

• wizualizacji danych - wielowymiarowych zbiorów danych.

Rysunek 3: Model neuronu oraz sieci neuronowej

Rysunek 4: Przykład klasteryzacji danych

2.2.3 Algorytmy genetyczne

Algorytmy genetyczne zainspirowane zostały obserwacją procesu ewolucji ży-wych organizmów. Koncepcja ta przeniesiona została przez Johna H. Holland’a

Page 9: Michal Stanek-Systemy Hybrydowe

2 METODY SZTUCZNEJ INTELIGENCJI 9

w świat komputerów. Wystarczy założyć, że pewnym środowiskiem jest dzie-dzina problemu, jaki chcemy rozwiązać. Kodujemy teraz potencjalne początko-we rozwiązania jako osobniki naszej populacji. Następnie uruchamiamy procesewolucji, w którym osobniki słabiej przystosowane eliminujemy (proces selek-cji), a osobniki lepsze poddajemy procesowi krzyżowania. Skrzyżowany osobnikposiada część informacji przekazanej przez swoich rodziców (potencjalnie do-bre rozwiązania). Z czasem osobniki będą coraz lepiej przystosowane do danegośrodowiska, czyli w naszym przypadku będą to coraz lepsze rozwiązania z prze-strzeni zadania.

Najczęściej działanie algorytmu przebiega następująco:

1. Losowana jest pewna populacja początkowa.

2. Populacja poddawana jest ocenie (selekcja). Najlepiej przystosowane osob-niki biorą udział w procesie reprodukcji.

3. Genotypy najlepszych osobników są ze sobą kojarzone poprzez złączaniegenotypów rodziców (krzyżowanie).

4. Przeprowadzana jest mutacja, czyli wprowadzenie drobnych losowych zmian.

5. Rodzi się drugie pokolenie i algorytm powraca do kroku drugiego, jeżelinie znaleziono dostatecznie dobrego rozwiązania. W przeciwnym wypadkuuzyskujemy wynik.

Rysunek 5: Schemat procesu działania algorytmu genetycznego

Algorytmy genetyczne stosowane są m.in. do:

• harmonogramowania,

Page 10: Michal Stanek-Systemy Hybrydowe

2 METODY SZTUCZNEJ INTELIGENCJI 10

• optymalizacji ułożenia elementów w układach cyfrowych,

• znajdowanie optymalnych wartości parametrów,

• optymalizacja długości drogi.

2.2.4 Logika rozmyta

Logika rozmyta (fuzzy logic)2, jedna z logik wielowartościowych (multi-valuedlogic), stanowi uogólnienie klasycznej dwuwartościowej logiki. Została zapropo-nowana przez Lotfi Zadeha w 1965 roku. W logice rozmytej między stanem 0(fałsz) a stanem 1 (prawda) rozciąga się szereg wartości pośrednich (rysunek 6),które można kojarzyć z prawdopodobieństwem. Logika rozmyta okazała się bar-dzo przydatna w zastosowaniach inżynierskich, czyli tam, gdzie klasyczna logikaklasyfikująca jedynie według kryterium prawda/fałsz nie potrafi skutecznie po-radzić sobie z wieloma niejednoznacznościami i sprzecznościami.

Logika rozmyta wykorzystywana jest m.in. w:

• elektronicznych systemach sterowania (maszynami, pojazdami i automa-tami),

• zadaniach eksploracji danych,

• budowie systemów ekspertowych

Rysunek 6: Przykładowa reprezentacja zbiorów za pomocą logiki rozmytej

2.3 Ocena użyteczności poszczególnych rozwiązań

W poprzednim podpunkcie zostało przedstawione kilka najważniejszych metodsztucznej inteligencji. Został przedstawiony ich sposób działania oraz przykła-dowe zastosowania. Zwrócona została również uwaga na pewne mocne i słabestrony każdego z rozwiązań.

2Definicja zaczerpnięta z Wikipedii, wolnej encyklopedii internetowej.

Page 11: Michal Stanek-Systemy Hybrydowe

2 METODY SZTUCZNEJ INTELIGENCJI 11

Przyjrzyjmy się najważniejszym ograniczenią każdej z prezentowanych wcze-śniej metod:

• Sieci neuronowe - brak wyjaśnień

• Sieci samoorganizujące - brak możliwości rozwiązywania zadań

• Systemy ekspertowe - nie są wystarczająco elastyczne

• Algorytmy genetyczne - czasami nie da się zastosować, ze względu nakłopot z kodowaniem osobników, specyficzną dziedzinę problemu lub teżinne specyficzne czynniki.

• Systemy rozmyte - są rozmyte. . .

Właściwości poszczególnych rozwiązań zostały przedstawione na rysunku 7.Oś pionowa demonstruje zdolność adaptacji metody do zmieniających się wa-runków pracy (w stosunku do założonych warunków początkowych), oś poziomademonstruje przejście pomiędzy poziomem operacji na liczbach do operacji nawiedzy formalnej.

Rysunek 7: Właściwości różnych metod sztucznej inteligencji

Page 12: Michal Stanek-Systemy Hybrydowe

3 SYSTEMY HYBRYDOWE 12

3 Systemy hybrydowe

3.1 Cele systemu hybrydowego

Projektując inteligentny system informatyczny musimy zadać sobie pytanie, ja-ki jest cel jego pracy oraz na jakim rodzaju danych system będzie on pracował.Wcześniej wspomniany był problem akwizycji wiedzy w kontekście jej niepew-ności, sprzeczności itp. Przyjrzyjmy się jednak, z jakim rodzajami wiedzy mamymy, na co dzień do czynienia:

• Film rozpocznie się o 8:15. [Dokładna]

• Film rozpocznie się między 8:00 a 9:00. [Nieprecyzyjna]

• Sądzę, że film rozpocznie się o 8:00, ale nie jestem pewien. [Niepewna]

• Film rozpocznie się około 8:00. [Przybliżona]

• Możliwe, że film rozpocznie się o 8:00. [Możliwa]

• Prawdopodobnie film rozpocznie się o 8:00 (90 %). [Prawdopodobna]

• Marek mówi, że film rozpocznie się o 8:00, ale Kasia mówi, że o 9:00. [Nie-spójna]

• Nie wiem dokładnie, o której rozpocznie się film, ale zazwyczaj zaczynasię o 9:00. [Niekompletna]

• Naprawdę nie wiem, o której zaczyna się film. [Nieznana]

• Jestem pewien, że film nie zaczyna się z rana. [Negacja]

• Film zaczyna się 2 godziny, po poprzedniej sesji. [Względna]

• Film jest grany dzisiaj o 8:00 oraz jutro o 10:00. [Alternatywna]

• Film zaczyna się o 8:00, 10:00 oraz 12:00. [Opcjonalna]

• Film może się rozpocząć tylko pod warunkiem, że reżyser przyjedzie. [Aso-cjacyjna]

• W następnym miesiącu. [Temporalna]

Wiedza ludzka jest często trudna do wyrażenia w formacie, na jakim za-zwyczaj operują komputery. Typowym jest fakt, że nie potrafimy sformułowaćnaszej wiedzy w specyficznym języku (formie) jej reprezentacji. Ludzie rozwią-zują problemy oraz operują na posiadanej wiedzy za pomocą następującychmechanizmów:

• wnioskowanie,

• analogia,

Page 13: Michal Stanek-Systemy Hybrydowe

3 SYSTEMY HYBRYDOWE 13

• dedukcja,

• bazowanie na wcześniejszych doświadczeniach.

Naturalna inteligencja bazuje na wielu ”hybrydowych” sposobach jej repre-zentacji i manipulacji. Podobnie celem stosowania systemów hybrydowych wdziedzinie sztucznej inteligencji jest:

• wykorzystanie całej dostępnej wiedzy na temat specyficznego problemu,

• możliwości skorzystania z wielu typów informacji (symbolicznej, nume-rycznej, nieścisłej, nieprecyzyjnej),

• zaoferowanie wielu różnych schematów rozumowania i bardziej trafnegowyszukiwania odpowiedzi na zadawane pytania,

• zwiększenia ogólnej efektywności systemu i eliminacja ujemnych stron po-jedynczych metod,

• stworzenie wydajnych i potężnych systemów rozumowania.

Aby osiągnąć te cele konstruuje się systemy hybrydowe w skład, którychmogą wchodzić metody przedstawione na rysunku 8

Rysunek 8: Możliwe elementy systemu hybrydowego

Page 14: Michal Stanek-Systemy Hybrydowe

3 SYSTEMY HYBRYDOWE 14

3.2 Architektury budowy systemów hybrydowych

Architektury systemów hybrydowych mogą być sklasyfikowane według stopniaintegracji i sposobu integracji. Stopień integracji jest kryterium do mierzeniastopnia integracji pomiędzy dwoma modułami systemu hybrydowego.

3.2.1 Systemy niezależne

Niezależne systemy hybrydowe charakteryzują się tym, że pomiędzy poszcze-gólnymi modułami systemu nie istnieje żadna komunikacja (rysunek 9). Każdymoduł, nie korzysta w żaden sposób z wyników pracy innego modułu. Podejściatego typu ma tą dobrą zaletę, że daje się zrównoleglić w bardzo dużym stopniu.Niezależność dwóch pracujących systemów może służyć również badaniu efek-tywności obu rozwiązań. Model ten może być również przyjęty w przypadkuprototypowania systemu.

Rysunek 9: Model systemu niezależnego

3.2.2 Systemy transformujące

System hybrydowy bazujący na modelu transformującym działa na takiej za-sadzie, że wyniki pracy jednego modułu systemu są transformowane do innegomodułu (np. jako dane wejściowe). Rozwiązanie takie nadaje się bardzo dobrzew przypadkach, kiedy przed przekazaniem danych do głównego modułu systemuwystępuje potrzeba ich wcześniejszej transformacji lub obróbki (pre-processingdanych).

Rysunek 10: Model systemu transformującego

Page 15: Michal Stanek-Systemy Hybrydowe

3 SYSTEMY HYBRYDOWE 15

3.2.3 Systemy luźno związane

W systemach hybrydowych o luźno powiązanej architekturze (rysunek 11) wy-stępuje już zjawisko komunikacji pomiędzy modułami. Najczęściej jako mediumwymiany danych używane są pliki, w których jeden proces zapisuje wyniki da-nych inny odczytuje, po czym może nastąpić zamiana. Ważne jest, że komuni-kacja w tym modelu jest dwustronna. Zaletami takiej architektury jest prosto-ta implementacji, przez co nadają się znakomicie do prototypowania pewnychrozwiązań. Dodatkowa zaleta może być fakt, że taka architektura pozwala nakorzystanie z modułów zewnętrznych dostarczonych przez inne osoby lub firmy.Prostota tego rozwiązania okupiona jest niestety wysokim kosztem komunikacji(odczytu. zapisu na dysku, ewentualnego parsowania danych).

Rysunek 11: Model systemu luźno powiązanego

3.2.4 Systemy zintegorwane

W systemach hybrydowych zintegrowanych przesyłanie informacji pomiędzymodułami odbywa się w pamięci operacyjnej komputera(rysunek 12). Aby moż-liwe było wykorzystanie tej architektury w systemie hybrydowym, każdy mo-duł musi zostać zaprojektowany tak, aby umożliwiał komunikację z częściamisystemu. Systemy takie są najczęściej dedykowanymi rozwiązaniami, które sąprojektowane w celu rozwiązanie konkretnego problemu. Ponieważ komunika-cja procesów następuje poprzez współdzieloną pamięć operacyjną, zrównole-glenie obliczeń jest czynnością dużo bardziej skomplikowaną niż w przypadkuwcześniejszych rozwiązań. Zaleta wykorzystania tej architektury jest mały kosztzwiązany z komunikacją. W rozwiązaniu tym wykorzystuje się również ideę ta-blicy (blackboard), jest to ogólnodostępny obszar pamięci, w którym wykonującesię moduły zapisują wyniki swojej pracy, tak aby wszyscy inni mogli z nich na-tychmiast skorzystać.

3.2.5 Systemy w pełni zintegrowane

W architekturze w pełni zintegrowanego systemu hybrydowego moduły dzieląmiędzy sobą zarówno wiedzę jak również struktury danych (rysunek 13). Zde-cydowanie się na tą architekturę powoduje bardzo mocne powiązanie każdegomodułu z resztą systemu, jednak zaletą jest usunięcie zbytecznej redundancji

Page 16: Michal Stanek-Systemy Hybrydowe

3 SYSTEMY HYBRYDOWE 16

Rysunek 12: Model systemu zintegrowanego

elementów. Możliwe jest również pełne kontrolowanie jednego modułu przez in-ny (np. algorytm genetyczny kierujący pracą innego algorytmu genetycznego),co powoduje większe możliwości rozwiązywania problemów. Niewątpliwą wadątakich systemów jest to, że są to rozwiązania ściśle dedykowane pod dany typproblemu i istnieją małe szanse ponownego wykorzystania elementów systemuw innych projektach. Kłopotliwe może być również zapewnienie dostatecznegopoziomu równoległości, ze względu na dużą ilość zależności i powiązań między-modułowych.

Rysunek 13: Model systemu w pełni zintegrowanego

3.3 Modele pracy systemu hybrydowego

Istnieje kilka modeli pracy modułów systemu hybrydowego. Zostały one przed-stawione na rysunku 14. Opis sposobów integracji modułów:

• Przetwarzanie łańcuchowe - moduł przetwarzania symbolicznego (np.system ekspertowy), odgrywa rolę głównego procesu systemu. Jego pracamoże być wspierana przez prace przez pre - procesor oraz post-procesorbędący np. siecią neuronową. Możliwa jest również konfiguracja odwrotna.

• Meta przetwarzanie - jeden moduł odgrywa rolę głównego procesu roz-wiązującego problem inne natomiast pracują w meta - warstwie pełniącrole np. dozorcy, kontrolera wydajności, detektora błędów, w stosunku doprocesu w niższej warstwie.

• Przetwarzanie wewnętrzne - jeden lub więcej modułów jest osadzo-nych (wbudowanych) w innych. Praca elementów osadzonych jest koordy-

Page 17: Michal Stanek-Systemy Hybrydowe

3 SYSTEMY HYBRYDOWE 17

nowana przez proces główny.

• Przetwarzanie wspólne - oba moduły są równorzędnymi partneramipodczas rozwiązywania problemu. Każdy proces może działać bezpośred-nio na środowisku, w którym pracują, oraz każdy może transmitować orazobierać informacje od drugiego.

Rysunek 14: Model przetwarzania w systemach hybrydowych

3.4 Przykładowy system hybrydowy

Tradycyjne systemy ekspertowe podczas swojej pracy manipulują symbolami.Zaletami tego podejścia jest zdolność do zrozumiałej reprezentacji posiadanejwiedzy. Z drugiej zaś strony istnieją sieci neuronowe, w których wiedza zakodo-wana jest w postaci wag połączeń miedzyneuronowych. Wiedza ta nie jest ła-twa do zinterpretowania i zanalizowania. Sieci neuronowe można traktować jakczarne pudełka, które działają, ale ciężko powiedzieć dlaczego i czy na pewnopoprawnie. Jednakże sztuczne sieci neuronowe są bardzo potężnym narzędziemużywanym do wydobywania (akwizycji) wiedzy z istniejących danych oraz dojej generalizacji. Sieci neuronowe z łatwością radzą sobie z informacją nieścisłączy niepewną, która dla systemów ekspertowych stanowi poważny problem.Podczas, gdy tradycyjne systemy ekspertowe zostały zaprojektowane do

przechowywania wiedzy w postaci reguł (uzyskiwanej od ludzi i przez nich ro-zumianej), systemy takie jak sieci neuronowe są używane do nauki i generali-zowania wiedzy zawartej w praktycznych przypadkach. Połączenie tych dwóchpodejść (systemów ekspertowych z sieciami neuronowymi), pozwoliło wykorzy-stać te dwa komplementarne podejścia w celu zwiększenia efektywności całego

Page 18: Michal Stanek-Systemy Hybrydowe

3 SYSTEMY HYBRYDOWE 18

Rysunek 15: Model ideowy połączenia Systemu ekspertowego z siecią neuronową

systemu. Wydobycie dodatkowych danych, wcześniej nieosiągalnych pozwoli-ło podnieść ogólną skuteczność wnioskowania, przy jednoczesnym zachowaniumożliwości objaśniających. Model ideowy takiego systemu ekspertowego zostałprzedstawiony na rysunku 15.

3.5 Kierunki rozwoju systemów hybrydowych

Aby stwierdzić, w jakim kierunku zmierza rozwój systemów hybrydowych, na-leżałoby się przyjrzeć, jakie rozwiązania stosuje się przy konstruowania nowo-czesnych systemów sztucznej inteligencji. Niestety informacje te są albo trudnoosiągalne, albo wręcz chronione i stanowią tak zwane Know-How firm. Inną me-todą jest porównanie liczby publikacji, jakie ukazują się na świecie z dziedzinysystemów hybrydowych. Ilość publikacji na temat różnych rozwiązań świadczyćmoże zarówno o jego stopniu przydatności jak i o kierunku i potencjalnych przy-szłych rozwiązań.Na rysunku 16, można zauważyć, że największa liczba publikacji dotyczy

połączenia systemów ekspertowych z sieciami neuronowymi. W następnej kolej-ności publikowane są artykuły na temat systemów ekspertowych i logiki rozmy-tej, sieci neuronowej i logiki rozmytej. Najmniejszym zainteresowaniem ciesząsię systemy hybrydowe próbujące wykorzystać zalety systemów ekspertowych ialgorytmów genetycznych oraz systemy złożone z wielu modułów, to ostatniepodejrzewać można wiąże się z faktem bardzo dużego skomplikowania takichsystemów.Nowe kierunki rozwoju systemów hybrydowych, poza badaniem skuteczności

różnych połączeń poszczególnych modułów, prowadzą do stworzenia ujednolico-nej architektury systemów hybrydowych oraz do standardowych modeli komu-nikacji. Powstał specjalny język służący komunikacji pracujących w systemiemodułów - CHARON.Kolejnym krokiem jest koncepcja systemu wieloagentowego. Na system wie-

Page 19: Michal Stanek-Systemy Hybrydowe

3 SYSTEMY HYBRYDOWE 19

Rysunek 16: Ilość prac naukowych na temat systemów hybrydowych

loagentowy składają się agenci (niezależne jednostki), egzystujące i wchodzące winterakcje ze środowiskiem, w którym przebywają. Model agenta przedstawionyjest na rysunku 17.Obecnie implementacja systemów hybrydowych odbywa się na klasycznym

ogólnodostępnym sprzęcie komputerowym. Kolejnym krokiem na drodze roz-woju systemów hybrydowych jest stworzenie dedykowanych architektur sprzętu(np. jak sterowniki rozmyte czasu rzeczywistego).

Rysunek 17: Model agenta w systemie wieloagentowym

Page 20: Michal Stanek-Systemy Hybrydowe

LITERATURA 20

Literatura

[1] Michał Białko Podstawowe własności sieci neuronowych i hybrydowych sys-temów eksperowych. Wydawnictwo Uczelniane Politechniki Koszalińskiej,2000

[2] Hybrid Intelligent Systems - niebieska książka zalana kawą ;-)

[3] Giarratano, Joseph and Riley, Gary. Expert Systems: Principles and Pro-gramming. 3rd Edition. PWS Publishing, Boston, MA. 1998.

[4] Fernando Osorio Hybrid Systems. P.R.I.S - N.U.S. Singapore, April 2001

[5] Athanosios Tsakonas, George Dounias Hybrid Computational IntelligenceShemes in Complex Domains: An extended review

[6] Rajeev Alur, Radu Grosu, Yerang Hur, Vijay Kumar, and InsupLee Modular Specification of Hybrid Systems in Charon URL:http://www.cis.upenn.edu/ alur,grosu,yehur,kumar,lee

[7] Laszló Monostori, József Hornyak, Csaba Egresits, Zsolt Janos ViharosSOFT COMPUTING AND HYBRID AI APPROACHES TO INTELLI-GENT MANUFACTURING ieaaie, 1998