tło
Załóżmy, że mam dwie identyczne partie kulek. Każdy marmur może mieć jeden z kolorów , gdzie . Niech oznacza liczbę kulek koloru w każdej partii.
Niech będzie multiset reprezentujący jedną partię. W reprezentacji częstotliwości , może być zapisany jako .
Liczbę różnych podaje wielomian :
Pytanie
Czy istnieje skuteczny algorytm do generowania losowo dwóch rozproszonych, zaburzonych permutacji i dla ? (Rozkład powinien być jednolity.)
Permutacja jest rozproszony w przypadku każdego odrębnego elementu z , przypadki są rozmieszczone w przybliżeniu równomiernie .
Załóżmy na przykład, że .
- nie jest rozproszony
- jest rozproszony
Bardziej rygorystycznie:
- Jeśli , istnieje tylko jedno wystąpienie do „spacji” w , więc niech .i P Δ ( i ) = 0
- Inaczej, niech jest odległością pomiędzy przykład a przykład w w . Odejmij od niego oczekiwaną odległość między instancjami , definiując następujące elementy:
Jeśli jest równomiernie rozmieszczone w , to powinna wynosić zero lub być bardzo bliska zeru, jeśli .j j + 1 i P i δ ( i , j ) = d ( i , j ) - n
Teraz określić statystycznego do zmierzenia ile każda równomiernie rozstawione w . Nazywamy rozpraszanie jeśli jest bliskie zeru lub z grubsza . (Można wybrać próg specyficzny dla , aby było rozproszone, jeśli )
To ograniczenie przywołuje bardziej rygorystyczny problem planowania w czasie rzeczywistym, zwany problemem pinwheel z multiset (tak, że ) i gęstością . Celem jest zaplanowanie cyklicznej nieskończonej sekwencji tak, aby każda podsekwencja o długości zawierała co najmniej jedno wystąpienie . Innymi słowy, wykonalny harmonogram wymaga wszystkich ; Jeśli gęsta ( ), a i . Problem z mechanizmem Wiatraczek wydaje się być NP-zupełny.
Dwa permutacji i są niezrównoważoną jeśli jest derangement z ; to znaczy dla każdego indeksu .
Załóżmy na przykład, że .
- i nie są zaburzone
- i są zaburzone
Analiza eksploracyjna
Interesuje mnie rodzina multisets o i dla . W szczególności niech .
Prawdopodobieństwo, że dwie losowe permutacji i o są niezrównoważoną około 3%.
Można to obliczyć w następujący sposób, gdzie jest tym wielomianem Laguerre'a: Patrz tutaj dla wyjaśnienia.
Prawdopodobieństwo, że bezładny permutacji o jest rozproszony ustawienie dowolnego progu w przybliżeniu wynosi 0,01%, .
Poniżej znajduje się empiryczny wykres prawdopodobieństwa 100 000 próbek gdzie jest permutacją losową .
Przy średnich rozmiarach próbek .
Prawdopodobieństwo, że dwie losowe kombinacje są prawidłowe (zarówno rozproszone, jak i zaburzone) wynosi około .
Nieefektywne algorytmy
Popularny algorytm „szybki” do generowania przypadkowego zaburzenia zestawu jest oparty na odrzuceniu:
do P ← random_permutation ( D ) do momentu wymowy ( D , P ) zwróć P
która zajmuje około iteracji, ponieważ istnieje mniej możliwe zaburzeniami. Jednak algorytm losowy oparty na odrzuceniu nie byłby skuteczny w przypadku tego problemu, ponieważ przyjmowałby on kolejność iteracji.
W algorytmie stosowanym przez Sage'a przypadkowe wykolejenie zbioru wielokrotnego „powstaje poprzez wybranie losowego elementu z listy wszystkich możliwych odchyleń”. Jednak to również jest nieefektywne, ponieważ istnieją prawidłowe permutacje do wyliczenia, a poza tym do zrobienia tego potrzebny byłby algorytm.
Dalsze pytania
Jaka jest złożoność tego problemu? Czy można go sprowadzić do dowolnego znanego paradygmatu, takiego jak przepływ sieci, kolorowanie wykresów lub programowanie liniowe?