Problem z piłkami do koszy

Problem piłek do pojemników (lub zrównoważonych alokacji ) jest klasycznym problemem teorii prawdopodobieństwa , który ma wiele zastosowań w informatyce . Problem dotyczy m piłek i n pudełek (lub „pojemników”). Za każdym razem pojedyncza kula jest umieszczana w jednym z pojemników. Gdy wszystkie kule znajdą się w pojemnikach, patrzymy na liczbę piłek w każdym pojemniku; nazywamy ten numer obciążeniem pojemnika . Problem można modelować za pomocą rozkładu wielomianowego i może wymagać zadania pytania takiego jak: Jaka jest oczekiwana liczba pojemników z kulką w środku?

Oczywiście możliwe jest, aby ładunek był tak mały, jak m / n , umieszczając każdą kulkę w najmniej załadowanym pojemniku. Ciekawym przypadkiem jest sytuacja, gdy kosz jest wybierany losowo lub przynajmniej częściowo losowo. Potężny paradygmat „piłki do koszy” to „moc dwóch losowych wyborów”, w której każda kula wybiera dwa (lub więcej) losowe pojemniki i jest umieszczana w mniej obciążonym pojemniku. Ten paradygmat znalazł szerokie praktyczne zastosowania w emulacjach współdzielonej pamięci, wydajnych schematach mieszania, losowym równoważeniu obciążenia zadań na serwerach oraz routingu pakietów w równoległych sieciach i centrach danych.

Przydział losowy

Gdy pojemnik na każdą piłkę jest wybierany losowo, niezależnie od innych wyborów, maksymalne obciążenie może sięgać nawet . Jednak możliwe jest obliczenie ściślejszego ograniczenia, które zachodzi z dużym prawdopodobieństwem . „Wysokie prawdopodobieństwo” to prawdopodobieństwo , tj. Prawdopodobieństwo dąży do , gdy do nieskończoności

W przypadku maksymalne obciążenie wynosi z prawdopodobieństwem

.

wartości maksymalnego obciążenia, która Γ , gdzie jest odwrotnością funkcji gamma że .

Maksymalne obciążenie można również obliczyć dla i na przykład dla jest to dla to jest , z dużym prawdopodobieństwem.

prawdopodobieństwa dla małych jako za zdefiniowane w OEIS A208250.

Przydział częściowo losowy

Zamiast po prostu wybierać losowy pojemnik dla każdej piłki, można wybrać dwa lub więcej pojemników dla każdej piłki, a następnie umieścić piłkę w najmniej załadowanym pojemniku. Jest to kompromis pomiędzy alokacją deterministyczną, w której sprawdzane są wszystkie przedziały i wybierany jest najmniej obciążony przedział, a przydziałem całkowicie losowym, w którym wybierany jest jeden przedział bez sprawdzania pozostałych. Ten paradygmat często nazywany „siłą dwóch losowych wyborów” był badany w kilku poniższych ustawieniach.

W najprostszym przypadku, jeśli przydziela się do (z i dla każdej piłki wybiera się losowe pojemniki na każdym kroku, a następnie przydziela piłkę do najmniej załadowanego z wybranych pojemników (remisy zerwane arbitralnie), to z dużym prawdopodobieństwem maksymalne obciążenie wynosi:

co jest prawie wykładniczo mniejsze niż przy całkowicie losowej alokacji.

przypadek ( \ displaystyle

która jest ścisła do stałej addytywnej. ( granice utrzymują się z prawdopodobieństwem stałej dla , proces alokacji losowej daje tylko maksymalne obciążenie z dużym prawdopodobieństwem, więc poprawa między tymi dwoma procesami jest szczególnie widoczna dla dużych wartości .

Inne kluczowe warianty paradygmatu to „równoległe kulki do pojemników”, w których wybierają w których kulki mają wagę inną niż jednostkowa. oraz „piłki do koszy z usunięciami”, w których można dodawać i usuwać piłki.

Nieskończony strumień piłek

Zamiast po prostu umieszczać m piłek, można rozważyć nieskończony proces, w którym w każdym kroku dodawana jest pojedyncza kula i pobierana jedna kula, tak że liczba piłek pozostaje stała. Dla m = n , po wystarczająco długim czasie, z dużym prawdopodobieństwem, maksymalne obciążenie jest zbliżone do wersji skończonej, zarówno przy alokacji losowej, jak i przy alokacji częściowo losowej.

Powtarzające się piłki do koszy

W powtarzanym procesu są początkowo rozdzielane w w dowolny sposób, a następnie na każdym kolejnym etapie procesu w czasie dyskretnym z każdego wybierana jest jedna piłka niepusty pojemnik i ponownie przypisany do jednego z losowo. Kiedy wykazano, że z dużym prawdopodobieństwem proces zbiega się do konfiguracji z maksymalnym obciążeniem, po krokach

Aplikacje

Równoważenie obciążenia online : rozważ zestaw n identycznych komputerów. Jest n użytkowników, którzy potrzebują usług komputerowych. Użytkownicy nie są skoordynowani - każdy użytkownik przychodzi sam i wybiera, z którego komputera chce korzystać. Każdy użytkownik chciałby oczywiście wybrać najmniej obciążony komputer, ale wymaga to sprawdzenia obciążenia każdego komputera, co może zająć dużo czasu. Inną opcją jest losowy wybór komputera; prowadzi to z dużym prawdopodobieństwem do maksymalnego obciążenia . Możliwym kompromisem jest to, że użytkownik sprawdzi tylko dwa komputery i użyje mniej obciążonego z nich. Prowadzi to z dużym prawdopodobieństwem do znacznie mniejszego maksymalnego obciążenia .

Haszowanie : rozważ tablicę skrótów , w której wszystkie klucze zmapowane do tej samej lokalizacji są przechowywane na połączonej liście. Skuteczność dostępu do klucza zależy od długości jego listy. Jeśli użyjemy pojedynczej funkcji skrótu, która wybiera lokalizacje z jednakowym prawdopodobieństwem, z dużym prawdopodobieństwem najdłuższy łańcuch ma klucze. Możliwym ulepszeniem jest użycie dwóch funkcji skrótu i ​​umieszczenie każdego nowego klucza na krótszej z dwóch list. tylko elementy

Uczciwe krojenie tortu : rozważ problem stworzenia częściowo proporcjonalnego podziału heterogenicznego zasobu między , tak aby każda osoba otrzymała część zasobu, którą ta osoba ceni jako co najmniej sumy, gdzie jest wystarczająco dużą stałą Edmondsa -Pruhsa jest losowym algorytmem , którego analiza wykorzystuje argumenty „piłki do kosza”.

  1. ^ Oliveira, Rafael (20 maja 2021). „Wykład 4: Piłki i pojemniki” (PDF) .
  2. ^ a b c d   Mitzenmacher, Michael ; Richa, Andrea ; Sitaraman, Ramesh (lipiec 2001). „Siła dwóch przypadkowych wyborów: przegląd technik i wyników”. Podręcznik Randomized Computing . Kluwer Press. 1 : 255–305. CiteSeerX 10.1.1.62.6677 .
  3. ^   Kolchin, Valentin F. (1978). Przydziały losowe . Waszyngton: Winston [usw.] ISBN 978-0470993941 .
  4. ^   Kotz, Samuel; Johnsona, Normana Lloyda (1977). Modele urn i ich zastosowania . Nowy Jork, NY: John Wiley & Sons. ISBN 978-0471446309 .
  5. ^   Gonnet, Gaston H. (1981). „Oczekiwana długość najdłuższej sekwencji sondy podczas wyszukiwania kodu skrótu” . Dziennik Stowarzyszenia Maszyn Komputerowych . 28 (2): 289–304. doi : 10.1145/322248.322254 . S2CID 15483311 .
  6. ^ Devroye Luc (1985). „Oczekiwana długość najdłuższej sekwencji sondy do wyszukiwania wiadra, gdy rozkład nie jest jednorodny”. Dziennik algorytmów . 6 (1): 1–9. doi : 10.1016/0196-6774(85)90015-X .
  7. ^   Raab, Martin (1998). „ „ Piłki do pojemników ”- prosta i dokładna analiza” . Notatki z wykładów z informatyki . 1518 : 159-170. doi : 10.1007/3-540-49543-6_13 . ISBN 978-3-540-65142-0 .
  8. ^ a b Azar, Yossi; Broder, Andrzej Z.; Karlin, Anna R.; Upfal, Eli (1999). „Zrównoważone alokacje”. SIAM Journal o informatyce . 29 (1): 180–200. doi : 10.1137/s0097539795288490 .
  9. ^ Berenbrink, Petra; Czumaj, Artur; Steger, Angelika; Vöcking, Berthold (2006). „Zrównoważone alokacje: mocno obciążony przypadek”. SIAM Journal o informatyce . 35 (6): 180–200. doi : 10.1137/S009753970444435X .
  10. ^ Berenbrink, Petra; Czumaj, Artur; Englert, Maciej; Friedetzky, Tom; Nagel, Lars (2012). Zrównoważona alokacja wielokrotnego wyboru w (prawie) równoległym . OK. 2012, RANDOM 2012: Aproksymacja, randomizacja i optymalizacja kombinatoryczna. Algorytmy i techniki. s. 411–422. doi : 10.1007/978-3-642-32512-0_35 .
  11. ^ Talwar, Kunal; Udi, Wieder (2007). Zrównoważone alokacje: przypadek ważony . Materiały z 39. dorocznego sympozjum ACM poświęconego teorii informatyki (STOC). s. 256–265. doi : 10.1145/1250790.1250829 .
  12. ^ Berenbrink, Petra; Friedetzky, Tom; Zengjian, Hu; Russell, Martin (2005). O grach z ważonymi piłkami do koszy . STAC. s. 231–243. doi : 10.1007/978-3-540-31856-9_19 .
  13. ^ Peres, Yuval; Talwar, Kunal; Wieder, Udi (2015). Graficzne i _ Algorytmy struktur losowych . s. 760–775. doi : 10.1002/rsa.20558 .
  14. Bibliografia _ Fryz, Alan; Maggs, Bruce M.; Mitzenmacher, Michael; Richa, Andrea; Sitaraman, Ramesz; Upfal, Eli (1998). Na kulach i koszach z skreśleniami . Techniki randomizacji i aproksymacji w informatyce (Barcelona, ​​1998). s. 145–158. doi : 10.1007/3-540-49543-6_12 .
  15. ^   Becchetti, LucaBecchetti; Clementi, Andrea; Natale, Emanuele; Pasquale, Francesco; Posta, Gustavo (2015-06-13). „Samostabilizujące się powtarzające się kulki do pojemników” . Materiały z 27. Sympozjum ACM na temat równoległości w algorytmach i architekturach . SPAA '15. Portland, Oregon, USA: Association for Computing Machinery: 332–339. doi : 10.1145/2755573.2755584 . hdl : 11573/780594 . ISBN 978-1-4503-3588-1 .
  16. Bibliografia   _ Steger, Angelika (1998). Luby, Michał; Rolim, José DP; Serna, Maria (red.). „ „ Piłki do pojemników ” - prosta i dokładna analiza” . Techniki randomizacji i aproksymacji w informatyce . Notatki z wykładów z informatyki. Berlin, Heidelberg: Springer. 1518 : 159-170. doi : 10.1007/3-540-49543-6_13 . ISBN 978-3-540-49543-7 .
  17. ^   Karp, RM (1996). „Wydajna symulacja PRAM na maszynie z pamięcią rozproszoną”. Algorytmika . 16 (4–5): 517–542. doi : 10.1007/bf01940878 . S2CID 2535727 .
  18. Bibliografia    _ Pruhs, Kirk (2006). „Zrównoważone przydziały ciasta” (PDF) . 2006 47. doroczne sympozjum IEEE na temat podstaw informatyki (FOCS'06) : 623–634. doi : 10.1109/FOCS.2006.17 . ISBN 0-7695-2720-5 . S2CID 2091887 .