Reguły asocjacyjne na giełdzie

Wielkość: px
Rozpocząć pokaz od strony:

Download "Reguły asocjacyjne na giełdzie"

Transkrypt

1 Hurtownie danych i data mining - Grupa dra Piotra Lipińskiego II UWr 2009/2010 Adam Grycner, Mateusz Łyczek, Marta Ziobro Reguły asocjacyjne na giełdzie

2 1 Problem 1.1 Opis problemu - intuicyjnie Będziemy szukali reguł asocjacyjnych postaci: Przykładowa reguła: Jeśli ceny akcji firmy A wzrosły jednego dnia, akcje firmy B staniały drugiego, zatem ceny akcji firmy C i D wzrosną dnia piątego. Znając confidence takiego wzorca będziemy wiedzieć z jakim prawdopodobieństwem możemy się spodziewać wzrostu cen akcji firmy C i D, gdy akcje firmy A i B spełnią dany scenariusz. 2 FITI W celu znalezienia zbiorów częstych, a następnie reguł asocjacyjnych, użyliśmy algorytm F IT I (First Intra Then Inter). 2.1 Podstawowe pojęcia Baza, z której korzystaliśmy ma następującą strukturę. Pojedyncza transakcja ma postać (d, A 0, A 1, A 2,...), gdzie d - atrybut wymiarowości (w naszym przypadku nr dnia). A 0, A 1,... są przedmiotami (w naszym przypadku są to pary - (nazwa spółki, wzrost/spadek)). Zbiorami wśród intratransakcji są zbiory przedmiotów znalezione w transakcjach. Dokładnie tak samo, jak w klasycznym problemie szukania reguł asocjacyjnych. Oknem czasowym jest przedział czasowy w jakim będziemy rozpatrywać zależności między przedmiotami. Jeżeli okno czasowe jest równe np. 4, to będą interesować nas związki między spółkami nie różniącymi się więcej niż 4 dni. Zbiorami wśród intertransakcji są ciągi o długości rozmiaru okna czasowego, które na każdej pozycji zawierają jakiś zbiór wśórd intratransakcji. Przykład W naszym przypadku zbiorem wśród intratransakcji może być zbiór {(IN DU, 1), (Y HOO, 1), (ASP, 1) (nazwa, wzrost/spadek). Zbiorem wśród intertransakcji może być ({(INDU, 1), (Y HOO, 1), (ASP, 1), {(GOG, 1), (P P, 1), (Y HOO, 1), {(INDU, 1), (P P, 1), (Y HOO, 1)) dla okna czasowego równego 3. 1

3 3 Opis algorytmu FITI W tym rozdziale postaramy się zaprezentować działanie algorytmu FITI. Algorytm ten służy do wyszukiwania częstych intertransakcji. FITI składa się z trzech części: 1. Część 1: Wyszukiwanie i zapisywanie do bazy częstych zbiorów wśród intratransakcji 2. Część 2: Przekształcanie bazy danych 3. Część 3: Wyszukiwanie częstych zbiorów wśród intertransakcji 3.1 Część 1: Wyszukiwanie i zapisywanie do bazy częstych zbiorów wśród intratransakcji W tej części algorytm FITI wyszukuje częste zbiory w intratransakcjach przy pomocy algorytmu APRIORI. Następnie znalezione częste zbiory są zapisywane w specjalnej strukturze o nazwie Frequent-Itemsets Linked Table (w dalszej części raportu będziemy ją nazywać w skrócie FILT). FILT składa się z dwóch części. Pierwszą jest tablica haszująca przechowująca częste zbiory (z intratransakcji ). Drugą są węzły połączone różnymi połączeniami. Przykładowa struktura została zaprezentowana na rysunku 1. Z następujących czterech rodzajów połączeń składa się FITI: 1. Lookup links Każdemu częstemu zbiorowi (z intratransakcji ) przyporządkowujemy unikalny nr ID. 2. Generator and Extension Links Generator links - połączenia między węzłem reprezentującym częsty k-zbiór, a dwoma (k-1)-zbiorami, z których ten k-zbiór powstał w algorytmie APRIORI Extension link - połączenie między częstym (k-1)-zbiorem, a częstym k-zbiorem, który został stworzony m.in. z tego częstego (k-1)-zbioru 3. Subset Links Połączenia między częstym k-zbiorem F, a częstymi (k-1)-zbiorami, które są podzbiorami zbiory F. 4. Descendant Links Połączenia między częstym k-zbiorem reprezentowanym przez ciąg F = {e 1, e 2,..., e k, a wszystkimi częstymi (k+1)-zbiorami reprezentowanymi przez ciągi F = {e 1, e 2,..., e k, x (gdzie x to dowolny element). 2

4 Rysunek 1: Struktura FILT 3.2 Część 2: Przekształcanie bazy danych W dalszej części raport będziemy korzystać z przykładowych danych widocznych na rysunku 2. Po stworzeniu struktury FILT opisanej w poprzednim podrozdziale algorytm FITI przekształca bazę danych w zbiór tabel o nazwie encoded Frequent-Itemset Tables (w dalszej części raportu nazwane jako tablice FIT). Algorytm FITI w tej części stworzy max k tablic FIT ({F 1, F 2,..., F maxk ), gdzie max k, to rozmiar największego, pod względem liczby elementów, zbioru częstego z intratransakcji. Zbiór ten znaleźliśmy w części 1 algorytmu FITI. Każda tablica FIT F k będzie się składać z wierszy postaci {d i, IDset i, gdzie d i, to wartość atrybutu wymiarowości (w naszym przypadku będzie to nr dnia). IDset i, to lista id częstych k-zbiorów (z intratransakcji ) znalezionych w transakcji (w naszym przypadku, 3

5 Rysunek 2: Baza danych z czterema transakcjami to np. lista id zbiorów częstych firm, które zyskały na wartości dnia d i ). Przykład takich tablic FIT można zobaczyć na rysunku 3. Rysunek 3: Tablice FIT Przykład Korzystam z bazy danych widocznej na rysunku 2. Nasz minsup wynosi 50%. Wyodrębnione zbiory częste są widoczne na rysunku 1. W takim przypadku max k wynosi 3 (rozmiar największego zbioru częstego - {a, b, c). Tworzymy trzy tablice FIT (widoczne na rysunku 3). Wypełniamy je identyfikatorami k-zbiorów częstych widocznych na rysunku 1 występujących w kolejnych transakcjach ( k = 1, 2, 3). Algorytm przekształcający bazę FILT w tablice FIT wygląda następująco: void Tranform() { while (!feof(t) ) { read next transaction T_i ; write d_i to all F_j ; Subset(T_i ; 1; 1; 0) 4

6 void Subset(T_i, index, k, and NodeID) { if (k == 1) { for each item e_j in T_i { search ITEMTABLE for ID of {e_j; if (found) { let nowid be ID found; write nowid to F_1 ; for each item e_m, m > j in T_i { search childs of nowid for an itemset I that contains e_m ; if (found) { let nextnode be the ID of I; Subset(T_i, m + 1, k + 1, nextnode); return; else { write NodeID to F_k ; for each item e_m, m >= index in T_i { search childs of NodeID for an itemset I that contains e_m ; if (found) { let nextnode be the ID of I; Subset(T_i, m + 1, k + 1, nextnode); return; 3.3 Część 3: Wyszukiwanie częstych zbiorów wśród intertransakcji Następnie, po przekształceniu bazy, algorytm przechodzi do trzeciej fazy - wyszukiwania częstych zbiorów wśród intertransakcji. Zbiór częsty dla intertransakcji będzie reprezentowany przez specjalny nr ID. Numer ten jest zdefiniowany w następujący sposób: Definicja nr ID zbioru z intertransakcji Niech F będzie zbiorem z intertransakcji. Niech A i = {e j 1 j u, e j (i) F, gdzie 0 i (w 1). (intuicyjnie - A i, to zbiór z intratransakcji z 5

7 i-tego dnia, czyli zbiór spółek, które w zbiorze F występują i-tego dnia). Nr ID zbioru F, to I = {I 0, I 1,..I w 1, gdzie I i to ID zbioru A i (możemy go znaleźć w strukturze FILT - patrz rysunek 1), jeśli A i > 0. W.p.p I i jest równe 0. Przykład Niech F = {a(0), a(1), b(1), c(3) będzie zbiorem z intertransakcji oraz niech rozmiar okna czasowego będzie równy cztery. W tym przypadku nr ID zbiory F jest równy I = {1, 5, 0, 3 zgodnie z danymi z tablicy FILT widocznej na rysunku 1. Algorytm w fazie trzeciej korzysta z własności, a której korzysta algorytm AP RIORI. Korzystając ze znalezionych k-zbiorów (k 2) częstych wśród intertransakcji, budujemy kandydatów na (k+1)-zbiory częste wśród intertransakcji. Oprócz tego korzystamy z własności, że zbiór wśród intertransakcji może być częsty tylko wtedy, gdy składa się ze zbiorów częstych wśród intratransakcji. Jeżeli kandydat na (k+1)-zbiór częsty posiada jakąś intratransakcję (w naszym przypadku np. w i-tym dniu znajdują się zbiór spółek, który nie jest częsty), która nie jest częsta, to wtedy ten kandydat zostaje usunięty. Algorytm w części trzeciej składa się z czterech pod-części. Oto jak wygląda szkielet algorytmu: Wygeneruj 2-zbiory częste wśród "intertransakcji", L_2; k = 3; while (L_(k-1)!= zbiór_pusty) { Wygeneruj kandydatów na k-zbiory częste wśród intertransakcji, C_k; Wylicz supporty kandydatów ze zbioru C_k; L_k = {c support(c) >= minsup oraz c należy do C_k; k += 1; W następnych czterech pod-podrozdziałach zostaną opisane cztery części tej fazy algorytmu. 1. Warstwa wejściowa 2. Generowanie 2-zbiorów częstych wśród intertransakcji 3. Generowanie k-zbiorów częstych wśród intertransakcji (k > 2) 4. Funkcja zliczająca (liczenie supportów kandydatów) Warstwa wejściowa Warstwa wejściowa zapewnia widok przesuwającego się okna czasowego po bazie transakcji oraz pomogą zoptymalizować wyszukiwanie kandydatów na zbiory częste wśród intratransakcji na dwa sposoby 6

8 1. Ogranicza dostęp do tablicy F IT Warstwa wejściowa chroni nas przed sytuacją przeglądania wszystkich tablic F IT. Jeżeli szukamy kandydatów na 2-zbiory częste, to wystarczy nam dostęp tylko do tablicy F Pobiera dane z bazy Warstwa wejściowa odpowiada za pobieranie kolejnego rekordu z bazy oraz usuwanie już niepotrzebnych nam rekordów. Jeżeli ustawiliśmy rozmiar okna czasowego na x, to warstwa wejściowa przy pobieraniu kolejnego rekordu z bazy będzie jednocześnie usuwać informację z pamięci RAM o rekordzie sprzed (x+1) dni Generowanie 2-zbiorów częstych wśród intertransakcji Przy budowie 2-zbiorów częstych wśród intertransakcji będziemy korzystać z 1-zbiorów częstych wśród intertransakcji, które są jednocześnie 1-zbiorami częstymi wśród intertransakcji oraz z 2-zbiorów częstych wśród intertransakcji. Ogólna idea jest następująca. Niech w jest równe rozmiarowi okna czasowego. Naszymi 2-zbiorami częstymi wśród intertransakcji będą zbiory o nr ID równym I = {I 0, 0, 0,.., gdzie I 0, to ID częstego 2- zbioru wśród intratransakcji, który został znaleziony w pierwszej części algorytmu (patrz rysunek 1 ). Naszymi 2-zbiorami częstymi wśród intertransakcji będą także zbiory o nr ID równym I = {I 0, 0,..., 0, I j, 0,..., 0 (1 j < w; I 0, I j - 1-zbiory częste wśród intratransakcji ), które mają odpowiedni support. Zbiory o ID I = {I 0, 0,... łatwo znaleźć (już zostały znalezione przez algorytm AP RIORI). Zbiory o ID I = {I 0, 0,..., 0, I j, 0,..., 0 będziemy szukać z wykorzystaniem tablicy haszującej. Aby znaleźć wszystkie 2-zbiorów częstych wśród intertransakcjińależy sprawdzić wszystkie trójki postaci (I 0.I j, j), gdzie I 0, I j są 1-zbiorami częstymi wśród intratransakcji, a j to pozycja w oknie czasowym zbioru I j. Wszystkich takich trójek jest w N 2 1 (N 1 - liczba wszystkich częstych 1-zbiorów wśród intratransakcji). Informację o tym, czy dana trójka generuje częsty 2-zbiór wśród intertransakcji będziemy zapisywać w tablicy haszującej z funkcją haszującą B = ((I 0 w + j) N 1 + I j ) mod rozmiart ablicy Generowanie k-zbiorów częstych wśród intertransakcji (k > 2) Proces tworzenia k-zbiorów częstych wśród intertransakcji jest podobny, jak proces tworzenia zbiorów częstych w algorytmie AP RIORI. Najpierw łączymy ze sobą (k-1)-zbiory w celu utworzenia k-zbiorów. Następnie sprawdzamy, czy wszystkie podzbiory tego kandydata są częste (jeżeli nie, to usuwamy danego kandydata). Na sam koniec sprawdzamy częstość występowania danego kandydata w zbiorze transakcji korzystając z tablic F IT. Algorytm F IT I korzysta z dwóch sposobów łączenia dwóch (k-1)-zbiorów: intratransactions join cross-transactions join 7

9 Intratransactions join Niech I = {I 0, I 1,..., I w 1 oraz J = {J 0, J 1,..., J w 1 będą zbiorami częstymi wśród intertransakcji. Intratransactions join na zbiorach I, J może być wykonana wtedy i tylko wtedy, gdy 1. Istnieje takie p, że I p, J p są k-zbiorami częstymi wśród intratransakcji, a K p powstałe w wyniku połączenia I p oraz J p jest k-zbiorem. 2. q;q p I q = J q Wynikiem połączenia I oraz J jest K = {K 0,..., K p,..., K w 1, gdzie K q = I q = J q dla p q Przykład Korzystamy z nr ID zbiorów wśród intratransakcji widocznych na rysunku 1. Niech I = {1, 0, 5, 0, 2 oraz J = {1, 0, 6, 0, 2. Oba warunki potrzebne do wykonania Intratransactions join są spełnione (p = 2). W wyniku połączenia zbiorów o ID 5 (a,b) i 6 (a,c) otrzymujemy zbiór o ID 8 (a,b,c). W ostateczności w wyniku połączenia I oraz J otrzymujemy K = {1, 0, 8, 0, 2. Cross-transactions join Niech I = {I 0, I 1,..., I w 1 oraz J = {J 0, J 1,..., J w 1 będą zbiorami częstymi wśród intertransakcji. Cross-transactions join na zbiorach I, J może być wykonana wtedy i tylko wtedy, gdy 1. Istnieje takie p, że I p 0 i J p = 0 2. Istnieje takie q, q p, że I q = 0 i J q 0 3. r;r p;r q I r = J r 4. p i q są ostatnimi niezerowymi pozycjami w I oraz J 5. Na każdej pozycji w I, J występuje albo zbiór pusty wśród intratransakcji, albo 1-zbiór częsty wśród intratransakcji W wyniku połączenia I, J otrzymujemy zbiór K = {K 0,...K p,...k q,...k w 1, gdzie K p = I p, K q = J q i K r = I r = J r dla każdego r, r p, r q. Przykład Korzystamy z nr ID zbiorów wśród intratransakcji widocznych na rysunku 1. Niech I = {1, 0, 2, 1, 0 oraz J = {1, 0, 2, 0, 4. Warunki 1. i 2. są spełnione (p = 3, q = 4). Warunek 3. też jest spełniony bo I 0 = J 0, I 1 = J 1, I 2 = J 2. Warunek 4. jest spełniony, bo I 4 jest równe 0, więc p jest ostatnią niezerową pozycją w I, a q jest ostatnią niezerową pozycją w J, bo jest równe 4 (jest ostatnią pozycją). 8

10 Warunek 4. jest spełniony, bo I i J składają się tylko z 1-zbiorów częstych ({a, {b, {e). W wyniku połączenia I i J otrzymujemy zbiór K = {1, 0, 2, 1, 4. Warunki 4. oraz 5. są potrzebne po to, aby nie otrzymywać kilkakrotnie tych samych kandydatów (w wyniku Cross-transactions join lub Intratransactions join). Przy generowaniu k-zbiorów częstych wśród intertransakcjialgorytm F IT I korzysta z pewnej własności operacji Intratransactions join i Cross-transactions join. Jeżeli dwa zbiory I i J mogą zostać połączone za pomocą Intratransactions join lub Cross-transactions join, to po ustawieniu na 0 ID zbiorów uczestniczących w łączeniu otrzymujemy zbiory równe. Przykład I = {1, 0, 5, 0, 1, J = {1, 0, 6, 0, 1 I i J mogą zostać połączone za pomocą Intratransactions join (p = 2). Jeżeli ustawimy ID zbiorów na pozycji p na zero to otrzymujemy dwa równe zbiory M = {1, 0, 0, 0, 1 I = {1, 0, 2, 1, 0, J = {1, 0, 2, 0, 4 I i J mogą zostać połączone za pomocą Cross-transactions join (p = 3, q = 4). Jeżeli ustawimy ID zbiorów na pozycjach p oraz q na zero to otrzymujemy dwa równe zbiory M = {1, 0, 2, 0, 0 Powyższą własność wykorzystamy w następujący sposób: wskaźniki na znalezione w poprzedniej iteracji (k-1)-zbiory częste wśród intertransakcji będziemy zapisywać w tablicy haszującej. (k-1)-zbiór częsty będzie haszowany kilka razy, raz dla każdej pozycji ustawionej na zero ( I = {0, I 1,..., I w 1, I = {I 0, 0,..., I w 1,..., I = {I 0, I 1,..., 0). W celu uniknięcia duplikatów, wersje (k-1)zbiorów, w których pozycja już wcześniej była ustawiona na 0 nie będą haszowane. Do haszowania będziemy używać funkcji h(i) = w 1 p=0 I p T I w p mod Hsize, gdzie T I - liczba wszystkich zbiorów częstych wśród intratransakcji, a Hsize - rozmiar tablicy haszującej. Po zahaszowaniu zbiorów częstych, próbujemy łączyć zbiory, które trafiły do jednego kubełka. Na sam koniec, po uzyskaniu wszystkich kandydatów, usuwamy kandydatów, w których istnieje podzbiór nie będący zbiorem częstym Funkcja zliczająca (liczenie supportów kandydatów) Zupełnie na sam koniec algorytm F IT I liczy supporty kandydatów na zbiory częste. Każdy kandydat na k-zbiór częsty wśród intertransakcji jest wstawiany do specjalnego drzewa 9

11 haszującego. Drzew ma głębokość w, na poziomie d mamy informację o pierwszych d pozycjach w zbiorze wśród intertransakcji. W liściach mamy zapisane wskaźniki na kandydatów na zbiory częste. Po wstawieniu wszystkich kandydatów, algorytm przegląda tablice F IT (patrz rys. 3) i na tej podstawie zwiększa licznik wystąpień kandydatów na zbiory częste. Na koniec po policzeniu częstości wystąpień, usuwani są kandydaci, których częstość wystąpień jest mniejsza niż minsupport. 4 Wyniki Obliczenia przeprowadziliśmy dla 25 spółek amerykańskiej giełdy z 7 sektorów rynku, na danych o ich notowaniach z 687 dni, czyli prawie dwóch lat. Szukaliśmy reguł, których support > 0.1 oraz z oknem czasowym rozmiaru Przykładowe reguły Poniżej znajdują się przykładowe reguły znalezione przez nasz program. Są to reguły postaci A(d 1 ) C(d 2 ), gdzie A i C to zbiory wydarzeń, czyli par (spolka, akcja), akcja określa, czy akcje danej spółki spadły, wzrosły, czy się nie zmieniły. Natomiast d 1 oraz d 2 mówią o jaki dzień w kolejności chodzi. Na przykład reguła: oznacza, że (HKN, ), (SYNM, )(0) (ADEP, )(1) jeśli jednego dnia akcje firmy HKN spadną, a także akcje firmy SYNM spadną, to następnego dnia akcje firmy ADEP również spadną. 1. (SYNM, )(0) (ADEP, )(1) - support = (HKN, )(0) (ADEP, )(1) - support = (ADEP, )(0) (WSO, )(1) - support = (ADEP, )(0) (ATW, )(1) - support = (STE, )(0) (CVTI, )(1) - support = (SYNM, )(0) (HKN, )(2) - support = (STE, )(0) (ADEP, )(4) - support = (PVA, )(0) (TESO, )(1) - support = (STE, )(0) (SYNM, )(4) - support = (HKN, ), (SYNM, )(0) (ADEP, )(1) - support =

12 Przyjrzyjmy się trochę podanym wyżej regułom. Reguły nr 1. i 2., mówią nam, że spółki SYNM i HKN wpływają na spółkę ADEP. Obie pierwsze należą do firm zajmujących się produkcją olejów i paliw, natomiast ADEP - produkcją różnorakich maszyn. Można więc przypuszczać, że właśnie dlatego, spadek akcji jednej ze spółek SYNM bądź HKN powoduje spadek akcji spółki ADEP dnia następnego. Dwie następne reguły pokazują nam, jak zachowanie akcji spółki ADEP wpływa na dwie inne: WSO i ATW. Pierwsza z nich należy do branży elektronicznej, zajmując się hurtową sprzedażą elektronicznych urządzeń, druga natomiast trudni się wydobywanie roby i znajdowaniem nowych jej złóż. Zatem spadek akcji firmy ADEP (produkującej maszyny) oznacza wzrost w następnym dniu akcji spółki WSO. Jest prawdopodobnie dlatego, że w danym momencie spadek zainteresowania maszynami powoduje wzrost zainteresowania urządzeniami elektronicznymi. Natomiast spadek akcji ADEP powoduje też spadek akcji ATW, bo ATW może wykorzystywać do wydobycia maszyny produkowane przez firmę ADEP. Opis spółek SYNM Basic Materials Oil & Gas Refining & Marketing ADEP Industrial Goods Diversified Machinery HKN Basic Materials Independent Oil & Gas WSO Services Electronics Wholesale ATW Basic Materials Oil & Gas Drilling & Exploration STE Healthcare Medical Appliances & Equipment CVTI Services Trucking PVA Basic Materials Independent Oil & Gas TESO Basic Materials Oil & Gas Equipment & Services Literatura [1] Anthony K.H. Tung, Hongjun L, Jiawei Han, and Ling Feng, Efficient Mining of Intertransaction Association Rules 11

Inżynieria biomedyczna

Inżynieria biomedyczna Inżynieria biomedyczna Projekt Przygotowanie i realizacja kierunku inżynieria biomedyczna studia międzywydziałowe współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego.

Bardziej szczegółowo

Wprowadzenie Sformułowanie problemu Typy reguł asocjacyjnych Proces odkrywania reguł asocjacyjnych. Data Mining Wykład 2

Wprowadzenie Sformułowanie problemu Typy reguł asocjacyjnych Proces odkrywania reguł asocjacyjnych. Data Mining Wykład 2 Data Mining Wykład 2 Odkrywanie asocjacji Plan wykładu Wprowadzenie Sformułowanie problemu Typy reguł asocjacyjnych Proces odkrywania reguł asocjacyjnych Geneza problemu Geneza problemu odkrywania reguł

Bardziej szczegółowo

INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH

INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH 1. Czym jest eksploracja danych Eksploracja danych definiowana jest jako zbiór technik odkrywania nietrywialnych zależności i schematów w dużych

Bardziej szczegółowo

Systemy Wspomagania Decyzji

Systemy Wspomagania Decyzji Reguły Asocjacyjne Szkoła Główna Służby Pożarniczej Zakład Informatyki i Łączności March 18, 2014 1 Wprowadzenie 2 Definicja 3 Szukanie reguł asocjacyjnych 4 Przykłady użycia 5 Podsumowanie Problem Lista

Bardziej szczegółowo

Metody eksploracji danych. Reguły asocjacyjne

Metody eksploracji danych. Reguły asocjacyjne Metody eksploracji danych Reguły asocjacyjne Analiza podobieństw i koszyka sklepowego Analiza podobieństw jest badaniem atrybutów lub cech, które są powiązane ze sobą. Metody analizy podobieństw, znane

Bardziej szczegółowo

Ewelina Dziura Krzysztof Maryański

Ewelina Dziura Krzysztof Maryański Ewelina Dziura Krzysztof Maryański 1. Wstęp - eksploracja danych 2. Proces Eksploracji danych 3. Reguły asocjacyjne budowa, zastosowanie, pozyskiwanie 4. Algorytm Apriori i jego modyfikacje 5. Przykład

Bardziej szczegółowo

Algorytmy odkrywania binarnych reguł asocjacyjnych

Algorytmy odkrywania binarnych reguł asocjacyjnych Algorytmy odkrywania binarnych reguł asocjacyjnych A-priori FP-Growth Odkrywanie asocjacji wykład 2 Celem naszego wykładu jest zapoznanie się z dwoma podstawowymi algorytmami odkrywania binarnych reguł

Bardziej szczegółowo

Przykładowe B+ drzewo

Przykładowe B+ drzewo Przykładowe B+ drzewo 3 8 1 3 7 8 12 Jak obliczyć rząd indeksu p Dane: rozmiar klucza V, rozmiar wskaźnika do bloku P, rozmiar bloku B, liczba rekordów w indeksowanym pliku danych r i liczba bloków pliku

Bardziej szczegółowo

Krzysztof Kawa. empolis arvato. e mail: krzysztof.kawa@empolis.com

Krzysztof Kawa. empolis arvato. e mail: krzysztof.kawa@empolis.com XI Konferencja PLOUG Kościelisko Październik 2005 Zastosowanie reguł asocjacyjnych, pakietu Oracle Data Mining for Java do analizy koszyka zakupów w aplikacjach e-commerce. Integracja ze środowiskiem Oracle

Bardziej szczegółowo

Odkrywanie wzorców sekwencji

Odkrywanie wzorców sekwencji Odkrywanie wzorców sekwencji Sformułowanie problemu Algorytm GSP Eksploracja wzorców sekwencji wykład 1 Na wykładzie zapoznamy się z problemem odkrywania wzorców sekwencji. Rozpoczniemy od wprowadzenia

Bardziej szczegółowo

Odkrywanie asocjacji

Odkrywanie asocjacji Odkrywanie asocjacji Wprowadzenie Sformułowanie problemu Typy reguł asocjacyjnych Odkrywanie asocjacji wykład 1 Wykład jest poświęcony wprowadzeniu i zaznajomieniu się z problemem odkrywania reguł asocjacyjnych.

Bardziej szczegółowo

Programowanie dynamiczne

Programowanie dynamiczne Programowanie dynamiczne Patryk Żywica 5 maja 2008 1 Spis treści 1 Problem wydawania reszty 3 1.1 Sformułowanie problemu...................... 3 1.2 Algorytm.............................. 3 1.2.1 Prosty

Bardziej szczegółowo

Porządek symetryczny: right(x)

Porządek symetryczny: right(x) Porządek symetryczny: x lef t(x) right(x) Własność drzewa BST: W drzewach BST mamy porządek symetryczny. Dla każdego węzła x spełniony jest warunek: jeżeli węzeł y leży w lewym poddrzewie x, to key(y)

Bardziej szczegółowo

prowadzący dr ADRIAN HORZYK /~horzyk e-mail: horzyk@agh tel.: 012-617 Konsultacje paw. D-13/325

prowadzący dr ADRIAN HORZYK /~horzyk e-mail: horzyk@agh tel.: 012-617 Konsultacje paw. D-13/325 PODSTAWY INFORMATYKI WYKŁAD 8. prowadzący dr ADRIAN HORZYK http://home home.agh.edu.pl/~ /~horzyk e-mail: horzyk@agh agh.edu.pl tel.: 012-617 617-4319 Konsultacje paw. D-13/325 DRZEWA Drzewa to rodzaj

Bardziej szczegółowo

Optymalizacja zapytań. Proces przetwarzania i obliczania wyniku zapytania (wyrażenia algebry relacji) w SZBD

Optymalizacja zapytań. Proces przetwarzania i obliczania wyniku zapytania (wyrażenia algebry relacji) w SZBD Optymalizacja zapytań Proces przetwarzania i obliczania wyniku zapytania (wyrażenia algebry relacji) w SZBD Elementy optymalizacji Analiza zapytania i przekształcenie go do lepszej postaci. Oszacowanie

Bardziej szczegółowo

METODA SYMPLEKS. Maciej Patan. Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski

METODA SYMPLEKS. Maciej Patan. Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski METODA SYMPLEKS Maciej Patan Uniwersytet Zielonogórski WSTĘP Algorytm Sympleks najpotężniejsza metoda rozwiązywania programów liniowych Metoda generuje ciąg dopuszczalnych rozwiązań x k w taki sposób,

Bardziej szczegółowo

Podstawowe zagadnienia z zakresu baz danych

Podstawowe zagadnienia z zakresu baz danych Podstawowe zagadnienia z zakresu baz danych Jednym z najważniejszych współczesnych zastosowań komputerów we wszelkich dziedzinach życia jest gromadzenie, wyszukiwanie i udostępnianie informacji. Specjalizowane

Bardziej szczegółowo

Sprawozdanie z laboratorium: Hurtownie Danych. Algorytm generowania reguł asocjacyjnych. FP-Growth. 9 czerwca 2011

Sprawozdanie z laboratorium: Hurtownie Danych. Algorytm generowania reguł asocjacyjnych. FP-Growth. 9 czerwca 2011 Sprawozdanie z laboratorium: Hurtownie Danych Algorytm generowania reguł asocjacyjnych 9 czerwca 2011 Prowadzący: dr inż. Izabela Szczęch dr inż. Szymon Wilk Autorzy: Łukasz Idkowiak Tomasz Kamiński Jacek

Bardziej szczegółowo

PROJEKT CZĘŚCIOWO FINANSOWANY PRZEZ UNIĘ EUROPEJSKĄ. Opis działania raportów w ClearQuest

PROJEKT CZĘŚCIOWO FINANSOWANY PRZEZ UNIĘ EUROPEJSKĄ. Opis działania raportów w ClearQuest PROJEKT CZĘŚCIOWO FINANSOWANY PRZEZ UNIĘ EUROPEJSKĄ Opis działania raportów w ClearQuest Historia zmian Data Wersja Opis Autor 2008.08.26 1.0 Utworzenie dokumentu. Wersja bazowa dokumentu. 2009.12.11 1.1

Bardziej szczegółowo

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Algorytmy i struktury danych Laboratorium 7. 2 Drzewa poszukiwań binarnych

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Algorytmy i struktury danych Laboratorium 7. 2 Drzewa poszukiwań binarnych Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Algorytmy i struktury danych Laboratorium Drzewa poszukiwań binarnych 1 Cel ćwiczenia Ćwiczenie ma na celu zapoznanie studentów

Bardziej szczegółowo

Definicja pliku kratowego

Definicja pliku kratowego Pliki kratowe Definicja pliku kratowego Plik kratowy (ang grid file) jest strukturą wspierająca realizację zapytań wielowymiarowych Uporządkowanie rekordów, zawierających dane wielowymiarowe w pliku kratowym,

Bardziej szczegółowo

Algorytmy i struktury danych. Drzewa: BST, kopce. Letnie Warsztaty Matematyczno-Informatyczne

Algorytmy i struktury danych. Drzewa: BST, kopce. Letnie Warsztaty Matematyczno-Informatyczne Algorytmy i struktury danych Drzewa: BST, kopce Letnie Warsztaty Matematyczno-Informatyczne Drzewa: BST, kopce Definicja drzewa Drzewo (ang. tree) to nieskierowany, acykliczny, spójny graf. Drzewo może

Bardziej szczegółowo

GEO-SYSTEM Sp. z o.o. GEO-RCiWN Rejestr Cen i Wartości Nieruchomości Podręcznik dla administratora systemu Warszawa 2007

GEO-SYSTEM Sp. z o.o. GEO-RCiWN Rejestr Cen i Wartości Nieruchomości Podręcznik dla administratora systemu Warszawa 2007 GEO-SYSTEM Sp. z o.o. 02-732 Warszawa, ul. Podbipięty 34 m. 7, tel./fax 847-35-80, 853-31-15 http:\\www.geo-system.com.pl e-mail:geo-system@geo-system.com.pl GEO-RCiWN Rejestr Cen i Wartości Nieruchomości

Bardziej szczegółowo

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew 1. ( pkt) Dany jest algorytm, który dla dowolnej liczby naturalnej n, powinien wyznaczyd sumę kolejnych liczb naturalnych mniejszych od n. Wynik algorytmu jest zapisany w zmiennej suma. Algorytm i=1; suma=0;

Bardziej szczegółowo

5.5. Wybieranie informacji z bazy

5.5. Wybieranie informacji z bazy 5.5. Wybieranie informacji z bazy Baza danych to ogromny zbiór informacji, szczególnie jeśli jest odpowiedzialna za przechowywanie danych ogromnych firm lub korporacji. Posiadając tysiące rekordów trudno

Bardziej szczegółowo

Przeszukiwanie z nawrotami. Wykład 8. Przeszukiwanie z nawrotami. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 238 / 279

Przeszukiwanie z nawrotami. Wykład 8. Przeszukiwanie z nawrotami. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 238 / 279 Wykład 8 J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 238 / 279 sformułowanie problemu przegląd drzewa poszukiwań przykłady problemów wybrane narzędzia programistyczne J. Cichoń, P. Kobylański

Bardziej szczegółowo

Nazwa implementacji: Nauka języka Python pętla for. Autor: Piotr Fiorek

Nazwa implementacji: Nauka języka Python pętla for. Autor: Piotr Fiorek Nazwa implementacji: Nauka języka Python pętla for Autor: Piotr Fiorek Opis implementacji: Poznanie innego rodzaju pętli, jaką jest pętla for w języku Python. Składnia pętli for jest następująca: for

Bardziej szczegółowo

Obliczenia na stosie. Wykład 9. Obliczenia na stosie. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303

Obliczenia na stosie. Wykład 9. Obliczenia na stosie. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303 Wykład 9 J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303 stos i operacje na stosie odwrotna notacja polska języki oparte na ONP przykłady programów J. Cichoń, P. Kobylański Wstęp

Bardziej szczegółowo

Techniki wyszukiwania danych haszowanie

Techniki wyszukiwania danych haszowanie Algorytmy i struktury danych Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski Techniki wyszukiwania danych haszowanie 1 Cel

Bardziej szczegółowo

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 ;

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.

Bardziej szczegółowo

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu Data Mining Wykład 9 Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster Plan wykładu Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne Sformułowanie problemu

Bardziej szczegółowo

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. 1. Rodzaje pamięci używanej w programach Pamięć komputera, dostępna dla programu,

Bardziej szczegółowo

KORPORACYJNE SYSTEMY ZARZĄDZANIA INFORMACJĄ

KORPORACYJNE SYSTEMY ZARZĄDZANIA INFORMACJĄ KORPORACYJNE SYSTEMY ZARZĄDZANIA INFORMACJĄ Wykład 3 Katedra Inżynierii Komputerowej Jakub Romanowski jakub.romanowski@kik.pcz.pl POBIERANIE DANYCH C/AL Poniższe funkcje używane są do operacji pobierania

Bardziej szczegółowo

Złożoność obliczeniowa algorytmu ilość zasobów komputera jakiej potrzebuje dany algorytm. Pojęcie to

Złożoność obliczeniowa algorytmu ilość zasobów komputera jakiej potrzebuje dany algorytm. Pojęcie to Złożoność obliczeniowa algorytmu ilość zasobów komputera jakiej potrzebuje dany algorytm. Pojęcie to wprowadzili J. Hartmanis i R. Stearns. Najczęściej przez zasób rozumie się czas oraz pamięć dlatego

Bardziej szczegółowo

Algorytm. a programowanie -

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

Bardziej szczegółowo

ALGORYTMY I STRUKTURY DANYCH

ALGORYTMY I STRUKTURY DANYCH ALGORYTMY I STRUKTURY DANYCH Temat : Drzewa zrównoważone, sortowanie drzewiaste Wykładowca: dr inż. Zbigniew TARAPATA e-mail: Zbigniew.Tarapata@isi.wat.edu.pl http://www.tarapata.strefa.pl/p_algorytmy_i_struktury_danych/

Bardziej szczegółowo

2012-01-16 PLAN WYKŁADU BAZY DANYCH INDEKSY - DEFINICJE. Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew

2012-01-16 PLAN WYKŁADU BAZY DANYCH INDEKSY - DEFINICJE. Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew 0-0-6 PLAN WYKŁADU Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew BAZY DANYCH Wykład 9 dr inż. Agnieszka Bołtuć INDEKSY - DEFINICJE Indeksy to pomocnicze struktury

Bardziej szczegółowo

Opracował: mgr inż. Marcin Olech 2010-10-04

Opracował: mgr inż. Marcin Olech 2010-10-04 Laboratorium 4 Strona 1 z 17 Spis treści: 1. Wielowymiarowa analiza danych w arkusza kalkulacyjnych z wykorzystaniem MS Excel: a. tworzenie tabel przestawnych, b. tworzenie wykresów przestawnych. 2. Praca

Bardziej szczegółowo

Algorytmy i język C++

Algorytmy i język C++ Wykład 6 Wskaźniki Wskaźnik nie przechowuje wartości zmiennej ale, podobnie jak tablica, wskazuje miejsce w pamięci, w którym znajduje się zmienna danego typu. W poniższym przykładzie symbol * pomiędzy

Bardziej szczegółowo

Drzewa poszukiwań binarnych

Drzewa poszukiwań binarnych 1 Cel ćwiczenia Algorytmy i struktury danych Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet ielonogórski Drzewa poszukiwań binarnych Ćwiczenie

Bardziej szczegółowo

1.7. Eksploracja danych: pogłębianie, przeszukiwanie i wyławianie

1.7. Eksploracja danych: pogłębianie, przeszukiwanie i wyławianie Wykaz tabel Wykaz rysunków Przedmowa 1. Wprowadzenie 1.1. Wprowadzenie do eksploracji danych 1.2. Natura zbiorów danych 1.3. Rodzaje struktur: modele i wzorce 1.4. Zadania eksploracji danych 1.5. Komponenty

Bardziej szczegółowo

1 abbbaabaaabaa -wzorzec: aaba

1 abbbaabaaabaa -wzorzec: aaba Algorytmy i złożoność obliczeniowa Laboratorium 14. Algorytmy tekstowe. 1. Algorytmy tekstowe Algorytmy tekstowe mają decydujące znaczenie przy wyszukiwaniu informacji typu tekstowego, ten typ informacji

Bardziej szczegółowo

Zapytania i wstawianie etykiet z bazy danych do rysunku

Zapytania i wstawianie etykiet z bazy danych do rysunku Zapytania i wstawianie etykiet z bazy danych do rysunku Pracujemy z gotową bazą danych MSAccess o nazwie KOMIS.MDB. Baza ta składa się z kilku tabel, rys. 1 Rys. 1. Diagram relacji. Wybierając w MSAccess,

Bardziej szczegółowo

Wykład VII. Kryptografia Kierunek Informatyka - semestr V. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej

Wykład VII. Kryptografia Kierunek Informatyka - semestr V. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej Wykład VII Kierunek Informatyka - semestr V Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Problem pakowania plecaka System kryptograficzny Merklego-Hellmana

Bardziej szczegółowo

Konfiguracja programu

Konfiguracja programu Spis treści Konfiguracja programu... 1 Import wyciągu bankowego... 5 Kilka syntetyk kontrahenta... 13 Rozliczanie i uzgadnianie kontrahenta... 14 Reguły księgowania... 16 Konfiguracja programu Po uruchomieniu

Bardziej szczegółowo

Wykład 8. Rekurencja. Iterować jest rzeczą ludzką, wykonywać rekursywnie boską. L. Peter Deutsch

Wykład 8. Rekurencja. Iterować jest rzeczą ludzką, wykonywać rekursywnie boską. L. Peter Deutsch Wykład 8 Iterować jest rzeczą ludzką, wykonywać rekursywnie boską. Smok podsuszony zmok (patrz: Zmok). Zmok zmoczony smok (patrz: Smok). L. Peter Deutsch Stanisław Lem Wizja lokalna J. Cichoń, P. Kobylański

Bardziej szczegółowo

Fizyczna struktura bazy danych w SQL Serwerze

Fizyczna struktura bazy danych w SQL Serwerze Sposób przechowywania danych na dysku twardym komputera ma zasadnicze znaczenie dla wydajności całej bazy i jest powodem tworzenia między innymi indeksów. Fizyczna struktura bazy danych w SQL Serwerze

Bardziej szczegółowo

Sztuczna Inteligencja Projekt

Sztuczna Inteligencja Projekt Sztuczna Inteligencja Projekt Temat: Algorytm LEM2 Liczba osób realizujących projekt: 2 1. Zaimplementować algorytm LEM 2. 2. Zaimplementować klasyfikator Classif ier. 3. Za pomocą algorytmu LEM 2 wygenerować

Bardziej szczegółowo

Drzewa BST i AVL. Drzewa poszukiwań binarnych (BST)

Drzewa BST i AVL. Drzewa poszukiwań binarnych (BST) Drzewa ST i VL Drzewa poszukiwań binarnych (ST) Drzewo ST to dynamiczna struktura danych (w formie drzewa binarnego), która ma tą właściwość, że dla każdego elementu wszystkie elementy w jego prawym poddrzewie

Bardziej szczegółowo

Podstawy Informatyki. Metody dostępu do danych

Podstawy Informatyki. Metody dostępu do danych Podstawy Informatyki c.d. alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Bazy danych Struktury danych Średni czas odszukania rekordu Drzewa binarne w pamięci dyskowej 2 Sformułowanie

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania Wstęp do programowania Złożoność obliczeniowa, poprawność programów Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk(Wydział Fizyki) WP w. XII Jesień 2013 1 / 20 Złożoność obliczeniowa Problem Ile czasu

Bardziej szczegółowo

Drzewa binarne. Drzewo binarne to dowolny obiekt powstały zgodnie z regułami: jest drzewem binarnym Jeśli T 0. jest drzewem binarnym Np.

Drzewa binarne. Drzewo binarne to dowolny obiekt powstały zgodnie z regułami: jest drzewem binarnym Jeśli T 0. jest drzewem binarnym Np. Drzewa binarne Drzewo binarne to dowolny obiekt powstały zgodnie z regułami: jest drzewem binarnym Jeśli T 0 i T 1 są drzewami binarnymi to T 0 T 1 jest drzewem binarnym Np. ( ) ( ( )) Wielkość drzewa

Bardziej szczegółowo

Złożoność obliczeniowa zadania, zestaw 2

Złożoność obliczeniowa zadania, zestaw 2 Złożoność obliczeniowa zadania, zestaw 2 Określanie złożoności obliczeniowej algorytmów, obliczanie pesymistycznej i oczekiwanej złożoności obliczeniowej 1. Dana jest tablica jednowymiarowa A o rozmiarze

Bardziej szczegółowo

1. Tworzenie tabeli. 2. Umieszczanie danych w tabeli

1. Tworzenie tabeli. 2. Umieszczanie danych w tabeli 1. Tworzenie tabeli Aby stworzyć tabele w SQL-u należy użyć polecenia CREATE TABLE nazwa_tabeli (nazwa_pola1 właściwości_pola1, nazwa_pola2 właściwości_pola2, itd.) Nazwa_tabeli to wybrana przez nas nazwa

Bardziej szczegółowo

Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1

Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1 Bazy danych wprowadzenie teoretyczne Piotr Prekurat 1 Baza danych Jest to zbiór danych lub jakichkolwiek innych materiałów i elementów zgromadzonych według określonej systematyki lub metody. Zatem jest

Bardziej szczegółowo

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście. Rodzaje triggerów Triggery DML na tabelach INSERT, UPDATE, DELETE Triggery na widokach INSTEAD OF Triggery DDL CREATE, ALTER, DROP Triggery na bazie danych SERVERERROR, LOGON, LOGOFF, STARTUP, SHUTDOWN

Bardziej szczegółowo

1. Zarządzanie informacją w programie Access

1. Zarządzanie informacją w programie Access 1. Zarządzanie informacją w programie Access a. 1. Cele lekcji i. a) Wiadomości Uczeń: zna definicję bazy danych i jej zadania, zna pojęcia: rekord, pole, klucz podstawowy, zna obiekty bazy danych: tabele,

Bardziej szczegółowo

Zaawansowane algorytmy i struktury danych

Zaawansowane algorytmy i struktury danych Zaawansowane algorytmy i struktury danych u dr Barbary Marszał-Paszek Opracowanie pytań praktycznych z egzaminów. Strona 1 z 12 Pytania praktyczne z kolokwium zaliczeniowego z 19 czerwca 2014 (studia dzienne)

Bardziej szczegółowo

Zmienne i struktury dynamiczne

Zmienne i struktury dynamiczne Zmienne i struktury dynamiczne Zmienne dynamiczne są to zmienne, które tworzymy w trakcie działania programu za pomocą operatora new. Usuwa się je operatorem delete. Czas ich występowania w programie jest

Bardziej szczegółowo

Baza danych część 8. -Klikamy Dalej

Baza danych część 8. -Klikamy Dalej Baza danych część 8 1.Kwerendy służą do wyszukiwania informacji według zadanych parametrów. Odpowiednio napisane mogą również wykonywać inne zadania jak tworzenie tabel czy pobieranie z formularzy parametrów

Bardziej szczegółowo

Bazy danych. Plan wykładu. Model logiczny i fizyczny. Operacje na pliku. Dyski. Mechanizmy składowania

Bazy danych. Plan wykładu. Model logiczny i fizyczny. Operacje na pliku. Dyski. Mechanizmy składowania Plan wykładu Bazy danych Wykład 10: Fizyczna organizacja danych w bazie danych Model logiczny i model fizyczny Mechanizmy składowania plików Moduł zarządzania miejscem na dysku i moduł zarządzania buforami

Bardziej szczegółowo

4. Projekt Bazy Danych

4. Projekt Bazy Danych 4. Projekt Bazy Danych 4.1. Opis rozdziału W tym rozdziale przedstawiono prosty projekt bazy danych dla naszej gry. 4.2. Dane logowania Na początku zastanówmy się jakie dane będą nam potrzebne do zarejestrowania

Bardziej szczegółowo

Ćw. IV. Tabele przestawne

Ćw. IV. Tabele przestawne Ćw. IV. Tabele przestawne Przykład 1. Dysponujemy raportem w formacie tabeli (Arkusz: Tabele Przestawne ) o trzech kolumnach zawierających: nazwę produktu, kategorie, do której produkt ten należy, oraz

Bardziej szczegółowo

Struktury danych (I): kolejka, stos itp.

Struktury danych (I): kolejka, stos itp. Letnie Warsztaty Matematyczno-Informatyczne Algorytmy i struktury danych Struktury danych (I): kolejka, stos itp. Struktury danych (I): kolejka, stos itp. Struktura danych stanowi sposób uporządkowania

Bardziej szczegółowo

Algorytmy i. Wykład 5: Drzewa. Dr inż. Paweł Kasprowski

Algorytmy i. Wykład 5: Drzewa. Dr inż. Paweł Kasprowski Algorytmy i struktury danych Wykład 5: Drzewa Dr inż. Paweł Kasprowski pawel@kasprowski.pl Drzewa Struktury przechowywania danych podobne do list ale z innymi zasadami wskazywania następników Szczególny

Bardziej szczegółowo

Wstęp 5 Rozdział 1. Podstawy relacyjnych baz danych 9

Wstęp 5 Rozdział 1. Podstawy relacyjnych baz danych 9 Wstęp 5 Rozdział 1. Podstawy relacyjnych baz danych 9 Tabele 9 Klucze 10 Relacje 11 Podstawowe zasady projektowania tabel 16 Rozdział 2. Praca z tabelami 25 Typy danych 25 Tworzenie tabel 29 Atrybuty kolumn

Bardziej szczegółowo

Matematyka Dyskretna - zadania

Matematyka Dyskretna - zadania zad. 1. Chcemy zdefiniować rekurencyjnie zbiór Z wszystkich trójkątów równoramiennych ABC, gdzie współrzędne wierzchołków będą liczbami całkowitymi, wierzchołek A zawsze będzie leżeć w początku układu

Bardziej szczegółowo

LABORATORIUM Z INŻYNIERII ZARZĄDZANIA- MRP II

LABORATORIUM Z INŻYNIERII ZARZĄDZANIA- MRP II LABORATORIUM Z INŻYNIERII ZARZĄDZANIA- MRP II Ćwiczenie 4 Temat: Wprowadzanie struktury produkcyjnej i marszrut technologicznych. Opracowali: Sitek Paweł Jarosław Wikarek Kielce 2004 Wydziały produkcyjne

Bardziej szczegółowo

LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika

LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika Prowadzący: Dr inż. Jacek Habel Instytut Technologii Maszyn i Automatyzacji Produkcji Zakład Projektowania Procesów

Bardziej szczegółowo

Komunikacja za pomocą potoków. Tomasz Borzyszkowski

Komunikacja za pomocą potoków. Tomasz Borzyszkowski Komunikacja za pomocą potoków Tomasz Borzyszkowski Wstęp Sygnały, omówione wcześniej, są użyteczne w sytuacjach błędnych lub innych wyjątkowych stanach programu, jednak nie nadają się do przekazywania

Bardziej szczegółowo

Przypomnij sobie krótki wstęp do teorii grafów przedstawiony na początku semestru.

Przypomnij sobie krótki wstęp do teorii grafów przedstawiony na początku semestru. Spis treści 1 Drzewa 1.1 Drzewa binarne 1.1.1 Zadanie 1.1.2 Drzewo BST (Binary Search Tree) 1.1.2.1 Zadanie 1 1.1.2.2 Zadanie 2 1.1.2.3 Zadanie 3 1.1.2.4 Usuwanie węzła w drzewie BST 1.1.2.5 Zadanie 4

Bardziej szczegółowo

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Rozpoczniemy od zaprojektowania bazy danych w programie SYBASE/PowerDesigner umieszczamy dwie Encje (tabele) prawym

Bardziej szczegółowo

Bazy danych wykład dwunasty. dwunasty Wykonywanie i optymalizacja zapytań SQL 1 / 36

Bazy danych wykład dwunasty. dwunasty Wykonywanie i optymalizacja zapytań SQL 1 / 36 Bazy danych wykład dwunasty Wykonywanie i optymalizacja zapytań SQL Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa dwunasty Wykonywanie i optymalizacja zapytań SQL 1 / 36 Model kosztów

Bardziej szczegółowo

Drzewa poszukiwań binarnych

Drzewa poszukiwań binarnych 1 Drzewa poszukiwań binarnych Kacper Pawłowski Streszczenie W tej pracy przedstawię zagadnienia związane z drzewami poszukiwań binarnych. Przytoczę poszczególne operacje na tej strukturze danych oraz ich

Bardziej szczegółowo

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. 77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. Przy modelowaniu bazy danych możemy wyróżnić następujące typy połączeń relacyjnych: jeden do wielu, jeden do jednego, wiele

Bardziej szczegółowo

Nowe funkcje w programie Forte Finanse i Księgowość

Nowe funkcje w programie Forte Finanse i Księgowość Forte Finanse i Księgowość 1 / 11 Nowe funkcje w programie Forte Finanse i Księgowość Spis treści : Korzyści z zakupu nowej wersji 2 Forte Finanse i Księgowość w wersji 2011.b 3 Nowe wzory deklaracji VAT

Bardziej szczegółowo

Rozwiązywanie układów równań liniowych

Rozwiązywanie układów równań liniowych Rozwiązywanie układów równań liniowych Marcin Orchel 1 Wstęp Jeśli znamy macierz odwrotną A 1, to możęmy znaleźć rozwiązanie układu Ax = b w wyniku mnożenia x = A 1 b (1) 1.1 Metoda eliminacji Gaussa Pierwszy

Bardziej szczegółowo

Stosowanie, tworzenie i modyfikowanie stylów.

Stosowanie, tworzenie i modyfikowanie stylów. Stosowanie, tworzenie i modyfikowanie stylów. We wstążce Narzędzia główne umieszczone są style, dzięki którym w prosty sposób możemy zmieniać tekst i hurtowo modyfikować. Klikając kwadrat ze strzałką w

Bardziej szczegółowo

Algorytmy z powrotami

Algorytmy z powrotami Algorytmy z powrotami Algorytmy z powrotami są wykorzystywane do rozwiązywania problemów, w których z określonego zbioru jest wybierana sekwencja obiektów tak, aby spełniała ona określone kryteria. Klasycznym

Bardziej szczegółowo

Data Mining podstawy analizy danych Część druga

Data Mining podstawy analizy danych Część druga Data Mining podstawy analizy danych Część druga W części pierwszej dokonaliśmy procesu analizy danych treningowych w oparciu o algorytm drzewa decyzyjnego. Proces analizy danych treningowych może być realizowany

Bardziej szczegółowo

KRYPTOGRAFIA I OCHRONA DANYCH PROJEKT

KRYPTOGRAFIA I OCHRONA DANYCH PROJEKT KRYPTOGRAFIA I OCHRONA DANYCH PROJEKT Temat: Zaimplementować system kryptografii wizualnej http://www.cacr.math.uwaterloo.ca/~dstinson/visual.html Autor: Tomasz Mitręga NSMW Grupa 1 Sekcja 2 1. Temat projektu

Bardziej szczegółowo

Jeśli X jest przestrzenią o nieskończonej liczbie elementów:

Jeśli X jest przestrzenią o nieskończonej liczbie elementów: Logika rozmyta 2 Zbiór rozmyty może być formalnie zapisany na dwa sposoby w zależności od tego z jakim typem przestrzeni elementów mamy do czynienia: Jeśli X jest przestrzenią o skończonej liczbie elementów

Bardziej szczegółowo

Za pierwszy niebanalny algorytm uważa się algorytm Euklidesa wyszukiwanie NWD dwóch liczb (400 a 300 rok przed narodzeniem Chrystusa).

Za pierwszy niebanalny algorytm uważa się algorytm Euklidesa wyszukiwanie NWD dwóch liczb (400 a 300 rok przed narodzeniem Chrystusa). Algorytmy definicja, cechy, złożoność. Algorytmy napotykamy wszędzie, gdziekolwiek się zwrócimy. Rządzą one wieloma codziennymi czynnościami, jak np. wymiana przedziurawionej dętki, montowanie szafy z

Bardziej szczegółowo

Spis treści. 1 Moduł RFID (APA) 3

Spis treści. 1 Moduł RFID (APA) 3 Spis treści 1 Moduł RFID (APA) 3 1.1 Konfigurowanie Modułu RFID..................... 3 1.1.1 Lista elementów Modułu RFID................. 3 1.1.2 Konfiguracja Modułu RFID (APA)............... 4 1.1.2.1

Bardziej szczegółowo

Połączenie AutoCad'a z bazą danych

Połączenie AutoCad'a z bazą danych Połączenie AutoCad'a z bazą danych Założenie bazy danych z pojedynczą tablicą Samochody, za pomocą aplikacji MS Access 1. Na dysku C: założyć katalog: C:\TKM\GR1x 2. Do tego katalogu przekopiować plik:

Bardziej szczegółowo

Technologie Internetowe Raport z wykonanego projektu Temat: Internetowy sklep elektroniczny

Technologie Internetowe Raport z wykonanego projektu Temat: Internetowy sklep elektroniczny Technologie Internetowe Raport z wykonanego projektu Temat: Internetowy sklep elektroniczny AiRIII gr. 2TI sekcja 1 Autorzy: Tomasz Bizon Józef Wawrzyczek 2 1. Wstęp Celem projektu było stworzenie sklepu

Bardziej szczegółowo

PTI S1 Tabele. Tabele. Tabele

PTI S1 Tabele. Tabele. Tabele Tabele Tabele 43 1.3. Tabele Jako że bazy danych składają się z tabel, musimy nauczyć się jak je zaprojektować, a następnie stworzyć i zarządzać nimi w programie Microsoft Access 2013. Zajmiemy się również

Bardziej szczegółowo

Kiedy i czy konieczne?

Kiedy i czy konieczne? Bazy Danych Kiedy i czy konieczne? Zastanów się: czy często wykonujesz te same czynności? czy wielokrotnie musisz tworzyć i wypełniać dokumenty do siebie podobne (faktury, oferty, raporty itp.) czy ciągle

Bardziej szczegółowo

PODSTAWOWE POJĘCIA BAZ DANYCH

PODSTAWOWE POJĘCIA BAZ DANYCH Baza danych (data base) - uporządkowany zbiór danych o określonej strukturze, przechowywany na nośniku informacji w komputerze. System bazy danych można zdefiniować jako bazę danych wraz z oprogramowaniem

Bardziej szczegółowo

Nowe funkcje w programie Symfonia Finanse i Księgowość

Nowe funkcje w programie Symfonia Finanse i Księgowość Symfonia Finanse i Księgowość 1 / 11 Nowe funkcje w programie Symfonia Finanse i Księgowość Spis treści : Korzyści z zakupu nowej wersji 2 Symfonia Finanse i Księgowość w wersji 2011.1.b 3 Nowe wzory deklaracji

Bardziej szczegółowo

5.4. Tworzymy formularze

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

Bardziej szczegółowo

Laboratorium 7 Blog: dodawanie i edycja wpisów

Laboratorium 7 Blog: dodawanie i edycja wpisów Laboratorium 7 Blog: dodawanie i edycja wpisów Dodawanie nowych wpisów Tworzenie formularza Za obsługę formularzy odpowiada klasa Zend_Form. Dla każdego formularza w projekcie tworzymy klasę dziedziczącą

Bardziej szczegółowo

Oracle11g: Wprowadzenie do SQL

Oracle11g: Wprowadzenie do SQL Oracle11g: Wprowadzenie do SQL OPIS: Kurs ten oferuje uczestnikom wprowadzenie do technologii bazy Oracle11g, koncepcji bazy relacyjnej i efektywnego języka programowania o nazwie SQL. Kurs dostarczy twórcom

Bardziej szczegółowo

Bazy Danych I Projekt Firma Turystyczna

Bazy Danych I Projekt Firma Turystyczna Bazy Danych I Projekt Firma Turystyczna Autor: Paweł Bara 1. Struktura bazy danych. Baza danych ma stanowić magazyn informacji o transakcjach prowadzonych przez pewne biuro podróży. Biuro to sprzedaje

Bardziej szczegółowo

Krzysztof Kadowski. PL-E3579, PL-EA0312,

Krzysztof Kadowski. PL-E3579, PL-EA0312, Krzysztof Kadowski PL-E3579, PL-EA0312, kadowski@jkk.edu.pl Bazą danych nazywamy zbiór informacji w postaci tabel oraz narzędzi stosowanych do gromadzenia, przekształcania oraz wyszukiwania danych. Baza

Bardziej szczegółowo

Algorytm obejścia drzewa poszukiwań i zadanie o hetmanach szachowych

Algorytm obejścia drzewa poszukiwań i zadanie o hetmanach szachowych Algorytm obejścia drzewa poszukiwań i zadanie o hetmanach szachowych 1 Algorytm obejścia drzewa poszukiwań i zadanie o hetmanach szachowych Alexander Denisjuk Prywatna Wyższa Szkoła Zawodowa w Giżycku

Bardziej szczegółowo

Zakład Usług Informatycznych OTAGO

Zakład Usług Informatycznych OTAGO Zakład Usług Informatycznych OTAGO Opis konstrukcji Wirtualnego Numeru Rachunku dotyczący płatności masowych wersja 1.4 autor: Tomasz Rosochacki Gdańsk, 2012-11-27 Spis treści 1. Wprowadzenie.... 3 2.

Bardziej szczegółowo

Wykład X. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2016 Janusz Słupik

Wykład X. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2016 Janusz Słupik Wykład X Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2016 c Copyright 2016 Janusz Słupik Drzewa binarne Drzewa binarne Drzewo binarne - to drzewo (graf spójny bez cykli) z korzeniem (wyróżnionym

Bardziej szczegółowo

1 Moduł Modbus ASCII/RTU 3

1 Moduł Modbus ASCII/RTU 3 Spis treści 1 Moduł Modbus ASCII/RTU 3 1.1 Konfigurowanie Modułu Modbus ASCII/RTU............. 3 1.1.1 Lista elementów Modułu Modbus ASCII/RTU......... 3 1.1.2 Konfiguracja Modułu Modbus ASCII/RTU...........

Bardziej szczegółowo