Η παρούσα πτυχιακή εργασία κινήθηκε στην κατανόηση δύο τεχνολογιών/τεχνικών: του Κβαντικού Υπολογισμού, αλλά και του Γενετικού Προγραμματισμού και στο πώς χρησιμοποιώντας τον δεύτερο μπορούμε να αναπτύξουμε προγράμματα για τον πρώτο. Ουσιαστικής σημασίας σε αυτήν την κατεύθυνση ήταν η μελέτη προυπάρχουσας εργασίας, που υπήρχε στο παραπάνω πεδίο, που σε αυτήν βασίστηκε η παρούσα εργασία και προσπάθησε να επεκτείνει τα αποτελέσματα της, στην ανακάλυψη ξανά γνωστών κβαντικών αλγορίθμων. Οι αλγόριθμοι, που αναπτύχθηκαν, επιλέχτηκαν με βάση τα χαρακτηριστικά τους, ώστε να μπορούν να είναι υλοποιήσιμοι από το υπάρχων λογισμικό και υλικό, αλλά και από το λογισμικό που διατίθεται από την παραπάνω εργασία.
Αναλυτικά η πτυχιακή εργασία κινήθηκε στις ακόλουθες κατευθύνσεις:
Στα τρία πρώτα κεφάλαια μελετήθηκε και διατυπώθηκε σε θεωρητικό επίπεδο η ανάπτυξη και η υλοποίηση του Κβαντικού Υπολογισμού και των σημαντικότερων κβαντικών αλγορίθμων που υπάρχουν.
Στο τέταρτο κεφάλαιο δόθηκε μια εποπτική εικόνα του κβαντικού υπολογιστή της εταιρίας ΙΒΜ, χωρίς να δοθούν λεπτομέρειες υλοποίησης, καθώς δεν ήταν στον στόχο της παρούσας εργασίας.
Στο πέμπτο κεφάλαιο μελετήθηκε και διατυπώθηκε σε θεωρητικό επίπεδο ο Γενετικός Προγραμματισμός.
Στα κεφάλαια έξι, επτά και οχτώ μελετήθηκε και διατυπώθηκε σε θεωρητικό επίπεδο η εφαρμογή του Γενετικού Προγραμματισμού στην ανάπτυξη καινούργιων και ήδη υπαρχόντων κβαντικών αλγορίθμων, με παραδείγματα από την θεωρία.
Στο ένατο κεφάλαιο περάσαμε από την θεωρία στην πράξη ανακαλύπτοντας ξανά γνωστούς κβαντικούς αλγορίθμους με το λογισμικό PushGP και QGAME.
Στο δέκατο κεφάλαιο τρέξαμε τα αποτελέσματα της εφαρμογής του Γενετικού Προγραμματισμού σε κβαντικά συστήματα της εταιρίας ΙΒΜ.
Στο ενδέκατο κεφάλαιο βελτιώσαμε τα αποτελέσματα του δέκατου κεφαλαίου.
The present dissertation focused on the understanding of two technologies / techniques: Quantum Computing, but also Genetic Programming and how using the latter we can develop programs for the former. Essential in this direction was the study of pre-existing work, which existed in the above field, on which the present work was based and tried to extend its results to the rediscovery of well-known quantum algorithms. The algorithms that were developed were selected based on their characteristics, so that they can be implemented from the existing software and hardware, but also from the software available from the above work.
In detail, the dissertation moved in the following directions:
The first three chapters studied and formulated at a theoretical level the development and implementation of Quantum Computing and the most important quantum algorithms that exist.
In the fourth chapter, a supervisory picture of the quantum computer of the IBM company was given, without giving details of implementation, as it was not in the aim of the present work.
In the fifth chapter, Genetic Programming was studied and formulated at a theoretical level.
In chapters six, seven and eight the application of Genetic Programming to the development of new and existing quantum algorithms was studied and formulated at a theoretical level, with examples from the theory.
In the ninth chapter we went from theory to practice rediscovering well-known quantum algorithms with Push and QGAME software.
In the tenth chapter we ran the results of the application of Genetic Programming in quantum systems of the company IBM.
In the eleventh chapter we improved the results of the tenth chapter.