Please use this identifier to cite or link to this item: http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/19053
Full metadata record
DC FieldValueLanguage
dc.contributor.authorΤσούφης, Χρήστος-
dc.contributor.authorTsoufis, Christos-
dc.date.accessioned2024-04-05T06:36:33Z-
dc.date.available2024-04-05T06:36:33Z-
dc.date.issued2023-09-27-
dc.identifier.urihttp://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/19053-
dc.description.abstractΣε αυτή τη διπλωματική εργασία, εξετάζουμε τον Κβαντικό Υπολογισμό μέσω ποικίλων υλοποιήσεων και εφαρμογών. Οι κβαντικοί αλγόριθμοι παρέχουν σημαντικά πλεονεκτήματα σε σχέση με τους κλασσικούς αλγόριθμους καθώς μπορούν να βοηθήσουν στην επίλυση προβλημάτων που είναι ακόμη και εγγενώς δύσκολο να λυθούν με τον κλασσικό υπολογισμό. Συγκεκριμένα, πρώτον, εμβαθύνουμε στην βασική κβαντική σημειογραφία και ύστερα εξετάζουμε τα μαθηματικά εργαλεία που θα χρειαστούμε. Έπειτα, δείχνουμε ορισμένα αμιγώς κβαντικά πρωτόκολλα όπως η Υπερπυκνή Κωδικοποίηση και η Κβαντική Τηλεμεταφορά. Στη συνέχεια, για τους αλγόριθμους Deutsch και Deutsch-Jozsa, τον αλγόριθμο Bernstein-Vazirani, τον αλγόριθμο του Simon, τον αλγόριθμο Shor και τον αλγόριθμο του Grover, αναλύουμε βήμα προς βήμα το πρόβλημα, την επίλυση τόσο στην περίπτωση των κλασσικών υπολογιστών όσο και στην περίπτωση των κβαντικών υπολογιστών, υλοποιούμε και διεξάγουμε αριθμητικά πειράματα και αξιολογήσεις χρησιμοποιώντας την βιβλιοθήκη Qiskit της Python και τρέχουμε τα πειράματά μας σε προσομοιωτές αλλά και σε πραγματικούς Κβαντικούς Υπολογιστές (IBM Quantum, D-Wave, κ.λπ.) και τέλος, εξετάζουμε ορισμένες εφαρμογές στον πραγματικό κόσμο. Πιο αναλυτικά, ξεκινάμε με τον αλγόριθμο Deutsch & Deutsch-Jozsa ο οποίος προσδιορίζει εάν μια συνάρτηση είναι σταθερή ή ισορροπημένη. Στη συνέχεια, εξετάζουμε τον αλγόριθμο του Bernstein-Vazirani, που είναι μια ειδική περίπτωση του προηγούμενου αλγορίθμου, ο οποίος βρίσκει μια συμβολοσειρά που ικανοποιεί ορισμένες ιδιότητες. Ύστερα, μελετάμε τον αλγόριθμο του Simon ο οποίος βρίσκει επίσης μια συμβολοσειρά κάτω από ορισμένες παραδοχές και μάλιστα, αυτός ο αλγόριθμος αποτέλεσε την έμπνευση πίσω από τον αλγόριθμο του Shor, για τον οποίο αναλύουμε τον τρόπο με τον οποίο επιλύεται το πρόβλημα παραγοντοποίησης ακέραιων αριθμών. Τέλος, ασχολούμαστε με τον αλγόριθμο του Grover, ο οποίος παρέχει έναν αλγόριθμο κβαντικής αναζήτησης και τον χρησιμοποιούμε για την επίλυση κλασσικών προβλημάτων αναζήτησης. Συγκεκριμένα, εξετάζουμε το πρόβλημα Max-Cut και αξιοποιούμε τον αλγόριθμο του Grover αλλά και κάποιες ακόμη τεχνικές για την επίλυση αυτού του προβλήματος. Τέλος, μετά από κάθε ανάλυση από τους παραπάνω αλγορίθμους, ολοκληρώνουμε την μελέτη μας συζητώντας σύγχρονες εφαρμογές, άλλοτε απλές, όπως η εύρεση μιας συμβολοσειράς και άλλοτε πιο σύνθετες, όπως η επίθεση στο κρυπτογραφικό πρωτόκολλο RSA.en_US
dc.languageelen_US
dc.subjectΚρυπτογραφίαen_US
dc.subjectΚβαντικός Υπολογισμόςen_US
dc.subjectΚβαντικοί Αλγόριθμοιen_US
dc.subjectΘεωρία Γράφωνen_US
dc.subjectCryptographyen_US
dc.subjectQuantum Computingen_US
dc.subjectQuantum Algorithmsen_US
dc.subjectGraph Theoryen_US
dc.titleΚβαντικός Υπολογισμός: Αλγόριθμοι, Υλοποιήσεις, και Εφαρμογές στην Κρυπτογραφία και στην Θεωρία Γράφωνen_US
dc.description.pages154en_US
dc.contributor.supervisorΠαγουρτζής Αριστείδηςen_US
dc.departmentΤομέας Τεχνολογίας Πληροφορικής και Υπολογιστώνen_US
dc.description.notesIn this thesis, we examine Quantum Computing through implementations and applications. Quantum algorithms provide significant advantages over classical algorithms and they can help us solve problems that are even inherently difficult to solve with classical computing. Specifically, first, we delve into some quantum notation and consider the tools we will need. Next, we show some inherently quantum protocols such as Superdense Coding and Quantum Teleportation. Then, for the Deutsch and Deutsch-Jozsa algorithms, the Bernstein-Vazirani algorithm, Simon's algorithm, Shor's algorithm, and Grover's algorithm, we analyze a step by step solution in both the case of classical and quantum computers and we conduct numerical experiments and evaluations using Python's Qiskit library and we also run our experiments on simulators as well as on real Quantum Computers (IBM Quantum, D-Wave, etc.) and finally, we examine some real-world applications. In more detail, we start with the Deutsch's & Deutsch-Jozsa's algorithm which determines whether a function is constant or balanced. Next, we look at the Bernstein-Vazirani's algorithm, which is a special case of the previous algorithm, where it finds a string that satisfies certain criteria. After that, we study Simon's algorithm which also finds a string under certain assumptions and in fact, this algorithm led to the inspiration behind Shor's algorithm, which we analyze how it solves the Integer Factorization Problem. Finally, we deal with Grover's algorithm, which provides a Search algorithm, and we use it to solve classical search problems such as the Max-Cut problem, and we even consider additional ways to solve this problem using other settings. Finally, after analyzing each of the above algorithms, we conclude our study by discussing modern applications, sometimes simple, such as finding a secret string, and sometimes more complex, such as attacking the RSA cryptographic protocol.en_US
Appears in Collections:Διπλωματικές Εργασίες - Theses

Files in This Item:
File Description SizeFormat 
NTUA_ECE_Diploma_Thesis_Tsoufis_Christos.pdfNTUA ECE Diploma Thesis - Tsoufis Christos1 MBAdobe PDFView/Open


Items in Artemis are protected by copyright, with all rights reserved, unless otherwise indicated.