Σχεδιασμός και υλοποίηση εφαρμογής παιχνιδιού τύπου λαβύρινθου με χρήση μηχανικής μάθησης και βιβλιοθηκών της JavaScript

Design and implementation of a labyrinth-type game application using machine learning and JavaScript libraries (Αγγλική)

  1. MSc thesis
  2. Γκόγκος, Ανδρέας
  3. Μεταπτυχιακή Εξειδίκευση στα Πληροφοριακά Συστήματα (ΠΛΣ)
  4. 30 Μαίου 2020 [2020-05-30]
  5. Ελληνικά
  6. 155
  7. Μπεληγιάννης, Γρηγόριος
  8. Κωτσιαντής, Σωτήριος
  9. Λαβύρινθος | labyrinth | javascript | p5.js | ml5.js | μηχανική μάθηση | machine learning | αλγόριθμοι | algotithms | html | Prim | Kruskal | DFS | Binary tree | Δυαδικό δέντρο | KNN
  10. 2
  11. 3
  12. 25
  13. Περιέχει: Εικόνες, σχήματα, πίνακες
  14. Σιούτας. (2015). Βασικές Εξειδικεύσεις σε Θεωρία και Λογισμικό - Αλγόριθμοι και πολυπλοκότητα. Πάτρα: ΕΑΠ
    • Τα τελευταία χρόνια ο παγκόσμιος ιστός (World Wide Web - WWW) εξελίσσεται με μεγάλους ρυθμούς και αποτελεί μια από τις πιο σημαντικές υπηρεσίες που παρέχει το διαδίκτυο. Η ραγδαία αυτή ανάπτυξη οφείλεται κυρίως στην προσάρτηση της γλώσσας JavaScript στον κώδικα HTML καθώς είναι εύκολη στη χρήση και συνοδεύεται από εκατοντάδες βοηθητικές βιβλιοθήκες που εξυπηρετούν συγκεκριμένους σκοπούς. Στην παρούσα διπλωματική εργασία χρησιμοποιούνται δυο από αυτές. Η p5.js και η ml5.js. H πρώτη δημιουργεί κινούμενα γραφικά και η δεύτερη χρησιμοποιεί μεθόδους μηχανικής μάθησης. Στόχος της εργασίας σε πρώτη φάση είναι να σχεδιάσει και να δημιουργήσει ένα παραμετροποιήσιμο παιχνίδι τύπου λαβύρινθου με γραφικά που θα είναι εκτελέσιμο από τους γνωστότερους φυλλομετρητές. Αρχικά λοιπόν διερευνώνται διάφοροι αλγόριθμοι παρασκευής λαβύρινθων και στη συνέχεια υλοποιούνται σε μορφή κώδικα JavaScript. Επιπλέον σε δεύτερη φάση γίνεται απόπειρα εφαρμογής μηχανικής μάθησης στο παιχνίδι. Εφαρμόζονται διάφορες τεχνικές κατηγοριοποίησης όπως οπτική αναγνώριση (με εξαγωγή χαρακτηριστικών ή με τον αλγόριθμο KNN) καθώς και ηχητική αναγνώριση οι οποίες θα επιτρέπουν στο χρήστη να παίξει το παιχνίδι χωρίς τη χρήση του πληκτρολογίου αλλά εκτελώντας είτε μια σειρά από χειρονομίες που θα συλλαμβάνονται από την κάμερα του υπολογιστή είτε δίνοντας ηχητικές εντολές μέσω του μικροφώνου. Στο τέλος της εργασίας γίνεται μια συνολική αποτίμηση της συνολικής προσπάθειας. Ελέγχονται και συγκρίνονται οι αλγόριθμοι που χρησιμοποιήθηκαν για την παραγωγή λαβύρινθων ως προς την εγκυρότητα και την ταχύτητά τους καθώς και γίνεται γενικότερος σχολιασμός για τη χρήση των βιβλιοθηκών p5 και ml5. Τέλος γίνεται σύγκριση της εφαρμογής της εργασίας με άλλες σχετικές εφαρμογές.
    • In recent years, the World Wide Web (WWW) has evolved rapidly and is one of the most important services provided by the Internet. This rapid development is mainly due to the addition of the JavaScript language to the HTML code as it is easy to use and is accompanied by hundreds of libraries that serve specific purposes. Two of them are used in this thesis. P5.js and ml5.js The first one creates animated graphics and the second one uses machine learning methods. The first purpose of the thesis is to design and create a customizable maze-type graphics game that will be executable by the most popular browsers. So at first various maze algorithms are mentioned and then implemented in JavaScript code format. In addition, it is attempted to apply mechanical learning to the game. Various categorization techniques are applied such as visual recognition (using feature extraction or KNN algorithm) and audio recognition which will allow the user to play the game without using the keyboard but performing either a series of gestures captured by the computer camera or by giving voice commands using the microphone. At the end of the work an overall evaluation of the total effort is made. The algorithms used to generate the labyrinths are checked for their validity and speed. Finally a more general annotation is made on the use of the p5 and ml5 libraries and the application of this work is compared with other relevant applications.
  15. Αναφορά Δημιουργού 4.0 Διεθνές