Ideen für Quantum-Computing-Projekte

14

Ich bin Student der Informatik und plane gerade mein Abschlussprojekt. Ich brauche einige Ideen im Bereich des Quantencomputers. irgendeine Hilfe?

Deyaa
quelle
Es wäre hilfreich, wenn Sie ein Beispiel für die Art des Projekts geben könnten, die Sie angesichts der für dieses Projekt zur Verfügung stehenden Zeit und der beabsichtigten Schwierigkeit als angemessen erachten. Wie ist es akzeptabel, eine Arbeit im Detail als Projekt zu lesen?
Robin Kothari
Beispiel: Kombination (oder Erfindung neuer) maschineller Lerntechniken mit Quantencomputern zur Lösung eines schwierigen Problems Google verwendete maschinelle Lernalgorithmen und D-Wellen-Quantencomputer, um eine viel schnellere Bildsuche durchzuführen. Zeit, ich habe: 11 Monate Schwierigkeitsgrad: Mittel (Undergraduate)
Deyaa
3
Ich denke, dies sollte ein Community-Wiki sein, vorausgesetzt, es ist überhaupt im Umfang.
Lev Reyzin
2
@ Ross: Ich habe es abgelehnt, einfach weil die Frage unklar, sehr offen, subjektiv und mit Sicherheit nicht eindeutig "richtig" beantwortet war (siehe auch cstheory.stackexchange.com/faq ). Mit genaueren Erklärungen und im "Community-Wiki" -Modus hätte es höchstwahrscheinlich meine Ablehnung vermieden. Entschuldigung, wenn dies unnötig hart erscheint, aber ich denke, dass die Leute der Formulierung ihrer Fragen mehr Aufmerksamkeit schenken sollten (und die CW-Flagge richtig verwenden sollten, zumal es derzeit niemand anders reparieren kann).
Jukka Suomela
3
@ Heyaa, ich denke, der Versuch, die Fragen von Joe Fitzsimmons und Jukka Suomela zu beantworten, wird Ihnen helfen, eine bessere Frage zu stellen.
Suresh Venkat

Antworten:

27

Ich habe einige Projektideen zur Quantenkomplexitätstheorie unter http://scottaaronson.com/blog/?p=471 veröffentlicht

(Aber Vorsicht, die meisten dieser Probleme sind seit Jahren offen! Mein Vorschlag für ein Bachelor-Projekt wäre, einen Teil eines der Probleme abzubrechen.)

Scott Aaronson
quelle
17

Ein Projekt, das ich vorschlagen würde, ist das folgende: Versuchen Sie, einen Quantenalgorithmus zu entwickeln, der auf dem Quantenzufallslauf für die lineare Programmierung basiert. Für das Projekt sollten Sie zunächst einige grundlegende Fakten über Quanten-Random-Walks und deren algorithmische Nützlichkeit lernen, zweitens über randomisierte Simplex-Algorithmen und drittens versuchen, beide zu kombinieren. Teil 3 ist sehr ehrgeizig und ich weiß nicht, ob überhaupt etwas Fruchtbares gesagt werden kann, aber Teil 1 und 2 sind bereits gut für ein Bachelor-Projekt.

Gil Kalai
quelle
1
Das ist ein wirklich schöner Vorschlag. Es gibt in der Tat eine gute Anzahl von Algorithmen, die von speziellen Zufallsläufen profitieren könnten. LT / Raptor-Fehlerkorrekturcodes basieren beispielsweise auf einem zufälligen Spaziergang. Stimmen Sie von mir ab. Und es ist schön, dich hier zu sehen, Gil. :-)
Ross Snider
Ich wusste nicht, dass es solche Dinge wie Quanten-Random-Walks gibt! gute Idee !
Suresh Venkat
2
Suresh: Ja, das gibt es. Sie erweisen sich als ziemlich wichtiger Ansatz für Quantenalgorithmen. Die Sache bei Algorithmenprojekten ist jedoch, dass es trivial ist, eine Quadratwurzel-Beschleunigung zu erzielen, und es sehr, sehr schwierig ist, etwas Besseres zu erreichen. Vielleicht wäre eine andere Idee, zu versuchen, polynomiale Zeitalgorithmen auf Logarithmus der Zeit zu bringen, wie im jüngsten Algorithmus zum Lösen linearer Gleichungssysteme.
Joe Fitzsimons
11

DWaves-Ergebnisse bei der Bildsuche sind etwas seltsam. Derzeit gibt es keine soliden Beweise dafür, dass DWaves Geräte nicht effizient simuliert werden können. Dies wurde in einer Reihe von Blogs ausführlich besprochen (für Scott Aaronson und Dave Bacon haben beide DWave mehrfach behandelt).

Abgesehen davon gibt es eine Vielzahl potenzieller Projekte, je nachdem, für welchen Aspekt des Quantencomputers Sie sich interessieren. Dies hängt auch von Ihrem Kenntnisstand über Quantenmechanik und -physik ab. Fragen vom Typ Architektur werden oft ziemlich physikalisch, da experimentelle Einschränkungen eine große Rolle bei der Bestimmung der Probleme spielen, die es wert sind, betrachtet zu werden. Algorithmen und Kommunikationskomplexität sind viel eher CS-orientierte Bereiche.

Es gibt eine Reihe verschiedener Modelle für die Quantenberechnung und es gibt für einige steilere Eintrittsbarrieren als für andere. Adiabatisches und topologisches Quantencomputing sind in der Regel etwas schwieriger zu erlernen als das Schaltungsmodell und das auf Messungen basierende Rechenmodell.

Ein Problem, an dem ich mit einem Sommerstudenten erfolgreich gearbeitet habe, war die Annäherung der Fehlertoleranzschwellen für verschiedene Fehlerkorrekturcodes durch Simulation. Dies ist etwas, das eine relativ niedrige Eintrittsbarriere hat. Eine andere Idee ist es, sich Schemata von Quantenzellularautomaten für spezielle Aufgaben (Codierung, Messung, Zustandsvorbereitung) anzuschauen.

Sie haben maschinelles Lernen erwähnt. Vielleicht möchten Sie sich also mit evolutionärer Programmierung befassen, um Quantenschaltungen für verschiedene einfache Probleme zu entwickeln. Ich habe ein paar Mal damit herumgespielt, und es scheint, dass Sie ein ziemlich nettes Verhalten bekommen können (zum Beispiel, indem Sie Suchregeln entwickeln).

Ich könnte fortfahren, zufällige Ideen aufzulisten, die ein geeignetes Projekt ergeben könnten, aber wenn Sie eine genauere Vorstellung davon haben, für welchen Bereich Sie sich interessieren, werden Sie meines Erachtens bessere Antworten erhalten. Eine grundlegende Frage könnte einfach sein, ob Sie sich für ein Codierungsprojekt interessieren, eines zum Hardware-Design, eines zur reinen Theorie usw.? Je nachdem, welchen Weg Sie einschlagen möchten, gibt es verschiedene Möglichkeiten.

Joe Fitzsimons
quelle
4

Ich schlage vor, aktuelle Quantencomputer-Entwicklungstools (z. B. libquantum) mit CUDA-fähigen GPUs auszustatten, um die Simulationen zu beschleunigen. Beim Quantencomputing geht es mehr oder weniger um lineare Algebra, dh Matrix- und Vektoroperationen, für die GPUs ursprünglich entwickelt wurden.

M. Alaggan
quelle
Simulationen wie was?
Deyaa
Mit den Entwicklungstools für Quantencomputer können Sie Quantenalgorithmen und -protokolle simulieren, einschließlich Shors Algorithmus, Grovers Suche, Quantenteleportation, Fehlerkorrekturcodes und Algorithmen, die Sie erstellt haben und selbst testen möchten.
M. Alaggan
3

Quantum-Computing-Themensprachen wie QCL wurden für Abschlussarbeiten entwickelt. Tatsächlich wurden alle auf Quantencomputern basierenden Sprachen, die ich im Internet implementiert habe, für Abschlussarbeiten erstellt. Sie könnten auch versuchen, einen Quantenemulator zu codieren. In dem Buch "Quantum Computing for Computer Scientists" bieten sie Programmierübungen an, die zusammen einen solchen Emulator ergeben.

Vincent Russo
quelle
2

Ich weiß nicht, wie hilfreich dies sein wird, aber vielleicht bietet es eine Anleitung.

Im Frühjahr 2009 unterrichtete Sasha Razborov einen Kurs über Quantencomputer. Die Kurswebsite enthält einige "Projekt" -Ideen sowie Verweise auf einige wegweisende Quantenpapiere.

Die "Projekte" auf der Seite sind eigentlich nur "kompliziertere Hausaufgabenprobleme", daher sind sie an und für sich wahrscheinlich nicht für eine Abschlussarbeit geeignet und werden auch keine 11 Monate in Anspruch nehmen. Diese Probleme und / oder einige der Verweise könnten jedoch einige gute Ideen für Sie auslösen.

Joshua Grochow
quelle