Procesy w systemie komputerowym na styku dane

Transkrypt

Procesy w systemie komputerowym na styku dane
Referat pracy doktorskiej
Promotor: prof. Franciszek Grabowski
Procesy w systemie komputerowym
na styku dane-algorytm prostego
sortowania przez wstawianie
w ujęciu statystyki nieekstensywnej
Dominik Strzałka
Zakład Systemów Rozproszonych
Politechnika Rzeszowska
GLIWICE 2009
Plan wystąpienia:
1. Cele i tezy pracy
2. Podejście systemowe w informatyce
3. Sortowanie przez wstawianie
4. Klasyczna analiza algorytmu
5. Problem dynamiki pracy
6. Fundament termodynamiczny: entropia Tsallisa
7. Analiza dynamiki pracy algorytmu
8. Propozycja praktycznego wykorzystania badań
Cele pracy
1. Opis ewolucji paradygmatów informatyki.
2. Analizę konsekwencji odejścia od paradygmatu
przetwarzania algorytmicznego na rzecz przetwarzania
interakcyjnego.
3. Przegląd wybranych cech systemów złoŜonych.
4. PrzybliŜenie koncepcji entropii nieekstensywnej oraz idei
sprzęŜenia zwrotnego w systemach znajdujących się
w środowisku o ograniczonych zasobach.
5. Analizę algorytmu prostego sortowania przez wstawianie
w klasycznym ujęciu.
6. Analizę termodynamiczną algorytmu prostego sortowania
przez wstawianie w ujęciu entropii nieekstensywnej.
7. Badania dynamiki pracy algorytmu sortującego.
8. Wskazanie moŜliwości praktycznego zastosowania wyników
pracy.
Tezy
1. W klasycznym modelu obliczeń algorytmicznych (maszyna Turinga)
przyjmuje się, Ŝe na styku dane-algorytm generowane są wyłącznie
procesy z zaleŜnościami o charakterze krótkozasięgowym. Tymczasem
styk dane-algorytm moŜe być systemem złoŜonym charakteryzującym
się zaleŜnościami o charakterze długozasięgowym.
2. O dynamice procesów w czasie przetwarzania decydują poszczególne
warstwy systemu. Hierarchicznie najwyŜszą warstwą jest styk algorytm
struktura danych i dynamika procesów w nim generowanych ma
najwyŜszą wagę.
3. Podczas sortowania przez wstawianie dla zbiorów wejściowych
z róŜnego typu zaleŜnościami czasowymi dynamika przetwarzania jest
daleka od stanu równowagi termodynamicznej.
Tezy
4. Immanentną cechą struktury danych wejściowych jest to, iŜ moŜe ona
nie posiadać charakteru jednorodnego, lecz charakteryzować się
zaleŜnościami o charakterze długozasięgowym.
5. W trakcie przetwarzania występujące w zadaniu zaleŜności
o charakterze długozasięgowym skutkują niedopasowaniem zadania do
struktury wykonawczej.
6. Przetwarzanie w systemie komputerowym posiada takŜe charakter
interaktywny; o złoŜoności obliczeniowej nie decyduje wyłącznie
statyczna miara złoŜoności algorytmu, lecz dynamiczna złoŜoność
obliczeniowa całego systemu komputerowego. Istotny wpływ w tym
względzie ma styk dane-algorytm.
Struktura zadania
–
środowisko przetwarzania
Nierównowaga
termodynamiczna
Fundament
termodynamiczny
mądrość
Przetwarzanie
interakcyjne
Przetwarzanie
równoległe
i rozproszone
wiedza
informacja
dane
Obliczenia
autonomiczne
Przetwarzanie
algorytmiczne
Przetwarzanie
sekwencyjne
Stopień złoŜoności
Stopień złoŜonoś
oności
Entropia???
MASZYNA
TURINGA
PRZETWARZANIE
ALGORYTMICZNE
- obliczenia są „zamknięte” tzn. wyklucza się w nich wpływ otoczenia;
- w implementacjach zasoby (czas i pamięć) są skończone;
- zachowanie jest ściśle ustalone (deterministyczne).
KaŜdy komputer moŜe zostać zasymulowany na maszynie Turinga.
Kiedykolwiek istnieje efektywna metoda rozwiązywania pewnego
problemu przez komputer, moŜe ona być obliczona przez maszynę
Turinga.
PRZETWARZANIE
INTERAKCYJNE
SYSTEMY
ZŁOśONE
ALGORYTM
JĘZYK
PROGRAMOWANIA
(NEUTRALNY)
PROGRAMISTA
(NEUTRALNY)
KOMPILATOR
(NEUTRALNY)
DANE
WEJŚCIOWE
SPRZĘT
(IDEALNY)
SPRZĘśENIE
ZWROTNE
PODEJŚCIE
SYSTEMOWE
DANE
WEJŚCIOWE
ALGORYTM
SPRZĘśENIE
ZWROTNE
Przetwarzanie algorytmiczne, jak do tej pory
traktowane było w kategoriach systemów prostych
dziś wymaga zupełnie nowego spojrzenia.
SORTOWANIE PRZEZ WSTAWIANIE
START
j
2
1 for j
2 to length(A) do
2
key
A[j]
3
i
j-1
4
while (i>0 and A[i]>key)
5
do A[i+1]
A[i]
6
i
i–1
7
A[i+1]
key
key
A[j]
i
j-1
i>0
N
A[i]>key
T
A[i+1]
key
j
j+1
A[i+1]
A[i]
i
i-1
j>length(A)
T
STOP
N
Jak ocenić „jakość” tego algorytmu ?
Pesymistyczna: dla kaŜdego
kolejnego elementu wykonaj
o jedną operację dominującą
więcej, stąd złoŜoność:
O(n2)
Optymistyczna: dla kaŜdego
kolejnego elementu wykonaj
jedną operację dominującą,
stąd złoŜoność:
Powszechnie
akceptowanym kryterium
jest złoŜoność obliczeniowa
Ω(n)
A co z „jakością” pomiędzy przypadkami
pesymistycznym i optymistycznym ?
ZłoŜoność oczekiwana ?
przypadek
pesymistyczny
złoŜoność
oczekiwana
inwersje
przypadek
optymistyczny
sekwensy
α1 = 1
α2 → ∞
DYNAMIKA
PROCESU
SORTOWANIA
Przetwarzanie jako przepływ
t(n)
przepływ laminarny
przepływ turbulentny
T(n)
przypadek optymistyczny
n
Problem termodynamicznego fundamentu
q=-50
q=-2
q=1
q=1.2
q=1.5
0.5
istnienia rozkładów prawdopodobieństwa
0.4
p(x)
0.3
Entropia BG
0.2
0.1
Rozkłady
o skończonej wartości
wariancji
0.0
-4
-3
-2
-1
0
1
2
4
q=1
q=1.6667
q=1.8
q=2
q=2.5
q=2.999
0.1
0.01
p(x)
CięŜkie (potęgowe)
i półcięŜkie ogony
3
x
1E-3
Brak fundamentu
termodynamicznego
1E-4
-10
-5
0
x
5
10
Algorytm jako system ze stanami nierównowagowymi
Sortowanie to proces wprowadzania porządku, czyli zmniejszania entropii.
M1 – ilość wywołań pętli zewnętrznej,
M2 – ilość wywołań pętli wewnętrznej,
M3 – ilość braku wywołań pętli wewnętrznej.
M = M1 + M2 + M3 = n
W =C
M1
M
⋅C
M2
M − M1
M − M1 )!
(
M!
M!
=
⋅
=
M 1 !( M − M 1 ) ! M 2 !( M − M 1 − M 2 ) M 1 ! M 2 ! M 3 !
Przypadek optymistyczny:
ni !
WO =
= ni
1!0!(ni − 1)!
Z punktu widzenia
termodynamiki są to
przypadki dokładnie takie
same, nadto całkowicie
deterministyczne
Przypadek pesymistyczny:
WP =
ni !
= ni
1!(ni − 1)!0!
Przypadek „dynamiczny”:
WD =
(n − 2)!(ni − 1)ni = n (n − 1)
ni !
= i
i i
(ni − 2)!
1!1!(ni − 2 )!
W przypadku „dynamicznym” produkcja entropii jest na znacznie wyŜszym poziomie.
Czy ma ona charakter ekstensywny?
Rozkład prawdopodobieństwa pojawiania się przyrostów ilości operacji
dominujących potrzebnych do sortowania kaŜdego kolejnego elementu
w procesie sortowania zbioru liczącego n = 32000 elementów. Tylko
w wybranych fragmentach rozkład ma charakter ekstensywny.
spadek
przyrost
Entropia Tsallis’a moŜe pozwolić na pełny opis dynamiki
ikey A[1...i-1] -
START
czas trwania
j
2
key
A[j]
i
j-1
ciąg juŜ posortowany
i>0
N
A[i]>key
SPRZĘśENIE ZWROTNE
IN
OUT
sortowanie
i > 0
T
A[i+1]
key
j
j+1
A[i+1]
A[i]
i
i-1
j>length(A)
T
A[i] > key
STOP
N
W proponowanym
podejściu dynamika
procesu sortowania
badana będzie dla
wybranych zbiorów
danych wejściowych.
Są to trajektorie
ułamkowego ruchu
Browna z dwoma
wartościami
wykładnika H.
Własności statystyczne
czasu Ŝycia wewnętrznej pętli algorytmu
Rozkład wartości
wykładnika prawa
potęgowego
Prawo potęgowe
Własności statystyczne
przyrostów ilości wywołań pętli
wewnętrznej algorytmu
Problem stacjonarności
Linie kwantylowe
zostały zbadane
takŜe dla wszystkich
pozostałych
analizowanych
szeregów
Własności statystyczne
przyrostów ilości wywołań pętli
wewnętrznej algorytmu
Problem rozkładu
prawdopodobieństwa
rozkład rzeczywisty
rozkład Gaussa
1E-3
p(t'(n))
1E-4
Ogony
rozkładu
w skali log-lin
zanikają
wolno
1E-5
1E-6
1E-7
-5000
spadek
0
t'(n)
5000
przyrost
Proces ma charakter subekstensywny
Własności statystyczne
przyrostów ilości wywołań pętli
wewnętrznej algorytmu
Problem
długoterminowości
Przeskalowany zasięg
JeŜeli zbiór danych
charakteryzował się
zaleŜnościami o charakterze
długoterminowym, to
dynamika pracy algorytmu
takŜe była nimi rządzona.
Nierównowaga
termodynamiczna w algorytmie
Diagramy bifurkacyjne
dla algorytmu
sortowania przez
wstawianie
ZaleŜności o charakterze
długoterminowym
w zadaniu sprawiają, Ŝe
bifurkacje mają
specyficzny charakter.
MoŜliwość praktycznego wykorzystania badań
predykcja
długoterminowa
algorytm
sterowanie dostępem
bufor
system
operacyjny
śledzenie stanu
dane wejściowe
modyfikacja
priorytetów
zasoby
sprzętowe
algorytm
dane wejściowe
Komputer
sterowany
programem
bufor
Predykcja zaleŜności o charakterze długoterminowym
Komputer
sterowany danymi
Dziękuję za uwagę

Podobne dokumenty