Μηχανισμοί ελαστικής κατανομής πόρων σε περιβάλλοντα υπολογιστικών νεφών με χρήση τεχνικών ενισχυτικής μάθησης - Κονταρίνης, Αλέξανδρος (Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών. Εργαστήριο Υπολογιστικών Συστημάτων, 2015)
Το Cloud Computing, χάρις στην κεντρική του ιδέα περί κοινής χρήσης φυσικών πόρων από πολλαπλούς χρήστες, καθιστά δυνατή την κατά βούληση, ομαλά κλιμακούμενη, αυξομείωση των χρησιμοποιούμενων υπολογιστικών πόρων. Αυτή η ιδιότητα είναι η λεγόμενη “Ελαστικότητα”, η οποία δίνει την δυνατότητα, στους χρήστες ενός νέφους (cloud) να έχουν πρόσβαση σε φαινομενικά άπειρους διαμοιραζόμενους πόρους, ενώ στους παρόχους ενός νέφους να βελτιστοποιούν την χρησιμοποίηση των κέντρων δεδομένων (datacenters) τους και να μεγιστοποιούν τα κέρδη τους. Ο ακριβής έλεγχος των υπολογιστικών πόρων ανοίγει τον δρόμο για την εφαρμογή δυναμικών πολιτικών δέσμευσής τους, οι οποίες θα ανταποκρίνονται επακριβώς και ανά πάσα χρονική στιγμή, στον φόρτο εργασίας και στις ανάγκες των εκάστοτε εφαρμογών και υπηρεσιών που εκτελούνται στο νέφος. Δυστυχώς, στα περιβάλλοντα υπολογιστικών νεφών, τα φορτία είναι ως επί το πλείστον δυναμικά και ετερογενούς φύσεως, όπως άλλωστε και οι ίδιοι οι πόροι. Ως εκ τούτου, προκύπτουν ποικίλλα πολύπλοκα προβλήματα διαχείρισης των υπολογιστικών πόρων, συχνά σχετιζόμενα με την κατανομή και την χρονοδρομολόγησή τους. Εξαιτίας της υψηλής πολυπλοκότητας και των αυστηρών απαιτήσεων αυτών των προβλημάτων, οι παραδοσιακοί αλγόριθμοι επίλυσής τους δεν επαρκούν, και η ερευνητική κοινότητα εξετάζει καινοτόμες προσεγγίσεις από διαφορετικά επιστημονικά πεδία. Στην παρούσα εργασία μελετούμε αλγορίθμους στους οποίους, ένας ευφυής πράκτορας αποφασίζει για την λήψη ενεργειών βασιζόμενoς σε πολλαπλά κριτήρια, και ο οποίος παρατηρώντας τις επιβραβεύσεις που λαμβάνει ως απόκριση του περιβάλλοντος στις ενέργειές του, μαθαίνει να επιλέγει τις ενέργειες εκείνες που βελτιστοποιούν την απόδοσή του. Αλγόριθμοι αυτού του τύπου ενδείκνυνται εν γένει για προβλήματα ακολουθιακής λήψης αποφάσεων, σε πραγματικό χρόνο, υπό καθεστώς αβεβεβαιότητας. Συγκεκριμένα, εξετάζουμε μία σειρά από αλγορίθμους, μεθόδους, και τεχνικές, Ενισχυτικής Μάθησης (Reinforcement Learning) και μηχανημάτων τυχερών παιγνίων (Multi-Armed Bandits), για την επίτευξη αποδοτικής προσαρμοστικής δέσμευσης των υπολογιστικών πόρων ενός νέφους. Αντλώντας έμπνευση από ένα αντίστοιχο πλαίσιο διαχείρισης πόρων (TIRAMOLA), ειδικευμένο στην προσαρμογή του μεγέθους NoSQL συστοιχιών που τρέχουν πάνω από IaaS, εκτελούμε προσομοιώσεις σε περιβάλλον MATLAB, ώστε να μελετήσουμε την διαδικασία λήψης αποφάσεων, να εξερευνήσουμε την επίδραση διαφορετικών μοντέλων, και να πειραματιστούμε με τις τιμές διαφόρων παραμέτρων. Υποστηρίζουμε ότι οι προσομοιώσεις είναι ένα αναντικατάστατο εργαλείο κατά την σχεδίαση πραγματικών συστημάτων διαχείρισης πόρων υπολογιστικών νεφών, και ότι τα αποτελέσματά τους καταδεικνύουν σημαντικές πτυχές του προβλήματος που αξίζουν περαιτέρω μελέτης.