Guide de référence de l'API Global Data Quantum pour le solveur d'optimisation Q-CTRL
Qiskit Functions — des outils prêts à l'emploi développés par des organisations partenaires — permettent d'abstraire certaines étapes du processus de développement logiciel afin de simplifier et d'accélérer la découverte d'algorithmes et le développement d'applications à grande échelle. Cliquez ici pour consulter le guide de cette fonction Qiskit.
Guide des fonctions du solveur d'optimisation Qiskit
Entrées
problem
Type: str or SparsePauliOp
Valeur par défaut: None
L'une des représentations répertoriées sous « Formats de problèmes acceptés ».
- Obligatoire : oui
- Exemple:
Poly(2.0*n[0]*n[1] + 2.0*n[0]*n[2] - 3.13520241298341*n[0] + 2.0*n[1]*n[2] - 3.14469748506794*n[1] - 3.18897660121566*n[2] + 6.0, n[0], n[1], n[2], domain='RR')
problem_type
Type: str
Valeur par défaut: None
Nom de la classe de problèmes; utilisé uniquement pour les définitions de problèmes de graphes et de chaînes de spin, qui se limitent à "maxcut" ou "spin_chain"; non requis pour les définitions de problèmes avec une fonction objectif arbitraire.
- Obligatoire : Non
- Exemple:
"maxcut"
backend_name
Type: str
Valeur par défaut: Least busy backend
Nom du backend à utiliser.
- Obligatoire : Non
- Exemple:
"ibm_fez"
constraint
Type: dict[tuple, int]
Valeur par défaut: None
Contraintes facultatives liées au poids de Hamming pour les variables du problème. Chaque contrainte spécifie un ensemble de variables dont la somme doit être exactement égale à 1 (c'est-à-dire qu'une seule variable de cet ensemble vaut 1 et que les autres valent 0). Si cette information n'est pas fournie, le solveur considère le problème comme non contraint et effectue une recherche parmi toutes les chaînes binaires possibles. Il n'est pas nécessaire de contraindre toutes les variables : celles qui ne sont pas prises en compte restent constraint non contraintes; le système prend donc en charge les problèmes partiellement contraints. Les clés sont des tuples d'indices de variables ou de noms de variables lorsqu'on utilise une problem entrée polynomiale.
- Obligatoire : Non
- Exemple:
{("n[0,0]", "n[0,1]", "n[0,2]"): 1}
Options
Type: dict
Valeur par défaut: None
Options de saisie, notamment les suivantes : (Facultatif) session_id: str; par défaut, une nouvelle session est créée. Les options sont définies sous la forme d'un dictionnaire imbriqué. Consultez la liste complète des options et leurs valeurs par défaut.
- Obligatoire : Non
- Exemple:
{"session_id": "cw2q70c79ws0008z6g4g"}
Liste des options
session_id
Type: str
Valeur par défaut: None
Un identifiant de session existant du service de calcul d' IBM Quantum.
- Par défaut :
None - Exemple:
"cw4r3je6f0t010870y3g"
job_tags
Type: list[str]
Valeur par défaut: None
Une liste de mots-clés liés à l'emploi.
- Par défaut :
None - Exemple:
["job_tag1", "job_tag2"]
Sorties
result
Type: dict[str, Any]
La solution et les métadonnées figurent dans le contenu du dictionnaire « Result ».
Exemple : {'solution_bitstring_cost': 3.0, final_bitstring_distribution: {000001: 100, 000011: 2}, iteration_count: 3, 'solution_bitstring': 000001, 'variables_to_bitstring_index_map': {n[1]': 5, 'n[2]': 4, 'n[3]': 3, 'n[4]': 2, 'n[5]': 1}, 'best_parameters': [0.19628831763697097, -1.047052334523102], 'warnings': []}
Contenu du dictionnaire des résultats
solution_bitstring_cost
Type: float
Le coût minimal le plus bas parmi toutes les itérations.
final_bitstring_distribution
Type: CountsDict
Le dictionnaire de longueurs de chaînes de bits associé au coût minimal.
solution_bitstring
Type: str
Chaîne de bits présentant le meilleur coût dans la répartition finale.
iteration_count
Type: int
Le nombre total d'itérations QAOA effectuées par le solveur.
variables_to_bitstring_index_map
Type: float
La correspondance entre les variables et le bit équivalent dans la chaîne binaire.
best_parameters
Type: list[float]
Les paramètres bêta et gamma optimisés pour l'ensemble des itérations.
warnings
Type: list[str]
Valeur par défaut: None
Les avertissements générés lors de la compilation ou de l'exécution de QAOA.