Welche Programmiersprache ist für Anfänger geeignet?

12

Ich verstehe, dass es viele Programmiersprachen gibt (zB Q #, Qiskit usw.)

Welches ist für jemanden geeignet, der gerade mit dem Programmieren begonnen hat und nichts über Quantenmechanik weiß?

Daniel Mana
quelle

Antworten:

7

Die Sprachen selbst sind für einen neuen Benutzer im Wesentlichen alle gleich. Sie alle implementieren die gleichen grundlegenden Quantenoperationen, die von Forschern in den letzten Jahrzehnten verwendet wurden.

Wenn Sie gerade mit dem Programmieren begonnen haben, ist der wichtigste Faktor für Sie möglicherweise die Sprache, in der das Quanten-SDK geschrieben ist. Sie sind hauptsächlich in Python, aber QISKit verfügt auch über Swift- und Java-Varianten. Q # ist in Visual Studio integriert.

Darüber hinaus gibt es Unterschiede in Dingen wie

  • Tutorial-Materialien
  • die Simulatoren oder realen Quantengeräte, auf denen Ihre Programme ausgeführt werden
  • High-Level-Anwendungen, die kein Quantenwissen erfordern.

Ich bin sehr voreingenommen in dem, was ich empfehle (und hoffe, dass andere, die in verschiedene Richtungen voreingenommen sind, auch Ihre Frage beantworten), aber ich würde sagen, dass ein Blick auf den QISKit-Blog ein guter Anfang sein könnte. Hier sind einige meiner eigenen Artikel

James Wootton
quelle
5

Es hängt von den Sprachen ab, zu denen Sie mehr Affinität haben.

Qiskit, pyQuil usw. sind in Python enthalten, einer Programmiersprache, die im Allgemeinen leicht zu verstehen ist und viele hilfreiche Bibliotheken enthält. Sie bieten Dokumentationen / Tutorials, mit denen Anfänger mit dem Quantencomputing beginnen können. Das Schreiben von Codes kann in wenigen Zeilen erfolgen.

Q # ist in C #. Ich habe es nicht ausprobiert, aber wenn Sie angefangen haben, Programmieren mit Schwerpunkt auf C oder C ++ zu lernen (und es mögen), sollten Sie sich mit diesem vertraut machen.

Zum Lernen würde ich empfehlen, das Buch Quantenberechnung und Quanteninformation von Nielsen und Chuang oder Quantencomputer für Informatiker von Yanofsky und Mannucci zu lesen; Wenn Sie Zugriff darauf haben und parallel einen Code auf der Plattform Ihrer Wahl anzeigen können. Es ist jedoch immer eine gute Idee, verschiedene Quellen und Erklärungen zu kombinieren, um besser zu verstehen.

cnada
quelle
2
Ich glaube ehrlich gesagt nicht, dass Mike & Ike ein gutes Buch für Anfänger ist. Es führt zu viel zu schnell ein. Andere Bücher wie Quantum Computing für Informatiker oder Quantum Computer Science: Eine Einführung sind IMO viel besser. Mike & Ike ist gut, wenn Sie über Kenntnisse im Bereich Quantencomputer verfügen und diese weiter ausarbeiten möchten.
ahelwer
@ahelwer Dies ist ein relevanter Kommentar. Quantum Computing für Informatiker hat in der Tat viele numerische Beispiele. Es wird einem Anfänger besser passen.
cnada
4

Ich stimme der Antwort von James Wootton zu. Die Wahl der Sprache wird wichtig, wenn Sie an einem größeren Projekt arbeiten, in dem Sie sich auf Bibliotheken, Ressourcenschätzungen und andere erweiterte Funktionen verlassen möchten. Wenn Sie anfangen, die Grundlagen des Quantencomputers und der Quantenprogrammierung zu erlernen, sind Ihre Programme sehr klein und in verschiedenen Sprachen nicht so unterschiedlich.

Ich gehe davon aus, dass Sie ein Buch / einen Kurs über die Theorie des Quantencomputers durchlaufen werden. In diesem Fall gibt es zwei Dinge, die Sie definitiv von der Programmiersprache erwarten:

  • Eine schöne Reihe von Einführungs-Tutorials / Programmierübungen, die Ihnen helfen, die Theorie, die Sie gelernt haben, zu verinnerlichen.
  • Ein Quantenzustands-Simulator, mit dem Sie den Status der Qubits während der Ausführung Ihres Programms anzeigen können.

Meine Empfehlung (voreingenommen in eine andere Richtung, wie James vorgeschlagen hat :-)) ist, einen Blick auf Q # zu werfen:

  • Quantum Katas sind selbstgesteuerte Programmier-Tutorials, die einen Kurs zur Quantencomputertheorie begleiten. Jedes Tutorial besteht aus einer Reihe von Übungen, die Sie lösen müssen, und einem Testgeschirr hinter den Kulissen, das überprüft, ob Ihr Code korrekt ist, und Ihnen sofortiges Feedback gibt. Die vorhandenen Tutorials decken eine Reihe einführender Themen ab, und wir arbeiten daran, weitere Tutorials zu erstellen.
  • Mit dem im Quantum Development Kit enthaltenen vollständigen Statussimulator können Sie den Systemstatus als Liste von Amplituden ausgeben, sodass Sie ihn immer dann verwenden können, wenn Sie überprüfen möchten, ob der Status des Systems Ihrem Verständnis / Ihren Erwartungen entspricht, oder um herauszufinden, was schief gelaufen ist.
Mariia Mykhailova
quelle