27
Time Hierarchies Time Hierarchies for for Heuristic Algorithms Heuristic Algorithms Konstantin Pervyshev Konstantin Pervyshev UCSD UCSD

Time Hierarchies for Heuristic Algorithms

  • Upload
    daisy

  • View
    39

  • Download
    0

Embed Size (px)

DESCRIPTION

Time Hierarchies for Heuristic Algorithms. Konstantin Pervyshev UCSD. Outline. Introduction known/unknown about time hierarchies & why heuristics One sketch time hierarchy for heuristics NP via error-correction. Introduction. Time Hierarchies. Problems having odd complexity - PowerPoint PPT Presentation

Citation preview

Page 1: Time Hierarchies  for  Heuristic Algorithms

Time HierarchiesTime Hierarchies for for

Heuristic Algorithms Heuristic Algorithms

Konstantin PervyshevKonstantin PervyshevUCSDUCSD

Page 2: Time Hierarchies  for  Heuristic Algorithms

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

Page 3: Time Hierarchies  for  Heuristic Algorithms

IntroductionIntroduction

Page 4: Time Hierarchies  for  Heuristic Algorithms

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)

Page 5: Time Hierarchies  for  Heuristic Algorithms

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

Page 6: Time Hierarchies  for  Heuristic Algorithms

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

Page 7: Time Hierarchies  for  Heuristic Algorithms

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

Page 8: Time Hierarchies  for  Heuristic Algorithms

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]

Page 9: Time Hierarchies  for  Heuristic Algorithms

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

Page 10: Time Hierarchies  for  Heuristic Algorithms

Scope of This TalkScope of This Talk

Slightly non-uniformSlightly non-uniformDONEDONE

HeuristicHeuristicTHIS WORKTHIS WORK

Time Hierarchies in Other Settings

Page 11: Time Hierarchies  for  Heuristic Algorithms

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)

Page 12: Time Hierarchies  for  Heuristic Algorithms

Our ApproachOur Approach(on the example of heuristic NP)(on the example of heuristic NP)

Page 13: Time Hierarchies  for  Heuristic Algorithms

Hierarchies for NPHierarchies for NPNPNP 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

Page 14: Time Hierarchies  for  Heuristic Algorithms

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

Page 15: Time Hierarchies  for  Heuristic Algorithms

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

Page 16: Time Hierarchies  for  Heuristic Algorithms

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. . . .

Page 17: Time Hierarchies  for  Heuristic Algorithms

Heuristic CaseHeuristic Caseweaker 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

Page 18: Time Hierarchies  for  Heuristic Algorithms

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. . . .

Page 19: Time Hierarchies  for  Heuristic Algorithms

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 ))

Page 20: Time Hierarchies  for  Heuristic Algorithms

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

Page 21: Time Hierarchies  for  Heuristic Algorithms

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””

Page 22: Time Hierarchies  for  Heuristic Algorithms

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.

Page 23: Time Hierarchies  for  Heuristic Algorithms

A few words about A few words about heuristic BPPheuristic BPP

heurheur1-1/n1-1/naaBPPBPPnot subset ofnot subset of

heurheur1/2+1/n1/2+1/na a BPTime[n]BPTime[n]

Page 24: Time Hierarchies  for  Heuristic Algorithms

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

Page 25: Time Hierarchies  for  Heuristic Algorithms

ResultsResults• NPNP

not subset ofnot subset ofheurheur1/2+1/n1/2+1/na a NTime[n]NTime[n]

• heurheur1-1/n1-1/na a AM/MA/BPPAM/MA/BPPnot subset ofnot subset of

heurheur1/2+1/n1/2+1/na a AM/MA/BPTime[n]AM/MA/BPTime[n]

Page 26: Time Hierarchies  for  Heuristic Algorithms

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

Page 27: Time Hierarchies  for  Heuristic Algorithms

Have a safe trip!Have a safe trip!

pervyshev @ cs.ucsd.edupervyshev @ cs.ucsd.edu