Lawina jak proces stochastyczny

16

Rozważ następujący proces:

Istnieje n pojemników ułożonych od góry do dołu. Początkowo każdy pojemnik zawiera jedną kulkę. Na każdym kroku my

  1. wybierz losowo piłkę równomiernie ib
  2. przenieś wszystkie kule z pojemnika zawierającego b do pojemnika poniżej. Jeśli był to już najniższy kosz, usuwamy kulki z procesu.

Ile kroków wymaga oczekiwania do zakończenia procesu, tj. Do momentu, gdy wszystkie n kulek zostaną usunięte z procesu? Czy zostało to wcześniej zbadane? Czy odpowiedź wynika łatwo ze znanych technik?

W najlepszym przypadku proces może zakończyć się po n krokach. W najgorszym przypadku może to zająć Θ(n2) kroków. Oba przypadki powinny być jednak bardzo mało prawdopodobne. Moje przypuszczenie jest takie, że wymaga Θ(nlogn) kroków i przeprowadziłem kilka eksperymentów, które wydają się to potwierdzać.

(Zauważ, że wybranie pojemnika równomiernie losowo jest zupełnie innym procesem, który oczywiście zajmie kroki do końca.)Θ(n2)

Matthias
źródło
Pytanie wygląda interesująco (choć nie znam odpowiedzi). Wydaje się to trudne z powodu niemonotoniczności; jeśli wszystkie n kulek znajdują się w górnym koszu, proces wyraźnie kończy się dokładnie n krokami.
Tsuyoshi Ito,

Odpowiedzi:

11

Nie do końca odpowiedź, ale obszerny komentarz do odpowiedzi Andrása.

Odpowiedź Andrása zawiera niezłą intuicję, choć nie sądzę, aby była to dokładna kalkulacja oczekiwanej liczby kroków. Myślę, że jest to dobre przybliżenie do odpowiedzi, ale wydaje się, że nie radzi sobie właściwie z przypadkami, w których pojemnik poniżej najwyższego zajętego pojemnika staje się pusty, zanim górny pojemnik zostanie opróżniony w dół. Mimo to może to być rozsądne przybliżenie (nie jestem pewien).

Jego obliczenia zawierają błąd, który wpływa na skalowanie. Wezmę dokładnie ten sam punkt początkowy, powtórzę i rozszerzę obliczenia.

Pomija współczynnik p wewnątrz sumy, ponieważ prawdopodobieństwo losowego wyboru prawidłowego bin wynosi zamiast1pn . W rezultacie mamy1n

n+p=1nk=0(k+1)pn(n-pn)k=n+p=1npnk=0(k+1)(n-pn)k=n+p=1npnn2)p2)=n+np=1n1/p=n(1+H.n)

gdzie jest n-tą liczbą harmonicznych . Aby zbliżyć H n , możemy po prostu zastąpić sumę całką: H nn + 1 1 1Hn=p=1n1/pHn. Zatem skalowanie wynosin(1+log(n+1))lub okołonlog(n+1). Chociaż to skalowanie nie pasuje dokładnie do skalowania problemu (patrz symulacja poniżej), jest ono prawie dokładnie o współczynniklog(2).Hn1n+11xdx=log(n+1)n(1+log(n+1))nlog(n+1)log(2)

Simulation vs theory

Czerwone kółka: Punkty danych z symulacji procesu uśrednione dla 10 000 przebiegów. Zielony: . Niebieski: n log ( n + 1 ) .nlog2(n+1)nlog(n+1)

Joe Fitzsimons
źródło
@Joe: Dobra robota! Interesujące byłoby teraz rygorystycznie pokazać, w jaki sposób czynnik pochodzi z powstawania luk. ln2
András Salamon,
@ András: Naprawdę nie mam dobrego przeczucia, czy jest to przybliżenie dźwiękowe, czy nie. @ Pomysł Piotra na tworzenie wiązek, które przesuwają się w dół, wydaje się, że powinien dać właściwy wyraz, zakładając, że równie prawdopodobne jest, że uformują się one w dowolnym pojemniku.
Joe Fitzsimons,
@Joe: Najwięcej piłek pozostanie izolowanych w prawie 1/3 przypadków. Rozważ 3 najlepsze piłki. Jeśli środkowy zostanie wybrany pierwszy (spośród tych 3), dołączy do trzeciego. Ci dwaj będą odtąd poruszać się dwa razy szybciej niż górna piłka. Odległość między nimi a górną piłką jest silnie tendencyjnym losowym marszem, a prawdopodobieństwo, że górna piłka złapie, jest ograniczone przez małą (ish) stałą (przybliżone 15%). Ale dobrą wiadomością jest to, że najlepsze logowane kule nie powinny mieć większego znaczenia. Jeśli wszystko inne zostanie wyczyszczone w krokach n \ log n, dodadzą tylko dodatkowe kroki n \ log n.
Matthias,
Oto dwie fabuły. Oba pokazują liczbę kroków podzieloną przez , dopóki wszystkie kule oprócz log n nie zostaną usunięte. Po pierwsze, piłki, które wypadają z systemu, można nadal zbierać (jak zaproponował András): tinyurl.com/2wg7a9y . Po drugie, kule wypadające z systemu nie są już zbierane: tinyurl.com/33b63pq . Jak widać, granice, które może dać pierwszy proces, są prawdopodobnie zbyt słabe. Może można to dostroić, biorąc pod uwagę fazy (jak gdzieś napisał Peter), w których zawsze zmniejszamy o połowę liczbę piłek w systemie? nlogn
Matthias,
@Matthias: Analiza przewidywanego czasu przy założeniu, że intuicja Petera jest poprawna, nie jest przeszkodą (przynajmniej z mojej perspektywy). Dla mnie udowodnienie, że ta intuicja jest w rzeczywistości rzetelnym odzwierciedleniem tego, co się dzieje, jest konieczne, chociaż podejrzewam, że jest to dobre przybliżenie.
Joe Fitzsimons,
9

Edycja: Pozostawiam tę odpowiedź taką, jaka jest (na razie), aby zilustrować niechlujny proces dowodzenia twierdzeń, coś, co zostało pominięte w opublikowanych artykułach. Podstawową intuicją jest to, że wystarczy skupić się na górnej piłce, która zamiata wszystko pod nią. Zobacz komentarze (w szczególności @Michael wskazujący, że mogą wystąpić luki) i późniejszą odpowiedź @ Joe na to, w jaki sposób błędy zostały zidentyfikowane i poprawione. Szczególnie podoba mi się użycie eksperymentów przez Joe, aby dwukrotnie sprawdzić, czy formuły są rozsądne.


n(1+π2/6)n

b1b2bnb1=nb2n1bini+1b1b2bn1,2,,n). Można je postrzegać jako osobne zdarzenia, jedno po drugim. Oczekiwana liczba kroków to wtedy

n+p=1nk=0k+1n(npn)k=n+p=1n11npk=1k(npn)k=n+p=1n11npn(np)/p2=n+np=1n11/p2(1+π2/6)n.

András Salamon
źródło
3
@Andras @Joe: Holy schmoley. If all the people asking the questions on this site took their questions as seriously as you take answering them, this would be the badassest url on the internet.
Aaron Sterling
1
@András: I'm trying to understand your statement "a sequence of balls will clear all the bins precisely if it contains a subsequence...". Maybe I've misunderstood something, but say we have four balls. If the sequence is 3,4,3,2,4 then it seems to satisfy your subsequence requirement, yet not all the bins have been cleared.
Michael
1
@András: If you want to show a reasonable upper bound, you have to use the fact that balls disappear from the process and are no longer picked. Otherwise, the top most ball is always only picked with probability 1/n and there is a good chance (maybe slightly less than 1/2) that this ball will stay isolated the whole time. For this ball, you will need n^2 steps.
Matthias
1
@Michael: I think you have identified the mistake. I'm assuming falsely that the top ball will move down even if there is a gap.
András Salamon
2
Here's my intuition. After a few steps, some clump of balls is going to be larger than any other clump of balls. At this point, the clump moves faster than everything else, clears everything below it and falls out of the system. This whole process should take O(n) or maybe O(nlogn) steps. This first clump is uniformly distributed in the line, so on average it takes half the balls with it. Now, we're left with a system of around n/2 balls, and another clump forms. So after around logn clumps, we're done.
Peter Shor