Skip to main content
IBM Quantum Platform

qiskit.circuit.library.qaoa_ansatz

qiskit.circuit.library.qaoa_ansatz(cost_operator, reps=1, initial_state=None, mixer_operator=None, insert_barriers=False, name='QAOA', flatten=True)

GitHub

Um circuito quântico QAOA generalizado com suporte de estados iniciais e misturadores personalizados.

Exemplos:

Para definir o QAOA ansatz, precisamos de um custo Hamiltoniano, que codifica o problema de otimização clássico:

from qiskit.quantum_info import SparsePauliOp
from qiskit.circuit.library import qaoa_ansatz

cost_operator = SparsePauliOp(["ZZII", "IIZZ", "ZIIZ"])
ansatz = qaoa_ansatz(cost_operator, reps=3, insert_barriers=True)
ansatz.draw("mpl")
Diagrama de circuito gerado pelo código anterior.

Parâmetros

  • cost_operator (BaseOperator) – O operador que representa o custo do problema de otimização, denotado como U(C,γ)U(C, \gamma) em [1].
  • reps (int) – O número inteiro que determina a profundidade do circuito, chamado pp em [1].
  • initial_state (QuantumCircuit | None) – Um estado inicial opcional a ser usado, cujo padrão é uma camada de portas Hadamard preparando o estado +n|+\rangle^{\otimes n}. Se for escolhido um misturador personalizado, esse circuito deverá ser configurado para preparar seu estado de aterramento, a fim de atender adequadamente às condições de recozimento.
  • mixer_operator (BaseOperator | None) – Um mixer personalizado opcional, que tem como padrão as rotações globais da Pauli- XX. Isso é denotado como U(B,β)U(B, \beta) em [1]. Se isso for definido, o site initial_state também poderá exigir modificações.
  • insert_barriers (bool) – Se devem ser inseridas barreiras entre os operadores de custo e de misturadores.
  • name (str) – O nome do circuito.
  • flatten (bool) – Se True, um circuito plano é retornado em vez de ser aninhado em várias camadas de objetos de porta. Definir isso como False é significativamente menos eficiente, especialmente para a vinculação de parâmetros, mas pode ser desejável para uma visualização mais limpa.

Tipo de retorno

QuantumCircuit

Referências

[1] Farhi et al, Um algoritmo de otimização quântica aproximada. arXiv:1411.4028

Esta página foi útil?
Relate um bug, erro de digitação ou solicite conteúdo no GitHub.