Σύνταξη άρθρου: Ευθύμης Κυρίκος
Επιμέλεια άρθρου: Κωνσταντίνος Ουρανός

Η μηχανή που κατασκεύασε ο Τούρινγκ, για να αποκρυπτογραφηθούν τα μηνύματα του γερμανικού Αίνιγμα (Enigma), Δεύτερος Παγκόσμιος Πόλεμος

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

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

Άλαν Τούρινγκ (Alan Turing)

Ο Άλαν Τούρινγκ γεννήθηκε το 1912 στο Λονδίνο και πέθανε το 1954. Ήταν μαθηματικός και καθηγητής κρυπτογραφίας, γνωστός για τις εργασίες του πάνω στις υπολογιστικές μηχανές. Διατύπωσε την έννοια της μηχανής Τούρινγκ αλλά και ένα τεστ (Turing test), το οποίο χρησιμοποιείται για να διαπιστωθεί πειραματικά αν μια μηχανή έχει την «ικανότητα σκέψης». Αργότερα, κατά τη διάρκεια του Β´ Παγκοσμίου πολέμου, ο Τούρινγκ έπαιξε ιδιαίτερο ρόλο στην προσπάθεια αναχαίτησης του γερμανικού στρατού, καθώς εργάστηκε πάνω στη μηχανή αποκρυπτογράφησης του κώδικα «Αίνιγμα» των Γερμανών. Ο Τούρινγκ και η ομάδα του κατάφεραν να σχεδιάσουν μια μηχανή που αποκρυπτογραφούσε τα μηνύματα των γερμανικών στρατευμάτων και υπολογίζεται πως με αυτόν τον τρόπο μειώθηκε η διάρκεια του πολέμου κατά 2 έτη. Μετά τον πόλεμο ασχολήθηκε με την κατασκευή ενός από τους πρώτους ηλεκτρονικούς υπολογιστές με δυνατότητα επαναπρογραμματισμού για λογαριασμό του Εθνικού Φυσικού Εργαστηρίου, στην Αγγλία.

Μηχανή Τούρινγκ

Είναι μια υποθετική μηχανή, ένα μαθηματικό μοντέλο δηλαδή, που διατυπώθηκε από τον Άλαν Τούρινγκ το 1936. Η μηχανή Τούρινγκ έχει το χαρακτηριστικό ότι είναι ικανή να εκτελέσει οποιονδήποτε αλγόριθμο, όσο πολύπλοκος και αν είναι. Αυτός είναι και ο λόγος που χρησιμοποιείται από τους επιστήμονες ως ένα μοντέλο βάσης για το αν ένα πρόβλημα είναι δυνατόν να μηχανοποιηθεί και να επιλυθεί μέσω υπολογιστικών μοντέλων.

Ο Άλαν Τούρινγκ περιέγραψε την υποθετική μηχανή ως μια άπειρη (tape) ταινία (υπολογιστής άπειρης μνήμης), η οποία χωρίζεται σε κελιά, σε καθένα από τα οποία εγγράφεται ένα σύμβολο. Για την εγγραφή και την ανάγνωση της ταινίας χρησιμοποιείται μια κεφαλή, η οποία μπορεί να διαβάζει ένα σύμβολο τη φορά. Επίσης, η μηχανή περιλαμβάνει ένα μητρώο καταστάσεων που αποθηκεύει μια κατάσταση της μηχανής. Τέλος, περιλαμβάνεται και ένας πίνακας οδηγιών, που ελέγχει την κεφαλή της μηχανής με τους εξής τρόπους:

  • Εγγράφει ή απαλείφει ένα σύμβολο πάνω στην ταινία.
  • Μετακινεί την κεφαλή σε μια συγκεκριμένη θέση.

Να τονίσουμε τέλος πως μια μηχανή Τούρινγκ δεν αποτελεί μοντελοποίηση ηλεκτρονικού υπολογιστή, αλλά μοντελοποιεί πλήρως έναν υπολογισμό. Ως και σήμερα αποτελεί τη βάση επίλυσης όλων των προβλημάτων που μπορούν να μηχανοποιηθούν, δηλαδή να εκτελεστούν ως αλγόριθμοι από ηλεκτρονικό υπολογιστή. Πρακτικά, αν ένα πρόβλημα μπορεί να διατυπωθεί με τον κατάλληλο τρόπο και να εκτελεστεί από τη μηχανή Τούρινγκ, μπορεί να εκτελεστεί και από οποιονδήποτε υπολογιστή.

Δοκιμή Τούρινγκ

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

Η συνολική ερευνητική δουλειά του Τούρινγκ αποτέλεσε τον θεμέλιο λίθο της κατασκευής των ηλεκτρονικών υπολογιστών γενικού σκοπού καθώς τα μοντέλα υπολογισμού που διατύπωσε ήταν βάσεις για την προτυποποίηση της αρχιτεκτονικής ηλεκτρονικών υπολογιστών, τόσο σε υλικό (software) όσο και σε λογισμικό (hardware).

Τζωρτζ Μπουλ (George Boole)

Ο Μπουλ γεννήθηκε στην Αγγλία το 1815 και πέθανε το 1864. Ήταν μαθηματικός, φιλόσοφος και καθηγητής στο Queen’s College στην Ιρλανδία. Έγινε γνωστός για τη δουλειά του πάνω στις διαφορικές εξισώσεις και στην άλγεβρα. Η κύρια δουλειά του όμως ήταν πάνω στη διατύπωση της άλγεβρας Μπουλ, έναν κλάδο της άλγεβρας που εστιάζει σε λογικές διαδικασίες παρά σε μαθηματικές. Η θεωρία της άλγεβρας Μπουλ ορίζει ως 0 το ψευδές, ως 1 το αληθές και τους συντελεστές της σύζευξης (∧), της διάζευξης (∨) και άρνησης (¬).

Ο Μπουλ και το έργο του δεν έλαβαν την αρμόζουσα δημοσιότητα έως και την περίοδο όπου άρχισαν να αναπτύσσονται οι υπολογιστές. Τη δεκαετία του 1930 ο Κλωντ Σάνον εισήγαγε την έννοια της άλγεβρας Μπουλ ως μια μέθοδο ανάλυσης και σχεδίασης ηλεκτρονικών κυκλωμάτων, που εκτελούσε λογικές διεργασίες προγραμματισμού (λογικές πύλες). Η αντιστοίχηση της λογικής κατάστασης της άλγεβρας Μπουλ σε φυσικά κυκλώματα γίνεται μέσω της ύπαρξης ή όχι ρεύματος σε ένα κύκλωμα. Με 1 (αληθές) απεικονίζεται η κατάσταση ύπαρξης ρεύματος (κλειστός διακόπτης) και με 0 (ψευδές) η μη ύπαρξη ρεύματος (ανοικτός διακόπτης). Έτσι σήμερα, μέσω των μεθόδων της άλγεβρας Μπουλ, έχουμε τη δυνατότητα σχεδιασμού πολύπλοκων κυκλωμάτων στους σύγχρονους ηλεκτρονικούς υπολογιστές.

Νόαμ Τσόμσκι (Noam Chomsky)

Ο Νόαμ Τσόμσκι γεννήθηκε το 1928 στη Φιλαδέλφεια των Η.Π.Α. . Είναι γλωσσολόγος, φιλόσοφος και καθηγητής του Μ.Ι.Τ. . Κατέχει ως σήμερα εξέχοντα ρόλο στην παγκόσμια διανόηση τόσο με την καθαυτό επιστημονική του δουλειά, όσο και με τις πολιτικές του απόψεις.

Η κύρια έρευνα του Τσόμσκι περιστρέφεται γύρω από τη «γενετική-μετασχηματιστική γραμματική», έναν όρο που εισήγαγε ο ίδιος. Υποστηρίζει πως η γλώσσα βασίζεται σε κάποιες σταθερές παραδοχές, τις οποίες μπορεί να κατανοεί οποιοσδήποτε άνθρωπος. Προώθησε ένα φορμαλιστικό πρότυπο περιγραφής και ανάλυσης της γλώσσας, το οποίο είχε εφαρμογή και στην επιστήμη των υπολογιστών. Συγκεκριμένα ο Τσόμσκι διατύπωσε μια ιεράρχηση γλωσσών βάσει κάποιων χαρακτηριστικών (ιεραρχία Τσόμσκι), που χρησιμοποιούνται στη θεωρία των γλωσσών προγραμματισμού. Η συνηθέστερη χρήση αυτής της θεωρίας βρίσκεται στη διατύπωση των «κανονικών εκφράσεων» (regular expressions) στις γλώσσες προγραμματισμού.

Στήβεν Κόουλ Κλην (Steven Cole Kleene)

Ο Στήβεν Κόουλ Κλην ήταν αμερικανός μαθηματικός που γεννήθηκε το 1909 στο Κονέκτικατ των Η.Π.Α. και πέθανε το 1994. Έγινε γνωστός στον κόσμο των υπολογιστών για την έρευνά του πάνω στο λογισμό λ και κυρίως στις υπολογίσιμες συναρτήσεις. Επιπλέον, είναι ο άνθρωπος που επινόησε τις κανονικές εκφράσεις στην επιστήμη των υπολογιστών.

Λογισμός λ

Ο λογισμός λ είναι ένα τυπικό σύστημα, δηλαδή ένα σύνολο από μαθηματικούς κανόνες και αξιώματα, σχεδιασμένο για τη διερεύνηση ορισμών εφαρμογών συναρτήσεων και αναδρομικών συναρτήσεων. Διατυπώθηκε τη δεκαετία του 1930 από τους Αλόνσο Τσερτς και Στήβεν Κόουλ Κλην με σκοπό να επιλύσει ένα πρόβλημα της θεωρίας υπολογισιμότητας (το πρόβλημα της απόφασης). Χρησιμοποιείται για να εξετάσει αν μια συνάρτηση είναι υπολογίσιμη, δηλαδή αν υπάρχει κάποιος αλγόριθμος που μπορεί να εκτελέσει την ίδια εργασία με τη συνάρτηση, δηλαδή για συγκεκριμένη είσοδο να δίνει πάντα την ίδια έξοδο.

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

Κανονικές εκφράσεις (Regular expressions)

Οι κανονικές εκφράσεις είναι μια αλληλουχία χαρακτήρων, που ορίζουν ένα πρότυπο. Χρησιμοποιούνται από το λογισμικό κυρίως για να ορίσουν ή να επικυρώσουν συμβολοσειρές. Με αυτόν τον τρόπο μπορεί ο υπολογιστής να επιτρέπει τη χρήση συγκεκριμένων συμβολοσειρών, όπως email, τηλέφωνα, ονόματα κ.τλ. .

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

Τζων φον Νόυμαν (John von Neumann)

Ήταν Ούγγρος μαθηματικός που γεννήθηκε στη Βουδαπέστη το 1903 και πέθανε το 1957 στην Αμερική. Είχε σπουδαία συμβολή σε μια σειρά από επιστημονικά πεδία στα μαθηματικά (συναρτησιακή ανάλυση, τοπολογία, αριθμητική ανάλυση, θεωρία παιγνίων, γραμμικός προγραμματισμός), στη φυσική (κβαντομηχανική, υδροδυναμική) καθώς και στην επιστήμη των υπολογιστών (αρχιτεκτονική φον Νόυμαν, αυτο-αναπαραγόμενες μηχανές, στοχαστικός υπολογισμός). Υπήρξε μέλος του «Σχεδίου Μανχάτταν» (Project «Manhattan») από το οποίο δημιουργήθηκε η ατομική βόμβα για τις ανάγκες του αμερικανικού στρατού στον Β’ Παγκόσμιο πόλεμο.

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

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

Σήμερα, παρ’όλη την τεράστια εξέλιξη της τεχνολογίας ως επί το πλείστον οι υπολογιστές ακολουθούν την παραπάνω αρχιτεκτονική προσθέτοντας επιπλέον χαρακτηριστικά για βελτίωση της απόδοσης. Ωστόσο όλοι οι σύγχρονοι επεξεργαστές έχουν είτε μια είτε παραπάνω αριθμητικές λογικές μονάδες μέσα στους «πυρήνες» τους καθώς και μια σειρά είτε από 32bit είτε από 64bit καταχωρητές. Σε όλους τους επεξεργαστές περιλαμβάνονται μονάδες ελέγχου, υπάρχει μνήμη για φόρτωση των δεδομένων είτε με τη μορφή της μνήμης RAM είτε ως «cache». Υπάρχουν εξωτερικές μονάδες αποθήκευσης δεδομένων (σκληροί δίσκοι, μνήμες flash) και μηχανισμοί εισόδου-εξόδου ( πληκτρολόγια, ποντίκια, οθόνες, ηχεία).

Η αρχιτεκτονική φον Νόυμαν

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

Κλωντ Σάνον (Claude Shannon) 

Αμερικανός μαθηματικός που γεννήθηκε το 1916 και πέθανε το 2001. Υπήρξε ένας από τους σπουδαιότερους επιστήμονες πάνω στον κλάδο της επιστήμης των υπολογιστών καθώς οι εργασίες του έπαιξαν σημαντικότατο ρόλο, τόσο στην εξέλιξη των ηλεκτρικών κυκλωμάτων όσο και στην εξέλιξη των υπολογιστικών μοντέλων.

Το 1937 εξέδωσε μια εργασία επιδεικνύοντας πως μπορούσε η άλγεβρα Μπουλ να χρησιμοποιηθεί για τον σχεδιασμό ηλεκτρικών λογικών κυκλωμάτων. Συγκεκριμένα όρισε την κατάσταση αγωγής ή μη ρεύματος μέσα από έναν αγωγό μέσω των λογικών καταστάσεων 1 και 0 της άλγεβρας Μπουλ. Με αυτόν τον τρόπο μπορούσαν να κατασκευαστούν πολύπλοκα κυκλώματα που εκτελούσαν συγκεκριμένες διαδικασίες χρησιμοποιώντας ένα μαθηματικό εργαλείο.

Σημαντική υπήρξε η συμβολή του και στην κρυπτογραφία, καθώς χρειάστηκε να εργαστεί για τον αμερικανικό στρατό κατά τη διάρκεια του Β´ Παγκοσμίου πολέμου, πάνω σε μεθόδους αποκρυπτογράφησης μηνυμάτων και ασφαλών τηλεπικοινωνιών. Το 1945, στο τέλος του πολέμου, εξέδωσε κάποιες εργασίες πάνω στις μεθόδους διαχωρισμού των τηλεπικοινωνιακών σημάτων από τον θόρυβο, μοντελοποιώντας το πρόβλημα με όρους δεδομένων και επεξεργασίας σήματος για πρώτη φορά στην ιστορία. Αυτή η προσέγγιση είχε τόσο σημαντικό αντίκτυπο, γιατί ήταν η πρώτη φορά που μελετήθηκε ένα τηλεπικοινωνιακό σήμα ως δύο διαφορετικά πράγματα (δεδομένα και φυσικά χαρακτηριστικά). Η προσέγγιση αυτή δημιούργησε νέα δεδομένα σε ολόκληρο το φάσμα των τηλεπικοινωνιών. Μια επίσης πολύ σημαντική συμβολή του είναι η διατύπωση του θεωρήματος δειγματοληψίας, το οποίο παίζει καθοριστικό ρόλο, ιδίως σήμερα με τη χρήση των ψηφιακών υπολογιστών, καθώς ορίζει τον τρόπο μετατροπής των αναλογικών σημάτων σε ψηφιακά. Με αυτόν τον τρόπο μπορούμε να αποτυπώσουμε σε ψηφιακά μέσα, τα όποια σήματα από το περιβάλλον μας επιθυμούμε, σε ψηφιακή μορφή.

Το 1948 ο Κλωντ Σάνον εργαζόταν στα εργαστήρια Μπελ και προσπαθούσε να λύσει το πρόβλημα της μέτρησης της πληροφορίας, που αποστέλλεται μέσα από ένα μέσο μετάδοσης. Τότε ο Κλωντ Σάνον ανέπτυξε την εντροπία της πληροφορίας ως μονάδα μέτρησης της πληροφορίας που περιέχει ένα μήνυμα. Η εντροπία της πληροφορίας βασίζεται πάνω στη μέτρηση της αβεβαιότητας μειούμενη κατά το μέγεθος του μηνύματος. Αργότερα, το 1949, μαζί με τον συνεργάτη του Ρόμπερτ Φανό (Robert Fano) διατύπωσαν έναν συστηματικό τρόπο μέτρησης της πληροφορίας βασιζόμενο σε πιθανότητες από ποσότητα δεδομένων. Οι εργασίες του αυτές δημιουργούν έναν καινούριο κλάδο των μαθηματικών, τη θεωρία πληροφορίας, η οποία μελετά την ποσοτικοποίηση και αποθήκευση των δεδομένων. Από αυτή τη θεωρία ορίζεται και η έννοια του δυαδικού ψηφίου (bit), που αποτελεί την εντροπία πληροφορίας μιας τυχαίας δυαδικής μεταβλητής, που μπορεί να πάρει τις τιμές 0 ή 1 με ίση πιθανότητα.

 

Επίλογος…

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

 

Πηγές

  • «Who was Alan Turing?». The British Library.
  • A. M. Turing (1950). Computing Machinery and Intelligence. Mind 49: 433-460
  • O’Connor, John J.; Robertson, Edmund F., «George Boole», MacTutor History of Mathematics archive, University of St Andrews.
  • An Investigation of the Laws of Thought. Prometheus Books. ISBN 978-1-59102-089-9.
  • Barsky, Robert F. (1997). Noam Chomsky: A Life of Dissent. Cambridge, MA: MIT Press. ISBN 978-0-262-02418-1
  • Chomsky, Noam (1956). «Three models for the description of language». IRE Transactions on Information Theory (2): 113–124.
  • Stephen Cole Kleene at the Mathematics Genealogy Project
  • Hazewinkel, Michiel, (1994). «Lambda-calculus», Encyclopedia of Mathematics, Springer Science+Business Media B.V. / Kluwer Academic Publishers, ISBN 978-1-55608-010-4
  • Ruslan Mitkov (2003). The Oxford Handbook of Computational Linguistics. Oxford University Press. p. 754. ISBN 978-0-19-927634-9.
  • Blair, Clay, Jr. (February 25, 1957). «Passing of a Great Mind». Life: 89–104.
  • von Neumann, John (1945), First Draft of a Report on the EDVAC.
  • James, Ioan. «Claude Elwood Shannon 30 April 1916 – 24 February 2001». Biographical Memoirs of Fellows of the Royal Society. 55: 257–265.
  • Shannon, C. E. (1938). «A Symbolic Analysis of Relay and Switching Circuits».
  • David A. Mindell (2004). Between Human and Machine: Feedback, Control, and Computing Before Cybernetics, (Baltimore: Johns Hopkins University Press), pp. 319-320. ISBN 0-8018-8057
  • Shannon, Claude Elwood; Weaver, Warren (1949). A Mathematical Theory of Communication.

 

Ηλ.Ταχ.: [email protected]

Ευθύμης Κυρίκος

Ηλεκτρολόγος Μηχανικός Ειδικός Αυτοματισμού και Ρομποτικής