Layout CSP
class qiskit.transpiler.passes.CSPLayout(*args, **kwargs)
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.recursiveBacktrackingserá 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)
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
run
update_status
update_status(state, run_state)
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