PauliEvolutionSynthesisMcts
class qiskit.transpiler.passes.synthesis.hls_plugins.PauliEvolutionSynthesisMcts
몬테카를로 트리 탐색(MCTS)을 사용하여 PauliEvolutionGate 를 합성하십시오.
이 플러그인 이름은 로 등록되어 있으며 "PauliEvolution.mcts", 이 메서드를 사용하려면 HLSConfig 객체의 키로 이 이름을 사용할 수 있습니다 HighLevelSynthesis.
합성 알고리즘에 대한 설명은 에서 확인할 수 있습니다 [1].
대규모 회로의 경우, 이 합성 방법에는 상당한 실행 시간이 소요될 수 있습니다.
이 플러그인은 다음과 같은 추가 옵션을 지원합니다:
- preserve_order (bool): 교환법칙 범위 내에서 파울리 회전의 순서를 유지합니다.
- upto_clifford (bool): True인 경우, 마지막 클리포드 연산자는 합성되지 않습니다.
- upto_phase (bool): True인 경우, 반환된 회로는 입력 회로와 전역 위상만큼 차이가 있을 수 있습니다.
- num_simulations (int): 수행할 몬테카를로 시뮬레이션의 횟수. 이 값은 최소한 1이어야 합니다.
- max_parallel_simulations (int | None): 병렬로 수행할 수 있는 시뮬레이션의 최대 개수. 정수인 경우, 이 값은 1 이상이어야 합니다. None의 값은 “무제한”을 의미합니다.
참조
- Mulundano Machiya, Matt Menickelly, Paul Hovland, Ji Liu, “ MonteQ: 몬테카를로 트리 탐색 기반의 양자 회로 합성 프레임워크”, arXiv:2604.19029
메소드
run
run(high_level_object, coupling_map=None, target=None, qubits=None, **options)
지정된 작업에 대해 합성을 실행합니다.
매개변수
- high_level_object (Operation) –
DAGCircuit객체로 합성하는 연산. - coupling_map (CouplingMap) – 물리적 회로에서 합성이 수행될 경우 백엔드의 커플링 맵.
- target (Target) – 대상 백엔드를 나타내는 대상.
- qubits (list) – 물리적 회로에서 합성이 수행될 경우, 연산이 정의되는 큐비트 목록.
- options – 메서드별로 지정할 수 있는 추가 선택적 키워드 인자.
리턴
해당 연산의 양자 회로 표현
성공한 경우에는, 그렇지 않은 None 경우에는.
리턴 유형
이 페이지가 도움이 되었습니까?
GitHub에서 버그, 오타를 보고하거나 컨텐츠를 요청하십시오.