time hierarchies for heuristic algorithms konstantin pervyshev ucsd
Post on 20-Dec-2015
227 views
TRANSCRIPT
Time HierarchiesTime Hierarchies for for
Heuristic Algorithms Heuristic Algorithms
Konstantin PervyshevKonstantin Pervyshev
UCSDUCSD
OutlineOutline
• IntroductionIntroduction– known/unknown about time hierarchiesknown/unknown about time hierarchies
& why heuristics& why heuristics
• One sketchOne sketch– time hierarchy for heuristics NPtime hierarchy for heuristics NP
via error-correctionvia error-correction
Time HierarchiesTime Hierarchies
• Problems having odd complexityProblems having odd complexity– O(nO(n100100) and not much less) and not much less
• Proven forProven for– any syntactic model (like P & NP)any syntactic model (like P & NP)– no semantic model (like BPP)no semantic model (like BPP)
Syntactic vs. SemanticSyntactic vs. Semantic
• Syntactic modelsSyntactic models– Syntactically correct machinesSyntactically correct machines– Examples: P, NP, coNP, ParityPExamples: P, NP, coNP, ParityP
• Semantic modelsSemantic models– Additional semantic constraintsAdditional semantic constraints– Examples: BPP, AM, UPExamples: BPP, AM, UP
Open QuestionOpen Question
• Time hierarchies for semantic modelsTime hierarchies for semantic models– probabilistic algorithms (BPP / RP / ZPP)probabilistic algorithms (BPP / RP / ZPP)– Arthur-Merlin & Merlin-Arthur games (AM / Arthur-Merlin & Merlin-Arthur games (AM /
MA)MA)– unambigous machines (UP)unambigous machines (UP)– other semantic classesother semantic classes
Non-Traditional SettingsNon-Traditional Settings
Slightly non-uniformSlightly non-uniformalgorithmsalgorithms[Barak’02][Barak’02]
HeuristicHeuristicalgorithmsalgorithms
[Fortnow,Santhanam’04][Fortnow,Santhanam’04]
Time Hierarchies in Other Settings
input x of length n input x of length n + (short) advice a+ (short) advice ann
make mistakes on make mistakes on δ(n)-fraction of inputsδ(n)-fraction of inputs
Time Hierarchies forTime Hierarchies for1-Bit Non-Uniform Algorithms1-Bit Non-Uniform Algorithms
• Syntactic modelsSyntactic models– any model/1any model/1
• Semantic modelsSemantic models– BPP/1BPP/1 & & BQP/1BQP/1 [Fortnow, [Fortnow,
Santhanam’04]Santhanam’04]– RP/1RP/1 [Fortnow, Santhanam, [Fortnow, Santhanam,
Trevisan’05]Trevisan’05]– any model/1any model/1 [van Melkebeek, P. ’06] [van Melkebeek, P. ’06]
Time Hierarchies forTime Hierarchies forHeuristic AlgorithmsHeuristic Algorithms
• Syntactic modelsSyntactic models– any model closed under complementany model closed under complement– UnknownUnknown: those that are not closed: those that are not closed
(think of (think of heurNPheurNP))
• Semantic modelsSemantic models– heurBPPheurBPP & & heurBQPheurBQP
[Fortnow, Santhanam’04][Fortnow, Santhanam’04]– UnknownUnknown: any other: any other
Scope of This TalkScope of This Talk
Slightly non-uniformSlightly non-uniformDONEDONE
HeuristicHeuristicTHIS WORKTHIS WORK
Time Hierarchies in Other Settings
Our Results:Our Results:More Time Hierarchies for More Time Hierarchies for HeuristicsHeuristics• Syntactic models:Syntactic models:
– any model closed under majorityany model closed under majority
(NP, co-NP, alternation classes)(NP, co-NP, alternation classes)
• Semantic models:Semantic models:– some more probabilistic modelssome more probabilistic models
(AM, MA, a stronger hierarchy for BPP)(AM, MA, a stronger hierarchy for BPP)
Hierarchies for NPHierarchies for NP
NPNP not subset of not subset of NTime[n]NTime[n]– poly-time poly-time NN vs. linear-time vs. linear-time MMii
– for some for some xx, , N(x) ≠ MN(x) ≠ Mii(x)(x)
NPNP not subset of not subset of heurheur1/2+1/n1/2+1/na a NTime[n]NTime[n]
– whatever whatever MMii, for some , for some nn, ,
PrPrx in {0,1}x in {0,1}nn [N(x) ≠ M [N(x) ≠ Mii(x)] > 1/2-1/n(x)] > 1/2-1/naa
Non-Heuristic Case:Non-Heuristic Case:ReviewReview
• Assume that for every Assume that for every xx, , N(x) = N(x) = MMii(x) (x)
• Construct Construct NN so that for some so that for some xx,,
N(x) ≠ MN(x) ≠ Mii(x) (x)
• Hence, a contradictionHence, a contradiction
Non-Heuristic Case:Non-Heuristic Case:ReviewReview
we wantwe wantN(xN(xnn) = b) = b
xxkk = “0…0” = “0…0” of length k of length k
xn xn+1 x2nx2n - 1xn+2 x2n - 2. . . .
b = ¬ Mb = ¬ Mii(x(xnn))
we canwe canN(xN(x22nn) = b) = b
Non-Heuristic Case:Non-Heuristic Case:ReviewReview
we needwe needN(xN(xkk) = N(x) = N(xk+1k+1))
MMii(x(xk+1k+1) = ) = N(xN(xk+1k+1))
(by assumption)(by assumption)
N(xN(xkk) = M) = Mii(x(xk+1k+1))(by construction)(by construction)
xn xn+1 x2nx2n - 1xn+2 x2n - 2. . . .
Heuristic CaseHeuristic Case
weaker assumptionweaker assumption
for any n, for any n,
PrPrx in {0,1}x in {0,1}nn [M [Mii(x) = N(x)] > (x) = N(x)] > 1/2+1/n1/2+1/naa
Transmission FailureTransmission Failure
we needwe needN(xN(xkk) = N(x) = N(xk+1k+1))
MMii(x(xk+1k+1) ) ?? N(x N(xk+1k+1))(by assumption)(by assumption)
N(xN(xkk) = M) = Mii(x(xk+1k+1))(by construction)(by construction)
xn xn+1 x2nx2n - 1xn+2 x2n - 2. . . .
Repairing the ChannelRepairing the Channel
• Question: can we repair the Question: can we repair the channel ?channel ?
Answer: Answer: yesyes, ,
use error-correction!use error-correction!
• Repetition code ( Repetition code ( b b … b b b b … b b ))
High-Level ViewHigh-Level View
we wantwe wantN(x) = bN(x) = bfor anyfor anyx x inin Y Ynn
YYkk = {0,1} = {0,1}kk
Yn Yn+1 Y2nY2n - 1Yn+2 Y2n - 2. . . .
b = ¬ maj b = ¬ maj x in Yx in Ynn {M{Mii(x)}(x)}
we canwe canN(x) = bN(x) = bfor anyfor anyx x inin Y Y22nn
One Step of TransmissionOne Step of Transmission
N(x) = bN(x) = bfor any for any xx in in YYk+1k+1
““codeword of codeword of bb””
maj maj x in Yx in Yk+1k+1 {M {Mii(x)} = b(x)} = b
““corrupted message”corrupted message”
N(x) = b N(x) = b for any for any xx in in YYkk
““recovered codeword of recovered codeword of bb””
Codeword RecoveryCodeword Recovery
maj maj x in Yx in Yk+1k+1 {M {Mii(x)} = b(x)} = b
““corrupted message”corrupted message”
N(x) = b N(x) = b (almost)(almost) for any for any xx in in YYkk
““recovered codeword of recovered codeword of bb””
Expanders
Q.E.D.
A few words about A few words about heuristic BPPheuristic BPP
heurheur1-1/n1-1/naaBPPBPP
not subset ofnot subset of
heurheur1/2+1/n1/2+1/na a BPTime[n]BPTime[n]
Heuristic Heuristic BPPBPP
• More easy:More easy:
compute majority by estimatingcompute majority by estimating
θ ≈ θ ≈ PrPrx in Yx in Yk+1k+1 [M [Mii(x) = 1](x) = 1]
& comparing θ to a threshold ½& comparing θ to a threshold ½
• More difficult:More difficult:
NN should be semantically correct; should be semantically correct;
on different inputs, use different thresholdson different inputs, use different thresholds
ResultsResults
• NPNP
not subset ofnot subset of
heurheur1/2+1/n1/2+1/na a NTime[n]NTime[n]
• heurheur1-1/n1-1/na a AM/MA/BPPAM/MA/BPP
not subset ofnot subset of
heurheur1/2+1/n1/2+1/na a AM/MA/BPTime[n]AM/MA/BPTime[n]
Open QuestionsOpen Questions
• Time hierarchies for heuristic Time hierarchies for heuristic RP/ZPPRP/ZPP
• heurheur1-ε 1-ε NP NP vs. vs. heurheur½½ NTime[n] NTime[n] &&
heurheur1-ε 1-ε BPP BPP vs. vs. heurheur½½ BPTime[n]BPTime[n]
• Time hierarchies for non-heuristic Time hierarchies for non-heuristic semantic modelssemantic models