Es gibt eine ganze Reihe von Entwicklungsumgebungen (oder SDKs – Software Development Kits [1]) für Quanten-Software (siehe etwa [2], [3]): IBM bietet QisKit an, Rigetti stellt Forest zu Verfügung, DWave etwa Ocean, usw. Die Entwicklungsumgebungen dieser Hersteller von Quantencomputern unterstützen im allgemeinen lediglich ihre eigene Hardware. Um sich nicht auf eine einzelne Hardware festlegen zu müssen, bieten solche Hersteller, die keine eigene Quanten-Hardware in ihrem Portfolio haben, Entwicklungsumgebungen an, mit denen Programme entwickelt werden können, die auf mehreren Quantencomputern laufen können: Microsoft stellt das Quantum Development Kit QDK zu Verfügung, Zapata hat Orchestra im Angebot, usw. Auch gibt es quell-offene SDKs wir etwa ProjectQ. Relativ spät (seit August 2020) hat nun auch Amazon ein Quanten SDK namens Braket angeboten, welches Hardware der Hersteller Rigetti, DWave und IonQ unterstützt.
PlanQK verfolgt einen vollkommen anderen Weg. Zunächst ist PlanQK keine Entwicklungsumgebung für Quantensoftware, sondern ist im Gegenteil absolut SDK neutral: Die Quantensoftware, die in PlanQK zu Verfügung gestellt wird, kann mit beliebigen solcher Quanten SDKs erstellt werden: In der nebenstehenden Abbildung sind diese SDKs im rot gestrichelten Bereich unten in der Mitte dargestellt. Diese Neutralität wird dadurch erzielt, dass in PlanQK das Konzept der Muster, also bewährte Lösungen wiederkehrender Probleme in der Domäne Quantencomputing, betont wird. Per Definitionen sind die Lösungen, die in solchen Mustern zu Verfügung gestellt werden Implementierungs- und Herstellerneutral. Ein Muster verweist dann auf eventuell unterschiedliche Implementierungen, die mit Hilfe “irgendeines” Quanten SDKs erstellt wurde.
Auch verlangen Realisierungen von Anwendungen im Bereich des Quantencomputings im Allgemeinen die Lösung mehrerer Probleme. Ein SDK gibt hier keinerlei Hilfestellungen, in PlanQK aber sind die Muster in eine Mustersprache vernetzt und komplexe Probleme werden gelöst, indem man durch diese vernetzten Muster geleitet wird und einzelne Lösungen der Teilprobleme erhält. Ferner sind heutige Lösungen von Problemen des Quantencomputings hybride Software, bestehend aus mehreren “Modulen” klassischer Software als auch eventuell aus mehreren “Modulen” von Quantenschaltkreisen. In PlanQK können alle diese Module in unterschiedlichsten Umgebungen mehrere Hersteller ablaufen und werden von PlanQK dort sogar eingebracht (sog. Deployment).
Ferner fokussiert PlanQK auf relevante Anwendungsfälle der Industriepartner: hierdurch wird Wissen aufgebaut, für welche (Teil-)Probleme Quantencomputer heute bzw. in wenigen Jahren realistisch nutzbar sind, und vor allem wie diese Nutzung geschieht [4]. Die Einzelschritte dieser Nutzbarmachung werden durch PlanQK direkt unterstützt. Gleichzeitig gibt es Komponenten in PlanQK, die Quantenalgorithmen bewerten indem sie beurteilen, welche Quantencomputer eine erfolgreiche Ausführung wahrscheinlich machen.
[1] https://de.wikipedia.org/wiki/Software_Development_Kit
[2] Frank Leymann, Johanna Barzen, Michael Falkenthal, Daniel Vietz, Benjamin Weder, et al. 2020. Quantum in the Cloud: Application Potentials and Research Opportunities. In Proceedings of the 10th International Conference on Cloud Computing and Service Science (CLOSER 2020). SciTePress, 9–24.
[3] LaRose, M., 2019. Overview and Comparison of Gate Level Quantum Software Platforms. arXiv:1807.02500v2.
[4] Frank Leymann, Johanna Barzen (2020): The bitter truth about gate-based quantum algorithms in the NISQ era. In: Quantum Sci. Technol. 2020.