Noções básicas sobre a computação quântica

A computação quântica mantém a promessa de resolver alguns dos maiores desafios do nosso planeta - nas áreas de meio ambiente, agricultura, saúde, energia, clima, ciência de materiais e muito mais. Para alguns desses problemas, a computação clássica é cada vez mais desafiada à medida que o tamanho do sistema cresce. Quando projetados para dimensionar, os sistemas quânticos provavelmente terão recursos que excedem os dos supercomputadores mais poderosos de hoje. À medida que a comunidade global de pesquisadores quânticos, cientistas, engenheiros e líderes empresariais colaboram para avançar o ecossistema quântico, esperamos ver o impacto quântico acelerar em todos os setores.

O Azure Quantum agora é a capacidade de misturar computação clássica e quântica e desbloquear uma nova geração de algoritmos híbridos, colocando a pesquisa e a experimentação com a geração atual de computadores quânticos em uma fase nova e emocionante. O modelo híbrido integrado permite que você escreva seu programa quântico para tomar decisões em tempo real com base em medidas de médio circuito enquanto os qubits permanecem ativos. Para obter mais informações, consulte Computação quântica híbrida.

Para obter mais informações sobre os iniciantes e a motivação da computação quântica, consulte histórico e contexto sobre a computação quântica.

O Azure Quantum é um ecossistema aberto para criar soluções de computação quântica em uma seleção diversificada do hardware quântica atual e oferece flexibilidade para usar suas ferramentas de desenvolvimento preferenciais com suporte para Cirq, Qiskit e Q#. Você pode usar a já conhecida e confiável plataforma do Azure para aprender a desenvolver algoritmos quânticos e como programá-los e executá-los em hardware real de vários provedores.

Saiba como criar um workspace do Azure Quantum e começar a enviar seus programas quânticos em hardware quânticos reais. Pela primeira vez, os usuários receberão automaticamente créditos gratuitos do Azure Quantum para uso com cada provedor de hardware quântico participante (US$ 500 cada) ao criar seu workspace. Se precisar de mais créditos, você poderá se inscrever no programa de créditos do Azure Quantum.

Dica

Avaliação gratuita. Se você não tiver uma assinatura do Azure, poderá criar uma conta gratuita do Azure (confira contas gratuitas do Azure para alunos).

Para que a computação quântica e o Azure Quantum podem ser usados?

Um computador quântico não é um supercomputador que pode fazer tudo mais rapidamente. Na verdade, um dos objetivos da pesquisa de computação quântica é estudar quais problemas podem ser resolvidos por um computador quântico mais rápido do que um computador clássico e quão grande a aceleração pode ser.

Os computadores quânticos se dão excepcionalmente bem com problemas que exigem o cálculo de um grande número de combinações possíveis. Esses tipos de problemas podem ser encontrados em muitas áreas, como simulação quântica, criptografia, aprendizado de máquina quântico e problemas de pesquisa.

Para obter as informações mais recentes sobre a pesquisa de computação quântica da Microsoft, confira a página de Computação Quântica do Microsoft Research.

Estimativa de recursos

Os computadores quânticos disponíveis hoje estão habilitando experimentos e pesquisas interessantes, mas não conseguem acelerar os cálculos necessários para resolver problemas do mundo real. Enquanto o setor aguarda os avanços de hardware, os inovadores de software quântico estão ansiosos para progredir e se preparar para um futuro quântico. Criar algoritmos hoje que eventualmente serão executados nos computadores quânticos dimensionados tolerantes a falhas de amanhã é uma tarefa assustadora. Esses inovadores enfrentam perguntas como quais recursos de hardware são necessários? Quantos qubits físicos e lógicos são necessários e que tipo? Quanto tempo é o tempo de execução?

Você pode usar o Avaliador de Recursos do Azure Quantum para ajudar a responder a essas perguntas. Como resultado, você poderá refinar seus algoritmos e criar soluções que aproveitam computadores quânticos dimensionados quando eles ficam disponíveis.

Para começar, consulte Executar sua primeira estimativa de recurso.

Saiba mais sobre como avaliar os requisitos para dimensionar a vantagem quântica prática usando o Avaliador de Recursos do Azure Quantum em arXiv:2211.07629.

Simulação quântica

A mecânica quântica é o "sistema operacional" subjacente de nosso universo. Ela descreve como se comportam os elementos constitutivos essenciais da natureza. Os comportamentos da natureza, como reações químicas, reações biológicas e formações de material, geralmente envolvem interações quânticas de muitos corpos. Para simular sistemas mecânicos quânticos intrinsecamente, como moléculas, a computação quântica é promissora, pois qubits (bits quânticos) podem ser usados para representar os estados naturais em questão. Exemplos de sistemas quânticos que podemos modelar incluem fotossíntese, supercondutividade e formações moleculares complexas.

O Quantum Development Kit (QDK) vem com a biblioteca de química quântica para simular problemas de estrutura eletrônica e dinâmica quântica em um computador quântico. Um exemplo dessas simulações é a simples estimativa de energia molecular do estado terrestre de uma molécula. Esse e mais exemplos do QDK e do Azure Quantum podem ser encontrados nos exemplos de código.

Aumentos de velocidade quânticos

Uma das metas da pesquisa de computação quântica é analisar quais problemas podem ser resolvidos mais rápido por um computador quântico do que por um computador clássico e de quanto pode ser o aumento na velocidade. Dois exemplos conhecidos são o algoritmo de Grover e o algoritmo de Shor, que produzem uma velocidade polinomial e exponencial, respectivamente, sobre seus equivalentes clássicos.

O algoritmo de Shor em execução em um computador quântico escalonável poderia interromper esquemas de criptografia clássicos, como o esquema Rivest–Shamir–Adleman (RSA), que é amplamente usado no comércio eletrônico para a transmissão segura de dados. Esse esquema é baseado na dificuldade prática de fatorar números primos usando algoritmos clássicos. A criptografia quântica promete a segurança das informações aproveitando a física básica em vez de suposições de complexidade.

Como o algoritmo de Shor para fatoração, o problema de mudança oculta é uma fonte natural de problemas para os quais um computador quântico tem uma vantagem exponencial sobre os algoritmos clássicos comuns. Isso pode ajudar a resolver problemas de desconvolução e permitir que encontremos padrões com eficiência em conjuntos de dados complexos. O que acontece é que um computador quântico pode, em princípio, computar convoluções em alta velocidade, o que, por sua vez, se baseia na capacidade do computador quântico de calcular transformações Fourier de forma extremamente rápida. Na galeria de exemplos do workspace do Azure Quantum, você encontrará um exemplo de notebook Jupyter de deslocamentos ocultos (é necessária uma conta do Azure).

O algoritmo de Glover acelera drasticamente a solução para pesquisas de dados não estruturados, executando a pesquisa em menos etapas do que qualquer algoritmo clássico. Na verdade, qualquer problema que permita verificar se um determinado valor $x$ é uma solução válida (um "problema sim ou não") pode ser formulado em termos do problema de pesquisa. Estes são alguns exemplos:

  • Problema de satisfatibilidade booliana: o conjunto de valores boolianos $x$ é uma interpretação (uma atribuição de valores a variáveis) que satisfaz a fórmula booleana fornecida?
  • Problema do agente de viagens: $x$ descreve o trajeto mais curto possível conectando todas as cidades?
  • Problema de pesquisa de banco de dados: a tabela do banco de dados contém um registro $x$?
  • Problema de fatoração de inteiro: o número fixo $N$ é divisível pelo número $x$?

Para obter uma implementação prática do algoritmo de Grover para resolver problemas matemáticos, observe o notebook Jupyter de Pesquisa do Grover na galeria de exemplo do workspace do Azure Quantum (é necessária uma conta do Azure) ou consulte este tutorial para implementar o algoritmo de pesquisa de Grover.

Para obter mais exemplos de algoritmo quântico, consulte os exemplos de código.

Quantum machine learning

O machine learning em computadores clássicos está revolucionando o mundo da ciência e dos negócios. No entanto, o alto custo computacional do treinamento dos modelos impede o desenvolvimento e o escopo do campo. A área de machine learning quântico explora como desenvolver e implementar um software quântico que permita um machine learning executado mais rapidamente comparado aos computadores clássicos.

O Quantum Development Kit (QDK) vem com a biblioteca de machine learning quântico que oferece a capacidade de executar experimentos de machine learning híbrido quântico-clássico. A biblioteca inclui amostras e tutoriais e fornece as ferramentas necessárias para implementar um novo algoritmo quântico-clássico híbrido, o classificador quântico centrado em circuito, para resolver problemas de classificação supervisionados.

Como a computação quântica resolve problemas?

Os computadores quânticos são dispositivos mecânicos quânticos controláveis que usam as propriedades da física quântica para realizar cálculos. Para algumas tarefas computacionais, a computação quântica fornece aumentos de velocidade exponenciais. Eles são possíveis graças a três fenômenos da mecânica quântica: superposição, interferência e emaranhamento.

Superposição

Imagine que você esteja fazendo exercícios físicos na sua sala de estar. Você gira todo o corpo para a esquerda e, em seguida, para a direita. Agora, você gira para a esquerda e para a direita ao mesmo tempo. Você não pode fazer isso (sem se dividir em dois, pelo menos). Obviamente, você não pode estar nesses dois estados ao mesmo tempo; não é possível estar voltado para a esquerda e para a direita ao mesmo tempo.

No entanto, se você for uma partícula quântica, poderá haver uma certa probabilidade de estar voltado para a esquerda E uma certa probabilidade de estar voltado para a direita, devido a um fenômeno conhecido como superposição (também conhecido como coerência).

Assim como os bits são as unidades fundamentais de informações na computação clássica, os qubits são as unidades fundamentais de informações na computação quântica. Embora um bit, ou dígito binário, possa ter valor 0 ou 1, um qubit pode ter um valor que seja 0, 1 ou uma sobreposição quântica de 0 e 1.

Diferentemente das partículas clássicas, se dois estados $A$ e $B$ forem estados quânticos válidos de uma partícula quântica, qualquer combinação linear dos estados também será um estado quântico válido: $\text{qubit state}=\alpha A + \beta B$. Essa combinação linear de estados quânticos $A$ e $B$ é chamada de sobreposição. Aqui, $\alpha$ e $\beta$ são as amplitudes de probabilidade de $A$ e $B$, respectivamente, de modo que $|\alpha|^{2} + |\beta|^{2} = 1$.

Somente sistemas quânticos, como circuitos supercondutores, elétrons ou íons, podem existir nos estados de sobreposição que possibilitam o poder da computação quântica. Uma partícula quântica, como a de um elétron, tem sua própria propriedade "voltada para a esquerda ou voltada para a direita", especificamente rotacionar, que pode ser para cima ou para baixo, de modo que o estado quântico de um elétron é a sobreposição de "rotacionar para cima" e "rotacionar para baixo".

Em geral, e para tornar isso mais parecido com a computação binária clássica, se um sistema quântico puder estar em dois estados quânticos, esses estados serão referidos como estado 0 e estado 1.

Qubits e probabilidade

Os computadores clássicos armazenam e processam informações em bits, que podem ter um estado igual a 1 ou 0, mas nunca os dois. O equivalente na computação quântica é o qubit. Um qubit é qualquer sistema quântico que possa estar em uma sobreposição de dois estados quânticos, 0 e 1. Cada estado quântico possível tem uma amplitude de probabilidade associada. Somente depois de medir um qubit, seu estado é recolhido para o estado 0 ou 1, dependendo da probabilidade associada. Portanto, um dos possíveis estados é obtido com uma determinada probabilidade.

A probabilidade de o qubit sofrer um colapso para uma forma ou outra é determinada pela interferência quântica. A interferência quântica afeta o estado de um qubit para influenciar a probabilidade de determinado resultado durante a medida. Esse estado probabilístico é o aspecto no qual se destaca a eficiência da computação quântica.

Por exemplo, com dois bits em um computador clássico, cada bit pode armazenar 1 ou 0 e, portanto, juntos, você pode armazenar quatro valores possíveis, 00, 01, 10 e 11, mas apenas um deles de cada vez. Com dois qubits em superposição, no entanto, cada qubit pode ser 1 ou 0 ou ambos, de modo que você possa representar os mesmos quatro valores simultaneamente. Com três qubits, você pode representar oito valores; com quatro qubits, você pode representar 16 valores etc.

Para obter mais informações, consulte o qubit na computação quântica.

Emaranhamento

Possivelmente, o fenômeno mais interessante da mecânica quântica é a capacidade de dois ou mais sistemas quânticos se emaranharem. O emaranhamento é uma correlação quântica entre sistemas quânticos. Quando qubits se tornam emaranhados, eles formam um sistema global, de modo que o estado quântico de subsistemas individuais não pode ser descrito independentemente. Dois sistemas são emaranhados quando o estado do sistema global não pode ser gravado como uma combinação do estado dos subsistemas, em particular, dois sistemas são emaranhados quando o estado do sistema global não pode ser gravado como o produto tensor dos estados dos subsistemas. Um estado do produto não contém correlações.

Sistemas quânticos emaranhados mantêm essa correlação mesmo quando separados em grandes distâncias. Isso significa que qualquer operação ou processo que você aplicar a um subsistema correlacionará aos outros subsistemas também. Como há uma correlação entre os qubits emaranhados, a medição do estado de um qubit fornece informações sobre o estado do outro qubit; essa propriedade específica é muito útil na computação quântica.

Observação

Nem toda correlação entre medições de dois qubits significa que eles estão emaranhados. Além das correlações quânticas, também existem correlações clássicas. A diferença entre correlações clássicas e quânticas é sutil, mas é essencial para o aumento de velocidade fornecido por computadores quânticos. Para obter mais informações, consulte Noções básicas sobre correlações clássicas.

Se desejar saber mais, consulte o tutorial Explorando o emaranhamento quântico com Q# e o Azure Quantum.

Computadores quânticos versus simuladores quânticos

Um computador quântico é um computador que combina o poder da computação clássica e quântica. Os computadores quânticos atuais correspondem a um modelo híbrido: um computador clássico que controla um processador quântico.

O desenvolvimento de computadores quânticos ainda está em fase inicial. O hardware quântico é caro e a maioria dos sistemas está localizada em universidades e laboratórios de pesquisa. Enquanto os computadores clássicos usam chips conhecidos à base de silício, os computadores quânticos usam sistemas quânticos, como átomos, íons, fótons ou elétrons. No entanto, a tecnologia está avançando e o acesso na nuvem pública limitado a sistemas quânticos está disponível.

O Azure Quantum permite a criação de algoritmos quânticos para várias plataformas ao mesmo tempo, preservando a flexibilidade para ajustar os mesmos algoritmos para sistemas específicos. Você pode escolher entre várias linguagens de programação, como Qiskit, Cirq e Q# e executar seus algoritmos em vários sistemas quânticos. No Azure Quantum, é fácil explorar simultaneamente os sistemas quânticos atuais e estar pronto para os sistemas quânticos em escala do futuro.

Dica

Os usuários iniciantes recebem automaticamente US$ 500 (USD)de créditos do Azure Quantum para uso com cada provedor de hardware quântico participante. Se você tiver consumido todos os créditos e precisar de mais, poderá se inscrever no programa de créditos do Azure Quantum.

Hardware do Azure Quantum

Um computador quântico tem três partes primárias:

  • Um dispositivo que abriga os qubits
  • Um método para executar operações quânticas (também conhecidas como portões quânticos) nos qubits e medi-las
  • Um computador clássico para executar um programa e enviar instruções

Os qubits são frágeis e altamente sensíveis à interferência ambiental. Para alguns métodos de armazenamento de qubits, a unidade que hospeda os qubits é mantida em uma temperatura logo acima de zero absoluto para maximizar a coerência. Outros tipos de hospedagem de qubits usam uma câmara de vácuo para ajudar a minimizar as vibrações e estabilizar os qubits.
As operações podem ser executadas usando uma variedade de métodos, incluindo micro-ondas, laser e tensão, dependendo do tipo de qubit.

Os computadores quânticos enfrentam uma infinidade de desafios para funcionarem corretamente. A correção de erros em computadores quânticos é um problema significativo e o dimensionamento (adição de mais qubits) aumenta a taxa de erros. Devido a essas limitações, um computador quântico da área de trabalho está distante no futuro, mas um computador quântico comercialmente viável baseado em laboratório está mais próximo.

A Microsoft está fazendo uma parceria com empresas de hardware quântico para fornecer o acesso à nuvem ao hardware quântico. Com a plataforma do Azure Quantum e o QDK, você pode explorar e executar programas quânticos em tipos diferentes de hardware quânticos. Estes são os quânticos targetsdisponíveis no momento:

  • Quantinuum: sistema armadilha de íons com alta fidelidade, qubits totalmente conectados e a capacidade de execução de medidas de meio-circuito.
  • IonQ: computadores quânticos de íons presos reconfiguráveis dinamicamente para até 23 qubits totalmente conectados, que permitem executar uma porta de dois qubits entre qualquer par.
  • Rigetti: processadores supercondutores baseados em portão que utilizam Quantum Intermediate Representation (QIR) para habilitar baixa latência e execução paralela.

Para obter mais informações, consulte a lista completa de target computação quântica.

Simuladores do Azure Quantum

Por enquanto, o uso do hardware quântico real é limitado devido a recursos e orçamento. Os simuladores quânticos servem para a finalidade de executar algoritmos quânticos, facilitando o teste e a depuração de um algoritmo e, em seguida, executando-o em hardware real com confiança de que o resultado corresponderá às expectativas.

Simuladores quânticos são programas de software executados em computadores clássicos e possibilitam executar e testar programas quânticos em um ambiente que prevê como os qubits reagem a operações diferentes, facilitando o teste e depuração de um algoritmo e, em seguida, executá-lo em hardware real com a confiança de que o resultado corresponderá às expectativas.

O Quantum Development Kit (QDK) inclui diferentes classes de simuladores quânticos que representam diferentes maneiras de simular o mesmo algoritmo quântico, como um simulador esparso para simular sistemas grandes, um simulador de ruído para simular algoritmos quânticos sob a presença de ruído. Para mais informações, confira simuladores quânticos.

Além disso, cada um dos parceiros de hardware quântico da Microsoft oferece um simulador quântico como um target.

Se você tiver uma conta do Azure, na galeria de exemplo do workspace do Azure Quantum, encontrará vários exemplos do Jupyter Notebook que usam simuladores quânticos. Confira como começar a usar Q# e um notebook do Azure Quantum.

Próximas etapas