Skip to main content
IBM Quantum Platform

CSPLayout

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

GitHub

Basi: AnalysisPass

Se possibile, sceglie un layout come CSP, utilizzando il backtracking.

Se possibile, sceglie un layout come CSP, utilizzando il backtracking.

Se non è possibile, non imposta la proprietà di layout. In tutti i casi, la proprietà CSPLayout_stop_reason verrà aggiunta con uno dei seguenti valori:

  • soluzione trovata: Se è stato trovato un layout perfetto.
  • soluzione inesistente: Se non è stato trovato un layout perfetto e sono state controllate tutte le combinazioni.
  • limite di chiamata raggiunto: Se non è stato trovato un layout perfetto e il limite di chiamate è stato raggiunto.
  • il limite di tempo è stato raggiunto: Se non è stato trovato un layout perfetto e il limite di tempo è stato raggiunto.

Parametri

  • coupling_map (Union[CouplingMap, Target]) – Grafo diretto che rappresenta una mappa di accoppiamento.
  • strict_direction (bool) – Se Vero, considera la direzione della mappa di accoppiamento. Il valore predefinito è False.
  • seed (int) – Imposta il seme del PRNG.
  • call_limit (int) – Numero di volte in cui constraint.RecursiveBacktrackingSolver.recursiveBacktracking sarà chiamato. Nessuno significa nessun limite di chiamata. Valore predefinito: 1000.
  • time_limit (int) – Numero di secondi in cui il passaggio cercherà di trovare una soluzione. Nessuno significa nessun limite di tempo. Valore predefinito: 10 secondi.

Attributi

is_analysis_pass

Controlla se il passaggio è un passaggio di analisi.

Se il passo è un AnalysisPass,, significa che il passo può analizzare il DAG e scrivere i risultati di tale analisi nel set di proprietà. Questo tipo di passaggio non consente di modificare il DAG.

is_transformation_pass

Controlla se il passaggio è un passaggio di trasformazione.

Se il passaggio è un TransformationPass,, significa che il passaggio può manipolare il DAG, ma non può modificare il set di proprietà (ma può essere letto).


Metodi

execute

execute(passmanager_ir, state, callback=None)

GitHub

Eseguire l'attività di ottimizzazione per l'IR Qiskit in ingresso.

Parametri

  • passmanager_ir (IR) – Qiskit IR da ottimizzare.
  • state (PassManagerState) – Stato associato all'esecuzione del flusso di lavoro da parte del gestore del passaggio stesso.
  • callback (Callable[[Task, IR_OUT, PropertySet, float, int], None] | None) – Una funzione di callback che viene chiamata ad ogni esecuzione di un'attività di ottimizzazione.

Risultati

Qiskit IR ottimizzato e stato del flusso di lavoro.

Tipo di restituzione

tupla [ IR_OUT, PassManagerState ]

name

name()

GitHub

Nome del passo.

Tipo di restituzione

STR

run

run(dag)

GitHub

eseguire il metodo di layout

update_status

update_status(state, run_state)

GitHub

Aggiornare lo stato del flusso di lavoro.

Parametri

  • state (PassManagerState) – Passare lo stato del gestore da aggiornare.
  • run_state (RunState) – Stato di completamento dell'attività corrente.

Risultati

Stato aggiornato del gestore dei passaggi.

Tipo di restituzione

PassManagerState

Questa pagina è stata utile?
Segnala un bug, un errore di battitura o richiedi contenuti su GitHub.