Formule multi-prodotto (MPF)
Versioni dei pacchetti
Il codice in questa pagina è stato sviluppato utilizzando i seguenti requisiti. Si consiglia di usare queste versioni o versioni più recenti.
Le formule multi-prodotto (MPF) possono essere utilizzate per simulare in modo più accurato la dinamica di un sistema quantistico, al costo di un maggior numero di esecuzioni di circuiti. Si tratta di una tecnica di post-elaborazione che mitiga l'errore dei valori di aspettazione per gli stati evoluti nel tempo.
Il calcolo classico viene impiegato per risolvere un sistema di equazioni lineari che fornisce i coefficienti per una combinazione pesata di diverse esecuzioni di circuiti. Questa combinazione pesata può ridurre l'errore associato alla simulazione dell'evoluzione temporale, data una buona scelta dei passi di Trotter. Lo strumento MPF acquisisce una serie di dati --- incluso il numero di passi di Trotter e l'ordine dell'approssimazione di Trotter --- per preparare e risolvere (o approssimare la soluzione di) il sistema di equazioni lineari associato, che puoi poi utilizzare per post-elaborare le misure dei valori di aspettazione di uno stato evoluto nel tempo.
Installare il pacchetto MPF
Esistono due modi per installare il pacchetto MPF: tramite PyPI oppure compilando dai sorgenti. Si consiglia di installare in un ambiente virtuale per garantire la separazione tra le dipendenze dei pacchetti.
Installare da PyPI
Il modo più semplice per installare il pacchetto qiskit-addon-mpf è tramite PyPI.
pip install qiskit-addon-mpf
Compilare dai sorgenti
Gli utenti che desiderano sviluppare nel repository o che vogliono installarlo manualmente possono farlo clonando prima il repository:
git clone git@github.com:Qiskit/qiskit-addon-mpf.git
e installare il pacchetto tramite pip. Il repository contiene anche una serie di dipendenze opzionali che abilitano determinate funzionalità.
Adatta le opzioni alle tue esigenze.
pip install tox notebook -e '.[notebook-dependencies,dev]'
Contesto teorico
Le MPF possono ridurre l'errore di approssimazione di Trotter associato alla simulazione della dinamica dei sistemi quantistici attraverso una combinazione pesata di diverse esecuzioni di circuiti. Questa somma pesata è definita come:
dove sono i coefficienti di ponderazione, è la matrice densità che corrisponde allo stato puro ottenuto facendo evolvere lo stato iniziale tramite una formula prodotto che approssima l'operatore di evoluzione temporale usando passi di Trotter, e indicizza ciascuna formula prodotto usata nella somma.

In generale, tuttavia, l'obiettivo della simulazione della dinamica quantistica è misurare un certo osservabile , che è una funzione del tempo. Quando si usano le MPF, più circuiti --- ciascuno con passi di Trotter --- vengono eseguiti per ottenere diverse misure dell'osservabile target . La misura dell'osservabile target si ottiene quindi calcolando:
In sostanza, puoi ridurre l'errore di Trotter complessivo approssimando l'operatore di evoluzione temporale utilizzando più formule prodotto con un numero variabile di passi di Trotter anziché un'unica formula prodotto. Costruisci un circuito per ogni termine della somma pesata, che fa evolvere il sistema in base a ciascuno dei passi di Trotter. Ogni circuito viene poi eseguito separatamente su una QPU per ricostruire i risultati in una fase di post-elaborazione. L'utilità di questa tecnica può essere vista da due prospettive:
- Per un numero fisso di passi di Trotter che esegui, puoi ottenere risultati con un errore di Trotter complessivamente inferiore.
- Per un numero di passi di Trotter che producono circuiti profondi, puoi usare le MPF per trovare diversi circuiti di profondità minore da eseguire, ottenendo un errore di approssimazione di Trotter simile.
Determinare i coefficienti MPF
La funzionalità principale del pacchetto qiskit-addon-mpf consiste nel determinare i coefficienti MPF (che possono dipendere dal tempo). Il processo per ottenere ciascun prevede la risoluzione di un sistema di equazioni lineari , dove è il vettore dei coefficienti da determinare, è una matrice che dipende da ciascun e dalla formula prodotto usata (ovvero, l'ordine di approssimazione e il numero di passi di Trotter), e è un vettore di vincoli. Questo sistema di equazioni può essere risolto esattamente oppure con un modello approssimato che minimizza la 1-norma dei coefficienti. Inoltre, la scelta di ciascun è un processo euristico, ma può essere limitato dai seguenti vincoli:
- Il valore più grande di è limitato dalla profondità massima del circuito che può essere eseguito in modo affidabile
- Il valore più piccolo di deve soddisfare , poiché è in quella zona che l'errore di Trotter si comporta meglio
- Nessuno dei coefficienti dovrebbe essere vicino a , poiché ciò implicherebbe che non contribuiscono molto alla MPF
- Allo stesso modo, il coefficiente associato al valore più grande di non dovrebbe dominare, poiché ciò implicherebbe l'uso di un'unica formula prodotto
- Infine, la norma dei coefficienti ottenuti dovrebbe essere piccola, poiché ciò indica una MPF ben condizionata 1
Passi successivi
- Leggi la pagina su come iniziare con le MPF.
Riferimenti
- A. Carrera Vazquez, D. J. Egger, D. Ochsner, and S. Wörner, "Well-conditioned multi-product formulas for hardware-friendly Hamiltonian simulation", Quantum 7, 1067 (2023).
- S. Zhuk, N. Robertson, and S. Bravyi, "Trotter error bounds and dynamic multi-product formulas for Hamiltonian simulation", Phys. Rev. Research 6, 033309 (2024).
- N. Robertson, et al. "Tensor Network enhanced Dynamic Multiproduct Formulas", arXiv:2407.17405v2 [quant-ph].