Jaka jest złożoność tej gry?

10

To jest uogólnienie mojego poprzedniego pytania .

Niech będzie wielomianem czasie deterministyczny urządzenie, które może zadać pytania do jakiegoś oracle . Początkowo jest puste, ale można to zmienić po grze, która zostanie opisana poniżej. Niech będzie ciągiem znaków.MAAx

Rozważ następującą grę Alice and Bob. Początkowo Alice i Bob mają odpowiednio i dolarów. Alice chce a Bob chce .mAmBMA(x)=1MA(x)=0

Na każdym etapie gry gracz może dodać jakiś ciąg do ; kosztuje to dolara, gdzie jest funkcją obliczaną w czasie wielomianowym. Również gracz może przegapić swój krok.yAf(y)f:{0,1}N

Gra kończy się, jeśli obaj gracze wydadzą wszystkie pieniądze lub jeśli jakiś gracz opuści krok, gdy znajduje się na pozycji przegrywającej (co określa bieżąca wartość ).MA(x)

Pytanie: jest problem zdefiniowania zwycięzcę tej grze za dany jestM,f,x,mA,mB

EXPSPACE - wykonać zadanie?

Zauważ, że może poprosić (za przynależność do ) tylko ciągi długości wielomianu, więc nie ma sensu dla Alice lub Bob dodać więcej dłuższe ciągi do . Dlatego ten problem występuje w EXPSPACE . MAA

W moim poprzednim pytaniu dodanie każdego łańcucha do kosztuje jednego dolara (tj. ). Następnie (jak pokazał Lance Fortnow ) ta gra należy do EXPH, a nawet do PSPACE, jeśli . Af1mA=mB

Aleksiej Milovanov
źródło
Czy możesz wyjaśnić, dlaczego wprowadziłeś tę zmianę w problemie? Alicja może sprawdzić, czy może sobie pozwolić na zapłacenie za wszystkie łańcuchy w (zgodnie z odpowiedzią Lance'a na twój inny problem) w czasie wielomianowym. Jak to nie rozwiązuje natychmiast problemu? S
Stella Biderman
@StellaBiderman Alice rzeczywiście może to sprawdzić w czasie wielomianowym. Jeśli jednak nie ma wystarczającej ilości pieniędzy, to teraz nie oznacza to, że może ona wykonywać tylko kroki wielomianowe (jak to miało miejsce w poprzedniej grze).
Alexey Milovanov
Jeśli nie stać ją na , to czy może kiedykolwiek pokonać przeciwnika, który zawsze pomija swoją turę? Być może jest coś w konfiguracji gry, której nie rozumiem. S
Stella Biderman
1
@Stella Tak, ponieważ mogą to być inne ścieżki akceptacji. Np. Załóżmy, że jeśli , to M zatrzymuje się i akceptuje. W tym przypadku S = { x 1 } . Ale jeśli x 1 , następnie M może zapytać x 2 i akceptować, jeśli x 2 . W tym przypadku wystarczy, że Alicja ma wystarczającą liczbę spondulixów dla x 2 . x1AMS={x1}x1AMx2x2Ax2
domotorp

Odpowiedzi:

5

Powinno to być EXPSPACE-complete. Naszkicuję, jak osiągnąć wykładniczą liczbę alternatyw, bez ograniczania do tego problemu problemu z EXPSPACE, ale odtąd powinno to być łatwe do ukończenia.

Oznacz słowa w wyroczni po t zaokrągleniu o At , więc początkowo A0= . Oznaczają słowa odpytywany przez MAt przez Qt . Głównym obserwacja jest taka, że każdy, kto traci z At , można założyć, aby dodać coś od Qt do A . Jest tak, ponieważ w tej grze każdy ruch kosztuje pieniądze, chcemy się poruszać jak najmniej; nie ma sensu robić ruchu, dopóki nie wygramy. Ale oznacza to również, że jeśli tracimy, nie ma sensu dodawanie czegokolwiek spoza Qt .

Załóżmy dla uproszczenia, że M działa dokładnie dla 2n kroków, a dla kroków 2i oraz 2i+1 pyta słowo o długości dokładnie i . Funkcja kosztu f będzie po prostu 2i dla słów o długości i . Gra będzie taki, że Alice zawsze musi dodać nieparzystej długości słowa i Bob zawsze musi dodać nawet długość słowa A . Załóżmy, że n jest dziwne i początkowo Alice traci.

Budżety mA i mB zostaną ustawione tak, że może ona wybrać dokładnie jeden o długości n słów odpytywany przez MA0 do dodania do A . Ta gra sprawi, że będzie ona zwycięzcą, więc Bob będzie musiał się ruszyć. Ponownie ze względu na ograniczenia budżetowe, będzie musiał wybrać dokładnie jeden o długości n1 słowa na zapytania MA1 należy dodać do A . Po dodaniu któregokolwiek z nich, MA2 wyśle ​​zapytanie o dwie nowe n długości słów (te same, bez względu na to, jakie słowo Bob dodał doA ), a Bob wygra. Alice będzie zmuszona dodać dokładnie jedno z tych nowychsłów odługościn doA aby wygrać.

Gra toczy się w ten sposób, co można sobie wyobrazić jako podążanie za gałęziami pełnego binarnego drzewa głębokości n , chociaż w każdym rozgałęzionym węźle jeden z graczy (określony przez parzystość głębokości węzła) musi wykonać wybór o które to słowo, aby dodać do A . Po przejściu przez drzewo skończy im się budżet. Jeśli na którymś etapie gry jedno z nich zdecyduje się dodać jakieś słowo, które jest krótsze (np. Alicja o długości k<n słowa z Q0w pierwszym kroku), a jeśli inny gracz (w naszym przykładzie Bob) po prostu zagra zawsze najdłuższe słowo w drzewie binarnym, na końcu pozostanie mu trochę pieniędzy, a my stworzymy grę, aby mógł z tego skorzystać wygrać. (Pamiętaj, że Alice może również mieć trochę pieniędzy, ale Bob będzie miał więcej, więc projektujemy grę końcową, aby jeśli jeden z nich miał więcej pieniędzy, wtedy ten gracz może wygrać.)

W ten sposób Alice decyduje się na wykładniczo wiele par słów o nieparzystej długości, a Bob o wykładniczo wiele słów o parzystej długości, które jedna z każdej pary idzie do A , i dokonują tych wyborów na przemian.

domotorp
źródło
Dziękuję za Twoją odpowiedź. Zadałem ci kilka pytań przez e-mail.
Alexey Milovanov