Παρακάτω μπορείτε να βρείτε τα νέα θέματα διπλωματικών της Ομάδας Ευφυών Συστημάτων και Τεχνολογίας Λογισμικού. Οι φοιτητές που ενδιαφέρονται για διπλωματική εργασία παρακαλούνται να συμπληρώσουν τη φόρμα έκφρασης ενδιαφέροντος έως και τις 11/11/2021. Μπορείτε να βρείτε ένα αρχείο με παρουσίαση των διπλωματικών στον σύνδεσμο: to be announced. Τέλος, βρείτε σχετικές ερωτήσεις σχετικά με τη διαδικασία επιλογής και τις απαιτήσεις στον παρακάτω σύνδεσμο: Link.
Περιεχόμενα:
- TH-1/ Υπολογισμός θέσης σε εσωτερικό χώρο με χρήση κινητού και πληροφορίας ασυρμάτων δικτύων
- TH-2/ Δημιουργία κάτοψης εσωτερικού χώρου με χρήση αισθητήρων κινητού τηλεφώνου
- TH-3/ Συνεχής αυθεντικοποίηση χρήσης κινητού τηλεφώνου με πληροφορίες βαδίσματος
- TH-4/ Αναγνώριση κατηγορίας νοητικής έκπτωσης μέσω χαρακτηριστικών ομιλίας
- TH-5/ Βιβλιοθήκη Python μετα-πεδιακής γλώσσας για έξυπνους τύπους δεδομένων (A Python meta-DSL library for smart data types)
- TH-6/ Γραφική επεξεργασία σήματος σε μεγάλους γράφους (Graph Signal Processing in Big Graphs)
- TH-7/ Ανάπτυξη open-domain συστήματος ερωτοαπαντήσεων (QnA open-domain system development)
- TH-8/ Ανάπτυξη ενός ειδησεογραφικού ψηφιακού βοηθού πραγματικού χρόνου
- TH-9/ Ανίχνευση Προβλημάτων Κώδικα με χρήση Τεχνικών Βαθιάς Μάθησης
- TH-10/ Σχεδίαση και Ανάπτυξη μιας Σημασιολογικής Μηχανής Αναζήτησης Κώδικα
- TH-11/ Ανάπτυξη γραφικής διεπαφής σε σύστημα προσομοίωσης ηλεκτρονικών αγορών με στόχο την εξέλιξη τεχνικών δυναμικής τιμολόγησης
- TH-12/ Αναγνώριση οντοτήτων (ontology extraction-mining) για την περιγραφή micro-front ends χρησιμοποιώντας OpenApi3 specification/s
- TH-13/ Ανάπτυξη μηχανισμού αυτόματη μετατροπής (automated refactoring) μονολιθικού πηγαίου κώδικα front-end σε micro-front end αρχιτεκτονική
- TH-14/ Ανάπτυξη συστήματος πρόβλεψης της εξέλιξης των μετρικών στατικής ανάλυσης πηγαίου κώδικα
- TH-15/ Ανάλυση και μοντελοποίηση προφίλ προγραμματιστών (developers profiles) μέσω τεχνικών εξόρυξης γνώσης από αποθετήρια ανοιχτού λογισμικού
- TH-16/ Ανίχνευση ανωμαλιών ασφαλειας σε πραγματικό χρόνο για έξυπνες υποδομές στο πλαίσιο του Internet-of-Things
- TH-17/ Εφαρμογή τεχνολογιών Blockchain για τη δημιουργία αποκεντρωμένης αγοράς υπολογιστικής ισχύος από edge συσκευές
- TH-18/ Ανάπτυξη διαδικτυακής πλατφόρμας για πράκτορες εξόρυξης ρευστότητας σε κρυπτονομίσματα
Υπολογισμός θέσης σε εσωτερικό χώρο με χρήση κινητού και πληροφορίας ασυρμάτων δικτύων
Στην παρούσα διπλωματική εργασία, σκοπός είναι η υλοποίηση μεθόδου ακριβούς εντοπισμού της θέσης ενός ανθρώπου σε εσωτερικό χώρο (indoors localization) με χρήση κινητού τηλεφώνου. Ενώ ο υπολογισμός θέσης σε εξωτερικό χώρο είναι εύκολος μέσω της τεχνολογίας GPS, σε εσωτερικό χώρο παρόμοιοι αισθητήρες δεν παρέχουν ακρίβεια, ή ακόμα και δεν λειτουργούν. Η εργασία περιλαμβάνει δημιουργία mobile application στην οποία θα φορτώνεται η κάτοψη του εσωτερικού ενός χώρου, η συνεχή λήψη των διαθέσιμων ασύρματων δικτύων, όπως και χαρακτηριστικών τους και ο τελικός συνεχής υπολογισμός της θέσης του τηλεφώνου με αλγορίθμους filtering (particle/Kalman filters). Στην λύση, μπορούν να ληφθούν δεδομένα από το επιταχυνσιόμετρο ή την πυξίδα του κινητού τηλεφώνου, τα οποία θα συμψηφιστούν στα μαθηματικά μοντέλα για να προκύψει καλύτερη ακρίβεια.
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, ευχέρεια με μαθηματικές διαδικασίες
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Mobile application development, React native, particle filters, Kalman filters
- Εκτιμώμενος Χρόνος Περάτωσης: 9 Μήνες
- Συνεργαζόμενος Ερευνητής: Τσαρδούλιας Εμμανουήλ
- Σχετικό link: https://www.infsoft.com/technology/positioning-technologies/wi-fi/
Δημιουργία κάτοψης εσωτερικού χώρου με χρήση αισθητήρων κινητού τηλεφώνου
Η χαρτογράφηση εσωτερικού χώρου είναι μία διαδικασία που πολλές φορές είναι απαιτητική, αφού χρειάζεται εξειδικευμένους αισθητήρες μέτρησης απόστασης. Παρ’ όλα αυτά η κάτοψη ενός χώρου είναι μία αρκετά σημαντική πληροφορία για ένα μεγάλο εύρος εφαρμογών. Στην παρούσα διπλωματική, σκοπός είναι να χρησιμοποιηθεί ένα κινητό τηλέφωνο και οι αισθητήρες του, για να παραχθεί ένα (όσο ακριβέστερο γίνεται) blueprint του εσωτερικού ενός κτιρίου. Θα γίνει χρήση του επιταχυνσιομέτρου, του γυροσκοπίου και της πυξίδας ώστε να εκτιμηθεί η απόσταση που περπατά ο χρήστης, όπως και η στροφή του στον χώρο, και με όσες manual πληροφορίες χρειάζεται να δώσει ο χρήστης θα παράγεται μία κάτοψη. Υπάρχει δυνατότητα και για post-processing της κάτοψης με επανέλεγχο αποστάσεων ή manual διόρθωση εμποδίων.
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, ευχέρεια με μαθηματικές διαδικασίες
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Mobile application development, React native, dead reckoning pose calculation, Kalman filters
- Εκτιμώμενος Χρόνος Περάτωσης: 9 Μήνες
- Συνεργαζόμενος Ερευνητής: Τσαρδούλιας Εμμανουήλ
Συνεχής αυθεντικοποίηση χρήσης κινητού τηλεφώνου με πληροφορίες βαδίσματος
Οι κλασικοί τρόποι αυθεντικοποίησης κινητών τηλεφώνων περιλαμβάνουν εισαγωγή pin numbers, patterns ή και δακτυλικό αποτύπωμα. Παρ’ όλα αυτά, τα δύο πρώτα υποκλέπτονται με εύκολο τρόπο, ενώ το δεύτερο μπορεί να αποκτηθεί με φυσική βία κατά την κλοπή ενός κινητού. Ένας εναλλακτικός τρόπος αυθεντικοποίησης αφορά το continuous implicit authentication, κατά το οποίο το κινητό τηλέφωνο πραγματοποιεί συνεχή αυθεντικοποίηση με βάση τον τρόπο χρήσης του, έτσι ώστε να “κλειδώσει” όταν αντιληφθεί ότι το χειρίζεται κάποιος άλλος εκτός του ιδιοκτήτη του. Σκοπός της συγκεκριμένης διπλωματικής εργασίας είναι να υλοποιηθεί μία τέτοια μέθοδος με χρήση πληροφοριών κίνησης και συγκεκριμένα βάδισης. Η εφαρμογή που θα γίνει θα λάβει υπόψη της αισθητήρες του κινητού όπως επιταχυνσιόμετρο και γυροσκόπιο, θα παράγει μοντέλα βάδισης υπολογίζοντας συγκεκριμένα χαρακτηριστικά (features) και θα προσπαθεί να αναγνωρίσει παρεκκλίσεις στην κίνηση του χρήση.
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, ευχέρεια με μαθηματικές διαδικασίες
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Mobile application development, React native, Machine learning
- Εκτιμώμενος Χρόνος Περάτωσης: 9 Μήνες
- Συνεργαζόμενος Ερευνητής: Τσαρδούλιας Εμμανουήλ, Καρανικιώτης Θωμάς
Αναγνώριση κατηγορίας νοητικής έκπτωσης μέσω χαρακτηριστικών ομιλίας
Ως γνωστο στις νευροεπιστήμες, όσο νωρίτερα εντοπιστεί η νοητική έκπτωση σε ένα υποκείμενο, τόσο μεγαλύτερες πιθανότητες υπάρχουν να μείνει στάσιμη ή να επιβραδυνθεί σε σημαντικό βαθμό. Σήμερα, υπάρχει μία πληθώρα από δοκιμασίες οι οποίες μπορούν να διαχωρίσουν ως ένα βαθμό τις κατηγορίες έκπτωσης στο γήρας: α) το υγιές γήρας (Heahty), β) η υποκειμενική έκπτωση, όπου ο άνθρωπος έχει παράπονα ότι ξεχνά, αλλά τα υπάρχοντα τεστς δεν μπορούν να μετρήσουν την έκπτωση (SCD), γ) η ήπια νοητική έκπτωση (MCI) και δ) η άνοια (AD). Το πρόβλημα είναι ότι μία μεγάλη μερίδα του ηλικιωμένου πληθυσμού δεν έχει πρόσβαση σε κέντρα ημέρας, όπου διενεργούνται τα τεστς. Επίσης είναι γνωστό ότι όσο μεγαλύτερη η νοητική έκπτωση και όσο δυσκολότερο το task που έχει να πραγματοποιήσει το υποκείμενο, τόσο δυσχεραίνει και ο τρόπος ομιλίας του. Σκοπός της διπλωματικής εργασίας είναι η υλοποίηση μιας εφαρμογής που στηρίζεται σε machine learning η οποία θα δέχεται σαν είσοδο μία μαγνητοφωνημένη ομιλία και θα υπολογίζει τον βαθμό νοητικής έκπτωσης. Η εργασία θα πραγματοποιηθεί σε συνεργασία με την Ελληνική Εταιρεία Νόσου Alzheimer και Συγγενών Διαταραχών Κέντρο Ημέρας "Αγία Ελένη", στην οποία θα γίνουν οι μαγνητοσκοπήσεις σε τρεις συνθήκες: α) σε κανονικές συνθήκες αφήγησης, β) σε απλό νοητικό έργο και γ) σε διπλό νοητικό έργο (πχ περπάτα σε ένα τετράγωνο και να αφαιρείς συνεχώς 7 από το 100). Μεθοδολογικα, δεν μας ενδιαφέρει το τι θα πει το υποκείμενο αλλά πως θα το πει, άρα θα εξαχθούν στατιστικά και χαρακτηριστικά που αφορούν την ομιλία για να εισαχθούν στους αλγορίθμους ML.
- Επιθυμητές γνώσεις: Επεξεργασία ήχου, machine learning
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Python, Επεξεργασία ήχου, machine learning, neurodegenerative-related knowledge
- Εκτιμώμενος Χρόνος Περάτωσης: 9 Μήνες
- Συνεργαζόμενος Ερευνητής: Τσαρδούλιας Εμμανουήλ, Νικόλας Μάλαμας
Βιβλιοθήκη Python μετα-πεδιακής γλώσσας για έξυπνους τύπους δεδομένων (A Python meta-DSL library for smart data types)
Η χρήση βιβλιοθηκών αποτελεί πλέον αναπόσπαστο τμήμα της συγγραφής κώδικα, καθώς επιτρέπει την επανάχρηση περίπλοκων υλοποιήσεων. Αυτό έχει σαν αποτέλεσμα ένα μεγάλο μέρος του χρόνου ανάπτυξης προγραμμάτων να αφιερώνεται στην οργάνωση και μετασχηματισμό των δομών δεδομένων τους, ώστε αυτές να γίνουν συμβατές με τις εκάστοτε βιβλιοθήκες. Για παράδειγμα, σε προγράμματα μηχανικής μάθησης, λίστες από ζεύγη εισόδων-εξόδων πρέπει συνήθως να διασπαστούν σε ξεχωριστές λίστες εισόδων και εξόδων. Σκοπός αυτής της διπλωματικής είναι να δημιουργηθεί μια βιβλιοθήκη της γλώσσας Python, η οποία θα μειώνει δραστικά το χρόνο ανάπτυξης μετασχηματισμών, είτε για τη χρήση υπαρχόντων βιβλιοθηκών είτε για την ανάπτυξη νέων βιβλιοθηκών με φιλικότερες προγραμματιστικές διεπαφές. Για να επιτευχθεί αυτό, θα στηριχτούμε στην παρατήρηση ότι οι μετασχηματισμοί για συγκεκριμένες βιβλιοθήκες απαρτίζονται συνήθως από απλές επιμέρους ενέργειες (π.χ. παράλληλη προσπέλαση ή διαχωρισμός λιστών, μετατροπή αντικειμένων), των οποίων οι επιτρεπόμενοι συνδυασμοί ορίζονται από πεδιακές γλώσσες (Domain Specific Languages - DSLs). Οπότε η βιβλιοθήκη που θα αναπτυχθεί: α) θα υλοποιεί μια μετα-DSL, δηλαδή μια γλώσσα που επιτρέπει τον ορισμό DSLs, για μετασχηματισμούς συγκεκριμένων τύπων δεδομένων και β) θα δημιουργεί αυτόματα τους μετασχηματισμούς κατά την εκτέλεση χρησιμοποιώντας τεχνικές που έχουν χρησιμοποιηθεί για σύνθεση προγραμμάτων από τύπους δεδομένων (type-driven program synthesis) και συνδυασμό υπηρεσιών (service composition). Η διπλωματική μπορεί να επικεντρωθεί είτε στη χρηστικότητα (π.χ. ελαχιστοποίηση του χρόνου εκτέλεσης) είτε στην εξερεύνηση της διαδικασίας σύνθεσης (π.χ. Με χρήση μηχανικής μάθησης). Σε κάθε περίπτωση, σκοπός είναι η βιβλιοθήκη που θα αναπτυχθεί να είναι επαρκώς υψηλής ποιότητας ώστε να μπορεί όντως να χρησιμοποιηθεί από άλλα έργα λογισμικού και να διανεμηθεί μέσω PyPI (https://pypi.org). Παράδειγμα επιθυμητού αποτελέσματος μετά την ανάπτυξη της βιβλιοθήκης:
# define a DSL
dsl = DSL()
dsl.add_transformer(zip)
dsl.add_transformer(lambda x, y: x*y)
dsl.add_transformer(lambda x: [x], given=lambda x: isinstance(x, float))
# create a new smart object in the DSL
obj = dsl.object([1, 2, 3], [2, 2, 2])
for x, y in obj: # automatically call zip([1, 2, 3], [2, 2, 2])
print(x, y)
>>> 1 2
>>> 2 2
>>> 3 2
for x in obj: # automatically call [x*y for x, y in zip([1, 2, 3], [2, 2, 2])]
print(x)
>>> 2
>>> 4
>>> 6
obj2 = dsl.object(1, 2)
for x, y in obj2: # automatically call zip([1], [2])
print(x, y)
>>> 1 2
- Επιθυμητές γνώσεις: Καλή γνώση Python (υποχρεωτικό - να φαίνεται στην αίτηση), Θεωρία Υπολογισμών και Αλγορίθμων, Git, φαντασία και όρεξη για δουλειά
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Python, DSLs, Code synthesis, Service composition, First-order logic, Gherkin, Git
- Εκτιμώμενος Χρόνος Περάτωσης: 9 Μήνες
- Συνεργαζόμενος Ερευνητής: Εμμανουήλ (Μανιός) Κρασανάκης ([email protected])
Γραφική επεξεργασία σήματος σε μεγάλους γράφους (Graph Signal Processing in Big Graphs)
Τα τελευταία χρόνια έχει καταστεί δημοφιλής η ανάλυση δεδομένων που οργανώνονται στη μορφή γράφων (π.χ. κοινωνικών γράφων όπου οι ακμές αντιστοιχούν σε αλληλεπιδράσεις μεταξύ των χρηστών σε κοινωνικές πλατφόρμες, βιολογικών γράφων όπου οι ακμές αντιστοιχούν σε συσχετίσεις μεταξύ αλυσίδων DNA, γράφων λογισμικού όπου οι ακμές αντιστοιχούν σε εξαρτήσεις οντοτήτων πηγαίου κώδικα). Το πλέον διαδεδομένο εργαλείο για την εξαγωγή συμπερασμάτων από γράφους (π.χ. κατηγοριοποίηση των κορυφών με βάση το πόσο “κοντά” αυτές βρίσκονται σε γνωστά μέλη κοινοτικών ομάδων) είναι η γραφική επεξεργασία σήματος (https://arxiv.org/pdf/1712.00468.pdf), η οποία αποτελεί γενίκευση της ψηφιακής επεξεργασία σήματος σε γράφους. Αυτή επιτρέπει τον ορισμό γραφικών φίλτρων (graph filters), τα οποία πραγματοποιούν διάχυση γνωστής πληροφορίας μεταξύ γειτονικών κορυφών ώστε να πραγματοποιηθεί το ισοδύναμο του φασματικού φιλτραρίσματος στο πεδίο των ακμών (αντί στις συχνότητες του μετασχηματισμού Fourier). Αυτή η πρακτική είναι ιδιαίτερα απλή στην υλοποίηση και έχει ψευδο-γραμμικό χρόνο εκτέλεσης. Έτσι, επιτρέπει τη γρήγορη επεξεργασία μεγάλων γράφων με εκατομμύρια ακμές, εφόσον αυτοί χωράνε στη μνήμη RAM του υπολογιστή. Πολύ συχνά όμως, οι γράφοι προς επεξεργασία στον πραγματικό κόσμο μεταβαίνουν στην κλίμακα των μεγάλων δεδομένων (Big Data) και περιέχουν δισεκατομμύρια ή ακόμη περισσότερες ακμές, οι οποίες δεν μπορούν να φορτωθούν ταυρόχτονα. Για να λυθεί αυτό το πρόβλημα μπορούν να χρησιμοποιηθούν τεχνικές παραλληλοποίησης σε υπο-προβλήματα, όπως η MapReduce, ή τοπικές βάσεις δεδομένων. Παρόλα αυτά, υπάρχει έλλειψη εργαλείων στοχευμένων καθαρά σε υπολογισμούς εντός ενός υπολογιστή χωρίς τη χρήση εξωτερικών εργαλείων ή υποδομών. Υπάρχοντες προσπάθεις περιλαμβάνουν τα έργα GraphChi (https://github.com/GraphChi) και Cassovary (https://github.com/twitter/cassovary), τα οποία κρατούν τους γράφους αποθηκευμένους στο δίσκο και τους φορτώνουν τμηματικά κατά την υλοποίηση. Σκοπός αυτής της διπλωματικής είναι η ανάπτυξη κώδικα σε Python ή Java που θα επιτρέψει την επεξεργασία σήματος σε μεγάλους γράφους με την πρακτική της τμηματικής φόρτωσης. Σε αντίθεση με τις υπάρχουσες λύσεις που επιτρέπουν τυχαία προσπέλαση κορυφών και ακμών, θα διερευνηθούν τεχνικές βελτιστοποίησης συγκεκριμένα για την ελαχιστοποίησης του χρόνου εκτέλεσης γραφικών φίλτρων. Η διπλωματική μπορεί να κινηθεί σε διάφορους άξονες, όπως τεχνικές αραιοποίησης (sparsification) για επεξεργασία της κεντρικής δομής γράφων (graph backbone), ρεφινάρισμα αρχικών εκτιμήσεων, συγχώνευσης αποτελεσμάτων υπογράφων, τοπικοποίησης (localization) για εκτέλεση πράξεων εντός μικρών γειτονιών των κορυφών ή ανίχνευσης μοτίβων προσπέλασης για πρόβλεψη του τι θα φορτωθεί στη συνέχεια. Μπορεί να πραγματοποιηθεί είτε θεωρητική είτε πρακτική ανάλυση. Σε κάθε περίπτωση, ο κώδικας που θα παραχθεί θα ελεγχθεί σε μια συλλογή πραγματικών γράφων και υπάρχει ο απώτερος στόχος ένταξής του σε υπάρχοντα συστήματα γραφικής επεξεργασίας σήματος.
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, Ανάλυση και σχεδιασμός αλγορίθμων, Δομές δεδομένων, φαντασία και όρεξη για δουλειά
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Python / Java, Επεξεργασία Γράφων, Εξόρυξη Δεδομένων σε Γράφους, Graph Signal Processing, Big Data, MapReduce, Optimization
- Εκτιμώμενος Χρόνος Περάτωσης: 6-9 Μήνες
- Συνεργαζόμενος Ερευνητής: Εμμανουήλ (Μανιός) Κρασανάκης ([email protected])
Ανάπτυξη open-domain συστήματος ερωτοαπαντήσεων (QnA open-domain system development)
Μια από τις πιο ενδιαφέρουσες εφαρμογές της επεξεργασίας και κατανόησης φυσικής γλώσσας είναι η δημιουργία συστημάτων ερωταντήσεων.. Αυτά τα συστήματα συνήθως εκπαιδεύονται να υποστηρίζουν ένα περιορισμένο σύνολο ερωτήσεων (closed-domain), ώστε να έχουν καλή και ελεγχόμενη απόδοση. Αντίθετα, σ αυτή την διπλωματική θα μελετηθεί και αναπτυχθεί ένα σύστημα το οποίο δεν έχει συγκεκριμένο πεδίο γνώσεων (open-domain), αλλά μπορεί να απαντήσει σε ένα πλήθος ερωτήσεων από διαφορετικούς τομείς γενικού χαρακτήρα. Συγκεκριμένα, το σύστημα αυτό θα αποτελείται από δύο τμήματα. Στο πρώτο, θα γίνεται η επεξεργασία της ερώτησης του χρήστη και θα αναζητούνται σχετικά κείμενα από μια γνωσιακή βάση δεδομένων που θα έχει δημιουργηθεί. Αυτό μπορεί να επιτευχθεί με information retrieval και topic modelling τεχνικές. Το δεύτερο τμήμα θα είναι υπεύθυνο για την παραγωγή της τελικής απάντησης του συστήματος. Συγκεκριμένα, τα πιο σχετικά κείμενα του πρώτου τμήματος θα εισέρχονται σε μοντέλα deep learning (π.χ. Greek-BERT) τα οποία θα έχουν εκπαιδευτεί καταλλήλως και θα μπορούν να εντοπίσουν και να παράγουν τις σωστές απαντήσεις για την ερώτηση του χρήστη. Το σύστημα αυτό θα υποστηρίζει αποκλειστικά την ελληνική γλώσσα.
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, μηχανική μάθηση, φαντασία και όρεξη για δουλειά
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Python, Natural Language Understanding, Deep Learning, Information retrieval
- Εκτιμώμενος Χρόνος Περάτωσης: 9 Μήνες
- Συνεργαζόμενος Ερευνητής: Νικόλας Μάλαμας
Ανάπτυξη ενός ειδησεογραφικού ψηφιακού βοηθού πραγματικού χρόνου
H ειδησεογραφία αφορά τη συλλογή, επεξεργασία και μετάδοση ειδήσεων και πραγματοποιείται συνήθως μέσω εφημερίδων, της τηλεόρασης και του Ίντερνετ. Στόχος αυτής της διπλωματικής είναι να αυτοματοποιήσει αυτή την διαδικασία, αναπτύσσοντας έναν ψηφιακό βοηθό υπεύθυνο για την ενημέρωση των χρηστών για την επικαιρότητα. Συγκεκριμένα, θα δημιουργηθεί μια υποδομή για την συλλογή των νέων ειδήσεων σε πραγματικό χρόνο. Στη συνέχεια, θα μελετηθούν διάφοροι αλγόριθμοι κατανόησης φυσικής γλώσσας με στόχο την κατηγοριοποίηση των ειδήσεων και την ταξινόμηση τους με βάση τα requests/intents του χρήστη. Μετά, θα μελετηθεί η δυνατότητα δημιουργίας μιας μικρής περίληψης από μεγαλύτερα κείμενα (τις ειδήσεις) προκειμένου να μετατραπούν σε μια ευπαρουσίαστη μορφή και μέγεθος. Τέλος, θα δημιουργηθεί ένας πρωτότυπος ειδησεογραφικός ψηφιακός βοηθός με το Rasa framework, ο οποίος θα καταλαβαίνει τις προθέσεις του χρήστη και θα τον ενημερώνει με τις πιο κατάλληλες πληροφορίες.
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, φαντασία και όρεξη για δουλειά
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Python, Natural Language Understanding, full-stack development, Rasa Chatbot development framework, Information retrieval
- Εκτιμώμενος Χρόνος Περάτωσης: 9 Μήνες
- Συνεργαζόμενος Ερευνητής: Νικόλας Μάλαμας
Ανίχνευση Προβλημάτων Κώδικα με χρήση Τεχνικών Βαθιάς Μάθησης
Η δημιουργία αποθηκών ανοικτού λογισμικού (Sourceforge, GitHub, Gitlab, κτλ.) τα τελευταία χρόνια προσφέρει πολλές δυνατότητες μελέτης για την απάντηση πληθώρας ερευνητικών ερωτημάτων σε μεγάλη κλίμακα. Πέρα από την ανάπτυξη λογισμικού που επιταχυνθεί σημαντικά, η βελτίωση της διαδικασίας συντήρησης αποτελεί κρίσιμο πεδίο έρευνας για την Τεχνολογία Λογισμικού. Σε αυτό το πλαίσιο, είναι σημαντικός ο αποτελεσματικός εντοπισμός προβλημάτων κώδικα, τόσο σε επίπεδο ποιότητας/σχεδίασης (π.χ. code/design smells) όσο και σε επίπεδο υλοποίησης (π.χ. bugs). Σκοπός της διπλωματικής είναι η αξιοποίηση τεχνικών βαθιάς μάθησης για την εύρεση προβλημάτων κώδικα όπως τα παραπάνω. Με την ανάκτηση δεδομένων κώδικα από αποθετήρια και τη χρήση κατάλληλων εργαλείων είναι εφικτή η δημιουργία συνόλων δεδομένων (με γνωστά προβλήματα κώδικα/ground truth issues) για την εκπαίδευση νευρωνικών δικτύων. Ένα εκπαιδευμένο σύστημα μπορεί να εντοπίζει σφάλματα όπως η λανθασμένη κλήση μιας συνάρτησης (π.χ. με λάθος σειρά ορισμάτων), η λανθασμένη χρήση κάποιου operator (π.χ. χρήση <= αντί για <), ή ακόμα και προβλήματα πολυπλοκότητας (π.χ. πολλές εμφωλευμένες συνθήκες σε μια συνάρτηση) και γενικά πιθανά προβλήματα ποιότητας που μπορεί να οδηγήσουν σε λάθη (π.χ. χρήση magic numbers). Το αποτέλεσμα της εργασίας θα είναι ένα σύστημα ικανό να εντοπίζει ορισμένες κατηγορίες προβλημάτων κώδικα.
- Σχετικοί σύνδεσμοι/Παρόμοια συστήματα:
- Επιθυμητές γνώσεις: Καλή γνώση Προγραμματισμού, γνώση Αναγνώρισης Προτύπων, φαντασία και όρεξη για δουλειά
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Python, Βαθιά Μάθηση (Deep Learning), Εξόρυξη Δεδομένων (Data Mining)
- Εκτιμώμενος Χρόνος Περάτωσης: 9 Μήνες
- Συνεργαζόμενος Ερευνητής: Θεμιστοκλής Διαμαντόπουλος
Σχεδίαση και Ανάπτυξη μιας Σημασιολογικής Μηχανής Αναζήτησης Κώδικα
Η ταχεία εξάπλωση του διαδικτύου καθώς και η δημιουργία αποθηκών ανοικτού λογισμικού, όπως το GitHub, έχουν αλλάξει ριζικά τον τρόπο συγγραφής κώδικα τα τελευταία χρόνια. Οι αποθήκες αυτές περιέχουν πλήθος τμημάτων κώδικα τα οποία με κατάλληλη αξιοποίηση θα μπορούσαν να μειώσουν σημαντικά το χρόνο που απαιτείται για την ανάπτυξη λογισμικού, ενισχύοντας ταυτόχρονα την ποιότητα του παραγόμενου κώδικα. Η εύρεση κατάλληλων τμημάτων κώδικα και ενσωμάτωσή τους στον κώδικα του προγραμματιστή αποτελεί συχνά μια πολύπλοκη διαδικασία που απαιτεί πολύ χρόνο. Για το σκοπό αυτό, έχουν αναπτυχθεί τεχνικές σημασιολογικής ανάλυσης (lda, deep learning embeddings) που μπορούν να εξάγουν χρήσιμες πληροφορίες για τη λειτουργικότητα του κώδικα που αναλύεται. Επιπλέον, τα σχόλια στον κώδικα, το κείμενο που τον συνοδεύει, η τεκμηρίωση (documentation) καθώς και συνοδευτικά αρχεία readme προσφέρουν χρήσιμη σημασιολογική πληροφορία που μπορεί να βοηθήσει στην αναζήτηση των τμημάτων αυτών που ανταποκρίνονται στο ερώτημα του προγραμματιστή. Σκοπός της διπλωματικής είναι η δημιουργία μιας σημασιολογικής μηχανής αναζήτησης κώδικα που θα μπορεί να δέχεται ερωτήματα σε φυσική γλώσσα (π.χ. how can I write to file) και να επιστρέφει χρήσιμα τμήματα κώδικα (π.χ. component που γράφει σε αρχείο). Για το σκοπό αυτό θα χρησιμοποιηθούν τεχνικές επεξεργασίας φυσικής γλώσσας και/ή σημασιολογικής ανάλυσης (π.χ. deep learning embeddings), ενώ επιπλέον θα αναπτυχθεί η κατάλληλη υποδομή αναζήτησης με χρήση κατάλληλης βάσης δεδομένων.
- Σχετικοί σύνδεσμοι/Παρόμοια συστήματα:
- Επιθυμητές γνώσεις: Καλή γνώση Προγραμματισμού, γνώση Αναγνώρισης Προτύπων, γνώση Βάσεων Δεδομένων, φαντασία και όρεξη για δουλειά
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Python, Επεξεργασία Φυσικής Γλώσσας (Natural Language Processing), Βαθιά Μάθηση (Deep Learning), Ανάκτηση Πληροφοριών (Information Retrieval)
- Εκτιμώμενος Χρόνος Περάτωσης: 9 Μήνες
- Συνεργαζόμενος Ερευνητής: Θεμιστοκλής Διαμαντόπουλος
Ανάπτυξη γραφικής διεπαφής σε σύστημα προσομοίωσης ηλεκτρονικών αγορών με στόχο την εξέλιξη τεχνικών δυναμικής τιμολόγησης
H δυναμική τιμολόγηση (dynamic pricing) είναι η διαδικασία με την οποία οι επιχειρήσεις αλλάζουν τις τιμές πωλήσεις με χρήση αλγορίθμων που λαμβάνουν υπόψη τον ανταγωνισμό, την προσφορά και ζήτηση, και άλλους εξωτερικούς παράγοντες της αγοράς. Αποτελεί μία κοινή πρακτική την οποία συναντάμε σε πολλούς τομείς της καθημερινότητας, όπως όταν κάνουμε κράτηση για αεροπορικά εισιτήρια και ξενοδοχεία, ή στον τομέα της ηλεκτρικής ενέργειας. Παρόλα αυτά η εφαρμογή παρόμοιων τεχνικών παρουσιάζει περιορισμένη εφαρμογή στα ηλεκτρονικά καταστήματα λιανικής πώλησης. H δυναμική τιμολόγηση είναι μία διαδικασία με ιδιαίτερες προκλήσεις, απαιτεί μία πολυπαραγοντική ανάλυση η οποία συνδυάζει δεδομένα ζήτησης, ανταγωνισμού, κόστους και διαθέσιμου στοκ. Αποτελεί μια προσέγγιση καθορισμού των τιμών που βασίζεται στην ανάλυση των δεδομένων και την ευελιξία. Οι τεχνικές δυναμικής τιμολόγησης επιτρέπουν την διαμόρφωση και τον έλεγχο των τιμών σε συνθήκες σχεδόν πραγματικού χρόνου, ανάλογα με τα προϊόν, τις προηγούμενες αλληλεπιδράσεις των πελατών με την ιστοσελίδα και το προφίλ τους, δημιουργώντας εξατομικευμένες προσφορές. Στόχος της διπλωματικής εργασίας είναι η ανάπτυξη κατάλληλων γραφικών διεπαφών και λοιπών υποσυστημάτων για την δημιουργία ενός ολοκληρωμένου συστήματος προσομοίωσης ηλεκτρονικών αγορών, όπου οι χρήστες θα μπορούν να δοκιμάζουν και να εξελίξουν τεχνικές δυναμικής τιμολογησης. Η ανάπτυξη του συστήματος δύναται να βασιστεί σε ανώνυμα δεδομένα που θα προέλθουν από το ηλεκτρονικό φαρμακείο www.pharm24.gr
- Σχετικές διπλωματικές: https://cassiopia.ee.auth.gr/index.php/s/vgaZRlojPi0zuB3
- Επιθυμητές γνώσεις: Καλή γνώση Προγραμματισμού, γνώση Αναγνώρισης Προτύπων, γνώση Βάσεων Δεδομένων, φαντασία και όρεξη για δουλειά
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: GUI programming, dynamic pricing, optimization, e-commerce, data analysis
- Εκτιμώμενος Χρόνος Περάτωσης: 9 Μήνες
- Συνεργαζόμενος Ερευνητής: Κωνσταντίνος Βαβλιάκης
Αναγνώριση οντοτήτων (ontology extraction-mining) για την περιγραφή micro-front ends χρησιμοποιώντας OpenApi3 specification/s
Τα τελευταίο διάστημα η ανάπτυξη του front end των διαδικτυακών εφαρμογών γίνεται όλο και πιο περιπλοκή. Αυτό το φαινόμενο ενισχύεται από την ύπαρξη διαφορετικών frameworks οπως και πληθώρα βιβλιοθηκών για διαφορετικές λειτουργίες (state management, styling etc). Ακολουθώντας την ταχεία αναπτυσσόμενη τάση στην αρχιτεκτονική του back-end, μια νέα αρχιτεκτονική προσέγγιση παρουσιάστηκε για να επιλύσει μερικές τα παραπάνω προβλήματα και να απλοποιήσει την διαδικασία ανάπτυξη του front end ονομαζόμενη micro-front ends (Micro Frontends - extending the microservice idea to frontend development). Οι οντολογίες αναπαριστούν “γνώση” ενός συγκεκριμένου πεδίου, μέσω από την καταγραφή των χαρακτηριστικών, σχέσεων και αλληλοεπιδράσεων (OWL 2 Web Ontology Language Document Overview (Second Edition)). Σήμερα χρησιμοποιούνται ώστε να υλοποιηθούν διάφορες διαδικασίες του semantic web, όπως βελτιστοποίηση της αναζήτηση στο διαδίκτυο, κατασκευή βάσης δεδομένων γνώσης κλπ. Η χρήση τους παρέχει ένα υπόβαθρο για την αναγνώριση “λειτουργιών” μιας ιστοσελίδας για την περαιτέρω επεξεργασία του πηγαίου κώδικα. (Ontology Learning Procedures Based on Web Mining Techniques, A Comprehensive Review on Ontology and Semantic Web) Το πρότυπο OpenApi3 (OpenAPI Specification - Version 3.0.3) είναι ένα πρότυπο περιγραφής υπηρεσιών, με την μορφή ερωτοαπαντήσεων της υπηρεσίας. Ενδείκνυται για την ολοκληρωμένη περιγραφή των λειτουργιών μια προγραμματιστικής διεπαφής, επιπρόσθετα μπορεί να χρησιμοποιηθεί για την αυτόματη παραγωγή κώδικα (Hello from OpenAPI Generator). Ο σκοπός αυτής της εργασία είναι λαμβάνοντας τον πηγαίο κώδικα του front end (html) να εξάγει τις οντότητες που υπάρχουν και έχει νόημα να διαχωριστούν σε microfronts και στην συνέχεια να συνθέτει το OpenApi3 specification που περιγράφει τις νέες απαιτήσεις των παραγόμενων micro-front end. ( παράδειγμα για decomposition microservices Microservices Identification Through Interface Analysis). Στο πλαίσιο αυτή της διπλωματικής εργασίας θα υλοποιηθεί ένα web app που δίνοντας του ένα site θα υλοποιεί το crawling, oddities recognition-clustering, παραγωγή του OpenApi3 και μαζί με την γραφική διεπαφή του χρήστη για την παρουσίαση των αποτελεσμάτων.
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, Αναγνώριση προτύπων
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Αλγόριθμοι και τεχνικές ανάλυσης δεδομένων, oddity recognition, model driven engineering, web development (React, JS:(Node,Express) or Python (Django), MongoDB).
- Εκτιμώμενος Χρόνος Περάτωσης: 6-9 Μήνες
- Συνεργαζόμενος Ερευνητής: Λαμπρίδης Αλέξανδρος
Ανάπτυξη μηχανισμού αυτόματη μετατροπής (automated refactoring) μονολιθικού πηγαίου κώδικα front-end σε micro-front end αρχιτεκτονική
Τα τελευταίο διάστημα η ανάπτυξη του front end των διαδικτυακών εφαρμογών γίνεται όλο και πιο περιπλοκή. Αυτό το φαινόμενο ενισχύεται από την ύπαρξη διαφορετικών frameworks οπως και πληθώρα βιβλιοθηκών για διαφορετικές λειτουργίες (state management, styling etc). Ακολουθώντας την ταχεία αναπτυσσόμενη τάση στην αρχιτεκτονική του back-end, μια νέα αρχιτεκτονική προσέγγιση παρουσιάστηκε για να επιλύσει μερικές τα παραπάνω προβλήματα και να απλοποιήσει την διαδικασία ανάπτυξη του front end ονομαζόμενη micro-front ends (Micro Frontends - extending the microservice idea to frontend development). Τα micro-fronts στηρίζονται στον διαχωρισμό των λειτουργιών των γραφικών διεπαφών και στην επαναχρησιμοποίηση τους. Όταν εφαρμοστούν ορθά εξασφαλίζουν την ανεξαρτητοποίηση των τεχνολογιών που υλοποιούν τις γραφικές διεπαφές, την σπονδυλωτή (modular) κατασκευή διεπαφών, ενσωμάτωση νέων τεχνολογιών γρηγορότερα κλπ. Όπως κάθε αρχιτεκτονική και αυτή έχει διάφορα πρότυπα για να επιτευχθεί, συνεπώς χρειάζεται χρόνος για να τα κατανοήσουν τα εμπλεκόμενα μέρη (teams of developers), να μοντελοποιηθεί και να εφαρμοστεί αυτή η αρχιτεκτονική (Research and Application of Micro Frontends). Η εφαρμογή μια νέας αρχιτεκτονικής, καθώς έχει δομημένα πρότυπα, μπορεί να αυτοματοποιηθεί χρησιμοποιώντας τεχνικές model driven engineering τεχνικές. Συνεπώς να μειωθεί ο χρόνος της εφαρμογής και ο χρόνος εμπλοκής των προγραμματιστών που απαιτούνται για μια τέτοια μετάβαση. Ο σκοπός αυτής της διπλωματικής εργασίας είναι να μοντελοποιηθούν τα βασικά χαρακτηριστικά που αποτελούν ένα micro front end, να δημιουργηθεί ο κατάλληλος μηχανισμός που να μετασχηματίζει τον πηγαίο κώδικα ενός λειτουργικού front end site βάση της αρχιτεκτονικής micro fronts. (παράδειγμα για microservices From Monolith to Microservices: A Classification of Refactoring Approaches) Στο πλαίσιο αυτής της διπλωματική θα υλοποιηθούν τα καταλληλα templates που μοντελοποιούν την νέα αρχιτεκτονική, ένα service που εισάγοντας ένα site με κατάλληλα χαρακτηριστικά (custom attributes στην html, και API που να ακολουθεί OpenApi3 spec) θα εξάγει τον νέο κώδικα και την γραφική διεπαφή του χρήστη για να επιβλέπει τις παραπάνω λειτουργίες.
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, Τεχνολογία λογισμικού
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: software automated code refactoring - generation, model driven engineering, web development (React, JS:(Node,Express) or Python (Django), MongoDB)
- Εκτιμώμενος Χρόνος Περάτωσης: 6-9 Μήνες
- Συνεργαζόμενος Ερευνητής: Λαμπρίδης Αλέξανδρος
Ανάπτυξη συστήματος πρόβλεψης της εξέλιξης των μετρικών στατικής ανάλυσης πηγαίου κώδικα
Τα τελευταία χρόνια, οι απαιτήσεις των χρηστών από τα έργα λογισμικού συνεχώς μεταβάλλονται και αναπτύσσονται, ενώ η αύξησή τους οδηγεί σε πολύ περιορισμένες προθεσμίες εκπλήρωσης στόχων, το οποίο έχει συχνά σαν αποτέλεσμα κακογραμμένο κώδικα, επιρρεπή σε σφάλματα. Για τον λόγο αυτό, έχει δοθεί ιδιαίτερη έμφαση τα τελευταία χρόνια στην αξιολόγηση της ποιότητας ενός έργου λογισμικού, με τη χρήση μετρικών στατικής ανάλυσης κώδικα. Ταυτόχρονα, η δημιουργία και η χρήση αποθηκών λογισμικού, όπως το GitHub, επιτρέπουν την καταγραφή ολόκληρου του ιστορικού εξέλιξης ενός έργου λογισμικού, καθιστώντας εφικτή την ανάλυση του πηγαίου κώδικα και των μετρικών στατικής ανάλυσης σε κάθε βήμα της ανάπτυξης του κώδικα. Σκοπός της διπλωματικής είναι η ανάπτυξη ενός συστήματος, το οποίο θα αναλύει την εξέλιξη των μετρικών στατικής ανάλυσης ενός έργου λογισμικού στον χρόνο, με στόχο τον εντοπισμό αρχείων και μετρικών που εμφανίζουν μια αρνητική εξέλιξη και τείνουν να υπερβούν κάποια όρια. Ταυτόχρονα, θα αναλύεται η εξέλιξη του έργου, όπως αυτή αντικατοπτρίζεται στις μετρικές, και θα αναγνωρίζεται το στάδιο στο οποίο βρίσκεται η ανάπτυξη του έργου.
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, φαντασία και όρεξη για δουλειά, Machine Learning, Python
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Python, Machine Learning, Software Quality Metrics
- Εκτιμώμενος Χρόνος Περάτωσης: 6-9 Μήνες
- Συνεργαζόμενος Ερευνητής: Θωμάς Καρανικιώτης
Ανάλυση και μοντελοποίηση προφίλ προγραμματιστών (developers profiles) μέσω τεχνικών εξόρυξης γνώσης από αποθετήρια ανοιχτού λογισμικού
Η επιτυχία ενός έργου λογισμικού τόσο ως προς την κάλυψη των λειτουργικών και μη λειτουργικών του απαιτήσεων, όσο και των ποιοτικών προδιαγραφών που έχουν τεθεί, είναι άμεσα συνυφασμένη με το σύνολο των προγραμματιστών που έλαβαν μέρος στην ανάπτυξή του. Η παρούσα διπλωματική εργασία στοχεύει στην ανάπτυξη μιας μεθοδολογίας για τη μοντελοποίηση των χαρακτηριστικών συνεισφοράς των προγραμματιστών μέσω της εφαρμογής τεχνικών εξόρυξης γνώσης σε πληροφορία που προέρχεται από αποθετήρια κώδικα (όπως π.χ. τα commits). Απώτερος σκοπός της ανάλυσης αυτής αποτελεί η αυτοματοποιημένη εξαγωγή ενός Developer's Profile που θα συνοψίζει τα χαρακτηριστικά της συνεισφοράς του τόσο σε επίπεδο Development όσο και σε επίπεδο Operations.
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, φαντασία και όρεξη για δουλειά, Machine Learning, JavaScript (Node.js)
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Javascript, Machine Learning, Software Quality Metrics, Contributions Metrics, GitHub Plugins Development
- Εκτιμώμενος Χρόνος Περάτωσης: 6-9 Μήνες
- Συνεργαζόμενος Ερευνητής: Μιχάλης Παπαμιχαήλ
Ανίχνευση ανωμαλιών ασφαλειας σε πραγματικό χρόνο για έξυπνες υποδομές στο πλαίσιο του Internet-of-Things
Η ανίχνευση ανωμαλιών ασφαλείας είναι η διαδικασία αναγνώρισης ασυνήθιστων ενεργειών σε ένα σύνολο παρατηρήσεων. Αυτό είναι ένα ζωτικό έργο σε διάφορους τομείς, συμπεριλαμβανομένης της ασφάλειας στον κυβερνοχώρο. Στο πλαίσιο του Internet-of-Things και των έξυπνων υποδομών (π.χ. smart houses), οι παρατηρήσεις συγκεντρώνονται από ένα σύνολο κατανεμημένων συσκευών και μηχανημάτων. Η παρούσα διπλωματική εργασία στοχεύει στην ανάπτυξη ενός εργαλείου για την, σε πραγματικό χρόνο, παρακολούθηση και ανίχνευση ανωμαλιών ασφαλειας σε έξυπνες υποδομές.
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, φαντασία και όρεξη για δουλειά, Python, Networking
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Python, Cybersecurity, Networking, Internet-of-Things, Edge systems
- Εκτιμώμενος Χρόνος Περάτωσης: 6-9 Μήνες
- Αριθμός ατόμων: 2
- Συνεργαζόμενος Ερευνητής: Κωνσταντίνος Παναγιώτου
Εφαρμογή τεχνολογιών Blockchain για τη δημιουργία αποκεντρωμένης αγοράς υπολογιστικής ισχύος από edge συσκευές
Το Blockchain, ως η υποκείμενη τεχνολογία των κρυπτονομισμάτων, έχει προσελκύσει σημαντική προσοχή από την επιστήμη της πληροφορικής τα τελευταία χρόνια. Έχει υιοθετηθεί σε πολλές εφαρμογές, όπως τα Smart Grids και το Internet-of-Things. Η τεχνολογία blockchain θα μπορούσε να χρησιμοποιηθεί για τη δημιουργία μιας αποκεντρωμένης αγοράς υπολογιστικής ισχύος (από edge devices), που να συνδέει τους προμηθευτές της εκάστοτε υποδομής edge με αυτούς που το απαιτούν, χωρίς κάποιο κεντρικό σημείο ελέγχου. Στα πλαίσια της συγκεκριμένης διπλωματικής εργασίας θα μελετηθούν εφαρμογές των δικτύων blockchain για τη δημιουργία αποκεντρωμένης αγοράς υπολογιστικής ισχύος από edge συσκευές.
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, φαντασία και όρεξη για δουλειά, Python, Networking, Blockchain development
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Blockchain development, Networking, Internet-of-Things, Edge computing,
- Εκτιμώμενος Χρόνος Περάτωσης: 6-9 Μήνες
- Αριθμός ατόμων: 1-2
- Συνεργαζόμενος Ερευνητής: Κωνσταντίνος Παναγιώτου
Ανάπτυξη διαδικτυακής πλατφόρμας για πράκτορες εξόρυξης ρευστότητας σε κρυπτονομίσματα
Η εξόρυξη ρευστότητας (liquidity mining) είναι μια στρατηγική συμμετοχής στο εκάστοτε δίκτυο blockchain, που επιτρέπει την παροχή ρευστότητας (κεφάλαιο) σε μια ομάδα ρευστότητας σε ένα αποκεντρωμένο χρηματιστήριο (Decentralized Exchange / DEX). Στόχος της διπλωματικής εργασίας είναι η ανάπτυξη μιας διαδικτυακής πλατφόρμας η οποία θα επιτρέπει την παρακολούθηση και τη διαχείριση πρακτορων εξόρυξης ρευστότητας σε κρυπτονομίσματα, χρησιμοποιώντας έτοιμα εργαλεία εξόρυξης ρευστότητας (hummingbot).
- Επιθυμητές γνώσεις: Καλή γνώση προγραμματισμού, φαντασία και όρεξη για δουλειά, Python, Web development, Crypto currencies.
- Εμπλεκόμενες Τεχνολογίες – Γνώσεις που θα αποκτηθούν: Crypto currencies, Crypto market, Web development, Docker
- Εκτιμώμενος Χρόνος Περάτωσης: 6-9 Μήνες
- Αριθμός ατόμων: 1-2
- Συνεργαζόμενος Ερευνητής: Κωνσταντίνος Παναγιώτου