Przeskocz do treści

Delta mi!

Jak zaparkować samochód?

Aleksander Horawa i Krzysztof Kapulkin

o artykule ...

  • Publikacja w Delcie: luty 2011
  • Publikacja elektroniczna: 16-02-2011
  • Autor: Aleksander Horawa
    Afiliacja: uczeń, I Społeczne LO z Maturą Międzynarodową w Warszawie
    Autor: Krzysztof Kapulkin
    Afiliacja: doktorant, Department of Mathematics, University of Pittsburgh, Department of Philosophy, Carnegie Mellon University

Rozważmy następujący

Problem. Na pewnym parkingu znajduje się math miejsc, ustawionych w rzędzie, ponumerowanych liczbami naturalnymi math. Każdy z parkujących tam math kierowców ma swoje ulubione miejsce: dla math-tego kierowcy niech będzie to miejsce o numerze math, przy czym dla różnych kierowców miejsca te nie muszą być różne. Kierowcy przyjeżdżają kolejno na parking: kiedy math-ty kierowca wjeżdża na parking, jedzie aż do swojego ulubionego miejsca, a następnie, jeśli jest wolne, parkuje tam, jeśli zaś jest zajęte, parkuje na następnym wolnym miejscu. Jeśli wszystkie następne miejsca są zajęte, odjeżdża. Spróbujemy określić liczbę wszystkich takich ciągów preferencji math, że wszystkim kierowcom uda się zaparkować swoje samochody.

Ciąg math o wyrazach w zbiorze math będziemy nazywać funkcją parkingową długości  math, jeśli wszystkim kierowcom uda się zaparkować samochody.

Na początek zobaczmy, ile wynosi liczba funkcji parkingowych długości  math dla mathmath. Mamy mianowicie:

(1)
dla math trzy takie ciągi: 11, 12, 21,
(2)
dla math szesnaście takich ciągów: 111, 112, 121, 211, 113, 131, 311, 122, 212, 221, 123, 132, 213, 231, 312, 321.

Problem wyznaczenia wszystkich funkcji parkingowych długości math został rozwiązany przez Pyke’a w 1959 roku oraz niezależnie przez Konheima i Weissa w 1966 roku. Okazuje się mianowicie, że zachodzi następujące

Twierdzenie. Liczba wszystkich funkcji parkingowych długości  math wynosi math

Dowód. Zmodyfikujmy nieco nasz problem: na początku parkingu (tj. przed miejscem o numerze  math) dodajemy miejsce o numerze  math. Ponadto pozwalamy kierowcom, którym nie udało się zaparkować zgodnie ze starymi regułami, przejechać przez parking po raz drugi, począwszy od miejsca  math, aż do pierwszego wolnego miejsca.

Oczywiście, teraz wszystkim kierowcom uda się zaparkować samochody, a jedno miejsce pozostanie wolne. Łatwo zauważyć, że ciąg math jest funkcją parkingową wtedy i tylko wtedy, gdy po zaparkowaniu samochodów przez wszystkich kierowców miejsce  math pozostanie wolne.

Niech math będzie dowolnym ciągiem o wyrazach w zbiorze math. Jeśli zgodnie z tym ciągiem math-ty kierowca zaparkuje na miejscu  math, to (dla math) zgodnie z ciągiem

display-math

(oczywiście modulo math) zaparkuje na miejscu math.

Dla każdego ciągu math o wyrazach ze zbioru od 1 do  math rozważmy zbiór:

display-math

Każdy taki ciąg wyznacza math-elementowy podzbiór zbioru math – zbiór tych miejsc, na których zaparkują kierowcy. Odwrotnie: każdy taki podzbiór jest wyznaczony przez pewien ciąg postaci math. Oczywiście, tylko jeden math-elementowy podzbiór zbioru math nie zawiera liczby  math, a zatem tylko jeden ciąg z powyższego zbioru jest funkcją parkingową.

Suma wszystkich zbiorów math jest zbiorem wszystkich ciągów długości  math o wyrazach ze zbioru math. Liczba takich ciągów wynosi math. Zatem liczba funkcji parkingowych długości  math musi być równa

display-math


Funkcje parkingowe, o których mowa w powyższym twierdzeniu, znalazły szereg zastosowań w kombinatoryce, a w szczególności w teorii grafów. Jako przykład można przytoczyć twierdzenie Sylvestera, Borchardta i Cayleya mówiące o tym, że liczba wszystkich lasów ukorzenionych o  math ponumerowanych wierzchołkach jest równa liczbie funkcji parkingowych długości  math.

Czytelnik może w charakterze prostego ćwiczenia spróbować wykazać, że liczba niemalejących funkcji parkingowych wynosi dokładnie

display-math

Na koniec powiedzmy, że liczby tej postaci, zwane liczbami Catalana, występują w wielu miejscach w bardzo różnych dziedzinach matematyki. Kombinatorycznie liczby Catalana można zdefiniować na ponad math różnych sposobów. Dla przykładu, liczby Catalana to: liczba poprawnych nawiasowań przy użyciu math par nawiasów, liczba ciągów zero-jedynkowych zdominowanych przez  math, liczba triangulacji math-kąta wypukłego. Ale to już zupełnie inna opowieść.