Skip to main content
IBM Quantum Platform

Layout CSP

class qiskit.transpiler.passes.CSPLayout(*args, **kwargs)

GitHub

Bases: AnalysisPass

Se possível, escolhe um layout como um CSP, usando backtracking.

Se possível, escolhe um layout como um CSP, usando backtracking.

Se não for possível, não definirá a propriedade de layout. Em todos os casos, a propriedade CSPLayout_stop_reason será adicionada com um dos seguintes valores:

  • solução encontrada: Se um layout perfeito foi encontrado.
  • solução inexistente: Se nenhum layout perfeito foi encontrado e todas as combinações foram verificadas.
  • limite de chamada atingido: Se nenhum layout perfeito foi encontrado e o limite de chamadas foi atingido.
  • limite de tempo atingido: Se nenhum layout perfeito foi encontrado e o limite de tempo foi atingido.

Parâmetros

  • coupling_map (Union[CouplingMap, Target]) – Gráfico direcionado que representa um mapa de acoplamento.
  • strict_direction (bool) – Se for True, considera a direção do mapa de acoplamento. O padrão é False.
  • seed (int) – Define a semente do PRNG.
  • call_limit (int) – Quantidade de vezes que constraint.RecursiveBacktrackingSolver.recursiveBacktracking será chamado. Nenhum significa que não há limite de chamadas. Padrão: 1000.
  • time_limit (int) – Quantidade de segundos que o passe tentará encontrar uma solução. Nenhum significa nenhum limite de tempo. Padrão: 10 segundos.

Atributos

is_analysis_pass

Verificar se o passe é um passe de análise.

Se a passagem for um AnalysisPass,, isso significa que a passagem pode analisar o DAG e escrever os resultados dessa análise no conjunto de propriedades. As modificações no DAG não são permitidas por esse tipo de passe.

is_transformation_pass

Verificar se o passe é um passe de transformação.

Se a passagem for um TransformationPass,, isso significa que a passagem pode manipular o DAG, mas não pode modificar o conjunto de propriedades (mas pode ser lido).


Métodos

execute

execute(passmanager_ir, state, callback=None)

GitHub

Executar a tarefa de otimização para a entrada Qiskit IR.

Parâmetros

  • passmanager_ir (Any) – Qiskit IR para otimizar.
  • state (PassManagerState) – Estado associado à execução do fluxo de trabalho pelo próprio gerenciador de passes.
  • callback (Callable | None) – Uma função de retorno de chamada que é chamada a cada execução da tarefa de otimização.

Retorna

Qiskit IR otimizado e estado do fluxo de trabalho.

Tipo de retorno

tupla [ Any, PassManagerState ]

name

name()

GitHub

Nome do passe.

Tipo de retorno

str

run

run(dag)

GitHub

executar o método de layout

update_status

update_status(state, run_state)

GitHub

Atualizar o status do fluxo de trabalho.

Parâmetros

  • state (PassManagerState) – Passar o estado do gerenciador para atualizar.
  • run_state (RunState) – Status de conclusão da tarefa atual.

Retorna

Estado do gerenciador de passes atualizado.

Tipo de retorno

PassManagerState

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