Metody Informatyki Stosowanej



Podobne dokumenty
Planowanie eksperymentu pomiarowego I

Podstawy analizy niepewności pomiarowych (I Pracownia Fizyki)

OBLICZANIE NIEPEWNOŚCI METODĄ TYPU B

Pomiary parametrów napięć i prądów przemiennych

Wyrażanie niepewności pomiaru

N ( µ, σ ). Wyznacz estymatory parametrów µ i. Y które są niezależnymi zmiennymi losowymi.

Jego zależy od wysokości i częstotliwości wypłat kuponów odsetkowych, ceny wykupu, oczekiwanej stopy zwrotu oraz zapłaconej ceny za obligację.

METODY KOMPUTEROWE 1

KONCEPCJA WIELOKRYTERIALNEGO WSPOMAGANIA DOBORU WARTOŚCI PROGOWEJ W BIOMETRYCZNYM SYSTEMIE UWIERZYTELNIANIA. Adrian Kapczyński Maciej Wolny

Statystyczna analiza miesięcznych zmian współczynnika szkodowości kredytów hipotecznych

ZAGADNIENIE TRANSPORTOWE

5. OPTYMALIZACJA NIELINIOWA

Statystyczne charakterystyki liczbowe szeregu

Badania Maszyn CNC. Nr 2

UOGÓLNIONA ANALIZA WRAŻLIWOŚCI ZYSKU W PRZEDSIĘBIORSTWIE PRODUKUJĄCYM N-ASORTYMENTÓW. 1. Wprowadzenie

Podstawowe zadanie statystyki. Statystyczna interpretacja wyników eksperymentu. Zalety statystyki II. Zalety statystyki

WYZNACZANIE WARTOŚCI ENERGII ROZPRASZANEJ PODCZAS ZDERZENIA CIAŁ

1. Relacja preferencji

Projekt 3 Analiza masowa

System finansowy gospodarki

Monika Jeziorska - Pąpka Uniwersytet Mikołaja Kopernika w Toruniu

Centralna Izba Pomiarów Telekomunikacyjnych (P-12) Komputerowe stanowisko do wzorcowania generatorów podstawy czasu w częstościomierzach cyfrowych

TARCIE CIĘGIEN O POWIERZCHNIĘ WALCOWĄ WZÓR EULERA

3. OPTYMALIZACJA NIELINIOWA

Materiały do wykładu 7 ze Statystyki

FINANSE II. Model jednowskaźnikowy Sharpe a.

STATYKA. Cel statyki. Prof. Edmund Wittbrodt

Prawdopodobieństwo i statystyka r.

ma rozkład normalny z nieznaną wartością oczekiwaną m

Elementy arytmetyki komputerowej

L.Kowalski PODSTAWOWE TESTY STATYSTYCZNE WERYFIKACJA HIPOTEZ PARAMETRYCZNYCH

POPULACJA I PRÓBA. Próba reprezentatywna. Dr Adam Michczyński - METODY ANALIZY DANYCH POMIAROWYCH 5 1

Miary położenia wskazują miejsce wartości najlepiej reprezentującej wszystkie wielkości danej zmiennej. Mówią o przeciętnym poziomie analizowanej

OKREŚLANIE NIEPEWNOŚCI POMIARÓW (poradnik do Laboratorium Fizyki)

W zadaniu nie ma polecenia wyznaczania estymatora nieobciążonego o minimalnej wariancji. σ σ σ σ σ = =

W loterii bierze udział 10 osób. Regulamin loterii faworyzuje te osoby, które w eliminacjach osiągnęły lepsze wyniki:

L.Kowalski zadania ze statystyki opisowej-zestaw 5. ZADANIA Zestaw 5

W zadaniu nie ma polecenia wyznaczania estymatora nieobciążonego o minimalnej wariancji. σ σ σ σ σ = =

PŁASKA GEOMETRIA MAS. Środek ciężkości figury płaskiej

Obliczanie średniej, odchylenia standardowego i mediany oraz kwartyli w szeregu szczegółowym i rozdzielczym?

Przestrzenno-czasowe zróżnicowanie stopnia wykorzystania technologii informacyjno- -telekomunikacyjnych w przedsiębiorstwach

TESTY NORMALNOŚCI. ( Cecha X populacji ma rozkład normalny). Hipoteza alternatywna H1( Cecha X populacji nie ma rozkładu normalnego).

Tablica Galtona. Mechaniczny model rozkładu normalnego (M10)

f f x f, f, f / / / METODA RÓŻNIC SKOŃCZONYCH niech N = 2 (2 równania różniczkowe zwyczajne liniowe I-rz.) lub jedno II-rzędu

WYBRANE MOŻLIWOŚCI WSPOMAGANIA INWESTYCJI

Zależność kosztów produkcji węgla w kopalni węgla brunatnego Konin od poziomu jego sprzedaży

Metoda Monte-Carlo i inne zagadnienia 1

Stanisław Cichocki Natalia Nehrebecka. Zajęcia 7-8

. Wtedy E V U jest równa

Miary statystyczne. Katowice 2014

POLSKA FEDERACJA STOWARZYSZEŃ RZECZOZNAWCÓW MAJĄTKOWYCH POWSZECHNE KRAJOWE ZASADY WYCENY (PKZW) KRAJOWY STANDARD WYCENY SPECJALISTYCZNY NR 4 KSWS 4

Matematyka ubezpieczeń majątkowych r. t warunkowo niezależne i mają (brzegowe) rozkłady Poissona:

POLSKA FEDERACJA STOWARZYSZEŃ RZECZOZNAWCÓW MAJĄTKOWYCH POWSZECHNE KRAJOWE ZASADY WYCENY (PKZW) KRAJOWY STANDARD WYCENY SPECJALISTYCZNY NR 4 KSWS 4

Modelowanie niezawodności i wydajności synchronicznej elastycznej linii produkcyjnej

Analiza danych pomiarowych

WSTĘP METODY OPRACOWANIA I ANALIZY WYNIKÓW POMIARÓW

Podstawy opracowania wyników pomiarowych, analiza błędów

METODY ANALIZY DANYCH DOŚWIADCZALNYCH

FUNKCJE DWÓCH ZMIENNYCH

będą niezależnymi zmiennymi losowymi z rozkładu o gęstości

Różniczkowanie funkcji rzeczywistych wielu zmiennych. Matematyka Studium doktoranckie KAE SGH Semestr letni 2008/2009 R. Łochowski

Teoria i praktyka. Wyższa Szkoła Turystyki i Ekologii. Fizyka. WSTiE Sucha Beskidzka Fizyka

WPŁYW SPÓŁEK AKCYJNYCH NA LOKALNY RYNEK PRACY

dev = y y Miary położenia rozkładu Wykład 9 Przykład: Przyrost wagi owiec Odchylenia Mediana próbkowa: Przykłady Statystyki opisowe Σ dev i =?

GEODEZJA INŻYNIERYJNA SEMESTR 6 STUDIA NIESTACJONARNE

Janusz Górczyński. Moduł 1. Podstawy prognozowania. Model regresji liniowej

STANDARYZACJA PRZEPROWADZANIA NAPRAW JAKO ETAP WDROŻENIA TOTAL PRODUCTIVE MAINTENANCE W PRZEMYŚLE WYDOBYWCZYM

PRZEDZIAŁOWE METODY ROZWIĄZYWANIA ALGEBRAICZNYCH RÓWNAŃ NIELINIOWYCH MECHANIKI KONSTRUKCJI

Wyznaczanie oporu naczyniowego kapilary w przepływie laminarnym.

Podprzestrzenie macierzowe

WPŁYW PARAMETRÓW DYSKRETYZACJI NA NIEPEWNOŚĆ WYNIKÓW POMIARU OBIEKTÓW OBRAZU CYFROWEGO

Zadanie 1. ), gdzie 1. Zmienna losowa X ma rozkład logarytmiczno-normalny LN (, . EX (A) 0,91 (B) 0,86 (C) 1,82 (D) 1,95 (E) 0,84

EKSTREMA FUNKCJI EKSTREMA FUNKCJI JEDNEJ ZMIENNEJ. Tw. Weierstrassa Każda funkcja ciągła na przedziale domkniętym ma wartość najmniejszą i największą.

STATYSTYKA MATEMATYCZNA WYKŁAD 2 ESTYMACJA PUNKTOWA

Portfel złożony z wielu papierów wartościowych

Statystyka Opisowa 2014 część 3. Katarzyna Lubnauer

PODSTAWY OPRACOWANIA WYNIKÓW POMIARÓW Z ELEMENTAMI ANALIZY NIEPEWNOŚCI POMIAROWYCH

Modele wartości pieniądza w czasie

ZARYS METODY OCENY TRWAŁOSCI I NIEZAWODNOSCI OBIEKTU Z UWZGLEDNIENIEM CZYNNIKA LUDZKIEGO I PŁASZCZYZNY LICZB ZESPOLONYCH

( X, Y ) będzie dwuwymiarową zmienną losową o funkcji gęstości

[, ] [, ] [, ] ~ [23, 2;163,3] 19,023 2,7

ma rozkład normalny z wartością oczekiwaną EX = EY = 1, EZ = 0 i macierzą kowariancji

R j v tj, j=1. jest czynnikiem dyskontującym odpowiadającym efektywnej stopie oprocentowania i.

ZASTOSOWANIE MODELU LOGITOWEGO DO ANALIZY WYNIKÓW EGZAMINU

będą niezależnymi zmiennymi losowymi o tym samym 2 x

Stanisław Cichocki. Natalia Nehrebecka. Zajęcia 5

opisać wielowymiarową funkcją rozkładu gęstości prawdopodobieństwa f(x 1 , x xn

Analiza danych OGÓLNY SCHEMAT. Dane treningowe (znana decyzja) Klasyfikator. Dane testowe (znana decyzja)

PODSTAWY PROBABILISTYKI Z PRZYKŁADAMI ZASTOSOWAŃ W INFORMATYCE

Opracowanie wyników pomiarów

Prawdopodobieństwo i statystyka r.

BQR FMECA/FMEA. czujnik DI CPU DO zawór. Rys. 1. Schemat rozpatrywanego systemu zabezpieczeniowego PE

ĆWICZENIE 10 OPTYMALIZACJA STRUKTURY CZUJKI TEMPERATURY W ASPEKCIE NIEZWODNOŚCI

ρ (6) przy czym ρ ij to współczynnik korelacji, wyznaczany na podstawie następującej formuły: (7)

Matematyka dyskretna. 10. Funkcja Möbiusa

Statystyka Inżynierska

Permutacje. } r ( ) ( ) ( ) 1 2 n. f = M. Przybycień Matematyczne Metody Fizyki I Wykład 2-2

Statystyka Opisowa Wzory

( ) L 1. θ θ = M. Przybycień Rachunek prawdopodobieństwa i statystyka. = θ. min

AKADEMIA MORSKA W SZCZECINIE

Transkrypt:

Polska Akadema Nauk Oddzał w Gdańsku Komsja Iformatyk Metody Iformatyk Stosowaej Nr /00 (3) Szczec 00

Metody Iformatyk Stosowaej Kwartalk Komsj Iformatyk Polskej Akadem Nauk Oddzał w Gdańsku Komtet Naukowy: Przewodczący: prof. dr hab. ż. Heryk Krawczyk, czł. koresp. PAN, Poltechka Gdańska Człokowe: prof. dr hab. ż. Mchał Bałko, czł. rzecz. PAN, Poltechka Koszalńska prof. dr hab. ż. Ludosław Drelchowsk, Uwersytet Techologczo-Przyrodczy w Bydgoszczy prof. dr hab. ż. Jausz Kacprzyk, czł. koresp. PAN, Istytut Badań Systemowych PAN prof. dr hab. Ja Madey, Uwersytet Warszawsk prof. dr hab. ż. Leszek Rutkowsk, czł. koresp. PAN, Poltechka Częstochowska prof. dr hab. ż. Potr Sekewcz, Akadema Obroy Narodowej prof. dr ż. Jerzy Sołdek, Zachodopomorska Szkoła Bzesu w Szczece prof. dr hab. ż. Adrzej Straszak, Istytut Badań Systemowych PAN prof. dr hab. Macej M. Sysło, Uwersytet Wrocławsk Recezec współpracujący z redakcją: Mara Adamsk, Adrzej Baachowcz, Zbgew Baaszak, Joaa Baaś, Alexader Barkalov, Włodzmerz Beleck, Jausz Bobulsk, Potr Bubacz, Ryszard Budzńsk, Heryk Budzsz, Darusz Burak, Tadeusz Czachórsk, Jacek Czareck, Adrzej Czyżewsk, Potr Dzurzańsk, Wtold Dzwel, Imed El Fray, Mykhaylo Fedorov, Paweł Forczmańsk, Darusz Frejlchowsk, Krzysztof Garo, Zbgew Gmyrek, Stasław Grzegórsk, Volodymyr Harbarchuk, Edward Hrykewcz, Zbgew Huzar, Jausz Jabłońsk, Jarosław Jakowsk, Wojcech Jędruch, Tadeusz Kaczorek, Adre Karatkevch, Adrzej Kasńsk, Aleksader Katkow, Włodzmerz Khadzhyow, Przemysław Klęsk, Jacek Kluska, Leod Kompaets, Józef Korbcz, Jerzy Korostl, Marc Korzeń, Wtold Kosńsk, Magdalea Krakowak, Georgy Kukharev, Emma Kuszta, Potr Lpńsk, Małgorzata Łatuszyńska, Ewa Łukask, Radosław Macaszczyk, Wesław Madej, Krzysztof Makles, Wojcech Maleka, Krzysztof Małeck, Radosław Matuk, Adrzej Marcak, Oleg Maslekow, Potr Mróz, Karol Myszkowsk, Adrzej Naperalsk, Evgey Och, Krzysztof Okarma, Remgusz Olejk, Potr Pechma, Jerzy Pejaś, Adrzej Peczyńsk, Adrzej Pegat, Potr Pela, Mara Petruszka, Mateusz Pwowarsk, Marc Plucńsk, Aa Pławak-Mowa, Orest Popov, Edward Półrolczak, Valery Rogoza, Mrosław Ryba, Aa Samborska-Owczarek, Domk Sakowsk, Adam Słowk, Marek Stabrowsk, Adrzej Stateczy, Jerzy Stefaowsk, Jausz Stokłosa, Zdzsław Szczerbńsk, Tomasz Szmuc, Marc Szpyrka, Bożea Śmałkowska, Ryszard Tadeusewcz, Alexader Ţarov, Larysa Ttareko, Leszek Trybus, Adrzej Tujaka, Zeo Ulma, Adrzej Walczak, Jarosław Wątróbsk, Ageszka Węgrzy, Marek Węgrzy, Sławomr Wak, Waldemar Wolsk, Waldemar Wójck, Oleg Zak, Wojcech Zając, Dauta Zakrzewska, Zeo Zwerzewcz Redaktor Naczely: Ato Wlńsk Sekretarz redakcj: Potr Czapewsk ISSN 898-597 Wydawctwo: Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk Adres kotaktowy: ul. Żołerska 5 p. 30, 7-0 Szczec, emal: pa@w.zut.edu.pl Druk: Pracowa Polgrafcza Wydzału Iformatyk Zachodopomorskego Uwersytetu Techologczego w Szczece Nakład 50 egz.

Sps treśc Arkadusz Bukowec DEKOMPOZYCJA SKOŃCZONYCH AUTOMATÓW STANÓW.............................. 5 Robert Dylewsk ZASTOSOWANIE METOD PROJEKCYJNYCH W OPTYMALIZACJI WYPUKŁEJ NIERÓŻNICZKOWALNEJ...................................................... 4 Darusz Frejlchowsk BADANIE SKUTECZNOŚCI DESKRYPTORA LIGHT FIELD W PROBLEMIE REPREZENTACJI KSZTAŁTÓW TRÓJWYMIAROWYCH NA POTRZEBY ICH INDEKSOWANIA................... Jarosław Gramack, Artur Gramack ESTYMACJA PARAMETRÓW MODELI REGRESYJNYCH W OBECNOŚCI NIEKLASYCZNYCH ZAŁOŻEŃ................................................................. 9 Iwoa Grobela, Mchał Grobely GAPS IN DESIGN AND TESTS OF DEPENDABLE EMBEDDED SYSTEMS..................... 4 Potr Grobely METODA ZESTAWIANIA INTERNETOWYCH USŁUG ZŁOŻONYCH W DZIEDZINIE GEOGRAFICZNYCH SYSTEMÓW INFORMACYJNYCH................................................ 49 Krzysztof Kraska, Ageszka Kamńska KONCEPCJA METODY ZWIĘKSZANIA LOKALNOŚCI DANYCH NA POZIOMIE PAMIĘCI PODRĘCZNEJ OPARTA NA TRANSFORMACJACH PĘTLI PROGRAMOWYCH............................ 58 Domk Kujawa ANALIZA ZŁOŻONOŚCI OBLICZENIOWEJ ALGORYTMÓW IDENTYFIKACJI LINIOWYCH PROCESÓW POWTARZALNYCH METODAMI PODPRZESTRZENI................................... 68 Ageszka Lasota MODELOWANIE PRODUKCJI ZA POMOCĄ DIAGRAMÓW AKTYWNOŚCI UML I α-sieci NA PRZYKŁADZIE OBUDOWY SEPARATORA OLEJOWEGO................................ 80 Grzegorz Mchalsk, Norbert Sczygol BUDOWA GLOBALNEJ MACIERZY SZTYWNOŚCI W METODZIE ELEMENTÓW SKOŃCZONYCH Z ZASTOSOWANIEM PROCESORÓW WIELORDZENIOWYCH............................. 9 Sławomr Mka KONCEPCJA HYBRYDOWEGO SYSTEMU DETEKCJI ROBAKÓW SIECIOWYCH WYKORZYSTUJĄCEGO METODY EKSPLORACJI DANYCH.............................................. 00 Julusz Mkoda, Norbert Sczygol, Aa Wawszczak METODY REPREZENTACJI DANYCH W APLIKACJACH INŻYNIERSKICH WYKORZYSTUJĄCYCH ARCHITEKTURĘ SOA....................................................... Marusz Plarek IMPLEMENTACJA ARYTMETYKI PRZEDZIAŁOWEJ Z WYKORZYSTANIEM ROZSZERZEŃ MULTIMEDIALNYCH SSE ORAZ ZMODYFIKOWANEJ METODY DZIELENIA PRZEDZIAŁOWEGO.. 0 Macej Roszkowsk MODELOWANIE PREDYKCYJNE NA PRZYKŁADZIE RÓWNOLEGŁEJ HYBRYDY REGRESYJNEJ W ZASTOSOWANIU DO PREDYKCJI SMAKU WINA.................................. 30 Ageszka Węgrzy, Jacek Tkacz, Adam Wojcechowsk OPTYMALIZACJA ZAPYTAŃ A KOMPRESJA DANYCH W BAZIE DB 9................... 36

Moka Wśewska, Remgusz Wśewsk ZASTOSOWANIE KOLOROWANIA HIPERGRAFÓW W PROCESIE DEKOMPOZYCJI RÓWNOLEGŁEJ AUTOMATÓW WSPÓŁBIEŻNYCH............................................... 44 Tomasz Wśewsk, Oleg Zak MODELOWANIE MATEMATYCZNE I SYMULACYJNE SYSTEMU PRODUKCYJNEGO Z PRIORYTETAMI DYNAMICZNYMI........................................................... 5

Dekompozycja skończoych automatów staów Arkadusz Bukowec Uwersytet Zeloogórsk, Wydzał Elektrotechk, Iformatyk Telekomukacj, Istytut Iformatyk Elektrok Abstract: Popular way for realzato of cotrol uts are fte state maches. Up-to-date cotrol ut crcuts very ofte are mplemeted usg PLDs. Mcroprocessors ca be also cosdered as a soluto takg costs to accout. But very ofte mcroprocessors are too slow for realzato cotrol uts of dgtal systems. The parttog of state maches ca be a soluto for ths problem allowg a parallel executo of state maches, keepg performace ad cost at adequate levels. I ths case, the tme crtcal part of the cotrol ut ca be mplemeted fast FPGA devce ad other parts ca be realzed by cheaper platforms. The problems ad algorthms of parttog of state maches are dscussed ths paper. A CAD tool for parttog mplemetg the proposed algorthm s also preseted. Keywords: cotrol ut, fte state mache, FPGA, KISS, parttog. Wprowadzee Wększość systemów cyfrowych może zostać podzeloych a jedostkę sterującą śceżkę daych [6]. Jede z ajpopularejszych metod specyfkacj mplemetacj jedostek sterujących oparte są o zastosowae skończoych automatów staów (ag. fte state mache, FSM) []. Następe są oe bardzo często realzowae z wykorzystaem programowalych układów cyfrowych takch, jak: CPLD lub FPGA [0]. Jedak uwzględając koszty realzacj całego systemu moża tu też rozważyć zastosowae mkrokotrolerów lub mkroprocesorów. Nestety mkroprocesory są często zbyt wole do realzacj jedostek sterujących krytyczym częścam systemów cyfrowych. Z drugej stroy, mplemetacja bardzo dużych automatów staów do układów FPGA może być bardzo kosztowa, a wydajość może zostać obżoa (w zależośc od zastosowaej metody sytezy) a skutek dużej złożoośc logczej automatu cyfrowego. Partycjoowae skończoego automatu staów a zbór powązaych automatów staów może staowć rozwązae problemu zbalasowaa kosztów wydajośc [7, 9]. Zabeg te może być róweż wydajy w przypadku współbeżego projektowaa sprzętu oprogramowaa (ag. hardware/software co-desg). Umożlw o mapowae poszczególych kompoetów do różych platform w zależośc od wymagań projektowych. Wstępe przedstawoo ogóly ops propoowaej metody zdefowao stosowaą otację. W astępym rozdzale został przedstawoy szczegółowy ops algorytmu sposób jego mplemetacj. Następe zaprezetowao przykład w celu zlustrowaa opsaych procedur oraz przedstawea uzyskaych wyków. Na końcu, omówoo uwag, możlwośc dalszego rozwoju podsumowae. Metody Iformatyk Stosowaej, r /00 (3), s. 5-3 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

6 Arkadusz Bukowec. Ogóly ops metody Puktem wejścowym do procesu dekompozycj jest graf staów automatu Mealy ego oraz zbór krawędz tworzących zbór podzału [4]. Po usuęcu tych krawędz zostaą uzyskae ezależe sub-automaty rówoległe. Należy tu zazaczyć, że rozważee modelu automatu Mealy ego e wyklucza możlwośc uogólea metody a automaty z wyjścam typu Moore a. Dodatkowo, do każdego sub-automatu dodaway jest sta spoczykowy oraz zbór wejść wyjść służący do sychrozacj pracy z pozostałym subautomatam. Ogóly schemat archtektury systemu po takej dekompozycj przedstawoo a rysuku. Rysuek. Ogóly schemat archtektury systemu Wykorzystując omówoą procedurę dekompozycj, część krytycza jedostk sterującej może zostać zamplemetowaa w szybkm układze FPGA, atomast pozostałe kompoety moża zrealzować z wykorzystaem tańszych układów w celu obżea kosztów realzacj całego systemu. Z drugej stroy, każdy z sub-automatów moża poddać syteze z wykorzystaem ych metod [, 5]. Należy tu zazaczyć, że wystąpee różych czasów wykoaa dla poszczególych kompoetów może wymagać zastosowaa specjalych metod sychrozacj [8]. Problem te może zostać zacze ograczoy poprzez zastosowae globalego sygału zegarowego. Take właśe rozwązae zastosowae jest w metodze omawaej w tym artykule. Nestety e jest możlwe w peł zautomatyzowae uzyskae zboru podzału bazując a matematyczych algorytmach grafowych, poeważ graf stau e zawera żadych dodatkowych formacj a temat wymagaego czasu wykoaa, prawdopodobeństwa wystąpea przejśca, typów wykoywaych fukcj, tp. W takej sytuacj zbór podzału mus zostać wyzaczoy przez projektata algorytmu sterowaa a system komputerowy dokoa partycjoowaa algorytmu a podstawe początkowego grafu staów wejścowego zboru podzału.

Dekompozycja skończoych automatów staów 7 3. Defcje reprezetacja 3.. Skończoy automat staów Skończoy automat staów jest to szóstka: S = A, a, X, Y,δ,ω () gdze: A jest skończoym zborem staów wewętrzych; a jest staem początkowym automatu; X jest skończoym zborem wejścowych zmeych boolowskch; Y jest skończoym zborem wyjścowych zmeych boolowskch; δ jest fukcją przejść automatu; ω jest fukcją wyjść automatu. 3.. Sub-automat Sub-automat jest to ósemka:,, C C SS = A a X, X, Y, Y,δ,ω () S S gdze: A S jest skończoym zborem staów wewętrzych sub-automatu, A S A a s, a s jest dodatkowym staem spoczykowym sub-automatu, wymagaym przez proces sychrozacj; a jest staem początkowym sub-automatu, może o być rówy staow spoczykowemu; X S jest skończoym zborem wejścowych zmeych boolowskch, X S X; X S C jest skończoym zborem wejścowych zmeych boolowskch służących do sychrozacj, pochodzących z pozostałych sub-automatów; Y S jest skończoym zborem wyjścowych zmeych boolowskch, Y S Y; Y S C jest skończoym zborem wyjścowych zmeych boolowskch służących do sychrozacj, przekazywaych do pozostałych sub-automatów; δ jest fukcją przejść automatu; ω jest fukcją wyjść automatu. 3.. Dagram staów Skończoy automat staów może zostać przedstawoy a wele sposobów. Jedą z ajpopularejszych reprezetacj jest dagram staów [6]. Dagram staów jest to sódemka: S S S SD = A, a, X, Y, F, FX, FY (3) gdze: A jest skończoym zborem werzchołków odpowadającym staom wewętrzym; a jest wyróżoym werzchołkem reprezetującym sta początkowy automatu; X jest skończoym zborem wejścowych zmeych boolowskch; Y jest skończoym zborem wyjścowych zmeych boolowskch;

8 Arkadusz Bukowec F jest skończoym zborem łuków, odpowadających przejścom automatu, zdefoway jest jako sta źródłowy, przypsay waruek przejśca, sta docelowy oraz przypsae wyrażee wyjścowe. FX jest zborem waruków przejść, każdy waruek przejśca zapsay jest jako loczy logczy afrmacj lub egacj pewych zmeych wejścowych; FY jest zborem wyrażeń wyjścowych, każde wyrażee zapsae jest jako kokateacja pewych zmeych wyjścowych. Reprezetacja ta jest wygoda dla żyerów ze względu a czytely zaps grafczy (rys. ) jedak e jest zbyt wygoda dla komputerowych systemów przetwarzaa. 3.. Format KISS Rysuek. Graf staów automatu S Format KISS został opracoway a Uwersytece Berkeley [] jest tekstową reprezetacją jedowymarowej tablcy przejść-wyjść automatu [0]. Ops tak składa sę z agłówka tabel (lst. ). Nagłówek zawera formacje o lczbe wejść (.), wyjść (.o), l w tabel (.p) staów (.s). Moża w m zawrzeć róweż opcjoalą formację o stae początkowym (.r)...o 3.s 6.p 8.r a -0 a a 000 - a a3 00 -- a a4 00 - a3 a 00 0- a3 a4 00 -- a4 a5 0 -- a5 a6 0 -- a6 a4 0 Lstg. Ops automatu S w formace KISS Tablca opsuje atomast przejśca automatu. Składa sę oa z czterech kolum: waruku przejśca, stau źródłowego,

Dekompozycja skończoych automatów staów 9 stau docelowego, wyrażea wyjścowego. Symbol - przy zmeej wejścowej ozacza, że e wchodz oa do waruku przejśca, Wartość 0 ozacza, że jej egacja wchodz do waruku, a wartość, że jej afrmacja wchodz do waruku. Wartość 0 dla zmeej wyjścowej ozacza, że e wchodz oa do wyrażea wyjścowego atomast wartość, że wchodz. Dopuszczaly jest róweż w tym przypadku symbol -, który ozacza, że daa zmea może, ale e mus, wejść do wyrażea wyjścowego (tzw. wartość do t care). Reprezetacja ta ze względu a swój prosty zaps jest bardzo wygoda dla systemów komputerowych. 4. Implemetacja algorytmu dekompozycj Celem algorytmu dekompozycj jest podzelee jedego początkowego automatu stau, zapsaego w formace KISS, a zbór rówoległych sub-automatów (rys. 3). W celu uzyskaa tego podzału zostae wykorzystay zbór podzału. a a a3 Wejśca a4 Implemetacja Sygały sterujące FSM a5 a6 Wyjśca Wybór zboru podzału a a a3 a4 a5 a6 Dekompozycja a a a3 Wejśca STSP Implemetacja STSP3 a4 STSP Sygały sterujące SubFSM SubFSM SubFSM Magstrala sychrozująca a5 a6 Blok wyjścowy Wyjśca Rysuek 3. Idea algorytmu dekomopzycj

0 Arkadusz Bukowec Zbór podzału mus spełać waruek tak, że po usuęcu wszystkch łuków wchodzących w jego skład z modelu bazowego uzyska sę przyajmej dwa kompoety (podgrafy) epołączoe ze sobą żadym łukam. Kompoety te będą staowły podstawę owych sub-automatów. Procedurę partycjoowaa ależy zakończyć poprzez: Dodae do sub-automatu, zawerającego sta początkowy z modelu bazowego, jedego owego stau. Sta te reprezetuje wszystke pozostałe kompoety. Dodae do pozostałych sub-automatów jedego owego stau, który staje sę ch staem początkowym. Sta te róweż reprezetuje pozostałe kompoety. Dodae w każdym sub-automace przejść pomędzy owym staem a pozostałym staam tego automatu w oparcu o usuęte przejśca. Przypsae do ch waruk przejśca uwzględają wejścowe zmee boolowske służące do sychrozacj, pochodzące z pozostałych sub-automatów. Geerowae w czase tych przejść wyrażee wyjścowe zawerają atomast zmee boolowske służące do sychrozacj, przekazywae do pozostałych sub-automatów. Omawaa procedura została zamplemetowaa w programe CAD zwaym DvdeFSM [3]. Narzędze to dzała w l komad jako parametr wejścowy przyjmuje plk w formace KISS opsujący początkowy automat staów. Łuk ależące do zboru podzału powy zostać ozaczoe w tym plku specjalą dyrektywą #dvtr. 5. Przykład zastosowaa algorytmu dekompozycj Aalza dzałaa algorytmu zostae zlustrowaa a przykładze automatu S przedstawoym a rysuku a. Na początku ależy zdefować zbór podzału. W tym przypadku zbór te składa sę z 4 przejść (krawędz) zapsaych w 3, 5, 6 8 l tablcy przejśćwyjść tego automatu. Jako wyk dzałaa algorytmu uzyskuje sę 3 sub-automaty SS, SS SS 3. Są oe zapsae w formace KISS a ch grafy staów przedstawoo odpowedo a rysukach 4, 5 6. Dodae w trakce wykoywaa algorytmu stay azywają sę STSPx zazaczoe są wytłuszczoą czcoką a rysukach. Aalogcze są zazaczoe dodae zmee boolowske, które azywają sę sax. Przykładowo, sygał sa3 geeroway jest w sub- automace SS w trakce przejśca ze stau a3 do stau spoczykowego (rys. 4). Jedocześe jest o wejścem sub-automatu SS wzbudza go do dzałaa wywołując przejśce ze stau spoczykowego do stau a4 (rys. 5). Akcja ta odpowada przejścu zapsaym w 5. l tablcy przejść-wyjść bazowego automatu S (rys. a). Rysuek 4. Sub-automat SS

Dekompozycja skończoych automatów staów Rysuek 5. Sub-automat SS ~sa4 / - sa4 / - STSP3 - / yy3 sa6 a5 - / yy3 a6 Rysuek 6. Sub-automat SS 3 W celu zapewea poprawego dzałaa całego systemu ależy utworzyć moduł adrzędy, który mus spełać astępujące waruk: wszystke sub-automaty muszą posadać te sam sygał zegarowy zerujący; wszystke automaty powy posadać te same sygały wejścowe; dodatkowe sygały wyjścowe muszą być połączoe z odpowedm wejścam pozostałych sub-automatów; odpowadające sobe sygały wyjścowe ze wszystkch sub-automatów muszą być połączoe w globale sygały wyjścowe w bloku wyjścowym za pomocą bramk OR. Moduł adrzędy dla omawaego przykładu pokazao a rysuku 7. Rysuek 7. Moduł adrzędy automatu SS

Arkadusz Bukowec W celu poprawego dzałaa układ poddao symulacj (przygotowując odpowed model w języku VHDL [4]). Przebeg czasowy automatu przed dekompozycją przedstawoo a rysuku 8a, a po dekompozycj a rysuku 8b. Aalzując przedstawoe przebeg czasowe wdać, że układ po dekompozycj dzała poprawe. Dla ułatwea aktywe stay poszczególych sub-automatów wyróżoo wypełeem a rysuku 8b. a) b) Rysuek 8. Symulacja automat S przed (a) po dekompozycj (b) Uzyskae kody są w peł sytezowale. Weryfkacj tego procesu dokoao z wykorzystaem arzędz frmy Xlx Altera (Tab. ). Aalzując wyk sytezy ależy zwrócć uwagę, ż podzał zasobów sprzętowych a poszczególe moduły jest symbolczy, gdyż oba arzędza starają sę wykorzystać wspóle zasoby sprzętowe do realzacj logk różych modułów wchodzących w skład jedego układu. Wyka to z algorytmów dekompozycj fukcj logczych [0]. Różce w lczbe wykorzystaych przerzutków wykają atomast z różych metod kodowaa staów wybraych automatycze przez arzędza do sytezy [, 6, 0]. Tabela. Wyk mplemetacj układu S po dekompozycj Xlx Vrtex4 Altera Stratx II XC4VLX5 -SF363 EPS5-F484C3 LUT FF Slce LUT FF LC SS 4 3 SS SS3 3 3 S top-level 6 0 4 3 0 4 S suma 5 7 7 0

Dekompozycja skończoych automatów staów 3 6. Podsumowae Celem tego artykułu było przedstawee omówee algorytmu partycjoowaa skończoych automatów staów arzędza CAD, które go mplemetuje. Algorytm został zlustroway w peł dzałającym przykładem. W dalszych pracach ależałoby sę skupć ad opracowae algorytmów umożlwających automatycze uzyskae zboru podzału. W tym celu ależy jedak przetworzyć dodatkowe formacje take, jak wymagay czas wykoaa, czy prawdopodobeństwo wystąpea przejśca. Implemetacja takego algorytmu może być bardzo złożoa ależy rozważyć zastosowae algorytmów geetyczych lub systemu woskującego do tego celu. Bblografa [] Baraov S. I., Logc Sythess for Cotrol Automat. Bosto: Kluwer, 994 [] Barkalov A., Ttareko L., Logc Sythess for FSM-based Cotrol Uts. Berl: Sprger-Verlag, 009 [3] Bukowec A., Gomes L., DvdeFSM [ole] http://www.uova.pt/gres/dvdefsm/ [dostęp: 00] [4] Bukowec A., Gomes L., Parttog of mealy fte state maches, 4th IFAC Workshop Dscrete-Evet System Desg DESDes'09, Gada Beach, Hszpaa, 009, ss. -6 [5] Bukowec A., Sythess of Fte State Maches for FPGA Devces Based o Archtecturel Decomposto. Zeloa Góra: Uversty of Zeloa Góra Press, 009 [6] De Mchel G., Sythess ad Optmzato of Dgtal Crcuts. New York: McGraw- Hll, 994 [7] Gomes L., Costa A., From use cases to system mplemetato: Statechart based codesg, Proc. st ACM & IEEE Cof. Formal Methods ad Programmg Models for Codesg MEMOCODE'03, Mt St-Mchel, Fracja, 003, s. 4-33 [8] Jatsch A., Modelg Embedded Systems ad SoC's: Cocurrecy ad Tme Models of Computato. Sa Fracsco: Morga Kaufma, 003 [9] Jóźwak L., Geeral decomposto ad ts use dgtal crcut sythess, VLSI Desg, vol. 3, 995, s. 5-48 [0] Łuba T., Syteza układów logczych. Warszawa: Ofcya Wydawcza Poltechk Warszawskej, 005 [] Yag S., Logc Sythess ad Optmzato Bechmarks User Gude. v.3.0, Raport techczy, North Carola: Mcroelectrocs Ceter of North Carola, 99

Zastosowae metod projekcyjych w optymalzacj wypukłej eróżczkowalej Robert Dylewsk Uwersytet Zeloogórsk, Wydzał Matematyk, Iformatyk Ekoometr Abstract: I ths paper we preset projecto methods for osmooth covex optmzato. We descrbe optmzato problems wth odfferetable objectve fuctos. We also preset the results for problem of membrae ad for the projecto method wth resdual selecto. Keywords: projecto method, odfferetable optmzato. Wprowadzee W pracy rozważamy problem mmalzacj wypukłej bez ograczeń postac: mmalzować względem f ( x) x R, () gdze fukcja f : R R jest wypukła, ekoecze różczkowala. Zakładamy, że zbór rozwązań optymalych dla tego problemu * M = { z R : f ( z) f ( x) dla każdego x R } jest epusty, czyl fukcja f osąga mmum globale f *. Jeżel fukcja f jest różczkowala dla każdego x R, to: x * R jest rozwązaem * * optymalym ( x M ) problemu () wtedy tylko wtedy, gdy f ( x * ) = 0. Fukcja wypukła jest różczkowala prawe wszędze. Jeżel atomast fukcja wypukła f posada w dzedze pukty, w których e jest różczkowala (może ch być skończoa lczba), to w puktach tych moża wyzaczyć zamast gradetu tzw. subróżczkę T f ( x) = { g R : f ( y) f ( x) g, y x, y R }, ( x, y = x y ozacza stadardowy loczy skalary wektorów x, y R ). Elemet g f ( x) f ( x) azywa sę subgradetem fukcj f w pukce x. Oczywśce, jeżel f jest różczkowala w x, to subróżczka w tym pukce jest zborem jedoelemetowym f ( x) = { f ( x)}. Podsumowując, waruek koeczy wystarczający optymalośc dla problemu () ma postać [4]: x M * 0 f ( * ). () * x Dla zadań mmalzacj wypukłej () stawa sę mmale wymagaa dotyczące formacj o fukcj celu f: dla każdego x R moża wyzaczyć wartość f (x) fukcj celu f jej (jede) subgradet g f (x). Metody Iformatyk Stosowaej, r /00 (3), s. 5- ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

6 Robert Dylewsk Klasycze metody mmalzacj zastosowae bezpośredo do problemu () e są w ogólośc zbeże do rozwązaa optymalego, awet gdy fukcja celu jest różczkowala w każdym pukce będącym kolejym przyblżeem rozwązaa. Może też sę zdarzyć, że otrzymamy zbeżość do puktu, który e jest rozwązaem optymalym (przykład 3.3 w pracy [4]). Dla fukcj różczkowalej gradet jest mały w poblżu puktu realzującego jej mmum. Dla klasyczych metod mmalzacj różczkowalej moża przyjąć kryterum zatrzymaa postac ( k T f x ) < ε dla zadaej toleracj optymalośc ε ( x = x x oza- cza ormę eukldesową wektora x R ). Kryterum tej postac e moża jedak stosować w przypadku mmalzacj eróżczkowalej, awet jeśl gradet fukcj celu zastąp sę jej subgradetem. Subgradet bowem e mus być ajczęścej e jest mały w poblżu rozwązaa optymalego. Wystarczy rozpatrzeć prosty przykład f ( x) = x = max{ x, x}. Dla x 0 gradet jest rówy albo -, atomast f ( 0) = [,]. Występuje jeszcze y problem. Dla fukcj różczkowalej keruek t = f (x) jest kerukem ajszybszego spadku w pukce x, atomast dla fukcj wypukłej, która e jest różczkowala w pukce x, keruek t = g, gdze g f (x) e mus być awet kerukem spadku (wektor t jest kerukem spadku fukcj f w pukce x w keruku t, jeśl steje τ > 0 take, że dla każdego λ ( 0, τ ) zachodz f ( x λ t) < f ( x) ).. Metody projekcyje dla problemów mmalzacj wypukłej W pukce tym przedstawamy metody projekcyje, które zastosowae do problemów postac () gwaratują zbeżość do rozwązaa optymalego. Metody te mają postać procedury teracyjej geerującej cąg (x k ) kolejych przyblżeń postac: gdze: x R x k = x dowoly k λ t λ (0,) jest tzw. współczykem relaksacyjym; k wektor rzutowy t k jest kerukem poszukwań postac k S k k k, k (3) t = P ( x ) x (4) k ( P ( x) arg m y x ozacza projekcję metryczą puktu x a zbór S); S = y S zbór S k jest postac S I L k = S(, α ), (5) k f k ( k k gdze: S f, α ) = { x R : f ( x) α } jest podpozomcą fukcj f dla pozomu α k, a f x) = g ( x ), x x f ( x ) jest learyzacją fukcj f w pukce x ; ( f L {,,..., k} jest zborem wybraych learyzacj takm, że k ; k pozom α k = µ ) α k ( µ α (6) k L k jest przyblżeem wartośc mmalej * f fukcj celu f;

Zastosowae metod projekcyjych w optymalzacj wypukłej eróżczkowalej 7 µ ( 0,] jest parametrem pozomu; k k α jest ograczeem górym wartośc f * α k = m f ( x ); (7) α jest ograczeem dolym wartośc teracyjego k * f aktualzowaym w trakce procesu α * f. (8) k Dodatkowo zakłada sę, że zae jest ograczee góre R odległośc puktu startowego x od zboru rozwązań M, ( R d * * ( x, M ) ) początkowe ograczee dole α wartośc mmalej * f fukcj f. * Jeżel e zae jest lepsze początkowe ograczee dole α wartośc f, to moża przyjąć α = f x ) g ( ) R (uwaga c) w pracy []). ( f x Poszczególe metody różą sę przede wszystkm wyborem zboru L k sposobem aktualzacj ograczea dolego α wartośc f. Jeżel zaa jest wartość f, to w (6) * * moża przyjąć µ =, k * α = f pozom = * k f. metodę Polyaka [3], gdze wektor rzutowy α Jeżel dodatkowo L = {k}, to otrzymujemy t k k = ). * ( f ( xk ) f ) g f ( xk ) / g f ( xk k * W przypadku, gdy f e jest zae ( µ ( 0,) ), sposób aktualzacj α k wykorzystujący formację o R podao w [9]. W pracy [0] pokazao, że jeżel L k jest pewym podzborem zboru {,,, k} takm, że k L, to przy odpowedej aktualzacj ograczea dolego α k (wykorzystującej formację o R) cąg x k jest zbeży do rozwązaa. W [] zapropoowao metodę, w której do zboru L k brae są wszystke otrzymae learyzacje L k = {,,, k}. W pracy [] wprowadzoo model selekcj stożka rozwartego do wyboru zboru L k w kosekwecj kostrukcj wektora t k, a w pracach [3] [4] wprowadzoo tzw. model selekcj resdualej, dla której selekcja stożka rozwartego jest szczególym przypadkem. Wykorzystując model selekcj resdualej albo selekcj stożka rozwartego moża dodatkowo wykrywać kedy pozom α jest za sk ( α f ) w przypadku kedy * wyza- k k < czoy zbór S k = O/ (korzystając z rozkładu Cholesky ego macerzy Grama G T G L L kolum * macerzy G L = [g f (x ): ]). Jeżel stwerdz sę, że α f, to w kolejej teracj moż- Lk a wykoać aktualzację ograczea dolego α k = α k. W podaych metodach projekcyjych wektor t k ekoecze jest spadkowy, ale * w przypadku, gdy α f dla każdego k, to cąg (x k) jest mootoczy w sese k k * * Fejéra względem zboru M, tz. xk x xk x dla dowolego x M dla dowolego k. W prezetowaych metodach projekcyjych możemy stosować kryterum zatrzymaa postac α k α ε dla bezwzględej toleracj optymalośc ε. Po spełeu takego kryterum zatrzymaa, dla puktu x k = arg m k f ( x ) zachodz f ( x k ) f * ε, zatem x k jest tzw. rozwązaem ε-optymalym dla problemu (). k <

8 Robert Dylewsk 3. Przykłady problemów optymalzacj wypukłej eróżczkowalej Problemy postac () pojawają sę w optymalzacj w sposób aturaly. W pukce tym podajemy klka przykładów problemów, które mają postać () występują w ch fukcje eróżczkowale. 3.. Problem dopuszczalośc lowej Problem dopuszczalośc lowej ma postać: zaleźć spełający x R A T x b, (9) gdze: A jest macerzą typu m T m b = ( b,..., b m ) R, o le tak x steje. Moża też rozpatrywać problem postac: mmalzować f względem T T ( x) = max{ A x b,..., Am x bm,0} x R gdze: A ozacza -tą kolumę macerzy A, {,..., m}. Otrzymaa w (0) fukcja f jest wypukła, ale może być eróżczkowala. T Jeżel wadomo, że zbór rozwązań M = { x : A x } problemu (9) jest epusty, to 0 b 0 * problem (9) jest rówoważy problemow (0) ze zaa wartoścą mmalą f = 0. Jeżel atomast e wemy, czy M O/, to wyzaczając rozwązae problemu (0) metodą pro- * jekcyją opsaą w pukce, możemy przyjąć α = 0 f. Rozwązae ε-optymale x k problemu (0) speła wtedy waruek, (0) A T x k b f * ε () * dla każdego {,..., m}, gdze f jest mmalą wartoścą, dla której spełoy jest te waruek. Oczywśce, jeżel M O/, to powyższy waruek przyjmuje postać A T x k b ε dla każdego {,..., m}. 0 W problemach postac (9) często M 0 = O/ albo e wemy, czy M 0 = O/. W wększośc metod stosowaych bezpośredo do problemu (9) mamy zagwaratowaą zbeżość, tylko gdy M 0 O/ (patrz p. []), ewetuale możemy wykryć, że M 0 = O/ w trakce procesu teracyjego (patrz p. [5]). Stosując metodę projekcyją do problemu (0) e musmy wedzeć, czy M 0 O/, a otrzymae rozwązae ma pożądaą własość (). Problem postac (9) pojawa sę p. w radoterap. W zagadeu plaowaa radoterap z użycem wązek o modulowaej tesywośc (testy modulated radato therapy IMRT) trzeba ułożyć pla aśwetleń promeam retgeowskm mający a celu zszczee guza e szcząc jedocześe zdrowych orgaów. Model matematyczy otrzymay w wyku dyskretyzacj problemu IMRT ma właśe postać (9), gdze układ ograczeń w postac erówośc lowych ajczęścej jest sprzeczy. Należy określć wektor tesywośc radacj ajblższy spełeu tych ograczeń (szczegóły moża zaleźć w [8]). Podobe, w zagadeu tomograf komputerowej (wyzaczae przekroju pewego obektu) otrzymuje sę model matematyczy postac (9) z macerzą rzadką A dużych wymarów (patrz p. [7]).

Zastosowae metod projekcyjych w optymalzacj wypukłej eróżczkowalej 9 3.. Problem mmalzacj wypukłej z ograczeam Problem mmalzacj wypukłej z ograczeam ma postać: mmalzować względem przy ograczeach f ( x) x R c ( x) 0, I, () gdze: f, c : R R, I = {,..., m} są fukcjam wypukłym. Problem () moża sprowadzć do problemu bez ograczeń (), wprowadzając tzw. dokładą fukcję kary T Φ ( x) = α f ( x) c ( x), gdze: c ( x) = [ c ( x),..., c ( x)], c ( x) = max{ c ( x), 0}, I, α > 0, zaś ozacza jakąkolwek ormę w R, a przykład ormę l lub l. W przypadku ormy l problem mmalzacj dokładej fukcj kary przyjmuje postać: mmalzować względem Φ ( x) = α f ( x) max{0, c ( x) : I} m x R Dla dostatecze małego α > 0 przy pewych założeach dotyczących fukcj ograczeń c ( x), = {,..., m} problemy (3) () są sobe rówoważe. Szczegóły moża zaleźć w [6] (ustęp 4.3). Zaletą powyższego podejśca jest sprowadzee trudejszego problemu mmalzacj z ograczeam, do prostszego problemu mmalzacj bez ograczeń. Ceą za to jest utrata różczkowalośc. Dokłada fukcja kary jest ajczęścej eróżczkowala, awet jeśl fukcje f, c, I są różczkowale. Natomast dokłada fukcja kary jest wypukła, jeśl fukcje 3.3. Problem membray f, c, I są wypukłe. Problem membray moża przedstawć, przy pomocy rówaa Laplace a z warukem brzegowym, w postac: wyzaczyć u u = f a u = 0 a Ω, take, że gdze: Ω = [ 0,] [0,], Ω ozacza brzeg obszaru Ω, u u u =. W rówau tym f x y ozacza słę dzałającą prostopadle do elastyczej membray, zaś u ugęce membray pod wpływem dzałającej sły. Problem (4) moża sformułować rówoważe jako problem mmalzacj postac: mmalzować względem Ω a( u, u) ( f, u) u K, T gdze: a( u, w) = u w K = { u : u = 0 a Ω}. Natomast problem (5) moża rozwą- Ω zać przez dyskretyzację, dzeląc obszar Ω a kwadraty zastępując u f przez ch kawałkam lowe aproksymacje. Po dyskretyzacj otrzymujemy problem postac () z kwadratową. (3) (4) (5)

0 Robert Dylewsk N fukcją celu p R N : R R, gdze N N jest lczbą kwadratów, a którą został podzeloy obszar Ω. Szczegóły moża zaleźć w []. Na koec prezetujemy wyk dla problemu membray, w którym przyjęto słę f = N = 39, czyl wymar zadaa po dyskretyzacj wyos 40*40=600. Do wyzaczea rozwązaa użyto metody projekcyjej opsaej przez (3, 4, 5, 6, 7, 8), gdze do wyboru zboru L k ( w kosekwecj kostrukcj wektora t k ) zastosowao metodę selekcj resdualej opracowaą przez autora A. Cegelskego (szczegóły moża zaleźć w [3] [4]). Rysuek. Uzyskae rozwązae dla k = 34, ε = 0.30 Rysuek. Uzyskae rozwązae dla k = 305, ε = 0.06 Rysuek 3. Uzyskae rozwązae dla k = 047, ε = 0-6

Zastosowae metod projekcyjych w optymalzacj wypukłej eróżczkowalej Implemetację wykoao w Fortrae 90 (Lahey Fortra 90 v. 3.5), a oblczea były przeprowadzoe przy podwójej precyzj. Do grafczego przedstawea rozwązaa wykorzystao paket matematyczy Matlab. Przykładowe wyk przedstawoo a rysukach, 3. Przez k ozaczoo lczbę wyzaczeń wartośc fukcj celu jej subgradetu, a przez ε bezwzględą tolerację optymalośc, dla której spełoe było kryterum zatrzymaa α k α ε. 4. Podsumowae W artykule przedstawoo metody projekcyje służące rozwązywau problemów mmalzacj wypukłej eróżczkowalej. Opsao problemy z optymalzacj, w których występują fukcje eróżczkowale. Dla przykładowego problemu membray wyzaczoo rozwązae tego problemu, wykorzystując tzw. dyskretyzację. Zastosowao metodę projekcyją z modelem selekcj resdualej learyzacj wprowadzoym w pracach [3, 4]. Dla metody projekcyjej z selekcją resdualą moża zaobserwować, w problemach testowaych przez autora, lową zbeżość do rozwązaa. Wadomo też, że metody projekcyje ależą do klasy ajefektywejszych metod w mmalzacj wypukłej eróżczkowalej []. Bblografa [] Cegelsk A. Metody relaksacyje w problemach optymalzacj wypukłej. Zeloa Góra: Moografe 67, IM WSI, 993 [] Cegelsk A. A method of projecto oto a acute coe wth level cotrol covex mmzato. Mathematcal Programmg, No 85, 999, s. 469-490 [3] Cegelsk A., Dylewsk R. Selecto strateges projecto methods for covex mmzato problems. Dscussoes Mathematcae. Dfferetal Iclusos, Cotrol ad Optmzato, No, 00, s. 97-3 [4] Cegelsk A., Dylewsk R. Resdual selecto a projecto method for covex mmzato problems. Optmzato, No 5, 003, s. -0 [5] Dylewsk R. Projecto method wth resdual selecto for lear feasblty problems. Dscussoes Mathematcae. Dfferetal Iclusos, Cotrol ad Optmzato, No 7, 007, s. 43-50 [6] Fletcher R. Practcal Methods of optmzato, vol., Chchester, New York, Brsbae, Toroto: Joh Wlley & Sos, 98 [7] Herma G.T. A relaxato method for recostructg objects from osy X-rays. Mathematcal Programmg, No 8, 975, s. 359-369 [8] Hamacher H.W., Küfer K.-H. Iverse raduato therapy plag a multple objectve optmzato approach. Dscrete Appled Mathematcs, No 8, 00, s. 45-6 [9] Km S., Ah H., Cho S.-C. Varable target value subgradet method. Mathematcal Programmg, No 49, 99, s. 359-369 [0] Kwel K.C. The effcecy of subgadet projecto methods for covex optmzato, part I: Geeral level methods. SIAM J. Cotrol ad Optmzato, No 34, 996, s. 660-676 [] Lemaréchal C., Nemrovsk A.S., Nesterov Yu.E. New varats of budle methods. Mathematcal Programmg, No 69, 995, s. -47 [] Outrata J., Kocvara M., Zowe J. Nosmooth approach to optmzato problems wth equlbrum costras, Dordrecht: Kluwer, 998 k

Robert Dylewsk [3] Polyak B.T. Mmzato of usmooth fuctoals, Zh. Vychsl. Mat. Mat. Fz., No 9, 969, s. 509-5 [4] Schramm H., Zowe J. A verso of the budle dea for mmzg a osmooth fucto: coceptual dea, covergece aalyss, umercal results. SIAM J. Optmzato, No, 99, s. -5

Badae skuteczośc deskryptora Lght Feld w probleme reprezetacj kształtów trójwymarowych a potrzeby ch deksowaa Darusz Frejlchowsk Zachodopomorsk Uwersytet Techologczy w Szczece, Wydzał Iformatyk Abstract: I the paper the results of the expermetal evaluato of the Lght Feld Descrptor the problem of three-dmesoal shape represetato are preseted. The Lght Feld Descrptor (LFD) ca be successfully used the cotet-based three-dmesoal model retreval. The most geeral assumpto ths algorthm s that f two 3D models are smlar, they look smlar from all vewg agles. Hece, the explored approach several orthogoal projectos of a object are redered ad used for ts represetato ad later retreval. Keywords: 3D shape descrpto, cotet-based 3D model retreval, Lght Feld Descrptor. Wprowadzee do problemu reprezetacj kształtu trójwymarowego w zadaach deksowaa Olbrzyma lość daych multmedalych, w tym w szczególośc przechowywaych w euporządkoway sposób w Iterece, wymusza koeczość tworzea efektywych algorytmów ch przetwarzaa przeszukwaa. Dlatego od dłuższego już czasu pracuje sę ad skuteczym sposobem opsu tego typu daych, ułatwającym proces zajdowaa określoych treśc, uwzględając awet bardzo duże rozmary przetwarzaych baz. Jedym z obece upowszechających sę rozwązań jest stadard MPEG-7 ([]), w którym zawarto szereg deskryptorów (algorytmów opsu) różego rodzaju cech, które opsują obekty zawarte w daych multmedalych. W przypadku obrazów moża w tym stadardze zaleźć mędzy ym deskryptory kształtu, koloru, czy tekstury. Umeszczoo w m także deskryptory kształtu obektów trójwymarowych. Ne ma w tym c dzwego, poeważ to właśe deksowae czy wyszukwae obektów 3D w dużych bazach multmedalych jest uważae za ajbardzej wymagające. Przy tym, w ostatch latach, opsywae zastosowae algorytmów grafk komputerowej stało sę zacze bardzej populare. Za przyczyę tego stau uzać ależy przede wszystkm wzrost wydajośc współczesych systemów komputerowych, ale róweż coraz lczejsze zastosowaa model trójwymarowych, od rozrywk, p. w śwatach wrtualych, grach, flmach (m.. []) poprzez bometrę, p. z użycem trójwymarowej reprezetacj twarzy w zadaach detyfkacj ludz (m.. [3]), aż po systemy komputerowo wspomagaego projektowaa, CAD, chroologcze jede z perwszych (m.. [4]). Wśród wymagań stawaych skuteczym algorytmom reprezetacj dowolego rodzaju obektów w zadaach deksowaa ajwększy acsk kładze sę a jedozaczy ops; tak, dzęk któremu łatwo będze przyporządkowywać obekt do odpowadającej mu klasy. Metody Iformatyk Stosowaej, r /00 (3), s. 3-9 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

4 Darusz Frejlchowsk Okazuje sę, że jest to zadae szczególe trude w przypadku model 3D. Wyka to z możlwośc różego ułożea obektu w przestrze, ale także zma w jego wyglądze. Te problemy są mej zaczące w przypadku ych cech. Nemej jedak algorytmom reprezetacj kształtów 3D stawa sę róweż e wymagaa. W pracy [5] zestawoo je w kotekśce deksowaa omawaej grupy daych w postac trzech cech, które muszą być spełoe, aby day algorytm moża było uzać za skuteczy. Są to: wydajość opsu skuteczość w zajdywau w baze obektów tych ajbardzej podobych do zadaego; zwarty ops łatwość deksowaa deskryptor powe meć ewelk rozmar, aby zmejszyć wymagaa co do rozmaru bazy deskryptorów oraz w celu przyspeszea procesu deksowaa; waratość względem wybraych przekształceń otrzymay ops powe być ezależy od określoych przekształceń problemów, w zależośc od kokretego zastosowaa. Algorytmy opsu kształtu 3D w problematyce deksowaa moża podzelć a cztery grupy ([6]): geometrycze, strukturale, symetrycze lokale. Metody z perwszej grupy bazują a zastosowau podstawowych cech geometryczych, które są wystarczające do opsaa obektu. Jedym z ajstarszych tego typu rozwązań jest deskryptor EGI (Exteded Gaussa Image, [7]). Jego rozszerzeem jest atomast CEGI (Complex EGI, [8]). Koleje przykłady algorytmów ależących do tej grupy to: rozkład kształtu ([9]), hstogram kształtu ([0]), czy momety trójwymarowe ([5]). Najpopularejsze dwa deskryptory strukturale to: welorozdzelczoścowy graf Reeba (Multresolutoal Reeb Graph MRG, []) oraz deskryptor szkeletowy ([]). Do grupy metod bazujących a zajdowau symetr w modelach zalczyć możemy deskryptor symetr osowej (Reflectve Symmetry Descrptor RSD, [3]) oraz tzw. rozszerzoy deskryptor kształtu ([4]). Poza wymeoym metodam wykorzystującym obekt jako całość, steje ewelka grupa algorytmów bazujących a lokalych właścwoścach model. Przykładem takego algorytmu są tzw. obrazy obrotowe ([5]). W ejszym artykule przedstawoe zostały rezultaty eksperymetu z użycem deskryptora Lght Feld ([6]). Jest o o tyle specyfczym algorytmem, że w odróżeu od wększośc stosowaych rozwązań bazuje a zewętrzym wyglądze obektu, z uwzględeem różych puktów wdzea, a e a cechach geometryczych. W badaach ajwększą uwagę zwrócoo a skuteczość badaego algorytmu w rozróżau obektów ależących do różych klas, co ma kluczowe zaczee w zagadeach deksowaa. Wykorzystao do testów bazę Prceto Shape Bechmark ([7], [8]).. Deskryptor Lght Feld Mówąc ajogólej, główą deą deskryptora LFD (ag. Lght Feld Descrptor, [6]) jest przygotowae dla daego modelu 3D zestawu wyrederowaych dwuwymarowych obektów, które powstają w wyku rzutowaa pod różym kątam patrzea a obekt źródłowy. Następe tak uzyskae reprezetacje model mogą być ze sobą porówywae. Przy czym, wychodzmy z założea, że dwa modele trójwymarowe są do sebe podobe, jeżel ch rzuty dwuwymarowe są podobe z różych puktów wdzea. Take rozwązae jest tucyje, poeważ przypoma ludzk sposób oceaa podobeństwa pomędzy obektam 3D. Perwszym krokem w procese budowy omawaej reprezetacj jest typowa dla welu deskryptorów kształtu 3D modyfkacja położea werzchołków obektu w tak sposób, aby

Badae skuteczośc deskryptora Lght Feld w probleme reprezetacj kształtów 5 środek cężkośc całego modelu zalazł sę w początku układu współrzędych. Następe dokoujemy ormalzacj wartośc werzchołków tak, by ajwększa odległość od dowolego werzchołka do cetrodu (środka cężkośc) obektu była rówa jede. W kolejym kroku geerowae są rzuty kształtu obektów dla różych puktów wdzea. Zakładamy przy tym, że kamery są umeszczoe w werzchołkach dwuastoścau foremego (dodekaedru), których jest dwadześca. Dzęk temu uzyskujemy rederowae rzuty dla dwudzestu różych kątów ([6]). Rzuty te przechowywae są w postac btmap o rozmarze 56 x 56 pksel. Dla dwóch obektów musmy wykoać 60 porówań, by uwzględć wszystke możlwe rzuty. Taka lczba wyka z faktu, że w dwuastoścae foremym do każdego z dwudzestu werzchołków dołączoe są trzy krawędze, co ozacza trzy obroty kamery w daym werzchołku ([6]). W rzeczywstych zastosowaach lczba wykorzystywaych rzutów dla werzchołków zostaje zredukowaa o połowę (do dzesęcu), ze względu a lustrzae odbca rzutów ortogoalych obektów 3D wewątrz dodekaedru. Przykład uzyskaych kształtów plaarych a potrzeby deskryptora LFD przedstawoo a rys.. ([6]). Ostatecze, jak już wspomao, określee stopa podobeństwa dwóch deskryptorów LFD sprowadza sę do wyzaczea podobeństwa pomędzy ch rzutam. Przy tym wyberaa jest ajmejsza wartość odległośc pomędzy reprezetacjam. Rysuek. Przykładowa grafcza reprezetacja rzutów uzyskaych a potrzeby deskryptora Lght Feld ([6]) Warto dodać, że w celu zwększea skuteczośc rozpozawaa daego modelu dla uzyskaych rzutów stosować moża wybrae deskryptory kształtu dwuwymarowego, które są zacze lepej przebadae pod względem wydajośc od algorytmów reprezetacj kształtów 3D. Jest ch róweż zacze węcej. Przykładowo w pracy [6] do tego zadaa wybrao momety Zerke a dla kształtu wypełoego oraz deskryptory Fourera dla zapsu koturowego kształtu D. W perwszej z wymeoych trasformacj do reprezetacj obektu zastosowao 35 współczyków deskryptora mometowego Zerke a, atomast w drugm przypadku wybrao dzesęć współczyków z wdma. W celu przyspeszea zadaa deksowaa tak uzyskae wartośc lczbowe zapsae zostały a 8 btach.

6 Darusz Frejlchowsk 3. Metodyka rezultaty eksperymetu Skuteczość deskryptora Lght Feld w procese deksowaa obektów 3D została przebadaa z użycem wybraych model bazy Prceto Shape Bechamark ([7], [8]). Wykorzystao do tego celu 3 obektów, ależących do 3 różych klas z tej bazy. Przykładowe obekty ależące do wybraych klas przedstawoo a rys.. Rysuek. Wybrae obekty ależące do sześcu różych klas, borące udzał w eksperymece Podobe jak w przypadku ych metod rozpozawaa deksowaa bazujących a użycu algorytmów opsu kształtu 3D, wszystke obekty borące udzał w eksperymece zostały opsae z użycem deskryptora, w aszym przypadku Lght Feld w takej postac przechowywae. Dotyczy to zarówo obektów testowych, jak wzorcowych (bazowych). Oczywśce modele zawarte w baze wzorców e były poowe używae w charakterze obektów testowych. Pojedyczy test polegał węc a dokoau porówaa (z użycem mary Eukldesowej) reprezetacj obektu testowego z wszystkm opsam obektów bazowych. Najmejsza wartość odległośc Eukldesowej wskazywała obekt bazowy ajbardzej podoby do testowego.

Badae skuteczośc deskryptora Lght Feld w probleme reprezetacj kształtów 7 W tabel. przedstawoe są wyk eksperymetu badającego właścwośc deskryptora Lght Feld w procese rozpozawaa obektów 3D a potrzeby deksowaa. Aalzując wartośc w ej zawarte możemy zauważyć, że o le średa wartość rozpozawaa jest stosukowo wysoka (blsko 69 %), to dla żadej z klas e uzyskao stuprocetowej skuteczośc. Najlepsze wyk pojawły sę dla klas perwszej (78,87 %), drugej (85,7 %), szóstej (88,89 %) dzewątej (74,4 %). Natomast ajgorsze rezultaty zostały osągęte dla klas pątej (0 %), dwuastej (5 %) trzyastej (6,67 %). Tabela. Rezultaty eksperymetu: skuteczość rozpozawaa kształtów 3D z użycem deskryptora Lght Feld Nr klasy Lczba rozpozaych prawdłowo Lczba rozpozaych błęde Procet rozpozaych prawdłowo Procet rozpozaych błęde. 56 5 78,87,3. 30 5 85,7 4,9 3. 8 57,89 4, 4. 8 4 56,5 43,75 5. 9 0,00 90,00 6. 3 4 88,89, 7. 3 3 50,00 50,00 8. 33,33 66,67 9. 3 74,4 5,58 0. 6 4 60,00 40,00. 66,67 33,33. 6 5,00 75,00 3. 5 6,67 83,33 RAZEM / ŚREDNIO 5 97 68,9 3,09 Uzyskae wyk moża porówać z rezultatam deskryptora EGI (Exteded Gaussa Image), który był testoway a detyczej baze obektów uzyskał średą skuteczość rozpozawaa rówą 60 % ([6]). Wdać węc od razu, że algorytm LFD jest lepszy od EGI, gdyż jego skuteczość a tej samej baze jest o 9 procet wększa. Jest to stoty postęp, poeważ deksowae obektów trójwymarowych jest bardzo złożoym problemem. Obekty ależące do różych klas są do sebe często bardzo podobe. Nejedokrote, gdy klasy są bardzo ogóle określoe, podobeństwo obektów w ramach jedej klasy może być mejsze, ż podobeństwo dwóch obektów z różych klas. Oprócz opsaego wcześej ogólego zestawea rezultatów dwóch wymeoych deskryptorów moża także wskazać także e różce pomędzy m. Aby tego dokoać, ależy przywołać szczegółowe, tabelarycze wyk deskryptora EGI, przedstawoe w pracy [6]. Zostały oe tutaj umeszczoe w tabel. Po aalze obu tabel moża zauważyć dwe stote różce. Po perwsze, deskryptor EGI, choć średo mej skuteczy, odotował w przypadku jedej z klas stuprocetową skuteczość deksowaa. Takego wyku e osągął a razu deskryptor Lght Feld. Co cekawe, dla klasy, której to dotyczy, deskryptor LFD uzyskał bardzo zły rezultat, wyoszący zaledwe ok. 7 %. Drugą zauważalą różcą pomędzy deskryptoram EGI LFD jest odmey rozkład współczyków procetowych dla rozpozaych obektów w poszczególych klasach. W przypadku EGI wartośc te są mej zmee zazwyczaj meszczą sę w przedzale od 50 do 70 % (poza dwoma wyjątkam, gdze osągęto 80 00 %). Natomast dla deskryptora

8 Darusz Frejlchowsk LFD wartośc skuteczośc rozpozaa dla poszczególych klas są zacze bardzej zróżcowae wahają sę od 0 do espeła 90 %. Nr klasy Tabela. Skuteczość rozpozawaa kształtów 3D z użycem deskryptora EGI ([6]) Lczba rozpozaych prawdłowo Lczba rozpozaych błęde Procet rozpozaych prawdłowo Procet rozpozaych błęde. 4 30 57,75 4,5. 3 65,7 34,9 3. 0 9 5,63 47,37 4. 7 5 53,3 46,87 5. 8 80,00 0,00 6. 8 8 50,00 50,00 7. 4 66,67 33,33 8. 66,67 33,33 9. 8 5 65, 34,88 0. 7 3 70,00 30,00. 0 3 60,6 39,39. 4 4 50,00 50,00 3. 6 0 00,00 0,00 RAZEM / ŚREDNIO 88 4 60,6 39,74 5. Podsumowae W artykule przedstawoo rezultaty eksperymetu pośwęcoego określeu wydajośc deskryptora Lght Feld w probleme deksowaa kształtów trójwymarowych. Metoda ta okazała sę efektywa uzyskała śred współczyk skuteczośc blsk 69 %. Wyk te porówao z rezultatam deskryptora Exteded Gaussa Image, który był testoway a tej samej baze 3 model 3D (rezultaty tych badań opsao w [6]). Jak sę okazało algorytm LFD jest o blsko 9 procet skuteczejszy w omawaym probleme. Uzyskay wyk ależy uzać za stosukowy dobry, wząwszy pod uwagę duże podobeństwo pomędzy sobą ektórych obektów ależących do różych klas, przy jedoczesej różorodośc obektów wewątrz daej klasy. Należy róweż podkreślć, że w eksperymetach pod uwagę brao tylko perwszy wskazay w wyku obekt bazowy. O wele lepsze rezultaty moża byłoby osągąć, gdyby wyberać węcej model, p. trzy lub pęć, co jest często spotykae w opsywaych w lteraturze zadaach deksowaa obektów przechowywaych w dużych bazach multmedalych. W dalszych badaach ad problemem plaowae jest zmodyfkowae deskryptora LFD. Ostatm etapem tego algorytmu jest bowem wyzaczae deskryptora dwuwymarowego dla uzyskaych pod odpowedm kątem (kamera umeszczoa była w werzchołkach dwuastoścau foremego) rzutów rozpatrywaego modelu trójwymarowego a płaszczyzę. Warto węc pokusć sę o sprawdzee w takm rozwązau ych, dotąd e wykorzystywaych w tak sposób, algorytmów reprezetacj kształtu D. Ich ajważejszą cechą powa być waratość względem obrotu, skalowaa przesuęca, ale także możlwość uwzględea wpływu a końcowy wyk procesu rzutowaa obektu trójwymarowego a płaszczyzę z różych położeń kamery. Warto przy tym zwększyć lczbę uzyskaych rzutów. Co prawda wydłuży to proces otrzymywaa reprezetacj obektu, ale zacze zwększy skuteczość deskryptora. Przy tym, w zadaach deksowaa opsy obektów zawartych w baze są oblczae jedorazowo, a początku. Stąd sam proces bu-

Badae skuteczośc deskryptora Lght Feld w probleme reprezetacj kształtów 9 dowaa deskryptora może być bardzej złożoy. Ważejsze jest atomast, by etap porówywaa obektu detyfkowaego z deskryptoram bazowym był szybko realzoway. Bblografa [] Bober M. MPEG-7 Vsual Shape Descrptors. IEEE Trasactos o Crcuts ad Systems for Vdeo Techology, vol., o. 6, 00 s. 76-79 [] Legyel E. Mathematcs for 3D Game Programmg ad Computer Graphcs. Charles Rver Meda; edto, 003 [3] Broste A. M., Broste M. M., Kmmel R. Expresso-Ivarat 3D Face Recogto. Lecture Notes Computer Scece, vol. 688, 003, s. 6-70 [4] Ikeuch K. Geeratg a terpretato tree from a CAD model for 3D-object recogto b-pckg tasks. Iteratoal Joural of Computer Vso, vol., o., 987, s. 45-65 [5] Novot M., Kle R. Shape Retreval Usg 3D Zerke Descrptors. Computer-Aded Desg, vol. 36, 004, s. 047-06 [6] Frejlchowsk D. Reprezetacja kształtu 3D oparta a deskryptorze EGI a potrzeby deksowaa. Metody Iformatyk Stosowaej, r 3/009, 009, s. 83-89 [7] Hor B. Exteded Gaussa Images. Proc. of the IEEE A.I. Memo o. 740, vol. 7 (), 984, s. 67 686 [8] Kag S., Ikeuch K. Determg 3-D Object Pose Usg the Complex Exteded Guassa Image. IEEE Coferece o Computer Vso ad Patter Recogto, CVPR, 99, s. 580 585 [9] Osada R., Fukhouser T., Chazelle B., Dobk D. Shape Dstrbutos. ACM Trasactos o Graphcs, vol., 00, s. 807-83 [0] Akerst M., Kastemüller G., Kregel H., Sedl T. 3D Shape Hstograms for Smlarty Search ad Classfcato Spatal Databases. Proc. of the 6th Iteratoal Symposum o Spatal Databases, 999, s. 07-6 [] Hlaga M., Shagawa Y., Kohmura T., Ku T. L. Topology Matchg for Fully Automatc Smlarty Estmato of 3D Shapes. Proc. of the 8th Aual Coferece o Computer Graphcs ad Iteractve Techques, 00, s. 03- [] Kazhda M., Chazelle B., Dobk D., Fukhouser T., Ruskewcz S. A Reflectve Symmetry Descrptor for 3D Models. Algorthmca, vol 38, 003, s. 0-5 [3] Kazhda M., Fukhouser T., Ruskewcz S., Rotato Ivarat Sphercal Harmoc Represetato of 3D Shape Descrptors. 003 Eurographcs/ACM SIGGRAPH Symposum o Geometry Processg, 003, s. 56-64 [4] Kazhda M., Fukhouser T., Ruskewcz S., Symmetry Descrptors ad 3D Shape Matchg. 004 Eurographcs/ACM SIGGRAPH Symposum o Geometry Processg, 004 s. 5-3 [5] Johso A. Surface Ladmark Selecto ad Matchg Natural Terra. Proc. of the IEEE Coferece o Computer Vso ad Patter Recogto, CVPR 000, s. 43-40 [6] Che D.-Y., Ouhyoug M., Ta X.-P., She Y.-T. O vsual smlarty based 3D model retreval, Computer Graphcs Forum, s. 3 3, 003 [7] Prceto Shape Bechmark. [ole] http://shape.cs.prceto.edu/bechmark/ [dostęp: 00] [8] Shlae P., M P., Kazhda M., M., Fukhouser T. A.. The Prceto Shape Bechmark. Proc. of the Shape Modelg Iteratoal, Geua, Włochy, 004, s. 45 56

Estymacja parametrów model regresyjych w obecośc eklasyczych założeń Jarosław Gramack, Artur Gramack Uwersytet Zeloogórsk, Istytut Iformatyk Elektrok Abstract: I the paper we cosder regresso models where some of the classcal assumptos are ot satsfed (are volated). We show how autocorrelato ad heteroscedastcty of radom errors fluece the fal regresso model. Moreover we show how to properly estmate parameters of regresso models whe classcal assumptos are ot satsfed. We also demostrate a fluece of ot cosderg of these features o the qualty of fal models. We perform some umercal smulatos usg both artfcal ad real data sets. Keywords: lear regresso, autocorrelato of radom errors, heteroscedastcty of radom errors, parameters estmato, statc detfcato. Wprowadzee W dzedze eksploaracj daych welokrote mamy do czyea z potrzebą opsywaa (modelowaa) zwązków łączących duże lośc daych, które traktujemy jako wyjścowe (zależe, objaśae), z dużym loścam daych, które traktujemy jako wejścowe (ezależe, objaśające). Jako przykład moża podać duże zbory daych rejestrowaych w specjalstyczych rozproszoych systemach sterowaa (DCS, ag. Dstrbuted Cotrol System), w które wyposażoe są praktycze wszystke wększe obekty przemysłowe. Bardzo wygodym prostym sposobem opsywaa wspomaych zależośc są modele regresyje, a w szczególośc ajprostsza ch wersja regresja lowa. W lteraturze często zwraca sę uwagę a fakt, że zastosowae modelu lowego do modelowaa obektów elowych może w efekce prowadzć do edokładych (a czasem wręcz błędych) wyków. Rzadzej zwraca sę atomast uwagę a e założea towarzyszące modelom regresyjym oraz ewetuale egatywe kosekwecje ch espełea. Struktura artykułu jest astępująca: w rozdzale przedstawoo założea klasyczego modelu regresyjego wskazao, które z ch będą dokładej aalzowae. W rozdzale 3 pokazao dwa przykładowe, sztucze wygeerowae zbory daych, dla których wspomae założea e są spełoe oraz pokazao ch wpływ a parametry wyestymowaych model. W rozdzale 4 przedstawoo wyk modelowaa tych zborów daych w sposób klasyczy oraz z uwzględeem tytułowych eklasyczych założeń. W rozdzale 5 przedstawoo dwa rzeczywste zbory daych oraz krótko opsao obekt przemysłowy, z którego pobrao drug z ch. W rozdzale 6 przedstawoo wyk W lteraturze agelskej często używa sę róweż zwrotów odpowedo: edogeous varables oraz exogeous varables. Metody Iformatyk Stosowaej, r /00 (3), s. 3-43 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

3 Jarosław Gramack, Artur Gramack wykoaych oblczeń dla daych z rozdzału 5. Rozdzał 7 zawera podsumowae oraz wskazae keruków dalszych badań.. Model regresyjy W klasyczym modelu regresj lowej zakłada sę stacjoarość waracj składków (zmeych) losowych oraz brak ch wzajemej autokorelacj. Aalza skutków aruszea tych dwóch założeń jest przedmotem rozważań w ejszej pracy. Formale ajprostszą postać modelu regresyjego wraz ze wspomaym założeam zapsuje sę w postac rówań () (3) y β x e () = β var( σ e ) = () cov( e, e ) = 0, j;, j = K, (3) j gdze β, β są ezaym parametram modelu, które ależy wyzaczyć (wyestymować), y jest zmeą objaśaą (zależą), x jest zmeą objaśającą (ezależą), e jest zmeą losową (składkem losowym, błędem losowym) o stałej waracj σ () oraz o eskorelowaych ze sobą składowych (3), ozacza lość próbek (obserwacj). Pozostałe założea klasyczego modelu regresj lowej: a) wartość oczekwaa błędu losowego E ( e) = 0, b) elosowość zmeej objaśającej x, c) rozkład ormaly błędu losowego e wokół średej e N(0, σ ), d) brak korelacj składka losowego ze zmeą objaśającą, e są w aszych rozważaach stote zakłada sę, że są spełoe. Zwykła metoda ajmejszych kwadratów (ag. Ordary Least Squares OLS) prowadz do wyboru takch estymatorów ˆ β ˆ, β parametrów β, β, dla których wartość wyrażea Q = = eˆ = = ( y yˆ ) = = ( y ˆ β ˆ β x ) (4) jest jak ajmejsza. Symbol ê ozacza tu estymatę rzeczywstych (ale emożlwych do zaobserwowaa!) błędów e zwaych resztam (resduam) ajmejszych kwadratów. W pracy skupmy sę a badau wartośc tzw. błędów stadardowych estymatorów w przypadku espełea założeń wymeoych a początku tego rozdzału. Pożej przedstawoo węc krótko odpowede formuły. Rzeczywsta waracja składków losowych jest z oczywstych powodów ezaa. Należy ją węc wyestymować a podstawe otrzymaych z modelu wartośc reszt eˆ ˆ σ =, (5) k gdze k jest loścą estymowaych parametrów (u as ). Wykazuje sę [5], że wartość k (zamast ) powoduje, że estymator (5) rzeczywstej wartośc waracj () posada ważą cechę: jest estymatorem eobcążoym, czyl E ( ˆ σ ) = σ. Mając day estymator (5) moża wyestymować waracje estymatorów parametrów: W pracy rozważa sę wyłącze modele z jedą zmeą objaśającą x oraz jedą zmeą objaśaą y. Upraszcza to rozważaa, e zmeając przy tym stoty zagadea.

Estymacja parametrów model regresyjych w obecośc eklasyczych założeń 33 x ˆ vâr ( β ˆ ) = σ, ( x ) x (6) ˆ ˆ σ vâr ( β ) =. ( x x) Perwastkując (6) otrzymujemy ostatecze wyrażea a błędy stadardowe estymatorów ˆ β ˆ, β. Przykładowo: se ˆ β ) = vâr ( ˆ ). (7) ( β Wartośc tych błędów są ezbęde przy określau użyteczośc modelu regresyjego w postac tzw. przedzałów ufośc dla ˆ β ˆ, β, które uzyskuje sę a drodze testowaa odpowedch hpotez statystyczych 3. W kolejych rozdzałach zajmemy sę aalzą kosekwecj espełea założea () oraz założea (3)... Nestacjoarość waracj błędów Z estacjoaroścą waracj błędów losowych (espełoe założee ()) spotykamy sę w przypadku aalzy daych zarówo przekrojowych (ag. Cross Sectoal Data) jak mających charakter szeregów czasowych (ag. Tme Seres) 4. Perwszy rodzaj daych ajczęścej używay jest przy opse różorodych zjawsk ekoomczych e będzemy sę takm daym zajmowal. Drug rodzaj daych często pochodz z obektów techczych opomarowaych weloma czujkam, które to dae są rejestrowae w specjalstyczych bazach daych. Z estacjoaroścą waracj błędów losowych spotkamy sę tam a przykład w przypadku aalzy obektu w różych jego staach pracy. Przykładowo praca obektu eergetyczego z wyższym parametram daego czyków termodyamczych powoduje, że zdecydowae trudej jest przewdzeć zachowae sę jego umowego wyjśca. Przekładając ostate stwerdzee a język statystyk powemy, że błąd losowy w modelu (tu) regresyjym rośe wraz ze wzrostem wartośc zmeej ezależej, czyl jest estacjoary. Iym przykładem może być zmea w czase zberaa daych dokładość użytych przyrządów pomarowych. Z aalzy przeprowadzoej w poprzedm rozdzale wyka, że w przypadku espełea założea () wyrażea (6) e będą poprawe, co w kosekwecj wpłye a (7), które z kole wpłyą a błęde oszacowae przedzałów ufośc dla estymatorów parametrów określoych wyrażeam ˆ β ± t se ( ˆ β ), ˆ β t se ( ˆ ), (8) c ± c β gdze t c jest wartoścą rozkładu t studeta t( α /, ). α ozacza tu założoą przez użytkowka wartość tzw. pozomu stotośc, który typowo przyjmuje sę a pozome 0.05. 3 Aby testowae hpotez było z teoretyczego puktu wdzea możlwe, koecze jest założee ormalośc rozkładu reszt. Założee to, a mocy cetralego twerdzea graczego, e jest jedak krytycze w przypadku dużej lośc daych pomarowych (duże wartośc ). 4 Nestacjoarość waracj błędów często w lteraturze azywaa jest też heteroskedastyczoścą (jako dosłowe tłumaczee agelskego słowa heteroscedastcty). Gdy waracja jest stała używa sę wówczas określea homoskedastyczość.

34 Jarosław Gramack, Artur Gramack Oblczee poprawych wartośc (6) (7) wymagać będze zastosowaa tzw. uogóloej metody ajmejszych kwadratów (ag. Geeralzed Least Squares, GLS), która powa uwzględać kokretą formę zaburzea założea (). W pracy przyjmemy, że zaburzee ma formę var( e ) = σ = c h( x ), gdze c jest ustaloą stałą, h jest pewą fukcją zmeej ezależej x, rosącą wraz z x... Autokorelacja błędów Podobe problemy apotkamy przy espełeu założea (3), czyl dla przypadku przy skorelowau ze sobą składków błędów losowych a w kosekwecj wartośc reszt modelu. Skorelowae take będze emal zawsze obece w daych o charakterze szeregów czasowych. Przykładowo zakłócee pracy obektu eergetyczego (ze statystyczego puktu wdzea opsuje to błąd losowy) w czase t będze odczuwae e tylko w czase jego zastea, ale róweż w kolejych okresach czasu t, t, t3 td. W pracy ograczymy sę do autokorelacj składka losowego rzędu perwszego AR() 5. W rówau () ależy węc doprecyzować postać składka błędu losowego e, czyl e = pe v < p <, (9) gdze p jest współczykem autokorelacj a v jest zakłóceem spełającym założea postac (), (3). W praktyce jest to składk pochodzący z rozkładu ormalego N (0, σ ). W tym przypadku róweż okazuje sę, że formuły (6) (7) e są poprawe (dają złude zbyt optymstycze wyk!), co w kosekwecj, tak jak poprzedo, prowadz do błędej ocey przedzałów ufośc estymatorów. Oblczee poprawych wartośc (6) (7) wymagać będze zastosowaa uogóloej metody ajmejszych kwadratów, która w tym przypadku korygować będze fakt występowaa autokorelacj składków błędów losowych. 3. Estymacja parametrów model zakłócoych Z uwag a ograczoą objętość pracy, szczegóły techcze kokretych metod typu GLS e będą pokazae. Moża je zaleźć p. w [3, 5]. Wygeerowae zostaą atomast sztucze zbory daych espełające założeń () (3) a astępe wykoaa zostae dla tych daych estymacja parametrycza modelu regresyjego raz klasyczą metodą OLS, a astępe wybraą metodą uogóloą GLS. 3.. Nestacjoarość waracj błędów Rozważoy zostae astępujący model: y = β β x var( e ) = σ = σ x = cx u, e x = K, (0) którego charakterystyczą cechą jest estacjoarość błędu losowego e. Waracja błędu jest proporcjoala do zmeej ezależej x. Zmea ezależa x tworzy rosący cąg wartośc 6, gdyż założoo, że E(u )>0. W modelu uzyskamy węc bardzo typowy wykres 5 W wększośc praktyczych przypadków wykorzystywaa dalej korekcja estymatora dla przypadku AR() jest wystarczająca. 6 Fakt mootoczego wzrostu x (w tym astępym przykładze) e ma tu zaczea merytoryczego. Ułatwa jedak zaobserwowae opsywaego zjawska.

Estymacja parametrów model regresyjych w obecośc eklasyczych założeń 35 estacjoarośc błędu losowego. Składk losowy u pochodz z rozkładu ormalego o średej rówej 0.85 oraz waracj rówej. Na podstawe specyfkacj (0) wygeerowao przykładowe wartośc e oraz x a astępe oblczoo y. Użyte dae: = 50, x0 =, c =, β = 0.5, β =. () Po zastosowau metody OLS zademostroway zostae egatywy wpływ estacjoarośc błędów losowych a wykowy model regresyjy. Zastosowae właścwej do daego problemu metody uogóloej GLS rozwąże problem epoprawego szacowaa błędów stadardowych estymatorów. 3.. Autokorelacja błędów Rozważoy zostae astępujący model: y e x = β β x e = pe = cx ν u, = K. () Składk v błędu losowego 7 speła założea (), (3). W modelu () zarówo e jak x podlegają autokorelacj. Poadto zakładamy, że zmea ezależa x rośe wraz z czasem. Składk losowe v u pochodzą z rozkładu ormalego o średej rówej odpowedo -0. 0.85 oraz waracj rówej. Na podstawe specyfkacj () wygeerowao przykładowe wartośc e oraz x a astępe oblczoo y. Użyte dae: = 50, x0 =, e0 = 5, p = 0.8, c =, β = 0.5, β =. (3) Po zastosowau metody OLS zademostroway zostae egatywy wpływ skorelowaa błędów losowych a wykowy model regresyjy. Kotrprzykładem do () będze aalogczy zbór daych, w którym błąd e e będze podlegał autokorelacj. Dla zachowaa skal będze mał o poadto dokłade taką samą warację. Zastosowae właścwej do daego problemu metody uogóloej GLS rozwąże problem epoprawego szacowaa błędów stadardowych estymatorów. 4. Wyk symulacj komputerowych dla sztucze wygeerowaych daych 4.. Nestacjoarość waracj błędów Na rysuku pokazao przebeg zmeośc błędu losowego użytego w przykładze (0). Wdać a m wyraźe wzrost jego wartośc w fukcj kolejych próbek. W tabel zameszczoo wyk regresj z użycem metody OLS, która w żade sposób e uwzględa faktu aruszea założea (). Pogruboą czcoką zazaczoo wartośc wyestymowaych parametrów (Coeff.), ch błędy stadardowe (S.E.) oraz 95% przedzały ufośc dla parametrów. W tabel zameszczoo wyk regresj z użycem metody GLS uwzględającej estacjoarość błędów. Użyto tu tzw. estymatora ważoego ajmejszych kwadratów (ag. Weghted Least Squares, WLS). Odpowada to wykoau zwykłej regresj OLS dla odpowedo przetrasformowaych zmeych. Trasformacja ta [3] ma a celu usuęce 7 W przypadku błędu losowego o charakterze AR(), w lteraturze przyjęło sę rozróżać dwa jego elemety. Składk e to błąd (ag. error term), składk v to zakłócee (ag. dsturbace) lub zmea losowa (ag. radom varable).

36 Jarosław Gramack, Artur Gramack z modelu estacjoarośc składka błędu losowego. Za wagę przyjęto wartość Odpowada oa założoej w (0) postac błędu 8. / x. 60 Nestacjoarość błędu losowego 40 0 Błąd e() 0-0 -40-60 0 5 0 5 0 5 30 35 40 45 50 Rysuek. Wykres zmeośc błędów losowych modelu Tabela. Regresja OLS dla daych z błędam estacjoarym Coeff. S.E. t-rato p-value ------------------------------------------ cost 0.755 5.78 0.43 0.887 x.04 0. 9.933 3.5e-03 95% CONFIDENCE INTERVAL cost 0.755-9.857.367 x.04.679.530 Tabela. Regresja GLS dla daych z błędam estacjoarym Coeff. S.E. t-rato p-value ------------------------------------------ cost 0.770.967 0.394 0.697 x.04 0.40 4.96.06e-09 95% CONFIDENCE INTERVAL cost 0.770-3.84 4.74 x.04.8.385 Porówując oba wyk wdać, że estymator OLS jest co prawda eobcążoy, gdyż wartośc parametrów są (prawe) take same jak te uzyskae z użycem estymatora GLS. Wartośc błędów stadardowych stote jedak różą sę. Rzutuje to dalej a wylczoe wartośc przedzałów ufośc. W praktyce poprawe wyzaczee tych przedzałów jest bardzo waże, gdyż umożlwa rzeczywstą oceę jakośc uzyskaego modelu. 4.. Autokorelacja błędów Na rysuku a pokazao przebeg prawdzwej l regresj (zdefowaej przez wartośc β = 0.5, β =, patrz rozdzał 3.) oraz l regresj otrzymaej z wylczoego modelu. Na rysuku b pokazao rzeczywstą postać składka losowego e oraz jego przebeg w postac otrzymaych reszt z modelu (resduum). Różce w przebegach (otrzymae resdua 8 W welu praktyczych zastosowaach model błędu, w którym jego rozrzut (waracja) rośe wraz z merzoa wartoścą, będze właścwy.

Estymacja parametrów model regresyjych w obecośc eklasyczych założeń 37 e oddają rzeczywstego charakteru błędów) są powodem stosukowo dużej rozbeżośc obu l regresj. W przypadku braku autokorelacj składka losowego (rysuek 3a), różce pomędzy rzeczywstym błędem a resztam z modelu są bardzo ewelke 9. Skutkuje to dużo lepszą zgodoścą modelu (rysuek 3b). W tabelach 3 oraz 4, aalogcze jak w perwszym przykładze, pokazao różce pomędzy wartoścam błędów stadardowych otrzymaych metodą OLS (ewłaścwą) oraz GLS (uwzględającą autokorelacje). Iaczej ż w perwszym przykładze poprawe wartośc są tu wększe. Stosując węc ewłaścwą do problemu metodę, uzyskujemy wyk zbyt optymstycze! 80 70 60 50 Wartosc zmerzoe La regresj - estmacja z modelu La regresj - wartośc rzeczywste y(x) 40 30 0 0 0 0 5 0 5 0 5 30 35 40 45 x 5 0 e() -5-0 Błąd rzeczywsty ( z autokorelacją) Reszty z modelu -5 0 5 0 5 0 5 30 35 40 45 50 Rysuek. Regresja dla przypadku błędów skorelowaych. (a) le regresj, (b) błędy rzeczywste zaobserwowae z modelu 00 80 Wartosc zmerzoe La regresj - estmacja z modelu La regresj - wartośc rzeczywste 60 y(x) 40 0 0 0 5 0 5 0 5 30 35 40 45 x 5 0 5 e() 0-5 -0 Błąd rzeczywsty ( bez autokorelacj) Reszty z modelu -5 0 5 0 5 0 5 30 35 40 45 50 Rysuek 3. Regresja dla przypadku błędów eskorelowaych. (a) le regresj, (b) błędy rzeczywste zaobserwowae z modelu 9 Podkreślmy róweż, że użyte w przykładach waracje błędów z bez autokorelacj są take same (mają wartość ok. 30).

38 Jarosław Gramack, Artur Gramack Tabela 3. Regresja OLS dla daych z błędam skorelowaym Coeff. S.E. t-rato p-value ------------------------------------------ cost 7.098 0.453 5.66.70e-00 x.589 0.08 87.3.49e-054 Durb-Watso 0.4 95% CONFIDENCE INTERVAL cost 7.098 6.86 8.009 x.588.55.65 Tabela 4. Regresja GLS dla daych z błędam skorelowaym Coeff. S.E. t-rato p-value ------------------------------------------ cost 6.085.40 4.909.0e-05 x.630 0.047 34.69.0e-035 Durb-Watso.888 95% CONFIDENCE INTERVAL cost 6.085 3.59 8.577 x.630.536.74 5. Ops rzeczywstych zborów daych użytych w przykładach Przykłady pokazae w poprzedm rozdzale mały a celu demostrację stoty omawaych zagadeń. Były oe sztucze wygeerowae w tak sposób, aby pojawły sę w ch oczekwae w daym momece cechy. Obece wykoamy aalzy statystycze wykorzystując dwa rzeczywstych zborów daych. Pożej podao ch krótką charakterystykę. 5.. Zbór daych food Perwszy zbór podaje zależość pomędzy osągaym dochodem (dla wybraych losowo 3 osobowych rodz) a wydatkam a kosumpcję (zbór food omaway w []). Zbór ma charakter daych paelowych (przekrojowych), gdze poszczególe obserwacje moża traktować jako ezależe od sebe. Zmeą ezależą (dochód) jest welkość osągaego dochodu a zmeą zależą (wydatk) wydatk a kosumpcję. Na rysuku 4a pokazao wykres rozrzutu daych wraz z wyzaczoą lą regresj lowej a a rysuku 4b wykres uzyskaych reszt. Oba wykresy sugerują występowae wyraźej estacjoarośc waracj błędów. Potwerdzają to róweż odpowede testy aaltycze (Breuscha Pagaa oraz Whte a). 600 550 Y = 83,4 0,X 50 00 Y, wydatk a żywość w dolarach 500 450 400 350 300 50 00 reszty 50 00 50 0-50 -00-50 50-00 00 5 0 5 0 5 30 X, dochód tygodowy w setkach dolarów -50 0 5 0 5 0 5 30 35 40 dochód tygodowy w setkach dolarów Rysuek 4. Wykres rozrzutu daych (a) oraz wykres reszt modelu (b) dla zboru daych food

Estymacja parametrów model regresyjych w obecośc eklasyczych założeń 39 Nestacjoarość tą jest dość prosto wytłumaczyć. Wydaje sę oczywste, że rodzy osągające ewelk dochód będą raczej starały sę wydawać a kosumpcję tylko tyle, le jest absolute ezbęde raczej będą abywały podobe produkty o względe skch ceach. Moża węc uzać, że ch sposób charakter żywea będze dość podoby. Jeżel chodz atomast o rodzy z wysokm dochodam, to ch wydatk a kosumpcję z pewoścą staową stosukowo ewelką cześć ch dochodów. Rodzy take stać a róże estadardowe często droge eksperymety kulare, odwedzae restauracj zamast samodzelego przygotowywaa posłków tp. Oczywśce take zachowaa e muszą być stadardem prawdopodobe często zdarza sę, że duże dochody e muszą ść w parze z dużym wydatkam a kosumpcję. Mamy węc w efekce dużo wększy ch rozrzut, co uwdacza właśe rysuek 4. 5.. Zbór daych ECZG Drug zbór zawera dae rzeczywstego obektu przemysłowego, jakm jest blok gazowo parowego (BGP) Elektrocepłowa Zeloa Góra S.A (ECZG). Dae pozyskao w czase 3 mesęczego stażu aukowo dydaktyczego, jak odbył perwszy współautor pracy w ramach ujego projektu Zróbmy coś razem [7]. Zbór te ma charakter szeregów czasowych. Zmeą ezależą (wlg) jest wlgotość powetrza w procetach, atomast zmeą zależą jest lość spal opuszczających turbę gazową (spaly, patrz astępy podrozdzał). Wybór zmeych do aalzy e jest przypadkowy. W czase rozmów z pracowkam obsług ECZG ustaloo, że wlgotość powetrza ma bardzo duży wpływ a dzałae turby gazowej. Stwerdzee to staje sę bardzej oczywste, gdy uśwadommy sobe, że do prawdłowego spalaa gazu z turbe gazowej potrzebe są welke lośc powetrza jego wlgotość e może pozostawać bez zaczea (wszak zawarta w powetrzu woda, docerając do turby gazowej, mus zostać jakoś pochłoęta w procese spalaa). Mej oczywste dla osób eobezaych z tajkam dzałaa turb gazowych jest to, że m wlgotość docerającego do ej powetrza jest wększa, tym proces spalaa gazu jest lepszy (wydajejszy). Dae próbkowae są co mutę. Aalze poddao dae z da 0 0 008 od godzy 7:00 do godzy 4:00, co daje w sume 00 przypadków. Na rysuku 5a pokazao wykres rozrzutu daych wraz z wyzaczoą lą regresj lowej a a rysuku 5b wykres uzyskaych reszt. Oba wykresy sugerują występowae pewej estacjoarośc waracj błędów. Potwerdzają to róweż odpowede testy aaltycze (Breuscha Pagaa oraz Whte a). Poeważ dae mają charakter szeregów czasowych (a węc aczej ż w przypadku zboru daych food), a pewo mamy tam do czyea róweż z autokorelacją błędów. 55 50 Y =,08e003 0,569X 5 0 Y, lość spal opuszczających kom 45 40 35 30 5 0 reszty 5 0 5 0-5 5-0 0 70 75 80 85 90 95 00 X, wlgotość -5 400 600 800 000 00 400 umery próbek Rysuek 5. Wykres rozrzutu daych (a) oraz wykres reszt modelu (b) dla zboru daych ECZG

40 Jarosław Gramack, Artur Gramack Podkreślmy róweż dwe waże sprawy. Po perwsze w daych o charakterze szeregów czasowych główym problemem jest autokorelacja błędów, atomast estacjoarość waracj składowych błędów ma drugorzęde zaczee. Po druge oba zaburzea e mogą być rozpatrywae ezależe. Iym słowy estymując parametry modelu oraz błędy ch estymacj ależy stosować metody, które są zaprojektowae tak, aby uwzględały jedocześe wpływ obu zaburzeń. Należy róweż w tym mejscu wyraźe zazaczyć, że BGP jest bardzo złożoym obektem techczym próba tworzea prostego modelu regresj, z jedą tylko zmeą ezależą, jest dość ryzykowa. Z pewoścą a pozom lośc spal opuszczających turbę gazową ma wpływ wele ych czyków, a e tylko wlgotość. Obekt ECZG jest poadto bardzo bogato wyposażoy w elemety automatyk przemysłowej dbające o właścwe sterowae. Nemej jedak awet tak prosty model jak zbudowao może meć stote walory pozawcze. 5.3. Elektrocepłowa Zeloa Góra S.A Pożej podajemy w welkm skróce ajważejsze formacje a temat obektu przemysłowego, z którego pozyskao dae do aalz. Elektrocepłowa w Zeloej Górze [7] powstała w roku 974. Aż do roku 004 jedyym wykorzystywaym rodzajem palwa był węgel kamey. W roku 004 wybudowao owoczesy blok gazowo parowy, który opalay jest krajowym gazem zemym (z poblskej kopal w Koścae). Od tego mometu blok węglowy stał sę blokem pomocczym rezerwowym zarazem, gdyż jest uruchamay tylko w krótkch okresach remotowych bloku gazowo parowego oraz w okresach zmowych (przy skch temperaturach), aby wspomagać blok gazowo parowy w produkcj główe eerg ceplej. BGP ma dość typową kostrukcję wytwarza eergę w tzw. skojarzeu [, 4]. Ozacza to, że produkowaa jest zarówo eerga cepla jak elektrycza. Przy czym m węcej produkowaej jest tej perwszej, tym mej tej drugej odwrote. W ECZG zamotowao dwe turby: gazową oraz parową. Schemat obektu, w dużym uproszczeu, pokazao a rysuku 6. Rysuek 6. Uproszczoy schemat elektrocepłow w Zeloej Górze Turba gazowa TG opalaa jest gazem zemym. Gaz spalay jest w komorze spalaa KS, w obecośc powetrza sprężoego w sprężarce SP. Powstałe w KS spaly kerowae są a łopatk turby, która sprzężoa jest a jedym wale z geeratorem (G) produkującym eergę elektryczą. Gazy spalowe po opuszczeu TG mają jedak cągle ogromą eergę temperaturę, która może ( powa) być wykorzystaa. Dlatego też spaly kerowae są do tzw. kotła odzyskcowego KO (kocoł dwucśeowy), w którym, wykorzystując eergę spal, wytwarzaa jest para woda o wysokch parametrach temperatury

Estymacja parametrów model regresyjych w obecośc eklasyczych założeń 4 cśee. Na końcu spaly kerowae są do koma K. Wytworzoa w KO para woda jest kerowaa do turby parowej TP a jej łopatk. Para, rozprężając sę w TP, wprawa ją w ruch apędza sprzężoy z ą a jedym wale geerator G produkujący eergę elektryczą. Para po wykoau pracy w TP kerowaa jest do skraplacza SK, gdze mus zostać skroploa w postac tzw. kodesatu trafa z powrotem do kotła odzyskcowego KO. Część pary wodej poberaa jest z upustu do wymeków cepła WC. W wymekach cepło pary wodej wykorzystywae jest do podgrzaa wody secowej, która kerowaa jest astępe do odborców CO wykorzystujących ją do celów grzewczych. BGP oddzałuje oczywśce egatywe a środowsko, główe ze względu a emsję tleków azotu NOx. Jedyym ch źródłem jest proces spalaa gazu w TG. Od stroy chemczej jest to proces bardzo złożoy e do końca jeszcze pozay. Na welkość emsj ma wpływ wele parametrów, takch jak lość spalaego palwa, jego jakość, temperatura spalaa, waruk otoczea e. Wele z ch jest rejestrowaych w systeme DCS (zastaloway w ECZG cetraly system DCS rejestruje w sume około 000 różych parametrów). W bloku TG zastosowao tzw. suchy 0 układ skej emsj NOx. Jest to bardzo owoczesy układ spalaa palwa gazowego. Efektem jego użyca jest sk pozom emsj tleków azotu w przypadku bezawaryjej pracy, dużo pożej maksymalego dopuszczalego przepsam pozomu. 6. Wyk oblczeń dla rzeczywstych zborów daych 6.. Zbór daych food W tabel 5 zebrao wyk estymacj modelu regresj lowej dla zboru daych food. Pokazao wartośc wyestymowaych parametrów modelu oraz ch błędy stadardowe. Wdać wyraźe, że ajwększe błędy stadardowe otrzymujemy dla klasyczej metody OLS (metoda r ). Jak wemy z poprzedch rozdzałów błędy te są oszacowae eprawdłowo (są zbyt duże). Po zastosowau odporej (ag. robust) metody Whte a szacowaa błędów stadardowych (HC, ag. heteroscedastcty cosstet stadard error []) błędy te wyraźe sę zmejszyły (metoda r ). Koleje zmejszee szacuku błędów stadardowych uzyskao po zastosowau metody WLS (ależącej do bardzej ogólej grupy metod GLS). W perwszej wersj użyto wag o wartośc / x (metoda r 3) a w drugej wersj wag o wartośc / x (metoda r 4). Okazuje sę, że trasformacja modelu z drugą wartoścą wag daje mejsze błędy stadardowe. Przyjęte wag są rówozacze z przyjęcem określoej postac zmeośc waracj. Gdy trudo jest jedozacze podać tą zależość, ależy użyć metody, która potraf ją wyestymować. Jako ostatą użyto węc tego rodzaju metodę, która jest zamplemetowaa w programe Gretl [8] os tam azwą Korekta heteroskedastyczośc (metoda r 5). Okazało sę, że metoda ta daje ajmejsze oszacowae błędów stadardowych. Zauważmy róweż, że w zależośc od zastosowaej metody trasformacj modelu, otrzymujemy eco różące sę od sebe parametry wykowych model regresyjych. Są to jedak różce bardzo ewelke, ezmeające ogólego charakteru model. Poadto w każdym przypadku tzw. wartość p ma wartość emal zerową, czyl e ma podstaw do odrzucea hpotezy zerowej o estotośc wyzaczoych parametrów regresj. 0 Ia często używaa metoda to metoda mokra, polegająca a wtrysku pary do komory spalaa lub wody do sprężaego lub sprężoego powetrza. Jest oa jedak droga w eksploatacj (duże zużyce wody o wysokch parametrach).

4 Jarosław Gramack, Artur Gramack Tabela 5. Wyk symulacj komputerowych dla zboru daych food Lp. Metoda Współczyk regresj OLS cost 83,4 dochód 0, OLS robust S.E. cost 83,4 warat HC dochód 0, 3 WLS, waga cost 8,00 / dochód 0,33 x 4 WLS, waga / 6.. Zbór daych ECZG x 5 Estymacja fukcj waracj cost 78,68 dochód 0,45 cost 74,75 dochód 0,77 Błędy stadardowe 43,4,09 7,46,8 3,8,7 3,79,39 0,6,00 Tabela 6. Wyk symulacj komputerowych dla zboru daych ECZG Lp. Metoda Współczyk regresj OLS cost 078,49 wlg 0,6 OLS robust S.E. cost 078,49 warat HC wlg 0,6 3 WLS, waga / x cost 078,75 wlg 0,6 4 WLS, waga cost 078,98 / wlg 0,6 x 5 Estymacja cost 079,5 fukcj waracj wlg 0,60 6 OLS robust S.E. cost 078,49 warat HAC wlg 0,6 7 Cochrae Orcutt cost 077,6 wlg 0,63 Błędy stadardowe,46 0,08,53 0,08,47 0,08,49 0,08,5 0,09 3,65 0,043 3,7 0,038 W tabel 6 zebrao wyk estymacj modelu regresj lowej dla zboru daych ECZG. Perwsze pęć werszy w tabel pokazuje wyk aalogcze do tych, uzyskaych w tabel 5. Zwróćmy jedak uwagę a to, że tym razem e tylko metoda daje błęde oszacowaa błędów stadardowych. Błęde są róweż oszacowaa, które dają metody 5. Musmy bowem pamętać, że (aczej ż w przypadku zboru daych food), mamy tym razem do czyea z daym o charakterze szeregów czasowych. Użyce węc metod, które tego faktu e uwzględają, prowadz do fałszywych wosków. Okazuje sę, że uzyskae błędy stadardowe są bardzo moco edoszacowae. Dopero zastosowae właścwej metody szacowaa błędów stadardowych (HAC, ag. heteroscedastcty ad autocorrelato cosstet stadard terror []) pozwala otrzymać prawdłowe wyk (metoda r 6). Jak wdać szacuk błędów stadardowych zacze różą sę od tych, uzyskaych metodam 5. Jako ostatą zastosowao teracyją metodę Cochrae a Orcutt a ależącą do grupy GLS (metoda r 7). Oszacowae błędy stadardowe są a zblżoym pozome jak dla metody r 6. Podobe jak w przypadku zboru daych food, w zależośc od zastosowaej metody

Estymacja parametrów model regresyjych w obecośc eklasyczych założeń 43 trasformacj modelu, otrzymujemy eco różące sę od sebe wartośc parametrów wykowych model regresyjych. Są to jedak różce bardzo ewelke, ezmeające ogólego charakteru model. Poadto w każdym przypadku tzw. wartość p ma wartość emal zerową, czyl e ma podstaw do odrzucea hpotezy zerowej o estotośc parametrów regresj. Wdać węc, że w przypadku zboru daych ECZG to autokorelacja jest czykem domującym. Nestacjoarość waracj błędów, jakkolwek łatwo dostrzegala, e jest a tyle sla, aby stote zekształcć wyk. 7. Podsumowae W przypadku występowaa estacjoarośc składków błędów losowych zastosowae ewłaścwej metody estymacj parametrów modelu regresj prowadz do zawyżea błędów stadardowych estymatorów. W przypadku występowaa autokorelacj błędów losowych, zastosowae ewłaścwej metody prowadz do edoszacowaa wartośc tych błędów. Poadto otrzymywae reszty e oddają charakteru rzeczywstego zakłócea. W obu przypadkach skutkuje to błędym oszacowaam błędów stadardowych estymatorów a w kosekwecj też przedzałów ufośc parametrów rówań regresj. W praktyce często trudo jest precyzyje określć stopeń oraz charakter autokorelacj błędów oraz estacjoarośc składków błędów losowych. Moża to jedak zrobć z pewym przyblżeem, co tak w efekce pozwala dokoywać bardzej warygodych oszacowań. W pracy zakłada sę, że posadae dae opsują obekt statyczy (lub obekt dyamczy, ale w ustaloym pukce pracy). Podobe zjawska mogą róweż wystąpć w obektach dyamczych, w których dyamka jest w odpowed sposób modelowaa (w modelach takch obektów występować będą odpowedo opóźoe zmee objaśae /lub objaśające). Zagadee poprawej estymacj parametrów takch model oraz ch błędów stadardowych może być teresującym problemem badawczym. Bblografa [] Hll R. C., Grffths W. E., Lm G. C.: Prcples of Ecoometrcs, 3rd Edto. Joh Wley & Sos, 008. [] Laudy D., Pawlk M., Strzelczyk F.: Elektrowe. WNT Warszawa 006. [3] Sheather S. J.: A Moder Approach to Regresso wth R. Sprger, 009. [4] Szargut J.: Termodyamka Techcza (wydae czwarte). PWN Warszawa 980. [5] Wesberg S.: Appled Lear Regresso. Wley Iterscece, 005. [6] Woacott R. Woacott T.: Ecoometrcs. Joh Wley & Sos, 989. [7] http://www.ec.zgora.pl/ [8] http://gretl.sourceforge.et/ [9] http://www.zcr.uz.zgora.pl/?acto=staze

Gaps desg ad tests of depedable embedded systems Iwoa Grobela, Mchał Grobely Uwersytet Zeloogórsk, Wydzał Elektrotechk, Iformatyk Telekomukacj Abstract: The paper focuses o gaps desg ad test techology for depedable embedded systems. Possble gaps desg may fluece system behavor ad as the result fal product may ot fulfll all requremets or some of desred propertes. Test phase s also mportat as t may dcate eve subtle errors whch occurred prevous phases. The artcle presets possble solutos to mprove the desg ad test techology. Model checkg techque ca be used for formal verfcato of specfcato desg phase. Testg phase ca volve depedet tester teams. Keywords: desg, tests, depedable embedded systems, model checkg, temporal logc. Itroducto Depedable embedded systems [] are curretly used eve the today-lfe domas, lke cars, plaes, tras, etc. The desred propertes of such systems are hgh relablty, avalablty, mataablty, safety ad securty. Depedg o partcular usage scearo some of the propertes may have more mportat meag tha the others, but some degree all of these metoed propertes should be esured. Depedable embedded systems are also tesve researched by scetfc commutes, lke by The Germa Idoesa Tsuam Early Warg System [8]. The project has to maage several subsystems ad has therefore hgh requremets regardg the relablty. The developmet of a system volves couple steps whch must occur oe after the other (Fg. ). The process starts wth desg phase ad eds wth tests. Both phases are very mportat. Fgure. Depedable embedded system developmet The desg phase should ed wth a fully complete ad correct desg. Possble errors ths phase may fluece ocomg phases ad the whole veture ad geerate eormous costs. The later the errors wll be detected, the faster the costs of reparg them rse. Addtoal fact whch has to be take to accout especally by depedable embedded systems s that they are supposed to be fully relable, avalable, safe ad secure all the tme. Eve a ty error desg phase may chage the total system behavor ad may have tragc effects,.e. trasport doma (lke a plae crash) t may cause a catastrophe ad kll Metody Iformatyk Stosowaej, r /00 (3), s. 45-5 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

46 Iwoa Grobela, Mchał Grobely hudreds of ocet people. Therefore early dscovery of errors may save tme, moey ad eve people lves. Test phase s also mportat as t may detect some errors whch occurred earler phases. Tests are qute expesve for compaes, but o oe should eve thk about ot performg them. The fast techology progress eforces reducto of tme ad resources spet o tests. Eve though the mmum scearo the most mportat cases should be covered. The most frequetly occurrg gaps desg ad test phases developmet of depedable embedded systems are preseted the ext sectos. Addtoally there are proposed solutos to solve some of the problems, takg cotrol over oe of the possble gaps desg ad test phase.. Gaps desg Possble gaps desg phase whch may have a fluece o the depedable embedded system behavor are coected wth huma begs. Therefore ths phase may be mproved by chagg orgazatoal aspects of a compay. Whe startg wth a ew project the requremets have to be fully formulated. Ufortuately t may happe that the requremets wll ot be complete. Ths may cause that the system wll operate correctly due to the requremets but t wll ot be fully relable ad avalable, because some of the mportat requremets may have bee omtted. Aother problem coected wth the requremets s the stuato whe formal specfed requremets are ambguous. Depedg o the selecto of system desgers, they may be correctly or correctly terpreted. The secod case ca have a eormous fluece o depedable embedded system behavor. The requremets lst should therefore be complete ad clude both fuctoal ad o-fuctoal requremets (addressg the qualty, performace, securty, etc.) ad be easy to uderstad for all members of a team. Smlar problems may occur by embedded system specfcato. It may happe that t wll be complete. It may also happe that t wll be correct. Followg a correct specfcato, there wll be a correct mplemetato ad fally there may be a correct product! Ad ether the whole developmet process wll start aga from the begg (whch causes redudat costs) or the fal product wll be released what may have catastrophc effects especally by depedable embedded systems. Aother problem s coected wth the documetato. It s well kow that a project should be fully documeted. Lack of documetato may cause the oversee of some orgazatoal ad techcal aspects or that the developmet process wll last for a log perod of tme due to these lacks. But eve f the documetato s prepared carefully by all team members, t should be esured that there s a correct ad complete flow of documetato. Documetato should be correctly dstrbuted the team,.e. f a complete documetato s kept by ts ower or s delvered ot to the terested team members but oly to some part of the team whch does ot eed t, s just useless... Possble soluto: model checkg for formal verfcato of specfcato Errors the specfcato ca be detected usg formal verfcato methods [] [5]. They ca be used whe the real system does ot physcally exst yet, prevetg from possble errors o a early stage of system developmet. Oe of them s Model Checkg [3] whch wll be further preseted, ot forgettg about Theorem Provg [5] as aother formal verfcato method wth all ts advatages ad dsadvatages. Model checkg allows fully

Gaps desg ad tests of depedable embedded systems 47 automated system verfcato ad error detecto behavoral system specfcato by computer deducto tools (model checkers). The techque ca be used to verfy the whole system or just some part of t (partal verfcato). It s especally valuable by large systems where the desg process lasts for a log perod of tme ad s a complex ad dffcult task. The the verfcato ca be performed step-by-step durg the desg phase, each tme cosderg oly a subset of requremets. It s mportat to remember that model checkg ca ot prove that the system model s completely correct. It ca just prove that the model does or does ot satsfy specfed requremets. It verfes whether the requremets are satsfed defed d system model. User has to formally specfy requremets for the embedded system. It s also eeded to model the system usg descrpto laguage of a chose model checker. Computer deducto tool automatcally verfes the system ad gves a aswer whether the model satsfes the specfcato or ot (model checkg techque s schematcally preseted Fg. ). If ot some errors must have bee detected ad approprate couterexamples are geerated. model descrpto requremets lst aswer: does the model satsfy the specfcato? Fgure. Model checkg techque Dscussed formal verfcato method ca dcate some errors ether requremets specfcato or model descrpto. I the frst stuato some requremets may have bee correctly formulated. I the secod stuato the system desg tself may be correct. System desger has to carefully aalyze receved couterexamples, fd the source of a error ad solve the problem ether by chagg system model or the requremets lst. Wthout huma teracto the receved results do ot localze the problem, they just meto that there s a problem. Requred propertes of depedable embedded system are defed usg temporal logc [4] formulas. They are coded usg the specfcato laguage of a chose model checker. User has to specfy as may desred propertes as possble. Ths s due to the fact that oly the defed propertes wll be checked... A lttle backgroud o temporal logc Temporal logc [4] [6] [7] derves from modal logc ad was troduced to computg scece by Amr Puell 977 whe he proposed to use temporal logc cocurret ad re-actve systems. Nowadays t s used as well program specfcato as ts verfcato, sythess ad eve logcal programmg. Usg temporal logc ad ts operators t s possble to formally specfy embedded system fuctoalty. Lear Temporal Logc (LTL) s a classcal temporal logc ad descrbes relatos the system specfyg state sequeces. I some states a gve formula ca be satsfed, whle t ca ot be satsfed the others. Basc temporal logc operators wth ther meags ad examples are lsted Table.

48 Iwoa Grobela, Mchał Grobely Table. Basc temporal logc operators Sg Meag Example Explaato always p p s true all states sometmes p p s true some states o ext o p p s true the ext state Temporal logc wth tme braches s Computato Tree Logc (CTL). Tme s here preseted as a tree brachg out to the future wth preset momet as the root. Basc temporal coectors are preseted Table. Table. Temporal coectors Quatfer Explaato Path quatfers E for some path A for all paths State quatfers F for some state G for all states Path quatfers are characterstc for brachg tme temporal logc ad are meat for paths begg from a gve state. State quatfers are for states that path. Combg path ad state quatfers t s possble to descrbe complex depedeces, lke for example: AFp - I every path there s some state where formula p s true EFp - I some path there s some state where formula p s true AGp - I every path every state formula p s true EGp - I some path every state formula p s true Model checkg techque uses temporal logc ad allows to formally verfy specfcatos of depedable embedded systems. 3. Gaps tests Test phase should fd all exstg errors so that the fal product s as much relable as possble. However t s a dffcult task. Embedded systems requre huge amout of rgorous tests whch esure approprate qualty [9]. The ma problem s the fact that exhaustg testg s ofte mpossble. There are whte-box (structural), black-box (fuctoal), module, ad tegrato tests ecessary to prove that desged product fulflls prevously assumed requremets. It may ot be possble to check all cofguratos of put data wth all cofguratos of the parameters of the surroudg evromet. Ths dcates possble gaps the test phase whch may cause that some errors whch could be hadled wll ot be foud. Oe of them s the stuato where tests do ot cover all mportat felds ad techcal aspects. Ofte tester cocetrates o partcular feld of depedable embedded system usage ad does ot foresee that somethg other ca happe. Tester teams should clude ovatve ad creatve testers whch foresee eve the so-called ot-possble-to-happestuatos. Ths s especally mportat by embedded systems whch have to be fully relable [9]. Test qualty depeds though o the approprate selecto of test cases. I may dustral projects prototypes are tested ether by desgers or egeers strogly coected wth partcular project. Frequet reaso s cost mmzato ad short

Gaps desg ad tests of depedable embedded systems 49 developmet tme. Nowadays the very fast evoluto of techology eforces short term of products desg ad developmet. Tme s ofte to short to fulfll all test cases. To reduce the test tme compaes may assg desgers to testg phase. It has the ecoomcal advatages that they already kow the product ad ts desred fuctoalty, so that they do ot waste tme o gettg to kow the documetato. However may stuatos desgers are cofdet or just assume that somethg operates correctly ad do ot cocetrate o obvous system propertes. Ufortuately, eve obvous propertes there may be a ty problem whch would be easy foud durg a smple test, but someoe has to perform t. Not oly maual fuctoal testg s take to accout. Automated testg plays a strog role latest projects. Cosdered are here software as well as hardware tests. I test evromet a approprate preparato of such procedure s eve more mportat. Let us assume that there s a error test procedure, whch omts oe of key system propertes / features. Such test ca false esure the system qualty whch ca have tragc results. Therefore the desg of test evromet ad automated test procedures must be prepared eve more carefully tha tested system. That meas that sometmes test procedure preparato ca last loger tha the product desg phase. Moreover, the cost of tests ca hghly crease. Here appears a possble huge gap. Curretly cost reductos are popular, ad followg further wth such reasog, the reducto of test costs s cosdered. Therefore owadays there s a tred turg ed-user to a tester whch eds wth purchasg partly tested products to the market. 3.. Possble soluto: Idepedet tester teams Depedable embedded systems should be carefully tested so that as may errors as possble are foud. The dreamed test phase dcates all errors, but realty some of them may be easly oversee. Testg phase should volve addtoally depedet tester teams (Fg. 3) oe team wth egeers ad the secod wth future ordary users. Egeers coected wth the project Embedded system Egeers ot coected wth the project Fgure 3. Proposed tester teams Ordary users Egeers uderstad how everythg operates ad may cocetrate o more techcal aspects, lke.e. represetato of data or mperfect radomess. It s mportat that o oe of tester team took part product desg or developmet. The they have fresh look ad may sped much eergy o testg.

50 Iwoa Grobela, Mchał Grobely Product prototypes should also be tested by ordary users who the product s addressed to. They cocetrate o ts fuctoalty ad test both the desred propertes ad the stuatos ofte ot take to cosderato by egeers. They may.e. push multple tmes the same butto or the same combato of buttos to force some reacto of depedable embedded system. Sometmes t s based o lack of experece usg the devce. Such behavor ca help dscoverg bugs of the devce caused by ot foresee user behavor or vald data put. Desger who s testg self-made devce ofte ca ot kow all possble behavor of a ot expereced smple ed-user. Therefore some part of test has to be realzed wth testers outsde of a project. 4. Cocluso As shortly preseted the prevous sectos the desg ad test techology of depedable embedded systems volve may traps ad there are umerous places where somethg ca go wrog. Huma beg s always a possble gap desg ad test techology. Both phases ca ot be performed wthout people but ths fact makes t also possble to cotrol the gaps. People volved the depedable embedded system developmet should cosder potetal possble stuatos ad thk oe more tme, before they do aythg. The techology tself ca ot provde hgh product qualty, t ca support t, but tellget huma teracto s here always eeded. There exsts a assumpto that there s o techcal system whch s 00% relable ad whch has o errors. However, the umber of them should be mmzed so that the relablty, avalablty ad mataablty rses. Fault-tolerat systems have such advatage that they ca try to keep the relablty of computato eve the presece of faults. Ths s acheved maly by redudacy of data, structos, software, hardware ad tme. Depedable embedded system should operate correctly over tme, ad eve f t s ot hudred percet correct or some upredcted crcumstaces occur the the potetal effect of a falure should be avoded or just mmzed. Refereces [] Avzes A., Lapre J., ad Radell B. Fudametal Cocepts of Computer System Depedablty. IARP/IEEE-RAS Workshop o Robot Depedablty: Techologcal Challege of Depedable Robots Huma Evromets, Seoul, Korea, May 00 [] Clarke E.M., Wg J.M. et al. Formal methods: State of the Art ad Future Drectos. ACM Computg Surveys, Vol. 8, No. 4, 996 [3] Emerso E.A. The Begg of Model Checkg: A Persoal Perspectve. Lecture Notes Computer Scece, 5 Years of Model Checkg: Hstory, Achevemets, Perspectves, 008, pp. 7 45 [4] Huth M., Rya M. Logc Computer Scece. Modellg ad Reasog about Systems. Cambrdge Uversty Press 004 [5] Ker C., Greestreet M.R. Formal Verfcato Hardware Desg: A Survey. ACM Trasactos o Desg Automato of Electroc Systems (TODAES), Vol. 4, Issue, Aprl 999, pp. 3 93 [6] Lamport L. Sometme s sometmes ot ever. O the Temporal Logc of Programs, Proceedgs of the Seveth ACM Symposum o Prcples of Programmg Laguages, ACM SIGACT-SIGPLAN 980, pp. 74 85

Gaps desg ad tests of depedable embedded systems 5 [7] Rce M.V., Vard M.Y. Brachg vs. Lear Tme: Fal Showdow. Proceedgs of the 00 Coferece o Tools ad Algorthms for the Costructo ad Aalyss of Systems, TACAS 00, LNCS Volume 03, Sprger-Verlag 00, pp. [8] Schor B. Depedable ad Fault Tolerat Dstrbuted Systems. DAAD-DEDIS Summer Academy, Cottbus 5.9.008 [9] We-Tek Tsa, La Yu, Feg Zhu, Paul R. Rapd embedded system testg usg verfcato patters. Software, IEEE Volume, Issue 4, July-Aug. 005 pp. 68 75

Metoda zestawaa teretowych usług złożoych w dzedze geografczych systemów formacyjych Potr Grobely Uwersytet Zeloogórsk, Wydzał Elektrotechk, Iformatyk Telekomukacj Abstract: Ths paper addresses the problem of tellget dscovery of complex servces wth geographc formato systems (GIS) doma. The proposed soluto brgs closer the applcato of doma otology, sematc servce specfcato as well as reasog techques by meas of doma specfc laguage Servces Oreted Archtecture (SOA). Properly defed servce models, whch volve terface descrptos, capablty specfcatos, formato about servce qualty (QoS) ad o-fuctoal propertes (NFP), regstered as the facts a deductve database wll eable ferrg kowledge about map layers ad geospatal data dstrbuted a global etwork. Keywords: sematc servce specfcato, expert system, doma specfc laguage. Wstęp Celem artykułu jest zaprezetowae owego podejśca do tworzea oprogramowaa poprzez wspomagae tego procesu przez system ekspertowy. Z uwag a mędzyarodowy charakter prezetowaych wyków badań, wykorzystao w pracy termy języka agelskego, aby ujedolcć azewctwo z wcześej opublkowaym artykułam. Luźo powązae kompoety programowe (loosely coupled software), a w szczególośc usług teretowe (web servces) wychodzą aprzecw potrzebe tworzea fukcjoalośc programstyczych przez żyera domey, który e ma szczegółowej wedzy w programowau komputerowym. Posada o za to slą wedzę ekspercką w swojej dzedze. Rozwązaem tego problemu może być programowae deklaratywe oparte o język specyfczy dla domey (Doma Specfc Laguage - DSL), wspomagae przez slk reguł. Przedstawoa metoda zakłada sytuację, w której wszystke zestawae w ramach usług kompleksowych jedostkowe fukcjoalośc są usługam teretowym rozproszoym w ramach archtektury zoretowaej a usług (Servces Oreted Archtecture - SOA). Główą deą takego podejśca jest fakt, że żyer domey operuje a usługach jedostkowych, bez potrzeby zajomośc techk programstyczych oraz sprzętowych, które mplemetują day serws [4]. Poszczególe usług dostarczae są przez róże podmoty w Iterece... Kocepcja Dzedzą, w której zastosowao opsywaą metodę są teretowe systemy formacj geografczej (Geographc Iformato Systems - GIS). Wykorzystao przy tym system ekspertowy, który peł rolę doradcy. Jako fakty w dedukcyjej baze daych zarejestrowa- Metody Iformatyk Stosowaej, r /00 (3), s. 53-6 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

54 Potr Grobely o sematycze specyfkacje usług, które zwerają w sobe ops terfejsów możlwośc serwsów oraz formację o ch parametrach jakoścowych (Qualty of Servces - QoS) efukcjoalych właścwoścach ścach (NFP). Tak utworzoy system reprezetacj wedzy (Kowledge Represetato System - KRS) umożlwa wydobywae wedzy o mapach, war- stwach daych geo-przestrzeych... Sta wedzy Prace [6],[3] wskazują ą a reguły jako waży paradygmat reprezetowaa wedzy o sematyczych usługach teretowych (Sematc Web Servces). Za pomocą reguł wedza ta może być wyrażoa w forme JEŻELI A TO B, a astępe połączoa otologą dzedzową, która pozwala a prezetację formacj w kotekśce daej dzedzy za pomocą koceptów, ch atrybutów relacj. Autorzy raportów [6],[5] położyl fudamety dla techolog sematyczych serwsów. Isteje jedak potrzeba dostarczea owego modelu sematyczej specyfkacj usług w dzedze GIS. Obece podejśca skupoe są a zestawau kompleksowych web serwsów w ramach łańcuchów procesów bzesowych zapsaych p. w języku BPEL. Serwsy geografcze e są zestawae w tak sposób. Jak już wspomao wcześej, dostarczają oe mapy dae przestrzee. Iformacją, która łączy je wszystke jest pozycja geografcza prezetowaych artefaktów. Zapropooway w tym artykule meta model opsu sematyczego usług bazuje a formalzme tablc decyzyjych [7]. Rówocześe zapropoowao użyce teor języków specyfczych dla domey do wyrażaa zapytań do systemu ekspertowego w forme zblżoej do języka aturalego.. Metoda Dokumet te opsuje obektowo zoretowaą reprezetację wedzy, która składa sę z stacj sematyczych model usług zapsaych jako fakty w dedukcyjej baze daych (reguły decyzyje). Natomast proces woskowaa odbywa sę z wykorzystaem DSL zapsaego w forme reguł produkcyjych []. Rysuek wskazuje elemety prezetowaej metody, których wykorzystae zostae opsae szczegółowo w astępych sekcjach. Są to: otologa dzedzowa, sematycza specyfkacja usług, baza wedzy, język specyfczy dla domey oraz stratega woskowaa realzowaa przez slk reguł. Rysuek. Elemety metody zestawaa kompleksowych usług teretowych

Metoda zestawaa teretowych usług złożoych w dzedze GIS 55.. System reprezetacj wedzy Otologa dzedzowa defuje kocepty relacje pomędzy m (Rysuek ). Ustaawa oa wspólą przestrzeń azw dla systemów formatyczych w daej dzedze. Wspóle zaczee termów użytych do opsu zasobów domeowych jest bardzo ważym aspektem, poeważ otologa tegruje wszystke kompoety systemu reprezetacj wedzy (KRS). Dlatego też, zaczyając od wyrażeń języka specyfczego dla domey poprzez defowae faktów przez eksperta kończąc a terakcj z systemem komputerowym została użyta otologa WSMO [3]. Autor utworzył tę otologę w języku WSML [0]. Zdefowae kocepty zostały przekowertowae do odpowedch klas języka Java za pomocą bblotek WSMO4J API a astępe stacje koceptów zostały załadowae do pamęc roboczej systemu ekspertowego. Rysuek. Otologa dzedzowa zaprojektowaa z wykorzystaem arzędza WSMO Studo [] Sematycza specyfkacja serwsu umożlwa wyrażee formacj o usłudze teretowej w kotekśce wedzy dzedzowej. Artykuł te dotyczy teretowych systemów formacj geografczej składających sę z rozproszoych w Iterece geoserwerów, które dostarczają mapy, warstwy dae przestrzee dla webowych terfejsów użytkowka takch jak Google Maps lub Google Earth. Iteretowe GISy reprezetują ową brażę w techologach formacyjych komukacyjych. Mają oe zastosowae w zarządzau rozproszoą formacją w sytuacjach kryzysowych, plaowau mejskm, utrzymau frastruktury secowej [4]. Określoe zostały stadardy web serwsów w dzedze GIS take jak Web Map Servce (WMS) lub Web Feature Servce (WFS) zgode z ustaleam Ope Geospatal Comsortum (OGC) [5],[6], gdze usług są dostępe poprzez stadardowe wywołaa REST lub SOAP a serwerze. Słą usług WMS jest geerowae map po stroe serwera. Efektem ch wykoaa są gotowe do wyśwetlea warstwy map. Jest to bardzo wygode dla bazującego a przeglądarce teretowej terfejsu użytkowka. Usług WFS są zaprojektowae do dostarczaa daych przestrzeych bez wskazywaa jak powy być oe wyśwetlae [].

56 Potr Grobely Rysuek 3. Usług WMS, które przedstawają rzek drog w pewej lokacj geografczej Sematycze modele usług ustaawają system reprezetacj wedzy, który moża sformułować w astępujący sposób: KRS jest parą =(, ) () gdze U jest zborem obektów oraz A jest epustym, skończoym zborem atrybutów. Każdy atrybut a A jest fukcją formacyją : () gdze Va jest zborem wszystkch możlwych wartośc a, zwaym dzedzą a. W przypadku rozważaych serwsów GIS dzedzy poszczególych atrybutów określoe są przez kocepty relacje pokazae a rysuku 4. Rysuek 4. Meta model sematyczej specyfkacj usług w dzedze GIS

Metoda zestawaa teretowych usług złożoych w dzedze GIS 57 Reprezetacja wedzy, która rozróża atrybuty warukowe decyzyje azywaa jest tablcam decyzyjym [7]. Jeżel węc P (4) zawera wszystke atrybuty warukowe oraz Q (5) zawera wszystke atrybuty decyzyje ze zboru A (3) to taką regułę decyzyją azywamy regułą PQ (6). A = {a, a, a 3, a 4, a 5, a 6, a 7, a 8, a 9, a 0, a, a } (3) P = {a, a, a 3, a 4, a 5, a 6, a 7, a 8, a 9, a 0 } = {p, p, p3, p4, p5, p6, p7, p8, p9, p0} (4) Q = {a, a} = {q, q} (5) Tabela. Przykład KRS w dzedze usług GIS U Capablty. servce Type Capablty. hasgeographc BoudgBox. hasmcoordates AtomcServce.hasCapablty Capablty. Capablty.hasFeature.staceOf hasgeographc BoudgBox. hasmaxcoordates Capablty. hasfeature. hasartfact a a a 3 a 4 a 5 x WMS {50,0} {55,5} Layer Road x WMS {00,0} {00,5} Layer Road x 3 WMS {50,0} {55,5} Layer Rver x 4 WFS {7,0} {5,5} Geo Data Cty x 5 WSDL {50,0} {5,5} Geo Data Cty AtomcServce.hasNFP U NFP.provder NFP. NFP.hasQoS. NFP.hasQoS. NFP.hasQoS.reputato descrpto executoprce executodurato a 6 a 7 a 8 a 9 a 0 Servce presets x TeleAtlas roads a coutry 7$ 4ms 50% x GIS Atlas Servce presets roads a coutry 0$ ms 90% Servce presets x 3 GIS Maps rvers a coutry 0$ 49ms 95% x 4 GIS Compay for ctes Servce returs data 0$ 5ms 95% x 5 ITS Servce returs data for ctes 0$ ms 95% AtomcServce U servcename URI a a x x x 3 x 4 Roads RoadsMap WaterMap CtData http://sematcgs.et:8080/geoserver/wms?bbox50.00,0.00,55.00,5.00&styles=&format=jpg&request =GetMap&verso=..&layers=topp:Roads&wdth=800&heght=37&srs=EPSG:43 http://sematcgs.et:8080/geoserver/wms?bbox00.00,0.00,00.00,5.00&styles=&format=jpg&reque st=getmap&verso=..&layers=topp:roadsmaps&wdth=800&heght=37&srs=epsg:43 http://sematcgs.et:8080/geoserver/wms?bbox50.00,0.00,55.00,5.00&styles=&format=jpg&request =GetMap&verso=..&layers=topp:WaterMap&wdth=800&heght=37&srs=EPSG:43 http://sematcgs.et:8080/geoserver/wfs?servce=wfs&verso=.0.0&request=getfeature&typename= locato:ct&featureid=ctes.3 x 5 provdectes http://sematcgs.et:8090/its/provdectes?wsdl

58 Potr Grobely Tabela prezetuje tablcę decyzyją gdze reguły PQ wążą formacje o możlwoścach usług (Capablty), jej e-fukcjoalych właścwoścach (NFP) oraz parametrach jakoścowych (QoS). Na przykład atrybut Capablty.hasFeature defuje artefakty wyśwetlae przez serws, atomast atrybut Capablty.hasGeographc BoudgBox wyzacza jego grace geografcze. Tablce decyzyje mogą być wyrażoe w rówoważej forme reguł decyzyjych JEŻELI TO (IF THEN) (6). Ż = = = = I = I I = (6) Kolumy a-a0 z tabel reprezetują atrybuty warukowe p (4), a kolumy a-a reprezetują atrybuty decyzyje q (5) reguł PQ. Reguły te zapsywae są jako fakty w baze wedzy systemu ekspertowego... Woskowae Język specyfczy dla domey jest sposobem a tworzee zapytań do system ekspertowego w kotekśce daej dzedzy. Może być używay do realzacj terfejsów użytkowka w stejących systemach lub do wyrażaa skomplkowaych struktur daych. DSL jest językem programowaa dopasowaym specjale dla aplkacj komputerowych realzujących zadaa dla daej domey. W rozważaym zastosowau język te zbudoway jest z wzorców waruków akcj, które astępe są używae w regułach produkcyjych wraz z parametram, które mogą przyberać róże wartośc. Reguły produkcyje wyrażoe w języku specyfczym dla domey mają formę zblżoą do języka aturalego. Iżyer domey modeluje zapytae do dedukcyjej bazy daych za pomocą prostego zboru fraz, operatorów zmeych lgwstyczych, zamast welu l kodu źródłowego zageżdżoych pętl w programowau strukturalym albo komedach SQL. Zaletą wykorzystaa system ekspertowego jest programowae deklaratywe. Reguły produkcyje są łatwejsze do skostruowaa przeczytaa ż kod źródłowy aplkacj. Poższa mplkacja (7) rozważaa jest jako reguła produkcyja. (7) Eksperc w daej dzedze maja małą wedze o programowau. Reguły produkcyje umożlwają m kostruowae fukcjoalośc programstyczych w prostym przejrzystym języku specyfczym dla domey [9]. Taką właśe formę ma zapytae do systemu ekspertowego, gdze formuła (7) przyjmuje postać KIEDY <waruk> TO <akcje> (WHEN <codtos> THEN <actos>). Taka dwuczęścowa struktura wykorzystywaa jest do woskowaa bazującego a faktach dostarczoych przez system reprezetacj wedzy. Gramatykę zastosowaego DSL zapsaą w otacj Backusa-Naura (BNF) [8] przedstawa lstg. Gramatyka ta jest ograczoym zborem słów kluczowych, operatorów, deklaracj zmeych, symbol termalych. W bardzo prosty sposób przy użycu ewelkej lczby elemetów języka umożlwa składae zapytań do dedukcyjej bazy daych.

Metoda zestawaa teretowych usług złożoych w dzedze GIS 59 <rule> ::= <whe_phrase> <the_phrase> <ed_phrase> <whe_phrase> ::= <w_whe> {<codto>}* <the_phrase> ::= <w_the> {<acto>}* <ed_phrase> ::= <w_ed> <w_whe> ::= {whe} <w_the> ::= {the} <w_ed> ::= {ed} <codto> ::= <w_there_s> <varable> <w_where> <cod_part> <w_there_s> ::= {There s} <w_where> ::= {where} <cod_part> :: = {<s_dash> <varable_attrbute> <operator> <value>}* <s_dash> ::= {-} <operator> ::= {equals cotas s s less tha s greater tha} <acto> ::= <acto_body> <acto_body> ::= {Propose servces Propose best servce} Lstg. Gramatyka DSL w otacj BNF Podejmowae decyzj polega a operowau reguł produkcyjych (WHEN THEN) (Lstg ) a faktach zdefowaych jako reguły decyzyje (IF THEN). rule "Roads ad rvers a coutry" whe There s coutry where coutry.coutryname equals X There s servce where servce. artfact equals Road ad servce.latloboudgbox cotas coutry.coutrycoordates There s a servce where servce. artfact equals Rver ad servce.latloboudgbox cotas coutry.coutrycoordates the Propose the servces ed Lstg. Przykład zapytaa DSL Rysuek 5 obrazuje wyk przykładowego zapytaa DSL, efektem wykoaa którego jest usługa złożoa przedstawającą rzek drog w daym obszarze geografczym a warstwe rastrowej. Rysuek 5. Efekt zapytaa w DSL

60 Potr Grobely Przedstawoe a lstgu wyrażea języka specyfczego dla domey przetrasformowae zostaą do otacj akceptowalej przez skorupę systemu ekspertowego. Zostało to opsae w artykułach [9], [0]. Jako system ekspertowy wykorzystao obektowy slk reguł bazujący a algorytme Rete [],[7]. W swom poprzedm artykule [] autor rozszerzył gramatykę języka specyfczego dla domey o zapytaa eprecyzyje bazujące a logce rozmytej, zmeych lgwstyczych fukcjach przyależośc parametrów jakoścowych serwsu. 3. Podsumowae Zaprezetowaa metoda pozwala a telgete odkrywae zestawae usług złożoych w dzedze teretowych systemów formacj geografczej. Pomoca jest oa ekspertom dzedzowym, którzy e mają dośwadczea w programowau komputerowym. Mogą o składać zapytaa do dedukcyjej bazy daych w DSL, w sposób zblżoy do języka aturalego, z użycem bardzo prostej ograczoej do klku wyrażeń gramatyk, opartej o reguły produkcyje. Rezultatem woskowaa jest kompozycja usług teretowych. Podejśce to jest pomoce a przykład w zarządzau kryzysowym, gdze eksperc mają możlwość adaptacyjego budowaa map w zależośc od tego jake formacje potrzebują uzyskać. Mapy te są opsae za pomocą sematyczych model przechowywaych w baze systemu ekspertowego dostępe jako serwsy rozproszoe w Iterece oraz dostarczae przez geo-serwery. Autor artykułu wykoał róweż prototyp sprawdzający wykoalość zapropoowaej metody a platforme Java przedstawoy we wcześejszej pracy [8]. Wykorzystae systemów ekspertowych jest obecującym kerukem budowaa oprogramowaa w modelu Software as a Servce (SaaS). Bblografa [] Davs S. GIS for web developers. The Pragmatc Programmers, Ralegh, North Carola Dallas, 007 [] Doorebos R.B. Producto matchg for large learg systems (Rete/UL). PhD thess, Carege Mello Uversty, 995 [3] Dumtru R. Web Servce Modelg Otology, Appled Otology, (), s. 77-06. IOS Press, 005 [4] Ekelhart A., Fez S. Securty ssues for the use of sematc web e-commerce, 0th Iteratoal Coferece BIS 007 proceedgs, LNCS vol. 4439, s. -3. Sprger, Berl Hedelberg 007 [5] Europea Commsso Jot Research Cetre, INSPIRE Metadata Implemetg Rules: Techcal Gudeles based o EN ISO 95 ad EN ISO 99. [ole] http://spre.jrc.ec.europa.eu [dostęp: 00] [6] Fesel D., Lause H., Polleres A. Eablg Sematc Web Servces. Sprger, Berl Hedelberg, 007 [7] Forgy C. RETE: A fast algorthm for the may patter may object patter match problem, Artfcal Itellgece, 9(), s. 7-37, 98 [8] Grobely P. Rapd Prototypg of Complex Servces SOA Archtecture. IX Iteratoal PhD Workshop OWD 007, Coferece Archves PTETS, vol. 3(), s.7-76, 007

Metoda zestawaa teretowych usług złożoych w dzedze GIS 6 [9] Grobely P. The expert system approach developmet of loosely coupled software wth use of doma specfc laguage, Proceedgs of the Iteratoal Multcoferece o Computer Scece ad Iformato Techology, Vol. 3, s. 9-3. IEEE Computer Socety Press, 008, DOI:0.09/IMCSIT.008.47477 [0] Grobely P. Kowledge represetato servces oreted archtecture, Przeglad Telekomukacyjy, 6/008, s. 793-796. SIGMA NOT 008 [] Grobely P., Peczysk A. Applcato of expert system the dscovery of complex servces wth Geographc Iformato Systems, Advaced Cotrol ad Dagoss - ACD 009 : 7th Workshop, Isttute of Cotrol ad Computato Egeerg Uversty of Zeloa Góra, 009 [] Grobely P., Peczysk A. Sematc reasog teret-based geographc formato systems, 5th Iteratoal Coferece o Soft Computg - MENDEL 009, s. 7-3. Bro Uversty of Techology, 009 [3] Kfer M., Lause G., Wu J. Logcal foudatos of object-oreted ad frame-based laguages. Joural of the Assocato for Computg Machery. 995 [4] Komarkowa J., Novak M., Blkova R., Vsek O., Valeta Z. Usablty of GeoWeb stes: case study of Czech regoal authortes web stes, 0th Iteratoal Coferece BIS 007 proceedgs, LNCS 4439, s.4-43. Sprger, Hedelberg, 007 [5] Kuropka D., Troeger P., Staab S., Weske M., Sematc Servce Provsog, chapter 3. Sprger, Berl, Hedelberg, 008 [6] Ope Geospatal Cosortum [ole] http://www.opegeospatal.org [dostęp: 00] [7] Pawlak Z. ROUGH SETS Theoretcal aspects of reasog about data. Kluwer Academc Publshers, 99 [8] Russel S., Norvg P. Artfcal Itellgece: A Moder Approach. Pretce Hall, Pearso Educato, New Jersey, 00 [9] Spells D. Notable desg patters for doma-specfc laguages, Joural of Systems ad Software, 56, s. 9-99. Elsever, 00 [0] Web Servce Modelg Otology [ole] http://www.wsmo.org [dostęp: 00] [] WSMO Studo [ole] http://www.wsmostudo.org [dostęp: 00]

Kocepcja metody zwększaa lokalośc daych a pozome pamęc podręczej oparta a trasformacjach pętl programowych Krzysztof Kraska, Ageszka Kamńska Zachodopomorsk Uwersytet Techologczy w Szczece, Wydzał Iformatyk Abstract: Ths paper presets outle the dea of herarchcal orgazato of memory, focusg o cache memory. It also dscusses bref popular software techques ad approaches whch ca be used order to more greatly beeft from the specfc ature ad potetal of cache memory. I ths cotext, oe presets here the cocepto of a ew method for shorteg the executo tme of varous executable programs. The ew method ams at creasg data localty at the cache memory level, based o trasforms of program loops. A proposal of applyg the ew method practce s descrbed here as well. Keywords: data localty, cache memory, loop trasformatos, complers. Wprowadzee Mmo cągłego rozwoju doskoalea sprzętu komputerowego, komukacja mędzy procesorem a podsystemem pamęc adal pozostaje źródłem problemów wydajoścowych dla przetwarzaa realzowaego w systemach komputerowych. Wyka to główe z faktu, że szybkość procesorów zacząco przewyższa przecęty czas dostępu do podsystemu pamęc [9]. Poeważ wydajość całego systemu komputerowego jest zdetermowaa przez wydajość jego ajsłabszych ogw, bezpośredą kosekwecją występowaa wąskego gardła w komukacj procesor-pamęć będze zwększee czasu programowego przetwarzaa daych. Mmalzacja egatywych skutków rozbeżośc w szybkośc fukcjoowaa obu składków systemu komputerowego ese wymere korzyśc w postac skrócea czasu realzacj oblczeń. Zaczych możlwośc w tym zakrese dostarcza herarchcza orgazacja podsystemu pamęc. Stosując odpowedo dobrae trasformacje, moża a etape komplacj przekształcć kod źródłowy programów do postac sematycze rówoważych, które charakteryzują sę lepszym pełejszym wykorzystaem właścwośc wykających bezpośredo z atury herarchczej orgazacj podsystemu pamęc, co w rezultace prowadz do faktyczego skrócea czasu wykoywaa programów. Główym celem artykułu jest przedstawee, a tle zarysowaym powyżej, kocepcj owej metody pozwalającej a osągęce przyspeszea wykoywaa programów poprzez zwększee lokalośc daych a pozome pamęc podręczej. Ideą metody jest zastosowae w tym celu zaych techk trasformacj pętl programowych oraz oblczeowo-dośwadczalej ocey metryk lokalośc daych. Metody Iformatyk Stosowaej, r /00 (3), s. 63-7 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

64 Krzysztof Kraska, Ageszka Kamńska. Tło problemu W celu złagodzea egatywych kosekwecj problemu wąskego gardła w komukacj procesor-pamęć, powszeche wykorzystuje sę archtektury sprzętowe stosujące herarchę pamęc [9]. Idea herarchczej orgazacj pamęc polega a wydzeleu kolejych jej pozomów w marę zwększaa odległośc od procesora. Zaczyając od ajwyższego pozomu położoego ajblżej procesora wydzela sę astępujące pozomy pamęc: a) rejestry procesora, b) pamęć podręcza (ag. cache) perwszego pozomu, c) pamęć podręcza (ag. cache) -pozomu, d) pamęć główa, e) pamęc zewętrze (p.: dysk magetycze, SSD). Rozpatrując w/w herarchę pamęc w keruku zstępującym moża zaobserwować m.. () malejący koszt ekoomczy w przelczeu a bt pojemośc, () rosącą pojemość oraz (3) rosący czas dostępu [0]. Z puktu wdzea wydajośc, sytuacja deala to taka, gdy wszystke dae potrzebe procesorow zajdują sę w pamęc położoej możlwe ajwyżej w herarch pamęc. Poeważ rejestry procesora mają bardzo ewelką pojemość, dlatego stoty wpływ a wydajość ma efektywe wykorzystae kolejych pozomów szybkej pamęc podręczej. W pamęc podręczej zajdują sę odwzorowaa zawartośc poszczególych bloków pamęc główej. Gdy procesor potrzebuje określoych daych (słowa) z pamęc główej, ajperw astępuje sprawdzee czy dae te zajdują sę w pamęc podręczej. Jeśl dae zostają odalezoe w pamęc podręczej (sytuację określa sę jako trafee, ag. cache ht) wówczas dae są atychmast dostarczae procesorow. Jeśl potrzebe dae e zajdują sę w pamęc podręczej (sytuację określa sę jako chybee, ag. cache mss) wówczas odpowed blok pamęc główej jest ładoway do pamęc podręczej dopero stąd astępuje pobrae daych dla procesora. Poeważ pamęć podręcza jest zacze mejsza ż pamęć główa, dlatego wczytae owego bloku daych do pamęc podręczej ozacza, że zostae adpsay y, aktuale zajdujący sę w pamęc podręczej blok daych (zjawsko to w aglojęzyczej lteraturze określa sę termem capacty mss). Jest jedak całkem prawdopodobe, że w zastąpoym bloku zajdowały sę dae wkrótce potrzebe procesorow w takej sytuacj adpsay blok będze musał zostać poowe wczytay do pamęc podręczej (zjawsko to w aglojęzyczej lteraturze określa sę termem coflct mss). Procesor odwołuje sę do daych zajdujących sę w różych lokalzacjach pamęc wykoując koleje strukcje programu. W przypadku teracj pętl, podprogramów oraz operacj a tablcach macerzach, lokalzacje pamęc dla poszczególych odwołań często tworzą grupy-skupea o względe łatwym do przewdzea kształce gracach. Tę tedecję moża wykorzystać w praktyce do optymalzacj kolejośc poberaa daych z pamęc główej. Celem takej optymalzacj jest mmalzacja lczby chybeń w pamęc podręczej, co z kole jest rówoważe temu, że dae potrzebe procesorow muszą być dostępe w pamęc podręczej atychmast po zgłoszeu zapotrzebowaa a e. Tę ostatą sytuację określa sę jako lokalość daych. Moża wyróżć dwa aspekty lokalośc daych: przestrzey czasowy [6]. Lokalość czasowa występuje, gdy te same dae są wykorzystywae welokrote w krótkm okrese czasu. Lokalość przestrzea ma mejsce, gdy w krótkm okrese czasu są welokrote wykorzystywae dae umeszczoe blsko sebe w pamęc []. Zwększee lokalośc czasowej przestrzeej przetwarzaych daych, poprzez umeszczee ch w odpowedej kolejośc porządku w pamęc podręczej, może za-

Kocepcja metody zwększaa lokalośc daych a pozome pamęc podręczej 65 cząco skrócć czas wykoaa programu. W zwązku z tym, aby zwększyć lokalość daych bazując a pamęc podręczej, ależy poddać aalze kod programu dokoać trasformacj tych jego fragmetów, które potecjale osą za sobą ajwększe poowe użyce daych. Poeważ przetwarzae zaczych lośc daych w programach często wykouje sę przy użycu pętl, dlatego staową oe atrakcyje mejsca do realzacj takch przekształceń. Przekształcoy kod, co oczywste, przy jedoczesej poprawe charakterystyk lokalośc daych mus pozostać sematycze detyczy z kodem wejścowym. 3. Techk zwększaa lokalośc daych Idea programowych techk zwększea lokalośc czasowej polega a przekształceu kodu programu do takej postac sematycze rówoważej, która mmalzuje lczbę ych operacj pomędzy kolejym odwołaam do tych samych daych. Natomast programowe techk zwększaa lokalośc przestrzeej daych polegają a przekształceu kodu programu do takej postac sematycze rówoważej, która mmalzuje lczbę ych operacj pomędzy kolejym odwołaam do możlwe ajblższych daych zajdujących sę w cągłym obszarze pamęc. Bezpośrede korzyśc wykające z poprawy lokalośc daych, tak czasowej jak przestrzeej to: redukcja lczby chybeń w pamęc podręczej, mmalzacja występowaa sytuacj takch jak capacty msses oraz coflct msses ch egatywych skutków. Pożej przedstawoo ajpopularejsze programowe techk zwększea lokalośc daych, polegające a trasformacj kodu źródłowego. 3.. Zamaa gazd pętl Zamaa kolejośc gazd pętl polega a takej zmae kolejośc wykoywaa pętl, by w rezultace zageżdżoa pętla adresowała, elemet po elemece, pewe lowy obszar pamęc podręczej. Zamaa gazd pętl może być zastosowaa wyłącze w przypadku pętl doskoale zageżdżoych, czyl takch, w których wszystke operacje wykoywae są w ajgłębej zageżdżoej (ajbardzej wewętrzej) pętl. Bardzo stotą kwestą jest tu sposób, w jak tablce welowymarowe są odwzorowywae w pamęc lowej. Występują dwe możlwośc odwzorowaa: porządek werszowy czyl, tablca welowymarowa jest learyzowaa wersz po werszu, lub porządek kolumowy czyl, tablca welowymarowa jest learyzowaa koluma po kolume. Sposób odwzorowaa jest uzależoy od języka programowaa. Porządek werszowy jest typowy p. dla języka C, atomast porządek kolumowy jest wykorzystyway p. przez język Fortra. W zwązku z powyższym, w zależośc od przyjętego sposobu przechowywaa zarazem, odwzorowywaa, tablc welowymarowych w pamęc lowej, ta sama pętla doskoale zageżdżoa może albo wykazywać dobrą lokalość przestrzeą, albo wymagać zamay gazd pętl. Lstg przedstawa kod, który charakteryzuje sę dobrą lokaloścą przestrzeą, o le tablce są przechowywae w pamęc w porządku werszowym. Dla porządku kolumowego przedmotowy kod cechuje sę słabą lokaloścą przestrzeą. Odwrotą sytuację przedstawa Lstg. for (=0; <; ) for(j=0; j<m; j) A[][j] = B[][j] c; Lstg. Zależość lokalośc przestrzeej od przyjętego sposobu learyzacj zoretowae a porządek werszowy

66 Krzysztof Kraska, Ageszka Kamńska for (j=0; j<m; j) { for(=0; <; ) A[][j] = B[][j] c; Lstg. Zależość lokalośc przestrzeej od przyjętego sposobu learyzacj zoretowae a porządek kolumowy Zamaa gazd pętl może być użyta razem z ym techkam zwększea lokalośc daych, także takm, które są zoretowae a poprawę lokalośc czasowej []. W praktyce, take podejśce może przyeść bardzo dobre rezultaty. 3.. Blokowae Popularą techką zwększaa lokalośc daych jest blokowae (ag. tlg) [][][4][][]. W ajbardzej ogólym przypadku, blokowae polega a przekształceu zageżdżoej pętl o p gazdach w zageżdżoą pętlę o p gazdach, w której p ajbardzej wewętrzych pętl wykouje odpowedo dobraą lczbę teracj [][]. Ideę tej techk moża w prosty sposób wytłumaczyć a przykładze kodu realzującego możee macerzy [7]. Lstg 3 przedstawa kod realzujący możee macerzy, przed dokoaem blokowaa. Lstg 4 przedstawa te sam kod po dokoau blokowaa. for (=0; <; ) for(j=0; j<; j) for(k=0; k<; k) D[,j] = D[,j] E[,k]*F[k,j]; Lstg 3. Możee macerzy W kodze z lstgu 3 występują operacje, które pocągają za sobą poowe użyce daych z tych samych lokalzacj pamęc. Aby w peł wykorzystać tę własość aalzowaego kodu, ależy podzelć wszystke trzy występujące w m macerze a podmacerze (blok) wyzaczać, blok po bloku, elemety poszczególych całych bloków zamast wylczać elemety macerzy wykowej D wersz po werszu (lub koluma po kolume). Blok powy być macerzam kwadratowym o tym samym rozmarze, B. Wartość B powa być dobraa tak, aby moża było jedocześe umeścć w pamęc podręczej po jedym bloku każdej z macerzy uczestczących w operacj możea (tz. macerzy: D, E, F). for (=0; <; B) for(jj=0; jj<; jjb) for(kk=0; kk<; kkb) for(=; <m(b,); ) for(j=jj; j<m(jjb,); jj) for(k=kk; k<m(kkb,); kk) D[,j] = D[,j] E[,k]*F[k,j]; 3.3. Trasformacje afcze Lstg 4. Możee macerzy po zastosowau blokowaa Iym sposobem zwększea lokalośc czasowej jest przekształcee kodu pętl programowej do postac sematycze rówoważej, poprzez zastosowae pewej arbtrale

Kocepcja metody zwększaa lokalośc daych a pozome pamęc podręczej 67 wybraej sekwecj podstawowych trasformacj afczych. Wyróża sę astępujące podstawowe trasformacje afcze [][5]: ) łączee pętl (ag. fuso), które polega a scaleu dwu lub węcej pętl w jedą, ) rozszczepee pętl (ag. fsso), która to trasformacja jest przecweństwem połączea pętl, 3) redeksacja (ag. re-dexg), czyl przesuęce puktu wykoaa pewych operacj o stałą lczbę teracj, 4) skalowae (ag. scalg), czyl oddzelee perwote astępujących po sobe teracj o stałą lczbę teracj, 5) odwrócee kolejośc wykoywaa teracj (ag. reversal), 6) permutacja (ag. permutato), czyl zamaa kolejośc wykoywaa pętl wewętrzych zewętrzych (trasformacja ta ma zastosowae wyłącze do pętl zageżdżoych), 7) zukosawae (ag. skewg). Trasformacja ta może być użyta w przypadku pętl zageżdżoych operujących a tablcach welowymarowych zarazem takch, że każda teracja wewętrzej pętl zależy od poprzedch teracj. W ramach tej trasformacj, astępuje usuęce zależośc z pętl wewętrzej; po trasformacj wszystke zależośc zajdują sę w pętl zewętrzej. Trasformacje r 5), 6) 7) są umodulare, czyl gwaratują, że każda teracja z kodu poddawaego trasformacj będze mała swój jedozaczy odpowedk w kodze wykowym. Ze względu a dużą lczbę potecjale dozwoloych trasformacj złożoych, zbudowaych a baze przedstawoych powyżej trasformacjach podstawowych, zazwyczaj wykorzystuje sę pewą arbtrale wybraą sekwecję trasformacj podstawowych. Take podejśce ma charakter heurystyczy. Aby osągąć wększą poprawę lokalośc daych, podstawowe trasformacje afcze (zwłaszcza umodulare) są często używae razem z blokowaem. 3.4. Kotrakcja tablcy Podejścem o eco ym charakterze ż te, które zostały dotychczas omówoe w ejszym artykule, jest kotrakcja tablcy. Istotą tej metody jest zmejszee rozmaru tablcy, bez zmay sematyk programu. W ajlepszym przypadku, tablcę moża zredukować do zmeej skalarej, która może być przechowywaa w rejestrze, co z kole elmuje potrzebę dostępu do pamęc prowadz do zwększea lokalośc daych. Użyce kotrakcj macerzy ozacza e wprost, że po pozyskau daych od razu wykorzystuje sę je w dalszych operacjach. Techka ta jest bardzo korzysta w zastosowau do operacj tablcowych wykoywaych a dużych tablcach. W zwązku z tym, powo sę ją uwzględć przy optymalzacj aplkacj o charakterze aukowym, apsaych w językach takch jak Matlab czy Fortra 90 []. Lstg 5 przedstawa proste wyrażee tablcowe, A = B C D, do którego wyrażee to zostałoby przetłumaczoe przez komplator dla procesora wektorowego. for(=0; <; ) T[] = B[] C[]; for(=0; <; ) A[] = T[] D[]; Lstg 5. Wyrażee tablcowe A = B C D, z puktu wdzea komplatora dla procesora wektorowwego

68 Krzysztof Kraska, Ageszka Kamńska W wyku zastosowaa kotrakcj macerzy, kod wejścowy (patrz lstg 5) zostae przekształcoy do postac rówoważej, takej jak przedstawa to lstg 6. for(=0; <; ) T = B[] C[]; A[] = T D[]; Lstg 6. Wyrażee tablcowe A = B C D, po kotrakcj macerzy 4. Kocepcja metody zwększaa lokalośc daych Istotą przedstawoych techk zwększaa lokalośc daych jest przekształcee wejścowego kodu pętl programowej do postac sematycze rówoważej o korzystejszych charakterystykach lokalośc daych. Automatycza optymalzacja lokalośc daych we współczesych komplatorach optymalzujących ogracza sę do wykoaa arbtrale ustaloej sekwecj wybraych trasformacj [4]. Taka z góry ustaloa sekwecja trasformacj może w ektórych przypadkach okazywać sę bardzo skutecza, atomast w ych może skutkować jedye ezaczą poprawą lokalośc daych. W zwązku z tym, racjoalym rozwązaem wydaje sę dostosowae sekwecj przewdywaych do wykoaa trasformacj do kodu daej pętl źródłowej. Należy dobrać taką sekwecję trasformacj ze zdefowaego podzboru wszystkch potecjalych trasformacj dla daej pętl, która przekształc pętlę wejścową do postac o charakterystykach lokalośc daych e gorszych ż pozostałe kombacje trasformacj ze zdefowaego podzboru. Na tle całej przestrze możlwych trasformacj zwększających lokalość daych, tak wybraa trasformacja będze suboptymala. Najprostszym sposobem zalezea sekwecj trasformacj pozwalającej osągąć dla daej pętl programowej ajwększą lokalość daych byłoby wyczerpujące, teracyje sprawdzee wszystkch możlwych kombacj z całej przestrze potecjalych trasformacj ( o różych parametrach przekształcea) dla tej pętl. Dla każdej badaej sekwecj ależałoby dokoać komplacj do kodu wykoywalego dla daej archtektury wykoać program, a astępe ależałoby wybrać spośród zbadaych sekwecj tę, która umożlwa uzyskae ajlepszych charakterystyk lokalośc daych. Lczba kombacj możlwych trasformacj może okazać sę jedak zacza, przez co take teracyje podejśce, ze względu a koeczość każdorazowej komplacj wykoaa programu, w wększośc sytuacj okazałoby sę eefektywe epraktycze. Rezygacja z koeczośc każdorazowej komplacj wykoaa programu w celu określea charakterystyk lokalośc daych a rzecz szacukowego ustalea współczyków lokalośc daych a podstawe źródłowej postac kodu pętl może zacze skrócć czas odalezea sekwecj trasformacj o suboptymalych charakterystykach lokalośc daych. Do oszacowaa lokalośc kodu moża posłużyć sę zaym z lteratury metodam, takm jak metoda kosztu pamęc ajgłębszego zageżdżea (ag. ermost memory cost) [] czy zapropoowae przez Wolfe a podejśce polegające a ustaleu wartośc współczyków poowego użyca []. Kocepcja prowadzoych badań polega a doborze zastosowau właścwej sekwecj zaych techk trasformacj kodu źródłowego pętl programowych do zwększaa lokalośc daych wykoywaych programów a pozome pamęc podręczej. Istota propoowaego podejśca opera sę a teracyjej metodze komplacj kodu źródłowego łączącej podejśce szacukowego ustalea współczyków lokalośc daych z podejścem empryczym, wymagającym: komplacj kodu do postac wykoywalej dla daej archtektury

Kocepcja metody zwększaa lokalośc daych a pozome pamęc podręczej 69 docelowej, wykoaa programu oraz ustalea wartośc metryk lokalośc daych. W kosekwecj oczekwaa jest poprawa charakterystyk lokalośc daych, a tym samym osągęce przyspeszea dzałaa programów wykoywalych. Dotychczasowe studum dostępej lteratury wskazuje a możlwość przeprowadzea owatorskch badań ad metodą łączącą oba te podejśca. Rysuek przedstawa model kocepcyjy propoowaego podejśca do zwększaa lokalośc daych. Kocepcja została zlustrowaa w postac modułu programowego, będącego zarazem praktyczą formą realzacj prac badawczych. Moduł Zwększaa Lokalośc Daych Blokowae Iterfejs Programowy Moduł Trasformacj Kodu Pętl Kotrakcja Tablcy Źródło ANSI-C Kofguracja Parametry docelowej archtektury Moduł Automatyczego Doboru Sekwecj Trasformacj Moduł Oblczeowego Szacowaa Lokalośc Daych Komplator GCC Przekształcoe źródło ANSI-C Moduł Empryczej Aalzy Lokalośc Daych Itel VTue Performace Aalyzer Performace Applcato Programmg Iterface (PAPI) Alteratywe zastosowae arzędz Rysuek. Schemat kocepcyjy modułu zwększaa lokalośc daych Wejścem dla modułu zwększaa lokalośc daych jest kod źródłowy pętl programowej w języku ANSI-C. Kod wejścowy jest poddaway przekształceu do postac sematycze rówoważej przez składowy moduł trasformacj kodu pętl, wykorzystujący zae techk zwększaa lokalośc daych. W aktualych pracach wykorzystae są techk blokowaa oraz kotrakcj tablcy, atomast w marę rozwoju prac zakładae jest kosekwete uzupełae lsty dostępych techk. Podczas trasformacj kodu pętl powo sę uwzględać kofgurację fzyczą docelowej archtektury, a w szczególośc: lczbę dostępych rejestrów procesora, rozmar l pamęc cache czy też jej całkowtą pojemość. Kofguracja docelowej archtektury determuje take parametry przekształcea jak p.: rozmar boku bloku daych w techce blokowaa czy maksymala lczba zmeych skalarych przechowywaych w rejestrach procesora. Dla uzyskaej przekształcoej postac kodu jest astępe oblczaa wartość odpowedch współczyków pozwalających oszacować lokalość daych zgode z przyjętym modelam oblczeowego szacowaa lokalośc daych. Proces te ma charakter teracyjy jest kotyuoway tak długo, aż zostaą sprawdzoe wszystke dopuszczale kombacje możlwych trasformacj kodu. Do oszacowaa lokalośc daych a podstawe kodu źródłowego koecze jest dostarczee ezbędych parametrów kofguracyjych docelowej archtektury wykoawczej. Na podstawe uzyskaych wyków astępuje wstępe określee zboru tych sekwecj trasformacj, które z teoretyczego puktu wdzea pozwalają osągąć ajwększą lokalość daych.

70 Krzysztof Kraska, Ageszka Kamńska Dla wstępe wyselekcjoowaego zboru sekwecj trasformacj wykoyway jest empryczy pomar wartośc metryk lokalośc daych, w warukach zblżoych do rzeczywstych waruków fukcjoowaa programu, w celu ostateczego, precyzyjego wyboru ajkorzystejszej sekwecj przekształceń. Potrzeba weryfkacj rezultatów aaltyczego oszacowaa wydaje sę zasada w śwetle rezultatów dotychczasowych badań własych [8] oraz formacj zameszczaych przez producetów procesorów, wskazujących a potecjale rozbeżośc pomędzy oceą aaltyczą a rzeczywstym warukam fukcjoowaa oprogramowaa [5]. Wyjścem z modułu zwększaa lokalośc daych jest zapsay w języku ANSI-C kod źródłowy pętl wejścowej, przekształcoej do postac rówoważej sematycze o suboptymalych charakterystykach lokalośc daych dla docelowej archtektury wykoawczej. 5. Implemetacja modułu programowego Prace badawcze ad kocepcją oblczeowo-dośwadczalej metody zwększaa lokalośc daych a pozome pamęc podręczej opartej a trasformacjach pętl programowych są realzowae poprzez mplemetację stosowego modułu programowego, w ramach jedego z projektów badawczych prowadzoych w Katedrze Iżyer Oprogramowaa a Wydzale Iformatyk Zachodopomorskego Uwersytetu Techologczego w Szczece. Ze względu a otoczee projektu moduł jest mplemetoway w języku ANSI-C w środowsku programstyczym Eclpse IDE for C/C. Implemetacja jest przezaczoa do komplacj przy użycu komplatora g w wersj 4.3. dla systemu operacyjego Lux (x86_64) z dystrybucj opesuse v.. Model kompoetowy mplemetacj modułu został przedstawoy a rysuku. W ramach prac mplemetacyjych zostaą wykoae astępujące kompoety składowe: moduł automatyczego doboru sekwecj trasformacj, moduł trasformacj kodu pętl, moduł oblczeowego szacowaa lokalośc daych, moduł empryczej aalzy lokalośc daych. Logka sterowaa opracowywaej metody teracyjej komplacj zostae osadzoa w kompoece automatyczego doboru sekwecj trasformacj. Moduł trasformacj kodu pętl będze odpowedzaly za realzację zlecoej techk poprawy lokalośc daych dla pętl programowej przy określoych parametrach przekształcea. Implemetacja tego modułu zakłada wykorzystae zewętrzych kompoetów programowych, w tym: kompoetu realzującego techkę blokowaa, wyodręboego z kodu źródłowego komplatora PLUTO (http://pluto-compler.sourceforge.et/), kompoetu realzującego techkę kotrakcj tablcy opracowywaego od podstaw przez zespół roboczy Zakładu Techk Programowaa Katedry Iżyer Oprogramowaa a Wydzale Iformatyk Zachodopomorskego Uwersytetu Techologczego w Szczece. Moduł oblczeowego szacowaa lokalośc daych odpowedzaly będze za szacukowe ustalee współczyków lokalośc daych a podstawe przekształcoego kodu pętl. Ze względu a brak ogóle dostępych mplemetacj, mplemetacje: metody kosztu pamęc ajgłębszego zageżdżea [] oraz podejśca zapropoowaego przez Wolfe a [] zostaą zrealzowae we własym zakrese.

Kocepcja metody zwększaa lokalośc daych a pozome pamęc podręczej 7 Moduł empryczej aalzy lokalośc daych będze odpowedzaly za: komplację przekształcoego kodu pętl do postac programu wykoywalego, wykoae programu a docelowej archtekturze oraz pomar zgromadzee metryk lokalośc daych. Zakłada sę tu alteratywe wykorzystae jedego z dwóch arzędz: VTue Performace Aalyzer for Lux frmy Itel, lub Performace Applcato Programmg Iterface (http://cl.cs.utk.edu/pap/). Docelowo oprogramowae modułu zostae osadzoe w komplatorze zrówoleglająco-optymalzującym typu źródło-źródło rozwjaym w Katedrze Iżyer Oprogramowaa a Wydzale Iformatyk Zachodopomorskego Uwersytetu Techologczego w Szczece. Umejscowee modułu w archtekturze kompoetowej rozwjaego komplatora zrówoleglająco-optymalzującego przedstawa Rysuek. Rysuek. Archtektura kompoetowa komplatora zrówoleglająco-optymalzującego 6. Podsumowae W artykule omówoo problem lokalośc daych oraz zaprezetowao stejące techk zwększaa lokalośc daych polegające a trasformacj kodu źródłowego pętl w celu lepszego wykorzystaa możlwośc pamęc podręczej procesora. Zaprezetowao róweż kocepcję metody zwększaa lokalośc daych a pozome pamęc podręczej opartej a zaych trasformacjach pętl programowych oraz oblczeowo-dośwadczalej aalze metryk lokalośc daych. Przedstawoo model kocepcyjy modułu programowego mplemetującego uzyskwae wyk badań. Celem ajblższych prac badawczych będze rozwązywae problemów wdoczych z obecej perspektywy, a w szczególośc:. ustalee zestawu parametrów kofguracyjych docelowej archtektury wykoawczej ezbędych do skuteczego dzałaa metody pod kątem wykorzystaa ch do szacowaa współczyków lokalośc daych oraz określaa parametrów trasformacj pętl,. zdefowae zestawu metryk, które ajtrafej odwzorują charakterystyk lokalośc daych. Dotychczasowe badaa włase [8] oraz badaa ych autorów [3] wskazują, że terpretacja lokalośc daych a podstawe samych zdarzeń procesora jest kłopotlwa, atomast korzystejszą formą sytezy wyków jest kostrukcja współczyków (ag. rato) pokazujących stosuek odpowedo dobraych zdarzeń,

7 Krzysztof Kraska, Ageszka Kamńska 3. wykoae bądź pozyskae mplemetacj modułów składowych ezbędych do realzacj prac badawczych ad zapropoowaą metodą, 4. aalza możlwośc zastosowaa zaych metod wyszukaa ajlepszych rozwązań w przestrze alteratywych rozwązań problemu (p. algorytmów geetyczych), w celu redukcj lczby teracj wykoywaych a etape geerowaa sekwecj trasformacj szacowaa lokalośc daych, 5. aalza możlwośc zastosowaa metody dla kodu rówoległego z wydzeloym ezależym fragmetam oblczeń. Bblografa [] Aho A.V., Lam M.S., Ullma J.D. Complers. Prcples, Techques, ad Tools. d Edto. Addso Wesley, 007 [] Alle R., Keedy K. Optmzg Complers for Moder Archtectures: A Depedece based Approach. Morga Kaufma Publshers, 00. [3] Beleck W. Essetals of Parallel ad Dstrbuted Computg. Iforma, 00 [4] Beleck W. Przetwarzae rówoległe rozproszoe. Część. Metody zrówoleglea algorytmów tworzea aplkacj. Wydawctwo Uczelae Poltechk Szczecńskej, 007 [5] Beleck W., Kraska K. Aalza metod trasformacj programów zwększających lokalość daych: sta, problemy, perspektywy. Metody Iformatyk Stosowaej, Nr 4/006, Tom 0, s. 55-5 [6] Beleck W., Kraska K. Zwększee lokalośc programów wykoywaych w komputerach rówoległych. Metody Iformatyk Stosowaej, Nr /007, Tom, s. 5-5 [7] Klukowsk J., Nabałek I. Algebra dla studetów. Wydawctwa Naukowo-Techcze, 999 [8] Kraska K. Zastosowae Itel VTue Performace Aalyzer do badaa lokalośc daych aplkacj rówoległych opartych a tworzeu ezależych wątków oblczeń. Metody Iformatyk Stosowaej, Nr /009, Tom 8, s. 45-5 [9] Mahapatra N.R., Vekatrao B. The Processor-Memory Bottleeck: Problems ad Solutos. Crossroads 5.3 Sprg 999. Computer Archtecture, ACM New York [0] Stallgs W. Orgazacja archtektura systemu komputerowego. Projektowae systemu a jego wydajość. Wydawctwa Naukowo-Techcze, 004 [] Wolfe M. Hgh Performace Complers for Parallel Computg. Addso Wesley, 996 [] Wolf M.E., Lam M.S. A Data Localty Optmzg Algorthm. Proceedgs of the ACM SIGPLAN 9 Coferece o Programmg Laguage Desg ad Implemetato. Toroto, Otaro, Caada, Jue 6-8, 99 [3] Drepper U. Uderstadg Applcato Memory Performace, Red Hat Summt, Bosto 008 [4] Lm A.W. Improvg Parallelsm ad Data Localty wth Affe Parttog, PhD thess. Departmet of Computer Scece, Staford Uversty, 00 [5] Threadg Methodology: Prcples ad Practces. Verso.0. Itel Corporato, 004

Aalza złożoośc oblczeowej algorytmów detyfkacj lowych procesów powtarzalych metodam podprzestrze Domk Kujawa Uwersytet Zeloogórsk, Wydzał Elektrotechk Iformatyk Telekomukacj Abstract: Ths paper presets a ew approach to the detfcato of repettve processes subspace methods. Computatoal complexty of ew algorthms has bee developed. The order of a lear repettve process ad the ukow process matrces are determed based o the put ad output sequeces of the actual pass ad the output sequece of the prevous pass. The detfcato procedure ca be restarted cosecutvely startg from the frst pass data ad boudary codtos. The calculato of the complexty of algorthms may be useful selectg a fast ad usg less resources algorthm ot oly for tme varat lear repettve processes but also for processes whch dyamcs chages rapdly from pass to pass. Keywords: state space models, subspace methods, detfcato algorthms, parameter estmato.. Wprowadzee Aalzując złożoość oblczeową metod detyfkacj opartych a metodach błędu predykcj, dokouje sę oszacowaa zasobów (p. pamęc, czasu, lczby procesorów) a terację. Parametry wybraej struktury modelu są wyzaczae przy zastosowau metod optymalzacj elowej tak, aby zaleźć ajlepsze dopasowae modelu do daych pomarowych [6]. Algorytmy detyfkacj metodam podprzestrze zostały rozwęte w ostatch dwóch dekadach. Metody podprzestrze staową alteratywą klasę metod detyfkacj, które e wykorzystują techk teracyjych, ale są oparte a arzędzach algebry lowej. W metodach tych, modele systemów w przestrze staów są wyzaczae z użycem rozkładu QR rozkładu według wartośc szczególych (SVD) oraz operacj geometryczych takch jak rzutowae ortogoale rzutowae ukośe [3]. Złożoość oblczeowa detyfkacj lowych procesów powtarzalych (LRP) zależy od rozmaru macerzy przechowujących formację o zmeej przestrzeej określającej pas lub przejśce zmeej czasowej określającej pozycję a pase, przy czym długość każdego pasa jest skończoa []. Algorytmy podprzestrze składają sę z dwóch kroków. W kroku perwszym, z daych sygałów wejścowo-wyjścowych, wyzaczay jest rząd detyfkowaego systemu oraz sekwecja staów X (algorytm N4SID) lub rozszerzoa macerz obserwowalośc systemu Γ (algorytm MOESP) rys.. W kroku drugm wyzaczae są macerze A, B, C, D. Metody Iformatyk Stosowaej, r /00 (3), s. 73-84 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

74 Domk Kujawa Sygały we-wy { uk ( p), yk ( p), yk ( p)} N4SID MOESP X Γ Macerze systemu A,B,B 0,C,D,D 0 Rysuek. Algorytm N4SID wykorzystuje sekwecje staów, algorytm MOESP wykorzystuje rozszerzoą macerz obserwowalośc. Algorytm detyfkacj metodą błędu predykcj [6] oraz zmodyfkoway algorytm N4SID zastosowao w celu wyzaczea czasu potrzebego do detyfkacj procesu powtarzalego. Algorytmy te zacjowao daym pozyskaym z symulatora procesów powtarzalych. W artykule przedstawoo szacukowe złożoośc zmodyfkowaych algorytmów oraz czas realzacj procesów detyfkacj. W rozdzałach 3 przedstawoo wprowadzee do detyfkacj dyskretego systemu powtarzalego. Problem złożoośc oblczeowej detyfkacj sformułowao podao rozwązaa oparte a algorytmach podprzestrze w rozdzałach 4 5. W rozdzale 6 zaprezetowao wyk symulacj. Wosk, przedstawoo w rozdzale 7.. Model systemu powtarzalego właścwośc geometrycze systemu determstyczego Dae pomarowe ezbęde do detyfkacj procesu powtarzalego pozyskwae są z dwóch kolejych pasów. Dzęk temu LRP moża tarktować jako system jedowymarowy o dwóch wejścach u k y k jedym wyjścu y k. Model lowego dyskretego systemu powtarzalego określają astępujące zależośc: gdze: x y k ( k 0 k k p p ) = Ax ( p) B y ( p) Bu ( ) () p) = Cx ( p) D y ( p) Du ( ) () k ( k 0 k k p 0 p α Z zmea czasowa lub przestrzea, k Z umer aktualego pasa, x k ( p) R wektor stau,

Aalza złożoośc oblczeowej algorytmów detyfkacj lowych procesów powtarzalych 75 y u l k ( p) R profl pasa, m k ( p) R wektor wejścowy, A,B,B,C,D,D 0 0 macerze o odpowedch rozmarach. Waruk brzegowe początkowe systemu powtarzalego dae są w astępującej postac: ( ) d x, 0 k = k ( p) f ( ) y = 0 p gdze d k jest wektorem stałych wartośc. f ( p) R Model opsujący lowy proces powtarzaly ()-() moża zapsać za pomocą astępujących zależośc macerzowych: Y Y f X p f = Γ = Γ X X p f = A X l H U H U p U p f p,,, (3) gdze blokowa macerz Hakela dla sygałów wejścowych U ma postać: 0 0 def U = uk (0) yk (0)... uk ( ) yk( ) uk ( ) yk ( ) uk ( j ) yk ( )... uk ( ) yk ( ).................................... uk ( j ) y k ( j )... uk ( j ) y k ( j ) uk ( j ) y ( ) k j uk ( j) y ( j) k... uk ( j ) yk ( j ) def U = U 0 def U = U p f

76 Domk Kujawa def U = 0 ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ) ( ) ) ( (0) ) ( (0) j y... y j u... u......... j y... y j u... j u j y... y j u... u j y... ( y j u... ( u......... j y... y j u... u k k k k k k k k k k k k k k k k k k k k = = - f p def def U U U U 0 Blokową macerz Hakela sygałów wyjścowych 0 Y defuje sę astępująco: = ) (... ) (......... ) (... ) ( ) (... ) ( ) (... ) (......... ) (... (0) 0 j y y j y y j y y j y y j y y Y k k k k k k k k k k def = = f p Y Y Y Y 0 = ) (... ) (......... ) (... ) ( ) (... ) ( ) (... ) (......... ) (... (0) 0 j y y j y y j y y j y y j y y Y k k k k k k k k k k def

Aalza złożoośc oblczeowej algorytmów detyfkacj lowych procesów powtarzalych 77 Y Y Y = Y 0 p = f Mmala lczba werszy macerzy Hakela powa być wększa ż rząd systemu. Macerze blokowe Hakela W p W p zawerające macerze Y, U p p Y p, U p mają postac: W U U = def 0 p 0 = = W p Y Y 0 p Macerz sekwecj staów X W U Y p p = p X defuje sę jako: [ x )... x ( j ] def = k ( k ) Ważą rolę w detyfkacj metodam podprzestrze odgrywają także: rozszerzoa macerz obserwowalośc, odwrócoa rozszerzoa macerz sterowalośc macerz trójkąta dola Toepltza [5]. Rozszerzoą macerz obserwowalośc Γ odwrotą rozszerzoą macerz sterowalośc defuje sę astępująco: Γ C CA def = CA... CA [ A B B ]... A[ B B ][ B B ] def = [ 0 0 0 ] Zakłada sę także, że para {A,C} jest obserwowala, a para A, [ B B ]} jest sterowala. Macerz trójkątą dolą Toepltza H defuje sę jako: { 0 H [ D D0 ] C[ B B ] def 0 = CA[ B B0 ]... CA [ B B0 ] 0 [ D D 0 C[ B B... CA 3 ] 0 ] [ B B 0 ]............... 0 0 0... [ D D 0 ]

78 Domk Kujawa 3. Problem detyfkacj Problem detyfkacj LRP może być sformułoway astępująco: dla daych α pomarów sygałów wejścowych u k ( ) sygałów wyjścowych y k ( p) ( ) p y k p wygeerowaych przez () - () wyzaczyć rząd procesu macerze A,B,B,C,D,D z 0 0 dokładoścą do trasformacj podobeństwa. 4. Złożoość oblczeowa zmodyfkowaego algorytmu N4SID Na złożoość zmodyfkowaego algorytmu N4SID składają sę rówaa (4)-(4): T IDK _ N 4SID T T IDK _ N 4SID SVD T () = T obser T ster Hakel T T ABCD ( ) złożoość oblczeowa zmodyfkowaego algorytmu N4SID, T Hakel () złożoość oblczeowa wyzaczaa macerzy Hakela, T ukoś () złożoość oblczeowa operacj rzutowaa ukośego, T SVD () złożoość oblczeowa rozkładu według wartośc szczególych, T obser () złożoość oblczeowa wyzaczaa rozszerzoej macerzy obserwowalośc, T ster () złożoość oblczeowa wyzaczaa rozszerzoej odwrotej macerzy sterowalośc, T ABCD () złożoość oblczeowa wyzaczaa ezaych macerzy procesu powtarzalego, lość wykoywaych operacj (przypsań, porówań, sumowań, różc loczyów) W algorytme N4SID, sekwecja staów X jest wyzaczaa bez zajomośc macerzy systemu ezaego procesu powtarzalego [6]. Algorytm te wykorzystuje rozkład według wartośc szczególych macerzy WO W w celu oblczea rzędu procesu () - () W O W ukoś T S 0 V [ U U ] (4) 0 0 V = T l l j j gdze W R, W R są macerzam wagowym zdefowaym przez użytkowka [4]. Złożoość oblczeowa rozkładu według wartośc szczególych jest astępująca: 3 ( ) T SVD ( ) = (5) W celu wyzaczea O wykouje sę rzutowae ukośe przestrze werszowej macerzy Y f wzdłuż przestrzeń werszowej macerzy W p a przestrzeń werszową macerzy U f.

Aalza złożoośc oblczeowej algorytmów detyfkacj lowych procesów powtarzalych 79 Ο = Y / Ο = f Y U - f / f U W - f p W p (6) Rząd procesu powtarzalego jest rówy lczbe ezerowych wartośc szczególych w macerzy S. Złożoość oblczeowa operacj rzutowaa ukośego oraz wyzaczaa macerzy Hakela jest astępująca: T ukoś T Hakel ( ( ) = ( ( ) ) (4cops cops )) 3 ( ) = (,8 3,8 ) (cops cops ) cops dwe operacje kopowaa Rozszerzoe macerze obserwowalośc Γ Γ są oblczae z astępujących zależośc: Γ = W U S T, Γ = Γ / * - gdze T jest opcjoalą eosoblwą macerzą trasformacj podobeństwa, a ozacza macerz Γ bez ostatch l werszy. Złożoość oblczeowa wyzaczaa rozszerzoej macerzy obserwowalośc jest astępująca: Sekwecje staów 3 5,8 T obser ( ) = (0) 3 6 X X wyzacza sę z astępujących rówań: X Γ Ο, X Γ Ο () = = gdze symbol ozacza macerz pseudoodwrotą Moore a-perose a. Złożoość oblczeowa wyzaczaa rozszerzoej odwrotej macerzy sterowalośc jest astępująca: 3 5,8 T ster ( ) = () 3 6 Macerze systemu A,B,B,C,D,D 0 0 oblcza sę z astępującego rówaa: C [ B B X 0 ] [ D D U 0 ] X = Y A Złożoość oblczeowa wyzaczaa macerzy systemu powtarzalego jest astępująca: (7) (8) (9) * Γ (3)

80 Domk Kujawa = 4 4 6 5 3 ) (,8,8 3 cops T ABCD (4) Złożoość oblczeowa zmodyfkowaego algorytmu N4SID astępująca: ( ) =,8,8 3,8 3,8 3,8,8 3 3 4 _ 4 4 6 5 3 6 5 3 6 5 3 ) ( 3 ) ( 3 )) (4 ) )( ( ( cops cops cops cops cops T SID() N IDK Złożoość oblczeowa dla zmodyfkowaego algorytmu N4SID wyos: 3,5 4 O() = 5. Złożoość oblczeowa zmodyfkowaego algorytmu MOESP Na złożoość zmodyfkowaego algorytmu MOESP składają sę rówaa (6)-(): D B A C LQ ukoś Hakel MOESP IDK T T T T T () T = _ ) ( _ T MOESP IDK złożoość oblczeowa zmodyfkowaego algorytmu MOESP, () T Hakel złożoość oblczeowa wyzaczaa macerzy Hakela, () T LQ złożoość oblczeowa rozkładu LQ, ) ( ), ( T T D B C A złożoość oblczeowa wyzaczaa ezaych macerzy systemu powtarzalego. Algorytm MOESP wykorzystuje rozkład macerzy LQ w celu oblczea rzędu procesu ()-() = 3 33 3 3 0 0 0 Q Q Q L L L L L L U U U f p f p (5) Rząd procesu powtarzalego jest rówy lczbe ezerowych wartośc szczególych macerzy [ ] 3 Q L []. Złożoość oblczeowa rozkładu LQ jest astępująca: = T LQ 6 7 3 5 ) ( 3 (6)

Aalza złożoośc oblczeowej algorytmów detyfkacj lowych procesów powtarzalych 8 Macerze C A wyzacza sę przekształcając astępujące rówae: f d f U H Γ Γ Y = (7) [ ] [ ] = ] [ ] [ ] [ 0 ] [ ] [ 0 ] [ ] [ 0 0 ] [...... 0 0 3 0 0 0 0 0 0 D D... B B CA B B CA............... B B C B B CA... D D B B C... D D L L L M M M (8) Złożoość oblczeowa wyzaczaa ezaych macerzy C A systemu powtarzalego: = 6 5 3 3 6 5 3 ) (,8 3 3,8 3 copy copy T A C (9) Macerze 0 0,D,D B,B wyzacza sę rozwązując astępujące rówae: Γ = 0 0 0 0 0 B B D D I L L L M M M l M (0) Złożoość oblczeową wyzaczaa macerzy 0 0,D,D B,B systemu powtarzalego określa zależość: = 6 5 3 ) ( 3 6 5 3 ) ( 3 3 3 3, 0 0 copy copy T D D B B () Złożoość oblczeowa dla zmodyfkowaego algorytmu MOESP wyos: 3,5 8 O() =

8 Domk Kujawa 6. Symulacja Zbór daych do wyzaczea empryczej złożoośc oblczeowej pozyskao z przykładowego dyskretego lowego systemu powtarzalego czwartego rzędu określoego przez astępujące macerze:.564 A = 0 0 0.7549 0 0 0.45 0 0 0.0008 0 0 0-0,5738 0 B = - 0,477 B = 0-0,4573 = 0 [ 0.] D = 0 0 0-0,5848 C = 0.0483 0.079-0.0058-0.0006 D [ ] [ ] Do detyfkacj wybrao dae z dwóch kolejych pasów zastosowao algorytm N4SID oraz algorytm detyfkacj metodą predykcj błędu [6]. Przyjęto waruek brzegowy y 0 ( p) = 0, p =,..., 00 oraz waruek początkowy x k( 0), k =,..., 0 zdefoway jako wartość pseudolosowa o rozkładze rówomerym a przedzale [0,.5]. Sygał wejścowy lowego systemu powtarzalego jest sekwecją sygałów pseudolosowych o rozkładze rówomerym a przedzale [0,]. Na rys. 3 przedstawoo odpowedź zdetyfkowaego p systemu powtarzalego a zaday sygał wejścowy ( ) u k..5 y k (p) 0.5 0-0.5-0 5 0 5 0 0 00 80 60 40 k p Rysuek 3. Odpowedź zdetyfkowaego systemu powtarzalego a zaday sygał p u k wejścowy ( ) Na komputerze z procesorem Geue Itel CPU T300 @,66GHz, 5 MB RAM, algorytm podprzestrze potrzebował 80 ms w celu detyfkacj ezaego procesu powtarzalego dla sekwecj sygałów pomarowych o długośc 000, podczas gdy algorytm błędu predykcj potrzebował 4,488 s. Długość pasa zwększao od 00 do 0000

Aalza złożoośc oblczeowej algorytmów detyfkacj lowych procesów powtarzalych 83 dokoywao pomaru czasu, w jakm wykouje sę zmodyfkoway algorytm N4SID (rys. 4) oraz zmodyfkoway algorytm MOESP (rys. 5). s gdze: s sekudy, lczba pomarów Rysuek 4. Wykres empryczej złożoośc oblczeowej dla zmodyfkowaego algorytmu N4SID Rysuek 5. Wykres empryczej złożoośc oblczeowej dla zmodyfkowaego algorytmu MOESP

84 Domk Kujawa 7. Wosk Zapropoowae modyfkacje algorytmów detyfkacj systemów powtarzalych opartych a metodach podprzestrze wykorzystują sekwecję sygałów wejścowych u k ( ) wyjścowych y k ( ) z beżącego pasa sekwecję sygałów wyjścowych p p y k ( p) z poprzedego pasa do oblczeń macerzy rzędu systemu powtarzalego. Złożoość oblczeowa algorytmu MOESP jest mejsza ż algorytmu N4SID. Metody podprzestrze detyfkują przykładowy proces powtarzaly około 000 razy szybcej ż metody błędu predykcj. Oblczea złożoośc algorytmów mogą być użytecze w wyborze szybkego wykorzystującego mejsze zasoby algorytmu detyfkacj e tylko dla stacjoarych lowych procesów powtarzalych ale także dla procesów, których dyamka zmea sę skokowo z pasa a pas. Bblografa [] E. Rogers, K. Galkowsk, D. H. Owes: Cotrol Systems Theory ad Applcatos for Lear Repettve Processes, Sprger, 007. [] T. Katayama: Subspace methods for system detfcato, Sprger, 008. [3] A. Chuso, G. Pcc, Some algorthmc aspects of subspace detfcato wth puts, It. J. Appl. Math. Comp. Sc., 00, Vol., No., 55-75, 00. [4] P. Va Overschee, B. De Moor: Subspace Idetfcato for Lear Systems: Theory, Implemetato, Applcatos. Kluwer Academc Publshers, Belgum, 996. [5] M. Brad: Subspace mappgs for mage sequeces, MERL, Massachusetts, 008. [6] L. Ljug, System Idetfcato: Theory for the User (d ed.), Pretce Hall, 999.

Modelowae produkcj za pomocą dagramów aktywośc UML α-sec a przykładze obudowy separatora olejowego Ageszka Lasota Uwersytet Zeloogórsk, Wydzał Elektrotechk, Iformatyk Telekomukacj Abstract: I ths artcle we show reasos of usg the UML actvty dagrams for modelg producto processes. Structure of the producto processes ad UML actvty dagrams s smlar to structure of α-ets, ad that s why trasformato s possble betwee them. Cooperato betwee mechacal ad computer egeers whle modelg ad verfcato of producto processes demostrates that stubbor set method ad Adre method are useful for aalyss. The proposed approach s llustrated the paper by aalyss of a ol separator box producto process. Keywords: α-ets, Petr ets, actvty dagrams, UML, producto process, trasformato. Wprowadzee Zastosowae przyjazego dla projektata języka modelowaa UML oraz sec Petrego pozwalających a weryfkację formalą projektowaych procesów produkcyjych ma a celu połączee dwóch metod, czyąc tym samym prostszą współpracę pomędzy formatykam mechakam. Zapropoowae podejśce pozwol właśe a usprawee modelowaa tych procesów kooperację dzałań a różych płaszczyzach modelowaych procesów produkcyjych ezależe od lośc uczestków procesu. Dagram aktywośc UML (Ufed Modelg Laguage) zapoczątkoway w 997 roku pozwala w sposób obektowy przedstawć proces produkcyjy opsay specyfkacją techologczą. Zapropoowae w artykule metody aalzy sec Petrego, sec które zastały w formatyce już w latach 60, pozwalają określć czy seć jest dobrze zbudowaa. Metoda upartych zborów wprowadzoa przez A. Valmar ego pozwala za pomocą zredukowaego grafu osągalośc określć poprawość sec. Opsaa w [] metoda redukcj Adre pozwala a stotą kompresję sec w celu jej aalzy. Modułem łączącym przedstawoe fukcjoalośc jest przyjęta zasada trasformacj α-dagramów aktywośc a α-sec. W artykule rozpatrzoe zostaą motażowe procesy produkcyje, jedakże prezetowaa metodologa może zaleźć zastosowae w pozostałych procesach produkcyjych co będze przedmotem odrębych badań. Sekcja druga ejszego artykułu staow wprowadzee w podstawy teoretycze defujące kluczowe zagadea w obszarze tematu. Metodologa realzacj przyjętej kocepcj została przedstawoa w sekcj trzecej. Praktycza mplemetacja została przeprowadzoa a przykładze procesu produkcyjego obudowy separatora olejowego - sekcja czwarta. Sekcja pąta poddaje aalze uzyskae w wyku eksperymetu rezultaty. Podsumowae zostało zawarte w sekcj szóstej. Metody Iformatyk Stosowaej, r /00 (3), s. 85-96 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

86 Ageszka Lasota. Podstawy teoretycze.. Proces produkcyjy Proces produkcyjy rozumay jest jako suma wszystkch dzałań wykoywaych w celu wytworzea gotowego wyrobu z materałów, półfabrykatów, częśc lub zespołów. Na etape modelowaa procesu produkcyjego cąg operacj ezbędych do wytworzea w sposób zautomatyzoway gotowego produktu opsay jest za pomocą specyfkacj techologczej, rysuku złożeowego rysuków wykoawczych. Do zamodelowaa procesu produkcyjego stote jest zaplaowae m.. takch operacj jak: proces techologczy, dzałaa pomoccze, trasport, magazyowae, kotrolę, koserwację. Proces produkcyjy realzoway jest w sposób współbeży oraz sekwecyjy. Jeżel zacza część podprocesów da sę przedstawć w sposób rówoległy to jedak zawsze pozostae pewe obszar dzałań, który wymaga realzacj w sposób sekwecyjy... α-sec Przez seć Petrego Σ=(P,T,F,M 0 ) rozumemy uporządkowaą czwórkę składająca sę z: skończoych zborów mejsc P trazycj T, gdze loczy zboru mejsc przez zbór trazycj staow zbór pusty (P T= ), relacj będącej podzborem sumy loczyów kartezjańskch mejsc trazycj F (P T) (T P), zakowaa początkowego M 0. W poszczególych mejscach sec mogą zajdować sę zaczk azwae zakowaem sec. Sta sec jest fukcją odwzorowującą zbór lczb aturalych wraz z zerem a skończoym zborze mejsc sec M:P N {0}. Tym samym, jeżel w daym mejscu zajduje sę co ajmej jede zaczk to take mejsce azywa sę ozakowaym. Jeżel każde mejsce wejścowe trazycj będze zawerało jede zaczk ozacza to, że trazycja jest aktywa może zostać zrealzowaa. Realzacja trazycj astępuje poprzez zabrae zaczka z każdego z mejsc wejścowych przekazae zaczka do każdego z mejsc wyjścowych trazycj. Wag wszystkch łuków są rówe jede. Jedak, jeżel dochodz do sytuacj, że w daym zakowau żada trazycja e jest aktywa ozacza to, że wystąpło zakleszczee. Seć Petrego azwaa jest α-secą jeżel w zakowau początkowym zajduje sę dokłade jede zaczk a dowole dwa mejsca sec, które mają wspólą trazycję wyjścową mają rówe zbory trazycj wyjścowych, tj. p P,p P : (t p, t p )=> (p = p ) [][3][4][8]. Jeżel w każdym z osągalych zakowań żade mejsce e zawera węcej ż jede zaczk ozacza to, ż seć jest bezpecza. Tabela. Gramatyka podzboru sec Petrego Nazwa kompoetu α-sec Mejsce Trazycja Symbol grafczy Łuk

Modelowae produkcj za pomocą dagramów aktywośc UML α-sec a przykładze 87 Jeżel dla każdej trazycj, z każdego osągalego zakowaa ze zakowaa początkowego, osągale jest zakowae, w którym trazycja może zostać zrealzowaa ozacza to, ż seć jest żywa a gdy zakowae początkowe jest osągale z każdego osągalego zakowaa to taka seć jest powtarzala. Gdy α-seć jest żywa, bezpecza powtarzala to taką seć azywa sę secą dobrze zbudowaą [4]. Proces produkcyjy, rozumay jako uporządkoway zestaw celowych dzałań wykoywaych w toku produkcj, moża przedstawć za pomocą α-sec jako dwudzely skeroway graf, w którym mejsca trazycje staową możlwe rodzaje werzchołków. Należy przyjąć, ż trazycje reprezetują zdarzea a mejsca reprezetują stay... Metody aalzy α-sec Propoowae są dwe metody aalzy α-sec: metoda upartych zborów oraz metoda redukcj Adre dzęk czemu możlwa jest formala weryfkacja α-sec a poprawość strukturalą. Metoda upartych zborów została zapropoowaa do aalzy sec przez A. Valmar ego a zastosowaa do aalzy α-sec przez A. Karatkevch a. Zborem upartym określamy zbór trazycj Ts w zakowau M w którym eaktywe trazycje mają take eozakowae mejsca wejścowe, że wszystke wejścowe trazycje mejsca ależą do zboru trazycj sec, dodatkowo żada aktywa trazycja sec e ma wspólych mejsc wejścowych spoza zboru T S aktywych lub eaktywych trazycj sec, jedocześe zbór uparty trazycj zawera aktywą trazycję [7]. Aalza sec przeprowadzoa za pomocą metody upartych zborów odbywa sę symulując realzację aktywych trazycj, które są w upartym zborze w wyku czego powstaje zredukoway graf osągalośc. Nejedokrote zbudowae pełego grafu osągalośc rozbudowaych sec staow duży problem e wspomając już o jego aalze. Metoda upartych zborów pozwala a kostrukcję zredukowaego grafu osągalośc a podstawe którego możlwe jest wykryce wszystkch zakleszczeń lub stwerdzee ch braku [7]. Osągęte rezultaty badań przez Karatkevch a wykazały, ż zastosowae metody Valmar ego pozwala stwerdzć, że jeżel zredukoway graf osągalośc jest sle spójy zawera węcej ż jede werzchołek to α-seć jest sle spója. Ostatą właścwoścą zredukowaego grafu osągalośc w stosuku do α-sec, wskazaą przez Karatkevch a jest fakt, ż jeżel zawera o zakowae, z którego e jest osągale żade zakleszczee to tym samym peły graf osągalośc α-sec zawera take zakowae [4]. Metoda Adre jest metodą doskoale radzącą sobe z zagadeem redukcj podsec sekwecyjych. Zapropoowaa w pracy zasada redukcj α-sec jest zgoda z metodą zapropoowaą przez Adre a zastosowaą przez Karatkevch a [4]. Formala weryfkacja pod kątem poprawośc strukturalej jest możlwa dzęk zastosowau metod zredukowaej przestrze staów. Polega a zastąpeu sekwecyjej częśc sec przez makromejsce. Makromejsca przedstawoe są przez składowe spóje grafu powstałe po usuęcu trazycj z jedym wejścem jedym wyjścem. Makrosec zawerają wyłącze trazycje welowejścowe welowyjścowe oraz makromejsca typu automatowego [] [3]. Zastosowae metody pozwala sprawdzć, czy aalzowaa seć jest dobrze zbudowaa..3. α-dagramy aktywośc UML α-dagram aktywośc składa sę z kompoetów podzboru dagramu aktywośc, które zostały określoe zgode z zapotrzebowaem a poszczególe kompoety dagramu pozwalające a modelowae procesów produkcyjych. Wyodręboy podzbór dagramu

88 Ageszka Lasota aktywośc azway został α-dagramem aktywośc. W dagrame czyośc przedstawae są w postac zaokrągloych prostokątów. Każda czyość może być prosta jak róweż złożoa oraz zageżdżoa tz. być wyrażoa w sposób herarchczy. Czyośc mędzy sobą połączoe są za pomocą skerowaej strzałk przepływu. Nezbędym do rozpoczęca realzacj procesu jest wskazae węzła początkowego a do jego zakończea zastosowae węzła końcowego. Procesy współbeże w dagrame realzowae są za pomocą wskazaa początku procesów współbeżych trazycją rozgałęzee (fork) ch końca trazycją złączee (jo). Przejśce do realzacj astępej czyośc astępującej po realzacj procesów współbeżych możlwe jest, gdy trazycję złączee osągą wszystke w ej występujące procesy [6]. Tabela. Gramatyka podzboru dagramu aktywośc języka modelowaa UML Nazwa kompoetu α-dagramu aktywośc Czyość Symbol grafczy Przepływ Węzeł początkowy Węzeł końcowy Rozgałęzee / Złączee Decyzja 3. Metodologa Aalza specyfkacj procesu produkcyjego w omawaym przypadku została ograczoa wyłącze do grafczo-tekstowej formy. Odwzorowae podzboru dagramu aktywośc UML α-dagramu aktywośc, przydatego w modelowau procesów produkcyjych astępuje a podzbór sec Petrego tj. α-sec a podobeństwo strukturale :. Przedstawoy a rysuku model strukturaly pozwala określć dzedzę odwzorowaa procesu zamodelowaego za pomocą UML trasformowaego a seć Petrego dzęk sematyczemu podobeństwu wskazaych podzborów procesów produkcyjych. Z założea każdy proces produkcyjy określoy zostae a zborze kompoetów opsujących α-dagram aktywośc lustrujący czyośc, będący podzborem zormalzowaego języka UML. Rysuek. Model strukturaly przedstawający dzedzę odwzorowaa Ograczee języka modelowaa UML do wybraych kompoetów dagramu aktywośc ma a celu zapewee jak ajdalej dącego podobeństwa do struktury α-sec. Zdefowae w te sposób wystarczająco duże podzbory pozwolły określć gramatykę zborów ezbędą do automatyczej trasformacj. Struktura UML zawera trazycje typu fork jo oraz trazycje realzowae w sposób sekwecyjy, w zwązku z czym odpowadająca

Modelowae produkcj za pomocą dagramów aktywośc UML α-sec a przykładze 89 jej seć ależy do klasy free choce z jedym zaczkem w zakowau początkowym, tj. α-seć. Jako dzedzę sec Petrego w aalzowaej przestrze traktujemy podzbór: α-sec. Struktura procesu produkcyjego odpowada strukturze α-sec, poeważ wększość operacj moża podzelć a blok sekwecyje lub a blok rówoległe. W perwszej faze projektowaa zakłada sę, że część podprocesów może być realzowaa w sposób rówoległy. To, jaka część procesu może być realzowaa w sposób współbeży zależe jest od welu czyków, do których zalczae są m..: dostępość maszy, dostępość zasobów ludzkch czy wskazaa techologcze. Brak logczego zwązku chroolog pomędzy plaowaym operacjam może zakłócć poprawość realzacj procesu. Wychwycee ewetualych błędów (p. zakleszczeń) a etape plaowaa zacząco obży koszty wdrożea produkcj. Do przeprowadzea weryfkacj poprawośc projektowaego procesu produkcyjego, pod względem poprawośc strukturalej koecze jest potwerdzee faktu, ż daa seć jest dobrze zbudowaa. Zapropoowaa metodologa projektowaa łączy ezależe dzedzy wedzy mechakę formatykę w zwązku z czym ezbęda jest elmacja ewetualych błędów strukturalych wykających mplemetowaa operacj a różych pozomach abstrakcj. Efektem uzyskaego podobeństwa α-dagramów aktywośc do procesów produkcyjych a tym samym do α-sec jest możlwość wykorzystaa metod aalzy α-sec do weryfkacj procesów produkcyjych. 3.. Aalza procesów produkcyjych metodą upartych zborów Zredukowaa struktura sec pozwala zaoszczędzć czas, który zostałby pośwęcoy a aalzę m.. poprzez ukęce przeszukwaa wszystkch osągalych zakowań. Aalza za pomocą metody upartych zborów opera sę a wyodrębeu zredukowaego grafu osągalośc kostruowaego a podstawe upartego zboru. Zapropoowaa metoda aalzy procesu dostarcza daych a temat zakładaego waratu dla realzacj daego procesu, podprocesu. Weryfkacja aktywych trazycj ależących do upartego zboru pozwala określć jakm własoścam charakteryzuje sę aalzoway proces, to czy będze realzoway poprawe czy będze powtarzaly. 3.. Zasada redukcj aalzy procesu produkcyjego metodą Adre Cąg procesu produkcyjego, posadający wyłącze jedo mejsce wejścowe jedo mejsce wyjścowe, który realzoway jest w sposób sekwecyjy ezależe od jego Rysuek. Zasada redukcj sekwecyjego procesu produkcyjego

90 Ageszka Lasota długośc zastępoway jest poprzez makromejsce. Zasada tożsamego zapsu obowązuje do mometu, aż w procese produkcyjym wystąpą trazycje welowejścowe lub welowyjścowe co zostało a rysuku. Powstały w te sposób rówoważy proces produkcyjy zawera trazycje welowejścowe welowyjścowe oraz makromejsca. 4. Praktycza mplemetacja Bodźcem do zamodelowaa procesu produkcyjego obudowy separatora olejowego stała sę potrzeba zrozumea realzacj tego procesu w rzeczywstośc. Źródłem formacj o procese była dokumetacja techologcza operająca sę o specyfkację techologczą, rysuk wykoawcze, rysuek złożeowy oraz waruk techologcze procesu. Wyk realzacj procesu produkcyjego z elemetów przedstawoych a rysuku 4, w celu zobrazowaa został przedstawoy a rysuku 3. Nezbędym do uzyskaa rezultatu końcowego była realzacja poszczególych elemetów obudowy separatora w postac podprocesów zbudowaych ze składowych. Rysuek 3. Obudowa separatora olejowego w rzuce dyamczym Rysuek 4. Obudowa separatora olejowego Realzując zamodeloway proces ależy określć osoby, które są odpowedzale za poszczególe z dzałań, co staow uzupełee do treśc przekazaych za pomocą dagramów aktywośc wskazując odpowedzalość obektów w procese. Zgode z przyjętą metodologą perwszym krokem do zobrazowaa procesu produkcyjego za pomocą da-

Modelowae produkcj za pomocą dagramów aktywośc UML α-sec a przykładze 9 gramów aktywośc UML jest określee poszczególych czyośc składających sę a każdy podproces w wyku których astąp realzacja procesu końcowego (rys. 5). Przedstawoy za pomocą UML proces produkcyjy wszystke jego podprocesy poddawae są trasformacj a α-seć (rys. 6). Po trasformacj dagramu aktywośc a α-seć, seć jest poddawaa aalze matematyczej z wykorzystaem metod redukcj. W perwszej kolejośc, dla porówaa zobrazowaa oszczędośc czasu z wykorzystaem wskazaej metody, budoway jest peły graf osągalośc (prezetoway przykład jest stosukowo mało rozbudoway). Następe tworzoy jest zredukoway graf osągalośc (rys. 7) a podstawe, którego dokoywaa jest aalza sec. Pobrae elemetów -3 z magazyu Przyspawać elemet z elemetem Przyspawać elemet z elemetam, Przyspawać elemet z elemetem Przyspawać elemet z elemetam, Przyspawać elemet 7 do elemetu 3 Przyspawać elemet 5 pomędzy elemetam Przyspawać elemet 6 do elemetu 3,7 Przyspawać elemet 4 pomędzy elemetam Przyspawać elemet 3 do elemetów Przyspawać elemet do elemetu,3 Przyspawać elemet do elemetu,3 Wywercć otwór Wywercć otwór Przyspawać elemet 9 pomędzy elemetam 3,4 Przyspawać elemet 9 pomędzy elemetam 3,4 Przyspawać elemet 3 do elemetu 6 Przyspawać elemet 3 do elemetu 6 Przygotować betoowy kręgu dla separatora Przyspawać elemet 8 do elemetu 6 zachowując dystas pomędzy elemetem 5 Przyspawać elemet 8 do elemetu 6 zachowując dystas pomędzy elemetem 5 Zamocować wspork 0 w betoowym kręgu Zamocować wspork 0 w betoowym kręgu Kotrola spo Kotrola szczelośc Przytować kostrukcję separatora do wsporków 0 Rysuek 5. Realzacja procesu produkcyjego obudowy separatora olejowego przedstawoa za pomocą α-dagramu aktywośc UML α-sec

9 Ageszka Lasota 3,5,7 7 9,0, 8,0, 4,5,7 6 9,, 4,7 4,6,7 5 9,,3,4 4,6 9,7 4,5 0,7 0,8,5 3,5 Rysuek 6. Peły zredukoway graf osągalośc α-sec procesu produkcyjego obudowy separatora olejowego Rysuek 7. Zakres przeprowadzoej redukcj α-sec procesu produkcyjego obudowy separatora olejowego

Modelowae produkcj za pomocą dagramów aktywośc UML α-sec a przykładze 93 Rysuek 8. Dagram aktywośc produkcj elemetu obudowy separatora olejowego Rysuek 9. Peły graf osągalośc α-sec elemetu obudowy separatora olejowego Rysuek 0. Zredukoway graf osągalośc α-sec elemetu obudowy separatora olejowego Rysuek. Makroseć tożsama jej α-seć produkcj elemetu obudowy separatora olejowego

94 Ageszka Lasota Rysuek. Dagram aktywośc podprocesu wycaa składowych elemetu Rysuek 3. Zredukoway graf osągalośc α-sec rówoważy pełemu grafu produkcj podprocesu wycaa składowych elemetu Rysuek 4. α-seć podprocesu wycaa składowych elemetu jej wdok po dokoaej redukcj Rówolegle przeprowadzaa jest redukcja α-sec (rys. 8) metodą Adre. Uzyskae wyk pozwalają określć własośc sec pomjając pracochłoe czasochłoe aalzy pełej sec. Zestawee wyków przeprowadzoej redukcj przedstawa tabela 3.

Modelowae produkcj za pomocą dagramów aktywośc UML α-sec a przykładze 95 Aalogcze dzałaa wykazae zostały a przykładze jedego z podprocesów przedstawającego realzację produkcj elemetu obudowy separatora olejowego (Rys. 8-4). 5. Rezultaty W prezetowaym przykładze α-sec, będące podklasą sec Petrego, obrazujące przebeg procesu produkcyjego obudowy separatora olejowego zostały poddae aalze z wykorzystaem metody upartych zborów oraz metody Adre. Zapropoowae podejśce operające sę o trzy główe krok: reprezetację procesu produkcyjego za pomocą języka modelowaa UML, trasformację dagramów aktywośc języka UML a sec Petrego oraz formalą weryfkacje aalzę sec, umożlwło waratowae modelowaego procesu. W wyku przeprowadzoych badań zostało wykazae, ż dokoae mplemetacje procesów to sec żywe, bezpecze oraz e jest osągale żade zakleszczee. Uzyskae rezultaty potwerdzły zasadość stosowaa metody upartych zborów do α-sec a tym samym do aalzy procesów produkcyjych mplemetowaych za pomocą α-dagramów aktywośc UML. Tożsame rezultaty dotyczące poprawośc badaej sec zostały uzyskae metodą redukcj Adre. Tabela 3 dodatkowo prezetuje różce, jake występują w akładze pracy wymagaym do podjęca aalzy w zależośc od obraego toku metody postępowaa. Różce w lośc mejsc sec poddawaych aalze w wększośc przypadków przekraczają połowę. Z otrzymaych wyków wdać, ż w metodze Adre ajwększą efektywość redukcj dostrzega sę, gdy proces realzoway jest w sposób sekwecyjy, atomast metoda upartych zborów korzystejsza jest w przypadku wększej lośc procesów rówoległych. Tabela 3. Porówae efektów redukcj aalzy w zależośc od wskazaej metody Nazwa procesu Ilość mejsc α-sec Ilość mejsc sec metodą redukcj Adre Peły graf osągalośc Zredukoway graf osągalośc Obudowa separatora olejowego 7 5 34 Elemet 5 9 6 0 Składowa elemetu 6 37 9 6. Wosk Wyk realzacj procesu produkcyjego, w celu zobrazowaa został przedstawoy za pomocą α-dagramu aktywośc, α-sec oraz został podday aalze za pomocą metody upartych zborów oraz metody Adre. Nezbędym jest by modelowae procesy produkcyje za pomocą dagramów aktywośc UML posadały pełą dokumetację techologczą, poeważ przedstawoy model e jest odzwercedleem modelowaego obektu, lecz jego obrazem, który pozwala pozać ajstotejsze elemety procesu produkcj. Dagramy aktywośc skupają sę a opse procesu, w którym uczestczy wele obektów procesu bez wskazywaa, jake są możlwe stay tych obektów. Zapropoowaa metoda specyfkacj rzeczywstego procesu produkcyjego oraz aalzy jego modelu pozwala uzyskać obraz jego realzacj uzyskać formację co do jego poprawośc. Metody aalzy α- sec są odpowedm aparatem matematyczym do weryfkacj poprawośc realzacj procesów produkcyjych ze względu a adekwatość strukturalą procesów produkcyjych do dagramów aktywośc a tym samym do α-sec. Nezbędym do przeprowadzea pełej aalzy zapropoowaej metody jest określee jej efektywośc. Iterdyscyplare podej-

96 Ageszka Lasota śce do problemu arzucło koeczość wskazaa formalych eformalych kryterów efektywośc co będze objęte szczegółową aalzą w przyszłośc. Wstępe rozpozae adekwatośc weryfkacj pod kątem efektywośc zapropoowaej metody ze względów formalych wskazało, ż takm kryterum odpowedm będze czas. Jako eformale kryterum uzaa została przejrzystość czytelość specyfkacj a poszczególych pozomach abstrakcj oraz łatwość modelowaa. Modelowae z wykorzystaem UML PN róż sę fukcjoaloścam możlwoścam, ale oba język modelowaa mogą opsywać procesy produkcyje poeważ α-sec posadają strukturę podobą do α-dagramów aktywośc w opse mplemetacj. Łącze zastosowae UML PN pomaga prototypować, tegrować modelowae procesów produkcyjych je weryfkować. Bblografa [] Baaszak Z., Kuś J., Adamsk M., Sec Petrego. Modelowae, sterowae syteza systemów dyskretych, Zeloa Góra: Wydawctwo Wyższej Szkoły Iżyerskej, 993. [] Karatkevch A., Aalza współbeżych systemów dyskretych: zbory uporczywe vs. symulacja współbeża, Przegląd Elektrotechczy, r 7, ss. 8-84, 009. [3] Karatkevch A., Zagadea redukcj podsec automatowych w secach Petrego, Przegląd Telekomukacyjy Wadomośc Telekomukacyje, r 6, ss. 806-808, 008 (V koferecja aukowa KNWS'08). [4] Karatkevch A., Dyamc Aalyss of Petr Net-Based Dscrete Systems. Berl Hedelberg New York: Sprger LNCIS (356), 007. [5] Spter Staes T., Iutve Mappg of UML Actvty Dagrams to Fudametal Modelg Cocept Petr Net Dagrams ad Colored Petr Net, 5th Aual IEEE Iteratoal Coferece ad Workshop o the Egeerg of Computer Based Systems, ECBS 008, pp. 9-00. [6] "UML Superstructure Specfcato v.0, OMG, 005, http://www.omg.org/docs/formal/05-07-04.pdf [7] Valmar A., State of the Art Report: STUBBORN SETS. Petr Net Newsletter, r 46, ss. 6 4, 994. [8] Zakrevskj A., Hgh-level desg of logcal cotrol devces. Zakrevskj A. (ed.) Thrd Iteratoal Coferece Computer-Aded Desg of Dscrete Devces, Natoal Academy of sceces of Belarus, Msk, ss. 3-8, 999.

Budowa globalej macerzy sztywośc w metodze elemetów skończoych z zastosowaem procesorów welordzeowych Grzegorz Mchalsk, Norbert Sczygol Poltechka Częstochowska, Istytut Iformatyk Teoretyczej Stosowaej Abstract: Ths paper presets the results of research cocerg a sequetal ad parallel mplemetato of a global (for the whole aalysed rego) stffess matrx used the fte elemets method. The smulatos were executed o varous hardware ad software platforms. The parallel calculatos were made o AMD ad Itel multcore processors (CPUs), as well as o the TESLA C060 ad Vda GeForce GTX 60 GPUs. The research results preseted ths paper clude matrx buld tmes ad the rate of performace for programs operatg o varous platforms. The applcato was mplemeted o the CPUs usg the C laguage (sequetal verso) ad C cojucto wth opemp terface (parallel verso). The GPU verso was bult usg CUDA v.. The smulatos were coducted for the ssue of lear elastcty for D areas. Calculatos were made for fte elemet meshes of varous szes, ragg from several doze to several thousad odes. Comparatve results were obtaed a 64-bt Lux evromet (Archlux x64.) The paper presets the archtecture of graphcs systems ad the data processg model used graphcs processors, as well as the method of buldg a global stffess matrx. The last part of the paper presets the results of the coducted smulatos ad the coclusos draw from those results. Keywords: global stffess matrx, graphcs processors, CUDA, lear elastcty. Wstęp Kocepcja wykorzystaa układów grafczych do oblczeń jest zaa od welu lat. W ostatm czase tesywy rozwój procesorów grafczych oraz zmaa dotychczasowej archtektury wektorowej a zufkowaą, umożlwły efektywe wykorzystae oferowaego przez e potecjału. Moc oblczeowa dostarczaa przez GPU zwększa sę zacze szybcej ż w przypadku CPU. Na rysuku przedstawoo wzrost mocy oblczeowej procesorów grafczych w odeseu do procesorów CPU a przykładze Itela. Frma Vda opracowała techologę CUDA (ag. Compute Ufed Devce Archtecture), atomast ATI/AMD dla swoch układów udostępła środowsko CTM (ag. Close To Metal) bazujące a Brook. Vda z techologą CUDA, bazującą a terfejse języka C, zdomowała ryek układów grafczych dla oblczeń. Dotychczas programśc chcący wykorzystać potecjał kart grafczych korzystal z uwersalego API umożlwającego ograczoą komukację z pamęcą GPU oraz wysyłae strukcj do procesora GPU. Najpopularejsze API to DrectX oraz OpeGL, które umożlwają mplemetacje w różych językach programowaa []. Następcą CUDA jest OpeCL, owe heterogocze środowsko programstycze, zapewające efektywe wykorzystae zasobów systemo- Metody Iformatyk Stosowaej, r /00 (3), s. 97-04 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

98 Grzegorz Mchalsk, Norbert Sczygol wych (CPU, GPU). Specyfkacja OpeCL została stworzoa przez kosorcjum Khroos Group, w skład którego wchodzą mędzy ym: ATI/AMD, Vda, Itel. 400 Wydajość [GFlop/s] 00 000 800 600 400 00 0 003 004 005 006 007 008 009 Lata NVIDIA GPU Itel CPU Rysuek. Wzrost mocy oblczeowej GPU (Vda) w odeseu do CPU (Itel). Archtektura układów grafczych Procesory grafcze z ser GT00 (TESLA C060 oraz GeForce 60) zbudowae są z 40 zufkowaych jedostek przetwarzających (ag. stream procesor SP, procesor strumeowy), taktowaych z częstotlwoścą,3 GHz, pogrupowaych w blok ośmoelemetowe zwae multprocesoram. W zależośc od rodzaju karty grafczej korzystającej z tego rodzaju procesora część multprocesorów może być eaktywa. Każdy procesor SP umożlwa jedoczese wykoae w jedym cyklu operacj MADD (możee dodawae) oraz MUL (możee), czyl trzech operacje zmeoprzeckowych a cykl []. Taka lczba operacj w jedym cyklu jest możlwa poprzez wykorzystae jedostk MAD procesora strumeowego do wykoaa operacj MUL oraz ADD w jedym cyklu, oraz dodatkowo jedostk SFU (ag. Specal Fucto Ut) do wykoaa kolejej operacj MUL w tym samym cyklu. Procesory z ser GT00 posadają dwe archtektocze postace: grafczą (ag. Graphcs Processg Archtecture) oraz oblczeową (ag. Parallel Computg Archtecture). W zależośc od trybu pracy, część elemetów układu grafczego zmea swoje przezaczee, p. pamęć tekstur, zmea sę także zasada dostępu do lokalej pamęc współdzeloej w obrębe multprocesora. Opsywae układy GPU umożlwają rówoległe wykoywae dużej lczby wątków []. Grupy wątków zebrae są w blok. W obrębe daego bloku wątk mogą ze sobą kooperować, atomast współpraca elemetów z różych bloków jest emożlwa. Układ grafczy Vda TESLA C060 oferuje teoretyczą moc oblczeową rzędu Tflopsa. Wyposażoy jest w 40 rdze, 4GB pamęc dedykowaej, wykorzystuje 5 btowy terfejs pamęc. Lczby zmeoprzeckowe podwójej precyzj są obsługwae w tym modelu sprzętowo. Poprzeda sera kart TESLA (C870) e wsperała lczb zmeoprzeckowych podwójej precyzj oraz oferowała teoretyczą moc oblczeową w gracach 500 Gflopsów.

Budowa globalej macerzy sztywośc w metodze elemetów skończoych 99 3. Model przetwarzaa daych Dzałae procesorów GPU zacząco róż sę od dzałaa procesorów CPU. Zwązae jest to z docelowym przezaczeem układów grafczych. Główym zadaem procesorów grafczych jest tworzee skomplkowaych sce (p. rederg złożoego otoczea w grach komputerowych), wymagających przetworzea w krótkm czase welu czyków (geometra, źródła śwatła, obekty scey). Zadaa take wymagają ą odmeego podejśca do sposobu przetwarzaa, ż to ma mejsce w procesorach CPU. Zasada dzałaa CPU jest zgoda z modelem przetwarzaa strukcj (ag. structo stream processg). Sche- mat tego modelu przedstawoo a rysuku a. Dae oraz strukcje przechowywae są w tej samej pamęc operacyjej, koleje rozkazy są systematycze dekodowae, a odpo- wede dae kopowae do pamęc podręczej. W przypadku procesorów GPU zastoso- wao model przetwarzaa daych (ag. data stream processg), w którym procesor wy- kouje tak sam zestaw strukcj a dużych zestawach daych. Schemat tego modelu przedstawoo a rysuku b. Na początku procesu przetwarzaa daych układ grafczy jest kofguroway do wykoaa odpowedego zestawu strukcj, w przecweństwe do poprzedego modelu przetwarzaa, w którym strukcje były przekazywae do procesora razem z daym. Następe obróbce poddaway jest strumeń daych, zgode z wcześej skofgurowaym procesorem grafczym [3,4]. Rysuek. Model przetwarzaa daych dla a) CPU, b) GPU Ta specyfcza archtektura procesorów grafczych zawęża a grupę algorytmów, które mogą efektywe wykorzystać oferoway przez e potecjał. Są m algorytmy przetwaych od sebe. Nezależość daych umoż- rzające duże zestawy daych, ajlepej ezależych lwa zaczącą mmalzację lczby strukcj sterujących oraz mechazmów sychroza- cj. Każde zastosowae tych elemetów zacząco obża wydajość oferowaą przez proe w daym czase wszystke procesory strumeowe cesory GPU. Zwązae jest to z tym, że wykoują te same strukcje. Rozgałęzae programu za pomocą strukcj warukowych powoduje przestój procesorów strumeowych, które e wykoują strukcj w daej gałę- z program. Wykoywae różych strukcj w tym samym czase przez jedostk tworzące procesor grafczy e jest możlwe.

00 Grzegorz Mchalsk, Norbert Sczygol 4. Metoda realzacj budowy globalej macerzy sztywośc Metoda Elemetów Skończoych (MES, ag. FEM, Fte Elemet Method), to metoda oblczeń umeryczych wykorzystująca dyskretyzację (podzał) obszaru a mejsze, geometrycze proste obszary, zwae elemetam skończoym. W przypadku zagadea dwuwymarowego podzałow ulega powerzcha, atomast w przypadku zagadea trójwymarowego obszar. Powerzcha może być dzeloa a elemety skończoe różego typu, przy czym ajczęścej obszar dzeloy jest a trójkąty. W przypadku zagadea trójwymarowego obszar dzeloy jest a bryły, ajczęścej a czworoścay. Każdy elemet skończoy opsay jest za pomocą określoej lczby węzłów oraz koeksj pomędzy m. W celu uzyskaa wysokej dokładośc rozwązaa elemety skończoe powy meć możlwe małe rozmary. Zmejszae rozmarów elemetów skończoych poza zwększaem dokładośc rozwązaa zwększa lczbę ewadomych w budowaym układze rówań. Wraz ze wzrostem lczby ewadomych wzrasta jedocześe czas potrzeby do rozwązaa zadaa. Dyskretyzacja rozważaego obszaru służy do przełożea modelu matematyczego zagadea a jego model umeryczy [5]. W końcowym efekce tego procesu otrzymuje sę układ rówań algebraczych (ajczęścej) lowych: = () gdze K to globala macerz sztywośc, u to wektor ewadomych, a b ozacza wektor prawych stro. Tak układ rówań ależy uzupełć o odpowede waruk brzegowe. W badaach rozważao metodę realzacj budowy globalej macerzy sztywośc z zastosowaem archtektur welordzeowych. Macerz w programe jest przechowywaa w postac macerzy rzadkej. Wybór zapsu macerzy w formace rzadkm podyktoway jest tym, ż w badaym zagadeu występuje zacząca lczba wartośc zerowych w macerzy. Przechowywae tych wartośc jest zbęde, gdyż e ulegają oe modyfkacjom w trakce oblczeń. Rysuek 3. Koeksje w satce elemetów skończoych dla wybraego elemetu

Budowa globalej macerzy sztywośc w metodze elemetów skończoych 0 Satk wykorzystae w badaach zbudowae były z lowych elemetów skończoych trójkątych. Elemety take składają sę z 3 węzłów. Dla dwuwymarowego zagadea lowej sprężystośc w każdym węźle są dwe ewadome (zagadee wektorowe). Uwzględając połączea pomędzy węzłam (koeksje) tworzącym elemet skończoy geerowaych jest 36 wartośc, które astępe są umeszczae w globalej macerzy sztywośc. Koeksje dla wybraego elemetu trójkątego przedstawoo a rysuku 3. Na rysuku ewadome w węzłach ozaczoo symbolem u z odpowedm deksem. Mejsca docelowe oblczaych wartośc wyzaczae są a podstawe umerów deksów tworzących elemet trójkąty. Część węzłów może być wspóla dla welu elemetów, dlatego w przypadku rówoległego budowaa macerzy mogą pojawć sę koflkty z dostępem do pamęc. Koflkty te są spowodowae tym, że wartośc oblczae dla tych samych węzłów w różych elemetach są akumulowae w wspólym współczyku w macerzy globalej. Na rysuku 4 przedstawoo rozmeszczee współczyków w macerzy dla dwóch elemetów posadających wspóle węzły. Strzałkam zazaczoo mejsca docelowe lokalych współczyków elemetu w globalej macerzy sztywośc. Pogruboym lam zazaczoo mejsca w macerzy globalej, w których może dojść do koflktów w dostępe do pamęc. Jedym ze sposobów elmacj koflktów w dostępe do współczyków macerzy jest zastosowae mechazmów sychrozacj. Każdy mechazm sychrozacj geeruje epotrzebe opóźea, przez co zmejsza sę wydajość. W badaym zagadeu wymagaa lczba sychrozacj spowodowałaby zwelowae pozytywych własośc procesorów welordzeowych. Rysuek 4. Rozmeszczee wartośc w globalej macerzy sztywośc

0 Grzegorz Mchalsk, Norbert Sczygol W celu lkwdacj koeczośc stosowaa sychrozacj wartośc geerowae przez koleje elemety zapsywae są w wektorze bazującym a formace CSR (ag. Compressed Sparse Row) [6]. Rozmar wektora jest rówy 36, gdze to lczba elemetów skończoych w satce. Format tego wektora przedstawoy jest a rysuku 5. Wartośc współczyków wyzaczoe dla każdego węzła zapsywae są w odpowedch komórkach wektora. Ideksy tych komórek wyzaczae są a podstawe deksu elemetu w satce: offset = 36 * e, gdze e to umer elemetu. Rysuek 5. Rozmeszczee elemetów macerzy w pamęc Tak format zapsu powoduje admarowość w alokacj pamęc, jedak jedocześe lkwduje koeczość stosowaa mechazmów sychrozacj, poeważ koleje wartośc zapsywae są ezależe od sebe. Koecze jest atomast zsumowae cząstkowych wyków, rozbtych w czase oblczeń. 5. Rezultaty badań Zaprezetowae w pracy wyk badań obejmują czasy budowy globalej macerzy sztywośc oraz wydajość dla programów dzałających a różych platformach sprzętowych. Do mplemetacj aplkacj dla procesorów CPU zastosowao język C oraz terfejs opemp. Wersję dla grafczych jedostek przetwarzających zbudowao z zastosowaem CUDA w wersj.. Symulacje przeprowadzoe zostały dla zagadea lowej sprężystośc dla obszarów D. Oblczea wykoao dla różych welkośc satek elemetów skończoych. Przedstawoo wyk dla czterech satek: lczba węzłów: 65 536, lczba elemetów skończoych: 30 050 lczba węzłów: 6 44, lczba elemetów skończoych: 5 4 lczba węzłów: 589 84, lczba elemetów skończoych: 76 578 lczba węzłów: 048 576, lczba elemetów skończoych: 093 058 Testy przeprowadzoo a dwóch kofguracjach sprzętowych:. Itel Core Quad Q9400.66GHz, 4 GB DDR, GeForce GTX 60, system operacyjy Lux x64,. AMD Pheom II X4 955 3. GHz, 6 GB DDR3, 3 x TESLA C060, system operacyjy Lux x64. Na obydwu stacjach roboczych wykoao symulacje z wykorzystaem tych samych daych wejścowych. Programy e były dostosowywae pod względem archtektury CPU (Itel/AMD), w obu przypadkach kod źródłowy aplkacj był ezmeay. Jedyą różcą w przeprowadzaych symulacjach była kofguracja sprzętowa stacj roboczych, a których prowadzoo badaa. Proces budowaa macerzy przebega aalogcze w każdym badaym przypadku. Zastosowao te sam algorytm w programe uruchamaym a welordzeowym procesorze CPU oraz a procesorze grafczym. Perwszym etapem jest wczytae formacj a

Budowa globalej macerzy sztywośc w metodze elemetów skończoych 03 temat satk elemetów skończoych, własośc materałowych oraz waruków brzegowych. Na podstawe własośc materałowych wyzaczae są wartośc tesora odkształcea lub aprężea w zależośc od badaego zagadea (płask sta odkształcea lub płask sta aprężea). Kolejym krokem jest oblczee współczyków oraz umeszczee ch w odpowedch mejscach macerzy globalej. Różce w programach pojawają sę w sposobe przydzelaa zadań zwązaych z budowaem globalej macerzy sztywośc. W przypadku opemp pętla odpowedzala za oblczea jest rówomere dzeloa pomędzy dostępe w systeme rdzee procesora CPU. Każdy z dostępych rdze procesora wykouje możlwe rówą lczbę teracj. W przypadku procesorów grafczych zadaa e są przydzelae do kokretego procesora strumeowego, tylko rozdzelae są pomędzy dostępe wątk. Lczbę dostępych wątków moża modyfkować w zależośc od potrzeb oraz złożoośc zagadea. Każdy wątek przetwarza możlwe ajmejszą lczbę elemetów. Ideks perwszego przetwarzaego elemetu (e) przez kokrety wątek wyzaczay jest a podstawe deksu wątku: usged t e = blockidx.x * blockdm.x threadidx.x; usged t offset = 36 * e * le; gdze blockidx.x ozacza umer bloku wątków, blockdm.x rozmar bloku wątków, threadidx.x deks wątku w bloku, offset to przesuęce w docelowym wektorze, a le określa lczbę elemetów skończoych przypadających a jede wątek. Marą zmejszaa sę czasu wykoywaa oblczeń w zależośc od lczby zastosowaych rdze jest przyspeszee. Wartość przyspeszea wyzaczoo a podstawe wzoru: = () gdze: S p przyspeszee, T czas oblczeń sekwecyjych a jedym procesorze [s], T czas oblczeń a rdzeach [s]. Przyspeszee dla procesorów grafczych jest wyzaczae w odeseu do procesora CPU (jako T przyjęto czas wykoaa symulacj a jedym rdzeu CPU). Wyk badań zameszczoo w tabel dla perwszej kofguracj sprzętowej oraz w tabel - dla drugej kofguracj sprzętowej. Tabela. Wyk otrzymae dla perwszej kofguracj sprzętowej Lczba CPU z zastosowaem opemp GPU CPU [s] węzłów Czas [s] Przyspeszee Czas [s] Przyspeszee 65 536 6,56 4,763,9 0,975 6,30 6 44 5,3 5,885,66 3,6056 7,0 589 84 55,05 3,95,7 6,4006 8,60 48 576 98,978 56,576,76 0,695 9,5 Tabela. Wyk otrzymae dla drugej kofguracj sprzętowej Lczba CPU z zastosowaem opemp GPU CPU [s] węzłów Czas [s] Przyspeszee Czas [s] Przyspeszee 65 536 6,3890,640,44 0,836 7,64 6 44 5,649 0,6636,40,7654 9,8 589 84 57,7630 3,85,43 5,6098 0,30 48 576 03,54 4,467,46 9,303,3

04 Grzegorz Mchalsk, Norbert Sczygol Na podstawe otrzymaych wyków moża zaobserwować zaczący wzrost przyspeszea uzyskaego dla kart grafczych w porówau do procesorów welordzeowych. Przyspeszea uzyskae dla terfejsu opemp wskazują a przewagę procesorów AMD w tego typu oblczeach, pommo słabszych wyków w wersj sekwecyjej. 6. Podsumowae Uzyskae wyk wykazują spadek czasu wykoaa badaej operacj w przypadku oblczeń realzowaych z zastosowaem procesorów grafczych. Przedstawoe w pracy rezultaty badań pozwalają zaobserwować, że zastosowae procesorów grafczych w zaczącym stopu redukuje czas wykoywaych oblczeń. Na podstawe zaprezetowaych wyków moża zauważyć, że zastosowae układów grafczych w symulacjach żyerskch pozwol a zmejszee akładów czasowych wymagaych w przypadku procesorów CPU dla tego typu zadań. Przeprowadzoe badaa pozwalają stwerdzć, że procesory grafcze zastosowae w symulacjach żyerskch mogą przyeść wymere korzyśc. Badae zagadee w zaczącym stopu speła specyfczy sposób przetwarzaa daych wykorzystay w przypadku procesorów grafczych (ag. Data Stream Processg). Bardzo duża lość daych jest przetwarzaa zestawem takch samym strukcj, jedocześe e występuje stosowae mechazmów sychrozacj, które mają egatywy wpływ a wydajość. Zastosowae procesorów welordzeowych w symulacjach wykorzystujących metodę elemetów skończoych pozwala a zwększae lczby ewadomych w układze rówań poprzez podzał obszaru a wększą lczbę elemetów skończoych bez zwększaa czasu oblczeń. Zastosowae elemetów skończoych o mejszym rozmarze ma wpływ a zwększee dokładośc otrzymaego rozwązaa. Wykorzystae procesorów oblczeń TESLA pozwala e tylko zmejszyć czas oblczeń, ale róweż jedocześe zmmalzować koszt zakupu sprzętu oferującego pożądaą moc oblczeową. Dyskusyja jest kwesta kosztów rozwoju oprogramowaa a jedak dosyć specyfczą archtekturę sprzętową. Bblografa [] J. D. Owes, D. Luebke, N. Govdaraju, M. Harrs, J. Krüger, A. E. Lefoh, ad T. J. Pur-cell, A survey of geeral-purpose computato o graphcs hardware, Computer Graphcs Forum, 6():80 3, 007. [] Techcal Bref, NVIDIA GeForce GTX 00 GPU Archtectural Overvew http://www.vda.com/docs/io/55506/geforce_gtx_00_gpu_techcal_bref.pdf [3] R. Strzodka, M. C. Doggett, ad A. Kolb, Scetfc computato for smulatos o programmable graphcs hardware, Smulato Modellg Practce ad Theory, 3(8):667 680, 005. [4] T. Dokke, T. R. Hage, ad J. M. Hjelmervk, A troducto to geeral-purpose computg o programmable graphcs hardware, Geometrc Modellg, Numercal Smulato, ad Optmzato, pages 3 6, Sprger Berl Hedelberg, 007. [5] M. Kleber (red.), Komputerowe metody mechak cał stałych, Wydawctwa Naukowe PWN, Warszawa 995 [6] J. B. Whte, P. Sadayapapa, O mprovg the performace of sparse matrx-vector multplcato, 4th Iteratoal Coferece o Hgh Performace Computg; HPC, Bagalore, Ida, 8- Dec. 997. pages 66-7, 997

Kocepcja hybrydowego systemu detekcj robaków secowych wykorzystującego metody eksploracj daych Sławomr Mka Poltechka Łódzka, Wydzał Elektrotechk, Elektrok, Iformatyk Automatyk Abstract: Iteret worms are a serous threat today s world. Most of covetoal securty systems do ot protects users from zero-day worms whch ca cause may damage. Ths artcle presets the cocept of data mg based worm detecto hybrd system. It profles the etwork traffc ad detects aomales traffc behavour. Proposed system aalyss both payload ad packet header. It frst bulds the traffc profle usg attack-free data ad ext durg detecto phase t compares ew data wth prevously created profle. Network traffc proflg s performed usg data mg techques lke statstcal aalyss, clusterg ad classfcato. Keywords: data mg, worm, aomaly detecto. Wprowadzee Atak dotąd ezaych, owych robaków secowych tzw. zero-day staową obece poważy problem użytkowków sec komputerowych. Co węcej, duża lczba wzajeme połączoych podatych a to zagrożee systemów umożlwa ch łatwe rozprzestrzeae sę w sec. Powszeche wykorzystae systemy obroy przed zagrożeam secowym oraz techk wykrywaa ataków operają swoje dzałae a wcześej ustaloych zaych sygaturach tychże ataków. Z tego powodu e potrafą oe skutecze zapobec lub wykryć owy rodzaj ataku, czyl ezaego wcześej robaka secowego. Zaych jest wele przykładów robaków secowych, które gwałtowe rozprzestrzeają sę w sec p. Code Red, Slammer lub Cofcker. W kosekwecj bardzo szybko fekują szczą koleje systemy powodując często zacze straty fasowe. Isteją dwa podejśca stosowae w secach komputerowych, a których bazują systemy wykrywaa zapobegaa włamaom [3]. Perwsze opera sę a wykorzystau sygatur zaych ataków. Bezpeczeństwo w tym przypadku jest główe uwarukowae aktualoścą wykorzystaej bazy zaych ataków oraz szybkoścą detyfkowaa owych zagrożeń przez ekspertów, którzy rozpozają owe atak. Główą zaletą tych systemów jest wysoka skuteczość wykrywaa zaych zagrożeń. Z drugej stroy e potrafą oe wykrywać ezaych dotąd ataków. Druge podejśce opera sę a wykorzystau techk, które detyfkują atak bazując a wykrywau odchyleń względem ustaloego proflu sec, a reprezetującego jej typową oczekwaą aktywość [3]. Wększość systemów bazujących a detekcj odchyleń od ustaloego proflu ruchu secowego wykorzystuje techk eksploracj daych metody odkrywaa wedzy w celu zwększea swojej wydajośc efektywośc [4]. Techk eksploracj daych służą jako skutecze arzędze do wydobyca ukrytych zależośc w zborach daych dlatego staową często rdzeń badań. Iym słowy dzęk techkom data mg możlwe jest Metody Iformatyk Stosowaej, r /00 (3), s. 05-5 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

06 Sławomr Mka utworzee szczegółowego opsu sec. Co węcej, pozwalają oe a ujawee ukrytych zależośc współzależośc, które bez użyca tychże techk byłyby trude do wykryca. W artykule został zapropooway model hybrydowego sytemu wykrywaa robaków secowych wykorzystujący metody eksploracj daych tzw. data mg. Take podejśce motywowae jest prześwadczeem, że kombacja różych techk eksploracj daych zwększa falą skuteczość systemu. Dzałae modelu opera sę a początkowym ustaleu proflu sec, a astępe w faze detekcj wykrywau wszelkch odchyleń od typowego ruchu secowego. Należy zazaczyć, że w opsywaym przypadku system będze aplkacją komputerową. Powszeche propoowae są dwa sposoby wykorzystaa detekcj odchyleń od ormalego proflu ruchu secowego. Perwszy berze po uwagę agłówk paketów oraz wszelke dodatkowe formacje charakteryzujące ruch secowy take jak zaczk czasowe, lość przesłaych daych, szybkość trasferu daych, td. Jedak w ogóle e bada payload u. Zupełe przecwą grupę systemów reprezetuje aalza wyłącze daych użytkowych esoych przez pakety. Obece systemy wykrywaa truzów w secach komputerowych bazują w zdecydowaej wększośc tylko a jedym, wybraym podejścu. Kocepcja systemu przedstawoa w tym artykule bazuje a obu wymeoych techkach. W rezultace oczekuje sę zwększea dokładośc dzałaa systemu. Wyka to z tego, że atak robaków secowych wążą sę z dostarczaem złych daych, dlatego dokłada aalza daych esoych przez pakety jest bardzo waża. Ne ależy jedak zapomać, że robak secowe dążą do rozprzestrzeaa sę w sec, dlatego aalza agłówków jest rówe stota co aalza daych paketów. Zwązae jest to z geerowaem dodatkowego ruchu secowego przez propagujące robak teretowe, który często e pokrywa sę z ustaloym wcześej proflem []. Idea połączea klku klasyfkatorów w jedym modelu, w celu zwększea jego efektywośc, e jest podejścem całkowce owym. Przykładowo w pracy [5] zaprezetoway jest system operający sę a trzech metodach: awym klasyfkatorze Bayes a, sec euroowej oraz algorytme k-ajblższych sąsadów. Mmo to prezetoway w artykule system wyróża sę ze względu a tegracje w obrębe systemu techk aalzy agłówka oraz payload u paketów. Dodatkowo w celu zwększea dokładośc wykrywaa truzów łączy o w obszarze aalzy agłówków paketów dwe grupy techk eksploracj daych tj. grupowae oraz klasyfkacje.. Model systemu Propooway model systemu w celu określea proflu ruchu secowego używa zarówo agłówka jak daych użytkowych esoych przez pakety. Mechazm wykrywaa ataków robaków secowych opera sę a wykorzystau wcześej ustaloego proflu ruchu secowego. W kosekwecj algorytmy wykrywaa eprawdłowośc odchyleń od typowego proflu sec pracują w dwóch fazach: faze uczea faze detekcj. W faze uczea typowy ormaly ruch secowy jest obserwoway odpowede techk uczące, dedykowae właścwym metodom aalzy, pozwalają zbudować odpowed profl. Z kole w faze detekcj, ruch secowy jest porówyway z ustaloym wcześej proflem każde odchylee od ormalego zachowaa sę sec jest traktowae jako sytuacja eprawdłowa.

Kocepcja hybrydowego systemu detekcj robaków secowych wykorzystującego 07 Rysuek. Model systemu wykrywaa ataków robaków secowych Na rysuku przedstawoo model systemu wykrywaa ataków robaków teretowych. Ruch secowy jest stale motoroway, a koleje pakety IP są fltrowae wstępe obrabae w faze przygotowaa daych. Na tym etape w ramach każdego paketu wyodrębay jest agłówek dae użytecze esoe w częśc daych paketu. Następe podczas wyboru atrybutów, poddawae są oe odpowedm procesom pozwalającym ostatecze uzyskać kokrete dae, które staową dae wejścowe dla odpowedch techk eksploracj daych. Dae użytkowe paketu są aalzowae z użycem aalzy -gram, która jest typową metodą statystyczą. Z kole odpowede atrybuty agłówka paketu przetwarzae są z użycem techk klasyfkacj oraz metod klasteryzacj (grupowaa). Efektem uczea wybraych techk eksploracj daych, wykorzystywaych zarówo w przypadku agłówka, jak daych użytkowych paketu, jest powstae odpowedch model określających ormaly profl ruchu secowego. W faze detekcj otrzymae uprzedo modele wykorzystywae są w procesach porówaa, a astępe ch wyk przekazyway jest do bloku decyzyjego, który opera sę a modelu probablstyczym awym klasyfkatorze Bayes a. Należy zazaczyć, że a etape techk eksploracj daych uczee klasyfkatorów będze przebegało bez adzoru. Natomast moduł decyzyjy będze uczoy pod adzorem. Ważą cechę propoowaego systemu staow możlwość tworzea proflu sec w trybe kremetacyjym. Umożlwa to łatwe przystosowae sę systemu do zma pojawających sę w motorowaej sec. Profl sec może być uaktualoy awet w trakce fazy detekcj, jeśl zajdze taka potrzeba. Ostatecze prezetoway system powe charakteryzować sę zwększoą precyzja wykrywaa robaków secowych, dzęk połączeu kombacj metod aalzy agłówka daych użytkowych paketów. Ostatą ważą cechą modelu jest częścowa odporość a specyfczy typ ataku, gdy atakujący próbuje ukryć swoją aktywość poprzez powelae ormalego zachowaa sec.

08 Sławomr Mka W kolejych rozdzałach zostaą dokłade opsae algorytmy techk wykorzystae w propoowaym systeme wykrywaa robaków secowych. 3. Eksploracja daych W trakce aalzy odpowedch daych zebraych w procese motorowaa ruchu secowego wykorzystywae są róże techk eksploracj daych. W kolejych sekcjach rozdzału scharakteryzowae są krótko metody użyte w propoowaym modelu. Sprowadza sę to główe do przedstawea ogólego procesu postępowaa w przypadku wybraej grupy techk. Wszystke metody są treowae podczas procesu uczea eadzorowaego, co sprawa że proces uczea jest całkowce ezależy od użytkowka. Ozacza to róweż, że uczee odbywa sę w sposób całkowce automatyczy. To duży plus propoowaej aplkacj. 3.. Aalza daych paketu Schemat bloku aalzującego dae użytecze przeoszoe przez pakety, został przedstawoy a rysuku. Propooway model został oparty a systeme opsaym w [3]. Wymaga użyca algorytmu aalzy -gram oraz wykorzystaa klasyfkacj bazującej a grupowau paketów o różej długośc daych użytkowych. Zastosowae aalzy -gram w omawaym systeme polega a zlczau lośc wystąpeń kokretych wartość bajtów (zaków ASCII) w daych użyteczych przeoszoych przez paket. Propoowaa metoda zakłada model zbudoway z ugram ów, czyl dla =. Rezultatem tej aalzy jest 56 elemetowy wektor określający rozkład częstośc bajtów dla każdego paketu. Podczas fazy ucza, dla daego zboru daych uczących budowae są modele M jk. Dla każdego paketu przychodzącego wychodzącego, dla daego adresu, dla każdego portu j oraz długośc daych użyteczych (payload u) k, model przechowuje zwększae kremetacyje: średą częstość wartośc bajtów, odchylee stadardowe oraz waracje. Dla daego modelu M jk tworzą oe 56 elemetowe (lczba zaków kodu ASCII) wektory. Przykładową zormalzowaą średa częstość wartośc bajtów dla portu 80 oraz dla długośc daych użyteczych rówej 460 przedstawa rysuek 3. Z kole podczas fazy detekcj te same wartośc są oblczae dla każdego paketu astępe zostają porówae z wartoścam modelu. Wykryce problemu sygalzowae jest w sytuacj, jeśl zacząco różą sę od daego modelu. Jako metoda porówaa daej próbk daych z modelem jest wykorzystywaa uproszczoa postać odległośc Mahalaobs a, która jest często używaa w zadaach wymagających komparacj dwóch rozkładów statystyczych. Jej wartość jest oblczaa a podstawe wzoru (): 55 B A d( B, A) =, = 0 ( σ α ) () gdze B oraz A są wektoram częstośc wartośc bajtów, wektor B jest wektorem częstośc wartośc bajtów owego payload u, a A jest wektorem średch częstośc wartośc bajtów oblczoych w procese uczea. σ jest odchyleem stadardowym dla -tego zaku ASCII, podczas gdy α jest współczykem wygładzea dodaym, aby zapobec możlwośc uzyskaa eskończoej wartośc odległośc dla odchylea stadardowego σ rówego zero.

Kocepcja hybrydowego systemu detekcj robaków secowych wykorzystującego 09 Rysuek. Model bloku aalzującego payload Nestety lczba model powstałych w procese uczea może być bardzo duża ze względu a zróżcowaą długość paketów oraz lczbę możlwych portów daego systemu. W zwązku z tym duża lczba model jest redukowaa w procese klasteryzacj (grupowaa). Prowadz to do uporządkowaa model w klastry, czyl grupy model. Elemety daej grupy są podobe bardzej do model z daej grupy ż do pozostałych model. W procese porówaa dwóch sąsedch model wykorzystaa jest odległość Mahatta. Jej wartość jest oblczaa a podstawe wzoru (): 55 d( B, A) = B A, () = 0 gdze B oraz A są wektoram średch częstośc wartośc bajtów różych model. Jeśl odległość jest mejsza ż pewa wartość progowa dwa modele są łączoe. Dodatkowo oblczae są owe wartośc średej rozkładu bajtów, odchylea stadardowego oraz waracj. Proces grupowaa trwa tak długo, aż steje jeszcze model możlwy do zgrupowaa.

0 Sławomr Mka Rysuek 3. Zormalzowaa średa częstość wartośc bajtów dla portu 80 długośc payload u 460 Opsaa metoda aalzy payload u może zostać dodatkowo zmodyfkowaa o użyce fltru Bloom a [], który jest prostą oszczęda pamęcowo strukturą ą reprezetującą day zbór elemetów. Iym rozwęcem prezetowaego modelu może być ć techka opsaa w [6]. Wskazuje oa, że zwększee efektywośc wykrywaa robaków secowych moża uzyskać porówując dae użytkowe paketów przychodzących cych z daym użytkowym esoym przez pakety wychodzące. ce. Dlatego propooway system jest dodatkowo wzbogacoy o porówywae podejrzaych model opsujących ruch przychodzący wychodzący cy dla daego portu. Wąże sę to z faktem, że często robak teretowe rozprzestrzeają te same dae, dzęk którym udało m sę zafekować ć obecy system. 3.. Aalza agłówka paketu Aalza agłówka paketu róweż polega a ustaleu odpowedch profl sec w fa- ze uczea oraz a wykrywau wszelkch ezgodośc względem tych profl w faze de- tekcj. Podstawowym atrybutam agłówków, które powy być uwzględoe w tym pro- cese są: źródłowy docelowy adres IP, źródłowy docelowy umer portu, typ paketu, dłu- gość daych użyteczych przeoszoych przez paket oraz czas życa paketu (TTL). Wy- brae do opsywaego systemu metody reprezetują dwe grupy szeroko stosowaych techk eksploracj daych: klasteryzacj (grupowaa) oraz klasyfkacj. W zastosowau wykrywaa truzów metody klasteryzacj wymagają zboru ormalwykorzystywae w procese uczea modelu. W tym przypadku w faze detekcj, jako aomale traktowae są wszelke próbk odstające od wzorca e pasu- ych daych, które są jące do utworzoego modelu. Elemety odstające zwae są z agelskego outler am. W celu ch wykryca stosuje sę ę róże techk detekcj elemetów odstających. Przykładowo moża zastosować podejśce ajblższego sąsada, odległośc Mahalaobs a lub ocey gę- stośc możlwośc wystąpea elemetów odstających [7]. Ogóly schemat obrazujący dzałae algorytmów klasteryzacj jest przedstawoy a rysuku 4. Klasteryzacja daych przeprowadzaa jest z wykorzystaem wybraej mary podobeństwa oraz algorytmu grupowaa. Podstawowym zaletam grupowaa są łatwość użyca w systemach pracujących w trybe o-le oraz uczee bez adzoru. Natomast główą wadą jest stosukowo duża złożoość oblczeowa, szczególe w procese uczea oraz problemy z grupowaem daych o dużej lość wymarów. Propoowae metody gru-

Kocepcja hybrydowego systemu detekcj robaków secowych wykorzystującego powaa to algorytmy: k-średch, maksymalej wartośc oczekwaej (EM), Cobweb lub DBSCAN. Rysuek 4. Ogóly model metod grupowaa Przykładem dobrze zaej metody eksploracj daych, a często wykorzystywaej w przypadku klasteryzacj jest wspomay wcześej algorytm k-średch. Zastosoway w omawaym systeme pozwala a wykryce etypowego agłówka paketu, sygalzując jedocześe etypowy ruch secowy. Bazuje a wykorzystau mary odległośc eukldesowej. W procese uczea algorytm teruje przez wszystke dae uczące, uaktualając archtekturę wewętrzych grup (klastrów). Każdy wektor x ależący do zboru uczącego może być reprezetoway jako wektor elemetowy (3): ( ) x x x x =,,...,. (3) Odległość eukldesowa dwóch wektorów x oraz y wyraża sę poższym rówaem (4): d ( x, y) = x y = ( x ) y. (4) Natomast średą µ zboru wektorów c j defuje wzór (5): = µ = x. (5) c j x c j Rówae (5) pozwala wyzaczee środków każdego klastra. Po wyzaczeu środków wszystkch k grup algorytm jest gotowy do klasyfkacj. W przypadku omawaego systemu podczas tego procesu wykorzystywae są techk wykrywaa outler ów. Ich wykryce będze ozaczało, że day paket e jest typowym dla kokretego, wcześej wytreowaego proflu sec. W tym celu ależy oblczyć odległość owych daych od środka ajblższego klastra korzystając z rówaa (4). Jeśl oblczoa odległość jest wększa od wcześej ustaloej wartośc progowej d max ozacza to, że day paket jest traktoway jako outler [0]. Metoda wykrywaa outler ów została zobrazowaa a rysuku 5. Obekty A B są outler am, atomast obekt C zajduje sę w obszarze ograczoym przez odległość d max jest detyfkoway jako, ależący do daych reprezetujących agłówk paketów typowe dla ustaloego proflu ruchu secowego sec.

Sławomr Mka Rysuek 5. Wykrywae outler ów Druga grupę techk eksploracj daych staową metody klasyfkacj. W przecweństwe do techk klasteryzacj uczee zachodz w procese pod adzorem przy czym odpouczoe a tregowej próbe ruchu secowego, przy założeu, że aa- wede modele są lzowae dae uczące są wole od wszelkch odchyleń aomal. Wobec uczea model jedye a ormalym typowym ruchu secowym ależy zastosować odpowede techoe uczee w sytuacj, gdy do procesu k uczea zwae PU learg [8]. Umożlwają ucza możlwe jest wykorzystae tylko pozytywych daych uczących. cych. Doskoale adają sę oe w prezetowaym modelu poeważ są całkowce automatycze e wymagają posadaa w procese uczea daych ozakowaych jako fekcje lub atak. W lteraturze steje wele podejść do problemu uczea PU learg. Jedo z ch jest opsae w [8], gdze zapropoowae jest dwu stopowe podejśce do procesu uczea klasyfkatora. Rysuek 6. Ogóly model metod klasyfkacj Ogóly model obrazujący proces klasyfkacj jest przedstawoy a rysuku 6. Idetyf- kowae daych przeprowadzae jest dzęk wybrau odpowedej techk klasyfkacj oraz wstępej zajomośc przyależośc daych do określoych klas. W efekce zastoso-

Kocepcja hybrydowego systemu detekcj robaków secowych wykorzystującego 3 waa daej reguły klasyfkacj, możlwe jest przypsae ezaych (owych) daych do odpowedej klasy. Podstawową zaletą grupowaa jest wysoka skuteczość dokładość procesu uczea. Z kole ajważejszą wadą okazuje sę być możlwa duża lczba fałszywych alarmów. Propoowae techk klasyfkacj to algorytmy k-ajblższych sąsadów oraz C4.5 (drzewa decyzyje). 4. Nawy klasyfkator Bayes a Moduł decyzyjy staow ejako ostatą warstwę propoowaego systemu (rys. ). Dae wejścowe tego bloku staową rezultaty aalzy agłówka daych użyteczych paketów. Natomast formacja wyjścowa z modułu staow ostateczy rezultat aalzy ruchu secowego. Zastosoway awy klasyfkator Bayes a jest prostym klasyfkatorem probablstyczym bazującym a modelach probablstyczych. Uzyskwae są oe wskutek użyca reguły Bayes a. Duża zaletą awego klasyfkatora Bayes a jest wysoka efektywość uczea w procese adzorowaym. Pommo awej budowy oraz a pozór zbyt uproszczoych założeń, awy klasyfkator Bayes a bardzo często pracuje bardzo wydaje jest wykorzystyway w welu praktyczych sytuacjach [4]. W przecweństwe do ższych warstw systemu e jest to moduł o dużym skomplkowau. Jego główym celem jest jedye terpretacja wyków aalzy przeprowadzoej z użycem omówoych wcześej techk data mg. Reguła Bayes a umożlwa oblczee prawdopodobeństwa hpotezy bazując a jej prawdopodobeństwe a pror. Wyraża sę oa wzorem (6): P( X Y) P( Y) P( Y X ) = (6) P( X ) W rówau (6) Y ozacza pewą hpotezę, podczas gdy X ozacza wszelke dae oraz wstępą wedzę, która może wpłyąć a oceę prawdopodobeństwa tej hpotezy. P(Y X) jest prawdopodobeństwem a posteror hpotezy Y przy zajomośc daych X, P(Y) jest prawdopodobeństwem a pror hpotezy Y, P(X) jest prawdopodobeństwem daych X, a P(X Y) określa prawdopodobeństwo warukowe []. Nawy klasyfkator Bayes a pozwala a oblczee prawdopodobeństwa warukowego przy założeu, że atrybuty daej klasy ozaczoej jako y są warukowo ezależe od sebe. Założee warukowej ezależośc przedstawa rówae (7): d P( X Y = y) = P( X Y = y), (7) = gdze każdy zbór atrybutów X = {X, X,, X d } składa sę z d atrybutów []. Podstawową zadaem podczas procesu budowaa awego klasyfkatora Bayes a jest jego odpowede uczee. Należy założyć, że Y oraz atrybuty X X d są reprezetowae jako wartośc dyskrete. W tym przypadku prawdopodobeństwo, że Y przyjme swoją k-tą możlwą wartość, zgode z regułą Bayes a wyraża poższy wzór (8): ( = ) (... = ) P Y y P X X Y y k d k ( = k... d ) =, P Y y X X j ( = j ) (... d = j ) P Y y P X X Y y gdze suma jest dla wszystkch możlwych wartośc y j daej Y [,9]. Przyjmując, że atrybuty X są warukowo ezależe, a zatem wykorzystując rówe (7), wyrażee (8) przyjmuje astępującą postać (9): (8)

4 Sławomr Mka ( = ) ( = ) P Y yk P X Y yk P( Y = yk X... X d ) =. P Y y P X Y y j ( = j ) ( = j ) Rówae (9) jest fudametalym rówaem opsującym awy klasyfkator Bayes a. Często stote jest zalezee jedye ajbardzej prawdopodobej wartośc Y. Wyraża to reguła (0): ( = ) ( = ) P Y yk P X Y yk Y arg max. yk P Y y P X Y y j ( = j ) ( = j ) Uwzględając, że maowk e jest zależy od y k rówe (0) sprowadza sę do postac () tzw. awej reguły klasyfkacj Bayes a [9]: 5. Podsumowae ( ) ( ) (9) (0) Y arg max P Y = y P X Y = y. () yk k k Obece propooway hybrydowy system wykrywaa ataków robaków secowych, a wykorzystujący techk eksploracj daych jest w faze budowy. Jedak argumety przedstawoe w artykule pozwalają przypuszczać, że propooway system wykaże sę wysoką skuteczoścą precyzją w wykrywau robaków teretowych. Opsay model charakteryzuje sę stosukowo małą złożooścą w faze detekcj, a algorytmy w wększośc charakteryzują sę lową złożooścą, dlatego powe sprawdzć sę w rzeczywstych secach komputerowych jako system alarmujący o atakach. Szczególą zaletą oferowaą przez system jest wykrywae ezaych dotąd robaków secowych. Koleją ważą cechą systemu okazuje sę fakt, że faza uczea oraz faza detekcj trzou aplkacj bazującego a techkach eksploracj daych, przebega całkowce automatycze. Co węcej system może być treoway w każdej sec, przy założeu, że przez czas uczea ruch secowy będze woly od wszelkch eprawdłowośc. Autor jest stypedystą projektu Iowacyja dydaktyka bez ograczeń ztegroway rozwój Poltechk Łódzkej zarządzae uczelą, owoczesa oferta edukacyja wzmacae zdolośc do zatrudaa także osób epełosprawych, współfasowaego przez Uę Europejską w ramach Europejskego Fuduszu Społeczego. Bblografa [] Caruaa R., Nculescu-Mzl A. A Emprcal Comparaso of Supervsed Learg Algorthms. Corell Uversty, 006. [] Cheema F. M., Akram A., Iqbal Z. Comparatve Evaluato of Header vs. Payload based Network Aomaly Detectors. Proceedgs of the World cogress o Egeerg, VOL. WCE 009, 009. [3] Dokas P., Ertoz L., Kumar V., Lazarevc A., Srvastava J., Ta P. N. Data mg for etwork truso detecto. The NSF Workshop o Next Geerato Data Mg, 00. [4] Fard D., Rahma M. Z. Aomaly Network Itruso Detecto Based o Improved Self Adaptve Bayesa Algorthm. Joural of computers, VOL.5, 00. [5] Kholf S., Habb M., Aljahdal S. Best hybrd classfers for truso detecto. Joural of Computatoal Methods Scece ad Egeerg, 006, ss. 99 307.

Kocepcja hybrydowego systemu detekcj robaków secowych wykorzystującego 5 [6] Km H. A., Karp B. Autograph: Toward Automated Dstrbuted Worm Sgature Detecto. USENIX Securty Symposum, 004. [7] Lazarevc A., Ertoz L., Kumar V., Ozgur A., Srvastava J. A comparatve study of aomaly detecto schemes etwork truso detecto. Proceedgs of the Thrd SIAM Iteratoal Coferece o Data Mg, 003. [8] L X., Yu P. S., Lu B., Ng S. Postve Ulabeled Learg for Data Stream Classfcato. SDM 009, 009, ss. 57-68. [9] Mtchell T. M. Mache learg. McGraw Hll, 005. [0] Müz G., L S., Carle G. Traffc Aomaly Detecto Usg K-Meas Clusterg. I GI/ITG Workshop MMBet, 007. [] Ta P., Stebach M., Kumar V. Itroducto to data mg. Bosto: Pearso Addso Wesley, 006. [] Wag K., Parekh J. J., Stolfo S. Aagram: A Cotet Aomaly Detector Resstat To Mmcry Attack. Proceedgs of the 9th Iteratoal Symposum o Recet Advaces Itruso Detecto, RAID, 006. [3] Wag K., Stolfo S. Aomalous payload-based etwork truso detecto. Recet Advaces Itruso Detecto, RAID, 004, ss. 03. [4] Zhag J., Zulkere M. Network Itruso Detecto usg Radom Forests. IEEE Trasactos o Systems, Ma, ad Cyberetcs, 008.

Metody reprezetacj daych w aplkacjach żyerskch wykorzystujących archtekturę SOA Julusz Mkoda, Norbert Sczygol, Aa Wawszczak Poltechka Częstochowska, Wydzał Iżyer Mechaczej Iformatyk Abstract: Over recet years the developmet of the Iteret has resulted sgfcat crease the popularty of applcatos based o Servce Oreted Archtecture. Ths kd of archtecture ca be also successfully used whle desgg egeerg packages. Ths artcle cotas aalyss of problem that ca occur such solutos, that s sedg large amout of data, partcular sparse matrces. The modfed method of sparse matrces trascrpto SOAP documets was descrbed. Ths method eables to decrease the amout of data that s to be set. The exemplary smulato of heat trasfer was also preseted. Ths smulato utlzes Fte Elemet Method ad WebServces techology. The results of coducted research show that SOA archtecture ca be successfully used whle desgg egeerg packages. Keywords: Servce Oreted Archtecture, WebServces, SOAP, sparse matrces. Wprowadzee W ostatch latach Iteret zacze zmeł swój charakter. Stroy teretowe, które jeszcze edawo oferowały statyczy tekst, grafkę czy multmeda, obece coraz częścej oferują róweż różego typu usług. Wzrost popularośc takch rozwązań doprowadzł do zaczego rozwoju aplkacj opartych o archtekturę SOA (ag. Servce Oreted Archtecture). Archtektura ta, powszeche wykorzystywaa w oprogramowau bzesowym, może róweż zostać zastosowaa podczas tworzea żyerskch paketów symulacyjych. Problemem pojawającym sę w aplkacjach żyerskch wykorzystujących techologę WebServces może okazać sę przesyłae dużych lośc daych, w szczególośc macerzy o rozmarach sęgających klkuset tysęcy lub awet klku mloów elemetów. Przesłae tak dużych lośc daych może zacze obżyć wydajość aplkacj. Zastosowae odpowedch struktur daych oraz odpowedego sposobu zapsu pozwala jedak a przesłae tych daych w czase relatywe małym w stosuku do czasu wykoaa operacj a tych daych. W sekcj opsae zostały metody reprezetacj macerzy rzadkch, staowących ajbardzej zaczącą część daych wykorzystywaych w oblczeach żyerskch. W sekcj 3 oraz 4 opsay został sposób kodowaa daych w dokumetach SOAP oraz stadardowa zmodyfkowaa metoda zapsu macerzy rzadkch. Sekcja 5 prezetuje wyk przeprowadzoych badań. Ostata sekcja zawera podsumowae wyków oraz wosk.. Reprezetacja daych w aplkacjach żyerskch Metody oblczeowe wykorzystywae w aplkacjach żyerskch bardzo często operują a dużych loścach daych. Najpopularejsze obece metody umerycze wykorzy- Metody Iformatyk Stosowaej, r /00 (3), s. 7-5 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

8 Julusz Mkoda, Norbert Sczygol, Aa Wawszczak stywae w symulacjach żyerskch, take jak metoda elemetów skończoych czy metoda różc skończoych, wymagają utworzea ogromych macerzy kwadratowych. Macerze te są jedak macerzam rzadkm, a często róweż symetryczym. Zacza wększość elemetów takej macerzy to elemety zerowe. Wykorzystae odpowedch struktur daych pozwala e tylko a zmejszee lośc wykorzystywaej pamęc, ale róweż a zacze skrócee czasu potrzebego a wykoae operacj matematyczych a tych strukturach daych... Metody reprezetacj macerzy rzadkch Reprezetacja macerzy rzadkej za pomocą pełej macerzy kwadratowej wąże sę przede wszystkm z bardzo dużym zużycem pamęc. Nezerowe elemety macerzy rzadkej staową jedye ewelk procet elemetów. Powszechość występowaa macerzy rzadkch w oblczeach umeryczych doprowadzła do powstaa welu metod reprezetacj takch macerzy [,]. Dzęk zastosowau odpowedch struktur daych możlwe jest welokrote zmejszee lośc wykorzystywaej pamęc. Podstawową deą wykorzystywaą w skompresowaych formatach jest zapobegae przechowywau wartośc zerowych. Wartośc ezerowe zapsywae są w jedowymarowej tablcy. Poza tablcą wartośc ezerowych koecze jest jeszcze utworzee dodatkowych struktur przechowujących pozycję elemetów w macerzy. Najczęścej stosowae sposoby reprezetacj macerzy rzadkch to odwzorowae deksu wersza oraz kolumy a wartość, CRS (ag. Compressed Row Storage), CCS (ag. Compressed Colum Storage) oraz JDS (ag. Jagged Dagoal Storage). Perwsza z wymeoych metod reprezetacj macerzy rzadkch zakłada wykorzystae struktur odwzorowujących parę deksów (deks wersza oraz kolumy) a wartość elemetu. Modyfkacją tej metody jest metoda CRS, w której przechowywae są pary złożoe z umeru kolumy wartośc elemetu, oraz wektor przesuęć formujący o początku każdego z werszy. Zasada dzałaa CCS jest aalogcza do CSR, jedak w tym przypadku przechowywae są pary wartość elemetu umer wersza oraz wskaźk a początek poszczególych kolum. JDS to metoda bazująca a CSR. Poza daym przesyłaym przez CSR, JDS wymaga dodatkowo przesłaa wektora permutacj. Mmo ż zwększa to lość wykorzystywaej pamęc, metoda ta jest uważaa za jedą z ajodpowedejszych reprezetacj macerzy rzadkch do metod teracyjych realzowaych z wykorzystaem archtektur rówoległych wektorowych [3]... Wykorzystae pamęc oraz czas dostępu do daych w macerzach rzadkch W zależośc od zastosowaych struktur daych, róże jest zarówo zużyce pamęc, jak czas dostępu do daych. Jest to zależe e tylko od modelu reprezetacj daych, ale róweż od sposobu mplemetacj. Wykorzystae modelu CRS umożlwa szybk dostęp do werszy macerzy. Poszczególe wersze mogą być reprezetowae za pomocą różych struktur daych, a przykład jako tablca (elemetów posortowaych albo eposortowaych) lub jako zrówoważoe drzewo bare (mapa). Rozwązaa te mają swoje moce słabe stroy. Zastosowae drzewa barego pozwala a bardzo szybke wyszukae elemetu w daym werszu, jedak wymaga zacze wększej lośc pamęc ż tablca. W przypadku tablc pojawają sę atomast e problemy. Dla tablcy posortowaej, wstawee elemetu wewątrz wersza wymaga przesuęca wszystkch kolejych elemetów. Tablca eposortowaa charakte-

Metody reprezetacj daych w aplkacjach żyerskch wykorzystujących archtekturę SOA 9 ryzuje sę atomast długm czasem dostępu do daych, co spowodowae jest lową złożooścą operacj wyszukaa elemetu w werszu. 3. Kodowae daych w dokumetach SOAP Protokół SOAP (ag. Smple Object Access Protocol) to jede z ajczęścej stosowaych sposobów komukacj w aplkacjach wykorzystujących archtektrutę SOA. Reguły kodowaa daych, określoe w specyfkacj SOAP, pozwalają a odwzorowae w dokumetach XML abstrakcyjych model daych (seralzację). Do opsu struktur daych wykorzystywae są schematy XML Schema, umożlwające automatyczą seralzację oraz deseralzację daych. 3.. Kodowae strukturalych typów daych Typy strukturale to typy złożoe, których składowe są opsae za pomocą azw. Elemety składowe typów złożoych są kodowae w dokumetach SOAP jako węzły potome, których azwy odpowadają azwom poszczególych składowych tych typów. 3.. Reprezetacja daych tablcowych Dae tablcowe to złożoe struktury daych, w których składowe opsae są za pomocą deksów. Róweż te typ daych może zostać odwzoroway w dokumetach SOAP. W tym celu wykorzystuje sę typ SOAP-ENC:Array lub dowoly typ pochody po tym type oraz atrybut arraytype (w SOAP/.) lub atrybuty temtype oraz arraysze (w SOAP.), opsujące typ elemetów oraz welkość tablcy. Składowym tablc mogą być typy podstawowe lub elemety typów strukturalych bądź tablcowych. 4. Macerze rzadke w dokumetach SOAP Bezpośrede odwzorowae opsaych w pukce. metod reprezetacj macerzy rzadkch w dokumetach SOAP wymaga zdefowaa struktur daych odpowedzalych za mapowae deksów a wartośc oraz umeszczea tych struktur w tablcach. 4.. Struktury odwzorowujące deksy a wartośc Perwsza z opsaych struktur odwzorowuje deks wersza kolumy a wartość. Ops reprezetacj takej struktury został przedstawoy a Lstgu.: <complextype ame="matrxitem"> <sequece> <elemet ame="row" type="xsd:t"/> <elemet ame="colum" type="xsd:t"/> <elemet ame="value" type="xsd:double"/> </sequece> </complextype> Lstg. Schemat struktury MatrxItem Lstg. przedstawa fragmet dokumetu XML, odpowadający obektow typu MatrxItem, przekształcoemu zgode z powyższym schematem:

0 Julusz Mkoda, Norbert Sczygol, Aa Wawszczak <MatrxItem> <row></row> <colum>3</colum> <value>4.5678</value> </MatrxItem> Lstg. Przykładowy obekt struktury MatrxItem Schemat odwzorowaa drugej z opsywaych struktur (koluma wartość) oraz przykładowy obekt struktury zakodoway zgode z tym schematem zostały przedstawoe a Lstgach 3 4.: <complextype ame="matrxitem"> <sequece> <elemet ame="colum" type="xsd:t"/> <elemet ame="value" type="xsd:double"/> </sequece> </complextype> Lstg 3. Schemat struktury MatrxItem <MatrxItem> <colum>3</colum> <value>4.5678</value> </MatrxItem> Lstg 4. Przykładowy obekt struktury MatrxItem 4.. Jedo- dwuwymarowe tablce struktur Kolejym krokem koeczym do odwzorowaa struktur opsaych w sekcj. jest stworzee tablc daych strukturalych. W przypadku perwszego typu odwzorowaa koecze jest utworzee tablcy jedowymarowej. Przykład takej tablcy został przedstawoy a Lstgu 5. <SOAP-ENC:Array SOAP-ENC:arrayType="MatrxItem[]"> <MatrxItem> <row></row> <colum>3</colum> <value>4.5678</value> </MatrxItem> <MatrxItem> <row>9</row> <colum>0</colum> <value>.34</value> </MatrxItem> </SOAP-ENC:Array> Lstg 5. Zaps jedowymarowej tablcy obektów typu MatrxItem w dokumece SOAP Jeda z metod realzacj formatu CSR wykorzystującego odwzorowae koluma wartość polega a zastosowau tablc dwuwymarowych. Dodatkowym problemem pojawającym sę podczas zapsu takej macerzy w forme dokumetu SOAP jest to, że lczba elemetów w werszach e jest stała. Uemożlwa to wykorzystae tablcy prosto-

Metody reprezetacj daych w aplkacjach żyerskch wykorzystujących archtekturę SOA kątej o stałej lczbe werszy kolum. W tym przypadku koecze jest zastosowae tablcy jedowymarowej, której elemetam są tablce o różej lczbe elemetów. Przykład takej reprezetacj macerzy rzadkej w dokumece XML przedstawa Lstg 6. <SOAP-ENC:Array SOAP-ENC:arrayType="s:MatrxItem[][]"> <tem href="#row-"/> <tem href="#row-"/> </SOAP-ENC:Array> <SOAP-ENC:Array d="row-" SOAP-ENC:arrayType="s:MatrxItem[3]"> <MatrxItem> <colum>3</colum> <value>4.5678</value> </MatrxItem> <MatrxItem> <colum>9</colum> <value>0.3</value> </MatrxItem> <MatrxItem> <colum>4</colum> <value>5.678</value> </MatrxItem> </SOAP-ENC:Array> <SOAP-ENC:Array d="row-" SOAP-ENC:arrayType="s:MatrxItem[]"> <MatrxItem> <colum></colum> <value>3.4567</value> </MatrxItem> <MatrxItem> <colum>8</colum> <value>9.0</value> </MatrxItem> </SOAP-ENC:Array> Lstg 6. Zaps dwuwymarowej tablcy obektów typu MatrxItem w dokumece SOAP 4.3. Reprezetacja tablc rzadkch Protokół SOAP/. dostarcza specjale mechazmy umożlwające przesyłae tablc rzadkch [4]. Format te jest odpowedkem perwszej z metod opsaych w pukce. (odwzorowae deksu wersza kolumy a wartość). Każdy elemet dokumetu XML reprezetujący elemet takej tablcy zawera atrybut SOAP-ENC:posto, który determuje jego mejsce w tablcy. Lstg 7 przedstawa rzadką tablcę elemetów typu double zapsaą z wykorzystaem tego mechazmu. <SOAP-ENC:Array SOAP-ENC:arrayType="xsd:double[0,0]"> <tem SOAP-ENC:posto="[3,]">4.56789</tem> <tem SOAP-ENC:posto="[5,]">6.7890</tem> </SOAP-ENC:Array> Lstg 7. Zaps tablcy rzadkej w dokumece SOAP Mechazm te e jest dostępy w protokole SOAP..

Julusz Mkoda, Norbert Sczygol, Aa Wawszczak 4.4. Zmodyfkoway sposób reprezetacj macerzy rzadkch Stosowae opsaych powyżej metod wymusza umeszczee w dokumece XML dużej lośc daych formatujących. W zależośc od wybraej metody, a każdy elemet macerzy przypada od 0 (przy wykorzystau jedolterowych azw struktur ch pól) do awet poad 70 zaków formatujących. Lczba zaków wykorzystywaa do reprezetacj lczby rzeczywstej to ajczęścej e węcej ż 0 zaków. Zaczk formatujące zajmują węc, awet w ajbardzej zwęzłej reprezetacj, dwa razy węcej pamęc ż przesyłae dae. W aplkacjach bzesowych tak arzut często e staow problemu, jedak w zagadeach żyerskch, gdy przesyłae są olbrzyme lośc daych, może meć zaczący wpływ a wydajość aplkacj. Macerze rzadke, które powstają podczas symulacj wykorzystujących metody umerycze zajmują często klkaaśce, lub awet klkaset megabajtów pamęc. W takm przypadku, klkakrote zwększee lośc daych może wywołać zacze opóźea spowodowae wzrostem czasu potrzebego a przesłae oraz przetworzee daych. Zmejszee lośc przesyłaych daych jest możlwe dzęk zastosowau ego, ż opsae powyżej, formatu zapsu macerzy rzadkej. Jedym z możlwych rozwązań jest przekształcee macerzy rzadkej w łańcuch zakowy. Pozwala to ukąć koeczośc umeszczaa każdego elemetu macerzy w osobym zaczku XML. Poszczególe wartośc, oraz umery kolum werszy, rozdzeloe są pojedyczym zakam formatującym. W ejszej pracy wykorzystay został astępujący format zapsu macerzy rzadkej (Lstg 8): koleje wersze macerzy rozdzeloe średkam, wartośc w poszczególych werszach rozdzeloe zakem dwukropka, perwsza lczba w każdym werszu to umer wersza, astępe lczby to pary koluma-wartość. r a :c :v :c j :v j ;r b :c k :v k :c l :v l :c l :v l ; Lstg 8. Format zapsu macerzy rzadkej Należy pamętać, że opsay powyżej sposób zapsu, z puktu wdzea protokołu SO- AP e jest poprawym odwzorowaem struktury macerzy rzadkej. Powstały podczas takej seralzacj łańcuch zaków może jedak zostać poprawe przesłay jako zmea typu xsd:strg, a astępe przetworzoy wewątrz aplkacj. 4.5. Wykorzystae symetryczośc macerzy Bardzo często macerze powstające podczas symulacj żyerskch to macerze symetrycze. Macerze take mogą być przechowywae jako macerze trójkąte. Pozwala to a prawe dwukrote zmejszee lośc wykorzystywaej pamęc. Take rozwązae powoduje jedak zwększee czasu dostępu do daych. Borąc pod uwagę lość pamęc dostępą obece w komputerach osobstych, take właśe wykorzystae symetr macerzy w wększośc przypadków jest eopłacale. Podczas przesyłaa macerzy za pomocą protokołu SOAP różca w lośc przesyłaych daych może jedak okazać sę zacząca. Wykorzystae symetr przesłae daych jako macerz trójkątą górą, e tylko pozwala zmejszyć lość przesyłaych daych prawe dwukrote, ale róweż skraca czas potrzeby a seralzację deseralzację daych.

Metody reprezetacj daych w aplkacjach żyerskch wykorzystujących archtekturę SOA 3 5. Przykład wykorzystaa zapropoowaej reprezetacj macerzy rzadkch W celu aalzy wydajośc propoowaego w ejszej pracy sposobu zapsu daych w aplkacjach żyerskch wykorzystaa została aplkacja wyzaczająca rozkład temperatury (ustaloy przepływ cepła) za pomocą metody elemetów skończoych. Do testów wykorzystae zostały trójwymarowe satk elemetów skończoych składające sę z czworoścaów. Testowae satk składały sę z różej lczby elemetów (ajmejsza - 380 węzłów 638 elemetów), ajwększa 39 5 węzłów 386 796 elemetów). Satk te zostały wygeerowae za pomocą autorskego geeratora estrukturalych satek elemetów skończoych dla obszarów dwu- trójwymarowych [5]. Do rozwązaa układu rówań wykorzystaa została metoda sprzężoych gradetów [6]. 5.. Czas przesłaa macerzy Wszystke macerze utworzoe podczas przeprowadzoych symulacj, ezależe od lczby węzłów, posadały średo 5-6 elemetów ezerowych w werszu. Lczba ezerowych elemetów macerzy, a węc jedocześe lość przesyłaych daych jest wprost proporcjoala do lczby węzłów satk. Narzut czasowy (tws) zwązay z wykorzystaem techolog WebServces może zostać wyzaczoy z astępującego rówaa: gdze: t seral czas seralzacj, t sed czas wysłaa daych, t receve czas odboru daych, t deseral czas deseralzacj. tws = t seral t sed t deseral t receve () Przeprowadzoe badaa wykazały lową zależość czasu tws w stosuku do lczby węzłów. Czas przesłaa macerzy dla poszczególych satek został przedstawoy a Rysuku. Wraz ze wzrostem lczby węzłów, a węc jedocześe lczby ewadomych w układze rówań, rośe róweż czas potrzeby a rozwązae tego układu. Zależość lczby elemetów do czasu rozwązaa układu rówań jest zblżoa do wykładczej. W zwązku z tym, ż czas rozwązaa układu rówań wzrasta zacze szybcej ż czas arzutu zwązaego z wykorzystaem techolog WebServces, wraz ze wzrostem lczby węzłów wartość tws staje sę coraz mej zacząca. Rysuek przedstawa procetowy udzał czasu tws w łączym czase symulacj (tall).

4 Julusz Mkoda, Norbert Sczygol, Aa Wawszczak Rysuek. Czas arzutu zwązaego z wykorzystaem techolog WebServces dla satek o różej lczbe węzłów Rysuek. Procetowy udzał arzutu czasowego zwązaego z wykorzystaem techolog WebServces (tws) w łączym czase symulacj (tall) 6. Podsumowae Macerze rzadke staową zaczą część daych wykorzystywaych w symulacjach żyerskch. W ejszej pracy przedstawoe zostały formaty zapsu takch macerzy w dokumetach SOAP. Dokumety te staową podstawę komukacj w aplkacjach zbudowaych w oparcu o archtekturę SOA, a w szczególośc w aplkacjach wykorzystujących techologę WebServces.

Metody reprezetacj daych w aplkacjach żyerskch wykorzystujących archtekturę SOA 5 Sposób zapsu dużych zborów daych, jakm są mędzy ym rozważae w pracy macerze, ma zaczy wpływ a wydajość takch aplkacj. Przeprowadzoe badaa pokazały, że zastosowae zapropoowaego w pracy sposobu seralzacj macerzy zacze zmejsza lość przesyłaych daych, a tym samym korzyste wpływa a poprawę wydajośc aplkacj. W sekcj 5 zaprezetowae zostały wyk symulacj ustaloego przepływu cepła, przeprowadzoej za pomocą metody elemetów skończoych. Rezultaty te pokazują, że arzut czasowy wykający z wykorzystaa techolog WebServces jest ewelk. Prezetowaa w pracy archtektura oprogramowaa może być z powodzeem stosowaa w połączeu z serweram oblczeowym (GPU, FPGA, klastry) umożlwającym zrówoleglee pewych fragmetów symulacj, a przykład procesu rozwązywaa układu rówań. Take rozwązae pozwol a zacze skrócee procesu oblczeń w zupełośc zweluje opóźea spowodowae wykorzystaem techolog WebServces. Bblografa [] Dogarra, J., Sparse matrx storage formats, Templates for the Soluto of Algebrac Egevalue Problems: A Practcal Gude, SIAM, Phladelpha, 000 [] Saad, Y., SPARSKIT: A basc tool kt for sparse matrx computatos Report RIACS- 90-0, Research Isttute for Advaced Computer Scece, NASA Ames Research Ceter, Moffet Feld, CA, 990 [3] Motage, E., Ekambaram, A.: A optmal storage format for sparse matrces. Iformato Processg Letters 90 (87 9) 004 [4] W3C, Smple Object Access Protocol (SOAP)., W3C Note 000 [5] Sczygol, N., J. Mkoda, J., Reewed Geerato of Fte Elemets Meshes Parts of Doma Chagg from Structural ad Techologcal Respects, Proc. of REL- MAS'008. Assessmet of Relablty of Materals ad Structures: Problems ad Solutos, (3-35) 008 [6] Szczerbńsk, Z., Stebor, K., Rozwązywae umerycze układów rówań lowych metodą kwadratu gradetów sprzężoych, Metody Iformatyk Stosowaej, Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk, () 009

Implemetacja arytmetyk przedzałowej z wykorzystaem rozszerzeń multmedalych SSE oraz zmodyfkowaej metody dzelea przedzałowego Marusz Plarek Poltechka Częstochowska, Istytut Iformatyk Teoretyczej Stosowaej Abstract: The am of ths paper s to show terval arthmetcs mplemetato usg sgle-structomultple-data (SIMD) SSE (Streamg SIMD Extesos) multmeda structos, ad regster set extesos. It was prove prevously that SSE extesos ca crease performace of terval calculatos, sce both terval bouds ca be kept oe SSE regster ad all arthmetc operatos ca be doe parallel. I ths work a ew approach to the modfed terval dvso s proposed based o the cocept of terval exteded zero method whch s a part of ths mplemetato. Ths method allows us to reduce the udesrable excess wdth effect. We show the results obtaed for several radomly geerated matrces usg dfferet algorthms (matrx-matrx multplcato, Gauss elmato) ad compare them also wth results obtaed usg other terval lbrares. Keywords: terval arthmetcs, SIMD, SSE, terval computato. Wprowadzee Rozwój arytmetyk przedzałowej astąpł wraz z pracą Moore a [5]. Arytmetyka przedzałowa defuje operacje wykoywae a przedzałach. Przedzały zapsuje sę w forme dwóch lczb - dolej górej gracy. Wszystke operacje arytmetyk przedzałowej są wykoywae a gracach przedzałów. Nawet ajprostsze operacje jak dodawae czy odejmowae wymagają wykoaa co ajmej dwóch strukcj - a górych dolych gracach przedzałów. W wyku tego operacje arytmetycze a przedzałach są wykoywae zacze wolej od aalogczych operacj a lczbach rzeczywstych. Rozszerzea multmedale procesorów Itel (SSE) [0] oraz AMD (3D Now!) [] pozwalają a wektoryzację oblczeń, co zacze przyspesza wykoywae oblczeń arytmetyczych zarówo a lczbach całkowtych, jak zmeoprzeckowych. Posadają oe rejestry mogące przechowywać maksymale 6 bajtów, co sę rówa czterem lczbom całkowtym, czterem lczbom zmeoprzeckowym pojedyczej precyzj lub dwóm lczbom zmeoprzeckowym podwójej precyzj. Poeważ przedzały są reprezetowae jako para lczb zmeoprzeckowych (pojedyczej lub podwójej precyzj) mogą być oe przechowywae w odpowedch rejestrach SSE, a których wszystke operacje arytmetycze będą wykoywae wektorowo. Potecjał rozszerzeń multmedalych został szybko dostrzeżoy przez społeczość zajmującą sę arytmetyką przedzałową. Od początku jedak apotkao a problem zwązay z zaokrąglaem lczb zmeoprzeckowych. Zgode z przyjętym zasadam [], grace przedzałów powy być zaokrąglae odpowedo do mus eskończoośc (lewa graca) Metody Iformatyk Stosowaej, r /00 (3), s. 7-35 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

8 Marusz Plarek oraz plus eskończoośc (prawa graca). Wymaga to cągłej zmay trybu zaokrąglaa, co wpływa egatywe a czas wykoywaa oblczeń. Lambov [3] zapropoował sposób a przechowywae w pamęc prawych grac przedzałów ze zakem przecwym, co pozwolło a zaokrąglae obu grac w jedą stroę (do mus eskończoośc). Goualard [8] tymczasem zapropoował odwrote podejśce - przechowywae lewych grac przedzałów ze zakem przecwym zaokrąglae do plus eskończoośc. Oba podejśca wymagają oczywśce zmodyfkowaa operacj arytmetyczych, ale e powodują oe redukcj efektywośc oblczeń. W ejszej pracy zastosowao podejśce zaprezetowae przez Goualarda. W rozdzale omówoe zostaą aspekty podejśca do zmodyfkowaego przedzałowego dzelea opartego o metodę rozszerzoego przedzałowego zero przedstawoej w pracach [6] oraz [7]. Metoda ta pozwala a redukcję epożądaego efektu rozszerzaa sę przedzałów w wyku operacj dzelea. W pracy [5] udowodoo, że metoda ta może być traktowaa jako zmodyfkowae dzelee przedzałowe wykorzystywaa do wykoywaa oblczeń a dowolych przedzałach. W rozdzale 3 przedstawoa zostae propoowaa mplemetacja arytmetyk przedzałowej wraz ze zmodyfkowaą metodą dzelea z wykorzystaem rozszerzeń multmedalych SSE. W kolejym rozdzale zaprezetowae zostaą wyk uzyskae dla algorytmu możea macerzy oraz rozwązywaa lowych układów rówań dla losowo wygeerowaych przedzałowych macerzy oraz wektorów. Dodatkowo przeprowadzoa też będze aalza porówawcza z ym paketam do oblczeń umeryczych pozwalającym a operacje arytmetycze a przedzałach. Wyk zostaą przeaalzowae zarówo pod kątem czasu wykoywaa oblczeń jak róweż szerokośc uzyskaych przedzałów.. Arytmetyka przedzałowa oraz metoda rozszerzoego przedzałowego zero jako modyfkacja przedzałowego dzelea Nech X = [x, x] Y = [y, y] będą przedzałam, a @ {,,, /}, wtedy: Z = X@Y = {z = x@y, x X y Y }, () X@Y = m{x@y, x@y, x@y, x@y}, max{x@y, x@y, x@y, x@y}. () Cztery podstawowe dzałaa (dodawae, odejmowae, możee oraz dzelee) moża uproścć w astępujący sposób: X Y = x y, x y, X Y = x y, x y, X Y = m{x y, x y, x y, x y}, max{x y, x y, x y, x y}, [ X = [x, x] ],,. 0 / [y, y]. (3) Y y y Jedym z główych problemów arytmetyk przedzałowej jest wzrost szerokośc przedzałów w wyku wykoywaa operacj dzelea. Isteje klka metod redukujących to epożądae zjawsko. W pracach [6] [7] zapropoowao podejśce do rozwązywaa przedzałowych układów rówań bazujące a kocepcj metody rozszerzoego przedzałowego zero. W pracy [5] metoda ta została zaprezetowaa jako propozycja zmodyfkowaego przedzałowego dzelea. Tutaj przedstawoe zostaą tylko jej podstawowe aspekty.

Implemetacja arytmetyk przedzałowej z wykorzystaem rozszerzeń multmedalych SSE... 9 Układ rówań lowych w postac: Ax = b, (4) gdze A to przedzałowa macerz, a x b to przedzałowe wektory (x to wektor ewadomych), moża zapsać jako: Ax b = 0. (5) Rówae (5) w powyższej forme jest sprzecze z bazowym założeam arytmetyk przedzałowej, poeważ jego prawa stroa ma postać zdegeerowaego zero, podczas gdy po lewej stroe zajdują sę przedzały. Formale rówae (5) powo zawerać po prawej stroe przedzałową formę zera (e formę zdegeerowaą [0, 0]). Jako take, przedzałowe zero może być traktowae jako dowoly przedzał, który zawera w sobe zero rzeczywste. Moża zauważyć, że dla każdego przedzału [a] otrzymuje sę: [a, a] [a, a] = [a a, a a] = [ (a a), a a]. (6) Traktując wyk odejmowaa od sebe dwóch detyczych przedzałów jako defcję zera przedzałowego możemy uzyskać jego wymagaą, ajbardzej ogólą defcję, która brzm: zero przedzałowe to dowoly przedzał symetryczy wokół zera rzeczywstego. Warto zazaczyć, że taka defcja e określa w żade sposób szerokośc zera przedzałowego. Rówae (5) moża zatem rozpsać w astępujący sposób: [a, a] [x, x] [b, b] = [ y, y]. (7) Wartość y w powyższym rówau e jest jeszcze zdefowaa taką pozostae do mometu aż wartośc [x, x] e zostaą zdefowae. Dla dodatch przedzałów wejścowych [a, a] oraz [b, b] rówae (7) może zostać zastąpoe astępującym układem rówań: { a x b = y (8) a x b = y, który po dodau stroam będze mał postać: a x b a x b = 0. (9) Aby móc rozwązać rówae (9), musmy ałożyć pewe ograczea, zgode z duchem tak zwaego Problemu Spełea Ograczeń (Costrat Satsfacto Problem) [4]. Perwszym ograczeem akładaym a zmee x x jest rówae (9) przy założeu, że x = x. W tym przypadku uzyskamy rozwązae tego rówaa w postac x m = bb. aa Moża zauważyć, że wartość x m staow górą gracę dla x oraz dolą gracę dla x. Korzystając z klasyczego dzelea przedzałowego jesteśmy w stae uzyskać dolą gracę: x = b oraz górą gracę: x = b. Ostatecze rówae (9) wraz ze wszystkm ałożoym a a ograczeam będze mało postać: x = b b a x, x x [ x m, b ], a x = b b a x [ ] b, x x a, x m. (0)

30 Marusz Plarek Rozwązae rówaa (8) będze astępujące: [x] = [x] = [ b a, b b ], a a [ b b a a, b b ab ] a a. () Wyrażea () defują wszystke możlwe rozwązaa rówaa (9). Najszersze rozwązae, charakteryzowae przez x = b, x = bb ab, pozwala określć maksymalą szerokość a a a przedzałowego zera z rówaa (7) jako y max = b ab. Stosując zdegeerowae rozwązae x = x = x m w rówau (7), otrzymamy mmalą wartość y : y m = ab ab. aa a W takm ujęcu wartość y charakteryzuje dokładość prawej stroy rówaa (7) w stosuku do zdegeerowaego zera a mmala wartość y m jest defowaa wyłącze przez przedzałowe parametry [a] [b]. Wartośc y mogą być zatem rozpatrywae w pewym sese jako stopeń epewośc rozwązaa przedzałowego, wywołaej początkową epewoścą zawartą w rówau (7). Wprowadzmy wyrażee: α = y y m, () y max y m które może być traktowae jako pozom epewośc przedzałowego rozwązaa rówaa (7). Wartość α rośe od 0 do wraz ze spadkem szerokośc rozwązaa przedzałowego z maksymalej wartośc do 0. W kosekwecj, wartośc α mogą być traktowae jako etykety α-pozomów, opsujących pewe rozmyte rozwązae rówaa (). Ostatecze zatem rozwązae będze mało postać trójkątej lczby rozmytej: x = { b a, b b a a, b b ab } a a. (3) Moża przyjąć, że przedzałową formą rozwązaa aalzowaego problemu jest właśe ośk rozmytej lczby. Take rozwązae może być traktowae jako ajbardzej pesymstycze, poeważ odpowada oo ajższemu α-pozomow rozwązaa rozmytego. Wykowe rozwązae rozmyte może zostać zredukowae do postac przedzałowej poprzez procedurę defuzyfkacj, czyl wyostrzaa lczb rozmytych. W aalzowaym przypadku zdefuzyfkowae lewe prawe grace rozwązaa są reprezetowae przez wyrażea: x def = 0 x(α)dα 0 dα, x def = 0 x(α)dα 0 dα. (4) Na podstawe rówań (8), () oraz (4) moża otrzymać wyrażea opsujące x def oraz x def : x def = b a y max y m a, x def = b a y max y m. (5) a Uwzględając fakt, że algebracze ekwwaletym przedstaweem rówaa ax = b jest x = b a, przedzał [x def, x def ] może być traktoway jako przyblżoy rezultat dzelea b/a.

Implemetacja arytmetyk przedzałowej z wykorzystaem rozszerzeń multmedalych SSE... 3 3. Zastosowae rozszerzeń SSE w mplemetacj arytmetyk przedzałowej Rozszerzea multmedale zostały wprowadzoe przez frmę Itel w 996 roku w procesorach Petum. Perwsza wersja tych rozszerzeń, azwaych MMX, zawerała osem 64-btowych rejestrów oraz zestaw strukcj do wykoywaa operacj a ch. W rejestrach tych mogły być przechowywae lczby całkowte, a których operacje arytmetycze były wykoywae wektorowo. Pozwolło to a zwększee wydajośc oblczeń arytmetyczych wykoywaych a lczbach całkowtych. W roku 999 wraz z pojaweem sę a ryku procesorów Petum III, Itel wprowadzł ową wersję rozszerzeń multmedalych, SSE. Nowe rozszerzea zawerały dalej osem rejestrów, ale podwojoo ch rozmar - do 8 btów. Poadto możlwe stało sę wykoywae operacj arytmetyczych a lczbach zmeoprzeckowych pojedyczej precyzj. W kolejych latach Itel wprowadzał owe wersje rozszerzeń SSE, ostatą wersją są rozszerzea SSE 4. dostępe w procesorach z ser Core (3, 5 oraz 7). Wraz z każdą ową wersją wprowadzae były owe strukcje, przy czym ajważejsze z puktu wdzea ejszej pracy są strukcje wprowadzoe w SSE, które pozwalają a wykoywae operacj a lczbach zmeoprzeckowych podwójej precyzj (wykorzystaych też zostało klka owych strukcj z SSE 3). W dalszej częśc artykułu psząc o rozszerzeach SSE będzemy mel a myśl rozszerzea w wersj SSE. Rejestry SSE ozaczae są kolejo xmm0, xmm,..., xmm7. Każdy z ch może przechowywać 4 lczby całkowte lub zmeoprzeckowe pojedyczej precyzj, albo lczby zmeoprzeckowe podwójej precyzj. Istrukcje SSE zawerają zestaw operacj arytmetyczych, logczych oraz zwązaych z wykorzystaem pamęc cache, które moża wykoywać a daych zajdujących sę w rejestrach xmm. Rozszerzea multmedale dosyć szybko stały sę populare wśród ludz zajmujących sę arytmetyką przedzałową. Poeważ przedzały przechowywae są w pamęc w postac dwóch lczb zmeoprzeckowych (zazwyczaj stosuje sę lczby podwójej precyzj), rozszerzea SSE wydają sę być bardzo dobrym rozwązaem pozwalającym a zwększee wydajośc oblczeń arytmetyczych a przedzałach. Perwsze próby wykorzystaa rozszerzeń SSE przez vo Gudeberga [9] e przyosły jedak zbyt optymstyczych rezultatów. Czasy wykoywaych oblczeń e różły sę zacze od czasów oblczeń wykoywaych bez wykorzystaa rozszerzeń SSE. Powodem tego była koeczość cągłej zmay trybu zaokrąglaa lczb zmeoprzeckowych - do mus eskończoośc dla lewych grac przedzałów oraz do plus eskończoośc dla prawych grac. Goualard [8] zapropoował sposób przechowywaa przedzałów w pamęc w postac [a, a], dzęk czemu moża było stosować tylko jede tryb zaokrąglaa (do plus eskończoośc). Oczywśce w przypadku, gdy przedzał ma być zapsay do plku, czy wyśwetloy a ekrae motora, będze o z powrotem zameoy do postac klasyczej [a, a]. Pozwolło to a ukęce cągłej zmay trybu zaokrąglaa, co jest operacją bardzo kosztową. Oczywśce take podejśce wymaga zmodyfkowaa bazowych operacj arytmetyczych a przedzałach. W ejszej pracy zastosowao podejśce zapropoowae przez Goualarda. Przedzały są przechowywae w pamęc jako lczby zmeoprzeckowe podwójej precyzj, dzęk czemu do jedego rejestru SSE mogą być załadowae obe grace przedzału. Operacje arytmetycze a przedzałach zostały odpowedo zmodyfkowae aby móc wykorzystać pełe potecjał rozszerzeń multmedalych SSE. W tabel zaprezetowaa została mplemetacja dwóch bazowych operacj a przedzałach - dodawaa odejmowaa.

3 Marusz Plarek Tabela. Operacje dodawaa odejmowaa przedzałowego a rejestrach SSE dodawae odejmowae xmm0 [a, a] xmm0 [a, a] xmm [b, b] xmm [b, b] xmm _mm_add_pd(xmm0, xmm) xmm _mm_shuffle_pd(xmm, xmm, ) xmm3 _mm_add_pd(xmm0, xmm) Przedzały [a, a] oraz [b, b] są ładowae do rejestrów xmm0 oraz xmm odpowedo. W przypadku dodawaa wykoywaa jest operacja _mm_add_pd(xmm0, xmm) wykoująca wektorowe dodawae. Wyk tej operacj jest przechowyway w rejestrze xmm. Implemetacja operacj odejmowaa wygląda podobe z jedą różcą. Przed samym dodawaem (poeważ przedzały są przechowywae w postac [a, a], zamast odejmowaa przedzałów jest wykoywae ch dodawae) wykoywaa jest operacja _mm_shuffle_pd(xmm, xmm, ). Operacja ta pobera odpowede wartośc z obu rejestrów przekazywaych jako parametry wywołaa fukcj (w aszym przypadku xmm oraz xmm) a podstawe wartośc mask, przekazywaej jako trzec parametr wywołaa fukcj. W zaprezetowaym przypadku fukcja _mm_shuffle_pd() jako argumety przyjmuje dwa razy rejestr xmm, w którym przechowyway jest odjemk, atomast wartość mask ustawoa a, ozacza zamaę mejscam grac przedzału [b, b], jak wyka to z defcj odejmowaa przedzałowego (3). Ostateczy wyk odejmowaa jest zapsyway w rejestrze xmm3. Metoda przedzałowego możea wymaga wykoaa 4 możeń co ajmej trzech porówań (mmum-maxmum) (3). Moża ją jedak zredukować, wprowadzając waruk akładae a wartośc grac obu przedzałów wejścowych. Zastosowao warat zawerający 9 waruków. W 8 przypadkach wykoywae są tylko dwa możea (brak operacj porówywaa mmum-maxmum), w ostatm atomast wykoywae są cztery możea operacje porówywaa mmum-maxmum. Jest to ajbardzej wydaja metoda możea, stosowaa w welu paketach do oblczeń umeryczych a przedzałach. Metoda ta została odpowedo zmodyfkowaa dla przedzałów przechowywaych w pamęc w postac [a, a] oraz zamplemetowaa przy użycu rozszerzeń SSE. Zamast klasyczego dzelea przedzałowego propoujemy metodę opsaą w rozdzale. Została oa róweż odpowedo zmodyfkowaa dla rozdzałów przechowywaych w pamęc w postac [a, a] oraz zamplemetowaa przy użycu rozszerzeń SSE. Poadto zamplemetowaa została klasycza metoda dzelea, która będze wykorzystaa w testach porówawczych, omówoych w kolejym rozdzale. 4. Aalza zapropoowaego podejśca dla wybraych algorytmów umeryczych Dla zapropoowaego podejśca opracowao oraz przetestowao dwa często stosowae algorytmy umerycze - możea macerzy oraz rozwązywaa przedzałowych lowych układów rówań przy użycu algorytmu elmacj Gaussa. Testy były przeprowadzae a maszye wyposażoej w dwurdzeowy procesor Itel Core 5 50.40 GHz. W celach porówawczych wykorzystae zostały trzy zae często stosowae wśród społeczośc zajmującej sę arytmetyką przedzałową bblotek RealLb [4], Profl/BIAS [] oraz Boost [3]. RealLb jest bbloteką przezaczoą główe do oblczeń a lczbach rzeczywstych, ale zawera też moduł do arytmetyk przedzałowej. Bbloteka ta jest apsaa w oparcu o roz-

Implemetacja arytmetyk przedzałowej z wykorzystaem rozszerzeń multmedalych SSE... 33 szerzea SSE. Profl/BIAS jest bbloteką typowo do zastosowań przedzałowych, przy czym jej mplemetacja e wykorzystuje rozszerzeń multmedalych. Paket Boost zawera moduł do arytmetyk przedzałowej róweż e korzysta z rozszerzeń SSE. Zam przejdzemy do aalzy uzyskaych wyków, wprowadzmy deks RIU, który może być określay jako stopeń epewośc uzyskaego rozwązaa. Ideks te był wylczay dla wektorów wykowych (w przypadku algorytmu elmacj Gaussa) oraz macerzy wykowych (w przypadku możea macerzy). W tabel przedstawoa będze maksymala wartość tego deksu uzyskaa dla przedzałów wykowych. RIU = max((x m x), (x x m )) x m 00%, (6) gdze x m = xx [x] = [x, x]. Ideks te pozwol a reale oszacowae szerokośc uzyskaych przedzałów dla przeprowadzoych badań. Wszystke testy były przeprowadzae a losowo wygeerowaych macerzach o rozmarach 500 500, 000 000 oraz 3000 3000. 4.. Możee macerzy Klasyczy algorytm przedzałowego możea macerzy wygląda astępująco: k=w [a j, a j ] = [a j, a j ] [b k, b k ] [c kj, c kj ], (7) gdze = 0,,... ; j = 0,,... m, [c kj, c kj ] oraz [b k, b k ] to przedzałowe macerze wejścowe, atomast [a j, a j ] to przedzałowa macerz wykowa. W aszym przypadku mamy do czyea z macerzam kwadratowym, czyl = m = w. Tabela. Czasy oblczeń oraz wartośc RIU dla algorytmu możea macerzy Macerz def RL BIAS Boost RIU [%] czas [s] RIU [%] czas [s] RIU [%] czas [s] RIU [%] czas [s] 500 500 9.80.066 9.80.539 9.80 5.856 9.80 7.55 000 000 9.80.75 9.80 6.744 9.80 46.44 9.80 6.03 3000 3000 9.80 450.34 9.80 559.994 9.80 54.463 9.80 904.98 Wyk przeprowadzoych badań przedstawoe zostały w tabel. W kolume def zajdują sę wyk dla aszej mplemetacj, atomast dla bblotek RealLb, Profl/BIAS Boost odpowedo w kolumach RL, BIAS oraz Boost. Wartość RIU dla wszystkch mplemetacj jest taka sama (wartośc RIU były rówe 0% dla macerzy wejścowych). Ozacza to, że zastosowae różych waratów możea przedzałowego (róża lczba waruków) e wpłyęło w żade sposób a szerokość uzyskwaych przedzałów. Zauważale są atomast spore różce czasowe. Bblotek Boost oraz Profl/BIAS lczą ajwolej, co wyka główe z braku zastosowaa rozszerzeń multmedalych. Nasza mplemetacja jest o ok. 30% bardzej wydaja od bblotek RealLb. Warto tutaj zazaczyć, że autorzy RealLb zastosowal y algorytm operacj możea przedzałowego, który sę składa tylko z 3 waruków, wykoując wszędze po 4 operacje możea oraz operacje porówaa. Jest to algorytm zacze wolejszy od algorytmu zastosowaego w aszej mplemetacj, stąd mędzy ym take różce czasowe. k=0

34 Marusz Plarek 4.. Algorytm elmacj Gaussa Klasyczy algorytm elmacj Gaussa składa sę z dwóch etapów: postępowae wprost: [a j, a j ] (k) = [a j, a j ] (k) [a k, a k ] (k) [a kj, a kj ] (k) [a kk, a kk ] (k), [ b, b ] (k) = [ b, b ] (k) [a k, a k ] (k) [b k, b k ] (k) [a kk, a kk ] (k), (8) [a kk, a kk ] (k) 0, (k = 0,,..., ;, j = k, k,..., ), postępowae odwrote: [s, s] = j= j= [x, x ] = [a j, a j ] [x j, x j ], ( [b, b ] [s, s] ) [a, a ], (9) gdze = 0,,..., [a j, a j ] to elemety macerzy przedzałowej, [b, b ] - wektora wyrazów wolych, [x, x ] - wektora wykowego. W aszej aalze operacje dzelea wykoywae były stosując zarówo klasyczą przedzałową metodę dzelea, jak róweż opsaą w rozdzale ową metodę. Tabela 3. Czasy oblczeń oraz wartośc RIU dla algorytmu elmacj Gaussa Macerz def odef RL BIAS Boost RIU [%] czas [s] RIU [%] czas [s] RIU [%] czas [s] RIU [%] czas [s] RIU [%] czas [s] 500 500 4.39 0.4 9.308 0.505 9.308 0.44 9.308.005 9.308.859 000 000 3.84 6.03 9.79 5.694 9.79 5.7 9.79 8.46 9.79 8.04 3000 3000 4.099 4.443 9.34 4.87 9.34 08.763 9.34 57.84 9.34 594.9 W tabel 3 przedstawoe zostały uzyskae wyk badań. Wprowadzoa została dodatkowa koluma odef zawerająca wyk uzyskae przez aszą mplemetację dla klasyczego dzelea. Wartośc RIU uzyskae dla bblotek RealLb, Profl/BIAS, Boost oraz aszej (odef ) są take same (wartośc wejścowe RIU dla macerzy wektorów były rówe 0%). Natomast deks RIU dla owej metody (def ) ma zacze mejsze wartośc, co ozacza, że przedzały wykowe są węższe od przedzałów uzyskaych klasyczą metodą dzelea. Potwerdza to skuteczość owej metody w redukcj epożądaego zjawska wzrostu szerokośc przedzałów. Podobe jak w przypadku algorytmu możea macerzy czas wykoywaa oblczeń przez bblotek Profl/BIAS oraz Boost był ajwększy. Wydajość aszej mplemetacj jest a pozome RealLb. Wartym odotowaa jest fakt, że zastosowae owej metody dzelea opartej o metodę przedzałowego rozszerzoego zero e wpłyęło zasadczo a czas wykoywaa oblczeń. Różce mędzy klasyczym dzeleem (koluma odef ) a ową metodą (koluma def ) są mmale, awet a korzyść owej metody. 5. Podsumowae Otrzymae wyk badań potwerdzają, że zastosowae rozszerzeń multmedalych SSE w zagadeach zwązaych z arytmetyką przedzałową zacze skraca czas wykoywaa oblczeń. Bblotek Profl/BIAS oraz Boost, które zostały zamplemetowae z pomęcem

Implemetacja arytmetyk przedzałowej z wykorzystaem rozszerzeń multmedalych SSE... 35 rozszerzeń multmedalych wykoują oblczea zdecydowae dłużej. Zastosowae ego formatu przechowywaa przedzałów w pamęc ([a, a]) oraz odpowede zmodyfkowae operacj arytmetyczych pozwolło a wykoywae oblczeń bez cągłej zmay trybu zaokrąglaa, co e spowodowało utraty wydajośc. Poadto zastosowaa w aszej mplemetacj zmodyfkowaa metoda dzelea bazująca a kocepcj metody rozszerzoego przedzałowego zero pozwala a uzyskwae zacze węższych przedzałów, bez utraty wydajośc. Bblografa [] 3D Now! Techology Maual [ole]. http:// www.amd.com/ us-e/ assets/ cotet_type/ whte_ papers_ad_tech_docs/ 98.pdf [] Basc Lear Algebra Subprograms Stadard [ole]. http:// www.etlb.org/ blas/ blast-forum/ blas-report.pdf [3] Boost Iterval Arthmetc Lbrary [ole]. http:// www.boost.org/ doc/ lbs/ _43_0/ lbs/ umerc/ terval/ doc/ terval.htm [4] J. C. Cleary, Logcal Arthmetc. Future Computg Systems, 987, s. 5-49 [5] L. Dymova, M. Plarek, R. Wyrzykowsk, Solvg the systems of terval lear equatos wth use of modfed terval dvdg procedure. Lecture Notes Computer Scece, vol. 6068, 00 [6] L. Dymova, P. Sevastjaov, Fuzzy soluto of terval lear equatos. Lecture Notes Computer Scece, vol. 4697, 008, s. 39-399 [7] L. Dymova, P. Sevastjaov, A ew method for solvg terval ad fuzzy equatos: lear case. Iformato Sceces 7, 009, s. 95-937 [8] F. Goualard, Fast ad Correct SIMD Algorthms for Iterval Arthmetc [ole]. INRIA, 008, http:// hal.archves-ouvertes.fr/ docs/ 00/ 8/ 84/ 56/ PDF/ tervals-sse-log-paper.pdf [9] J. Wolff vo Gudeberg, Iterval Arthmetc o Multmeda Archtectures. RR 65, Lehrstuhl fur Iformatk II. Uverstat Wurzburg, October 000. [0] Itel SSE4 Programmg Referece [ole]. http://software.tel.com/fle/887/ [] R. B. Kearfott, Iterval Computatos: Itroducto, Uses, ad Resources. Euromath Bullet, vol., 996, s. 95- [] O. Kuppel, Profl/BIAS v.0 [ole]. http://www.t3.tu-harburg.de/kel/profl/profl.ps.gz [3] B. Lambov, Iterval Arthmetc usg SSE-. Lecture Notes I Computer Scece, vol. 5045, 008, s. 0-3 [4] B. Lambov, RealLb 3 Maual [ole]. http://www.brcs.dk/~bare/reallb/reallb.pdf [5] R. E. Moore, Iterval Arthmetc ad Automatc Error Aalyss Dgtal Computg. PhD thess, Staford Uversty, 96

Modelowae predykcyje a przykładze rówoległej hybrydy regresyjej w zastosowau do predykcj smaku wa Macej Roszkowsk Zachodopomorsk Uwersytet Techologczy w Szczece, Wydzał Iformatyk Abstract: The artcle presets fuctog of may methods at the same tme as a Parallel Regresso Hybrd. A teto of ths hybrd applcato predcto modelg s usg stregths of appled methods ad excluso of weakesses. Descrbed Parallel Regresso Hybrd was appled for predcto of we taste. Keywords: Data mg, Parallel Regresso Hybrd. Wprowadzee Modelowae predykcyje jest jedym z ajczęstszych zadań, którym zajmuje sę eksploracja daych (ag. data mg). Jego celem jest budowa modelu, który umożlw wykoae progozy pojedyczej zmeej wyjścowej a podstawe zaych wartośc zmeych wejścowych. Ze względu a typ progozowaej zmeej moża wyróżć dwe główe metody modelowaa predykcyjego: metody klasyfkacj, gdze zmea progozowaa jest zmeą kategoryczą, metody regresj, gdze zmea progozowaa ma wartość lczbową. Do modelowaa predykcyjego moża wykorzystać wele metod eksploracj daych osobo lub wykorzystać podejśce hybrydowe do wsparca procesu decyzyjego. Hybrydowe połączee welu metod o różych sposobach dzałaa różych cechach pozwala a uzyskae efektu syerg []. Wspóle dzałae metod daje lepsze efekty wzrost potecjału oblczeowego w porówau do oblczeń dywdualych. Tak efekt jest możlwy do uzyskaa dzęk wykorzystau mocych stro użytych metod przy jedoczesej elmacj słabych. Podzał hybrydowych systemów telgetych ze względu a budowę zakłada stee różych model tegrowaa systemów telgetych [3][4]:. Modele fukcjoujące oddzele (ag. stad aloe models) to take modele, w których wykorzystywae podsystemy są ezależe e oddzaływają a sebe, a jedye służą porówywau możlwośc welu techk jedocześe. Przykładem jest hybryda rówoległa, w której wyk uzyskae przez każdy z podsystemów e wpływają a dzałae pozostałych.. Modele trasformacyje (ag. trasformatoal) składają sę z ezależych podsystemów, jedakże każdy z ch rozpoczya sę jako jede typ, a kończy jako drug typ. 3. Modele luźo powązae (ag. loose couplg) to take modele, które w prawdze są ze sobą ztegrowae, gdyż każdy z podsystemów jest odpowedzaly za realza- Metody Iformatyk Stosowaej, r /00 (3), s. 37-4 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

38 Macej Roszkowsk cję częśc wspólego zadaa, jedakże wspóla komukacja występuje jedye poprzez zbory daych. Przykładem jest hybryda sekwecyja, w której wyjśce jedego z podsystemów staow jedocześe wejśce dla drugego podsystemu. 4. Modele ścśle powązae (ag. tght couplg) składają sę z podsystemów zależych od sebe, współdzelących dae rezydujące w pamęc, a jedocześe zachowujących własą odrębość. Przykładem jest hybryda zaurzoa, w której jede z podsystemów jest wykorzystyway do pełea określoych fukcj w ramach drugego podsystemu jedocześe staow jego tegralą część. 5. Modele w peł ztegrowae (ag. full tegrato) współdzelą struktury daych reprezetowaą wedzę. W ejszej pracy zostało zaprezetowae hybrydowe podejśce do realzacj modelowaa predykcyjego. Sześć metod eksploracj zostało połączoych rówolegle w model hybrydowy. Tak powstała rówoległa hybryda umożlwła wykorzystae ezależych podsystemów porówae efektywośc w dzałau wspólym samodzelym w probleme regresyjym. Problem regresyjy był zrealzoway w hybrydze w oparcu o astępujące metody (stadardowo zamplemetowae w pakece Statsoft Statstca 9.0): Stadardowa Aalza CHAID, Wyczerpujący Aalza CHAID, Losowy las, Wzmacae drzewa, Sec euroowe RBF, K-ajblższych sąsadów.. Ops daych wejścowych W oblczeach wykorzystao dae dotyczące preferecj przy wyborze smaku wa [][5]. Próbk były zberae od 004 do 007 roku przez frmę CVRVV zajmującą sę certyfkacją portugalskego wa. Na zbór daych składa sę 6497 próbek portugalskch w Vho Verde (4898 próbek wa bałego 599 próbek wa czerwoego). Każda próbka była charakteryzowaa przez cech fzykochemczych. Cechy fzykochemcze zostały zmerzoe w laboratorach frmy CVRVV. Tabela przedstawa ogólą charakterystykę statystyczą dla każdej cechy fzykochemczej. Tabela. Ogóla charakterystyka statystycza zmeych wejścowych

Modelowae predykcyje a przykładze rówoległej hybrydy regresyjej 39 Każda próbka wa była oceaa jedocześe przez 3 ekspertów. Eksperc oceal wo e zając jego cech fzykochemczych. Ostatecza ocea wa była medaą 3 oce w skal od 0 (bardzo złe) do 0 (wyśmete). Obydwa zbory w e są jedorode. Poszczególe ocey wystawoe przez ekspertów są reprezetowae w obydwu zborach przez róży procetowy udzał przypadków. Lczość próbek dla każdego zboru pokazaa jest a rysuku. Wo bałe Wo czerwoe 500 000 98 800 700 600 68 638 Lczość próbek 500 000 500 0 457 880 63 75 0 0 0 5 0 3 4 5 6 7 8 9 0 Lczość próbek 500 400 300 00 00 0 99 53 0 0 0 8 0 0 3 4 5 6 7 8 9 0 Jakość wa Jakość wa Rysuek. Lczość próbek dla zborów wejścowych (wa bałe wa czerwoe) Dae posłużył do uczea hybrydy (losowy podzał zboru: 50% dae uczące, 50% dae testowe), atomast dae zwerające cechy w czerwoych były wykorzystywae przy wdrożeu hybrydy. Przed wykorzystaem dae wejścowe zostały poddae utaryzacj. W te sposób uzyskao zmee o ujedolcoym zakrese zmeośc. W wyku zastosowaa utaryzacj uzyskujemy zmee o wartoścach ależących do przedzału [0;]. Oblczea prezetowae w artykule zostały wykoae za pomocą paketu StatSoft STATISTICA 9.0 oraz arkusza kalkulacyjego Mcrosoft Excel 003. 3. Rówoległa hybryda regresyja Obszar roboczy projektu rówoległej hybrydy predykcyjej (Rysuek ) pokazuje przepływ daych wejścowych od węzłów źródeł daych, poprzez węzły przygotowaa, czyszczea trasformacj daych, poprzez aalzę daych, aż do raportów. W węźle wybór dokoywaa jest progoza hybrydy za pomocą jedej z metod łączea wyków otrzymaych przez róże modele. Najbardzej zae techk ocey łączea wyków model to: agregacja (ag. baggg), wzmacae (ag. boostg), kotamacja model (ag. stackg, stacked geeralzatos) metauczee (ag. meta-learg).

40 Macej Roszkowsk Rysuek. Rówoległa hybryda regresyja Wyjaśee do rysuku : Czerwoe / Bałe dae wejścowe dotyczące w czerwoych / bałych. Podzał podzał a dae uczące testowe. S Chad, W Chad, Las L, Drzewa, RBF, K-NN zastosowae 6 metod do problemu regresj. Wybór oszacowae przewdywań wszystkch model za pomocą agregacj. Wyk ostateczy wyk uzyskay przez całą hybrydę. W ejszej pracy została wykorzystaa techka agregacj model. Na potrzeby pracy wykoao oceę łączee wyków model w czterech waratach: głosowae wszystkch model, głosowae 3 ajlepszych model, głosowae ajlepszych model oraz wybór ajlepszego modelu. 4. Wyk Metody wchodzące w skład rówoległej hybrydy regresyjej były uczoe testowae a detyczych zestawach daych dotyczących w bałych. Poszczególe metody zachowywały sę tak jakby dzałały oddzele, geerując dywduale raporty. Dae wejścowe dotyczące w czerwoych posłużyły wdrożeu. Wdrożee dotyczyło dzałaa wspólego oddzelego metod wchodzących w skład hybrydy. Dae wdrożeowe gdy wcześej e były podawae a wejśce hybrydy. Dzęk temu starao sę uzyskać ezależość wyków od kokretych daych. Pommo tego, że dae a temat w czerwoych były zberae w te sam sposób co dae a temat w bałych, różły sę: jeżel chodz o ogólą lczebość, lczebość dla poszczególych oce eksperckch oraz pod względem wartośc średch meday.

Modelowae predykcyje a przykładze rówoległej hybrydy regresyjej 4 Tabela. Średe odchylee: ocey eksperckej progozowaej od ocey eksperckej rzeczywśce udzeloej dla wszystkch próbek w czerwoych (MAE) Do porówaa wszystkch metod w ramach rówoległej hybrydy regresyjej posłużoo sę średm błędem bezwzględym (ag. MAE, Mea Absolute Error) wyrażoym jako średe odchylee: ocey eksperckej progozowaej od ocey eksperckej rzeczywśce udzeloej dla wszystkch próbek w czerwoych (Tabela ). W celu oblczea średego odchylea w perwszym kroku oblczaa była suma odchyleń wartośc progozowaych przez model do wartośc rzeczywstych wyzaczoych przez ekspertów dla wszystkch próbek ze zboru wdrożeowego. W kroku drugm wyzaczay był stosuek sumy odchyleń do lczby próbek ze zboru testowego. W zwązku z tym, że wszystke wartośc ze zboru daych podlegały utaryzacj, przyjęto zasadę wyrażaa odchylea w procetach. Przykładowo odchylee dodate (czyl w górę od rzeczywstej wartośc ocey eksperckej) o wartośc 0, rozpatrywae w przedzale [0;] to 0%, podobe odchylee ujeme (pożej rzeczywstej wartośc ocey eksperckej) o wartośc -0,3 to 30%. Najmejsze średe odchylee uzyskao dla oce eksperckch 5 6, które jedocześe były ajlczej reprezetowae. Take wyk były typowe dla wszystkch rozpatrywaych metod. Nsk procet odchyleń może być spowodoway faktem, że te dwe ocey są wartoścam środkowym. Poruszając sę a skal eksperckej w górę w dół od tych wartośc uzyskujemy dla wszystkch model procetowy wzrost odchyleń. Najmejsze średe odchylee wśród wszystkch użytych metod uzyskao dla hybrydy, w której ostatecza decyzja o wyborze ocey jest podejmowaa przez głosowae 3 ajlepszych model (3,39%). Koleje mejsca pod względem ajmejszego odchylea zajmują róweż modele hybrydowe: głosowae ajlepszych model głosowae wszystkch model (3,535% 3,536%). Na mejscu 4 zajduje sę model hybrydowy wybór ajlepszego modelu oraz metoda losowy las z detyczym wykam. Jest to spowodowae faktem, że metoda lasu losowego uzyskała ajlepszy wyk spośród ych metod samodzelych. Tak węc, jej wyk jest tak sam jak hybrydy opartej a ej samej. Koleje mejsca zajęły pozostałe samodzele metody. Wyróżeem w tabel zazaczoo ajlepsze wyk poszczególych metod dla daej ocey eksperckej. Poza wykam dla ocey 5, e ma wśród ch żadych hybryd. 5. Zakończee W artykule zostało przedstawoe modelowae predykcyje a przykładze rówoległej hybrydy regresyjej. Przeprowadzoe oblczea jedozacze potwerdzają uwersalość

4 Macej Roszkowsk w wykorzystau rozwązań hybrydowych wskazują a syergę powstającą przy umejętym połączeu ze sobą klku metod. Oczywśce e wszystke połączoe modele umożlwają uzyskae dobrych wyków. Dobór metod do hybrydy powe z jedej stroy brać pod uwagę różorodość metod, z drugej stroy róweż poprawość uzyskwaych wyków przez pojedycze metody. Wybór metod składowych o skraje słabej efektywośc wydajośc może wpłyąć a wyk uzyskwae przez samą hybrydę. Ne ma estety gotowych rozwązań, w takch wypadkach ależy kerować sę tucją dośwadczeem oraz wykam eksperymetów przygotowawczych. W przyszłośc autor plauje opracować wdrożyć hybrydę w peł ztegrowaą, która w telgety sposób będze współdzelć struktury daych reprezetowaą wedzę. Zastosowae takego modelu hybrydowego a pewo wpłye a wysok ostateczy wyk tego rozwązaa. Bblografa [] Cortez P. et al., Modelg we prefereces by data mg from physcochemcal propertes, I Decso Support Systems, Elsever 009, pp. 547-553. [] Egell S., Frehse G., Scheder E. (Eds.), Modelg, Aalyss, ad Desg of Hybrd Systems, Sprger, Berl 00. [3] Kargupta H. et al., Next Geerato of Data Mg, CRC Press, 008. [4] Shawkat Al ABM, Xag Y., Dyamc ad Advaced Data Mg for Progressg Techologcal Developmet: Iovatos ad Systemc Approaches, Hershey, New York 00. [5] Źródło teretowe: http://archve.cs.uc.edu/ml/datasets/wequalty.

Optymalzacja zapytań a kompresja daych w baze DB 9 Ageszka Węgrzy, Jacek Tkacz, Adam Wojcechowsk Uwersytet Zeloogórsk, Wydzał Elektrotechk, Iformatyk Telekomukacj Poltechka Pozańska, Wydzał Iformatyk Zarządzaa Abstract: I the paper, query optmzato problem SQL laguage IBM DB system s preseted. DB database system 9.5 verso has possblty of data compresso. Data compresso s made by searchg of recur data records. For such recur data addtoal dctoary s prepare. Am of research was testg of access by user to compress ad o-compress data. For ths problem specal structure of data was prepared. I the paper result of testg compresso ad o-compresso data s preseted, too. Keywords: databases,data compresso, expla pla. Wprowadzee Na całym śwece moża zaobserwować eustający wzrost zapotrzebowaa a łatwy szybk dostęp do formacj. Lczba formacj cągle wzrasta, zarówo tych ważych jak tych bezużyteczych. Do przechowywaa, zarządzaa udostępaa daych poza sprzętem ezbęda jest techologa formatycza. Często klasycze bazy daych e radzą sobe z bardzo dużą loścą daych oraz cągle zwększającym sę zapotrzebowaem a dostęp do ch. Zarówo producec sprzętu jak oprogramowaa wychodzą aprzecw wcąż rosącemu zapotrzebowau a składowae daych jak zwększeu dostępu do ch.. Metody kompresj daych w baze DB 9.5 Ważym aspektem systemów bazodaowych jest optymalzacja. Frma IBM w swojej baze DB propouje szereg udoskoaleń oszczędoścowych zwązaych z kompresją daych [,]. Jedą z ajważejszych własośc fukcjoalych systemów bazodaowych jest jedak jak ajszybszy dostęp do formacj wydawać by sę mogło, że kompresja poza zmejszeem lośc przechowywaych daych wese zacze spowolea. Zarówo czas a skompresowae daych w momece ch wprowadzaa do bazy, jak czas potrzeby a dekompresję w momece uzyskaa dostępu do ch powy wykluczyć przydatość tego typu rozwązań. Zapropoowae przez frmę IBM mechazmy ewele jedak mają wspólego z kompresją ajczęścej spotykaą w techologach formatyczych, choć wykem dzałaa wprowadzoych udoskoaleń jest zacze zmejszee rozmaru daych, a dodatkowo zmejszee kosztu dostępu do ch, a tym samym zwększee wydajośc. Metody Iformatyk Stosowaej, r /00 (3), s. 43-50 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

44 Ageszka Węgrzy, Jacek Tkacz, Adam Wojcechowsk W rozdzale tym zostaą przedstawoe pokrótce opsae róże sposoby kompresj daych w baze IBM DB w wersj 9.5. W celu przeprowadzea eksperymetu wykorzystao kompresję werszy... Kompresja werszy W wersj 9.5 systemu baz daych DB frmy IBM wprowadzoo techologę veom kompresującą dae w tabel [3,4,5]. Dla powtarzających sę wzorców daych budoway jest słowk kompresj, który zawera krótk klucz do reprezetowaa wzorców. Wówczas w tabel dae powtarzające sę zastępowae są krótkm kluczem. Słowk kompresj jest tworzoy dla całej tabel. Wersze dodawae po zbudowau słowka są także kompresowae. Tabele, które zbudowao jako eskompresowae, moża skompresować poprzez wydae odpowedego polecea SQL. Aktywację kompresj werszy podczas tworzea tabel wykouje sę poleceem: CREATE TABLE <azwa> compress yes; Po wprowadzeu daych ależy użyć polecea: REORG TABLE <NAZWA TABELI>; Tabela zostae przeszukaa pod kątem powtarzających sę wpsów wzorów. Kedy powtarzające sę dae zostaą zebrae, słowk kompresj automatycze utworzoy podczas tworzea tabel, zostae zaktualzoway. Powtarzające sę wpsy zameoe zostają a krótke umerycze klucze. Słowk kompresj przechowuje orygale dae odpowadające wcześej przypsaym kluczom umeryczym. Rozmary słowka wahają sę od 50 kb do 50 kb. Jeżel efekt kompresj ektórych daych jest rówy, lub wększy rozmarow daych orygalych, kompresja e astępuje. Aktywacja kompresj wartośc a stejącej już tabel odbywa sę przy pomocy polecea: ALTER TABLE <NAZWA TABELI> COMPRESSION YES; Po wykoau powyższego polecea zostae utworzoy słowk kompresj, a wszystke już stejące wersze zostaą skompresowae. Po poleceu ALTER TABLE e jest wymagae użyce polecea REORG. Należy meć jedak a uwadze to, że w przypadku używaa poleceń INSERT, IMPORT INSERT, LOAD INSERT, REDISTRIBUTE, a tabelach posadających włączoą kompresję oraz wygeeroway słowk kompresj, wprowadzae dae kompresowae są jako pojedycze wersze, e borąc pod uwagę całej tabel. Może sę, węc zdarzyć, że w tabel będą występować wersze skompresowae eskompresowae. Aby tego ukąć, po użycu wymeoych strukcj, koecze jest poowe przebudowae słowka kompresj przy użycu polecea REORG. Tym sposobem, w momece tworzea słowka kompresj, pod uwagę braa będze cała tabela. Przebudowę słowka kompresj ależy wykoać róweż w przypadku zaczącej modyfkacj daych przy użycu strukcj UPDATE. Dezaktywacja kompresj werszy wykoywaa jest przy pomocy polecea: ALTER TABLE <NAZWA TABELI> COMPRESSION NO; Aby astąpła lkwdacja słowka kompresj, róweż w tym przypadku ależy użyć polecea REORG. Kompresja werszy e występuje w przypadku daych typu LONG, VARCHAR, LOB XML (przechowywaego w postac herarchczej).

Optymalzacja zapytań a kompresja daych w baze DB 9 45.. Kompresja wartośc NULL wartośc domyślych Kolejym sposobem kompresj daych w baze DB jest kompresja wartośc NULL domyślych. W tabelach przechowujących dużą lczbę wartośc domyślych NULL ależy zastosować klauzulę VALUE COMPRESSION, która spowoduje zastosowae owego formatu wersza daych. Aktywacja kompresj wartośc a stejącej już tabel odbywa sę przy pomocy polecea: ALTER TABLE <NAZWA TABELI> ACTIVATE VALUE COMPRESSION; Kompresja tabel e dzała wstecz, węc kompresja będze aktywa tylko dla wpsów wykoaych po tym poleceu. Jeżel kompresja ma być aktywowaa dla wcześejszych wpsów ależy użyć polecea: REORG TABLE <NAZWA TABELI>; Dezaktywacja kompresj wykoywaa jest przy pomocy polecea: ALTER TABLE <NAZWA TABELI> DEACTIVATE VALUE COMPRESSION; Dezaktywacja kompresj, aalogcze jak aktywacja, e dzała wstecz, węc w celu pełego dezaktywowaa mechazmu ależy róweż wykoać polecee REORG..3. Kompresja formatu XML W przypadku, gdy w dokumetach XML przechowywaych w baze DB zajduje sę wele zaczków powtarzających sę, zastępowae są oe krótkm zaczkam lczbowym [6,7]. Te sposób kompresj daych XML e tylko oszczędza mejsce a dysku, ale róweż powoduje wyższą wydajość zapytań XML. Kompresja daych typu XML możlwa jest poprzez zastosowae opcj le podczas tworzea, lub modyfkacj stejącej już tabel. Stadardowo dae typu XML przechowywae są w osobym obszarze bazy daych azwaym XDA. Po użycu opcj le dae XML, będą przechowywae razem z resztą daych a stroach tabel. Do stworzea owej tabel z opcją le dla kolumy typu XML ależy użyć strukcj: CREATE TABLE <NAZWA TABELI>(<NAZWA KOLUMNY> XML INLINE LENGTH<INTEGER>); Parametr LENGTH ozacza maksymaly rozmar dokumetu XML, jak może zostać przechoway. Maksymaly rozmar daych XML, doday do welkośc daych stadardowych, przechowywaych w jedym werszu, e może przekroczyć rozmaru stroy tabel. W przypadku, gdy dokumet XML przekracza założoy rozmar LENGTH, lub dae przekraczają maksymaly rozmar, to zostae zapsay o w obszarze XDA. Aby dodać kolumę z opcją le do stejącej tabel ależy użyć strukcj: ALTER TABLE <NAZWA TABELI>ADD COLUMN <NAZWA KOLUMNY> XML IN- LINE LENGTH<INTEGER>; Aby zastosować opcję le a stejącej już kolume ależy użyć strukcj: ALTER TABLE <NAZWA TABELI>ALTER COLUMN <NAZWA KOLUMNY XML> SET INLINE LENGTH<INTEGER>; Frma IBM zakłada, że w kolejej wersj bazy kompresja daych typu XML e będze wymagała już użyca opcj le, gdyż będze bezpośredo przeprowadzaa w obszarze XDA. Podejśce take spowoduje, że operacja ta będze dużo łatwejsza do przeprowadzea może przyeść jeszcze lepsze rezultaty zwązae z oszczędoścą mejsca jak zwększea wydajośc samych zapytań.

46 Ageszka Węgrzy, Jacek Tkacz, Adam Wojcechowsk 3. Wyk eksperymetów W rozdzale tym zameszczoe zostaą wyk z przeprowadzoych testów porówujących wyszukwae daych w przestrzeach eskompresowaych a skompresowaych. Eksperymet przeprowadzoo a serwerze SUN V890, a platforme Solars 0 oraz serwerze baz daych IBM DB w wersj 9.5. 3.. Badae kompresj werszy W celu przeprowadzea eksperymetu zostały przygotowae dae w dwóch przestrzeach tabel, w których umeszczoo po jedej tabel, z których każda przechowuje poad mlo rekordów (dokłade tych samych rekordów). W celu sprawdzea sposobu dzałaa kompresj, część daych w tabelach powtarza sę. Dla poszczególych tabel zapytań dla tych tabel przygotowao pla wykoaa, a podstawe, którego oszacowao koszt dostępu do daych skompresowaych eskompresowaych. Dae do celów eksperymetalych zostały przygotowae w sposób losowy za pomocą poższego polecea SQL. Utworzoo tabelę aboet w przestrze eskompresowaej. create table aboet ( da bgt ot ull GENERATED ALWAYS AS IDENTITY (START WITH, INCREMENT BY,o cycle, o cache), data_wpsu date ot ull, wplata bgt ot ull, azwsko char(00) ot ull, prmary key (da)) USER_NCOMPRESS dex USER_NCOMPRESSI; INSERT INTO aboet (wplata, data_wpsu, azwsko) WITH aboet_(wplata) AS (VALUES() UNION ALL SELECT wplata FROM aboet_ WHERE wplata < 0000 ) SELECT wplata, CURRENT DATE - ((8 * 365) RAND()*(47*365)) DAYS, TRANSLATE (CHAR(BIGINT(RAND() * 0000000000)), 'abcdefghj', '34567890') FROM aboet_; Polecee sert wprowadza do tabel aboet 00.000 losowo wygeerowaych rekordów. W celu przeprowadzea testów lość rekordów zwelokrotoo (do 00 000 rekordów). Zostały skopowae te same dae, które zostały wcześej wygeerowae. W tym celu utworzoo tabelę tymczasową, z której kopowao dae do tabel aboet. Dzęk takej operacj dae w tabel aboet powtarzają sę mechazm kompresj werszy zadzała. Utworzoo tabelę aboetc, z włączoą kompresją werszy (tabela jest detycza jak tabela aboet), do której skopowao dae z tabel aboet. Poadto dla obu tabel utworzoo deksy, które zostały ałożoe a kolumę azwsko oraz wplata. Ideksy dla tabel aboetc zostały róweż skompresowae.

Optymalzacja zapytań a kompresja daych w baze DB 9 47 3... Oszacowae welkośc daych Obe tabele zostały umeszczoe w osobych przestrzeach. W zwązku z tym możlwe było oszacowae welkośc obu tabel. Perwsza tabela, aboet zajmuje około 38,6 MB, atomast skompresowaa tabela aboetc zajmuje 4,6 MB, czyl o 97 MB mej ż tabela aboet. W przypadku deksów postąpoo podobe, czyl deksy umeszczoo w osobych przestrzeach, odpowedo zajmują oe, dla tabel aboet (rys.): deks dla kolumy ID zajmuje,38 MB; deks dla kolumy azwsko zajmuje,03 MB; deks dla kolumy wplata zajmuje 0,45 MB. Natomast dla tabel aboetc: deks dla kolumy ID zajmuje 0,03 MB; deks dla kolumy azwsko zajmuje 9,6 MB; deks dla kolumy wplata zajmuje 7,9 MB. 60 40 38,6 0 00 80 60 40 0 0 4,6,380,03 0,45 7,9,03 9,6 TABELE ID WPLATA NAZWISKO ABONENT ABONENTC Rysuek. Wykres rozmarów tabel testowych, przed po kompresj Po wprowadzeu kompresj dla tabel aboetc oszacowao róweż welkość słowka kompresj. W tym celu wykoao zapytae: select tabame, dctoary_sze from SYSIBMADM.ADMINTABINFO where tabame lke 'ABONENT%'; dla którego otrzymao wyk: DICTIONARY_SIZE ABONENT 0 ABONENTC 684 Z czego wyka, że dla tabel aboet e został utworzoy słowk kompresj, atomast dla tabel aboetc, słowk kompresj zawera 684 bajty. Dla tabel, które e podlegają kompresj, słowk kompresj e jest tworzoy. 3... Oszacowae kosztów wykoaa zapytań W celu obserwacj plau wykoaa zapytaa ależy włączyć uaktualać statystyk. RUNSTATS ON <NAZWA TABELI> AND INDEXES ALL; Jedostka TIMERON jest skumulowaym kosztem obejmuje wszystke czyośc od początku przetwarzaa zapytaa.

48 Ageszka Węgrzy, Jacek Tkacz, Adam Wojcechowsk Tabela wyków TIMERON dla zapytań wykoaych dla obu tabel została zameszczoa pożej. Tabela. Koszty wykoaa zapytań Lp. Polecee SELECT select * from aboet where wplata=6000 select * from aboet where wplata>6000 3 Select * from aboet where wplata<6000 4 Select * from aboet where wplata<5000 or wplata>6000 5 Select * from aboet where wplata>5000 ad wplata<6000 6 Select * from aboet where azwsko lke H% ; 7 Select * from aboet where azwsko ot lke H% ; 8 Select * from aboet where azwsko> cąg zaków ; 9 Select * from aboet where azwsko> cąg zaków ad wplata<6000; 0 Select * from aboet where data_wpsu> 944-06- ; Select * from aboet where data_wpsu< 944-06- ; Select * from aboet where data_wpsu> 944-06- ad wplata<8000; 3 Select * from aboet where data_wpsu> 944-06- ad wplata<8000 ad azwsko< cąg zaków ; Lczba pobraych werszy aboet TIMERON aboetc 68,98 68,98 0340 8567,050 630,87 65 978 7838,554 553,75 088989 8860,5 6603,89 0989 759,054 538,69 738 7696,939 544,479 9776 8567,050 630,87 735548 8455,9 63,963 43637 5036,860 5550,838 06608 8567,050 630,87 33737 8569,99 630,87 85404 7945,089 566,060 706 504,878 93,498 Jedostk TIMERON dla tabel aboetc jest od 65% do 69% mejszy od jedostek TIMERON dla tabel aboet. Pommo kompresj daych w tabel aboetc, koszt dostępu do daych jest zacze mejszy od kosztu dostępu do daych w tabel aboet. Na podstawe przeprowadzoego eksperymetu moża woskować, że kompresja daych w baze IBM DB w wersj 9.5 zacze zmejsza zajmoway obszar dysku oraz koszt dostępu do daych. Dodatkowe badaa wykazały róweż, że włączee obu rodzajów kompresj dla tej samej tabel e geeruje lepszych efektów ż zastosowae jedej wybraej metody. 3.. Badae kompresj daych XML W rozdzale tym przedstawoe zostaą możlwość kompresj tabel zawerających dae w klasyczej postac relacyjej, hybrydowej (relacyje XML) oraz zawerających tylko dae XML. Do badań wykorzystae zostały trzy pary tabel (BOOK, BOOKHYBRID, BOOKXML), każda para o detyczej strukturze z włączoą wyłączoą kompresją werszy [9]. Przyrostek KOMP dołączoy do azwy tabel ozacza warat skompresoway. Wszystke tabele zawerają detycze, wygeerowae automatycze dae. W przypadku tabel hybrydowej oraz XML, część daych lub wszystke zostały przesuęte z obszaru relacyjego do dokumetu XML. Pola XML zostały utworzoe z opcja le opsaą w rozdzale.

Optymalzacja zapytań a kompresja daych w baze DB 9 49 W wyku przeprowadzoych badań otrzymao rezultaty przedstawoe a rys.. Rysuek. Wykres rozmarów tabel testowych, przed po kompresj Porówując dae przedstawoe a wykrese (rys. ) wdocze jest, że w przypadku tabel relacyjej rozmar fzyczy zmejszył sę prawe dwukrote, atomast w przypadku tabel zawerającej dae typu XML trzykrote. Wydajość zapytań po kompresj daych wzrasta praktycze dla każdego zapytaa. Dla zapytań zawerających kolumy typu XML wydajość wzrasta w zaczym stopu. Spadek wydajośc zaobserwować moża w tabelach hybrydowych, dla zapytań zawerających kolumy ego typu ż XML. Spowodowae jest to przechowywaem wartośc XML a stroach tabel, wraz z wcześej zajdującym sę tam daym. Skutkuje to zaczym zagęszczeem daych a stroach tabel, w porówau z tabelą bez kompresj. Jeżel z tabel hybrydowej częścej poberae są dae typu XML, to wydajość zapytań rośe. W przypadku, gdy częścej poberae są dae ego typu ależy rozważyć opłacalość kompresj dla tak zaprojektowaej tabel hybrydowej. Zaletą będze zaczące zmejszee rozmaru tabel, a wadą spadek wydajośc zapytań. 4. Podsumowae Waży urt badań w zakrese baz daych kocetruje sę wokół metod optymalzacj z jedej stroy w celu zmejszea zajmowaej powerzch dysków, a z drugej w celu zwększea wydajośc. Ma to szczególe zacze przy coraz wększych baza daych gdze przetwarzae są mloy rekordów. W ramach tego urtu frma IBM zapropoowała w ajowszej wersj serwera baz daych DB 9.5 metodę kompresj daych opartą a kompresj werszy, która oprócz zaczącego zmejszea przestrze dyskowej jedocześe skraca czas dostępu do skompresowaych formacj. W przeprowadzoych pracach stwerdzoo to dośwadczale a różych strukturach daych, a także stosując róże sposoby dostępu do ch. Bblografa [] DB 9 Starter Kt, SDJ Extra Nr, Software-Wydawctwo Sp. z.o.o., 007 [] Dokumetacja IBM dla DB, http://publb.boulder.bm.com/foceter/dbluw/v9r5/dex.jsp, http://publb.boulder.bm.com/foceter/dbluw/v8/dex.jsp, http://publb.boulder.bm.com/foceter/dbluw/v9/dex.jsp,

50 Ageszka Węgrzy, Jacek Tkacz, Adam Wojcechowsk http://publb.boulder.bm.com/foceter/dzchelp/vr/dex.jsp?topc=/com.bm.db9.doc.xml/dbz_odetest.htm [3] Rav Ahuja, Itroducg DB 9, Part : Data compresso DB 9, http://www.bm.com/developerworks/data/lbrary/techartcle/dm- 0605ahuja/dex.html?S_TACT=05AGX&S_CMP=ART#xml [4] Bob Scheer. DB Deep Compresso, Part, http://www.bmdatabasemag.com/shared/prtableartcle.jhtml?artcleid=06800834 [5] Vctor Chag, Yu Ha Lee, Row compresso DB 9, http://www.bm.com/developerworks/data/lbrary/log/dm-060chag/dex.html [6] Vtor Rodrgues, Matthas Ncola, XMLTABLE by example, Part : Retrevg XML data relatoal format, http://www.bm.com/developerworks/data/lbrary/techartcle/dm-0708cola [7] Vtor Rodrgues, Matthas Ncola, XMLTABLE by example, Part : Commo scearos for usg XMLTABLE wth DB, http://www.bm.com/developerworks/data/lbrary/techartcle/dm-0709cola [8] Whe-Je Che, Art Sammarto, Db 9 PureXML Gude, Iteratoal Techcal Support Orgazato 007 [9] Radosław Żółtek, Struktury XML w baze IBM DB v9.5, Praca magsterska apsaa pod kerukem Prof. M. Adamskego dr. ż. J. Tkacza, Wydzał Elektrotechk, Iformatyk Telekomukacj, Uwersytet Zeloogórsk, 009

Zastosowae kolorowaa hpergrafów w procese dekompozycj rówoległej automatów współbeżych Moka Wśewska, Remgusz Wśewsk Uwersytet Zeloogórsk, Istytut Iformatyk Elektrok Abstract: I the artcle a decomposto method of cocurret automata s preseted. The ma advatage of the preseted method s the avalablty of hypergraph theory usage stead of graph oe. Hypergraph cotas all formato about the relatos betwee hyperedges whle graph all clques have to be foud. Furthermore, the process of fdg cocurret automata ca be more effectve because of hypergraph colorg usage. The computato of the hypergraph colorg s less complex tha adequate graph colorg. Let us pot out that the results of both solutos, ether hypergraph ad graph colorg are here the same. Keywords: PetrNet decomposto, hypergraph, hypergraph collorg, cocurret automata. Wprowadzee Wele metod dekompozycj systemów dyskretych, stosowaych podczas aalzy lub sytezy układów cyfrowych wykorzystuje klasycze grafy eskerowae [5,6]. Wzrost skomplkowaa układów cyfrowych wymusza modyfkację już stejących algorytmów, tak, aby abstrakcyje modele w zwarty, tucyjy sposób odzwercedlały ajstotejsze cechy projektowaych struktur. Jedym z możlwych rozwązań tego problemu może być zastosowae hpergrafów, będących uogóleem grafów eskerowaych [3,5,8]. Zastosowae hpergrafów do przeprowadzaa operacj stosowaych w techce cyfrowej, wydaje sę tucyje, bardzej przejrzyste efektywejsze od klasyczych grafów eskerowaych. Warto w tym mejscu podkreślć fakt, że wele metod aalzy systemów dyskretych bazuje a przekształceach macerzowych, które mogą być uważae za operacje hpergrafowe (p. mmalzacja fukcj logczych [6], redukcja rozmaru mkrostrukcj [8]). W artykule przedstawoo metodę dekompozycj rówoległej dyskretych systemów współbeżych opsaych secą Petrego, przeprowadzaej za pośredctwem dekompozycj hpergrafów. Celem dekompozycj jest podzał sterowka logczego a współbeże moduły, z których każdy może być optymalzoway sytezoway z wykorzystaem klasyczej teor automatów cyfrowych. Sposób dekompozycj sec Petrego z wykorzystaem kolorowaa grafu współbeżośc lub wyszukwaa pokryca klkam dopełea grafu współbeżośc (a tym samym grafu ewspółbeżośc, czyl grafu astępstwa), jest już ogóle zay [,,4,7]. Opracowując ową metodę, wzęto pod uwagę fakt, że hpergraf współbeżośc mejsc sec Petrego oprócz formacj o relacj mędzy każdą parą mejsc przekazuje dodatkowe dae o klkach, odpowadających wcześej wyzaczoym staom globalym [8]. Metody Iformatyk Stosowaej, r /00 (3), s. 5-57 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

5 Moka Wśewska, Remgusz Wśewsk. Podstawowe defcje W celu przedstawea algorytmu dekompozycj sec Petrego, ezbęde będze wprowadzee podstawowych pojęć zwązaych z secam Petrego oraz hpergrafam... Hpergrafy Pojęce hpergrafu pojawło sę w drugej połowe ubegłego stuleca. W 973 roku fracusk matematyk Claude Berge opublkował moografę p.t. Grafy Hpergrafy, w której sformalzował ujedolcł podstawowe defcje dotyczące teor hpergrafów [3,5]. Hpergraf jest rozszerzeem pojęca grafu. Jego krawędze, azywae hperkrawędzam, mogą być cydete do dowolej lczby werzchołków [3]. Formale, hpergraf H defuje dwójka: H = (V,E) () gdze V={v,,v }, jest dowolym, epustym zborem werzchołków; E={E,,E m }, jest zborem krawędz hpergrafu, czyl podzborem zboru P(V) wszystkch możlwych epustych zborów, których elemety ależą do V. Rysuek obrazuje przykładowy hpergraf H. v v E E v 6 v 3 E 3 v 5 v 4 Rysuek. Hpergraf H Kolorowae werzchołkowe hpergrafu (zwae też slym kolorowaem hpergrafu [5] lub po prostu kolorowaem hpergrafu) to przyporządkowae każdemu werzchołkow hpergrafu jedego wybraego koloru w tak sposób, aby dwa sąsede werzchołk (czyl take, które są połączoe hperkrawędzą) e mały tego samego koloru. Jede z możlwych sposobów kolorowaa hpergrafu H zaprezetowao a rys.. W przedstawoym przykładze wykorzystao trzy kolory. Werzchołk v, v 3 oraz v 5 ozaczoo kolorem perwszym, v drugm, atomast v 4 v 6 trzecm. v v E E v 6 v 3 E 3 v 5 v 4 Rysuek. Przykład kolorowaa hpergrafu H

Zastosowae kolorowaa hpergrafów w procese dekompozycj rówoległej automatów 53 Operacja kolorowaa hpergrafu z wykorzystaem mmalej lczby kolorów jest klasyfkowaa jako problem NP-trudy. Dlatego też powstało wele metod poszukujących rozwązań przyblżoych. Do ajpopularejszych ależą metody kolorowaa sekwecyjego, operające sę o algorytmy zachłae [3,5,6]... Seć Petrego Seć Petrego to dwudzely graf skeroway, o dwóch rodzajach werzchołków: mejscach trazycjach, które są połączoe skerowaym łukam. Przykładowa seć Petrego PN przedstawoa została a rys. 3. P T P P3 T T3 P4 P5 T4 T5 P6 P7 P8 P9 T6 T7 P0 P T8 T9 P T0 Rysuek 3. Seć Petrego PN Tak sposób reprezetacj w wygody sposób pozwala opsywać zjawska zachodzące współbeże. Mejsca przedstawae są jako okręg, trazycje jako pogruboy odcek lub prostokąt, atomast łuk jako krawędze zakończoe strzałkam. 3. Idea propoowaej metody Propoowaa metoda dekompozycj sec Petrego przypoma tradycyjy sposób dekompozycj sec Petrego a podsec typu automatowego z tym, że zamast klasyczych grafów, wykorzystao hpergrafy. Pożej przedstawoo poszczególe krok dekompozycj sec Petrego, opartej o zastosowae kolorowaa hpergrafów.. Utworzee makrosec. Na tym etape ależy określć makroseć, czyl skodesowaą wersję daej sec Petrego [,7], zachowującą jej podstawową strukturę właścwośc. Celem tej operacj jest usuęce z sec fragmetów o charakterze sekwecyjym, które podczas procesu aalzy e wpłyą a jej ostateczy wyk, a ch obecość jedye zwększa czas całego procesu dekompozycj. Utworzoe makromoduły zawerają jedye trazycje welowejścowe welowyjścowe oraz mejsca zastępujące jedozakowe fragmety

54 Moka Wśewska, Remgusz Wśewsk sec. Rysuek 4 lustruje seć Petrego z rys. 3 z wyzaczoym makromejscam (M oraz M ). Mejscom P P 4 odpowada makromejsce M, atomast mejscom P 3 P 5 odpowada makromejsce M. P T M M T 4 T 5 P 6 P 7 P 8 P 9 T 6 T 7 P 0 P T 8 T 9 P T 0 Rysuek 4. Seć PN z utworzoym makromejscam. Wyzaczee hpergrafu osągalośc. Na podstawe makrosec sporządzoej w poprzedm etape, wyzaczoy zostaje hpergraf osągalośc (zakowań). Czyość ta polega a aalzowau zma ozakowaa sec w marę realzacj (odpalaa) gotowych trazycj zapsywau możlwych staów. Werzchołk hpergrafu odpowadają poszczególym makromejscom, atomast każda hperkrawędź zawera zbór mejsc ozakowaych w daym stae. Seć z rys. 4. zawera 0 mejsc, tyle też werzchołków meć będze odpowadający jej hpergraf osągalośc H PN. Aalza sec pokazuje, że steje 0 możlwych staów (rys. 5). P M M P 6 P 7 P 9 P 8 P P 0 P Rysuek 5. Hpergraf osągalośc H PN dla sec PN

Zastosowae kolorowaa hpergrafów w procese dekompozycj rówoległej automatów 55 3. Kolorowae hpergrafu. Operacja ta polega a ozaczeu każdego werzchołka hpergrafu w tak sposób, aby dwa werzchołk sąsede mały zawsze róże kolory. Poszczególe kolory wyzaczają zbory makromejsc ewspółbeżych (sekwecyjych). Każdy tak zbór to pojedyczy automat sekwecyjy. Aalzoway hpergraf został pokoloroway czterema koloram (rys. 6). Perwszym kolorem ozaczoo werzchołk: P, M, P 6, P 0, P, drugm M P 8, trzecm P 7 P, atomast czwartym pokolorowao werzchołek P 9. P M M P6 P7 P9 P8 P P0 P Rysuek 6. Pokoloroway hpergraf osągalośc H PN Jeżel zbór e zawera początkowo ozakowaego mejsca sec, to dodaje sę do ego dodatkowe mejsce spoczykowe, zawerające zak (p. mejsce P 3 a rys. 7). a) P b) T P3 T P3 P T3 T P5 P4 T5 T4 T6 P8 P6 P4 T8 T6 T9 P0 c) T4 T8 P7 T9 P5 T7 P P T0 T0 d) T5 P6 P9 T7 Rysuek 7. Zdekompoowaa seć Petrego PN

56 Moka Wśewska, Remgusz Wśewsk Rysuek 7 przedstawa podzał sec Petrego PN a podsec typu automatowego. W oparcu o kolorowae hpergrafu H PN prezetowaa seć została podzeloa a 4 podsec automatowe (a, b, c oraz d). 4. Wyk przeprowadzoych badań Przedstawoa metoda dekompozycj sec Petrego z wykorzystaem kolorowaa hpergrafów została porówaa z rozwązaam tradycyjym, opartym o kolorowae klasyczych grafów eskerowaych. W tym celu wykorzystao bblotekę testów (tzw. bechmarks) opracowaą w Uwersytece Zeloogórskm. Badae przykłady bazowały zarówo a secach Petrego opsujących reale systemy dyskrete (take jak p. sterowk dozowka objętoścowego, system reaktora chemczego, td.), jak systemy hpotetycze. Główym celem przeprowadzoych eksperymetów było porówae szybkośc wykoaa metod kolorowaa hpergrafów oraz grafów. W obu przypadkach wykorzystao algorytm zachłay kolorowaa sekwecyjego bez uporządkowaa. Aby wyk eksperymetów były jak ajbardzej marodaje, zarówo hpergraf osągalośc, jak rówoważy mu graf osągalośc zostały zapsae w postac macerzy cydecj. Tabela przedstawa wyk przeprowadzoych eksperymetów. Zestawee prezetuje wybrae testy spośród poad 300. W kolumach tabel zameszczoo: azwę testu; lczbę mejsc sec Petrego; wyzaczoą lczbę kolorów (ezależe od przyjętej struktury (hpergraf lub graf) uzyskao tę samą lczbę kolorów); czas wykoaa algorytmu opartego o teorę hpergrafów (wyrażoy w mlsekudach); czas wykoaa algorytmu bazującego a teor grafów (wyrażoy w mlsekudach); porówae czasów wykoaa algorytmów hpergrafowych z grafowym (wyrażoe procetowo); porówae szybkośc algorytmów (le razy hpergraf jest szybszy/wolejszy od grafów). Nazwa testu Lczba mejsc Lczba kolorów Tabela. Wyk przeprowadzoych badań Czas wykoaa - hpergrafy [ms] Czas wykoaa grafy [ms] Porówae czasów (hpergrafy/grafy) Porówae szybkośc (grafy /hpergrafy) Flozof 4 6 0,08 0,095 9,0% 3,44 Wózk 0 4 0,0 0,07 70,00%,49 Reaktor 9 0,008 0,008 90,00%, h50 00 74,09 40,970 0,9% 339,969 h53 0 6 3,36 68,770 0,9% 347,655 h65 40 84 9,758 850,530 0,% 87,0 h7 60 47,7 87,858 0,5% 40,08 h88 80 34 3,97 467,800 0,07% 46,80 h98 00 39 36,38 60007,700 0,06% 649,4 Średa 53,4 3,33 0,733 45,070,63% 6,55 Z tabel wyka, że propooway algorytm zawsze jest szybszy (średo około 60 razy) od rozwązań tradycyjych, bazujących a klasyczych grafach osągalośc. Wyka to ze struktury hpergrafów, które przechowują pełą formację o klkach, co ma szczególe

Zastosowae kolorowaa hpergrafów w procese dekompozycj rówoległej automatów 57 zaczee w przypadku kolorowaa (czyl powązaa pomędzy poszczególym werzchołkam). W przypadku grafów, zależość pomędzy węcej ż dwoma werzchołkam mus zostać dodatkowo wyzaczoa. Rezultaty eksperymetów pokazują, że zastosowae hpergrafów jest szczególe efektywe w przypadku relatywe dużych sec Petrego (poad 00 mejsc), gdze algorytm kolorowaa hpergrafów może być awet poad półtora tysąca razy szybszy ż odpowadająca mu metoda kolorowaa grafów. 5. Podsumowae W referace zaprezetowao metodę dekompozycj sec Petrego a podsec typu automatowego, opartą o kolorowae hpergrafu osągalośc. Zaprezetowao szczegółowe wyk przeprowadzoych badań, w których propoowae rozwązae porówao z klasyczym metodam opartym o kolorowae grafów osągalośc. Wyk eksperymetów pokazały, że prezetoway algorytm jest zacze szybszy od dotychczas stosowaych rozwązań (awet 600 razy w przypadku sec zawerających 00 mejsc). Bblografa [] Adamsk M., Karatkevch A., Węgrzy M. (ed.) Desg of Embeded Cotrol Systems. NY, Sprger Scece, 005 [] Blsk K., Adamsk M., Saul J.M., Dagless E.L. Petr-et-based algorthms for parallel-cotroller sythess. IEE Proceedgs - Computers ad Dgtal Techques, 994, Vol. 4, o 6, s. 405-4 [3] Berge C. Graphs ad Hypergraphs. North-Hollads Mathematcal Lbrary, Amsterdam 976 [4] Davd R., Alla H. Petr Nets & Grafcet. Tools for modellg dscrete evet systems. Pretce Hall, New York, 99 [5] Kubale M., Obszarsk P., Pwakowsk K. Kolorowae hpergrafów. Zeszyty Naukowe Poltechk Śląskej 43 (006), 83-90 [6] Łuba T. Syteza układów cyfrowych. WKŁ, Warszawa 003 [7] Valette R. Comparatve Study of Swtchg Represetato Tool wth GRAFCET ad Petr Nets. Nouv. Autom., Vol. 3, r., str. 337-38 [8] Wśewska M, Wśewsk R., Adamsk M. Usage of hypergraph theory decomposto of cocurret automata. PAK,. 007, r 7, s. 66-68

Modelowae matematycze symulacyje systemu produkcyjego z prorytetam dyamczym Tomasz Wśewsk, Oleg Zak Zachodopomorsk Uwersytet Techologczy w Szczece, Wydzał Iformatyk Abstract: Mult-chael system wth prortes come out as mportat may applcato such as maufacturg, formato techology or telecommucato systems. I artcle multproduct, mult-chael maufacturg system wth dyamc o-preemptve s cosdered. Mathematcal ad smulato model was preseted. Ifluece of cotrol parameters (sze of buffers before workstatos, umber of parallel resources workg at workstatos ad type of prorty strategy buffers (FIFO, LIFO, SPT, LPT)) o output parameters (lead-tme, delay tme, percet of rejected arrvals from overfull buffers, utlzato of resources) was compared. Aalyss of teracto betwee parameters was cosdered. Keywords: example, artcle, paper, joural mathematcal ad smulato modellg of maufacturg systems, prorty strategy, multproduct. Wprowadzee Systemy z prorytetam są rozpatrywae przez welu autorów dla różorodych zastosowań w formatyce, telekomukacj, a także produkcj. Prorytety, adawae poszczególym zadaom/zleceom, pozwalają a podesee przychodów przez skuteczejsze wykorzystae zasobów lub zmejszee czasu cyklu produkcyjego. Dzęk odpowedej strateg prorytetów przydzelaa jest odpoweda kolejość wykoywaa zadań w kolejkach przed staowskam produkcyjym. Uwzględee odpowedej strateg prorytetów jest rzeczywstym problemem w systemach produkcyjych, a przykład w przedsęborstwach polgrafczych. Częstym zwyczajem jest adawae przez kerowctwo prorytetu plego wydrukowaa w perwszej kolejośc p. małej part ulotek gdy klet jest gotów zapłacć węcej. Powstają wówczas dylematy co zrobć z zamóweem, które jest realzowae do tej pory a l produkcyjej, czy przerwać, czy poczekać aż sę wykoa; jak zachowają sę parametry całego systemu, gdze powstaą ajwększe kolejk, które zlecea będą ajbardzej spóźoe. Dlatego stotym zagadeem staje sę zbadae jak wpływ poszczególe stratege prorytetów wywerają a cały system. Klasyfkacje systemów z prorytetam moża przeprowadzć ze względu a sposób decyzj, która jedostka spośród czekających w kolejce wejdze jako perwsza [0]. Jeżel decyzja w tej kwest zależy tylko od tego, do której klasy jedostka ta ależy, to take systemy oszą azwę systemów z prorytetem zewętrzym (statycze prorytety). Jeżel decyzja zależy od aktualego stau systemu mów sę o prorytetach wewętrzych (dyamczych). Druge zagadee klasyfkujące systemy z prorytetam odos sę do problemu co zrobć gdy do podczas obsług jedostk z ższym prorytetem zgłos sę jedostka z wyższym prorytetem. Moża wówczas przerwać obsługę jedostk o ższej klase (prorytety Metody Iformatyk Stosowaej, r /00 (3), s. 59-70 ISSN 898-597 Polska Akadema Nauk Oddzał w Gdańsku, Komsja Iformatyk http://pa.w.zut.edu.pl

60 Tomasz Wśewsk, Oleg Zak rugujące/ z wywłaszczeem) lub kotyuować dalej obsługę (prorytety erugujące/ bez wywłaszczeń). Wśród ajczęścej wymeaych reguł prorytetowych są [6]: SPT (short processg tme) operacja z ajkrótszym czasem wykoywaa, LPT (logest processg tme) operacja z ajdłuższym czasem wykoywaa, MWR (most work remag) operacja o ajwększej pozostałej pracochłoośc, LWR (least work remag) zadae o ajmejszej pozostałej pracochłoośc, MOR (most operatos remag) zadae o ajwększej lczbe pozostałych operacj, LOR (leeast operatos remag) zadae o ajmejszej lczbe pozostałych operacj, ERT (earlest ready tme) operacja ajwcześej dostępa, EDD (earlest due date) operacja ajwcześej kończoa. Pozostała część artykułu zbudowaa jest astępująco. W drugej sekcj przedstawoo przegląd lteratury śwatowej oraz ops problemu modelowaa systemów z prorytetam. Model matematyczy systemu produkcyjego został opsay w sekcj trzecej. W kolejej, czwartej, sekcj przedstawoo weryfkację modelu matematyczego poprzez model symulacyjy oraz przykład wraz z wykam aalzy wzajemego wpływu parametrów sterujących a parametry wyjścowe systemu.. Przegląd lteratury ops problemu Duża lczba model z kolejkam obsługwaym za pomocą różych strateg prorytetów została opsaa szeroko w lteraturze (ksążkach [3], [8], [8] artykułach [], [], [] [7]). Wszystke wymeoe pozycje traktują o systemach z prorytetam zewętrzym. Nowsze prace o tej klase systemów to m.. [5], [5], [4]. Autorzy rozpatrują systemy kolejkowe z prorytetam zewętrzym weloklasowe. Każdemu zadau adaje sę prorytet z możlwych klku klas, m wyższa tym prędzej będze obsłużoy. Rozpatrywae są take parametry systemu produkcyjego jak cykl produkcyjy, czas oczekwaa w kolejkach oraz długość kolejk. W [8] zaprezetowao aalzę systemu M/PH/k z rugującym prorytetam. Autor prezetuje jak dae stratege prorytetów wpływają a czas cyklu. W [7] oraz [9] rozważae są systemy z dwoma klasam prorytetów, rozkłady czasów dla obu grup są ormale. Zaprezetoway został wpływ strateg prorytetów a parametry wyjścowe systemu. Wele klas prorytetów było też przedmotem badań w [9], autor aalzuje przede wszystkm długość kolejek oraz czas w ch spędzoy. W [5] oraz [8] podday został system M/M/ tylko z dwoma klasam prorytetów przydzelaych zewętrze. W [0] aalzoway jest system z dwoma klasam prorytetów oraz ormalym rozkładem czasu obsług zadań. Autorzy przedstawają także przegląd lteratury systemów z prorytetam ze względu a typ rozkładu czasu obsług zadań. Teora zborów rozmytych została użyta w [4] aby opsać system zarówo z rugującym jak erugującym prorytetam. W [3] użyto atomast macerzowo-aaltyczej metody do budowy modelu systemu z rugującym prorytetam. Wększość prac modeluje system z zewętrzym prorytetam za pomocą łańcuchów Markowa. W welu zastosowaach jedak prorytety przydzelae zewętrze (statycze) e oddają dobrze modelowaej rzeczywstośc []. Alteratywą są prorytety wewętrze (dyamcze). O kolejośc wykoywaa zadań w systemach z takm prorytetam decyduje aktualego stau systemu, a przykład zadae z dotychczasowym ajkrótszym czasem obsług przed staowskem może meć y prorytet ż klka staowsk dalej w stosuku do tych samych zadań (ze względu a p. dłuższą marszrutę techologczą). W [9] rozpatrywae zostały dwe stratege dyamczych prorytetów (FIFO LIFO). Merzoe parametry to obcążee zasobów oraz śred czas przebywaa w systeme. System wspomagaa decyzj zbudoway w oparcu o sec euroowe został zastosoway w [6] do zalezea

Modelowae matematycze symulacyje systemu produkcyjego z prorytetam dyamczym 6 optymalej lośc zasobów w systeme. Porówae zostały astępujące rodzaje algorytmów prorytetowych: EDD, SPT, FIFO. Te sam autor w [3] użył także sec euroowych wraz z eksperymetem symulacyjym do wybraa ajlepszej strateg prorytetów w systeme. Brae pod uwagę były astępujące algorytmy: SPT, LPT, FIFO. Nektóre stratege prorytetów mogą powodować, że system staje sę estably. W pracach [3] oraz [] zostały pokazae przykłady, że system przy kombacj odpowedch waruków oraz złego doboru strateg prorytetów jest estably awet gdy obcążee poszczególych zasobów jest mejsze ż. Aby klarowe pokazać w jakm obszarze skupoe zostały ajważejsze prace ostatch lat autorów pogrupowao w tabelach według strateg prorytetów: Tabela. Podzał lteratury systemów z prorytetam zewętrzym Zewętrze (Statycze) Z wywłaszczeem Bez wywłaszczea klasy Harchol-Balter et.al. (005) Sleptcheko et.al. (005) Walraeves et.al. (006) Foad Irava, Barıs Balcıoglu (008) Cho, Km ad Chug (00) Bradt, A., Bradt, M. (004) A. Bedford, P. Zeephogsekul (005) Foad Irava, Barıs Balcıoglu (008) Krshamoorthy et. al. (009) Km ad Chae (00) 3 klasy Houdt ad Bloda (006) Narahar et.al. (997) Wele klas Pardo ad Fuete (007) Jgu Xe, Q-Mg He, Xaobo Zhao (009) Heradez-Lerma ad Hoyos-Reyes (00) Boo et.al. (00) Katayama (007) Pardo ad Fuete (007) Tabela. Podzał lteratury systemów z prorytetam wewętrzym Wewętrze (Dyamcze) Z wywłaszczeem Bez wywłaszczea FIFO LIFO SPT LPT EDD Baks ad Da (997) Cakar ad Yldrm (005) Da, Yeh, ad Zhou (997) Yldrm et.al. (006) W systemach z prorytetam p. braży polgrafczej produkcja charakteryzuje sę wysokm pozomem czyków losowych, które mają wpływ a proces. Pla produkcyjy powe rozpatrywać epewość tkwącą w tych systemach spowodowaą zmeoścą czasów produkcyjych, epewoścą czasów produkcyjych, eoczekwaym zapotrzebowaem ze stroy popytu, spersoalzowaym zamóweam, złożooścą produktów oraz różym prorytetam adawaym zleceom. Tworzące sę kolejk w systemach tej klasy, szczególe przed staowskam ajbardzej obłożoym, wymagają dobraa odpowedej strateg prorytetów w celu uzyskaa ajlepszych parametrów wyjścowych całego systemu lub poszczególych zleceń. Jedym z podejść z podejść, które może posłużyć do oblczea pożądaych parametrów welokaałowego, weloproduktowego systemu produkcyjego takch jak czas oczekwaa w kolejkach, długość kolejek, wykorzystae zasobów produkcyjych a staowskach jest

6 Tomasz Wśewsk, Oleg Zak teora sec kolejkowych. Zapropooway model matematyczy w rozdzale 3 opera sę a modelowau systemu jako otwartej sec Jacksoa [3]. W modelu tym staowsko robocze może zawerać węcej ż jede serwer (zasób pracujący a tym staowsku), obsługując zlecea rówolegle ezależe, bufory przed staowskam są skończoe. Główym celem tego artykułu jest zbudowae weryfkacja modelu matematyczego poprzez model symulacyjy oraz aalza złożoośc wpływu parametrów takch jak welkość bufora, lość rówolegle pracujących zasobów a staowskach roboczych oraz wybór strateg prorytetów w buforze a parametry fukcjoowaa całego systemu. 3. Matematyczy model sec produkcyjej Matematycze zamodelowae welokaałowego, weloproduktowego systemu z prorytetam jest koecze w aalze przepływów, czasów, lośc zadań w systeme oraz w oblczau pożądaych parametrów wyjścowych, które mogą służyć do ocey fukcjoowaa systemu. Wyrasta tu problem optymalzacj systemu, który może być przedstawoy w ujęcu kosztowym zalezea optymalych parametrów sterujących: lość detyczych serwerów pracujących rówolegle, welkość bufora dla kolejk zadań czekających przed staowskem oraz strateg prorytetów w buforze, przy których koszt fukcjoowaa całej sec jest ajższy. Zagadee optymalzacj sec produkcyjej może być sformułowae za pomocą modelu matematyczego astępująco: 3.. Przy daych: 3... Parametrach produkcyjych systemu Struktura system produkcyjego może być reprezetowaa jako graf ezoretoway: werzchołk grafu odpowadają węzłom sec produkcyjej, krawędze grafu odpowadają kaałom sec produkcyjej, okres plaowaa T 0. 3... Parametrach zamówea Zbór zamóweń kletów, przybywających za okres plaowaa T 0, Parametry: typ zamówoego produktu, schemat zamówea, terwał wykoaa zamówea, term przybyca zamówea, term zakończea (dostarczaa) zamówea, objętość dostawy, objętość dostarczaa produktu, wektor zasobów, potrzebych dla wykoaa zamówea, wektor prac, zawartych w zamóweu, czas wykoaa pracy, 3..3. Parametrach sterujących dla każdego węzła produkcyjego lość detyczych serwerów pracujących rówolegle, welkość bufora dla kolejk zadań czekających przed staowskem, stratega prorytetów w buforze

Modelowae matematycze symulacyje systemu produkcyjego z prorytetam dyamczym 63 3.. Oblczając: 3... Parametry sec produkcyjej czas cyklu produkcyjego, średa czasu obsług oczekwaa w węźle produkcyjym, wykorzystae zasobów w węzłach, prawdopodobeństwo blokowaa oraz przestojów węzłów produkcyjych 3.3. Otrzymujemy: wartość mmalą całkowtych kosztów produkcj w okrese plastyczym. 3.4. Fukcja kryterala Całkowte koszty produkcj dla optymalzowaego okresu plastyczego T 0 : C C C C C = M =, gdze () 3 C- koszt produkcj w toku, C - koszt wykorzystaa zasobów, C3 - koszt odrzutu częśc półproduktów, C4 - koszty spowodowae opóźeam w realzowau zleceń. 3.4.. Koszt produkcj w toku (WIP) Produkcja w toku jest zborem edokończoych półwyrobów będących w faze produkcj. Mogą sę oe zajdować bezpośredo a l produkcyjej, a także w magazyach materałów gotowych oraz wyjścowych. Koszty produkcj w toku C są powodowae brakem rówowag pomędzy dostępoścą a ezbędoścą zasobów produkcyjych. Wykem braku rówowag stają sę kolejk zadań czekających do obsług. Zatem koszty produkcj w toku moża wyrazć jako: C p P u U 4 p p u xu T 0 = c ~, gdze () p x~ u - średa lość produktów typu u obsługwaych w węźle p P p cu - koszt materału wykoaej pracy wyday a jedostkę produktu typu u w węźle 3.4.. Koszt wykorzystaa zasobów p P W Koszty czasu pracy C to koszty eerg, wykoaej pracy oraz materałów użytych do wytworzea produktu. I Koszty przestojów C są spowodowae eużywaem urządzeń, trasportu zasobów ludzkch z powodu admaru dostępych środków produkcj (węcej ż potrzeba w daej chwl). Wartość C może być aproksymowaa formułą: C = W I C C = d pr [ ρ prα r ( ρ pr r p P r R ρ pr jest wykorzystaem zasobu r R w węźle p P, α r jest kosztem pracy zasobu r w jedostce czasu, β jest kosztem przestoju zasobu r w jedostce czasu, r ) β ], gdze (3)

64 Tomasz Wśewsk, Oleg Zak Zwększae dostępość zasobów produkcyjych powoduje spadek produkcj w toku, kosztów C oraz wzrost kosztów przestoju. 3.4.3. Koszt odrzutu częśc półproduktów Koszty odrzutu są rezultatem przeładowaa buforów przed węzłam produkcyjym. Całkowte koszty opóźeń odrzutu zleceń kletów mogą być wyrażoe jako: C3 = λjh jp[ Pbl δuj { Pbl ) τ p], gdze (4) u U s S j p P λ j jest marą strumea żądań kletów a produkt u j for dla obszaru s ; h = jp, jesl zamówee ' ' wykoae w wezle produkcyjym ' p' jest symbolem Kroecker a 0, w prz. prz. δ uj jest zyskem ze sprzedaży produktu u j, P bl jest prawdopodobeństwem blokowaa węzła p P, τ p jest średm czasem oczekwaa przed węzłem p P. 3.4.4. Koszty opóźeń Koszty systemu produkcyjego spowodowae opóźeem wykoaa zamówea. C = u ~ 4 ( τ τ u ) j, gdze (5) p P u U τ u jest średm czasem cyklu produkcyjego produktu u, ~ τ u jest czasem zlecoym a wykoae produktu u. 4. Weryfkacja modelu matematyczego za pomocą modelu symulacyjego Komputerowa symulacja została użyta do aalzy złożoego systemu produkcyjego. Model symulacyjy został wykoay w środowsku Area (wersja 9.0, Rockwell Software). Aaltycze założea z rozdzału 3 zostały uwzględoe w modelu symulacyjym. Komputerowe modelowae symulacja pozwala odzwercedlć złożoą strukturę take jak dyamcze zachowae sę systemu produkcyjego uwzględając w peł jego stochastyczość [30]. Rozważoe zostały typowe układy systemu przedstawoe a rysuku. Modele składają sę z dzewęcu staowsk roboczych oraz serwsu outsourcgu, do którego wysyłae są zlecea kedy przepełoy jest bufor lub brakuje zasobów do obsłużea zlecea. Każda seć jest dwuproduktowa. Nektóre staowska są welofukcyje obsługują oba rodzaje produktów. Wszystke czasy obsług a staowskach są wykładcze tak jak strumee zamóweń kletów. Parametry wejścowe: λ ={λ, λ }- tesywość strumea wejść dla produktów τ= { τ, τ... τ 9} czas obsług a -tym staowsku

Modelowae matematycze symulacyje systemu produkcyjego z prorytetam dyamczym 65 Rysuek.. Trzy rodzaje sec dwuproduktowej dzewęcostaowskowej z outsourcgem Parametry sterujące: M= {m, m...m 9 } lość zasobów pracujących a -tym staowsku B= {b, b...b 9 } welkość bufora przed -tym staowskem P={FIFO,LIFO, SPT, LPT} stratega obsług kolejk w buforze Parametry wyjścowe: T czas cyklu produkcyjego D czas opóźeń różca rzeczywstego czasu wykoaa zadaa trzech cykl produkcyjych dla daego typu produktu R procet odrzutu (półprodukty skerowae do outsourcgu) U średe wykorzystae zasobów Wszystke modele z rysuku przebadao przy zmeających sę parametrach sterujących M od do 5, B od do 0 oraz P dla wszystkch strateg obsług kolejk w buforze. Wyk eksperymetu przedstawoo jako porówae różych strateg prorytetów w buforach przed staowskam produkcyjym. Omówee polega a przedstaweu rezultatów parametrów wyjścowych dla daego modelu w porówau do wyków tych parametrów w modelu z kolejką typu FIFO. W tabel 3 zajdują sę wartośc zma cyklu produkcyjego w stosuku do modelu z kolejką typu FIFO dla ustaloej wartośc parametru M= (dwa zasoby produkcyje a każdym staowsku) oraz dla zmeającego sę bufora od do 0. Zmaa procetowa dodata ozacza ższe wartośc parametru T w modelu porówywaym z modelem z kolejką typu FIFO. Tabela 3. Wartośc zma cyklu produkcyjego w stosuku do modelu z kolejką typu FIFO dla ustaloej wartośc parametru M= oraz dla zmeającego sę bufora B od do 0 Bufor 3 4 5 6 7 8 9 0 LIFO 0,0% 0,3% 0,6% 0,54% 0,9% 0,93%,04%,90% 3,56% 4,7% SPT 0,3% 0,5% -0,08% -0,03% -0,0% 0,80% 0,38%,%,9% 3,8% LPT -0,4% 0,00% 0,43% 0,49% 0,05% 0,68% 0,38%,59%,95% 3,5% Bufor 3 4 5 6 7 8 9 0 LIFO 5,98% 6,99% 7,93%,%,38% 3,80% 6,3% 5,70% 7,74% 8,8% SPT 3,59% 4,44% 5,00% 4,89% 7,87% 7,59% 9,39% 9,7% 0,4%,3% LPT 4,% 4,35% 5,08% 6,69% 6,79% 7,90% 8,97% 9,4% 0,86%,97%