ANALIZA WSPÓŁCZYNNIKA STRATY AL- GORYTMÓW PAKOWANIA FIRST FIT ORAZ BEST FIT PRZY ŁADUNKACH O ROZKŁA- DZIE GAUSSA

Podobne dokumenty
Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych)

Aproksymacja diofantyczna

Metody Obliczeniowe w Nauce i Technice

Prawa wielkich liczb, centralne twierdzenia graniczne

Matematyka dyskretna dla informatyków

PRZYKŁAD ZASTOSOWANIA DOKŁADNEGO NIEPARAMETRYCZNEGO PRZEDZIAŁU UFNOŚCI DLA VaR. Wojciech Zieliński

dr Mariusz Grządziel 15,29 kwietnia 2014 Przestrzeń R k R k = R R... R k razy Elementy R k wektory;

Matematyka dyskretna. Andrzej Łachwa, UJ, /10

Z52: Algebra liniowa Zagadnienie: Zastosowania algebry liniowej Zadanie: Operatory różniczkowania, zagadnienie brzegowe.

1. Zbadać liniową niezależność funkcji x, 1, x, x 2 w przestrzeni liniowej funkcji ciągłych na przedziale [ 1, ).

Matematyczne Podstawy Informatyki

1 Macierz odwrotna metoda operacji elementarnych

Wykład z równań różnicowych

13. Równania różniczkowe - portrety fazowe

Indukcja. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Układy stochastyczne

Funkcje wymierne. Funkcja homograficzna. Równania i nierówności wymierne.

WIELOKRYTERIALNE PORZĄDKOWANIE METODĄ PROMETHEE ODPORNE NA ZMIANY WAG KRYTERIÓW

Zaawansowane metody numeryczne

B jest liniowo niezależny V = lin (B) 1. Układ pusty jest bazą przestrzeni trywialnej {θ}. a i v i = i I. b i v i, (a i b i ) v i = θ.

13 Układy równań liniowych

Algebra Boole a i jej zastosowania

Wykład Ćwiczenia Laboratorium Projekt Seminarium Liczba godzin zajęć zorganizowanych w

Teoretyczne podstawy informatyki

PROBLEM ROZMIESZCZENIA MASZYN LICZĄCYCH W DUŻYCH SYSTEMACH PRZEMYSŁOWYCH AUTOMATYCZNIE STEROWANYCH

Matematyka dyskretna. 1. Relacje

ZASTOSOWANIE RACHUNKU OPERATORÓW MIKUS- IŃSKIEGO W PEWNYCH ZAGADNIENIACH DYNAMIKI KONSTRUKCJI

1. R jest grupą abelową względem działania + (tzn. działanie jest łączne, przemienne, istnieje element neutralny oraz element odwrotny)

Planowanie eksperymentu 2 (k p) w 2 r blokach. Stanisław Jaworski, Wojciech Zieliński

Aproksymacja funkcji a regresja symboliczna

Sortowanie w czasie liniowym

Metoda określania pozycji wodnicy statków na podstawie pomiarów odległości statku od głowic laserowych

Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki

Technologie Informacyjne

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania

Zadanie 2. Obliczyć rangę dowolnego elementu zbioru uporządkowanego N 0 N 0, gdy porządek jest zdefiniowany następująco: (a, b) (c, d) (a c b d)

Liczby pierwsze rozmieszczenie. Liczby pierwsze rozmieszczenie

TTIC 31210: Advanced Natural Language Processing. Kevin Gimpel Spring Lecture 9: Inference in Structured Prediction

Seminarium IO. Zastosowanie metody PSO w Dynamic Vehicle Routing Problem (kontynuacja) Michał Okulewicz

Wykład 14. Elementy algebry macierzy

PODSTAWOWE ROZKŁADY PRAWDOPODOBIEŃSTWA. Piotr Wiącek

Prawdopodobieństwo i statystyka

Matematyka dyskretna

Wielomiany jednej zmiennej rzeczywistej algorytmy

Układy równań i nierówności liniowych

O geometrii semialgebraicznej

Indukcja matematyczna. Zasada minimum. Zastosowania.

Rozkład prędkości statków na torze wodnym Szczecin - Świnoujście

Elementy Modelowania Matematycznego Wykład 7 Programowanie nieliniowe i całkowitoliczbowe

Zadania o numerze 4 z zestawów licencjat 2014.

Zasada indukcji matematycznej

14a. Analiza zmiennych dyskretnych: ciągi liczbowe

IMIĘ NAZWISKO... grupa C... sala Egzamin ELiTM I

Generowanie ciągów pseudolosowych o zadanych rozkładach przykładowy raport

Metody numeryczne Wykład 4

Matematyka dyskretna

Programowanie celowe #1

Grupy. Permutacje 1. (G2) istnieje element jednostkowy (lub neutralny), tzn. taki element e G, że dla dowolnego a G zachodzi.

5. Algebra działania, grupy, grupy permutacji, pierścienie, ciała, pierścień wielomianów.

A i. i=1. i=1. i=1. i=1. W dalszej części skryptu będziemy mieli najczęściej do czynienia z miarami określonymi na rodzinach, które są σ - algebrami.

Wprowadzenie do teorii ekonometrii. Wykład 1 Warunkowa wartość oczekiwana i odwzorowanie liniowe

FORECASTING THE DISTRIBUTION OF AMOUNT OF UNEMPLOYED BY THE REGIONS

PRAWDOPODOBIEŃSTWO. ZMIENNA LOSOWA. TYPY ROZKŁADÓW

. : a 1,..., a n F. . a n Wówczas (F n, F, +, ) jest przestrzenią liniową, gdzie + oraz są działaniami zdefiniowanymi wzorami:

Dystrybucje, wiadomości wstępne (I)

1. Granice funkcji - wstępne definicje i obliczanie prostych granic

PROGRAMOWANIE DYNAMICZNE W ROZMYTYM OTOCZENIU DO STEROWANIA STATKIEM

Dystrybucje. Marcin Orchel. 1 Wstęp Dystrybucje Pochodna dystrybucyjna Przestrzenie... 5

W rachunku prawdopodobieństwa wyróżniamy dwie zasadnicze grupy rozkładów zmiennych losowych:

Funkcje. Oznaczenia i pojęcia wstępne. Elementy Logiki i Teorii Mnogości 2015/2016

Wykład 1 Próba i populacja. Estymacja parametrów z wykorzystaniem metody bootstrap

WYKŁAD 9 METODY ZMIENNEJ METRYKI

Finanse i Rachunkowość studia niestacjonarne Wprowadzenie do teorii ciągów liczbowych (treść wykładu z 21 grudnia 2014)

Rodzinę spełniającą trzeci warunek tylko dla sumy skończonej nazywamy ciałem (algebrą) w zbiorze X.

Pokazać, że wyżej zdefiniowana struktura algebraiczna jest przestrzenią wektorową nad ciałem

4.2 Analiza fourierowska(f1)

VII. Elementy teorii stabilności. Funkcja Lapunowa. 1. Stabilność w sensie Lapunowa.

1 Określenie pierścienia

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

zaznaczymy na osi liczbowej w ten sposób:

Zaawansowane metody numeryczne

Analiza matematyczna i algebra liniowa Macierze

9. Schematy aproksymacyjne

Matematyka dyskretna - wykład - część Podstawowe algorytmy kombinatoryczne

Podstawy metod probabilistycznych. dr Adam Kiersztyn

5. Analiza dyskryminacyjna: FLD, LDA, QDA

1.1 Definicja. 1.2 Przykład. 1.3 Definicja. Niech G oznacza dowolny, niepusty zbiór.

Sieci Mobilne i Bezprzewodowe laboratorium 2 Modelowanie zdarzeń dyskretnych

9.9 Algorytmy przeglądu

AUTOMATYZACJA PROCESÓW DYSKRETNYCH 2016

TEORETYCZNE PODSTAWY INFORMATYKI

TTIC 31210: Advanced Natural Language Processing. Kevin Gimpel Spring Lecture 8: Structured PredicCon 2

Prawdopodobieństwo i statystyka

EGZAMIN DYPLOMOWY, część II, Biomatematyka

Informatyka I stopień (I stopień / II stopień) ogólno akademicki (ogólno akademicki / praktyczny) podstawowy (podstawowy / kierunkowy / inny HES)

Metody numeryczne. Sformułowanie zagadnienia interpolacji

Matematyka dyskretna. Andrzej Łachwa, UJ, 2019 Zadania 1-100

Prawdopodobieństwo geometryczne

Przykładowe zadania na egzamin z matematyki - dr Anita Tlałka - 1

Transkrypt:

Zeszyty Naukowe WSInf Vol 9, Nr 2, 2010 Wojciech Horzelski 1, Dariusz Doliwa 1, Mariusz Frydrych 2 1 Uniwersytet Łódzki, Katedra Informatyki Stosowanej, Wyższa Szkoła Informatyki w Łodzi email: horzel@math.uni.lodz.pl, doliwa@math.uni.lodz.pl 2 Uniwersytet Łódzki, Katedra Metodyki Nauczania Matematyki, Wyższa Szkoła Informatyki w Łodzi email: frydrych@math.uni.lodz.pl ANALIZA WSPÓŁCZYNNIKA STRATY AL- GORYTMÓW PAKOWANIA FIRST FIT ORAZ BEST FIT PRZY ŁADUNKACH O ROZKŁA- DZIE GAUSSA Streszczenie Zadanie pakowania w klasycznym ujęciu polega na rozmieszczeniu listy ładunków L={a 1,a 2,,a n} o rozmiarach nieprzekraczających 1 w minimalnej ilości pojemników o rozmiarze jednostkowym, wymaga się przy tym, aby żaden z pojemników nie był przeładowany. Jest to zadanie z klasy problemów NP-trudnych. Do klasycznych algorytmów dla takiego problemu on-line należą metody First Fit oraz Best Fit. W pracy przedstawiono wyniki badań zachowania się współczynnika straty dla tych algorytmów przy założeniu, iż ładunki mają rozkład normalny na przedziale (0,1]. 1 Sformułowanie problemu Zadanie pakowania polega na rozmieszczeniu listy ładunków L = (a 1,, a n ), gdzie a i (0,1], w minimalnej ilości pojemników o rozmiarze 1. Wymaga się przy tym, aby suma zadań zapakowanych do każdego pojemnika nie przekraczała 1. Tak postawiony problem posiada różnorakie praktyczne zastosowania poczynając od logistycznych (np. optymalnego zapełnianie kontenerów) aż po zastosowania w sieciach komputerowych (równomierne obciążanie łączy w sieciach rozległych) [1]. DEFINICJA 1. Niech J będzie dowolnym skończonym podzbiorem zbioru liczb naturalnych i niech J oznacza moc tego zbioru. Oznaczmy L n = U J N J = n, I J oraz. 92

W. Orzelski, D. Doliwa, M. Frydrych Element L L nazywamy listą, jeżeli L L n to mówimy, że lista ma długość n i oznaczamy L = n. Jeżeli, to zbiór J nazywamy zbiorem indeksów listy L i oznaczamy D L, gdzie I=(0,1] Oznaczmy przez S L sumę wszystkich elementów listy: i D L Niech J k oznacza zbiór {1, 2,, k} N. L ( i) DEFINICJA 2. Niech B będzie dowolnym zbiorem skończonym k- B B elementowym rozbiciem zbioru B nazywamy funkcję: Pk : J k 2 spełniającą następujące warunki: 1. ( i ) Ø i J k P B k B B 2. P ( ) P (j) = Ø i, j Jk i j k i k P B i J k ( i ) = k 3. U B. Liczbę k nazywamy mocą rozbicia B P k. Oznaczmy przez podzbiór zbioru (2 B ) Jk składający się ze wszystkich k-elementowych rozbić zbioru B, zaś przez zbiór. Niech dalej oznacza zbiór, zaś zbiór. DEFINICJA 3. Algorytmem pakowania A nazywamy odwzorowanie A : L spełniające następujące warunki: 1. A(L) ; 2. j i A(L)(j) L( i) 1. J A(L) Wartość A(L) nazywamy rezultatem (wynikiem) działania algorytmu A dla listy L. Oznaczamy przez A zbiór wszystkich algorytmów pakowania. Ze względu na zastosowania praktyczne elementy listy L nazywać będziemy dalej zadaniami, natomiast zbiory otrzymane w wyniku rozbicia pojemnikami. Będziemy mówić też, że zadanie L(i) zostało zapakowane algorytmem A do j-ego pojemnika, jeżeli i A(L)(j). 93

Analiza współczynnika.. DEFINICJA 4. Niech A będzie algorytmem pakowania i niech. Poziomem pojemnika A(L)(j) nazywamy sumę elementów listy L, których indeksy należą do tego pojemnika i oznaczamy lev(a(l)(j)). Oznaczmy przez Sub(L) zbiór wszystkich podlist listy że D = J. L J L L. Zauważmy, DEFINICJA 5. Algorytm pakowania A nazywamy on-line, jeżeli dla dowolnej listy L L zachodzi: Zgodnie z powyższą definicją algorytm on-line pakuje elementy listy L zgodnie z kolejnością indeksów. DEFINICJA 6. Niech różnicę i oznaczamy ją WS A (L). A A. Stratą algorytmu pakowania A nazywamy A(L) - A(L) i = 1 lev(a(l))( i )) DEFINICJA 7. Niech A A. Współczynnikiem straty dla algorytmu pakowania nazywamy stosunek straty algorytmu doi ości wykorzystanych pojemników. i oznaczamy ją. 2 Algorytmy First Fit Oraz Best Fit Metoda First Fit (FF). W metodzie tej nie zamykamy pojemników, aż do zakończenia pakowania. Nowe zadanie umieszczane jest w pierwszym z pojemników, do którego się mieści [2]. Algorytm ten można zdefiniować poprzez indukcję względem długości pakowanej listy zadań L: 1. jeżeli L = 1, to FF(L) = D i FF(L)(1)= L L ; 94 2. jeżeli zdefiniowane jest działanie algorytmu dla list o długości n 1 i L = n, wtedy:

W. Orzelski, D. Doliwa, M. Frydrych niech L Sub(L) Č L = n - 1. n -1 n -1 Jeżeli min (lev(ff(l )( k))) + L(D \ D ) >1, n -1 L Ln -1 k J FF(L n -1 ) FF(L) = FF(Ln -1 to ) + 1 i oraz jeżeli ; to i jeśli to, oraz. Inaczej mówiąc, pakując zadanie szukamy wśród otwartych już pojemników takich, które mogą pomieścić to zadanie i wybieramy ten o najniższym indeksie. Jeżeli nie ma pojemników mogących pomieścić zadanie to otwierany jest nowy pojemnik, do którego pakowane jest rozpatrywane zadanie. Wszystkie pojemniki pozostają otwarte aż do wyczerpania się listy zadań. Algorytm Best Fit (BF) Zasada działania zbliżona jest do działania algorytmu First Fit. Różnica polega na tym, że Best Fit stara się wybrać ten z pojemników mieszczących element, który po dodaniu go będzie miał poziom zapakowania najbliższy jedności [2]. Dokładniej algorytm ten zdefiniujemy indukcyjnie ze względu na długość pakowanej listy zadań L: 1. jeżeli L = 1, to BF(L) = D L i BF(L)(1) = L; 2. jeżeli zdefiniowane jest działanie algorytmu dla list o długości n 1 i L = n, to: Niech 95

Analiza współczynnika.. Jeżeli to., i oraz jeżeli to ;, i jeśli jest takie, że to oraz. 3 Analiza straty algorytmu First Fit przy zadaniach o rozkładzie Gaussa Zachowanie się algorytmu First Fit zostało zbadane jedynie dla zadań o rozkładach dyskretnych[3] oraz dla zadań o rozkładzie jednostajnym na przedziale jednostkowym[2]. Niewiele wiadomo natomiast na temat zachowania się współczynnika straty dla innych ciągłych rozkładów. Do badania wybrano rozkład normalny, jako że w praktycznych zastosowaniach zadania najczęściej spotykamy zadania o takim właśnie rozkładzie. Zastosowano tutaj generator liczb pseudolosowych oparty o metodę biegunową - Monte-Carlo [4,5]. 96

W. Orzelski, D. Doliwa, M. Frydrych Badania zostały przeprowadzone dla list o ustalonej długości (prezentowane poniżej wyniki dotyczą list o długości 1000 elementów). Wartości straty oraz współczynnika straty dla list o ustalonej długości są funkcją wartości oczekiwanej dla rozkładu elementu. Okazuje się, że jego zmiany w zależności od wartości oczekiwanej rozkładu mają charakter liniowy. Rys. 1. Zależność straty algorytmu FF od wartości oczekiwanej rozkładu (lista o długości 10000 elementów, rozkład Gaussa) Zależność tę można przybliżyć funkcją liniową wartości oczekiwanej rozkładu (dokładnie y = 2,01 E + 525,77, przy R-kwadrat = 0.994). Analogicznie dla współczynnika straty mamy: Rys. 2. Zależność współczynnika straty algorytmu FF od wartości oczekiwanej rozkładu (lista o długości 10000 elementów, rozkład Gaussa) Jest to też zależność o charakterze liniowym, bliskim funkcji stałej (można ją aproksymować poprzez y = 0,0002 E + 0,1016, przy R- kwadrat = 0,98) 97

Analiza współczynnika.. Dla porównania przy rozkładzie trójkątnym podobna zależność ma charakter wielomiany piątego stopnia: y = 3E-06E 5 0.0006E 4 + 0.0481E 3 1.346E 2 + 21.593E + 268.25 (przy R-kwadrat = 0,9984) Rys. 3. Zależność straty algorytmu FF od wartości oczekiwanej rozkładu (lista o długości 10000 elementów, rozkład trójkątny) 4 Analiza straty algorytmu Best Fit przy zadaniach o rozkładzie Gaussa Podobnie jak w przypadku algorytmu First Fit zachowanie się algorytmu Best Fit dla list zadań o rozkładach innych niż jednostajny jest słabo zbadane. Pokazane zostało jedynie ograniczenie współczynnika straty dla rozkładów skośnych [6]. W praktycznych zadaniach spotyka się jednak najczęściej listy zadań rozkładzie normalnym. Współczynnik straty algorytmu Best Fit przy takim rozkładzie zadań jest kwadratowo zależny od zmian wartości oczekiwanej rozkładu (przy ustalonej długości listy L): Rys. 4. Zależność straty algorytmu BF od wartości oczekiwanej rozkładu (lista o długości 10000 elementów, rozkład Gaussa) 98

W. Orzelski, D. Doliwa, M. Frydrych Dokładnie funkcję tę można aproksymować poprzez: y = 0,0332E 2-0,9771E + 78,578 (przy R-kwadrat = 0.9904). Czyli dla niewielkich wartości oczekiwanych (do ok. 0.3) algorytm Best Fit zachowuje się bardzo stabilnie utrzymując straty na niskim poziomie. Wartości współczynnika straty również mogą zostać przybliżone wielomianem drugiego stopnia: y = -6E-06x 2 + 0,0002x + 0,9839 (przy R-kwadrat = 0,9872) Rys. 5. Zależność współczynnika straty algorytmu BF od wartości oczekiwanej rozkładu (lista o długości 10000 elementów, rozkład Gaussa) Podobnie jak w przypadku algorytmu First Fit warto porównać to zachowanie się z innym rozkładem o podobnym charakterze. Dla tego celu wybrano rozkład trójkątny ze zmienną wartością oczekiwaną: Rys. 6. Zależność straty algorytmu BF od wartości oczekiwanej rozkładu (lista o długości 10000 elementów, rozkład trójkątny) 99

Analiza współczynnika.. 5 Wnioski Przedstawione powyżej wyniki świadczą o stabilnym zachowaniu się współczynnika nadwyżki algorytmów First Fit oraz Best Fit dla list ładunków o rozkładzie normalnym na przedziale (0,1]. W metodzie First Fit współczynnik ten można opisać funkcją liniową wartości oczekiwanej wielkości ładunków, bliską funkcji stałej. Inaczej mówiąc metoda zachowuje się podobnie niezależnie od tego czy przeważać będą duże czy małe zadania. Inaczej jest w przypadku algorytmu Best Fit. Dla list z przewagą małych zadań (dla list o rozkładach z wartością oczekiwaną 0,35) współczynnik straty ma niemalże wartość stałą. Dla list o większych zadaniach metoda pakuje zadania coraz bardzie efektywnie (osiągając współczynniki straty na poziomie 0,96-0,95). Metoda Best Fit podobnie jak dla rozkładu jednostajnego okazuje się bardziej efektywna, okupione jest to oczywiście zwiększonym czasem wykonania procesu pakowania [2]. Literatura [1] Lee C., Lee D., A simple packing algorithm, Journal of the ACM 32, 1985, 562-575 [2] Hoffman E.G., Leuker G.S., Probabilistic Analysis of Packing and Partitioning Algorithms, John Wiley &Sons, New York 1991 [3] Chan, Wun-Tat; Lam, Tak-Wah; Wong, Prudence W. H. Dynamic bin packing of unit fractions items. Automata, languages and programming, 614--626 [4] Karg, Ch., Köbler J., Schuler R., The complexity of generating test instances. STACS 97 (Lübeck), 375--386, Lecture Notes in Comput. Sci., 1200, Springer, Berlin, 1997. [5] Knuth D. E., The Art of Computer Programming - Seminumerical Algorithms, Addison-Wesley 1997, 1998 [6] Kenyon C., Mitzenmacher, Michael Linear waste of best fit bin packing on skewed distributions. Probabilistic methods in combinatorial optimization. Random Structures Algorithms 20 (2002), no. 3, 441--464. Analysis of Algorithms for Bin Packing Problems, Journal of Algorithms 12 (1991), 189-203 100

W. Orzelski, D. Doliwa, M. Frydrych ANALYSIS OF THE LOSS RATE OF FIRST FIT AND BEST FIT PACKING ALGORITHMS BY CHARGES WITH GAUSS DISTRIBUTION Summary - The task of packing in the classic take consists in laying the list of L= cargoes out {and 1, and 2,, an} about not exceeding sizes 1 in the minimal number of containers about the individual size, they demand in addition that none of containers is overloaded. There is this assignment on the class of problems NP-trudnych. For such a problem on-line First Fit methods and Best Fit belong to classic algorithms. 101