Alternatywne pojęcie złożoności oparte na luce między brutalną siłą a najlepszym algorytmem?


17

Zwykle wydajne algorytmy mają wielomianowe środowisko wykonawcze i wykładniczo dużą przestrzeń rozwiązania. Oznacza to, że problem musi być łatwy w dwóch aspektach: po pierwsze, problem można rozwiązać w wielomianowej liczbie kroków, a po drugie, przestrzeń rozwiązania musi być bardzo ustrukturyzowana, ponieważ środowisko wykonawcze jest tylko polilogarytmiczne pod względem liczby możliwych rozwiązań.

Czasami jednak te dwa pojęcia się różnią, a problem jest łatwy tylko w pierwszym tego słowa znaczeniu. Na przykład, powszechną techniką w algorytmach aproksymacyjnych i sparametryzowanej złożoności jest (z grubsza) udowodnienie, że przestrzeń rozwiązania można faktycznie ograniczyć do znacznie mniejszego rozmiaru niż naiwna definicja, a następnie użyć brutalnej siły, aby znaleźć najlepszą odpowiedź w tej ograniczonej przestrzeni . Jeśli możemy a priori ograniczyć się do, powiedzmy, n ^ 3 możliwych odpowiedzi, ale nadal musimy sprawdzić każdą z nich, to w pewnym sensie takie problemy są nadal „trudne”, ponieważ nie ma lepszego algorytmu niż brutalna siła.

I odwrotnie, jeśli mamy problem z podwójnie wykładniczą liczbą możliwych odpowiedzi, ale możemy go rozwiązać tylko w wykładniczym czasie, to chciałbym powiedzieć, że taki problem jest „łatwy” („ustrukturyzowany” może być lepszy słowo), ponieważ środowisko wykonawcze jest tylko logiem wielkości obszaru rozwiązania.

Czy ktoś zna jakieś dokumenty, które uważają coś w rodzaju twardości opartej na przepaści między wydajnym algorytmem a brutalną siłą lub twardością w stosunku do wielkości przestrzeni rozwiązania?

Odpowiedzi:


12

Jednym z problemów związanych z sformalizowaniem pytania jest to, że wyrażenie „przestrzeń rozwiązania dla problemu A” nie jest dobrze zdefiniowane. Definicja przestrzeni rozwiązania wymaga algorytmu weryfikującego , który przy danej instancji i rozwiązaniu kandydującym sprawdza, czy rozwiązanie jest poprawne. Następnie przestrzenią rozwiązania instancji wrt do weryfikatora jest zestaw rozwiązań kandydujących, dzięki którym dane wyjściowe weryfikatora są „poprawne”.

Weźmy na przykład problem SAT0: biorąc pod uwagę formułę boolowską, czy spełnia go przypisanie wszystkich zer? Ten problem występuje trywialnie w czasie wielomianowym, ale jego przestrzeń rozwiązania może się bardzo różnić, w zależności od używanego weryfikatora. Jeśli Twój weryfikator zignoruje rozwiązanie kandydujące i po prostu sprawdzi, czy wszystkie zera działają na instancji, wówczas „przestrzeń rozwiązania” dla dowolnej instancji SAT0 na tym weryfikatorze jest trywialna: wszystkie możliwe rozwiązania. Jeśli weryfikator sprawdzi, czy rozwiązanie kandydujące jest zadowalającym zadaniem, przestrzeń rozwiązania instancji SAT0 może być naprawdę złożona, prawdopodobnie tak złożona, jak przestrzeń rozwiązania dowolnej instancji SAT.

t(n,k)nknkO(2)kt(n,k))

O(2)kt(n,k))2)n

Artykuł pokazuje kilka interesujących konsekwencji ulepszenia w wyszukiwaniu brutalnej siły niektórych problemów. Nawet udoskonalenie w wyszukiwaniu metodą „brute-force” „przestrzeni rozwiązań wielomianowych” miałoby interesujące konsekwencje.


1
..

Jestem bardziej niż niechętny, by odnieść się do moich artykułów w odpowiedzi. Ale kiedy dokładnie pasuje do pytania, trudno się oprzeć ...
Ryan Williams

5

Jak poradziłbyś sobie z typowymi problemami z programowaniem dynamicznym? Często zdarza się, że przestrzeń rozwiązań optymalnych jest wielomianowo ograniczona, ale przestrzeń rozwiązań nie. Wydaje się więc, że „łatwym” w twoim znaczeniu, ponieważ czas działania jest logarytmiczny w przestrzeni rozwiązań, ale w twoim znaczeniu „trudny”, ponieważ działa „brutalnie” na wszystkie potencjalnie optymalne rozwiązania.


Istnieje wiele subtelności w definicjach, które należałoby wypracować, na przykład dokładnie, jakie algorytmy kwalifikują się jako brutalna siła. Prawdopodobnie spróbowałbym ograniczyć przestrzeń rozwiązania w następujący sposób: jeśli dla danego rozmiaru problemu możesz usunąć odpowiedź z rozważań bez patrzenia na dane, to nie ma jej w obszarze rozwiązania (co prawda, pozwala to na wiele różnych przestrzeni rozwiązania). Powiedziałbym, że byłbym zadowolony z odpowiedzi, która jest podobna duchem do mojego pytania, nawet jeśli różni się wieloma szczegółami.
Ian

3

Perspektywa wydaje się zakładać pewne rzeczy, takie jak skończoność przestrzeni rozwiązań.

Pomyśl na przykład o problemie generowania teselacji Voronoi z zestawu punktów wejściowych. Tutaj jest nieskończenie duża przestrzeń rozwiązania, ponieważ każdy punkt na krawędziach diagramu jest krotką liczb rzeczywistych. Jednak rozwiązanie można osiągnąć w O (n log (n)) w liczbie punktów wejściowych (dla płaszczyzny).


To prawda, że ​​niektóre problemy mogą nie pasować do tego środowiska. Chociaż w przypadku niektórych problemów z wyjściowymi liczbami rzeczywistymi można stworzyć skończoną przestrzeń, opisując dane wyjściowe algebraicznie w kategoriach danych wejściowych (np. Jako liniowe kombinacje punktów wejściowych). Nie znam się na algorytmach geometrycznych, w których zwykle spotykane są liczby rzeczywiste, więc nie jestem pewien, jak często i czy byłoby to możliwe.
Ian

1
Liczby rzeczywiste nie są jedynym sposobem na uzyskanie nieskończonych przestrzeni rozwiązań. Rozważ grę między Alice i Bobem. Alice wybiera liczbę całkowitą n. Bob zgaduje, a Alice mówi mu, czy jest wyższy, niższy lub równy jej sekretnej n. Bob ma skończoną strategię czasową na znalezienie n, ponieważ zawsze jest skończona. Zaczyna 0, a następnie wybiera dużą stałą c. Alice mówi mu, w którym kierunku jest jej n, a Bob zgadnie skręt, dopóki nie znajdzie dolnej i górnej granicy, w której binarnie szuka n. Z drugiej strony, przypuszczam, że można argumentować, że istnieje skończona przestrzeń rozwiązań w liczbie bitów n ...
Ross Snider

3

Powiązane są problemy dopuszczające algorytmy z opóźnieniem wielomianowym . Pierwsze rozwiązanie, a następnie każde kolejne, można wygenerować w czasie wielomianowym. Johnson, Yannakakis i Papdimitriou omawiają te ramy w kontekście innych możliwych luk (takich jak całkowity czas wielomianowy): O generowaniu wszystkich maksymalnych niezależnych zbiorów , listach przetwarzania informacji 27 , 119–123, 1988.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.