26 Μαρτίου 2020

«Πολέμησε» τον κορονοϊό από το σπίτι σου

…αλλά όχι με τον τρόπο που νομίζεις!

TL;DR
Εάν θες να διαθέσεις την ανεκμετάλλευτη υπολογιστική ισχύ από το PC σου στο πρόγραμμα Rosetta@home του Πανεπιστημίου της Washington το οποίο μελετά τη σύνθεση των πρωτεϊνών με σκοπό την αντιμετώπιση διάφορων ασθενειών, μεταξύ των οποίων και ο κορονοϊός, τότε:

1. Δημιούργησε έναν λογαριασμό εδώ: https://boinc.bakerlab.org/
2. Κατέβασε κι εγκατέστησε το πρόγραμμα BOINC, του Πανεπιστημίου Berkeley, από εδώ: https://boinc.berkeley.edu/download.php
3. Τρέξε το BOINC κι επέλεξε Add Project->Rosetta@home
4. Από τα μενού Options->Computing Preferences και Other Options μπορείς να παραμετροποιήσεις το πως θα διαθέσεις τις δυνατότητες του υπολογιστή σου για την επεξεργασία των ερευνητικών δεδομένων
5. Εάν έχεις απορίες, αναλυτικές οδηγίες χρήσης μπορείς να διαβάσεις εδώ: https://boinc.berkeley.edu/wiki/BOINC_Help

Εναλλακτικά, για τον ίδιο σκοπό, μπορείς να συμμετέχεις στο πρόγραμμα Folding@home του Πανεπιστημίου Stanford: https://foldingathome.org/


Τα παραπάνω, όπως και άλλα ανάλογα προγράμματα, διαμοιράζουν δεδομένα προς ανάλυση και επεξεργασία στα υπολογιστικά συστήματα εθελοντών, χρησιμοποιώντας ένα μέρος της επεξεργαστικής τους ισχύος. Έτσι, εξοικονομούν τόσο χρόνο όσο και χρήμα, αφού δεν απαιτείται η χρήση ακριβών υπερυπολογιστών, ενώ ταυτόχρονα συμβάλλουν σημαντικά στην επιστημονική έρευνα.

Από τον Pentium…
Απέκτησα τον πρώτο μου υπολογιστή το 1996, έναν Pentium ο οποίος έτρεχε στα 133MHz. Ήταν, φυσικά, για αρκετά χρόνια ο μοναδικός υπολογιστής στην οικογένεια. Εγώ έπαιζα Doom και Civilization, η αδερφή μου ζωγράφιζε στην Ζωγραφική των Windows και ο πατέρας μου χρησιμοποιούσε το Word. Αργότερα, απέκτησα κι άλλα συστήματα. Κανά δυο laptop, ένα netbook και κάμποσα desktop. Ένα PlayStation, μερικά smartphones και tablets, συμπλήρωναν τη συλλογή των ηλεκτρονικών μου.

Σήμερα, έχω στη διάθεσή μου πολύ λιγότερα συστήματα, αλλά πολύ ισχυρότερα βέβαια. Το laptop μου, ένα smartphone κι ένα tablet, βρίσκονται σε αποκλειστική και καθημερινή χρήση από εμένα, ενώ κάθε μέλος της οικογένειάς μου έχει πλέον τον δικό του υπολογιστή. Όπως και τότε όμως έτσι και τώρα, είτε με ένα PC είτε με περισσότερα, εξακολουθώ να έχω στη διάθεσή μου πολύ περισσότερη επεξεργαστική ισχύ απ’ όση χρειάζομαι. Όχι μόνο γιατί δεν χρησιμοποιώ το laptop μου στο 100% των δυνατοτήτων του, αλλά γιατί επίσης δεν το χρησιμοποιώ 24 ώρες το 24ωρο.

Εάν υπήρχε ένας τρόπος να αξιοποιηθούν όλες αυτές οι συσκευές όταν εγώ δεν τις χρησιμοποιώ...

…Στο Grid Computing/Distributed Computing
Ήδη από τη δεκαετία του ’90 διάφοροι ερευνητές έθεσαν το θεωρητικό πλαίσιο και ξεκίνησαν οι πρώτες εφαρμογές μιας σχετικά απλής ιδέας: αντί για μια 
«εργασία» να χρησιμοποιείται ένας υπολογιστής ή ένα υπολογιστικό κέντρο, αυτή θα μπορεί να διαμοιράζεται σε διάφορα υπολογιστικά συστήματα. Τα συστήματα αυτά μάλιστα δεν θα χρειάζεται να βρίσκονται απαραίτητα στον ίδιο φυσικό χώρο, αρκεί να μπορούν το καθένα ξεχωριστά να υλοποιεί ένα τμήμα της δουλειάς που του έχει ζητηθεί. Έπειτα, ένας κεντρικός υπολογιστής θα λαμβάνει ολοκληρωμένο το σύνολο των δεδομένων για τελική αξιολόγηση.

Για να δώσω ένα απλοϊκό παράδειγμα, είναι σαν να θέλουμε να μεταφράσουμε ένα βιβλίο 1000 σελίδων. Αντί να κάνει τη δουλειά ένας μεταφραστής μόνο τους, μπορούμε να αναθέσουμε από μια σελίδα σε 1000 διαφορετικούς μεταφραστές. Το βιβλίο μας θα μεταφραστεί έτσι πάρα πολύ γρήγορα ενώ ο φόρτος εργασίας θα είναι πολύ μικρός για τον καθένα ξεχωριστά. Στο τέλος, απλά κάποιος θα κάνει την επιμέλεια.

Σε καμία περίπτωση δεν είμαι ειδικός, ούτε καν «καλός γνώστης» του πως λειτουργεί ένα τέτοιο σύστημα, υπάρχει ωστόσο ένα σχετικό πρόγραμμα που έχω χρησιμοποιήσει κατά καιρούς και για το οποίο, καθώς και για μια από τις εφαρμογές του, θέλω να μιλήσω σε αυτή μου την ανάρτηση. Είναι το BOINC και το Rosetta@home.

BOINC (σαν να λέμε «όινκ»)
BOINC είναι τα αρχικά των λέξεων Berkeley Open Infrastructure for Network Computing και είναι ένα software κατασκευασμένο από το Εργαστήριο Διαστημικών Επιστημών (Space Sciences Laboratory) του Πανεπιστημίου Berkeley της Καλιφόρνια, υπό την καθοδήγηση του επιστημονικού ερευνητή David Anderson. Σύμφωνα με την περιγραφή που δίνεται στην ιστοσελίδα του προγράμματος, χρησιμοποιώντας το «δωρίζεις τον «νεκρό» χρόνο του υπολογιστή σου σε επιστημονικά προγράμματα». Αν και ο αρχικός του σκοπός ήταν για χρήση στο SETI@home (βλέπε προηγούμενη ανάρτηση στο ιστολόγιο), σταδιακά απέκτησε κι άλλες εφαρμογές σε περισσότερα από 30 ερευνητικά projects.

Η λογική της χρήσης ενός τέτοιου προγράμματος, είναι απλή. Αφού δημιουργήσεις έναν λογαριασμό (username/password) κατεβάζεις το BOINC και το εγκαθιστάς στον υπολογιστή σου (PC ή Mac, ενώ επίσης τρέχει και σε συσκευές με Android. Παλιότερα, υπήρχε έκδοση και για PlayStation 3 η οποία όμως δεν υποστηρίζεται πια). Έπειτα, επιλέγεις ένα ή περισσότερα από τα διαθέσιμα projects στα οποία θες να «δωρίσεις» την επεξεργαστική σου ισχύ. Στη συνέχεια, ρυθμίζεις το πότε θες να τρέχει το BOINC και πόση χρήση του συστήματός σου θες να κάνει. Για παράδειγμα, μπορείς να το ρυθμίσεις να τρέχει αυτόματα όποτε δεν χρησιμοποιείς τον υπολογιστή σου για λίγη ώρα, όπως για παράδειγμα η προφύλαξη οθόνης, ή σταθερά κάποιες ώρες και μέρες της εβδομάδας, για παράδειγμα το βράδυ ή όταν λείπεις από το σπίτι και είσαι στη δουλειά σου. Αντίστοιχα, επιλέγεις το ποσοστό των πυρήνων του επεξεργαστή σου, της μνήμης και άλλω παραμέτρων που θα χρησιμοποιούνται. Τέλος, έχεις την επιλογή να συμμετέχεις σε κάποια αντίστοιχη ομάδα εθελοντών όπως είσαι εσύ. Για κάθε «εργασία» που ολοκληρώνει επιτυχώς ο υπολογιστής σου «αμείβεσαι» με κάποιους πόντους, ενώ αν ανήκεις σε κάποια ομάδα, πόντους παίρνει και η ομάδα σου. Μπορείς μάλιστα όποτε θες να δεις και να εκτυπώσεις το σχετικό «πιστοποιητικό»!


Rosetta@home
Όπως είπα παραπάνω, το BOINC χρησιμοποιείται σε διάφορα ερευνητικά προγράμματα τα οποία τα «τρέχουν» πανεπιστήμια, εργαστήρια και ερευνητικά ιδρύματα. Εγώ εδώ όμως θέλω να μιλήσω για ένα από όλα αυτά, το Rosetta@home. Το συγκεκριμένο πρόγραμμα ανήκει στο Πανεπιστήμιο της Washington και υλοποιείται από το Ινστιτούτο Σχεδιασμού Πρωτεϊνών (Institute for Protein Design). Χρησιμοποιεί τους υπολογιστές εθελοντών, ακόμη και τα κινητά τους τηλέφωνα, για να μελετήσει την αναδίπλωση των πρωτεϊνών, δηλαδή τον τρόπο με τον οποίο αυτές δημιουργούνται, το σχήμα τους και τις λειτουργίες τους.

Από το 2005 που ξεκίνησε το Rosetta@home, περισσότεροι από 1.200.000 εθελοντές έχουν προσφέρει τα διάφορα συστήματά τους στην έρευνα αυτή. Όλη αυτή η επεξεργαστική ισχύ αντιστοιχεί στην επεξεργαστική ισχύ ολόκληρων υπερυπολογιστών, οι οποίοι φυσικά είναι πολύ πιο δαπανηροί ενώ παράλληλα πρέπει να χρησιμοποιηθούν και σε άλλες έρευνες. Άλλωστε, μέσα από το Distributed Computing, παρέχεται η δυνατότητα για ακόμη περισσότερη δουλειά, αφού ουσιαστικά έτσι οι ερευνητές αποκτούν πρόσβαση σε χιλιάδες, ακόμη και εκατομμύρια υπολογιστές.

Βάζοντας τα διάφορα συστήματα των εθελοντών να τρέξουν μοντέλα πρωτεϊνών, οι μελετητές ελπίζουν να κατανοήσουν καλύτερα τη σύνθεσή τους και να μπορέσουν να οδηγηθούν στη θεραπεία σοβαρών ασθενειών, όπως είναι το Alzheimer, η ελονοσία, κάποια είδη καρκίνου και ο κορονοϊός.

Ο κορονοϊός
Ναι, ακόμη και ο κορονοϊός! Σύμφωνα με δημοσίευση του Ινστιτούτο Σχεδιασμού Πρωτεϊνών τον περασμένο μήνα, η Ροζέττα χρησιμοποιήθηκε για να προβλέψει τη δομή μιας σημαντικής πρωτεΐνης του κορονοϊού, κάτι που θα απαιτούσε πολύ χρόνο εάν γινόταν εργαστηριακά. Σύμφωνα με την ίδια ανακοίνωση, η γνώση που αποκτήθηκε έτσι μπορεί να χρησιμοποιηθεί για το σχεδιασμό νέων εμβολίων και αντιιικών φαρμάκων.

Συγκεκριμένα, μελετήθηκε η πρωτεΐνη που αποτελεί το περίφημο «άγκιστρο» με το οποίο ο ιός συνδέεται και μολύνει τα ανθρώπινα κύτταρα. Όσο περισσότερα μαθαίνουν οι ειδικοί για τον τρόπο με τον οποίο λειτουργεί και μεταδίδεται ο ιός, τόσο πιο κοντά έρχονται στην παρασκευή φαρμάκων για να τον καταπολεμήσουν, εξουδετερώνοντας για παράδειγμα τον τρόπο με τον οποίο αυτός εισέρχεται στα κύτταρά μας. Παράλληλα, συνεχίζονται οι προσπάθειες να αξιοποιηθούν αυτά τα δεδομένα για τη δημιουργία ενός προληπτικού εμβολίου. (Μπορείτε να βρείτε τη σχετική ανακοίνωση στο σύνδεσμο: https://www.ipd.uw.edu/2020/02/rosettas-role-in-fighting-coronavirus/)

Παρόμοια προσπάθεια αποτελεί και το Folding@home, ένα project που επίσης μελετά τη δομή και την αναδίπλωση των πρωτεϊνών και το οποίο δημιουργήθηκε από το Πανεπιστήμιο του Standord αλλά τα τελευταία χρόνια συνεχίζεται από το Πανεπιστήμιο της Washington. Αξίζει μάλιστα να σημειωθεί πως τον τελευταίο καιρό το συγκεκριμένο πρόγραμμα παρουσιάζει μεγάλη δυναμική καθώς έχει προβληθεί ιδιαίτερα η πιθανή εφαρμογή των ευρημάτων του στην καταπολέμηση του κορονοϊού.

You don’t have to be a scientist to do science
«Δεν χρειάζεται να είσαι επιστήμονας για να κάνεις επιστήμη». Η φράση αυτή αποτελεί το motto του Rosetta@home και θα μπορούσε να περιγράψει κάθε συμμετοχή μη-ειδικών σε ανάλογα προγράμματα. Παρέχοντας τη δυνατότητα στους ερευνητές να εκμεταλλευτούν κάτι που ήδη έχουμε και δεν χρησιμοποιούμε, την περισσευούμενη επεξεργαστική ισχύ των υπολογιστών μας ή ακόμη και των κινητών μας και των τάμπλετ μας, μπορεί ο καθένας από εμάς να συμβάλλει καθοριστικά στην επιστημονική έρευνα.

Είτε πρόκειται για τις πρωτεΐνες και τον κορονοϊό, είτε για τη μελέτη του γαλαξία, των υποατομικών σωματιδίων και του καιρού, η εθελοντική συμμετοχή σε ένα τέτοιο πρόγραμμα αποτελεί μια ευκαιρία για, ερασιτεχνική έστω, ενασχόληση με την επιστήμη, πέρα βέβαια από την ουσιαστική συνεισφορά. Φέρνει πιο κοντά τον επιστημονικό κόσμο στην καθημερινότητα μας και την ίδια στιγμή κοινωνικοποιεί την επιστήμη, επιτρέποντας τον έλεγχό της από τις μάζες. Επιπλέον, αποτελεί μια ευκαιρία για μαθητές, και όχι μόνο, να εξοικειωθούν με την πληροφορική και την έρευνα, μέσα μάλιστα από μια διαδικασία «παιχνιδιού», αφού η δημιουργία ομάδων και η συγκέντρωση βαθμολογίας, προσθέτει το στοιχείο του συναγωνισμού.

Διαφωνώ κάθετα με την άποψη ότι η χρήση της τεχνολογίας, των κινητών και των τάμπλετ αποτελεί «μόδα» ή είναι απλά μια επιλογή τρόπου ζωής. Η καταναλωτική τεχνολογία είναι εδώ και δεν πρόκειται να φύγει. Αντιθέτως, σταδιακά θα διεισδύει όλα και περισσότερο στη ζωή μας και θα είναι πανταχού παρούσα. Εκτός απροόπτου, και ο κορονοϊός μας δείχνει πόσο εύκολο είναι να προκύψει κάτι το απρόοπτο, μέσα στις επόμενες δεκαετίες η έννοια του «προσωπικού υπολογιστή» (Personal Computer ή PC), θα πάψει να έχει νόημα. Το Ubiquitous Computing, δηλαδή η ύπαρξη «υπολογιστών» όχι μόνο επάνω στο γραφείο μας αλλά παντού γύρω μας, στο σπίτι, στις συσκευές μας, ακόμη και μέσα στα ρούχα μας, θα μας αναγκάσει να ξανασκεφτούμε τι σημαίνει και τι είναι «υπολογιστής».

Αν μάλιστα τολμήσω μια πρόβλεψη, θα πω ότι η σχετική τεχνολογία θα κάνει έναν «κύκλο» και θα επανέλθουμε πάλι στην εποχή των τερματικών. Θα χειριζόμαστε δηλαδή συσκευές μέσω των οποίων θα αποκτούμε πρόσβαση σε αρχεία, δυνατότητες και λειτουργίες, τα οποία δεν θα βρίσκονται στον ίδιο χώρο με εμάς αλλά 
κάπου απομακρυσμένα, στο cloud. Ταυτόχρονα, το δίκτυο 5G ή όποιο άλλο πρότυπο το ακολουθήσει, θα παρέχει τη δυνατότητα σε όλες αυτές τις συσκευές, και όλους εμάς κατ’ επέκταση, να είμαστε παντού και συνεχώς συνδεδεμένοι…

Για πρώτη φορά, θα έχουμε στα χέρια μας τόση τεχνολογία και τόση υπολογιστική αρχή. Ας αρχίσουμε από τώρα να την αξιοποιούμε για κάτι περισσότερο από τη διασκέδαση και τον έλεγχό μας. Ας την ελέγξουμε εμείς και ας ορίσουμε εμείς τη χρήση της για το κοινό καλό.