Qual é a diferença entre TM quântica e TM não-determinística?


30

Eu estava passando pela discussão sobre a questão Como definir máquinas de Turing quânticas? e sinto que a MT quântica e a MT não - determinística são a mesma coisa. As respostas para a outra pergunta não tocam nisso. Esses dois modelos são iguais?

Se não,

  1. Quais são as diferenças entre quantum TM e NDTM?
  2. Existe algum cálculo que um NDTM faria mais rápido que o Quantum TM?
  3. Se esse for o caso, o quantum TM é um DTM, então por que há tanta confusão nessa tecnologia, já temos tantos DTM? Por que projetar um novo DTM no final?

1
"Se este for o caso, a quantum TM é um DTM" - De onde isso vem?
Raphael

Respostas:


20

Como um preâmbulo geral, QTMs, TMs e NTMs são coisas diferentes (tendo enormes liberdades com várias suposições não ditas).

Presumo que você saiba o que é uma Máquina de Turing.

  1. Um NTM é uma TM onde, em qualquer estado, com qualquer símbolo, a função de transição pode ter várias opções de ação que não são exatamente , ou seja , 0 ou mais que 1 (uma TM determinística deve ter exatamente uma ação para cada símbolo em cada estado, embora seja fácil lidar com o caso 0 ). Quando confrontado com uma situação em que há várias opções de transição, um MNT fará a escolha que, em última análise, o levará a um estado de aceitação, se essa opção existir. Por outro lado, um QTM é um modelo de computação quântica , conforme detalhado no segmento que você vinculou. É não1 0 010 0

    não determinístico, nem todos. Provavelmente, as principais diferenças de alto nível entre um QTM e um TM são que um QTM tem como estado uma combinação linear dos estados base (novamente, está tudo nesse outro encadeamento) e é probabilístico, isto é, a precisão de sua saída é limitado por uma probabilidade menor que (em termos gerais). Apenas para ser realmente claro sobre um ponto que captura muitas pessoas, o não determinismo não é aleatoriedade, não é paralelismo, é uma construção teórica que não tem nada a ver com nenhuma delas. 1

  2. A resposta completa para isso depende de alguns pressupostos teóricos da complexidade. Tomando um ponto de vista específico (que e N P P ), a resposta é sim. N P problemas -Complete pode ser resolvido por um MNT em tempo polinomial, e parece também que N P -completo B Q P = , de modo que não pode ser resolvido por um QTM em tempo polinomial. Novamente, tudo depende de como os cartões caem com uma variedade de classes de complexidade. Se acontecer que Q M A = BQMUMABQPNPPNPNP-completoBQP=

    então a resposta é não, por exemplo. QMUMA=BQP
  3. A primeira coisa a dizer aqui é ter cuidado com a confusão de TMs (de qualquer tipo) e computadores. Uma TM não é um computador, uma QTM não é um computador quântico. Cálculo do modelo de TMs (de qualquer tipo). O que um determinado computador pode fazer é governado por isso, mas isso é bem diferente de dizer que o que eu estou digitando é uma TM.

    Dito isto, se falamos de maneira vaga e preguiçosa, identificamos QTMs com computadores quânticos e TMs com computadores padrão, então (novamente sob certas premissas de complexidade), parece que os computadores quânticos podem executar rapidamente determinadas tarefas que parecem difíceis para computadores padrão (fatoração, logs discretos , um tipo realmente particular de pesquisa e algumas outras). No entanto, esses problemas não são conhecidos por serem difíceis no NPsentido -completo quer, parece computadores quânticos oferecem capacidades que estendem um computador normal, mas em uma direção diferente ao que seria necessário para resolver problemas -Complete rapidamente. NP

Mais uma vez, para ser bem claro, eu examinei muita complexidade computacional aqui. Se você realmente quiser entender como tudo se encaixa, precisará começar a se aprofundar na literatura.


Muito obrigado @LukeMathieson. Vou tentar digerir tudo e postar de volta todas as perguntas que eu possa receber.
bongubj

Ainda bem que pude ajudar. Obviamente, faltam muitos detalhes técnicos, na tentativa de entender o significado e a intuição. O artigo da Wikipedia sobre Turing Machines é bastante decente, para cobrir as coisas técnicas lá. O QTM é lamentável, mas o outro segmento é excelente de qualquer maneira. O material QTM, no entanto, pode ser um pouco obscuro, se você ainda não fez um curso sobre Hilbert Spaces ou similar.
Luke Mathieson

3
"não-determinismo não é aleatoriedade, não é paralelismo, é uma construção teórica que não tem nada a ver com nenhuma delas". - essa é provavelmente uma frase-chave aqui.
Raphael

13

Sobre o significado de não-determinismo

Há dois significados diferentes de "não determinismo" em questão aqui. A mecânica quântica é geralmente descrita como "não determinística", mas a palavra "não determinística" é usada de maneira especializada em ciência da computação teórica.

  1. Um significado, que se aplica à mecânica quântica, é simplesmente "não determinístico ". Geralmente, essa é uma maneira razoável de interpretar a palavra e, de fato, nem as máquinas de Turing quânticas nem as máquinas de Turing probabilísticas são determinísticas na maneira como resolvem problemas de decisão.

  2. Entretanto, ao descrever modelos de computação, não determinístico é usado especificamente para significar que a máquina pode (em certo sentido) fazer escolhas que não são determinadas por seu estado ou entrada, para obter um objetivo específico. Esse significado é usado em outro lugar na descrição de modelos de computação, como autômatos finitos não determinísticos .

Portanto, as máquinas quânticas de Turing são um modelo de computação não determinístico, mas diferente de uma " máquina de Turing não determinística ".

Máquinas de Turing não determinísticas

Uma máquina de Turing não determinística é uma máquina que pode explorar várias transições possíveis. A transição que ele faz em uma determinada etapa depende, mas não é determinada, pelo estado em que está e pelo símbolo que está lendo. Há duas maneiras pelas quais isso é comumente apresentado:

  • Especialmente para fins de definição da classe de complexidade NP , pode-se descrever a máquina como fazendo escolhas (ou suposições) em cada etapa, a fim de tentar alcançar um estado de aceitação. Se você pensar no que a máquina não determinística está fazendo ao explorar uma árvore de decisão, ela está procurando um caminho aceitável na árvore. Embora nenhum mecanismo descrito sugira como esse caminho deve ser encontrado, imaginamos que ele encontrará um caminho aceitável se houver apenas um.

  • Também é bastante comum dizer que uma máquina não-determinística explora todos os caminhos possíveis na árvore de decisão em paralelo e fornece uma resposta "sim" se algum deles for um caminho aceitável.

Tratamentos mais modernos do não-determinismo também consideram não apenas a existência, mas o número de caminhos de aceitação; e isso é adequado para a descrição de explorar todos os caminhos em paralelo. Podemos impor restrições extras, por exemplo, que todos os caminhos computacionais têm o mesmo comprimento (que a máquina sempre leva a mesma quantidade de tempo para realizar uma computação) e que cada caminho realiza uma adivinhação a cada etapa ou a cada segundo passo, mesmo que o palpite não é usado. Se fizermos isso, podemos formular modelos probabilísticos de computação, como máquinas de Turing aleatórias (motivando classes de complexidade como BPP ), em termos do númerode aceitar caminhos de uma máquina de Turing não determinística. Também podemos mudar isso e descrever máquinas de Turing não determinísticas em termos de computadores aleatórios que, de alguma forma, podem distinguir entre resultados que têm probabilidade zero daqueles que têm probabilidade diferente de zero .

Máquinas de Quantum Turing

A principal diferença entre uma máquina quântica de Turing e uma não-determinística é a seguinte: em vez de "escolher" não-deterministicamente uma única transição de duas ou mais em cada etapa, uma máquina quântica de Turing faz uma transição para uma superposição de uma ou mais transições possíveis. O estado completo da máquina é definido como um vetor unitário em um espaço vetorial complexo, definido por combinações lineares de estados base descritos pelos estados clássicos da fita, a posição da cabeça da máquina e o "estado interno" da cabeça da máquina . (Veja, por exemplo, página 9, Definição 3.2.2, da Teoria da Complexidade Quânticapara a descrição completa de como as máquinas quânticas de Turing fazem transições.) A condição sob a qual a máquina quântica de Turing aceita uma entrada também é mais restritiva e envolve inerentemente probabilidade, exigindo uma probabilidade substancial de observar o resultado correto para ter sucesso.

Como resultado, as máquinas quânticas de Turing diferem das máquinas não determinísticas, pois a maneira como fazem suas transições não é completamente não especificada. Mesmo que a transição "pareça misteriosa", também é o mesmo tipo de evolução com o tempo que nossa melhor teoria da matéria indica que acontece no mundo real. Embora seja comum descrever computadores quânticos como "explorando diferentes caminhos computacionais em paralelo", não é particularmente útil: as amplitudes nos diferentes caminhos significam que nem todos têm a mesma importância e, diferentemente das máquinas de Turing não determinísticas, não é suficiente ter amplitude diferente de zero em algum resultado; deve ser possível obter uma probabilidade muito grande de obter o resultado correto, como 2/3. (A classe de problemas BQPque uma máquina quântica de Turing pode resolver com eficiência requer uma lacuna de probabilidade do mesmo tipo que a BPP possui para o cálculo aleatório.) Além disso, muito em contraste com as máquinas de Turing não determinísticas, uma máquina quântica de Turing pode interferir entre si depois que se separam , o que é simplesmente impossível na formulação típica de uma máquina de Turing não determinística (e, em primeiro lugar, torna a descrição em termos de uma árvore de decisão menos útil).

Comparando os dois modelos

Não sabemos se uma dessas máquinas é mais poderosa que a outra; as diferentes maneiras pelas quais eles não são deterministas parecem diferentes um do outro e difíceis de comparar.

Quanto aos problemas que cada máquina pode resolver rapidamente, a outra não (até onde sabemos):

  • Não sabemos de que maneira uma máquina quântica de Turing poderia resolver rapidamente o problema de SATISFIABILIDADE . Uma máquina de Turing não determinística pode, facilmente.
  • O trabalho de Aaronson e Archipov ( A complexidade computacional da óptica linear ) sugere que é improvável que máquinas de Turing não determinísticas sejam capazes de simular com eficiência certas experiências de óptica linear que poderiam ser simuladas por uma máquina quântica de Turing.

Mas mesmo que alguém mostre como relacionar os dois tipos de máquina entre si - e mesmo no cenário extremamente improvável de alguém mostrar que BQP  =  NP (os problemas que uma máquina de Turing quântica e uma máquina de Turing não determinística) podem respectivamente resolver rapidamente ) - as duas máquinas que definem esses modelos de computação são bastante diferentes umas das outras.


Não precisa ter medo de discordar! Eu certamente escolhi uma abordagem simplificada para deixar claro que existem diferenças entre as diferentes máquinas. As únicas coisas que eu acrescentaria ao que você disse são que ainda mantenho que aleatoriedade não é a mesma que não-determinismo - você pode definir (por exemplo) BPP usando não-determinismo, mas também com condições muito específicas e pode defini-lo facilmente no mesmo espírito das máquinas determinísticas (algo que você não pode fazer por NP, NEXP etc., você precisa mudar para a verificação, em vez de calcular para isso).
Luke Mathieson

1
A segunda parte é que considero enganosa a concepção de não-determinismo como paralelismo (embora eu pensasse assim também). É uma concepção correta, desde que você tenha em mente que ela realmente não se relaciona a algo como paralelismo "real". Uma máquina não determinística simples pode simular efetivamente um número exponencial de máquinas determinísticas (desde que você se preocupe apenas em obter a resposta certa, sem olhar para todos os caminhos de computação, e a diferença entre NP e #P é bastante grande). Portanto, a ideia de verificar todos os caminhos em paralelo encobre as coisas.
Luke Mathieson

Espero que você tenha prazer em preencher os detalhes razoáveis, esses comentários são muito curtos! ;)
Luke Mathieson

@LukeMathieson: Na verdade, não tenho certeza do que você está recebendo com seus comentários, já que faço questão de distinguir 'não determinismo computacional' da aleatoriedade, descrevo claramente o tipo grosseiro de exploração em paralelo que uma máquina NP pode ser disse para fazer, e assim por diante. Você pode esclarecer o que acha que deve ser adicionado?
Niel de Beaudrap 17/07/2012

Ah, acho que nada precisa ser mudado no que você disse, estava apenas tentando (falhando?;)) Adicionar comentários que possam ajudar a apontar alguns aspectos interessantes do não-determinismo e suas relações com outras idéias computacionais.
Luke Mathieson
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.