• Nie Znaleziono Wyników

Index of /rozprawy2/11034

N/A
N/A
Protected

Academic year: 2021

Share "Index of /rozprawy2/11034"

Copied!
145
0
0

Pełen tekst

(1)Akademia Górniczo-Hutnicza im. Stanisªawa Staszica w Krakowie. Wydziaª Elektrotechniki, Automatyki, Informatyki i Inzynierii Biomedycznej. Rozprawa doktorska Model syntaktycznego rozpoznawania wzorców znieksztaªconych oparty na gramatykach ci¡gowych klasy DPLL(k). Tomasz Peszek. Promotor: dr hab. Janusz Jurek. Kraków 2015.

(2) Podzi¦kowania Do powstania tej pracy przyczyniªo si¦ wiele osób. Im wszystkim chciaªbym w tym miejscu podzi¦kowa¢ i przekaza¢ wyrazy szacunku. Dzi¦kuje Panu Doktorowi Habilitowanemu Januszowi Jurkowi za opiek¦ naukow¡, pomoc, cenne dyskusje i krytyczne uwagi, bez których ta praca z pewno±ci¡ by nie powstaªa. Panu Profesorowi Mariuszowi Flasi«skiemu dzi¦kuj¦ za zaufanie i pomoc w rozpocz¦ciu studiów doktoranckich w zakresie syntaktycznego rozpoznawania wzorców. Dzi¦kuj¦ pracownikom rmy Elektrowania Skawina S.A. oraz Tauron Polska Energia: Panu Dyrektorowi Ireneuszowi Šapi«skiemu, Panu Dyrektorowi Dariuszowi Šapi«skiemu, Panu In»ynierowi Rafaªowi Šapi«skiemu, Panu Dyrektorowi Dariuszowi Bukowcowi, Panu Dyrektorowi Grzegorzowi Szopie, Panu In»ynierowi Szymonowi Sapecie za pomoc w uzyskaniu danych koniecznych do implementacji opracowanego rozwi¡zania oraz wspóln¡ werykacj¦ przyj¦tego modelu prognozy. Chciaªbym wreszcie podzi¦kowa¢ mojej najbli»szej Rodzinie za cierpliwo±¢, wyrozumiaªo±¢, wsparcie i motywacj¦. Tomasz Peszek.

(3) Spis tre±ci 1 Wst¦p. 9. 2 Zaªo»enia modelu rozmytego. 20. 3 Model formalny automatu F DP LLA(k). 27. F DP LLA(k). 3.1. Ogólny opis automatu. 3.2. Automaty skªadowe automatu. F DP LLA(k). 27. . . . . . . . . . . . . . . .. 32. 3.2.1. Automat. PPA. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 32. 3.2.2. Automat. T DA. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 40. 3.2.3. Automat. P SA. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 49. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 55. F DP LLA(k). 3.3. Automat. 3.4. Konguracja automatu. 3.5. Zªo»ono±¢ automatu. 3.6. . . . . . . . . . . . . . . . . . . .. F DP LLA(k). F DP LLA(k). . . . . . . . . . . . . . . . . . . .. 58. . . . . . . . . . . . . . . . . . . . . .. 61. . . . . . . . . . . . . . . . . . . . .. 62. 3.5.1. Analiza zªo»ono±ci czasowej. 3.5.2. Analiza zªo»ono±ci pami¦ciowej. 3.5.3. Uwagi o modelu równolegªym. Porównanie modelu. . . . . . . . . . . . . . . . . . .. 66. . . . . . . . . . . . . . . . . . . .. 68. F DP LLA(k) z dotychczasowymi metodami syntak-. tycznego rozpoznawania wzorców znieszktaªconych/rozmytych. . . . . .. 70. 3.6.1. Gramatyki z korekcj¡ bª¦dów. . . . . . . . . . . . . . . . . . . .. 70. 3.6.2. Gramatyki stochastyczne . . . . . . . . . . . . . . . . . . . . . .. 71. 3.

(4) SPIS TRE‘CI 3.6.3. Model wykorzystuj¡cy konstrukcj¦ automatu. F DP LLA(k). . . .. 4 Implementacja. 73. 75. 4.1. Wprowadzenie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 75. 4.2. Struktury danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 76. 4.2.1. Plik zawieraj¡cy dane gramatyki. . . . . . . . . . . . . . . . . .. 77. 4.2.2. Plik zawieraj¡cy sªowo wej±ciowe. . . . . . . . . . . . . . . . . .. 79. 4.2.3. Klasa opisuj¡ca ta±m¦. IT. . . . . . . . . . . . . . . . . . . . . .. 80. 4.2.4. Klasy opisuj¡ce ta±my. M EM.T 1, M EM.T 2. mi¦ciow¡. 4.3. P DS. oraz struktur¦ pa-. . . . . . . . . . . . . . . . . . . . . . . . . . . .. P ST. 4.2.5. Klasa opisuj¡ca ta±m¦. 4.2.6. Klasa opisuj¡ca komórk¦. . . . . . . . . . . . . . . . . . . . .. ST AT E. 81 81. . . . . . . . . . . . . . . . . .. 82. Gªówne klasy systemu i ich metody . . . . . . . . . . . . . . . . . . . .. 82. 4.3.1. Klasa opisuj¡ca gramatyk¦ . . . . . . . . . . . . . . . . . . . . .. 82. 4.3.2. Klasa proces analizy sªowa w j¦zyku. 4.3.3. Automat. 4.3.4 4.3.5. DP LL(k) .. . . . . . . . . .. 83. PPA. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 84. Automat. T DA. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 84. Automat. P SA. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 85. F DP LLA(k). 4.4. Algorytm dziaªania automatu. 4.5. Testy zaimplementowanego parsera. . . . . . . . . . . . . . . .. F DP LLA(k). . . . . . . . . . . . .. 5 Aplikacja modelu. 85 88. 91. 5.1. Uzasadnienie aplikacji. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 91. 5.2. Uzasadnienie zastosowania syntaktycznych metod analizy wzorców . . .. 94. 5.3. Opis zastosowania . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 96. 5.3.1. Dane umo»liwiaj¡ce budow¦ i werykuj¡c¦ modelu. . . . . . . .. 96. 5.3.2. Model prognozy . . . . . . . . . . . . . . . . . . . . . . . . . . .. 97. 4.

(5) SPIS TRE‘CI. 5.3.3. Wykorzystanie. DP LL(k). 5.4. oraz. analizy. syntaktycznej. F DP LLA(k) .. opartej. na. modelu. . . . . . . . . . . . . . . . . . . .. 99. 5.3.4. Baza danych systemu prognozuj¡cego . . . . . . . . . . . . . . .. 101. 5.3.5. Generacja gramatyki. . . . . . . . . . . . . . . . . . .. 102. 5.3.6. Sposób budowy prognozy (korekty prognozy) . . . . . . . . . . .. 103. 5.3.7. Architektura systemu prognozuj¡cego . . . . . . . . . . . . . . .. 105. 5.3.8. Ogólny opis dziaªania systemu prognozuj¡cego . . . . . . . . . .. 108. Wyniki werykacji modelu . . . . . . . . . . . . . . . . . . . . . . . . .. 109. 5.4.1. Zakres rozpoznawanych wzorców. 109. 5.4.2. Efektywno±¢ prognozowania (dokªadno±¢ prognozy). DP LL(k). . . . . . . . . . . . . . . . . . . . . . . . .. 111. 6 Podsumowanie. 116. A Podstawowe poj¦cia teorii j¦zyków bezkontekstowych. 119. B Podstawowe poj¦cia j¦zyków programowanych. 126. C Zaªo»enia dla konstrukcji automatu F DP LLA(k) dla k>1. 134. 5.

(6) Spis rysunków 2.1. Typowy schemat procesu rozpoznawania wzorców . . . . . . . . . . . .. 21. 2.2. Skªadowe prymitywne, z których budowane b¦d¡ wzorce-trójk¡ty . . . .. 22. 2.3. Przykªadowe wzorce-trójk¡ty wraz z reprezentacjami symbolicznymi . .. 22. 2.4. Mo»liwe znieksztaªcenia w procesie identykacji prymitywów . . . . . .. 23. 3.1. Idea budowy automatu. 3.2. Schemat automatu. 3.3. Schemat automatu. F DP LLA(k). . . . . . . . . . . . . . . . . . . .. 30. PPA. . . . . . . . . . . . . . . . . . . . . . . . . . .. 33. T DA. . . . . . . . . . . . . . . . . . . . . . . . . . .. 41. 3.4. Organizacja pami¦ci dla ta±m MEM.T1, MEM.T2 . . . . . . . . . . . .. 43. 3.5. Schemat automatu. P SA. 3.6. Schemat automatu. F DP LLA(k). 3.7. Diagram stanów automatu. 4.1. Schemat implementacji automatu. 4.2. Diagram klas automatu. 4.3. Schemat procesu analizy wej±ciowego sªowa rozmytego przez automat. F DP LLA(k). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. F DP LLA(k). . . . . . . . . . . . . . . . . .. F DP LLA(k). F DP LLA(k). 50 57 59. . . . . . . . . . . . . .. 77. . . . . . . . . . . . . . . . . . . .. 86. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 87. 4.4. Czas analizy sªowa rozmytego w funkcji dªugo±ci sªowa. . . . . . . . . .. 89. 4.5. Strukturalna reprezentacja wybranych ksztaªtów (. bcefjj oraz bcde) i zbiór. skªadowych prymitywnych umo»liwiaj¡cych jego opisanie. . . . . . . . .. 6. 90.

(7) SPIS RYSUNKÓW. 5.1. Schemat procedury przygotowywania korekty prognozy zapotrzebowania na energi¦ elektryczn¡. . . . . . . . . . . . . . . . . . . . . . . . . .. 106. 5.2. Gªówne komponenty systemu prognozuj¡cego . . . . . . . . . . . . . . .. 107. 5.3. Ilo±ci. rozpoznanych. F DP LLA(k). wzorców,. zdolno±¢. uogólniania. przez. automat. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 110. 5.4. Ekran opracowania pojedynczej prognozy . . . . . . . . . . . . . . . . .. 115. 5.5. Ekran prezentuj¡cy zbiorcze wyniki systemu w trakcie przebiegu waliduj¡cego . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 7. 115.

(8) Spis tablic 4.1. Czas potrzebny na analiz¦ wej±ciowego sªowa rozmytego o ustalonej dªugo±ci. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 4.2. Czas potrzebny na analiz¦ syntaktyczn¡ wzorca reprezentuj¡cego ustalony ksztaªt w funkcji dªugo±ci sªowa koduj¡cego dany ksztaªt.. 5.1. . . . . .. 90. Porównanie dokªadno±ci prognoz tworzonych za pomoc¡ metod dotychczasowych, automatu. 5.2. 89. DP LL(k). oraz. F DP LLA(k). . . . . . . . . . . .. 113. Porównanie dokªadno±ci prognoz tworzonych za pomoc¡ metod dotychczasowych oraz automatu. F DP LLA(k). 8. . . . . . . . . . . . . . . . . . .. 114.

(9) Rozdziaª 1 Wst¦p Rozpoznawanie wzorców(. ang. pattern recognition1 ). jest od wielu lat dynamicznie. rozwijaj¡c¡ si¦ dziedzin¡ informatyki. Teoria rozpoznawania wzorców rozwin¦ªa si¦ w toku bada« nad sztuczn¡ inteligencj¡ [27, 101]. Jej podstawowym zagadnieniem jest rozpoznawanie przynale»no±ci ró»nego rodzaju obiektów (wzorców) do pewnych klas. Metody i techniki rozpoznawania wzorców znalazªy wiele praktycznych zastosowa« m.in. w rozpoznawaniu pisma oraz mowy, w biometrii, w analizie i przetwarzaniu obrazów wizyjnych, w analizie ksztaªtów, w analizie grafów, w analizie danych, w prognozowaniu, w klasykacji tekstów, w systemach wspomagaj¡cych diagnostyk¦ medyczn¡, w systemach naprowadzania i nawigacji, w systemach kontroli procesów produkcyjnych oraz wielu innych. Przykªady zastosowa« mo»na znale¹¢ w [4, 7, 12, 21, 37, 40, 42, 49, 50, 54, 6870, 7780, 98, 99, 101, 102, 107, 109]. W±ród metod rozpoznawania i analizy wzorców mo»na wyró»ni¢ dwie wa»ne grupy [42, 101]:. 1.. Metody teoriodecyzyjne.. W takim podej±ciu wzorzec traktowany jest jako. caªo±¢. Po wyodr¦bnieniu poszczególnych jego cech, jest on reprezentowany zwykle przez wektor cech i w takiej formie poddawany jest analizie. Efektem tego procesu, przeprowadzonego w oparciu o uprzednio zgromadzon¡ wiedz¦ oraz ustalone metody matematyczno-informatyczne, jest odpowiednie rozpoznanie da-. 1W. literaturze termin pattern recognition tªumaczy si¦ cz¦sto tak»e jako rozpoznawanie obrazów. Tym niemniej dla unikni¦cia w¡tpliwo±ci - sªowo 'obraz' mo»e kojarzy¢ si¦ wyª¡cznie z obiektami typu wizyjnego - w pracy b¦dziemy konsekwentnie posªugiwa¢ si¦ terminem rozpoznawanie wzorców. 9.

(10) 1 Wst¦p. nego obiektu. Przykªadem metod teoriodecyzyjnych s¡ techniki wykorzystuj¡ce sztuczne sieci neuronowe, systemy rozmyte, system ekspertowe, algorytmy ewolucyjne. Przegl¡d metod teoriodecyzyjnych mo»na znale¹¢ w [7, 27, 54, 68, 101, 109]. Wybrane zastosowania metod teoriodecyzyjnych zostaªy opisane w [69,70,99,100, 103]. 2.. Metody syntaktyczno-strukturalne.. Wzorzec jest traktowany jako struk-. tura zªo»ona ze skªadowych podstawowych (prymitywów). Rozpoznanie obiektu powstaje jako efekt procesu analizy strukturalnej, przy czym jej reguªy s¡ uzyskiwane poprzez analiz¦ zbioru mo»liwych struktur. Przykªadem tego rodzaju metod s¡ wszelkie techniki oparte na analizie j¦zyków formalnych ró»nych klas. Przegl¡d ró»nego rodzaju metod strukturalnych mo»na znale¹¢ w [27, 40, 42, 45, 46, 86, 101, 104]. Przykªadowe zastosowania metod syntaktycznych opisano w pracach [8, 4951, 73, 7683].. W przypadku metod drugiego rodzaju proces analizy rozbija si¦ zwykle na dwa etapy. W pierwszym z nich tworzona jest reprezentacja symboliczna obiektu, który ma zosta¢ poddany analizie. Procedura polega na wyodr¦bnieniu skªadowych podstawowych (prymitywów), z których zbudowany jest dany obiekt, oraz relacji, jakie zachodz¡ mi¦dzy tymi skªadowymi. Faza ta mo»e by¢ realizowana przez ró»ne techniki teoriodecyzyjne. Zastosowana technika w efekcie dostarcza reprezentacj¦ symboliczn¡ danego obiektu o ustalonej formie. Ta reprezentacja to sªowo (napis) b¦d¡ce elementem ustalonego j¦zyka formalnego. W drugiej fazie analizy utworzona reprezentacja symboliczna jest poddawana procesowi rozpoznania. Przy pomocy syntaktycznych metod rozpoznawania wzorców (gramatyk, j¦zyków formalnych, automatów etc.) zªo»ony opis obiektów jest rozkªadany na struktury podstawowe. Ze wzgl¦du na posta¢ u»ywanej reprezentacji strukturalnej mo»na podzieli¢ metody syntaktyczne na nast¦puj¡ce grupy [60]:. 1. metody ci¡gowe (wzorzec opisywany jest w postaci ci¡gu symboli), przykªady metod tego rodzaju mo»na znale¹¢ w [2, 28, 39, 57, 62, 72, 94, 97, 105]; 2. metody drzewowe (wzorzec opisywany jest w postaci drzewa), przykªady metod tego rodzaju mo»na znale¹¢ w [10, 13, 14, 41, 43]; 3. metody grafowe (wzorzec opisywany jest w postaci grafu), przykªady metod tego rodzaju mo»na znale¹¢ w [11, 1720, 2426, 37, 67, 108].. 10.

(11) 1 Wst¦p. W dalszej cz¦±ci pracy b¦dziemy zajmowa¢ si¦ wyª¡czenie metodami pierwszego rodzaju tj. metodami ci¡gowymi. Do gªównych zalet metod syntaktycznych nale»y zaliczy¢:. 1. mo»liwo±¢ analizy zªo»onych wzorców strukturalnych, 2. zdolno±¢ opisania du»ej (niesko«czonej) liczby zªo»onych obiektów za pomoc¡ sko«czonej liczby reguª generacyjnych, 3. jawn¡ reprezentacja efektu analizy danego obiektu (w postaci wywodu sªowa opisuj¡cego dany obiekt).. Z uwagi na wymienione zalety, metody syntaktyczne rozpoznawania wzorców znalazªy liczne zastosowania, w±ród których mo»na wyliczy¢ tylko: analiza chromosomów, analiza ksztaªtów 2D, analiza EEG, EKG, rozpoznawania mowy i wiele innych: [12, 30, 31, 36, 42, 83, 86, 101, 102]. Pocz¡wszy od powstania, metody strukturalne byªy jednak obarczone pewnymi sªabo±ciami. Spo±ród najpowa»niejszych mo»na wymieni¢ tutaj [31, 104]:. 1. stosunkowo maª¡ siª¦ opisow¡, je»eli postawiony zostanie warunek wielomianowo±ci algorytmów analizy (parsera) oraz inferencji gramatyki; 2. du»¡ wra»liwo±¢ na dane wej±ciowe - nawet jedna skªadowa reprezentacji strukturalnej, która jest rozpoznana bª¦dnie, mo»e zdecydowa¢ o niepowodzeniu caªego procesu analizy.. Pierwsz¡ z wad dostrze»ono ju» w ko«cu lat sze±¢dziesi¡tych ubiegªego wieku, czego efektem byªy liczne badania prowadzone nad rozszerzeniem zdolno±ci opisowej gramatyk bezkontekstowych. Na przestrzeni pi¦¢dziesi¦ciu lat powstaªo szereg formalizmów syntaktycznych rozszerzaj¡cych mo»liwo±ci opisowe gramatyk bezkontekstowych. Z najwa»niejszych nale»y tutaj wymieni¢ gramatyki indeksowane (Aho, [1]) i liniowo indeksowane (Gazdar, [44]), gramatyki z gªow¡ (ang.. head grammars,. Pollard, [89]),. gramatyki kombinatoryczno-kategoryjne (Steedman, [93]), gramatyki konjunkcyjne i boolowskie (Okhotin, [84], [85]), gramatyki programowane (Rosenkranz, [91]) i dynamicznie programowane (Flasi«ski, Jurek [28]), gramatyki rozszerzonych wyra»e« regularnych (ARE, ang.. augmented regular expressions, Alquezar, Sanfeliu, [5]), gramatyki 11.

(12) 1 Wst¦p. kontekstualne (Marcus, [74]) oraz gramatyki TAG (Joshi, Levy, Takahashi, Tree Adjoining Grammars [55], [56]). Warto podkre±li¢, »e dla wi¦kszo±ci z wymienionych typów gramatyk udaªo si¦ skonstruowa¢ algorytmy analizy dziaªaj¡ce w czasie wielomianowym (z wyj¡tkiem gramatyk indeksowanych i programowanych). Drugim elementem, istotnym ze wzgl¦du na mo»liwo±¢ praktycznego zastosowania, pozostawaªa kwestia konstrukcji wielomianowego algorytmu inferencji gramatyki danego typu na bazie próbki j¦zyka. Dotychczas takie algorytmy udaªo si¦ skonstruowa¢ jedynie dla gramatyk dynamicznie programowanych [61, 63, 64] oraz dla niektórych klas gramatyk kontekstualnych [6]. Warto przy tym wspomnie¢, »e na korzy±¢ gramatyk dynamicznie programowanych przemawia korzystniejsza zªo»ono±¢ obliczeniowa algorytmu inferencji gramatyki. Ze wzgl¦du na powy»sze, dobre dla zastosowa« praktycznych wªasno±ci, przyjrzyjmy si¦ bli»ej koncepcji gramatyk dynamicznie programowanych. Gramatyki tej klasy powstaªy jako rozwini¦cie idei gramatyk programowanych wprowadzonych przez Rosenkranza w ko«cu lat sze±¢dziesi¡tych ubiegªego wieku [91]. Podej±cie to polegaªo na okre±leniu dla ka»dej produkcji gramatyki zbiorów sukcesu (. pole sukcesu). i pora»ki. pole pora»ki). Ka»dy z tych zbiorów zawieraª indeksy produkcji gramatyki, które mog¡. (. by¢ u»yte po pomy±lnym (odpowiednio niepomy±lnym) zastosowaniu danej produkcji w trakcie wywodu. W ten sposób mo»na byªo okre±li¢ dodatkowe reguªy wywodu, które rozszerzaªy mo»liwo±ci opisowe gramatyk programowanych (w stosunku do gramatyk bezkontekstowych). Denicje oraz podstawowe wªa±ciwo±ci gramatyk bezkontekstowych mo»na znale¹¢ w Dodatku A. Gramatyki programowane zostaªy szczegóªowo opisane w Dodatku B. Przykªadowe zastosowania gramatyk programowanych mo»na znale¹¢ w [12] lub [42]. Nierozwi¡zanym problemem pozostawaª brak ogólnego i efektywnego obliczeniowo algorytmu analizy (parsingu) j¦zyków generowanych przez gramatyki programowane. W latach siedemdziesi¡tych ubiegªego wieku próbowano bezskutecznie rozwi¡za¢ ten problem [53,96,97], jednak badania nie doprowadziªy do jego ostatecznego rozwi¡zania. Sªabo±ci¡ przedstawionych algorytmów byªa wykªadnicza zªo»ono±¢ obliczeniowa. (z uwagi na konieczno±¢ przeszukiwania z powrotami). Cz¦±ciowe rozwi¡zanie problemu podano dopiero w latach dziewi¦¢dziesi¡tych ubiegªego wieku w trakcie bada« nad pewnym uogólnieniem gramatyk programowanych (Flasi«ski, Jurek, [28]). Celem bada« byªa konstrukcja gramatyk oraz automatów, które mogªyby zosta¢ wykorzystane. 12.

(13) 1 Wst¦p. do analizy syntaktycznej w systemie czasu rzeczywistego o znacznych wymaganiach czasowych. Gramatyki oraz automaty miaªy zosta¢ wykorzystane w projekcie. sches Elektronen-Synchrotron. Deut-. w Hamburgu do analizy wzorców generowanych przez. detektor cz¡stek elementarnych ZEUS z rat¡ przepªywu danych na poziomie 10GB/s. Konstruowana gramatyka musiaªa zatem speªnia¢ rygorystyczne wymagania dotycz¡ce efektywno±ci obliczeniowej. Z uwagi na przedmiot analizy syntaktycznej (analiza trendów, ksztaªtów, wykresów) poszukiwana klasa gramatyk musiaªa mie¢ tak»e stosunkowo du»¡ siª¦ opisow¡ (wi¦ksz¡ ni» gramatyki bezkontekstowe). Efektem tych bada« byªa konstrukcja gramatyk. DP LL(k). ª¡cz¡cych w sobie zalety gramatyk dynamicz-. nie programowanych (rozszerzona moc opisu) oraz gramatyk. LL(k). (proste algorytmy. konstrukcji automatu oraz analizy). Denicja gramatyk dynamicznie programowanych oraz. DP LL(k). (wraz z konstrukcj¡ automatu oraz algorytmem parsingu) zostaªa opu-. blikowana w [28, 29], kolejne jej rozszerzenia (w tym algorytm inferencji gramatyki) mo»na znale¹¢ w [6164]. Reasumuj¡c, z uwagi na praktyczne zastosowania, gramatyki klasy. DP LL(k) maj¡. nast¦puj¡ce po»¡dane wªasno±ci:. 1. posiadaj¡ dobr¡ efektywno±¢ obliczeniow¡ (zªo»ono±¢ obliczeniowa procesu analizy jest wielomianow¡ funkcj¡ dªugo±ci sªowa wej±ciowego [28]), 2. dysponuj¡ stosunkowo du»¡ siª¦ dyskryminacyjn¡ (s¡ silniejsze ni» gramatyki bezkontekstowe [28]), 3. istniej¡ efektywne algorytmy wnioskowania gramatyki (opis algorytmu opublikowano w [61, 64]).. Wobec powy»szych faktów, mo»na stwierdzi¢, »e gramatyki klasy. DP LL(k). zaadreso-. waªy cz¦±ciowo pierwsz¡ z wymienionych sªabo±ci metod strukturalnych tzn. posiadaªy stosunkowo du»¡ siª¦ opisow¡ przy dobrych wªasno±ciach obliczeniowych (zarówno je±li chodzi o algorytm analizy, jak równie» w zakresie algorytmów wnioskowania gramatyki). Drug¡ powa»n¡ sªabo±ci¡ metod opartych na paradygmacie strukturalnym byªa ich du»a wra»liwo±¢ na jako±¢ danych wej±ciowych [31, 42,60]. Proces analizy syntaktycznej danego obiektu zwykle rozbija si¦ na dwie fazy, z których pierwsza obejmuje generacj¦ reprezentacji symbolicznej. W drugiej fazie ustalony opis symboliczny jest poddawany. 13.

(14) 1 Wst¦p. procesowi analizy skªadniowej w odniesieniu do zbioru zdeniowanych reguª gramatycznych (parsing). Caªo±ciowy efekt procesu bardzo silnie zale»y od jako±ci danych dostarczanych w pierwszym etapie. Wystarczy, »e tylko jedna skªadowa prymitywna zostanie rozpoznana bª¦dnie, a caªy proces analizy mo»e zako«czy¢ si¦ niepowodzeniem. Z punktu widzenia zastosowa« praktycznych jest to powa»ny problem. W realnych sytuacjach znieksztaªcenia, szum, element niepewno±ci w danych wej±ciowych s¡ rzecz¡ zupeªnie naturaln¡. W literaturze mo»na spotka¢ dwa gªówne podej±cia do rozwi¡zania tego problemu. S¡ to metody wykorzystuj¡ce idee gramatyk z korekcj¡ bª¦dów (ang. error correcting, [2]) oraz gramatyk stochastycznych ( [42]). Podej±cie wykorzystuj¡ce gramatyki z korekcj¡ bª¦dów polega na rozszerzeniu wybranej gramatyki o symbole nieterminalne oraz dodatkowe produkcje, które b¦d¡ opisywa¢ bª¦dy, jakie mog¡ pojawi¢ si¦ przy rozpoznawaniu sªów danego j¦zyka. Mo»liwe s¡ przy tym trzy kategorie bª¦dów:. •. Bª¡d typu. I. tj. wstawiono symbol, którego nie powinien wyst¦powa¢ w danym. sªowie.. •. Bª¡d typu. U. tj. zamieniono ze sob¡ dwa symbole, wyst¦puj¡ce w danym sªowie.. •. Bª¡d typu. D. tj. usuni¦to symbol, który powinien wyst¡pi¢ w danym sªowie.. Dla ka»dej kategorii bª¦du, do danej gramatyki dodawane s¡ produkcje, które b¦d¡ opisywa¢ wyst¡pienie bª¦du okre±lonej kategorii. Wej±ciowe sªowo jest analizowane na bazie tak rozszerzonej gramatyki. Efektem analizy jest akceptacja sªowa wej±ciowego (w ramach pierwotnej gramatyki) lub jego odrzucenie wraz z podaniem listy bª¦dów, jakie wyst¡piªy w danym sªowie. Równocze±nie szacowana jest odlegªo±¢ sªowa wej±ciowego od najbli»szego mu sªowa w danym j¦zyku formalnym. Odlegªo±¢ jest tu rozumiana w sensie metryki odzwierciedlaj¡cej ilo±¢ bª¦dów tzw.. metryki Levenshteina. [40, 42]. Po. znalezieniu w danym j¦zyku formalnym sªowa, które jest w sensie metryki Levenshteina najbli»sze sªowu wej±ciowemu, przyjmuje si¦, »e sªowo to pojawiªoby si¦ na wej±ciu, gdyby nie wyst¡piªy w nim konkretne znieksztaªcenia. Wa»nym zaªo»eniem gramatyk z korekcj¡ bª¦dów jest znajomo±¢. a priori. kategorii bª¦dów, które mog¡ si¦ pojawi¢. wyrazach poddawanych analizie.. 14.

(15) 1 Wst¦p. W przypadku gramatyk stochastycznych, sytuacja jest nieco inna. Produkcje gramatyki i w konsekwencji tak»e sªowa j¦zyka generowanego przez dan¡ gramatyk¦ otrzymuj¡ dodatkowy atrybut tj. prawdopodobie«stwo. Dla konkretnej produkcji mówi ono jakie jest prawdopodobie«stwo zastosowania danej produkcji w wywodzie. Dla konkretnego sªowa z danego j¦zyka mówi ono, jakie jest prawdopodobie«stwo, »e dane sªowo nale»y do j¦zyka. Prawdopodobie«stwo to jest obliczane na podstawie produkcji u»ytych w wywodzie. Warto te» wspomnie¢, »e w przypadku gramatyk dynamicznie programowanych wst¦pnie analizowane byªy mo»liwo±ci ich rozszerzenia w kierunku gramatyk z korekcj¡ bª¦dów oraz gramatyk stochastycznych [29]. Sªab¡ stron¡ obydwu powy»szych podej±¢ jest zaªo»enie, »e pracuj¡ one na ostrych danych wej±ciowych - jednoznaczny opis symboliczny musi zosta¢ dostarczony przed rozpocz¦ciem procesu analizy. Tym samym, problematyczne staje si¦ ich zastosowanie w przypadku, gdy nie jest mo»liwe lub celowe dostarczenie 'ostrej' reprezentacji symbolicznej, gdy dane wej±ciowe maj¡ z natury rzeczy charakter rozmyty. W pewnych sytuacjach potrzebne jest bowiem dopuszczenie danych wej±ciowych o charakterze rozmytym:. •. Sytuacja, gdy w otrzymanym opisie symbolicznym obiektu jest du»a ilo±¢ szumu, z uwagi na sªab¡ jako±¢ danych wej±ciowych lub niedoskonaªo±¢ algorytmów analizy wst¦pnej i ekstrakcji cech wzorca.. •. Sytuacja, gdy reprezentacja analizowanego obiektu ulega znieksztaªceniom wskutek bª¦dów procesu rozpoznania b¡d¹ komunikacji.. •. Sytuacja, gdy do konstrukcji reprezentacji symbolicznej (poddawanej potem analizie strukturalnej) s¡ u»ywane warto±ci prognoz np. elementem opisu strukturalnego jest rozkªad temperatury powietrza w danym okresie w przyszªo±ci. Prognoza temperatury obarczona jest pewnym bª¦dem i wydaje si¦ celowe, aby do procesu analizy strukturalnej dopu±ci¢ wi¦cej informacji, ni» jedynie najbardziej prawdopodobn¡ warto±¢ temperatury (zamiast tego np. trzy najbardziej prawdopodobne warto±ci temperatury).. •. Sytuacja, gdy prymitywy tworz¡ce reprezentacje symboliczn¡, s¡ generowane na podstawie danych wej±ciowych z pomoc¡ ustalonej techniki klasykacyjnej (np.. 15.

(16) 1 Wst¦p. sieci neuronowej). W takim przypadku odpowiednia skªadowa prymitywna mo»e by¢ uto»samiana z pewn¡ klas¡ grupuj¡c¡ podobne zestawy danych wej±ciowych. W przypadku, gdy wynik dziaªania zastosowanej techniki klasykacyjnej jest niejednoznaczny(niewielki margines decyzyjny), celowe byªoby dopuszczenie do procesu analizy syntaktycznej wi¦kszej ilo±ci informacji - np. trzy klasy do których prezentowany zestaw danych wej±ciowych nale»y z najwi¦kszym prawdopodobie«stwem.. •. Sytuacja wymagaj¡ca zapewnienia modelowi pewnych zdolno±ci do generalizacji (gdy analizowane sªowo nie nale»y do j¦zyka, ale jest bliskie innemu sªowu, które jest ju» elementem danego j¦zyka). Aspekt istotny w przypadku, gdy system dysponuje jedynie cz¦±ciow¡ wiedz¡ dotycz¡c¡ klasy rozpoznawanych obiektów i musi posiªkowa¢ si¦ mechanizmem generalizacji posiadanej wiedzy.. Celem bada« prowadzonych w ramach niniejszej rozprawy, jest przygotowanie syntaktycznego modelu formalnego dla gramatyk klasy. DP LL(k), umo»liwiaj¡cego akcep-. tacj¦ oraz analiz¦ syntaktyczno-strukturaln¡ reprezentacji symbolicznej o charakterze rozmytym. Przedstawiony model zostanie dodatkowo zwerykowany w praktyce. Tez¦ pracy sformuªujemy w nast¦puj¡cy sposób:. Mo»liwe jest opracowanie nowego modelu syntaktycznego rozpoznawania wzorców uwzgl¦dniaj¡cego aspekt rozmycia/znieksztaªcenia wzorców, który posiada istotne zalety w porównaniu z innymi, dotychczas stosowanymi modelami syntaktycznego rozpoznawania wzorców. Postawiona teza zostanie wykazana w nast¦puj¡cy sposób:. 1. Zdeniowany. zostanie. nowy. model. syntaktycznego. rozpoznawania. wzorców. umo»liwiaj¡cy analiz¦ wzorców rozmytych/znieksztaªconych w oparciu o now¡ klas¦ automatów tj.. F DP LLA(k),. F DP LLA(k). Przedstawione zostan¡: konstrukcja automatu. jego sposób dziaªania oraz algorytm analizy sªów rozmytych (roz-. dziaª 3). Model automatu. F DP LLA(k). zostanie szczegóªowo opisany dla. k=1. tj. dla warto±ci wystarczaj¡cej z punktu widzenia praktycznych zastosowa« (co wynika z du»ej mocy "programowania"w gramatykach. k > 1. DP LL(k),. [28, 62]). Dla. zostan¡ przedstawione ogólne zaªo»enia dotycz¡ce konstrukcji automatu. (Dodatek C).. 16.

(17) 1 Wst¦p. 2. Zostanie przeprowadzone porównanie zdeniowanego modelu syntaktycznego rozpoznawania wzorców, opartego o automat klasy. F DP LLA(k),. z dotychczas sto-. sowanymi metodami analizy wzorców rozmytych/znieksztaªconych. 3. Zaprojektowana oraz zaimplementowana zostanie aplikacja realizuj¡ca zdeniowany model syntaktycznego rozpoznawania wzorców rozmytych/znieksztaªconych (rozdziaª 4). Nast¦pnie, z u»yciem skonstruowanej aplikacji, zostan¡ przeprowadzone podstawowe testy rozpoznawania prostych j¦zyków. W trakcie testów werykowana b¦dzie wra»liwo±¢ modelu na znieksztaªcenia danych wej±ciowych. 4. Model zostanie dodatkowo zwerykowany przez jego u»ycie w prototypie systemu generuj¡cego korekt¦ prognozy zapotrzebowania na energi¦. Werykacja b¦dzie przeprowadzona na danych realnych otrzymanych z rmy Taruon Polska Energia. W procesie sprawdzenia szczególny nacisk b¦dzie poªo»ony na kontrol¦ odporno±ci rozwi¡zania na rozmycie/znieksztaªcenie danych wej±ciowych.. Inspiracj¡ do bada« na gramatykami i automatami akceptuj¡cymi rozmyte dane wej±ciowe byª problem tworzenia krótkoterminowej prognozy zapotrzebowania na energi¦ elektryczn¡. Zastosowanie rozmytych danych wej±ciowych jest motywowane konieczno±ci¡ prognozy cz¦±ci zmiennych modelu, problemem maªego marginesu decyzyjnego przy klasykacji cz¦±ci zmiennych modelu oraz zapewnieniem caªemu rozwi¡zaniu pewnych zdolno±ci generalizacyjnych. Wst¦pne koncepcje zastosowania metod syntaktycznych do generowania krótkoterminowej prognozy zapotrzebowania byªy badane w pracach [32, 65, 66, 87]. W toku tych bada« sformuªowano wst¦pny model formalny automatu speªniaj¡cy wszystkie potrzebne wymagania dla procesu tworzenia krótkoterminowej prognozy zapotrzebowania na energi¦ elektryczn¡:. 1. model oparty o gramatyki o stosunkowo du»ej sile opisowej (wi¦kszej ni» gramatyki bezkontekstowej), konieczny do analizy skomplikowanych i zªo»onych ksztaªtów wielowymiarowych rozkªadów; 2. model posiadaj¡cy efektywne obliczeniowo algorytmy analizy konieczne dla zastosowania w dziaªaj¡cych online systemach prognostycznych; 3. model posiadaj¡cy efektywne obliczeniowo algorytmy wnioskowania gramatyki, konieczne dla automatycznej budowy bazy wiedzy na podstawie licznych danych historycznych;. 17.

(18) 1 Wst¦p. 4. model posiadaj¡cy pewne zdolno±ci generalizacji oraz przygotowany do analizy danych wej±ciowych o charakterze rozmytym, konieczny ze wzgl¦du na charakter wybranych zmiennych modelu (prognozy i klasykacje zmiennych).. Zaproponowany model formalny automatu analizuj¡cego zostaª oparty o gramatyki klasy. DP LL(k). oraz przygotowany do akceptacji rozmytych danych wej±cio-. wych. Rozszerzeniu ulegª sposób zapisu danych wej±ciowych - zamiast (jak w przypadku klasycznym) skªadowych prymitywnych na pozycjach sªowa wej±ciowego zapisywane s¡ rozmyte prymitywy (wektory zªo»one ze zwykªych skªadowych prymitywnych). Taka organizacja danych oznacza konieczno±¢ jednoczesnej analizy wielu (zamiast jednego) sªów, przy czym, ze wzgl¦du na aplikacj¦ modelu w systemach prognostycznych czasu rzeczywistego, konieczne jest zachowanie efektywno±ci obliczeniowej. Z uwagi na ten fakt, model przewiduje mo»liwo±¢ przetwarzania cz¦±ci zada« w trybie równolegªym. Przetwarzanie równolegªe jest metod¡ szeroko stosowan¡, je±li chodzi o popraw¦ parametrów wydajno±ci obliczeniowej. W systemach syntaktycznego rozpoznawania wzorców jest wiele praktycznych zastosowa« opartych o równolegªy model oblicze« [15,36,48,71,75,90]. Równolegªo±¢ stosowana jest gªównie w pierwszej fazie procesu (identykacja skªadowych prymitywnych). W [42] mo»na znale¹¢ tak»e przykªady zastosowania równolegªo±ci w fazie analizy syntaktycznej wzorców znieksztaªconych i rozmytych. Praktyczna werykacja modelu zostaªa wykonana na podstawie danych otrzymanych z rmy Tauron Polska Energia. Zaproponowane rozwi¡zania wspomagaj¡ce proces tworzenia krótkoterminowej (24h) prognozy zapotrzebowania na energi¦ elektryczn¡ zostaªo zaimplementowane z pomoc¡ probabilistycznych sieci neuronowych (rozpoznawanie prymitywów rozmytych, dostarczanie reprezentacji symbolicznej) oraz opracowanego w niniejszej pracy automatu klasy. F DP LLA(k).. Sieci neuronowe s¡ narz¦dziem. szeroko stosowanym do klasykacji danych. Podstawowe informacje dotycz¡ce sztucz-. Pro-. nych sieci neuronowych mo»na znale¹¢ w [98]. Probabilistyczne sieci neuronowe (. babilistic Neural Network, PNN). zostaªy wprowadzone w latach dziewi¦¢dziesi¡tych. ubiegªego wieku przez Spechta [95]. Ró»nica PNN w stosunku do klasycznych rodzajów sieci neuronowych polega na tym, »e s¡ one w stanie zwróci¢ nie tylko przyporz¡dkowanie ustalonego wzorca do jednej z klas, ale prawdopodobie«stwa przynale»no±ci danego wzorca do wszystkich klas. Automat. F DP LLA(k). umo»liwiª analiz¦ repre-. zentacji symbolicznych o charakterze rozmytym dostarczonych przez probabilistyczn¡. 18.

(19) 1 Wst¦p. sie¢ neuronow¡. Dzi¦ki jego zastosowaniu znacznie zmniejszono wra»liwo±¢ systemu na drobne znieksztaªcenia danych wej±ciowych i jednocze±nie podniesiono zdolno±¢ do generalizacji posiadanej wiedzy. Cele te udaªo si¦ osi¡gn¡¢ przy zachowaniu efektywno±ci obliczeniowej modelu. Rozprawa jest podzielona na nast¦puj¡ce cz¦±ci. W rozdziale 2 zostan¡ sformuªowane odpowiednie zaªo»enia oraz poj¦cia modelu rozmytego. Rozdziaª 3 zawiera opis modelu formalnego dla automatów klasy. F DP LLA(k).. Szczegóªy implementacji mo-. delu mo»na znale¹¢ w rozdziale 4. Aplikacja stworzonego modelu do generowania krótkoterminowej prognozy zapotrzebowania na energi¦ zostaªa opisana w rozdziale 5. W rozdziale 6 zamieszczono krótkie podsumowanie osi¡gni¦tych wyników. Informacje dotycz¡ce kontekstu bada«: dodatek A - podstawowe poj¦cia teorii j¦zyków bezkontekstowych; dodatek B - podstawowe poj¦cia j¦zyków programowanych; dodatek C zawiera zaªo»enia dla konstrukcji automatu. F DP LLA(k). 19. dla. k > 1..

(20) Rozdziaª 2 Zaªo»enia modelu rozmytego W przypadku wi¦kszo±ci metod o charakterze syntaktycznym sposób post¦powania jest podobny [42, 101]. Caªy proces rozbija si¦ na nast¦puj¡ce etapy:. 1.. Przygotowanie systemu rozpoznaj¡cego. Etap ten uwzgl¦dnia nast¦puj¡ce czynno±ci: a) Ustalenie sposobu reprezentacji zbioru wzorców, który ma podlega¢ analizie, postaci konkretnego j¦zyka formalnego. b) Wnioskowanie gramatyki generuj¡cej j¦zyk formalny opisuj¡cy przedmiotowy zbiór wzorców.. 2.. Proces rozpoznawania kolejnych wzorców.. Etap ten dla pojedynczego. wzorca rozbija si¦ na nast¦puj¡ce kroki: a) Preprocessing - czynno±ci wst¦pne konieczne do wykonania przed wªa±ciwym procesem analizy. Przykªadami czynno±ci wst¦pnych s¡ ltrowanie, wzmacnianie, wyostrzanie, rekonstrukcja, aproksymacja, ekstrapolacja, odszumienie itd. b) Segmentacja i dekompozycja wzorca - podziaª zªo»onego wzorca na prostsze, których analiza b¦dzie ªatwiejsza i mniej kosztowna. c) Identykacja skªadowych prymitywnych, relacji mi¦dzy nimi oraz generacja reprezentacji strukturalnej (symbolicznej).. 20.

(21) 2 Zaªo»enia modelu rozmytego. d) Wªa±ciwy proces analizy syntaktycznej w oparciu o analizator (parser) ustalonej klasy oraz zdeniowany zbiór reguª (gramatyka).. Schemat typowego procesu syntaktycznego rozpoznawania wzorców jest widoczny na obrazie 2.1.. Rysunek 2.1: Typowy schemat procesu rozpoznawania wzorców. Rozwa»ymy teraz dokªadniej etap identykacji prymitywów na przykªadzie problemu rozpoznawania ksztaªtów. Skªadowe prymitywne buduj¡ce wzorce, które maj¡ zosta¢ poddane procesowi analizy, zostaªy zdeniowane na rysunku 2.2. Klas¡ ksztaªtów poddawanych analizie b¦d¡ trójk¡ty zbudowane z podanych prymitywów. Ka»dy taki trójk¡t mo»e by¢ stworzony poprzez zªo»enie trzech skªadowych prymitywnych, z których jedna to. a,. druga to. bi ,. trzecia to. cj ,. i, j ∈ {0, 1, 2, 3}. abi cj , który zawiera. gdzie. Ka»demu wzorcowi tej postaci mo»emy przypisa¢ opis postaci. list¦ skªadowych pierwotnych, z których zostaª on utworzony. Dla ka»dego takiego wzorca mo»emy wi¦c wzajemnie jednoznacznie przyporz¡dkowa¢ ci¡g znaków gdzie. i, j ∈ {0, 1, 2, 3}.. abi cj ,. Przyporz¡dkowany w ten sposób ci¡g znaków b¦dziemy na-. zywa¢ reprezentacj¡ symboliczn¡ tego obiektu. Na rysunku 2.3 przedstawiono przykªadowe wzorce-trójk¡ty wraz z wªa±ciwymi reprezentacjami symbolicznymi. Mo»emy. 21.

(22) 2 Zaªo»enia modelu rozmytego. Rysunek 2.2: Skªadowe prymitywne, z których budowane b¦d¡ wzorce-trójk¡ty. Rysunek 2.3: Przykªadowe wzorce-trójk¡ty wraz z reprezentacjami symbolicznymi. wi¦c formalnie opisa¢ zbiór obiektów, które b¦dziemy chcieli podda¢ analizie jako:. {abi cj : i, j ∈ {0, 1, 2, 3}}. W ogólno±ci mo»na stwierdzi¢, »e w powy»szy sposób zdeniowali±my pewien model formalny umo»liwiaj¡cy rozpoznawanie i analiz¦ ksztaªtów zbudowanych z wymienionych skªadowych prymitywnych. Przeanalizujmy teraz praktyczne aspekty implementacji systemu rozpoznaj¡cego na bazie tak zdeniowanego modelu syntaktycznego. Dodatkowo przyjmijmy, »e przedmiotem analizy b¦dzie rozpoznanie trójk¡ta równobocznego. ab2 c2 .. Jednym z etapów pro-. cesu analizy (patrz rys. 2.1) jest procedura identykacji i wyodr¦bnienia prymitywów. W pewnych przypadkach wynik tego procesu mo»e by¢ niejednoznaczny/zaszumiony. W efekcie zamiast zidentykowania pojedynczego prymitywu, mo»emy otrzyma¢ rozpoznanie niejednoznaczne. Co wi¦cej, specyka procesu wyodr¦bnienia prymitywów, mo»e powodowa¢, »e wszystkie skªadowe prymitywne mogªy by¢ rozpoznane z jednakowym lub podobnym prawdopodobie«stwem. Na rysunku 2.4 (prawa ilustracja) zilustrowano problem niejednoznacznego rozpoznania prymitywów. Pierwsze skªadowe tj.. 22. a. oraz. b2.

(23) 2 Zaªo»enia modelu rozmytego. zidentykowano jednoznacznie. Je±li chodzi o rozpoznanie trzeciej skªadowej prymitywnej - jest ono niejednoznaczne. Mo»liwe s¡ trzy warianty rozpoznania tj.. c1 , c2 , c3 .. Je±li prawdopodobie«stwo ich rozpoznania jest podobne, warto podda¢ wszystkie trzy warianty pod analiz¦.. Rysunek 2.4: Mo»liwe znieksztaªcenia w procesie identykacji prymitywów. W takiej sytuacji nale»y rozszerzy¢ klasyczny model syntaktycznego rozpoznawania wzorce, modykuj¡c dwa elementy:. 1. poj¦cie skªadowej prymitywnej tak, aby uwzgl¦dniaªo mo»liwo±¢ opisu niejednoznaczno±ci; 2. proces analizy syntaktycznej tak, mógª akceptowa¢ sªowa zªo»one z prymitywów o charakterze rozszerzonym.. Rozpoczniemy od rozszerzenia denicji skªadowej prymitywnej:. DEFINICJA 2.1 Niech. Σ = {a1 , ..., an }. b¦dzie sko«czonym zbiorem symboli terminalnych.. wem rozmytym b¦dziemy nazywa¢ wektor postaci: (ai1 pi1 , ..., ais pis ), gdzie:. 1.. s. 2.. ai1 , ..., ais ∈ Σ. 3.. pi1 , ..., pis. liczba naturalna taka, »e. 1 ¬ s ¬ n;. ró»ne symbole terminalne;. dodatnie liczby rzeczywiste speªniaj¡ce warunki:. 23. Prymity-.

(24) 2 Zaªo»enia modelu rozmytego. a). Σsk=1 pik ¬ 1;. b). pi1 ­ · · · ­ p is .. skªadow¡ prymitywu rozmytego, a ka»dy symbol ai elementem prymitywu rozmytego. Wymiarem prymitywu rozmytego b¦dziemy nazywa¢ liczb¦ skªadowych prymitywu rozmytego. 2 Ka»d¡ par¦. (ai , pi ). b¦dziemy nazywa¢. Poj¦cie rozmytego prymitywu umo»liwia rozszerzenie poj¦cia prymitywu - zamiast jednej warto±ci skªadowej prymitywnej, mo»e ona przyjmowa¢ wiele warto±ci z okre±lonym rozkªadem prawdopodobie«stwa. Uogólniaj¡c model klasyczny, mo»emy z prymitywów rozmytych budowa¢ sªowa. Zdeniujmy wi¦c nast¦pne poj¦cie:. DEFINICJA 2.2 Sªowem rozmytym nazywamy sªowo postaci w1 ...ws , gdzie wi jest prymitywem rozmytym, a liczba s dªugo±ci¡ sªowa. Je±li dany wektor wi ma posta¢: wi = (aik1 pik1 , ..., aikni pikni ), wtedy. rozwi¡zaniem sªowem rozmytego. elementowy ci¡g symboli alfabetu mentem prymitywu rozmytego. wi .. Σ,. v1 · · · vs - dowolny si = 1, ..., s symbol vi jest ele-. nazywamy. je±li dla ka»dego. Zbiór sªów rozmytych dowolnej (sko«czonej). dªugo±ci nad alfabetem Σ b¦dziemy oznacza¢ symbolem Σ[∗] .. 2. W kolejnych rozdziaªach przedstawimy koncepcje automatu realizuj¡cego analiz¦ syntaktyczn¡ sªów rozmytych. Zanim zdeniujemy nowy model automatu, nale»y uogólni¢ poj¦cie wyniku analizy syntaktycznej znanego z metod ci¡gowych. Wynikiem analizy syntaktycznej ustalonego sªowa tomat. A. w. nad danym alfabetem. Σ wykonywanej przez au-. jest informacja, czy dane sªowo jest elementem j¦zyka rozpoznawanego przez. dany automat. L(A).. Informacj¦ t¦ mo»emy nazwa¢. kwalikatorem rozpoznania.. Zwykle ma ona charakter binarny, przyjmuj¡c jedn¡ z dwóch warto±ci:. 1. warto±¢. ACC. oznacza akceptacj¦ (sªowo nale»y do j¦zyka rozpoznawanego przez. dany automat); 2. warto±¢. REJ. oznacza odrzucenie (sªowo nie jest elementem j¦zyka rozpoznawa-. nego przez dany automat).. 24.

(25) 2 Zaªo»enia modelu rozmytego. Dla sªów rozmytych sytuacja si¦ jest nieco inna. Mo»emy rozwa»a¢ poszczególne rozwi¡zania wej±ciowego sªowa rozmytego i analizowa¢, czy s¡ one elementem ustalonego j¦zyka. W takim przypadku efektem procesu analizy wej±ciowego sªowa rozmytego przez automat. A. jest podziaª zbioru rozwi¡za« wej±ciowego sªowa rozmytego na pod-. zbiory dwojakiej postaci: 1. rozwi¡zanie rozmytego sªowa wej±ciowego wraz z kwalikatorem rozpoznania, 2. niepusty podzbiór zbioru rozwi¡za« rozmytego sªowa wej±ciowego (opisany wyra»eniem regularnym) wraz z kwalikatorem rozpoznania. Przypadek pierwszy ma miejsce, gdy automat przeanalizuje caªe rozwi¡zanie danego sªowa wej±ciowego. W takim wypadku kwalikator rozpoznania mo»e przyjmowa¢ warto±ci. ACC. lub. REJ .. Drugi przypadek ma miejsce, gdy analiza syntaktyczna danego rozwi¡zania wej±ciowego sªowa rozmytego zako«czy si¦ po przeczytaniu preksu tego danego rozwi¡zania. Kwalikator rozpoznania mo»e wtedy przybiera¢ jedn¡ z dwóch warto±ci: 1. warto±¢. REJ. - rozwi¡zanie sªowa wej±ciowego nie nale»y do j¦zyka rozpoznawa-. nego przez dany automat, 2. warto±¢. T ERM. - analiza danego rozwi¡zania sªowa wej±ciowego zostaªa prze-. rwana z uwagi na zachowanie wielomianowej zªo»ono±ci algorytmu analizy. Zwró¢my uwag¦, »e w takim wypadku analiza wszystkich rozwi¡za« wej±ciowego sªowa rozmytego, rozpoczynaj¡cych si¦ od danego preksu, zako«czy si¦ tym samym wynikiem opisywanym przez ten sam kwalikator. Mo»emy wi¦c przyporz¡dkowa¢ caªemu podzbiorowi rozwi¡za« wej±ciowego sªowa rozmytego jeden kwalikator rozpoznania.. DEFINICJA 2.3 Podziaª zbioru rozwi¡za« wej±ciowego sªowa rozmytego na niepuste, rozª¡czne podzbiory posiadaj¡ce okre±lone kwalikatory rozpoznania, który zostaª uzyskany w wyniku analizy syntaktycznej sªowa rozmytego, b¦dziemy nazywa¢. nikiem analizy syntaktycznej. PRZYKŠAD 2.1. Rozwa»my j¦zyk. L = {an bn :. n ∈ N+ }. rozszerzonym wyoraz wej±ciowe sªowo. rozmyte:. . . w = (a, 0.75), (b, 0.25). . (a, 0.75), (b, 0.25) 25. . (a, 0.25), (b, 0.75). . (a, 0.25), (b, 0.75) ..

(26) 2 Zaªo»enia modelu rozmytego. Poni»sza tabela zawiera rozszerzony wynik analizy syntaktycznej:. Element rozwi¡zania. ab∗. Kwalikator Informacja. ERR. aaa∗. T ERM. aabb. ACC. b∗. ERR. Przez. ›adne sªowo w j¦zyku L nie rozpoczyna si¦ istotnym preksem ab. Dalsza analiza rozwi¡za« wej±ciowego sªowa rozmytego rozpoczynaj¡cych si¦ od preksu ab nie b¦dzie kontynuowana. Zbiór wszystkich rozwi¡za« wej±ciowego sªowa rozmytego rozpoczynaj¡cych si¦ preksem ab (oznaczono ab∗) otrzymuje kwalikator ERR wyniku analizy. Po przenalizowaniu preksu aaa automat podejmuje decyzj¦ o zaprzestaniu dalszej analizy rozwi¡za« wej±ciowego sªowa rozmytego zaczynaj¡cych si¦ tym preksem ze wzgl¦du na zachowanie wielomianowej zªo»ono±ci algorytmu analizy. Zbiór wszystkich rozwi¡za« wej±ciowego sªowa rozmytego rozpoczynaj¡cych si¦ preksem aaa (oznaczono aaa∗) otrzymuje kwalikator T ERM wyniku analizy. Po analizie automat F DP LLA(k) zaakceptowaª rozwi¡zanie aabb wej±ciowego sªowa rozmytego, nadaj¡c mu kwalikator ACC . Oznacza to, »e jest ono elementem j¦zyka L rozpoznawanego przez automat. ›adne sªowo w j¦zyku L nie rozpoczyna si¦ preksem b. Dalsza analiza rozwi¡za« wej±ciowego sªowa rozmytego rozpoczynaj¡cych si¦ od preksu b nie b¦dzie kontynuowana. Zbiór wszystkich rozwi¡za« wej±ciowego sªowa rozmytego rozpoczynaj¡cych si¦ preksem b (oznaczono b∗) otrzymuje kwalikator ERR wyniku analizy.. x∗. oznaczono zbiór wszystkich rozwi¡za« wej±ciowego sªowa rozmytego, które. rozpoczynaj¡ si¦ preksem. 2. x.. 26.

(27) Rozdziaª 3 Model formalny automatu F DP LLA(k) W poni»szym rozdziale przedstawiony zostanie opis, budowa, sposób dziaªania, denicje oraz model formalny automatu klasy. med LL(k) Automaton), F DP LLA(k). F DP LLA(k) (Fuzzy Dynamically Program-. b¦d¡cego rezultatem bada« tej pracy. Konstrukcja automatu. zostaªa oparta o koncepcje gramatyk. formacje dotycz¡ce gramatyk. DP LL(k). DP LL(k). [22, 28]. Podstawowe in-. zostaªy zebrane w dodatku B. W niniejszym. rozdziale przedstawimy konstrukcje automatu. F DP LLA(k). dla. k = 1.. Konstrukcja. F DP LLA(k) dla dowolnego k > 1 b¦dzie analogiczna, jak to przedstawiono automatu DP LL(k) w pracy [59].. automatu dla. 3.1 Ogólny opis automatu F DP LLA(k) Przed. przedstawieniem. F DP LLA(k). szczegóªowego. opisu. i. formalnych. denicji. automatu. wraz ze wszystkimi jego elementami, omówimy najpierw ogóln¡ ide¦. jego konstrukcji oraz dziaªania. Automat. DP LL(k).. klasy. F DP LLA(k). pracuje. na. bazie. ustalonej. gramatyki. G. klasy. Jego zadaniem jest rozpoznawanie, które z rozwi¡za« wej±ciowego sªowa. rozmytego s¡ elementami j¦zyka formalnego generowanego przez gramatyk¦. G.. Dan¡. wej±ciow¡ procesu analizy jest sªowo rozmyte zapisane na ta±mie wej±ciowej. Efektem. 27.

(28) 3 Model formalny automatu F DP LLA(k). procesu analizy wej±ciowego sªowa rozmytego przez automat. F DP LLA(k). jest roz-. szerzony wynik syntaktycznej analizy sªowa rozmytego (denicja zostaªa podana w rozdziale 2). W tym miejscu warto rozstrzygn¡¢ ewentualne w¡tpliwo±ci poj¦ciowe. W±ród konstrukcji automatów formalnych spotykanych w dziedzinie syntaktycznego rozpoznawania wzorców mo»emy wyró»ni¢ dwie gªówne kategorie. Pierwsza z nich to. akceptory - s¡. to automaty, które rozwi¡zuj¡ problem decyzyjny przynale»no±ci analizowanego sªowa wej±ciowego do rozpoznawanego j¦zyka formalnego. Efektem dziaªania automatów tego rodzaju jest kwalikacja (akceptacja/odrzucenie) przynale»no±ci analizowanego sªowa do j¦zyka formalnego rozpoznawanego przez dany automat. Drug¡ kategori¡ automatów s¡. transducery (denicj¦ transducera mo»na znale¹¢ w dodatku A), czyli automaty. sªu»¡ce do rozwi¡zywania zagadnie« translacji jednych j¦zyków formalnych na inne wg zdeniowanych reguª translacji. Efektem dziaªania transducera jest tªumaczenie sªowa wej±ciowego oraz informacja generowana na wyj±cie w trakcie jego dziaªania. W praktycznych zastosowaniach ró»nica mi¦dzy oboma typami automatów mo»e nie by¢ zbyt du»a. Akceptory, oprócz decyzji o przynale»no±ci sªowa wej±ciowego do danego j¦zyka, dostarczaj¡ zwykle tak»e pewn¡ informacj¦ o charakterze strukturalnym (wywód sªowa). Transducery, obok tªumaczenia danego sªowa, mog¡ z kolei dostarcza¢ informacji o przynale»no±ci sªowa wej±ciowego do okre±lonego j¦zyka (np. poprzez odpowiedni¡ konstrukcje zbioru stanów terminalnych). Analizator klasy. F DP LLA(k). posiada cechy zarówno tranducera (generuje informacje na wyj±cie w trakcie analizy) jak i akceptora (efektem dziaªania jest kwalikacja przynale»no±ci odpowiednich rozwi¡za« wej±ciowego sªowa rozmytego). Aby niepotrzebnie nie zaw¦»a¢ zakresu rozwa»a« i wobec podanych wy»ej wzgl¦dów, w dalszej cz¦±ci pracy b¦dziemy konsekwentnie posªugiwa¢ si¦ poj¦ciem automatu akceptora. F DP LLA(k). (zamiast poj¦ciami transducera b¡d¹. F DP LLA(k)).. Wej±ciowe sªowo rozmyte zapisane jest na ta±mie wej±ciowej (skªadniki rozmytych prymitywów w osobnych komórkach ta±my). Gªowica czytaj¡ca automatu czyta i przetwarza po kolei prymitywy rozmyte zapisane na ta±mie wej±ciowej. Przetworzenie pojedynczego prymitywu rozmytego polega na próbie wywodu wszystkich jego komponentów w kontek±cie wszystkich prowadzonych procesów analizy. Ka»de takie zadanie wywodu mo»e si¦ zako«czy¢ wej±ciem procesu analizy w jeden ze stanów terminalnych (ACC ,. REJ , T ERM ) lub potrzeb¡ kontynuowania procesu parsingu (CON T ). W tym. 28.

(29) 3 Model formalny automatu F DP LLA(k). drugim przypadku dane procesu analizy s¡ zapisywane, aby mo»liwe byªo odtworzenie stanu procesu analizy dla wywodu skªadowych kolejnych rozmytych prymitywów zapisanych na ta±mie wej±ciowej. Aby móc podejmowa¢ decyzj¦ dotycz¡c¡ kontynuowania analizy, parsery. stopu analizy.. DP LL(k). b¦d¡ wyposa»one w dodatkowy element -. moduª funkcji. (a, pr, p), gdzie a jest rozpoznania, p - produkcj¡. Funkcja stopu analizy b¦dzie obliczana dla trójki. symbolem do wywodu,. pr. - prawdopodobie«stwem jego. u»yt¡ w wywodzie symbolu. a.. Na podstawie jej warto±ci automat b¦dzie podejmowaª. decyzj¦, czy kontynuowa¢ analiz¦ (CON T ), czy jej zaprzesta¢ (T ERM ). Formalna denicja funkcji stopu analizy pojawi si¦ w dalszej cz¦±ci niniejszego rozdziaªu. Automat. F DP LLA(k). rozpoczyna proces analizy wej±ciowego sªowa rozmytego z. jednym aktywnym procesem analizy. W trakcie parsingu ±cie»ki analizy rozchodz¡ si¦ (z uwagi na konieczno±¢ wywodzenia wielu komponentów bie»¡cego prymitywu rozmytego w kontek±cie zapisanego jednego procesu analizy). Powoduje to konieczno±¢ klonowania danych procesów analizy i tym samym zwi¦ksza liczb¦ równolegle prowadzonych zada« parsowania. Z uwagi na zachowanie odpowiedniej zªo»ono±ci obliczeniowej procesu, maksymalna liczba jednocze±nie prowadzonych procesów analizy powinna zosta¢ ograniczona. Przetwarzanie zada« wywodu danej skªadowej aktualnego prymitywu rozmytego w kontek±cie ustalonego procesu analizy jest realizowane przez jeden z parserów. DP LL(k) wchodz¡cych w skªad automatu F DP LLA(k). Zbiór parserów DP LL(k) ustalonego rozmiaru b¦d¡cy cz¦±ci¡ automatu F DP LLA(k) b¦dzie klasy. nazywany. pul¡ parserów.. klasy dalej. W zale»no±ci od potrzeb mo»liwe jest prowadzenie oblicze«. w trybie równolegªym. W takim wypadku pula parserów realizuje jednocze±nie wiele zada« wywodu. Implementacja równolegªego modelu oblicze« jest po»¡dana ze wzgl¦du na wymagania potencjalnej aplikacji modelu (zachowanie efektywno±ci obliczeniowej, zastosowanie w systemach rozpoznaj¡co-prognostycznych czasu rzeczywistego). Automat 1. ta±my. F DP LLA(k) IT. 2. pami¦ci. jest systemem zªo»onym z nast¦puj¡cych elementów:. zawieraj¡cej wej±ciowe sªowo zªo»one z rozmytych prymitywów;. M EM. przechowuj¡cej dane prowadzonych procesów analizy syntaktycz-. nej;. P P A (Parser Pool Automaton) automatu zawieraj¡cego zbiór parserów DP LL(k) okre±lonego rozmiaru, który realizuje przydzielone zadania analizy;. 3. automatu. 29.

(30) 3 Model formalny automatu F DP LLA(k). Rysunek 3.1: Idea budowy automatu. 4. automatu. T DA (Task Dispatcher Automaton). F DP LLA(k). przydzielaj¡cego kolejne zadania. analizy do przetworzenia; 5. automatu. P SA (Process Saver Automaton) zapisuj¡cego dane wykonanych zada«. analizy; 6. wyj±cia. OU T P U T. automatu, na które wypisywane b¦d¡ dane zako«czonych za-. da« analizy.. F DP LLA(k). automatów P P A, T DA,. Na rysunku 3.1 widoczny jest schemat pokazuj¡cy ide¦ automatu Dziaªanie automatu. F DP LLA(k). polega na wspóªpracy. P SA. Pierwszym z automatów jest automat. P P A. Jego rol¡ jest przetwarzanie zleconych. zada« analizy syntaktycznej. Realizacja ka»dego z takich zada« skªada si¦ z dwóch. 30.

(31) 3 Model formalny automatu F DP LLA(k). etapów. W pierwszym dane procesu, w kontek±cie którego ma by¢ wywodzony dany symbol zostaj¡ skopiowane do nowego obszaru pami¦ci tak, aby mogªy by¢ w trakcie wywodu bezpieczne modykowane. Drugi etap to przeprowadzenie wywodu na bazie skopiowanych w nowy obszar pami¦ci danych procesu.. P ST (Parser Status Tape) oraz pula parse. Ka»dy parser DP LL(k) b¦d¡cy elementem. W skªad tego automatu wchodzi ta±ma rów klasy. 1. DP LL(k) ustalonego rozmiaru. puli parserów jest wyposa»ony dodatkowy element tj.. moduª funkcji stopu analizy. Wy-. licza on warto±¢ funkcji stopu analizy dla zadanej trójki który nale»y wywie±¢,. pr. (a, pr, p),. gdzie. a. - symbol,. - prawdopodobie«stwo, »e rozpoznano dany symbol,. dukcja u»ywa w wywodzie symbolu. a.. Ta±ma. P ST. ma rozmiar. m,. a jej. i-ta. p. - pro-. komórka. b¦dzie rekordem zawieraj¡cym informacje o statusie parsera, symbolu, który ma by¢ wywodzony, oraz zestawach wska¹ników umo»liwiaj¡cych odczyt i zapis danych procesu analizy.. T DA jest automatem, który ma za zadanie przydziela¢ parserom wchodz¡cym w skªad P P A zadania analizy na podstawie zawarto±ci ta±my IT oraz zawarto±ci pami¦ci M EM . Na ta±mie IT zapisane jest wej±ciowe sªowo zªo»one z rozmytych prymitywów. Ka»da komórka ta±my IT zawiera konkretn¡ skªadow¡ ustalonego rozmytego prymitywu. W pami¦ci M EM zapisane s¡ wska¹niki do komórek pami¦ci zawieraj¡cych dane niezako«czonych procesów analizy. Ustalona komórka pami¦ci numer j (oznaczymy prj ) zawiera zestaw wska¹ników umo»liwiaj¡cy odczyt zapisanych w pami¦ci (zestaw dwuwymiarowych tablic) odpowiednich danych aktywnego procesu analizy. Pami¦¢ jest zorganizowana za pomoc¡ dwóch ta±m - sposób organizacji pami¦ci. M EM. M EM zostaª. szczegóªowo opisany w sekcji 3.2.2. Ka»de zadanie analizy polega na wywodzie okre±lonego symbolu (przeczytanego z ta±my. IT ). w kontek±cie konkretnego procesu analizy (dane procesu odczytane na. T DA czyta zawarto±¢ ta±m IT i pami¦ci M EM , a nast¦pnie, poprzez czytanie ta±my P ST szuka parsera, który mógªby dane zadanie wykona¢. Je±li natra na parser w statusie I (idle), wtedy przepisuje do danej komórki ta±my P ST , zawarto±¢ odpowiedniej komórki pami¦ci M EM oraz bie»¡c¡ skªadow¡ prymitywu rozmytego odczytan¡ z ta±my IT . Nast¦pnie na ta±mie P ST zmienia status danego parsera na W . podstawie wska¹ników zapisanych w pami¦ci. 1 Denicje. M EM ).. Automat. automatu klasy DP LL(k), dokªadny opis wszystkich jego elementów takich, jak ta±my DCL, F , L, IT oraz opis sposobu jego funkcjonowania mo»na znale¹¢ w dodatku B.. 31.

(32) 3 Model formalny automatu F DP LLA(k). Trzecim automatem jest automat. P SA. odpowiedzialny za zapis danych wykona-. nych procesów analizy. Jego praca polega na czytaniu ta±my. Je±li tra na ko-. T. lub. 1. dla warto±ci. T:. zako«czenie procesu i wypisanie jego danych na. 2. dla warto±ci. C:. mórk¦ z warto±ci¡. C. P ST .. wykonuje jedn¡ z dwóch operacji:. zapisanie zestawu wska¹ników do pami¦ci. OU T P U T. M EM. ;. (zawieraj¡cej. dane zako«czonego procesu). Ogólny model sterowania automatu gªównego b¦dzie polegaª na iteracyjnym przetwarzaniu kolejnych rozmytych prymitywów w kontek±cie aktywnych procesów analizy (zapisanych w pami¦ci. M EM ). Procedura przetworzenia rozmytego prymitywu b¦dzie. polegaªa na realizacji zada« wywodu wszystkich elementów tego prymitywu rozmytego w kontek±cie zapisanych procesów analizy. W trakcie iteracji, do momentu wyczerpania wszystkich zada« zwi¡zanych z analiz¡ bie»¡cego prymitywu rozmytego, b¦dzie powtarzany nast¦puj¡cy zestaw czynno±ci: 1. automat. T DA. czyta jednokrotnie caª¡ ta±m¦. P ST. i przydziela dost¦pnym par-. serom kolejne zadania analizy (na podstawie zawarto±ci ta±m. IT. oraz pami¦ci. M EM ); 2. automat. PPA. realizuje zadania przydzielone parserom w puli;. 3. automat. P SA. czyta jednokrotnie caª¡ ta±m¦. P ST. i zapisuje wyniki w pami¦ci. M EM .. 3.2 Automaty skªadowe automatu F DP LLA(k) F DP LLA(k) jest systemem trzech wspóªpracuj¡cych automatów tj. P P A, T DA, P ST . W kolejnych podsekcjach zdeniujemy formalnie jego automaty skªadowe. Nast¦pnie zdeniujemy sam automat F DP LLA(k) oraz opiszemy jego dziaªanie. Automat. 3.2.1 Automat P P A Automat. PPA. b¦dzie si¦ skªadaª z ta±my. P ST. oraz zbioru parserów klasy. ustalonego rozmiaru (nazywanego dalej pul¡ parserów). Przez. 32. m. DP LL(k). b¦dziemy oznacza¢.

(33) 3 Model formalny automatu F DP LLA(k). Rysunek 3.2: Schemat automatu. PPA. rozmiar tego zbioru. Ka»dy parser b¦dzie wyposa»ony w moduª funkcji stopu analizy, wyliczaj¡cy warto±¢ funkcji stopu analizy. Rol¡ automatu przydzielonych zada« analizy. Schemat automatu Zadania s¡ realizowane przez parsery si¦ one z automatami. DP LL(k). PPA. PPA. jest przetwarzanie. znajduje si¦ na rysunku 3.2.. wchodz¡ce w skªad puli. Komunikuj¡. T DA oraz P SA za pomoc¡ ta±my P ST. oraz pami¦ci zawieraj¡cej. dane procesów. Wszystkie parsery dziaªaj¡ na podstawie tej samej denicji gramatyki oraz tablicy przej±¢ (predykaty aplikowalno±ci, wykonywanie operacji na ta±mie. DCL).. P ST , z których korzysta automat P P A, a nast¦pnie wprodenicje automatu P P A.. Poni»ej omówimy ta±m¦ wadzimy formaln¡. 3.2.1.1 Struktury danych automatu P P A 3.2.1.1.1 Ta±ma P ST P ST  Komórka. jest ta±m¡ skªadaj¡c¡ si¦ z. i-ta. (b¦dziemy j¡ oznacza¢. m komórek (gdzie m rozmiar puli parserów). pari ) jest rekordem zawieraj¡cym nast¦puj¡ce. informacje:. 1.. Status i-tego parsera, mo»e on przybiera¢ nast¦puj¡ce warto±ci: 33.

(34) 3 Model formalny automatu F DP LLA(k). a). I(idle). b). W (work). c). T (process to terminate). - oczekuje na przydziaª zadania; - zadanie w trakcie realizacji; - przydzielone zadanie zostaªo zako«czone, powi¡-. zany proces nale»y zako«czy¢ (osi¡gni¦cie stanu terminalnego. ACC/REJ. lub. zbyt maªa warto±¢ funkcji stopu analizy); d). C(process to contiune). - przydzielone zadanie zostaªo zako«czone, zapisywa-. nie wyników wykonanej analizy. Zawarto±¢ pola b¦dzie oznaczana jako. pari .status.. 2. Skªadowa prymitywu rozmytego, która ma zosta¢ wywiedziona w ramach realizowanego zadania w kontek±cie zapisanego procesu analizy (ozn. tej zmiennej b¦dzie podawana na wej±cie 3.. i-tego. pari .it).. Warto±¢. parsera.. Zestaw wska¹ników ¹ródªowych. Identykuje on obszar pami¦ci zawieraj¡cy dane procesu, w ramach którego ma by¢ przeprowadzony wywód aktualnego symbolu. Dane te b¦d¡ wykorzystywane, jako ¹ródªo informacji dla parserów, które w ich kontek±cie b¦d¡ próbowaªy wywie±¢ kolejne skªadniki prymitywów rozmytych pojawiaj¡cych si¦ na ta±mie. IT. (zostanie podj¦ta próba wywodu ka»dego skªadnika. prymitywu rozmytego w kontek±cie danego procesu - dane te b¦d¡ wi¦c odczytywane wielokrotnie). Z uwagi na ten fakt nie powinna by¢ mo»liwa ich modykacja. Przed rozpocz¦ciem ka»dego zadania analizy dane te b¦d¡ musiaªy by¢ skopiowane w nowy obszar pami¦ci tak, aby wªa±ciwy wywód prowadzony byª ju» na kopii danych wªa±ciwego procesu analizy. Pole b¦dzie oznaczane jako 4.. Zestaw wska¹ników docelowych.. pari .spd.. Identykuje on obszar pami¦ci zawieraj¡cy sko-. piowane dane procesu. Na bazie tych danych b¦dzie realizowane zadanie wywodu okre±lonego symbolu. Pole b¦dzie oznaczane jako. pari .dpd.. Obydwa zestawy wska¹ników umo»liwiaj¡ odczyt/zapis z/do pami¦ci wszystkich danych zapisanego procesu analizy, czyli:. 1. identykator procesu analizy (oznaczony jako. park .spd.id, park .dpd.id dla wska¹-. ników ¹ródªowego i docelowego odpowiednio), 2. ta±ma wej±ciowa parsera (oznaczona jako. 34. park .spd.it, park .dpd.it),.

(35) 3 Model formalny automatu F DP LLA(k). 3. przeczytany ci¡g znaków (oznaczony jako 4. zawarto±¢ stosu (oznaczony jako 5. zawarto±¢ ta±my 6. zawarto±¢ ta±m. DCL. park .spd.rs, park .dpd.rs),. park .spd.stack, park .dpd.stack ),. (oznaczona jako. park .spd.dcl, park .dpd.dcl),. F i L (oznaczone jako park .spd.f, park .spd.l, park .dpd.f, park .dpd.l),. 7. ci¡g produkcji zastosowany dotychczas (oznaczony jako. park .spd.deriv, park .dpd.deriv ),. 8. prawdopodobie«stwo rozpoznanego ci¡gu (oznaczone jako. park .spd.rec_prob,. park .dpd.rec_prob), 9. bie»¡ca warto±¢ funkcji stopu analizy(oznaczona jako 10. powód zako«czenia analizy (oznaczony jako. park .spd.stop_val, park .dpd.stop_val),. park .spd.term_inf o, park .dpd.term_inf o).. 3.2.1.2 Denicja automatu P P A Mo»emy teraz zdeniowa¢ formalnie:. DEFINICJA 3.1 Automatem P P A (Parsers' pool automaton) b¦dziemy nazywa¢ nast¦puj¡c¡ krotk¦: P P A = (Ω, Σ, Γ, Π, Z0 , p0 , δLLA1 , δLLA2 , δV A , δP A , fST OP ), gdzie. 1.. Ω = {I, W, T, C, ⊥} - alfabet ta±my P ST . Poszczególne symbole oznaczaj¡ ró»ne statusy parserów tj. I-idle, W-work, T-termination, C-continuation, ⊥ - znak ko«ca ta±my.. 2. Elementy powi¡zane z parserami klasy. DP LL(k). (patrz Dodatek B):. a). Σ. sko«czony alfabet wej±ciowy,. b). Γ. sko«czony alfabet stosu,. c). Π. sko«czony zbiór indeksów produkcji, zawieraj¡cy symbol produkcji. d). Z0 ∈ Γ. symbol startowy stosu,. e). p0 ∈ Π. symbol startowy ta±my produkcji,. 35. p0 ,.

(36) 3 Model formalny automatu F DP LLA(k). f). δLLA1. funkcja przej±cia automatu. LLA(k). (jak w def. automatu. DP LL(k)),. g). δLLA2. funkcja przej±cia automatu. LLA(k). (jak w def. automatu. DP LL(k)),. h). δV A. (jak w def. automatu. DP LL(k)),. i). δP A. (jak w def. automatu. DP LL(k)).. fST OP : Σ×(0, 1]×Π → [0, 1] przyporz¡dkowuj¡ca warto±¢ funkcji stopu analizy trójce (a, pr, p), gdzie a symbol do wywodu, pr prawdopodobie«stwo rozpoznania danego symbolu, p produkcja u»yta w wywodzie. Parsery. 3. Funkcja stopu analizy. w puli s¡ wyposa»one w mechanizm wyliczaj¡cy warto±¢ funkcji stopu analizy. (tzw. moduªy funkcji stopu analizy). Jedna iteracja pracy automatu. PPA. polega na realizacji przez wszystkie parsery. puli przydzielonych zada«, z których ka»de skªada si¦ z dwóch etapów tj. skopiowania danych procesu w nowy obszar pami¦ci oraz wywodu symbolu wej±ciowego w kontek±cie skopiowanego procesu. Po zako«czeniu analizy na ta±mie. P SA. zostaje zapisany status. danego procesu oraz wykonanego zadania. W strukturach danych, okre±lonych zestawem wska¹ników docelowych, znajduj¡ si¦ dane wykonanych zada« parsingu (wska¹niki te zostan¡ nast¦pnie zapisane na ta±mie docelowej). Jedna iteracja pracy puli parserów mo»e by¢ przetworzona w trybie sekwencyjnym b¡d¹ równolegªym.. 3.2.1.3 Konguracja automatu P P A Wprowad¹my nast¦puj¡c¡ denicj¦:. DEFINICJA 3.2 Konguracj¡ automatu P P A b¦dziemy nazywa¢ nast¦puj¡c¡ tablic¦: st1 ··· stm. spd1 ··· spdm. dpd1 ··· dpdm. it1 ··· itm. rs1 ··· rsm. deriv1 ··· derivm. stop_val1 ··· stop_valm. stack1 ··· stackm. dcl1 ··· dclm. f1 ··· fm. l1 ··· lm. term_inf o1 ··· term_inf om. gdzie:. 1. Zmienna. sti. 2. Zmienna. spdi. jest statusem. i-tego. parsera, zapisanym na ta±mie. P ST .. jest wska¹nikiem do pami¦ci (numerem kolumny w odpowiednich. strukturach pami¦ci), gdzie znajduj¡ si¦ dane procesu, w kontek±cie którego ma. 36.

(37) 3 Model formalny automatu F DP LLA(k) i-ty parser nie ma przydzielonull. Wska¹nik spdi b¦dzie prze-. by¢ wykonane zadanie analizy. W przypadku, gdy nego zadania analizy warto±¢ tego pola wynosi chowywany w 3. Zmienna. dpdi. i-tej. komórce ta±my. P ST .. jest wska¹nikiem do pami¦ci (numerem kolumny w odpowiednich. strukturach pami¦ci), gdzie znajduj¡ si¦ dane procesu, na których realizowane b¦dzie zadanie wywodu. Przed rozpocz¦ciem procesu analizy dane zapisane pod adresem. spdi. zostan¡ skopiowane w nowy obszar pami¦ci, do którego wska¹nik. zostanie zapisany w zmiennej. dpdi .. dzielonego zadania analizy warto±¢ tego pola wynosi przechowywany w 4. Zmienna. iti. i-tej. komórce ta±my. oznacza wej±cie. i-ty parser nie ma przynull. Wska¹nik dpdi b¦dzie. W przypadku gdy. i-tego. P ST .. parsera, b¦dzie ona zapisywane na ta±mie. P ST . rsi , derivi , stacki , dcli , fi , li , stop_vali , term_inf oi oznaczaj¡ warto±ci odpowiednich elementów i-tego parsera. W przypadku, gdy i parser ma przydzie-. 5. Zmienne. lone zadanie analizy, warto±ci te przechowywane s¡ w obszarach pami¦ci okre±lonych wska¹nikiem. dpdi .. 3.2.1.4 Funkcja przej±cia automatu P P A Niech. G. b¦dzie ustalon¡ gramatyk¡ klasy. parsera gramatyki. G. wchodz¡cego w skªad. DP LL(k). Na konguracj¦ pojedynczego automatu P P A wprowadzimy nast¦puj¡ce. oznaczenie:. ∆i = (sti , spdi , dpdi , iti , rsi , derivi , stop_vali , stacki , dcli , fi , li , term_inf oi ). W takim wypadku konguracja automatu wchodz¡cy w skªad automatu. P P A,. PPA. to krotka. (∆1 , ..., ∆m ).. Ka»dy parser. któremu przydzielono zadanie analizy (sti. = W). wykonuje sekwencje ruchów dwóch, które s¡ opisane odpowiedni¡ zmian¡ konguracji:. 1. skopiowanie danych ¹ródªowych procesu w nowy obszar pami¦ci (ruch typu 1), 2. próba wywodu zadanego symbolu terminalnego w kontek±cie danego procesu analizy (ruch typu 2).. 37.

Cytaty

Powiązane dokumenty

Imię i nazwisko premiera, skład koalicji, datę początku trwania rządu (wyznaczaną przez datę uzyskania pierwszego wotum zaufania lub datę zmiany konfiguracji politycznej

W niniejszym rozdziale podjęliśmy próbę porównania teologii Ducha Świę- tego przedstawionej przez Jana Pawła II w encyklice z nauką Ojców Kościoła dotyczącą trzeciej

Stwierdzenia i twierdzenia: Twierdzenie o Lokalnej Odwracalno±ci (idea dowodu), twierdzenie o punk- cie staªym odwzorowania zbli»aj¡cego, o ci¡gªo±ci odwzorowania liniowego

O bserw ujem y nie tylko biologiczne i środow iskow e zd eterm inow anie psychicznych cech postaci literack ich , ale rów nież uzależnienie ich losu od m iejsca

Pojęcie lite ra tu ry jako zjawiska, którego historię należy napisać, samo oczywiście stanowi problem. Przykładowo teolog, filozof czy naukowiec nie należą

Metody analizy przeżycia wykazują wysoką przydatność w ocenie ryzyka utraty klientów przez banki, występującego przy podnoszeniu wysokości miesięcz- nych opłat pobieranych

Większość specjalistów EFLA uważa też, że jeżeli zasada ostrożności ma zostać włączona do analizy ryzyka to jako element zarządzania ryzykiem (risk menagement),

W komórce tej jeden z wierszy opisuje strukturę zdania elemen- tarnego — możemy przeczytać, że jego pierwszym składnikiem jest trzykrotnie konstrukcja ze wspomnianej komórki 17