time hierarchies for heuristic algorithms konstantin pervyshev ucsd

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

Post on 20-Dec-2015

227 views

Category:

Documents


2 download

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

IntroductionIntroduction

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)

Our ApproachOur Approach

(on the example of heuristic NP)(on the example of heuristic NP)

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

Have a safe trip!Have a safe trip!

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