Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałIrenka Wiese Został zmieniony 10 lat temu
1
Koło Naukowe Matematyków Uniwersytetu Rzeszowskiego
* Koło Naukowe Matematyków Uniwersytetu Rzeszowskiego Krzysztof Gąsior Komputerowe badanie własności relacji *
2
Cel Prezentacja wykorzystania komputera jako narzędzia do rozwiązywania problemów matematycznych – informatyczne metody: tworzenia macierzy relacji, grafu oraz diagramu Hessa wyznaczanie liczby relacji przy pomocy komputera oraz porównanie efektywności algorytmów warunki poprawnej optymalizacji programów matematycznych
3
Tematyka wprowadzenie
przekształcanie zadanych relacji na macierze relacji w Javie 5.0 „Tiger” oraz ich wizualizacja za pomocą grafu i diagramu Hessa w Matematice 6.0 komputer jako narzędzie do badania własności relacji wyznaczanie liczby relacji za pomocą metody „brutalnej siły” zastosowanie metody „dziel i zwyciężaj” do wyznaczenia liczby relacji przechodniej
4
Tematyka wprowadzenie
przekształcanie zadanych relacji na macierze relacji w Javie 5.0 „Tiger” oraz ich wizualizacja za pomocą grafu i diagramu Hessa w Matematice 6.0 komputer jako narzędzie do badania własności relacji wyznaczanie liczby relacji za pomocą metody „brutalnej siły” zastosowanie metody „dziel i zwyciężaj” do wyznaczenia liczby relacji przechodniej
5
Krata Definicja. Zbiór częściowo uporządkowany nazywamy kratą, gdy wszystkie jego podzbiory dwuelementowe mają kresy zwane działaniami kratowymi: Definicja. Kratę nazywamy ograniczoną, gdy i stosujemy oznaczenia
6
Krata Twierdzenie 1. Jeżeli jest kratą, to dla dowolnych elementów
mamy:
7
Relacje Iloczyn Kartezjański definiujemy następująco:
Relacją nazywamy dowolny podzbiór iloczynu kartezjańskiego zbioru. Relacją odwrotną na do relacji nazywamy relacje Złożeniem relacji (Iloczynem względnym) nazywamy taką relację , że
8
Relacje Relacje można reprezentować przy pomocy: listy
macierzy relacji grafu skierowanego diagramu
9
Macierz relacji R nazywamy macierzą relacji, a elementy tej macierzy traktujemy jako wartości boolowskie.
10
Interpretacja macierzowa
Macierze relacji Przez relację: Interpretacja macierzowa pełną rozumiemy ; pustą rozumiemy ; identyczności rozumiemy I;
11
Rachunek relacji Twierdzenie 2. Jeżeli , to
12
Rachunek relacji Twierdzenie 3. Jeżeli , to
13
Rodzaje relacji zwrotna, gdy ; symetryczna, gdy ;
antysymetryczna, gdy ;
14
Rodzaje relacji przeciwsymetryczna, gdy ; przechodnia, gdy ;
idempotentna, gdy ;
15
Interpretacja działań na relacjach w postaci macierzy relacji
16
Tabele logiczne 1 1 1
17
Rodzaje relacji Definicja. Relację zwrotną, symetryczną i przechodnią nazywamy relacją równoważności.
18
Relacje porządku Definicja. Relacją częściowo porządkującą zbiór X nazywamy relację spełniającą warunki: zwrotności antysymetryczności przechodniości Definicja. Relacją quasi-porządkującą zbiór X nazywamy relację spełniającą warunki: zwrotności przechodniości
19
Przykłady relacji Relacja
(pusta) jest symetryczna, asymetryczna, przeciwsymetryczna, przechodnia, idempotentna; I (identyczności) jest zwrotna, symetryczna, asymetryczna, przechodnia, idempotentna; (pełna) jest zwrotna, symetryczna, przechodnia, idempotentna;
20
Własności relacji Twierdzenie 4. Jeżeli relacja jest relacją równoważności (idempotentna) , to relacja jest relacją równoważności(idempotentną) . Twierdzenie 5. Jeżeli są relacjami równoważności(idempotentne) oraz , to jest relacją równoważności(idempotentną). Twierdzenie 6. Każdy podzbiór relacji I w X jest relacją idempotentną. Wniosek. Wszystkich macierzy relacji tego rodzaju jest , gdzie n jest wymiarem macierzy.
21
Ilość relacji binarnych
Relacja n - elementowe Wzór Wszystkich Zwrotne Symetryczne Antysymetryczne
22
Uwaga Twierdzenie 7. Niech wtedy poniższe warunki są równoważne:
1. 2. , dla pewnych 3. , dla pewnych
23
Uwaga Z faktu, że jest kratą macierzy działania możemy zamienić na:
24
Tematyka wprowadzenie
przekształcanie zadanych relacji na macierze relacji w Javie 5.0 „Tiger” oraz ich wizualizacja za pomocą grafu i diagramu Hessa w Matematice 6.0 komputer jako narzędzie do badania własności relacji wyznaczanie liczby relacji za pomocą metody „brutalnej siły” zastosowanie metody „dziel i zwyciężaj” do wyznaczenia liczby relacji przechodniej
29
Grafy i diagramy Hessa
30
Grafy i diagramy Hessa Przykład pokazuje nieprawidłowe działanie metody HesseDiagram[g], ponieważ z interpretacji grafowej wynika, że nie jest to relacja zwrotna, a zatem nie jest to relacja porządku częściowego, czyli diagram nie powinien być utworzony.
31
Tematyka wprowadzenie
przekształcanie zadanych relacji na macierze relacji w Javie 5.0 „Triger” oraz ich wizualizacja za pomocą grafu i diagram Hessa w Matematice 6.0 komputer jako narzędzie do badania własności relacji wyznaczanie liczby relacji za pomocą metody „brutalnej siły” zastosowanie metody „dziel i zwyciężaj” do wyznaczenia liczby relacji przechodniej
32
Mathematica & Java Java Mathematica
macierz – zmienna przechowująca tablice wielowymiarową typu boolean reprezentująca macierz relacji Mathematica g – zmienna przechowująca graf skierowany utworzony przy pomocy metody MakeGraph[].
33
Matematyka & Java Matematyka Java && || ! 1 true false ==
34
Działanie metod w Javie będzie polegało na przeszukiwaniu tablicy wielowymiarowej typu boolean (nasza macierz) w poszukiwaniu elementu/ów nie spełniających wybranej własności relacyjnej.
35
Relacja zwrotna Java Mathematica ReflexiveQ[g]
36
Relacja symetryczna Java Mathematica SymmetricQ[g]
37
Relacja asymetryczna Java
38
Relacja antysymetryczna
Java Mathematica AntiSymmetricQ[g]
39
* Relacja przechodnia Java Mathematica TransitiveQ[g] *
40
Relacja idempotentna Java
41
Relacja równoważności
Java Mathematica EquivalenceRelationQ [g]
42
Relacja quasi - relacja
Java
43
Relacja porządku częściowego
Java Mathematica PartialOrderQ[g]
44
Przykład w Mathematice
45
Wyznaczanie ilości relacji
Rozwiązanie problemu wyznaczenia ilości relacji, będzie polegało na generowaniu kolejnych macierzy od relacji pustej do pełnej i testowanie ich pod względem własności relacyjnych.
46
Tematyka wprowadzenie
przekształcanie zadanych relacji na macierze relacji w Javie 5.0 „Triger” oraz ich wizualizacja za pomocą grafu i diagramu Hessa w Matematice 6.0 komputer jako narzędzie do badania własności relacji wyznaczanie liczby relacji za pomocą metody „brutalnej siły” zastosowanie metody „dziel i zwyciężaj” do wyznaczenia liczby relacji przechodniej
47
Metoda „brutalnej siły”
Metoda „brutalnej siły” jest metodą, która nie wykorzystuje zwykle żadnych informacji o zbiorze poszukiwań, a komputer wykorzystuje jedynie jako szybkie narzędzie do „mało inteligentnego” jego przeglądania.
48
Start l < BigInteger count = new BigInteger („0”);
BigInteger l = new BigInteger („0”); boolean [][] macierz; Czytaj(n); macierz = new boolean[n][n]; l < TAK Czy macierz spełnia własność? NIE TAK Zwiększ zmienną count o jeden; Generuj macierz
49
Przykład działania dla relacji przechodnich w zbiorze 2 elementowym.
? ? ? ? … Jest relacją przechodnią Nie jest relacją przechodnią
50
Start l < BigInteger count = new BigInteger („0”);
BigInteger l = new BigInteger („0”); boolean [][] macierz; Czytaj(n); macierz = new boolean[n][n]; l < NIE TAK Czy macierz spełnia własność? NIE TAK Zwiększ zmienną count o jeden; Generuj macierz Wypisz wynik poszukiwań
51
Wszystkich relacji przechodnich w zbiorze 2 elementowym jest 13.
52
Start l < BigInteger count = new BigInteger („0”);
BigInteger l = new BigInteger („0”); boolean [][] macierz; Czytaj(n); macierz = new boolean[n][n]; l < NIE TAK Czy macierz spełnia własność? NIE TAK Zwiększ zmienną count o jeden; Generuj macierz Wypisz wynik poszukiwań Stop
56
Wyniki Ilość elementów w zbiorze Ilość relacji Zwrotnych Symetrycznych
Przechodnich 1 2 4 8 13 3 64 1 024 171 4 096 32 768 3 994 5 …
57
Wyniki Ilość elementów w zbiorze Ilość relacji Antysymetryczna
Asymetryczna Idempotentna 1 2 12 3 11 216 27 123 4 11 664 729 2 360 5 59 049 73 023 …
58
Wyniki Ilość elementów w zbiorze Ilość relacji równoważności
quasi porządku porządku częściowego 1 2 4 3 5 29 19 15 355 219 52 6 942 4 321 …
59
Tematyka wprowadzenie
przekształcanie zadanych relacji na macierze relacji w Javie 5.0 „Triger” oraz ich wizualizacja za pomocą grafy i diagramów Hessego w Matematice 6.0 komputer jako narzędzie do badania własności relacji wyznaczanie liczby relacji za pomocą metody „brutalnej siły” zastosowanie metody „dziel i zwyciężaj” do wyznaczenia liczby relacji przechodniej
60
Metoda „dziel i zwyciężaj”
Metoda „dziel i zwyciężaj” jest pewną ogólną metodą rozwiązywania problemów polegającą na podziale problemu na mniejsze i wyznaczeniu rozwiązania z rozwiązań problemów mniejszych.
63
Metoda generowania 5 … 5 … 29 … 29 … 29 … 29 …
66
Metoda działania programu
… … … … zakres działania metody przechodnia
67
Porównanie Przestrzeń stanów n Metoda Różnica % „Brutalna siła”
„Dziel i zwyciężaj” 1 2 50,00 16 15 6,25 3 512 418 94 18,36 4 65 536 22 135 43 401 66,22 5 33 554 432 2 063 069 93,85 6 317 99,54
68
Porównanie n = 5 Metoda Różnica % „Brutalna siła” „Dziel i zwyciężaj”
Czas 32 266 ms 2 003 ms ms 93,79 Zużycie pamięci 181 MB Zużycie procesora 100%
69
Uwagi i spostrzeżenia słuchaczy
70
Więcej informacji M. Malec, „Elementy wstępu do teorii relacji, cześć 1”, AGH, Kraków 1998 J. A. Szrejder, „Równość, podobieństwo, porządek”, WNT, Warszawa 1975 Z. Moszner, „O teorii relacji, PZWS”, Warszawa 1967 K. Gąsior, „Relacje przechodnie”, Rzeszów 2007, praca licencjacka M. Świedr, „Relacje zwrotne i przeciwzwrotne”, Rzeszów 2007, praca licencjacka
71
Więcej informacji E. M. Reingold, J. Nievergelt, D. Narsingh, „Algorytmy kombinatoryczne”, PWN, 1985 Warszawa L. Banachowski, K. Diks, W. Rytter, „ Algorytmy i struktury danych”, WNT, 1996 Warszawa E. Koffman, P. Wolfgang, „ Struktury danych i techniki obiektowe na przykładzie Javy 5.0”, Helion, 2006 Gliwice
72
Internet B. Pękala, „Rachunek macierzy nad kratami”, rozprawa doktorska, AGH, Kraków 2007 Wykłady z matematyki dyskretnej – Internet Discrete Mathematical Structures: Theory and Applications - Matrices and Closures of Relations
73
Internet J. Gosling, B. Joy, G. Steele, G. Bracha, „ The Java™ Language Specification, Third Edition”, Java Tutorial Mathematica – Wolfram, Combinatorica Nowe cechy języka Java w wersji 1.5
74
Dziękuje za uwagę
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.