PRACA DYPLOMOWA INŻYNIERSKA
|
|
- Magda Janowska
- 9 lat temu
- Przeglądów:
Transkrypt
1 Politechnika Warszawska Rok akademicki 2010/11 Wydział Elektroniki i Technik Informacyjnych Ośrodek Kształcenia na odległość OKNO-PW Kierunek Elektronika i Telekomunikacja Specjalność Inżynieria Komputerowa PRACA DYPLOMOWA INŻYNIERSKA Mariusz Księżak Redukcja atrybutów metodą uogólniania reguł decyzyjnych Praca inzynierska napisana pod kierunkiem prof. dr hab. Tadeusza Luby
2 Spis treści Wstęp... 2 Streszczenie... 4 Abstract Podstawy teoretyczne Wstęp System informacyjny i tablica decyzyjna Tablic decyzyjne w zastosowaniach praktycznych - przykłady Zastosowanie tablic decyzyjnych w medycynie Zastosowanie tablic decyzyjnych w ekonomii Metody uogólniania i upraszczania reguł decyzyjnych Redukcja atrybutów metodą uogólniania reguł Tworzenie macierzy porównań M Wyznaczenie tablicy minimalnych pokryć M Wyznaczenie iloczynu kartezjańskiego zbiorów obiektów wszystkich tablic minimalnych pokryć M Rozwiązanie problemu dużej złożoności obliczeniowej algorytmu redukcji w programie PROTON Wyznaczenie minimalnych pokryć M w programie PROTON Wyznaczenie iloczynu kartezjańskiego wszystkich tablic minimalnych pokryć M w programie PROTON Program PROTON Założenia Opis programu Zastosowania programu PROTON Współpraca z programami LERS oraz ESPRESSO Podsumowanie Dodatek Bibliografia
3 Wstęp Redukcja atrybutów/argumentów jest algorytmem stosowanym w dwóch odrębnych dziedzinach wiedzy, a mianowicie w zagadnieniach związanych z klasyfikacją danych (maszynowe uczenie, eksploracja danych itp.) oraz w zagadnieniach związanych z optymalizacją i syntezą logiczną układów cyfrowych. W obu przypadkach jest to problem polegający na redukowaniu nadmiarowych specyfikacji w tablicach danych (tablicach prawdy w układach logicznych) za pośrednictwem usuwania zbędnych atrybutów (argumentów). Uzyskiwane w wyniku takiego procesu tablice mogą być wykorzystywane do generowania uogólnionych reguł decyzyjnych albo do kolejnych etapów optymalizacji logicznej (w przypadku układów cyfrowych). Oczywiście dane wejściowe algorytmów redukcji są w obu przypadkach zasadniczo różne. Dla tablic danych mamy do czynienia z wielowartościowymi atrybutami warunkowymi i wielowartościowymi atrybutami decyzyjnymi. Dla tablic prawdy wartości argumentów i wartości funkcji są binarne. Jednocześnie całkowicie inaczej są interpretowane tzw. wartości nieokreślone. W tablicy danych wartość nieokreślona atrybutu warunkowego oznacza, że wartość tego atrybutu nie została ustalona, a w przypadku tablic funkcji logicznych nieokreśloność argumentu wektora wejściowego oznacza występowanie w specyfikacji wektorów o wszystkich możliwych wartościach danego argumentu. Oczywiście w samym procesie przetwarzania atrybut warunkowy jak też wartość sygnału wejściowego mogą być interpretowane tak samo. Można bowiem założyć, że nieznana wartość atrybutu warunkowego dopuszcza specyfikację pierwotną z każdą możliwą wartością tego atrybutu. W rozeznanej literaturze nie znaleziono jednak jednoznacznego sformułowania tego problemu. Zauważono natomiast, że wiele metod odkrywania wiedzy, w szczególności metod indukcji reguł decyzyjnych, nie jest przystosowanych do uwzględniania nieokreślonych wartości atrybutów. Z kolei jeśli chodzi atrybuty decyzyjne i wartości funkcji logicznych, to w tym przypadku rozsądnym jest przyjmowanie założenia, że decyzja jest zawsze określona. Inaczej jest dla wartości funkcji logicznych, które z natury pracy układów cyfrowych mogą zakładać wartość nieokreśloną dla różnych wektorów wejściowych układu. Różnice w interpretacji mogą również występować na poziomie wyników. Jest bowiem zrozumiałe, że dla układów logicznych najlepsze są rozwiązania z najmniejszą liczbą argumentów. Natomiast w przypadku tablic danych, w których wartość atrybutu jest niejednokrotnie uzyskiwana za pośrednictwem skomplikowanych pomiarów, większa liczba atrybutów warunkowych (ale z pominięciem tych najbardziej kłopotliwych) jest do przyjęcia. Ale dynamiczny rozwój metod syntezy logicznej otwiera również potrzebę stosowania wszystkich reduktów w procedurach optymalizacji logicznej. Dlatego przy założeniu opracowania w miarę uniwersalnego narzędzia do badań i tablic danych i tablic prawdy, jako główny cel niniejszej pracy przyjmuje się implementację algorytmu obliczającego wszystkie redukty, przy występowaniu nieokreśloności wyłącznie po stronie dziedziny funkcji specyfikujących dane. Takie założenia są istotne również z punktu widzenia eksperymentów, których wyniki będą wykorzystywane do dalszych obliczeń, za pomocą typowych narzędzi wykorzystujących zredukowane dane (LERS, ESPRESSO). 2
4 Niniejsza praca składa się z trzech rozdziałów. W rozdziale pierwszym omówiono podstawy teoretyczne oraz zaprezentowano przykłady praktycznych zastosowań tablic decyzyjnych. Rozdział drugi opisuje rozwiązanie problemu dużej złożoności obliczeniowej algorytmu redukcji w programie PROTON. Na końcu, w rozdziale trzecim przedstawiano założenia i opis programu PROTON. Omawiane tu przykłady pozwalają krok po kroku prześledzić działanie programu i jego współpracę z programami LERS oraz ESPRESSO. Oczywiście bogactwo przykładów ma na celu przystępne i przejrzyste zapoznanie czytelnika z zagadnieniem. Pragnę bardzo serdecznie podziękować Panu profesorowi Tadeuszowi Łubie, dzięki któremu mógł powstać ten program komputerowy oraz wszystkim pozostałym moim wykładowcom z Politechniki Warszawskiej. 3
5 Streszczenie Niniejsza praca prezentuje program PROTON, który służy do redukcji atrybutów metodą uogólniania reguł decyzyjnych. Program ten jest uniwersalnym narzędziem mającym zastosowanie dla danych wielowartościowych lub danych binarnych, dlatego z powodzeniem można go stosować zarówno do analizy zbiorów reguł decyzyjnych jak i tablic prawd. Wyniki przeprowadzonych w pracy eksperymentów redukcji argumentów konfrontowane są z programami LERS oraz ESPRESSO. Przedstawione przykłady zastosowania programu PROTON, pokazują zalety algorytmu dokładnego w porównaniu do heurystycznych algorytmów zastosowanych w wyżej wymienionych programach. Abstract This thesis presents program PROTON, which is used to reduce attributes using the method of decision rules generalization. The program is a versatile tool applicable for the multi-valued or binary data, so can be successfully used both to analyze sets of decision rules and the truth tables. The results of experiments of reduction of the arguments carried out in this paper are confronted with programs LERS and ESPRESSSO. Presented examples of application of PROTON, show the advantages of exact algorithm in comparison to the heuristic algorithms used in the above mentioned programs. 4
6 1. Podstawy teoretyczne 1.1. Wstęp Narzędzi matematycznych do formalnego opisu wiedzy, w tym wiedzy niepełnej i niedokładnej dostarcza teoria zbiorów przybliżonych, zaproponowana w roku 1982 przez prof. Zdzisława Pawlaka [11]. Teoria zbiorów przybliżonych, nie jest alternatywna dla klasycznej teorii zbiorów. Jest ona pewną formalizacją pojęć nieprecyzyjnych (nieostrych) w terminach, pojęć precyzyjnych. Pojęcie nieprecyzyjne jest przedstawione w tej teorii za pomocą dwu pojęć precyzyjnych (dolnego i górnego przybliżenia), co pozwala na operowaniem klasycznym aparatem teorii mnogości do wyrażania i analizy pojęć nieprecyzyjnych. Teoria zbiorów przybliżonych znalazła liczne zastosowania, między innymi w: medycynie farmakologii bankowości lingwistyce rozpoznawaniu mowy ochrona środowiska bazach danych i innych. Badania i prace w tym zakresie prowadzone są w wielu krajach [12]. Na bazie tej teorii na Uniwersytecie Kansas przez pana profesora Jerzego W. Grzymala-Busse został opracowany program LERS (Learning from Examples based on Rough Sets) [4]. Program wykorzystuje zbiory przybliżone do wyszukiwania reguł decyzyjnych. Zadaniem LERSa jest generowanie tychże reguł na podstawie tablic decyzyjnych, ale w taki sposób, że generacja reguł jest realizowana dla niesprzecznych tablic danych. W tym przypadku (a w szczególności dla tablic z binarnymi wartościami atrybutów) jest to procedura wykorzystująca algorytmy analogiczne do procedur minimalizacji funkcji boolowskich. Stąd pomysł wprowadzenia do procesów obliczeniowych stosowanych w analizie danych metod wywodzących się z syntezy logicznej. Jednocześnie, aby całe przedsięwzięcie mogło być usprawnieniem procedur generowania reguł decyzyjnych (stosowanych w programie LERS), głównym celem pracy uczyniono procedurę redukcji atrybutów. 5
7 1.2. System informacyjny i tablica decyzyjna Punktem wyjścia do rozważań teoretycznych jest pojęcie systemu informacyjnego oraz jego języka. Formalnie system informacyjny, jest parą (U, A, V, f), gdzie: U jest niepustym i skończonym zbiorem obiektów zwanym uniwersum, A jest niepustym i skończonym zbiorem atrybutów, V = V, przy czym jest dziedziną atrybutu a A, oraz : jest funkcją informacyjną taką, że,,. Jeżeli w systemie informacyjnym wyróżniamy rozłączne zbiory atrybutów warunkowych C i atrybutów decyzyjnych D (gdzie A=C D), to system taki nazywany jest tablicą decyzyjną [12]. Podstawową zaletą tablicy decyzyjnej jest zwarty i przejrzysty sposób prezentacji zależności między zbiorem warunków, a zbiorem odpowiadającym im decyzji. Tablicę decyzyjną można traktować zatem jako reprezentację zbioru reguł decyzyjnych [8]. Przykładową tablicę reguł decyzyjnych przedstawia tabela 1. Tabela 1 Przykładowa tablica reguł decyzyjnych [5] Atrybuty a b c d e Klasyfikacja (decyzja) W tablicy reguł decyzyjnych każdy wiersz reprezentuje obiekt, który jest opisywany wartościami atrybutów a, b, c, d oraz jest klasyfikowany w kolumnie e. Reguły decyzyjne zapisane w pierwotnej tablicy mają określone wartości atrybutów, a ustalonemu zbiorowi wartości atrybutów odpowiada określona decyzja. Dla tabeli 1: (a,1) & (b,0) & (c,0) & (d,1) (e,1) 6
8 1.3. Tablic decyzyjne w zastosowaniach praktycznych - przykłady Tablice decyzyjne stosuje się w bardzo wielu dziedzinach, np. w automatyce przemysłowej do sterowania procesem produkcyjnym, w systemach kontroli jakości, w specjalistycznym oprogramowaniu komputerowym wspomagającym podejmowanie decyzji, również w formie tablic prawd w elektronicznych układach cyfrowych. Jednocześnie tablice te mogą być zastosowane w bardziej konkretnych przypadkach takich jak kryptografia, czy sztuczna inteligencja. Poniżej podaję na podstawie literatury [2] przykłady z kilku różnych dziedzin Zastosowanie tablic decyzyjnych w medycynie Tabela 2 przedstawia przykładową tablicę decyzyjną opisującej zbiór pacjentów, którzy starali się o uzyskanie recepty na szkła kontaktowe. Tablica składa się z dwudziestu czterech obiektów oraz czterech atrybutów warunkowych - każda z badanych osób została scharakteryzowana za pomocą czterech cech jakościowych: wieku, wady wzroku, astygmatyzmu oraz łzawienia. Korzystając z wcześniej opisanych definicji można tablicę tę zapisać w postaci: TD = ( U, C, D, V, f), gdzie U = {1,2,3, 24} C = {wiek, wada wzroku, astygmatyzm, łzawienie} D = {szkła} V wiek = {M, P, S}, cecha porządkowa o 3 wartościach młodość (M), P przedstarczowzroczność (P), starczowzroczność (S) V wada wzroku ={K, D}, cecha nominalna o 2 wartościach: krótkowzroczność (K), dalekowzroczność (D), V astygmatyzm ={Tak, Nie}, cecha nominalna o 2 wartościach: występuje, nie występuje, V łzawienie ={Normalne, Zmniejszone}, cecha nominalna o 2 wartościach: zmniejszone, normalne. :. 1, = 7
9 Tabela 2 Dane o 24 pacjentach starających się o szkła kontaktowe [2] Pacjent Wiek Wada Astygmatyzm Łzawienie Szkła 1 M K Nie Zmniejszone Brak 2 M K Nie Normalne Miękkie 3 M K Tak Zmniejszone Brak 4 M K Tak Normalne Twarde 5 M D Nie Zmniejszone Brak 6 M D Nie Normalne Miękkie 7 M D Tak Zmniejszone Brak 8 M D Tak Normalne Twarde 9 P K Nie Zmniejszone Brak 10 P K Nie Normalne Miękkie 11 P K Tak Zmniejszone Brak 12 P K Tak Normalne Twarde 13 P D Nie Zmniejszone Brak 14 P D Nie Normalne Miękkie 15 P D Tak Zmniejszone Brak 16 P D Tak Normalne Brak 17 S K Nie Zmniejszone Brak 18 S K Nie Normalne Brak 19 S K Tak Zmniejszone Brak 20 S K Tak Normalne Twarde 21 S D Nie Zmniejszone Brak 22 S D Nie Normalne Miękkie 23 S D Tak Zmniejszone Brak 24 S D Tak Normalne Brak Zastosowanie tablic decyzyjnych w ekonomii Poniższy przykład przedstawia zastosowanie tablicy decyzyjnej w bankowości. Bank dysponuje zbiorem obiektów (klientów), których przynależność do odpowiedniej klasy jest znana. Sytuacja ta występuje np. przy wnioskach kredytowych składanych w bankach. Ponieważ część z nich jest akceptowana, a część odrzucana można starać się zidentyfikować reguły, często niejawne, jakimi kieruje się bank podejmując decyzje. Dane w poniższej tablicy dotyczącą początkowego (dla 19 osób) fragmentu zbioru 125 osób ubiegających się o kredyty konsumpcyjne w pewnym banku w Japonii. Jeśli chodzi o przynależność klas, to każda z osób albo otrzymała kredyt (klasa tak), albo go nie otrzymała (klasa nie) [2]. 8
10 Tabela 3 Dane o 19 osobach ubiegających się o kredyt [2] C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 Klasa P K K S Nie Tak P K K S Nie Tak B K K R Tak Nie P K K R Nie Tak P K K S Tak Tak P K M S Nie Tak P K M S Nie Tak P K M R Nie Tak P K M R Nie Tak B K M R Nie Nie P S K M Nie Nie B S K R Nie Nie P S K S Nie Nie P S K S Nie Tak P S K R Nie ? Tak P S M S Nie Nie P S M R Nie Tak P S M S Nie Tak P S M R Nie Tak Tablicę 3 możemy opisać jako uporządkowaną parę TD = (U, C, D, V, f), gdzie: U = {1,2,3, 125} C = {C1,C2,C3,C4,C5,C6,C7,C8,C9,C10} D = {Klasa} V C1 = {B, P} - sytuacja zawodowa: bezrobotny (B) i pracujący (P); V C2 = {K, S, R, A,B, M,Z} - przeznaczenie kredytu (C2), cecha nominalna przyjmująca wartości: komputer (K), samochód (S), rower (R), sprzęt audio (A), biżuteria (B), meble (M) oraz pobyt w szpitalu (Z); V C3 = {K, M} - płeć (C3), cecha nominalna o dwóch wartościach: kobieta (K), mężczyzna (M); V C4 = {S, R}- stan cywilny (C4), cecha nominalna reprezentująca informację o tym czy osoba ubiegająca się o kredyt jest samotna (S), czy też ma rodzinę (R); V C5 = {tak, nie}- informacja o tym czy region, w którym mieszka osoba ubiegająca się o kredyt, jest uznany za zagrożony np. trzęsieniami ziemi (C5), cecha nominalna o dwóch wartościach: tak, nie; V C6 = { : N} - wiek w latach (C6); V C7 = { : R} - stan konta bankowego w tys. jenów (C7); V C8 ={ : R } - deklarowana wielkość miesięcznej raty spłaty kredytu w tys. jenów (C8); V C9 ={ : N} - deklarowana liczba miesięcznych rat (C9); V C10 = { : N} - staż pracy w danym zakładzie pracy w latach (C10). 9
11 1.4. Metody uogólniania i upraszczania reguł decyzyjnych Wiedza (informacja) zapisana w tablicy decyzyjnej może być uogólniona. Na przykład uogólnione reguły decyzyjne z tab. 1 mogą być zapisane w postaci: (a,1) & (b,0) (e,1) (a,0) (e,0) (b,1) & (d,1) (e,0) (d,2) (e,2) lub w formie tablicowej (tab. 4) Tabela 4 a b c d e z której łatwo odczytać decyzję dla obiektów opisanych wartościami nie występującymi w tablicy pierwotnej. Np. Dla (a,1) & (b,1) & (c,1) & (d,1) (e,1) Algorytmy takiego uogólnienia są znane i stosowane np. w programie LERS. Innym sposobem upraszczania informacji zapisanej w tablicy decyzyjnej jest redukcja atrybutów. Na przykład dla tablicy decyzyjnej podanej w tableli 5, zredukowanym zbiorem atrybutów jest: Tabela 5 a 1 a 2 a 3 a 4 a 5 a 6 f a 1, a 3, a 4 co łatwo można sprawdzić, gdyż po usunięciu niesprzeczną tablicę (Tabela 6) pozostałych atrybutów uzyskuje się 10
12 Tabela 6 a 1 a 3 a 4 f Sam problem redukcji atrybutów jest opisywany w literaturze w róznych ujęciach. Najwygodniejsza do interpretacji i obliczeń ręcznych jest reprezentacja zależności funkcyjnych tablic decyzyjnych w rachunku podziałów[5]. a ponadto Podziałem na zbiorze S jest system zbiorów = { } którego bloki są rozłączne, czyli =, ś = W Tabela 5 możemy zauważyć że wiersze 10 i 6 różnią się tylko jednym atrybutem a 1, jest to tak zwany atrybut niezbędny, kolejnym niezbędnym jest a 3 ponieważ wiersze 7 i 8 tylko nim się różnią. Wyznaczamy podziały atrybutów niezbędnych, a następnie wyliczamy ich iloczyn: P = (1,4,5,7,8,9;2,3,6;10) 1 P 3 = (1,6,8,9,10; 2,3,4,5,8) P1 P3 = (1,7,9 ;2,3;4,5,8 ;6 ;10) A następnie podział ilorazowy względem P F czyli wyjścia. 11
13 P F = (1,2,7 ;3,4,6;5,8 ;9,10) P1 P3 PF = (1,7)(9) ;(2)(3) ;(4)(5,8) ;(6) ;(10) Tworzymy tablicę (tab. 7) porównań w której sprawdzamy na której pozycji różnią się wiersze 1 i 9, 7 i 9, 2 i 3, 4 i 5, 4 i 8. Skreślamy wiersze które mają większe pokrycie. Tabela 7 Tablica porównań 1,9 a 2, a 4, a 5 7,9 a 2, a 4, a 5, a 6 2,3 a 4, a 5 4,5 a 4, a 6 4,8 a 2,a 4 Wyznaczanie rozwiązań minimalnych: (a 4 + a 2 )(a 4 + a 5 )(a 4 + a 6 ) = a 4 + a 2 a 5 a 6 Stąd dwa rozwiązania minimalno-argumentowe: a 1, a 3, a 4 a 1, a 2, a 3, a 5, a 6 Rozwiązanie minimalne z najmniejszą licznością to: a 1, a 3, a 4. Niestety taki algorytm nie jest zbyt wygodny do implementacji komputerowej. Inne ujęcie tego problemu podane jest w pracy A. Skowrona [13]. W pracy tej główną rolę w obliczeniach reduktów spełnia tzw. macierz rozróżnialności, tworzona dla systemu decyzyjnego TD = (U, A, D), gdzie U = { u 1, u 2,..., u n } jest zbiorem obiektów, A jest zbiorem atrybutów warunkowych, D jest decyzją. Dla danego systemu decyzyjnego TD = (U, A, D), macierz rozróżnialności M(TD)=[c ij ] nxn definiuje się następująco: = { :,, = 1, 2,, ( ) ( )} 12
14 Każdy element macierzy c ij jest zbiorem atrybutów różniących i-ty i j-ty obiekt z U, pod warunkiem, że decyzje dla obiektów u i oraz u j są różne. W przypadku, gdy dec(u i ) = dec(u j ), zbiór c ij jest zbiorem pustym. Na podstawie macierzy rozróżnialności tworzona jest funkcja rozróżnialności. Bezpośrednio z M(TD) tworzone jest wyrażenie boolowskie w postaci iloczynu sum (CNF), gdzie sumowanie jest po elementach (atrybutach) niepustego zbioru cij. Wyrażenie to jest następnie przekształcane do wyrażenia postaci suma iloczynów (DNF), którego składniki (po odpowiednim uproszczeniu) reprezentują minimalne zbiory atrybutów. Nietrudno zauważyć, że w obu przypadkach cały proces obliczeniowy reduktów sprowadzić można do obliczania tzw. minimalnego pokrycia kolumnowego binarnej macierzy porównań. Pokryciem kolumnowym macierzy porównań (zwanej również macierzą pokryć) M = [m ij ], i {1,..., w}, j {1,..., n} jest zbiór L {1,..., n} taki, że dla każdego i {1,..., w} istnieje j L, dla którego m ij = 1. Pokrycie kolumnowe nazywamy minimalnym, jeżeli nie istnieje L L, który jest pokryciem macierzy M. Tak definiowana macierz pokryć jest analogiem macierzy blokującej stosowanej w algorytmie ekspansji [5] wykorzystywanym w procesie minimalizacji funkcji boolowskich, jak też w metodzie uogólniania reguł decyzyjnych metodą ekspansji [5]. Z tych powodów metodę redukcji atrybutów zaproponowaną w niniejszej pracy nazywać można redukcją atrybutów metodą uogólniania reguł decyzyjnych Redukcja atrybutów metodą uogólniania reguł Redukcja atrybutów metodą uogólniania reguł decyzyjnych przebiega trzyetapowo, a mianowicie: w etapie pierwszym tworzy się macierze porównań M, w etapie drugim następuje wyznaczenie tablic minimalnych pokryć M, w etapie trzecim wyznacza się iloczyn kartezjański zbiorów obiektów (wierszy) wszystkich tablic minimalnych pokryć M. Ostatni etap to analiza dużego zbioru wyników iloczynu kartezjańskiego, w tym etapie odrzucamy wszystkie powtarzające się wyniki oraz mające większe pokrycie kolumnowe. Powstały w ten sposób zbiór daje nam zbiór rozwiązań. 13
15 Tworzenie macierzy porównań M Dla każdego wiersza w tablicy reguł decyzyjnych tworzy się macierz porównań M poprzez porównanie danego wiersza z pozostałymi wierszami, które mają inną klasyfikację (decyzję) np. dla pierwszego wiersza macierz porównań M 1 przedstawia poniższa tabela: Tabela 8 Utworzenie macierzy porównań M 1 [5] a b c d e a b c d M 1 = Pierwszy wiersz porównujemy z trzecim, czwartym, itd. aż do wiersza siódmego. Wiersz drugi w tym przypadku pomijamy ponieważ należy do tej samej klasyfikacji co wiersz pierwszy, czyli posiada taką samą wartość na wyjściu. Wyniki porównań zapisujemy w macierzy M, jeśli porównywane atrybuty różnią się, zapisujemy w macierzy wartość 1, jeśli są takie same zapisujemy wartość 0. 14
16 Wyznaczenie tablicy minimalnych pokryć M Tablicę pokryć minimalnych M (tab. 9) wyznacza się w następujący sposób: w macierzy porównań M wyszukujemy wszystkie możliwe kombinacje kolumn, gdzie w każdym wierszu wystąpi co najmniej jedna jedynka, przy czym powinna to być jak najmniejsza liczba kolumn, która spełnia ten warunek. W poniższym przykładzie mamy dwie możliwe kombinacje: kolumny a, b oraz b, d. Tabela 9 Minimalne liczby kolumn pokrywających macierz M (a,b oraz b,d) [5] a b c d a b c d Następnie każdą kombinację kolumn zapisujemy w tablicy w taki sposób, że każdej wybranej kolumnie przypisujemy wartość 1. Poszczególne kombinacje kolumn tworzą kolejne wiersze tablicy minimalnych pokryć M. Jeżeli jakaś kolumna występuje we wszystkich wierszach tablicy wtedy jej atrybut jest atrybutem niezbędnym (nieusuwalnym) co oznacza, że atrybut ten występuje w każdym wyniku algorytmu nie może powstać rozwiązanie bez tego atrybutu. W literaturze [8] atrybut niezbędny definiowany jest w następujący sposób: Definicja Atrybut jest nieusuwalny (niezbędny) z jeżeli { } atrybut jest zbędny w. W poniższym przykładzie jest to kolumna b. Tabela 10 Tablica minimalnych pokryć M [5] ; w przeciwnym wypadku a b c d
17 Wyznaczenie iloczynu kartezjańskiego zbiorów obiektów wszystkich tablic minimalnych pokryć M Po wyznaczeniu tablic minimalnych pokryć M musimy obliczyć iloczyn kartezjański zbiorów obiektów (wierszy) wszystkich tych tablic, w poniższym przykładzie mamy siedem tablic minimalnych pokryć M, zatem do sprawdzenia jest 2*2*1*1*1*3*4=48 siódemek uporządkowanych (zestawień wierszy po jednym z każdej tablicy). Większość wyników będzie się powtarzała lub będzie miała większe pokrycie. Z tablic minimalnych pokryć można wywnioskować, które atrybuty są atrybutami niezbędnymi: dla pierwszego wiersza będzie to b, dla wiersza drugiego a, trzeciego a, czwartego b i d, a piątego d. Wiersze szósty i siódmy nie mają atrybutów niezbędnych. a b c d e a b c d a b c d a b c d a b c d a b c d a b c d a b c d Rysunek 1 Tablice minimalnych pokryć M [5] 16
18 Po sprawdzeniu programem PROTON wszystkich zestawień okazało się że dla tego przykładu mamy tylko jedno minimalne rozwiązanie, zatem można zredukować kolumnę c. Tabelę reguł po zredukowaniu przedstawia ilustracja poniżej: Tabela 11 Zredukowana tablica reguł decyzyjnych [5] a b d e
19 2. Rozwiązanie problemu dużej złożoności obliczeniowej algorytmu redukcji w programie PROTON Ze względu na dużą złożoność obliczeniową zastosowałem nietypową strukturę danych. Wszystkie dane pośrednie w programie są przechowywane w 32 bitowym słowie. Umożliwia to szybkie operacje porównania całych wierszy i kolumn w jednym cyklu maszynowym procesora, co znacznie przyspieszyło program Wyznaczenie minimalnych pokryć M w programie PROTON Wyznaczenie minimalnych pokryć M jest bardzo pracochłonne ponieważ trzeba sprawdzić wszystkie kombinacje kolumn, dlatego też zastosowałem optymalizację, która umożliwia pominięcie bardzo wielu porównań. W poniższym przykładzie zaczynamy wyznaczanie minimalnego pokrycia od kolumny a, która na trzeciej pozycji (wierszu) ma wartość zero. Do następnego etapu brane są tylko te kolumny, które mają jedynkę na trzeciej pozycji. Kolumny te są następnie łączone z kolumną a przy użyciu funkcji OR, a następnie sprawdzane jest czy kolumna składa się wyłącznie z jedynek, jeśli nie w następnym kroku dokładana jest kolumna, która ma jedynkę w brakującym miejscu. Jeśli wynik sklejania kolumn składa się z samych jedynek to minimalnym pokryciem są kolumny które zostały sklejone. Tak wyznaczone pokrycia kolumn trzeba jeszcze porównać z innymi wyszukanymi dla tej samej tablicy, ponieważ pojawia się dużo powtórzeń albo wyników z większym pokryciem. Tabela 12 Przeszukiwane macierzy M w celu wyznaczenia minimalnych pokryć Źródło: opracowanie własne a b c d e f g h i j
20 2.2. Wyznaczenie iloczynu kartezjańskiego wszystkich tablic minimalnych pokryć M w programie PROTON Wyznaczenie wszystkich zestawień wierszy z tablic pokryć M to kolejny mocno złożony obliczeniowo problem. Dzieje się tak ponieważ tablice pokryć M potrafią mieć setki wierszy, a należy sprawdzić wszystkie zestawienia tych wierszy. W wyniku badań algorytmu i eksperymentów zauważyłem, że dużo wyników się powtarza albo ma większe pokrycie. Obserwacje te umożliwiły mi opracowanie następującego algorytmu: W kroku pierwszym tworzymy tablicę wyników pośrednich gdzie zapisujemy iloczyn kartezjański pierwszej i drugiej tabeli minimalnych pokryć M, następnie wyniki pośrednie są sprawdzane pod kątem powtórzeń albo większego pokrycia. Ta operacja powoduje nawet usunięcie ponad 99% danych, które są nadmiarowe. W następnym kroku tworzymy kolejną tablicę wyników pośrednich, która jest wypełniana wszystkimi zestawieniami wierszy z poprzedniej tablicy pośredniej i z kolejnej tabeli pokryć M. W momencie kiedy wszystkie tabele pokryć M są przetworzone w tabeli pośredniej otrzymujemy interesujący nas wynik w postaci listy wszystkich minimalnych atrybutów. 19
21 3. Program PROTON 3.1. Założenia Celem mojej pracy było napisanie programu w języku C++, działającym pod systemem operacyjnym Microsoft Windows, którego zadaniem jest wyszukiwanie w tablicach decyzyjnych wszystkich minimalnych zbiorów atrybutów koniecznych do podjęcia prawidłowej decyzji. Zdecydowałem się na język programowania C++, ponieważ jest to język ogólnego przeznaczenia służy do pisania programów i systemów operacyjnych. Język C++ jest niezależny od platformy sprzętowej, a kod maszynowy generowany przez kompilatory jest bardzo wydajny. Do tworzenia interfejsu graficznego oraz tworzenia wątków zastosowałem bibliotekę wxwidgets [1]. Jest to biblioteka klas C++, która umożliwia tworzenie oprogramowania dla różnych środowisk graficznych. Program można skompilować i uruchomić pod różnymi systemami operacyjnymi, np.: Windows, Linux, UNIX, MacOS X oraz niezależnie od platformy sprzętowej, np.: x86, x86-64, IA-64, Alpha, ARM, MIPS, PowerPC, SPARC/SPARC64. Projekt programu PROTON jest stworzony w zintegrowanym środowisku programistycznym wxdev-c++, w którego skład wchodzą: edytor kodu, kompilator MinGW oraz edytor interfejsu graficznego Opis programu Dzięki zastosowaniu interfejsu graficznego, obsługa programu jest prosta i intuicyjna. Dodatkowym atutem jest wykonywanie operacji redukcji w oddzielnych wątkach z bardzo niskim priorytetem. Umożliwia to jednoczesne normalne i komfortowe użytkowanie komputera bez widocznego obciążenia systemu. Program PROTON wykorzystuje wolną moc obliczeniową. Górne pole edycyjne jest przeznaczone do wprowadzania danych do programu oraz wyświetlania wyników jego pracy. Dane znajdujące się w tym oknie można dowolnie edytować. Dolne okno wyświetla komunikaty o postępie prac w trakcie działania programu. Na ich podstawie można oszacować czas zakończenia pracy programu. Pomiędzy oknami znajdują się cztery paski postępu, pokazują one postęp pracy poszczególnych wątków pracujących w tle. Program tworzy tyle wątków ile jest procesorów w systemie. Wykorzystuję tu najnowszy trend rozwoju komputerów czyli wieloprocesorowość. Interfejs graficzny programu przedstawiono na rysunku 2. 20
22 Rysunek 2 Widok ekranu programu PROTON Po prawej stronie okna programu znajdują się przyciski: OPEN - wczytywanie danych ( format ESPRESSO *.pla ) START - uruchamianie procesu redukcji STOP - przerywanie procesu redukcji SAVE - zapisywanie zawartości okna ( format tekstowy *.txt ) RES 1 - wyświetla pokrycia macierzy M RES 2 - wyświetla wynik redukcji w postaci liczbowej RES 3 - wyświetla wynik redukcji w notacji pozycyjnej 21
23 3.3. Zastosowania programu PROTON Współpraca z programami LERS oraz ESPRESSO Program LERS (Learning from Examples based on Rough Sets) jak już wspomniano w części teoretycznej niniejszej pracy, został opracowany na Uniwersytecie Kansas przez pana profesora Jerzego W. Grzymala-Busse. Program ten pracuje w środowisku DOS, a ostatnia dostępna wersja pochodzi z czerwca 1992 roku. Zadaniem LERSa jest generowanie reguł na podstawie tablic decyzyjnych. Twórcą ESPRESSO jest prof. Robert K. Brayton, początkowo program został stworzony w IBM a następnie rozwijany na uniwersytecie Berkeley. Współpraca programu PROTON z wyżej wymienionymi programami zostanie przedstawiona na trzech przykładach. Przykład 1 Przykład wykorzystuje dane binarne z pliku N-House 1, które składają się z 232 reguł decyzyjnych, gdzie każda reguła ma 16 argumentów i dwie możliwe decyzje 0 lub1 (dane załączono w Dodatku). W wyniku działania programu LERS otrzymujemy 14 reguł decyzyjnych wykorzystujących 9 argumentów (dla (d,1)). Natomiast wynik programu ESPRESSO daje 6 reguł wykorzystujących 11 argumentów. Wyniki przedstawiono na wydruku 1 i 2. Wydruk 1 Wynik programu LERS dla danych N-HOUSE (a4,1) & (a13,0) -> (d,1) (a3,0) & (a4,0) -> (d,1) (a3,0) & (a6,0) -> (d,1) (a3,0) & (a11,0) -> (d,1) (a13,0) & (a14,1) -> (d,1) (a6,1) & (a13,0) -> (d,1) (a1,0) & (a14,1) -> (d,1) (a4,1) & (a6,1) & (a14,1) & (a15,1) -> (d,1) (a11,1) & (a13,0) -> (d,1) (a3,0) & (a13,0) -> (d,1) (a1,0) & (a13,0) -> (d,1) (a6,1) & (a11,0) & (a14,0) -> (d,1) (a1,0) & (a4,0) & (a6,1) -> (d,1) (a1,0) & (a6,1) & (a15,0) & (a16,0) -> (d,1) (a6,0) & (a13,1) -> (d,0) (a1,0) & (a6,0) -> (d,0) (a4,1) & (a13,1) & (a14,0) & (a15,1) -> (d,0) (a1,1) & (a4,1) & (a13,1) & (a14,0) -> (d,0) (a4,0) & (a13,1) & (a14,1) -> (d,0) 1 Jeden z plików przykładowych programu LERS - głosy kongresmenów w sprawie 16 kluczowych problemów zebrane w roku 1984 (tak lub nie) [3]. 22
24 (a3,0) & (a13,1) -> (d,0) (a1,1) & (a4,0) & (a11,1) & (a13,1) -> (d,0) (a3,1) & (a4,0) & (a6,0) & (a11,0) & (a14,0) -> (d,0) (a1,0) & (a13,1) & (a16,1) -> (d,0) (a1,1) & (a13,1) & (a15,0) -> (d,0) (a1,0) & (a3,0) & (a4,1) -> (d,0) Wydruk 2 Wynik programu ESPRESSO dla danych N-HOUSE.i 16.o 1.p e W wyniku działania programu PROTON dla danych N-House otrzymujemy 4 minimalne zbiory atrybutów (redukty): 1,2,4,6,13,14,15,16 1,3,4,6,11,13,14,15,16 1,2,3,4,5,6,7,8,10,14,15,16 1,2,3,4,5,6,7,10,12,14,15,16 Po usunięciu kolumn tablic decyzyjnych tj. pozostawieniu tylko tych, które zaproponował program PROTON jako pierwszy wynik, czyli 1,2,4,6,13,14,15,16, w rezultacie działania programu LERS otrzymujemy 12 reguł decyzyjnych wykorzystujących 8 argumentów (dla (d,1)). Widzimy tutaj zdecydowaną poprawę wyniku, liczba reguł i argumentów została zredukowana. Wynik ESPRESSO natomiast daje 7 reguł wykorzystujących 8 argumentów. W tym przypadku liczba reguł zwiększyła się o jedną, ale zmniejszyła się liczba argumentów o 3. Wyniki przedstawiono na wydruku 3 i 4. Wydruk 3 Wynik programu LERS dla danych N-HOUSE po redukcji programem PROTON (a2,1) & (a13,0) -> (d,1) (a13,0) & (a14,1) -> (d,1) (a1,0) & (a14,1) -> (d,1) (a4,1) & (a6,1) & (a14,1) & (a15,1) -> (d,1) (a4,1) & (a13,0) -> (d,1) (a6,1) & (a13,0) -> (d,1) (a1,0) & (a2,1) & (a6,1) -> (d,1) (a4,0) & (a14,0) & (a15,1) -> (d,1) (a1,0) & (a13,0) -> (d,1) 23
25 (a1,0) & (a4,0) & (a6,1) -> (d,1) (a1,0) & (a2,1) & (a4,0) -> (d,1) (a1,0) & (a6,1) & (a15,0) & (a16,0) -> (d,1) (a6,0) & (a13,1) -> (d,0) (a1,0) & (a6,0) -> (d,0) (a1,1) & (a4,1) & (a13,1) & (a14,0) -> (d,0) (a4,0) & (a13,1) & (a14,1) -> (d,0) (a2,1) & (a13,1) -> (d,0) (a2,0) & (a4,0) & (a6,0) & (a14,0) -> (d,0) (a4,1) & (a13,1) & (a14,0) & (a15,1) -> (d,0) (a1,0) & (a2,0) & (a16,1) -> (d,0) (a1,1) & (a13,1) & (a15,0) -> (d,0) Wydruk 4 Wynik programu ESPRESSO dla danych N-HOUSE po redukcji programem PROTON.i 8.o 1.p e Ze względu na wielowartościowe atrybuty w dalszej eksploracji danych wykorzystamy tylko programy LERS i PROTON, ponieważ program ESPRESSO działa wyłącznie na danych binarnych. Przykład 2 W przykładzie tym do wygenerowania reguł wykorzystam fikcyjne, przykładowe dane zawarte w tabeli 13. Symulacja pokazuje nie tylko wyniki, ale również metodę przygotowania i sformatowania danych w sposób zrozumiały dla poszczególnych programów. 24
26 Tabela 13 Przykładowa tablica reguł decyzyjnych x1 x2 x3 x4 y Pierwszym krokiem będzie przygotowanie danych w formacie LERS. W pierwszym wierszu pomiędzy nawiasami ostrokątnymi <> podany jest rodzaj kolumny: a - atrybut, d - decyzja. W drugim wierszu pomiędzy nawiasami prostokątnymi [] podane są nazwy kolumn, które są następnie użyte w wygenerowanych regułach decyzyjnych (patrz wydruk 5). Wydruk 5 Przykładowa tablica reguł decyzyjnych w formacie LERS < a a a a d > [ x1 x2 x3 x4 y ] Wynik działania programu LERS w formacie LERS: Wydruk 6 Wynik działania programu LERS (x1,1) -> (y,1) (x1,4) -> (y,1) (x1,2) -> (y,2) (x3,5) -> (y,2) (x1,5) & (x2,2) -> (y,2) (x3,6) -> (y,3) (x1,6) -> (y,3) 25
27 oraz wynik działania programu LERS w formie tabelarycznej: Tabela 14 Przykładowa tablica reguł decyzyjnych po redukcji przez program LERS x1 x2 x3 x4 y Jak widzimy do wygenerowanie reguł wystarczą kolumny x1, x2 i x3 jednak po analizie przykładowej tabeli 13 przez program PROTON okazało się, że do uzyskania prawidłowego wyniku wystarczą kolumny: 1,3 2,3 1,4 2,4 Mamy cztery możliwe kombinacje do wyboru. Do testów wybierzemy np. kolumnę 2 i 3, następnie przygotujemy dane w formacie LERS: Wydruk 7 Przykładowa tablica reguł decyzyjnych w formacie LERS, dane po obróbce przez program PROTON < a a d > [ x2 x3 y ] Wynik działania programu w formacie LERS przedstawiono na wydruku 8. Wydruk 8 Wynik działania programu LERS, dane po obróbce przez program PROTON (x2,3) -> (y,1) (x2,6) & (x3,2) -> (y,1) (x2,2) & (x3,4) -> (y,1) (x2,5) -> (y,2) (x3,5) -> (y,2) 26
28 (x2,2) & (x3,2) -> (y,2) (x3,6) -> (y,3) (x2,1) -> (y,3) Wynik w formie tabelarycznej przedstawiono w tabeli 15. Tabela 15 Przykładowa tablica reguł decyzyjnych po redukcji przez program LERS i po wcześniejszych obliczeniach programem PROTON x1 x2 x3 x4 y Jak widać w przykładzie redukcja atrybutów dokonana przez program PROTON zmniejszyła ilość danych wejściowych potrzebnych do podjęcia decyzji. Przykład 3 W tym przykładzie celowo wykorzystam tablicę reguł decyzyjnych o większych rozmiarach, aby bardziej uwydatnić zalety programu PROTON. Do obliczeń pobrane będą fikcyjne dane zawarte w poniższej tabeli. Tabela 16 Przykładowa tablica reguł decyzyjnych x1 x2 x3 x4 x5 x6 y
29 Wynik działania programu LERS w formacie LERS: Wydruk 9 Wynik działania programu LERS (x5,1) & (x6,1) -> (y,1) (x5,5) & (x3,3) -> (y,1) (x5,2) & (x6,1) -> (y,2) (x4,3) & (x5,4) -> (y,2) (x5,3) -> (y,3) (x4,4) & (x5,4) -> (y,4) (x5,2) & (x6,5) -> (y,4) (x5,5) & (x3,2) -> (y,5) (x5,1) & (x6,5) -> (y,5) oraz wynik działania programu LERS w formie tabelarycznej: Tabela 17 Przykładowa tablica reguł decyzyjnych po redukcji przez program LERS i po wcześniejszych obliczeniach programem PROTON x1 x2 x3 x4 x5 x6 y Jak widać LERS wygenerował reguły wykorzystując atrybuty: x3, x4, x5, x6. Przy użyciu programu PROTON wyszukujemy wszystkie minimalne zbiory atrybutów i przygotowujemy zredukowaną tablicę dla programu LERS: Wydruk 10 Wynik programy PROTON 1,5 2,5 2,6 3,4 3,6 4,5 4,6 1,2,3 28
30 Mamy aż 8 możliwych minimalnych zbiorów argumentów, z czego 7 dwuargumentowych i 1 trzyargumentowy. Wybieramy zbiór dwuargumentowy, np. kolumnę x3 i x4. Przygotowujemy dane jak na wydruku 11: Wydruk 11 Przykładowa tablica reguł decyzyjnych w formacie LERS, dane po obliczeniach programem PROTON < a a d > [ x3 x4 y ] Wynik działania programu w formacie LERS przedstawiono na wydruku 12: Wydruk 12 Przykładowa tablica reguł decyzyjnych po obróbce przez program PROTON i LERS (x4,1) & (x3,1) -> (y,1) (x3,3) & (x4,2) -> (y,1) (x4,3) & (x3,1) -> (y,2) (x3,2) & (x4,2) -> (y,2) (x4,3) & (x3,3) -> (y,3) (x4,4) & (x3,2) -> (y,3) (x4,4) & (x3,1) -> (y,4) (x3,3) & (x4,1) -> (y,4) (x3,2) & (x4,1) -> (y,5) (x4,2) & (x3,1) -> (y,5) 29
31 oraz w formie tabelarycznej: Tabela 18 Przykładowa tablica reguł decyzyjnych po redukcji przez program LERS i po wcześniejszych obliczeniach programem PROTON x1 x2 x3 x4 x5 x6 y Z powyższych przykładów wynika że programy PROTON i LERS znakomicie się uzupełniają. Program PROTON minimalizuje liczbę atrybutów dla danych potrzebnych do prawidłowego podjęcia decyzji. Ponadto atutem programu PROTON jest to, że wyszukuje on wszystkie minimalne zbiory, co umożliwia znalezienie optymalnego zbioru atrybutów. Wiele tablic często jest łączone szeregowo lub równolegle w większe systemy. Dzięki temu, że program PROTON wyszukuje wszystkie minimalne zbiory atrybutów, umożliwia to dla wielu tablic znaleźć powtarzające się kombinacje atrybutów, i uzyskać możliwość dalszej optymalizacji. Wyszukiwanie wszystkich minimalnych zbiorów atrybutów lub argumentów może przynosić zaskakujące rezultaty. Dla przykładu program PROTON w tablicy prawdy kaz.pla która składa się 31 reguł a każdy wiersz z 21 argumentów wyszukuje 5574 minimalnych zbiorów argumentów. Kolejny przykład, tablica trains.pla (Wydruk 13 Plik trains.pla pozbawiony komentarzy, dane w formacie ESPRESSO akceptowanym przez program PROTON), składa się z 10 reguł a każdy wiersz z 32 atrybutów; program PROTON wyszukuje 689 minimalnych zbiorów atrybutów. 30
32 Wydruk 13 Plik trains.pla pozbawiony komentarzy, dane w formacie ESPRESSO akceptowanym przez program PROTON.type fdr.i 32.o 1.ilb size load w0 l0 s0 n0 ls0 w1 l1 s1 n1 ls1 w2 l2 s2 n2 ls2 w3 l3 s3 n3 ls3 a b c d e f g h i j.ob direction.mv 10.mvc end Wydruk 14 Plik kaz.pla
33 Podsumowanie Redukcja atrybutów jest procesem stosowanym w optymalizacji reguł decyzyjnych pierwotnie opisywanych tablicami decyzyjnymi. Zagadnienie to jest analogiczne jak w redukcji argumentów funkcji boolowskich opisywanych tablicami prawdy. Znaczenie obu tych procesów jest z natury rzeczy całkowicie inne, a mianowicie: redukcję atrybutów stosuje się w zagadnieniach należących do eksploracji danych, natomiast redukcję argumentów coraz częściej stosuje się w syntezie logicznej układów cyfrowych, w szczególności dla struktur programowalnych typu FPGA. Różnica pomiędzy atrybutami a argumentami polega na tym, że argument przyjmuje tylko dwie wartości: zero lub jeden, natomiast atrybut przyjmuje wiele różnych wartości. Niniejsza praca wykazuje, że algorytmy redukcji atrybutów mogą być z powodzeniem stosowane również do redukcji argumentów w tablicach prawdy. Dzięki optymalizacji uwzględniającej redukcję argumentów układy cyfrowe są szybsze, pobierają mniej prądu, a także struktura logiczna układu zajmuje mniejszą powierzchnię, i w rezultacie można stosować mniejszy i tańszy układ scalony. W przypadku tablic decyzyjnych proces ten zmniejsza rozmiary tablic i jednocześnie zmniejsza czas potrzebny na podjęcie decyzji. Zadaniem niniejszej pracy była implementacja algorytmu redukcji atrybutów/argumentów w celu stworzenia warunków do przeprowadzenia eksperymentów badających wpływ takiej redukcji na dalsze procedury optymalizacyjne. Znaczenie przeprowadzenia takich eksperymentów zostało już zasygnalizowane w rozdz. 3.3, w którym pokazano jak redukcja argumentów wpływa na wyniki minimalizacji funkcji boolowskich realizowane słynnym programem ESPRESSO, jak też pokazano wpływ redukcji atrybutów na generację reguł decyzyjnych realizowaną wzorcowym w tych zadaniach programem LERS. Wymowny jest przykład House, który potwierdza, że redukcja atrybutów zmniejsza liczbę reguł decyzyjnych, zatem jest to dodatkowa procedura optymalizacji w zadaniach klasyfikacji danych. Przykład jednocześnie wskazuje, że skuteczność uogólniania reguł w algorytmach programu LERS jest mniejsza niż w programie ESPRESSO. Ogólnie można stwierdzić, że zakres zastosowania redukcji argumentów jest w syntezie logicznej znacznie szerzej stosowany (np. w procedurach dekompozycji). Z tych powodów wprowadzona do programu PROTON możliwość obliczania wszystkich reduktów jest w porównaniu do możliwości programu PANDOR znaczącym krokiem w rozwoju metod dekompozycji równoległej. Należy zaznaczyć, że z technicznego punktu widzenia w programie PROTON zastosowano odmienne podejście do problemu redukcji atrybutów niż w dotychczasowych (i dostępnych autorowi) implementacjach. W szczególności rozwój komputerów osobistych i ciągle rosnąca moc obliczeniowa były stymulantą do opracowania algorytmu dokładnego. Pomimo wielokrotnie większej złożoności obliczeniowej zastosowanego algorytmu względem algorytmów heurystycznych dzisiejsze komputery bez problemów wyszukują wszystkie minimalne zbiory atrybutów w rozsądnym czasie. Na przykład dla tablicy Kaz.pla komputer z procesorem Intel Core2Duo E8400 3Ghz wyszukuje wszystkie! rozwiązania (ich liczba 32
34 wynosi 5574) w czasie około 1 godziny. Nowoczesna synteza logiczna wymaga stosowania wszystkich reduktów, nie tylko minimalnych. Ciekawym zastosowaniem programu PROTON mogą być eksperymenty mające na celu zbadanie wpływu nieznanych wartości atrybutów ( nieokreśloności ) na jakość generacji reguł decyzyjnych. Zdaniem wielu autorów [10] jest to ważny problem, ale niestety w porównaniu do metod syntezy logicznej - wiele metod odkrywania wiedzy, w szczególności metod indukcji reguł decyzyjnych, nie jest przystosowanych do uwzględniania niezdefiniowanych wartości. 33
35 Dodatek Wydruk 15 Dane N-HOUSE w formacie ESPRESSO (house.pla).type fr.i 16.o 1.p
36 e 35
37 Bibliografia [1] Ganczarski J., Owczarek M.: C++ Wykorzystaj potęgę aplikacji graficznych. Wydawnictwo HELION, [2] Gatnar E.: Symboliczne metody klasyfikacji danych. Wydawnictwo Naukowe PWN, Warszawa, [3] Grzymala-Busse J. W.,Ming Hu.: A Comparison of Several Approaches to Missing Attribute Values in Data Mining.., [4] Grzymala-Busse, J.W., Sikora D.J.: LERS - A system for learning from examples based on rough sets. Raport TR-88-5, [5] Łuba T.: Synteza układów logicznych. Oficyna Wydawnicza Politechniki Warszawskiej, Warszawa, [6] Łuba T., Lasocki R.: On Unknown Attribute Values in Functional Dependencies. Proc. of The Third International Workshop on Rough Sets and Soft Computing, pp , San Jose, [7] Majczak A. C++ przykłady praktyczne. Wydawnictwo MIKOM, Warszawa, [8] Mrózek A., Płonka L.: Analiza danych metodą zbiorów przybliżonych Akademicka Oficyna Wydawnicza PLJ, Warszawa, [9] Nowak A.: Zbiory przyblizone w obszarze systemów ekspertowych [10] Nowicki R. K.: Rozmyte systemy decyzyjne w zadaniach z ograniczoną wiedzą, Akademicka Oficyna Wydawnicza EXIT, Warszawa, [11] Pawlak Z.: Rough Sets International Journal of Information and Computer Sciences, vol. 11, pp , [12] Pawlak Z.: Zbiory przybliżone nowa matematyczna metoda analizy danych [13] Rauszer C., Skowron A.: The Discernibility Matrices and Functions in Information Systems. In Intelligent Decision Support - Handbook of Application and Advanced of the Rough Sets Theory. Kluwer Academic Publisher, Dordrech,
Maciej Piotr Jankowski
Reduced Adder Graph Implementacja algorytmu RAG Maciej Piotr Jankowski 2005.12.22 Maciej Piotr Jankowski 1 Plan prezentacji 1. Wstęp 2. Implementacja 3. Usprawnienia optymalizacyjne 3.1. Tablica ekspansji
SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa
Autorzy scenariusza: SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH
PRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: SYSTEMY INFORMATYCZNE WSPOMAGAJĄCE DIAGNOSTYKĘ MEDYCZNĄ Kierunek: Inżynieria Biomedyczna Rodzaj przedmiotu: obowiązkowy moduł specjalności informatyka medyczna Rodzaj zajęć: wykład, projekt
Sztuczna inteligencja
POLITECHNIKA KRAKOWSKA WIEiK KATEDRA AUTOMATYKI I TECHNIK INFORMACYJNYCH Sztuczna inteligencja www.pk.edu.pl/~zk/si_hp.html Wykładowca: dr inż. Zbigniew Kokosiński zk@pk.edu.pl Wykład 10: Zbiory przybliżone
Analiza korespondencji
Analiza korespondencji Kiedy stosujemy? 2 W wielu badaniach mamy do czynienia ze zmiennymi jakościowymi (nominalne i porządkowe) typu np.: płeć, wykształcenie, status palenia. Punktem wyjścia do analizy
Wstęp do Techniki Cyfrowej... Teoria automatów
Wstęp do Techniki Cyfrowej... Teoria automatów Alfabety i litery Układ logiczny opisywany jest przez wektory, których wartości reprezentowane są przez ciągi kombinacji zerojedynkowych. Zwiększenie stopnia
SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD
Dr inż. Jacek WARCHULSKI Dr inż. Marcin WARCHULSKI Mgr inż. Witold BUŻANTOWICZ Wojskowa Akademia Techniczna SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD Streszczenie: W referacie przedstawiono możliwości
Odkrywanie wiedzy z danych przy użyciu zbiorów przybliżonych. Wykład 3
Odkrywanie wiedzy z danych przy użyciu zbiorów przybliżonych Wykład 3 W internecie Teoria zbiorów przybliżonych zaproponowany w 1982 r. przez prof. Zdzisława Pawlaka formalizm matematyczny, stanowiący
Metoda Karnaugh. B A BC A
Metoda Karnaugh. Powszechnie uważa się, iż układ o mniejszej liczbie elementów jest tańszy i bardziej niezawodny, a spośród dwóch układów o takiej samej liczbie elementów logicznych lepszy jest ten, który
Definicje. Algorytm to:
Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi
WSPOMAGANIE DECYZJI - MIŁOSZ KADZIŃSKI LAB IV ZBIORY PRZYBLIŻONE I ODKRYWANIE REGUŁ DECYZYJNYCH
WSOMAGANIE DECYZJI - MIŁOSZ KADZIŃSKI LAB IV ZBIORY RZYBLIŻONE I ODKRYWANIE REGUŁ DECYZYJNYCH 1. Definicje Zbiory, które nie są zbiorami definiowalnymi, są nazywane zbiorami przybliżonymi. Zbiory definiowalne
Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32
Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:
Minimalizacja funkcji boolowskich c.d.
Minimalizacja funkcji boolowskich c.d. Metoda tablic Karnaugha Metoda Quine a McCluskey a Absolutnie nieprzydatna do obliczeń komputerowych Pierwsze skuteczne narzędzie do minimalizacji wieloargumentowych
SCENARIUSZ LEKCJI. Dzielenie wielomianów z wykorzystaniem schematu Hornera
Autorzy scenariusza: SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH
Wymagania edukacyjne z informatyki dla klasy szóstej szkoły podstawowej.
Wymagania edukacyjne z informatyki dla klasy szóstej szkoły podstawowej. Dział Zagadnienia Wymagania podstawowe Wymagania ponadpodstawowe Arkusz kalkulacyjny (Microsoft Excel i OpenOffice) Uruchomienie
Algorytm. a programowanie -
Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik
T. Łuba, B. Zbierzchowski Układy logiczne Podręcznik WSISiZ, Warszawa 2002.
Książkę: T. Łuba, B. Zbierzchowski Układy logiczne Podręcznik WSISiZ, Warszawa 2002. Można zakupić po najniższej cenie w księgarni Wyższej Szkoły Informatyki Stosowanej i Zarządzania ul. Newelska 6 pok.
Instrukcja obsługi dla studenta
Instrukcja obsługi dla studenta Akademicki System Archiwizacji Prac (ASAP) to nowoczesne, elektroniczne archiwum prac dyplomowych zintegrowane z systemem antyplagiatowym Plagiat.pl. Student korzystający
B jest globalnym pokryciem zbioru {d} wtedy i tylko wtedy, gdy {d} zależy od B i nie istnieje B T takie, że {d} zależy od B ;
Algorytm LEM1 Oznaczenia i definicje: U - uniwersum, tj. zbiór obiektów; A - zbiór atrybutów warunkowych; d - atrybut decyzyjny; IND(B) = {(x, y) U U : a B a(x) = a(y)} - relacja nierozróżnialności, tj.
5.4. Tworzymy formularze
5.4. Tworzymy formularze Zastosowanie formularzy Formularz to obiekt bazy danych, który daje możliwość tworzenia i modyfikacji danych w tabeli lub kwerendzie. Jego wielką zaletą jest umiejętność zautomatyzowania
Nazwa wariantu modułu (opcjonalnie): Laboratorium programowania w języku C++
Uniwersytet Śląski w Katowicach str. 1 Kierunek i poziom studiów: Chemia, poziom pierwszy Sylabus modułu: Laboratorium programowania (0310-CH-S1-019) Nazwa wariantu modułu (opcjonalnie): Laboratorium programowania
Programowanie celowe #1
Programowanie celowe #1 Problem programowania celowego (PC) jest przykładem problemu programowania matematycznego nieliniowego, który można skutecznie zlinearyzować, tzn. zapisać (i rozwiązać) jako problem
Instrukcja obsługi dla studenta
Instrukcja obsługi dla studenta Akademicki System Archiwizacji Prac (ASAP) to nowoczesne, elektroniczne archiwum prac dyplomowych zintegrowane z systemem antyplagiatowym Plagiat.pl. Student korzystający
System wspomagania harmonogramowania przedsięwzięć budowlanych
System wspomagania harmonogramowania przedsięwzięć budowlanych Wojciech Bożejko 1 Zdzisław Hejducki 2 Mariusz Uchroński 1 Mieczysław Wodecki 3 1 Instytut Informatyki, Automatyki i Robotyki Politechnika
XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery
http://xqtav.sourceforge.net XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery dr hab. Jerzy Tyszkiewicz dr Andrzej Kierzek mgr Jacek Sroka Grzegorz Kaczor praca mgr pod
Instrukcja obsługi dla studenta
Instrukcja obsługi dla studenta Akademicki System Archiwizacji Prac (ASAP) to nowoczesne, elektroniczne archiwum prac dyplomowych zintegrowane z systemem antyplagiatowym Plagiat.pl. Student korzystający
Tab. 1 Tab. 2 t t+1 Q 2 Q 1 Q 0 Q 2 Q 1 Q 0
Synteza liczników synchronicznych Załóżmy, że chcemy zaprojektować licznik synchroniczny o następującej sekwencji: 0 1 2 3 6 5 4 [0 sekwencja jest powtarzana] Ponieważ licznik ma 7 stanów, więc do ich
P R Z E T W A R Z A N I E S Y G N A Ł Ó W B I O M E T R Y C Z N Y C H
W O J S K O W A A K A D E M I A T E C H N I C Z N A W Y D Z I A Ł E L E K T R O N I K I Drukować dwustronnie P R Z E T W A R Z A N I E S Y G N A Ł Ó W B I O M E T R Y C Z N Y C H Grupa... Data wykonania
Instrukcja użytkownika STUDENTA AKADEMICKIEGO SYSTEMU ARCHIWIZACJI PRAC
Instrukcja użytkownika STUDENTA AKADEMICKIEGO SYSTEMU ARCHIWIZACJI PRAC Strona 1 z 14 Akademicki System Archiwizacji Prac (ASAP) to nowoczesne, elektroniczne archiwum prac dyplomowych zintegrowane z systemem
Instrukcja obsługi dla studenta
Instrukcja obsługi dla studenta Akademicki System Archiwizacji Prac (ASAP) to nowoczesne, elektroniczne archiwum prac dyplomowych zintegrowane z systemem antyplagiatowym Plagiat.pl. Student korzystający
PRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Mechatronika Rodzaj przedmiotu: obowiązkowy Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE C1. Zapoznanie studentów z inteligentnymi
Forex PitCalculator INSTRUKCJA UŻYTKOWNIKA
Forex PitCalculator Forex PitCalculator jest aplikacją służącą do obliczania podatku należnego z tytułu osiągniętych na rynku walutowym zysków. Jest to pierwsze tego typu oprogramowanie na polskim rynku.
SCENARIUSZ LEKCJI. TEMAT LEKCJI: Projektowanie rozwiązania prostych problemów w języku C++ obliczanie pola trójkąta
SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH Autorzy scenariusza:
b) bc a Rys. 1. Tablice Karnaugha dla funkcji o: a) n=2, b) n=3 i c) n=4 zmiennych.
DODATEK: FUNKCJE LOGICZNE CD. 1 FUNKCJE LOGICZNE 1. Tablice Karnaugha Do reprezentacji funkcji boolowskiej n-zmiennych można wykorzystać tablicę prawdy o 2 n wierszach lub np. tablice Karnaugha. Tablica
PRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy w ramach treści kierunkowych, moduł kierunkowy oólny Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK
I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA
I. KARTA PRZEDMIOTU 1. Nazwa przedmiotu: PODSTAWY PROGRAMOWANIA. Kod przedmiotu: Ovi1 3. Jednostka prowadząca: Wydział Mechaniczno-Elektryczny 4. Kierunek: Mechatronika 5. Specjalność: Eksploatacja Systemów
SZTUCZNA INTELIGENCJA
SZTUCZNA INTELIGENCJA SYSTEMY ROZMYTE Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i Inżynierii Biomedycznej Laboratorium
Układy VLSI Bramki 1.0
Spis treści: 1. Wstęp... 2 2. Opis edytora schematów... 2 2.1 Dodawanie bramek do schematu:... 3 2.2 Łączenie bramek... 3 2.3 Usuwanie bramek... 3 2.4 Usuwanie pojedynczych połączeń... 4 2.5 Dodawanie
Funkcje wyszukiwania i adresu PODAJ.POZYCJĘ
Funkcje wyszukiwania i adresu PODAJ.POZYCJĘ Mariusz Jankowski autor strony internetowej poświęconej Excelowi i programowaniu w VBA; Bogdan Gilarski właściciel firmy szkoleniowej Perfect And Practical;
ZAGADNIENIE TRANSPORTOWE
ZAGADNIENIE TRANSPORTOWE ZT jest specyficznym problemem z zakresu zastosowań programowania liniowego. ZT wykorzystuje się najczęściej do: optymalnego planowania transportu towarów, przy minimalizacji kosztów,
6. Zagadnienie parkowania ciężarówki.
6. Zagadnienie parkowania ciężarówki. Sterowniki rozmyte Aby móc sterować przebiegiem pewnych procesów lub też pracą urządzeń niezbędne jest stworzenie odpowiedniego modelu, na podstawie którego można
Instrukcja Użytkownika (Studenta) Akademickiego Systemu Archiwizacji Prac
Instrukcja Użytkownika (Studenta) Akademickiego Systemu Archiwizacji Prac Akademicki System Archiwizacji Prac (ASAP) to nowoczesne, elektroniczne archiwum prac dyplomowych zintegrowane z systemem antyplagiatowym
2.2.P.07: Komputerowe narzędzia inżynierii powierzchni
2nd Workshop on Foresight of surface properties formation leading technologies of engineering materials and biomaterials in Białka Tatrzańska, Poland 29th-30th November 2009 2 Panel nt. Produkt oraz materiał
Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI
Arytmetyka komputera Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka Opracował: Kamil Kowalski klasa III TI Spis treści 1. Jednostki informacyjne 2. Systemy liczbowe 2.1. System
Instrukcja obsługi dla studenta
Instrukcja obsługi dla studenta Akademicki System Archiwizacji Prac (ASAP) to nowoczesne, elektroniczne archiwum prac dyplomowych zintegrowane z systemem antyplagiatowym Plagiat.pl. Student korzystający
ECDL/ICDL Zaawansowane arkusze kalkulacyjne Moduł A2 Sylabus, wersja 2.0
ECDL/ICDL Zaawansowane arkusze kalkulacyjne Moduł A2 Sylabus, wersja 2.0 Przeznaczenie sylabusa Dokument ten zawiera szczegółowy sylabus dla modułu ECDL/ICDL Zaawansowane arkusze kalkulacyjne. Sylabus
Podstawy Automatyki. Wykład 12 - synteza i minimalizacja funkcji logicznych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki
Wykład 12 - synteza i minimalizacja funkcji logicznych Instytut Automatyki i Robotyki Warszawa, 2017 Synteza funkcji logicznych Terminy - na bazie funkcji trójargumenowej y = (x 1, x 2, x 3 ) (1) Elementarny
Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny
Algorytm to przepis; zestawienie kolejnych kroków prowadzących do wykonania określonego zadania; to uporządkowany sposób postępowania przy rozwiązywaniu zadania, problemu, z uwzględnieniem opisu danych
REFERAT PRACY DYPLOMOWEJ Temat pracy: SUDOKU - Algorytmy tworzenia i rozwiązywania
REFERAT PRACY DYPLOMOWEJ Temat pracy: SUDOKU - Algorytmy tworzenia i rozwiązywania Autor: Anna Nowak Promotor: dr inż. Jan Kowalski Kategorie: gra logiczna Słowa kluczowe: Sudoku, generowanie plansz, algorytmy,
Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015
Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015 1 Metody numeryczne Dział matematyki Metody rozwiązywania problemów matematycznych za pomocą operacji na liczbach. Otrzymywane
TEMAT : TWORZENIE BAZY DANYCH PRZY POMOCY PROGRAMU EXCEL
Konspekt lekcji TEMAT : TWORZENIE BAZY DANYCH PRZY POMOCY PROGRAMU EXCEL Czas trwania : 3 x 45 min. CELE NAUCZANIA : 1. Poziom podstawowy (ocena dostateczna) o uczeń potrafi założyć bazę danych i wprowadzić
SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska
SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska DRZEWO REGRESYJNE Sposób konstrukcji i przycinania
Teraz bajty. Informatyka dla szkoły podstawowej. Klasa VI
1 Teraz bajty. Informatyka dla szkoły podstawowej. Klasa VI 1. Obliczenia w arkuszu kalkulacyjnym Rozwiązywanie problemów z wykorzystaniem aplikacji komputerowych obliczenia w arkuszu kalkulacyjnym wykonuje
Tom 6 Opis oprogramowania
Część 9 Narzędzie do wyliczania wskaźników statystycznych Diagnostyka Stanu Nawierzchni - DSN Generalna Dyrekcja Dróg Krajowych i Autostrad Warszawa, 31 maja 2012 Historia dokumentu Nazwa dokumentu Nazwa
7. Zagadnienie parkowania ciężarówki.
7. Zagadnienie parkowania ciężarówki. Sterowniki rozmyte Aby móc sterować przebiegiem pewnych procesów lub też pracą urządzeń niezbędne jest stworzenie odpowiedniego modelu, na podstawie którego można
Klasyczne zagadnienie przydziału
Klasyczne zagadnienie przydziału Można wyodrębnić kilka grup problemów, w których zadaniem jest odpowiednie rozmieszczenie posiadanych zasobów. Najprostszy problem tej grupy nazywamy klasycznym zagadnieniem
Laboratorium nr 1. i 2.
Laboratorium nr 1. i 2. Celem laboratorium jest zapoznanie się ze zintegrowanym środowiskiem programistycznym, na przykładzie podstawowych aplikacji z obsługą standardowego wejścia wyjścia, podstawowych
Diary przydatne polecenie. Korzystanie z funkcji wbudowanych i systemu pomocy on-line. Najczęstsze typy plików. diary nazwa_pliku
Diary przydatne polecenie diary nazwa_pliku Polecenie to powoduje, że od tego momentu sesja MATLAB-a, tj. polecenia i teksty wysyłane na ekran (nie dotyczy grafiki) będą zapisywane w pliku o podanej nazwie.
0 + 0 = 0, = 1, = 1, = 0.
5 Kody liniowe Jak już wiemy, w celu przesłania zakodowanego tekstu dzielimy go na bloki i do każdego z bloków dodajemy tak zwane bity sprawdzające. Bity te są w ścisłej zależności z bitami informacyjnymi,
Opis efektów kształcenia dla programu kształcenia (kierunkowe efekty kształcenia) WIEDZA. rozumie cywilizacyjne znaczenie matematyki i jej zastosowań
TABELA ODNIESIEŃ EFEKTÓW KSZTAŁCENIA OKREŚLONYCH DLA PROGRAMU KSZTAŁCENIA DO EFEKTÓW KSZTAŁCENIA OKREŚLONYCH DLA OBSZARU KSZTAŁCENIA I PROFILU STUDIÓW PROGRAM KSZTAŁCENIA: POZIOM KSZTAŁCENIA: PROFIL KSZTAŁCENIA:
Rachunek podziałów i elementy teorii grafów będą stosowane w procedurach redukcji argumentów i dekompozycji funkcji boolowskich.
Pojęcia podstawowe c.d. Rachunek podziałów Elementy teorii grafów Klasy zgodności Rachunek podziałów i elementy teorii grafów będą stosowane w procedurach redukcji argumentów i dekompozycji funkcji boolowskich.
PRACA DYPLOMOWA. Andrzej Kisiel DISCOVERING DECISION RULES OF BINARY DATA TABLES USING COMPLEMENT OF BOOLEAN FUNCTIONS
WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA pod auspicjami Polskiej Akademii Nauk WYDZIAŁ INFORMATYKI STUDIA I STOPNIA (INŻYNIERSKIE) Kierunek INFORMATYKA PRACA DYPLOMOWA Andrzej Kisiel UOGÓLNIANIE
ĆWICZENIE 4 ZASTOSOWANIE METOD I NARZĘDZI LOGIKI ROZMYTEJ DO KLASYFIKACJI DANYCH I APROKSYMACJI ODWZOROWAŃ STATYCZNYCH
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki ĆWICZENIE 4 ZASTOSOWANIE METOD I NARZĘDZI LOGIKI ROZMYTEJ DO KLASYFIKACJI DANYCH I APROKSYMACJI ODWZOROWAŃ STATYCZNYCH Pracownia
Inteligencja obliczeniowa
Ćwiczenie nr 1 Zbiory rozmyte logika rozmyta Tworzenie: termów zmiennej lingwistycznej o różnych kształtach, modyfikatorów, zmiennych o wielu termach; operacje przecięcia, połączenia i dopełnienia 1. Wprowadzenie
Projekt przejściowy 2015/2016 BARTOSZ JABŁOŃSKI, TOMASZ JANICZEK
Projekt przejściowy 2015/2016 BARTOSZ JABŁOŃSKI, TOMASZ JANICZEK Kto? dr inż. Tomasz Janiczek tomasz.janiczek@pwr.edu.pl s. P1.2, C-16 dr inż. Bartosz Jabłoński bartosz.jablonski@pwr.edu.pl s. P0.2, C-16
x x
DODTEK II - Inne sposoby realizacji funkcji logicznych W kolejnych podpunktach zaprezentowano sposoby realizacji przykładowej funkcji (tej samej co w instrukcji do ćwiczenia "Synteza układów kombinacyjnych")
[1] [2] [3] [4] [5] [6] Wiedza
3) Efekty dla studiów drugiego stopnia - profil ogólnoakademicki na kierunku Informatyka w języku angielskim (Computer Science) na specjalności Sztuczna inteligencja (Artificial Intelligence) na Wydziale
Spis treści 377 379 WSTĘP... 9
Spis treści 377 379 Spis treści WSTĘP... 9 ZADANIE OPTYMALIZACJI... 9 PRZYKŁAD 1... 9 Założenia... 10 Model matematyczny zadania... 10 PRZYKŁAD 2... 10 PRZYKŁAD 3... 11 OPTYMALIZACJA A POLIOPTYMALIZACJA...
Algorytm. Krótka historia algorytmów
Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne
Aby przejść do edycji w tym module należy wybrać zakładkę "Dla Pracowników" -> "Sprawdziany".
Sprawdziany Sprawdziany Moduł "Sprawdziany" oferuje osobom prowadzącym zajęcia wygodny sposób informowania studentów o wynikach/ocenach jakie uzyskali (np. z kartkówek, różnego rodzaju zadań, ogólne jakie
PRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy w ramach treści kierunkowych, moduł kierunkowy ogólny Rodzaj zajęć: wykład, ćwiczenia I KARTA
dr inż. Małgorzata Langer Architektura komputerów
Instrukcja współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie Innowacyjna dydaktyka bez ograniczeń zintegrowany rozwój Politechniki Łódzkiej zarządzanie Uczelnią,
Algorytmika i pseudoprogramowanie
Przedmiotowy system oceniania Zawód: Technik Informatyk Nr programu: 312[ 01] /T,SP/MENiS/ 2004.06.14 Przedmiot: Programowanie Strukturalne i Obiektowe Klasa: druga Dział Dopuszczający Dostateczny Dobry
Logistyka I stopień Ogólnoakademicki. Niestacjonarne. Zarządzanie logistyczne Katedra Inżynierii Produkcji Dr Sławomir Luściński
KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Nazwa modułu w języku angielskim Obowiązuje od roku akademickiego 2012/2013 Z-LOGN1-1071 Techniki komputerowe we wspomaganiu decyzji logistycznych
Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych)
Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych) Funkcja uwikłana (równanie nieliniowe) jest to funkcja, która nie jest przedstawiona jawnym przepisem, wzorem wyrażającym zależność wartości
Wykład z Technologii Informacyjnych. Piotr Mika
Wykład z Technologii Informacyjnych Piotr Mika Uniwersalna forma graficznego zapisu algorytmów Schemat blokowy zbiór bloków, powiązanych ze sobą liniami zorientowanymi. Jest to rodzaj grafu, którego węzły
CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM
CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM 1.1. PODSTAWOWE INFORMACJE PC to skrót od nazwy Komputer Osobisty (z ang. personal computer). Elementy komputera można podzielić na dwie ogólne kategorie: sprzęt - fizyczne
1 Wprowadzenie do algorytmiki
Teoretyczne podstawy informatyki - ćwiczenia: Prowadzący: dr inż. Dariusz W Brzeziński 1 Wprowadzenie do algorytmiki 1.1 Algorytm 1. Skończony, uporządkowany ciąg precyzyjnie i zrozumiale opisanych czynności
Minimalizacja form boolowskich UC1, 2009
Minimalizacja form boolowskich UC, 29 mplikanty funkcji boolowskiej UC, 29 2 mplikanty funkcji boolowskiej UC, 29 3 Metody minimalizacji UC, 29 4 Siatki Karnaugh UC, 29 5 Siatki Karnaugh UC, 29 Stosowanie
6. Algorytmy ochrony przed zagłodzeniem dla systemów Linux i Windows NT.
WYDZIAŁ: GEOLOGII, GEOFIZYKI I OCHRONY ŚRODOWISKA KIERUNEK STUDIÓW: INFORMATYKA STOSOWANA RODZAJ STUDIÓW: STACJONARNE I STOPNIA ROK AKADEMICKI 2014/2015 WYKAZ PRZEDMIOTÓW EGZAMINACYJNYCH: I. Systemy operacyjne
Wykład z modelowania matematycznego. Zagadnienie transportowe.
Wykład z modelowania matematycznego. Zagadnienie transportowe. 1 Zagadnienie transportowe zostało sformułowane w 1941 przez F.L.Hitchcocka. Metoda rozwiązania tego zagadnienia zwana algorytmem transportowymópracowana
1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji.
Temat: Technologia informacyjna a informatyka 1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji. Technologia informacyjna (ang.) Information Technology, IT jedna
Hierarchiczna analiza skupień
Hierarchiczna analiza skupień Cel analizy Analiza skupień ma na celu wykrycie w zbiorze obserwacji klastrów, czyli rozłącznych podzbiorów obserwacji, wewnątrz których obserwacje są sobie w jakimś określonym
Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS
Wyższa Szkoła Ekologii i Zarządzania Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS cz.5 Slajd 1/25 Slajd 2/25 Warianty W wielu wypadkach, przeprowadzając różne rozważania, chcemy zastanowić się
Makropolecenia w Excelu
Makropolecenia w Excelu Trochę teorii Makropolecenie w skrócie nazywane makro ma za zadanie automatyczne wykonanie powtarzających się po sobie określonych czynności. Na przykładzie arkusza kalkulacyjnego
Zawartość. Wstęp. Moduł Rozbiórki. Wstęp Instalacja Konfiguracja Uruchomienie i praca z raportem... 6
Zawartość Wstęp... 1 Instalacja... 2 Konfiguracja... 2 Uruchomienie i praca z raportem... 6 Wstęp Rozwiązanie przygotowane z myślą o użytkownikach którzy potrzebują narzędzie do podziału, rozkładu, rozbiórki
Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS
Wyższa Szkoła Ekologii i Zarządzania Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS cz.5 Slajd 1/25 Slajd 2/25 W wielu wypadkach, przeprowadzając różne rozważania, chcemy zastanowić się A co by
Projekt przejściowy 2016/2017 BARTOSZ JABŁOŃSKI
Projekt przejściowy 2016/2017 BARTOSZ JABŁOŃSKI Kto, co, jak i kiedy Kto? dr inż. Bartosz Jabłoński bartosz.jablonski@pwr.edu.pl s. P0.2, C-16 http://jablonski.wroclaw.pl O co chodzi? Celem przedmiotu
Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle
Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle Paweł Szołtysek 12 czerwca 2008 Streszczenie Planowanie produkcji jest jednym z problemów optymalizacji dyskretnej,
Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski
Systemy ekspertowe i ich zastosowania Katarzyna Karp Marek Grabowski Plan prezentacji Wstęp Własności systemów ekspertowych Rodzaje baz wiedzy Metody reprezentacji wiedzy Metody wnioskowania Języki do
Moduł mapowania danych
Moduł mapowania danych Styczeń 2011 Wszelkie prawa zastrzeżone. Dokument może być reprodukowany lub przechowywany bez ograniczeń tylko w całości. W przeciwnym przypadku, żadna część niniejszego dokumentu,
Język programowania C C Programming Language. ogólnoakademicki
Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Nazwa modułu w języku angielskim Obowiązuje od roku akademickiego 2013/2014
Lingwistyczny system definicyjny wykorzystujący korpusy tekstów oraz zasoby internetowe.
Lingwistyczny system definicyjny wykorzystujący korpusy tekstów oraz zasoby internetowe. Autor: Mariusz Sasko Promotor: dr Adrian Horzyk Plan prezentacji 1. Wstęp 2. Cele pracy 3. Rozwiązanie 3.1. Robot
Instrukcja obsługi dla studenta
Instrukcja obsługi dla studenta Akademicki System Archiwizacji Prac (ASAP) to nowoczesne, elektroniczne archiwum prac dyplomowych zintegrowane z systemem antyplagiatowym Plagiat.pl. Student korzystający
LOGIKA I TEORIA ZBIORÓW
LOGIKA I TEORIA ZBIORÓW Logika Logika jest nauką zajmującą się zdaniami Z punktu widzenia logiki istotne jest, czy dane zdanie jest prawdziwe, czy nie Nie jest natomiast istotne o czym to zdanie mówi Definicja
Spotkania z wiedzą webinarium
Spotkania z wiedzą webinarium Korespondencja Seryjna Co to jest korespondencja seryjna Korespondencja seryjna - technika tworzenia w edytorze tekstów jednobrzmiących dokumentów, różniących się jedynie
Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny
Klasa 2 INFORMATYKA dla szkół ponadgimnazjalnych zakres rozszerzony Założone osiągnięcia ucznia wymagania edukacyjne na poszczególne oceny Algorytmy 2 3 4 5 6 Wie, co to jest algorytm. Wymienia przykłady
Kostki OLAP i język MDX
Kostki OLAP i język MDX 24 kwietnia 2015 r. Opis pliku z zadaniami Wszystkie zadania na zajęciach będą przekazywane w postaci plików PDF sformatowanych jak ten. Będą się na nie składały różne rodzaje zadań,
Reprezentacja rozmyta - zastosowania logiki rozmytej
17.06.2009 Wrocław Bartosz Chabasinski 148384 Reprezentacja rozmyta - zastosowania logiki rozmytej 1. Wstęp Celem wprowadzenia pojęcia teorii zbiorów rozmytych była potrzeba matematycznego opisania tych