Professional Documents
Culture Documents
ΠΑΤΡΑ 2013
1
Περίληψη
Η εξέλιξη των υπολογιστών στις τελευταίες δεκαετίες και η εξάπλωση της
χρήσης τους οδήγησε και στην είσοδο τους στο χώρο της εκπαίδευσης. Η παρούσα
εργασία διερευνά τον τρόπο και τα χαρακτηριστικά της εμπλοκής τους στη διδακτική
μιας γλώσσας, ως δεύτερης ή ξένης, και προτείνει ένα αλγοριθμικό μοντέλο που
σκοπό έχει την αξιολόγηση της γραμματικότητας απλών προτάσεων της νέας
ελληνικής και τον εντοπισμό συνήθων λαθών που γίνονται από μη φυσικόυς ομιλητές
κατά το σχηματισμό τους.
Ο τομέας της Διδασκαλίας της Γλώσσας Υποβοηθούμενης από Υπολογιστή
(Computer Assisted Language Learning – CALL) είναι σχετικά καινούριος, γεγονός
εντελώς δικαιολογημένο, καθώς είναι στενά συνδεδεμένο με τους ηλεκτρονικούς
υπολογιστές, η χρήση των οποίων εξαπλώθηκε στις τελευταίες δεκαετίες. Πρόκειται
για την έρευνα, μελέτη και ανάπτυξη εφαρμογών διδασκαλίας μιας γλώσσας, αλλά
και καθορισμό των παιδαγωγικών παραμέτρων που πρέπει να ισχύουν για την
αποδοτική χρησιμοποίησή τους στα πλαίσια της διδακτικής πρακτικής. Οι πρώτες
εφαρμογές CALL τοποθετούνται κατά τη διάρκεια της ψυχροπολεμικής περιόδου,
και είχαν ως σκοπό την εκπαίδευση αμερικανών πρακτόρων στη ρωσική γλώσσα. Η
εξελικτική πορεία που ακολούθησε η CALL μπορεί να διακριθεί σε τρεις περιόδους,
κάθε μια από τις οποίες φέρει τη σφραγίδα της επικρατούσας θεωρίας ψυχολογίας
και, κατά συνέπεια, τα χαρακτηριστικά της: η Συμπεριφοριστική, η Επικοινωνιακή
και η Ενοποιητική CALL. Η τελευταία, που αποτελεί και την παρούσα φάση, τονίζει
ακόμα περισσότερο τον επικοινωνιακό ρόλο του γλωσσικού συστήματος, κυρίως στις
δραστηριότητες που χρησιμοποιεί, αλλά ταυτόχρονα εισάγει και ενισχύει το ρόλο των
αλληλεπιδράσεων μεταξύ των μαθητών κατά τη διάρκεια της διδασκαλίας.
Τα λογισμικά που έχουν αναπτυχθεί πάνω στη διδασκαλία της γλώσσας
στηρίζονται σε θεωρητικά πλαίσια, τα οποία εμφανίζουν τα χαρακτηριστικά
αναλόγων παιδαγωγικών θεωριών που έχουν αναπτυχθεί. Η Διαδραστική Προσέγγιση
περιλαμβάνει δραστηριότητες που εμπλέκουν το μαθητή σε συγκεκριμένα
επικοινωνιακά περιβάλλοντα, στα οποία πρέπει να δράσει μέσω του γλωσσικού
συστήματος και να εκπληρώσει συγκεκριμένους στόχους. Η Κοινωνικο-πολιτισμική
Προσέγγιση δίνει έμφαση στο ρόλο που έχει η συνεργασία και η αλληλεπίδραση
ανάμεσα στους μαθητές (κοινωνική διάσταση της μάθησης) κατά τη διάρκεια
εκτέλεσης διαφόρων δραστηριοτήτων. Η Ενεργητική Προσέγγιση τονίζει τη σημασία
που έχει η καταγραφή όλων των παραγόντων που εμπλέκονται κατά την ενασχόληση
των μαθητών με μια δραστηριότητα, προκειμένου να καθοριστεί ακριβώς τόσο ο
τρόπος αλληλεπίδρασης με αυτή όσο και η δυνατότητα παραμετροποίησής της.
Τέλος, ο Κονστρουκτιβισμός επιδιώκει την ανάπτυξη εφαρμογών οι οποίες θα
ενθαρρύνουν τη «γνωστική ανακάλυψη» από τους ίδιους τους χρήστες, οι οποίοι θα
αλληλεπιδρούν με άλλους μαθητές και, επιπλέον, θα λαμβάνουν την καθοδήγηση και
τον γνωστικό προσανατολισμό είτε από τον εκπαιδευτικό, είτε από το ίδιο το
πρόγραμμα. Ανάλογες θεωρητικές καταβολές έχουν και οι τάσεις που επικρατούν στο
χώρο της διδασκαλίας, όπως αυτή διαμορφώνεται με την είσοδο των υπολογιστών
στην παιδαγωγική διαδικασία. Υπάρχει μια στροφή στη διδασκαλία μέσω
συγκεκριμένων επικοινωνιακών καταστάσεων, όπου ο μαθητής καλείται να
συνεργαστεί με άλλους, να εκπληρώσει κάποιους στόχους και τελικά να οικοδομήσει
τη γλωσσική του ικανότητα.
2
Οι εφαρμογές CALL παρουσιάζουν κάποια χαρακτηριστικά, τα οποία τις
διαφοροποιούν μεταξύ τους και ταυτόχρονα καθορίζουν την αποδοτικότητά τους.
Καταρχήν, αφορά στην ποικιλία των δραστηριοτήτων που χρησιμοποιούν, η οποία
μπορεί να έχει άμεση επίδραση στο ενδιαφέρον που εκδηλώνει ο χρήστης. Ένα άλλο
χαρακτηριστικό είναι η δυνατότητα παραμετροποίησης των δραστηριοτήτων που
δίνεται είτε στον εκπαιδευτικό, είτε στο χρήστη. Σημαντικά στοιχεία ενός
προγράμματος είναι οι δυνατότητες αξιολόγησης των επιδόσεων που έχει, καθώς και
το είδος και η ποιότητα ανατροφοδότησης που παρέχει στο χρήστη, προκειμένου να
τον βοηθήσει να βελτιώσει τη γλωσσική του ικανότητα. Τέλος, τα δευτερεύοντα
χαρακτηριστικά που χρησιμοποιούνται στην παρουσίαση μιας εφαρμογής (γραφικά,
ήχος, δυνατότητες πολυμέσων) μπορούν να έχουν άμεσο αντίκτυπο και στην
ποιότητα των περιεχόμενων δραστηριοτήτων.
Ο ρόλος του δασκάλου μέσα σε μια τάξη CALL είναι ιδιαίτερα σημαντικός
και σε καμία περίπτωση δεν υποβαθμίζεται λόγω της ύπαρξης των εφαρμογών. Αυτός
θα επιλέξει το ενδεδειγμένο για τους διδακτικούς του στόχους λογισμικό και θα το
παραμετροποιήσει, ώστε να ανταποκρίνεται στις μαθησιακές ανάγκες των μαθητών.
Φυσικά, κάτι τέτοιο προϋποθέτει την εκπαίδευση των δασκάλων, τόσο σε ζητήματα
αξιολόγησης και επιλογής του κατάλληλου λογισμικού, όσο και στην πιο ενεργό
συμμετοχή στη δημιουργία ή τροποποίηση τέτοιων προγραμμάτων.
Η αποδοτικότητα και απρόσκοπτη λειτουργία του αλγορίθμου που
αναπτύχθηκε, αξιολογήθηκε με βάση τις επιδόσεις του πάνω σε συγκεκριμένους
αξιολογικούς άξονες που είχαν καθοριστεί. Οι άξονες αυτοί περιγράφονται με τη
μορφή ερευνητικών ερωτημάτων, τα οποία σκιαγραφούν την επιθυμητή συμπεριφορά
του προγράμματος σε διάφορες περιπτώσεις προτάσεων και λαθών. Πιο
συγκεκριμένα, η εφαρμογή θα πρέπει να αναγνωρίζει ορθές γραμματικά και
συντακτικά προτάσεις, να επισημαίνει λάθη ασυμφωνίας (σε γένος, αριθμό, πτώση,
πρόσωπο), καθώς και λάθη στις καταλήξεις των ρημάτων των προτάσεων που
εισάγονται.
Όσον αφορά το πρακτικό κομμάτι του παρόντος πονήματος, προκειμένου να
καταλήξουμε στην ανάπτυξη του τελικού προϊόντος, χρησιμοποιήθηκαν διάφορα
προγραμματιστικά εργαλεία και αλγοριθμικές μέθοδοι. Καταρχήν, η
προγραμματιστική πλατφόρμα πάνω στην οποία δημιουργήθηκε το λογισμικό είναι η
Visual Prolog version 7.3. Πρόκειται για μια γλώσσα προγραμματισμού που
παρουσιάζει πολλά πλεονεκτήματα, όπως το ότι διατίθεται δωρεάν για ερευνητικούς
σκοπούς και ότι ο τρόπος λειτουργίας της είναι ιδανικός για ανάπτυξη αλγορίθμων
επεξεργασίας προτάσεων σε φυσική γλώσσα. Επιπλέον, χρησιμοποιήθηκε η δενδρική
μορφή απεικόνισης δεδομένων για την αναπαράσταση των συντακτικών δομών των
προτάσεων, εκμεταλλευόμενοι τη θεωρία της ανάλυσης των προτάσεων σε φράσεις
και αυτών με τη σειρά τους σε μικρότερα δομικά στοιχεία, μέχρι να φτάσουμε στο
επίπεδο της λέξης. Μια ακόμη επιλογή για τον αλγόριθμο αφορά στην τεχνική
ανάλυσης της πρότασης που υιοθετείται. Πρόκειται για ανάλυση από κάτω προς τα
πάνω (bottom – up parsing), η οποία ξεκινάει από τα βασικά δομικά στοιχεία της
πρότασης (λέξεις) και βαθμιαία επιχειρεί τη σύνθεση περιπλοκότερων συντακτικών
δομών, έως ότου φτάσει σε μια ολοκληρωμένη πρόταση. Τέλος, ο γραμματικά
αποδεκτός συνδυασμός λεξημάτων για το σχηματισμό φράσεων, με την απαραίτητη
συμφωνία σε αριθμό, πτώση, γένος κ.α. εξασφαλίζεται με την ενσωμάτωση
μηχανισμού ενοποίησης χαρακτηριστικών (unification of features) στο πρόγραμμα.
3
Η μορφή του εν λόγω προγράμματος έχει διαμορφωθεί κατά τέτοιο τρόπο,
ούτως ώστε να είναι περισσότερο λειτουργική, τόσο κατά τη διάρκεια της ανάπτυξης,
όσο και σε διάφορες βελτιωτικές παρεμβάσεις. Η αρχιτεκτονική του αλγορίθμου
παρουσιάζεται ως ένα σύστημα συσκευών, κάθε μια από τις οποίες έχουν ξεχωριστή
λειτουργία. Η συσκευή εισόδου δεδομένων αναλαμβάνει την εισαγωγή των
προτάσεων, με συγκεκριμένη μορφή, μέσα στο σύστημα. Η γραμματική αναλαμβάνει
να αναγνωρίσει την ορθότητα των προτάσεων που εισάγονται στο σύστημα και να
αναγνωρίσει ενδεχόμενα λάθη που έχουν γίνει. Το λεξικό περιλαμβάνει τις εγγραφές
όλων των λέξεων που μπορούν να αναγνωριστούν από το πρόγραμμα. Ο
μορφολογικός αναλυτής διακρίνει το θέμα από την κατάληξη του ρήματος και
αποδίδει σε αυτό τα γραμματικά του χαρακτηριστικά (χρόνος, πρόσωπο, αριθμός). Η
συσκευή εξόδου αναλαμβάνει την εμφάνιση μηνυμάτων στο χρήστη, που τον
ενημερώνουν για ενδεχόμενα λάθη στην πρόταση που έγραψε. Όλα τα επιμέρους
τμήματα του αλγόριθμου συντονίζονται στη λειτουργία τους από ένα κεντρικό
στοιχείο κώδικα (main algorithm).
Η αξιολόγηση του προγράμματος έγινε σε δύο φάσεις: κατά τη διάρκεια της
ανάπτυξης (βελτιωτική αξιολόγηση) και μετά την ολοκλήρωσή της (τελική
αξιολόγηση. Ειδικότερα η τελική αξιολόγηση του αλγορίθμου έγινε σε δύο άξονες:
αξιολόγηση από τον ερευνητή και αξιολόγηση από τους χρήστες. Η πρώτη φάση
πραγματοποιήθηκε με εισαγωγή στοχευμένων προτάσεων στο σύστημα, προκειμένου
να διαπιστωθεί ότι συμπεριφέρεται με τον προβλεπόμενο τρόπο και η απόδοσή του
καλύπτει όλα τα κριτήρια που διατυπώθηκαν στα ερευνητικά ερωτήματα. Κατά τη
δεύτερη φάση της αξιολόγησης, συλλέχθηκαν 150 αυθεντικές προτάσεις από 15 μη
φυσικούς ομιλητές της ελληνικής, μέσω ενός έντυπου φύλλου εργασίας, στο οποίο
διατυπώνονταν συγκεκριμένες οδηγίες για τη δημιουργία των προτάσεων αυτών.
Έτσι δημιουργήθηκε μια «τράπεζα» αυθεντικών προτάσεων, οι οποίες εισήχθησαν
ατο πρόγραμμα και καταγράφηκαν τα αποτελέσματα της λειτουργίας του, ούτως
ώστε να αξιολογηθεί σε «πραγματικές» συνθήκες.
Από τα αποτελέσματα της αξιολογικής διαδικασίας προκύπτει ότι ο
αλγόριθμος λειτουργεί επαρκώς, χωρίς όμως να φτάνει σε πολύ υψηλά ποσοστά
αποδοτικότητας (74,5%). Αυτό, βέβαια, δικαιολογείται, καθώς αρκετές από τις
αυθεντικές προτάσεις που δημιουργήθηκαν περιείχαν λέξεις με λανθασμένη
ορθογραφία ή εκτός του λεξικού του προγράμματος. Το συγκεκριμένο γεγονός είχε
σαν άμεσο αποτέλεσμα να διακόπτεται η λειτουργία του αλγορίθμου, ο οποίος
αδυνατούσε να αναγνωρίσει αυτούς τους λεκτικούς τύπους, και να μη συνεχίζεται η
επεξεργασία των προτάσεων. Πάντως, σε περιπτώσεις όπου τηρούνταν οι
συγκεκριμένοι περιορισμοί (απλές προτάσεις, αποτελούμενες από λέξεις που
υπάρχουν εγγεγραμμένες στο λεξικό της εφαρμογής), η λειτουργία του λογισμικού
ήταν αλάνθαστη, τόσο στον καθορισμό της ορθότητας των προτάσεων, όσο και στην
αναγνώριση λαθών και του είδους τους (λάθη ασυμφωνίας ή κατάληξης των
ρημάτων).
4
Πίνακας Περιεχομένων
Περίληψη _____________________________________________________________ 2
1. Εισαγωγή ___________________________________________________________ 7
4. Αξιολόγηση _________________________________________________________ 77
5
4.1. Περιορισμοί Του Λογισμικού _______________________________________ 78
4.2. Αξιολόγηση Από Τους Ερευνητές ____________________________________ 79
4.2.1 Χειρισμός Προτάσεων Με Λέξεις Εκτός Λεξιλογίου _________________________________ 80
4.2.2 Αναγνώριση Σωστών Γραμματικά Προτάσεων _____________________________________ 81
4.2.3 Αναγνώριση Γραμματικών Λαθών ______________________________________________ 82
4.2.4 Προβληματικές Περιπτώσεις __________________________________________________ 85
6
Κεφάλαιο 1
Εισαγωγή
7
1.1 Οι Υπολογιστές Στην Εκπαίδευση
Στα τέλη της δεκαετίας του ‘70 και στις αρχές της δεκαετίας του ’80
σημειώθηκε μια σημαντική επιστημονική εξέλιξη, η οποία ουσιαστικά άλλαξε πολλές
εκφάνσεις της καθημερινότητας μας. Η εμφάνιση των μικροϋπολογιστών έδωσε τη
δυνατότητα στο ευρύτερο κοινό να έλθει σε επαφή με μια συσκευή, η οποία έως τότε
ήταν αποκλειστικό προνόμιο πανεπιστημιακών ιδρυμάτων και μεγάλων εταιριών.
Παράλληλα, η εξάπλωση τους προώθησε την ανάπτυξη εφαρμογών που παρέκκλιναν
από τη στενή επαγγελματική εξειδίκευση των πρώιμων προγραμμάτων και κάλυπταν
ανάγκες όπως η ψυχαγωγία, η ενημέρωση κ.α.
Μέσα σε αυτό το πλαίσιο ήταν θέμα χρόνου η εισαγωγή των υπολογιστών και
στο χώρο της εκπαίδευσης. Η αρχή πραγματοποιήθηκε με την ανάπτυξη κάποιων
εκπαιδευτικών εφαρμογών που κάλυπταν διάφορα επιστημονικά πεδία. Δειλά δειλά
οι υπολογιστές έκαναν την εμφάνιση τους και στη σχολική τάξη. Η χρησιμοποίηση
τους στην εκπαίδευση έδωσε το έναυσμα για τη διατύπωση διαφόρων παιδαγωγικών
θεωριών, που σκοπό είχαν να προτείνουν αποτελεσματικούς τρόπους ένταξης τους
στην παιδαγωγική πρακτική.
Η είσοδος των υπολογιστών στο χώρο της εκπαίδευσης δεν υπήρξε απλά το
αποτέλεσμα μιας τεχνολογικής τάσης, που προήγαγε τη χρησιμοποίησή τους σε
όλους τους τομείς της ανθρώπινης δραστηριότητας. Οι εξαιρετικές τους δυνατότητες,
κυρίως όσον αφορά στον τρόπο παρουσίασης των δεδομένων, με τα γραφικά, τα
συστήματα πολυμέσων και τη μεγάλη αποθηκευτική ικανότητα, τους καθιστούν
πολύτιμο εργαλείο για τον εκπαιδευτικό, ώστε να επιτύχει τους διδακτικούς του
στόχους. Παράλληλα, το περιβάλλον εργασίας που παρέχουν είναι θελκτικό για το
μαθητή, κεντρίζει το ενδιαφέρον του και τον παρακινεί να ασχοληθεί μαζί τους.
Εκτός αυτού, οι υπολογιστές καλλιεργούν στους μαθητές δεξιότητες, οι οποίες θα
φανούν εξαιρετικά χρήσιμες στη μελλοντική επαγγελματική τους απασχόληση.
Ιδιαίτερα στο χώρο της διδασκαλίας της γλώσσας, ο ρόλος του υπολογιστή
είναι εξαιρετικά σημαντικός τόσο για τον εκπαιδευτικό όσο και για το μαθητή.
Παρέχονται καινούργιες δυνατότητες επικοινωνίας, ακόμα και όταν μεσολαβεί
μεγάλη απόσταση ανάμεσα στους συνομιλητές, αναπαράγονται βίντεο και ηχητικά
αρχεία, βοηθώντας το μαθητή να έρθει σε επαφή με μεγάλο όγκο δεδομένων πάνω
στη γλώσσα που μελετάει. Επιπλέον, το διαδίκτυο περιέχει μια μεγάλη ποικιλία
8
αυθεντικών κειμένων σε πολλές διαφορετικές γλώσσες, γεγονός που αναδεικνύει
αρκετές χρηστικές πληροφορίες γύρω από τις διαφορετικές επικοινωνιακές
λειτουργίες του γλωσσικού συστήματος που βρίσκεται υπό εξέταση.
9
είναι μια δυναμική διαδικασία με συνεχώς μεταβαλλόμενες παραμέτρους, η οποία δεν
μπορεί να προβλεφθεί από τις συνθήκες που έχουν οριστεί στον αλγόριθμο μιας
εφαρμογής.
10
1.3 Διάρθρωση Της Εργασίας
11
λογισμικού. Σε αυτό το σημείο θα πρέπει να αναφερθεί ότι η αξιολόγηση είναι μια
δυναμική διαδικασία, η οποία υπεισέρχεται σε όλα τα στάδια ανάπτυξης του
λογισμικού. Θα αναφερθεί η μεθοδολογία τόσο της διαμορφωτικής, όσο και της
τελικής αξιολόγησης.
12
Κεφάλαιο 2
Θεωρητικό Πλαίσιο
13
2.1 Εισαγωγή – Ορισμός
Η εξέλιξη των μικροϋπολογιστών και η εξάπλωση της χρήσης τους είναι ένα
βασικό χαρακτηριστικό των τελευταίων δεκαετιών. Ο υπολογιστής, ως εργαλείο
δουλειάς, αλλά και ως ψυχαγωγικό μέσο, έχει καταφέρει να εισχωρήσει σε πολλές
πτυχές της καθημερινής μας ζωής. Ήταν λοιπόν αναπόφευκτο να κάνει την εμφάνισή
του και στο χώρο της εκπαίδευσης, κυρίως λόγω των πολλών πλεονεκτημάτων που
παρουσιάζει η λειτουργία του.
Ο ορισμός του αντικειμένου και του πεδίου έρευνας της CALL είναι κάτι που έχει
απασχολήσει αρκετούς ερευνητές, προκειμένου να την οριοθετήσουν και να την
καταστήσουν ανεξάρτητη από άλλους παραπλήσιους επιστημονικούς κλάδους. Ο
Levy (1997) όρισε την CALL ως «έρευνα και μελέτη εφαρμογών υπολογιστών πάνω
στη διδασκαλία και μάθηση της γλώσσας». Προσανατολίζει το γνωστικό αντικείμενο
της στα προγράμματα που εκπονούνται με σκοπό την εκμάθηση μιας γλώσσας από
τους μαθητές. Ο Egbert (2005) επιχειρεί ένα άνοιγμα του αντικειμένου της CALL,
συμπεριλαμβάνοντας και διδακτικές – παιδαγωγικές προσεγγίσεις στο δικό του
ορισμό. Πιο συγκεκριμένα, υποστηρίζει ότι η CALL είναι «η μαθησιακή κατάσταση,
κατά την οποία οι μαθητές μαθαίνουν μια γλώσσα σε ένα περιβάλλον που
14
περιστρέφεται γύρω από την τεχνολογία των υπολογιστών». Αυτό που πρέπει να
επισημανθεί στον πιο πάνω ορισμό είναι η «αποδέσμευση» της διδασκαλίας της
γλώσσας από το στενό περιβάλλον της τάξης, καθώς αυτή μπορεί να
πραγματοποιηθεί ακόμα και στο σπίτι του μαθητή, αρκεί να υπάρχει κάποιο σύστημα
υπολογιστή.
Είναι γεγονός ότι η CALL ως μια νέα διδακτική κατεύθυνση στο χώρο της
διδασκαλίας της γλώσσας προωθεί μια σειρά από αλλαγές στη διδακτική διαδικασία.
Οι νέες τεχνολογίες παρέχουν μια σειρά καινοτομιών που μπορούν να
χρησιμοποιηθούν στο χώρο της εκπαίδευσης. Αυτή η υπερπροσφορά καινοτόμων
μέσων παρουσιάζει τον κίνδυνο αποπροσανατολισμού του εκπαιδευτικού,
δημιουργώντας του την τάση να προσπαθεί να ενσωματώσει όλο και περισσότερα
από αυτά τα στοιχεία στη διδασκαλία του. Ο Cameron (1989) εξέφρασε αυτή του την
ανησυχία, τονίζοντας ότι σκοπός της CALL δεν είναι απλά και μόνο να προσφέρει
στους μαθητές καινοτομίες, αλλά να βελτιώσει την ποιότητα της διδασκαλίας και να
καταστήσει τη μαθησιακή διαδικασία ως προς την εκμάθηση ενός γλωσσικού
συστήματος περισσότερο αποδοτική.
Επιχειρώντας μια σύνθεση των παραπάνω αποπειρών για την οριοθέτηση του
περιεχομένου της CALL, μπορούμε να επισημάνουμε την διττή υπόστασή της, καθώς
η έρευνα στο συγκεκριμένο επιστημονικό κλάδο κινείται σε δύο διαφορετικές
διαστάσεις. Η πρώτη έχει να κάνει με το θεωρητικό πλαίσιο το οποίο πρέπει να διέπει
την ανάπτυξη μιας εφαρμογής CALL, τις βασικές της αρχές και τα δομικά της
στοιχεία. Η δεύτερη αφορά στις διδακτικές προσεγγίσεις της CALL, στην περιγραφή
των παραγόντων που υπεισέρχονται στην εξίσωση της μαθησιακής διαδικασίας και
στον καθορισμό του ρόλου του εκπαιδευτικού μέσα σε αυτήν. Η επισκόπηση του
περιεχομένου της CALL θα πραγματοποιηθεί πάνω σε αυτές τις δύο διαστάσεις.
Η εξέλιξη της CALL από αυτό το σημείο και μετά μπορεί να διακριθεί σε
τρεις περιόδους, κάθε μια από τις οποίες εμφανίζει τα δικά της ιδιαίτερα
χαρακτηριστικά, τόσο σε επίπεδο τεχνολογίας όσο και σε επίπεδο θεωρητικής
προσέγγισης της μαθησιακής διαδικασίας: τη Συμπεριφοριστική CALL (Behavioristic
CALL), την Επικοινωνιακή CALL (Communicative CALL) και την Ενοποιητική
CALL (Integrative CALL), η οποία αποτελεί και την παρούσα φάση της (Fotos,
2004).
16
προέκυψε η επόμενη φάση της, η επικοινωνιακή. Αυτή δίνει έμφαση, μέσω της
ανάπτυξης αντίστοιχων εφαρμογών, στην επικοινωνιακή διάσταση της γλώσσας και
στη χρήση της ως μέσο επικοινωνίας σε διάφορα γλωσσικά συγκείμενα και
απομακρύνεται από το στόχο της εκμάθησης απομονωμένων γλωσσικών
φορμαλισμών. Η μορφή των προγραμμάτων που χρησιμοποιούνται στη διδασκαλία
αλλάζει και περιλαμβάνει γλωσσικά παιχνίδια, πρακτική ανάγνωσης και γραφής,
ανακατασκευή κειμένων με συγκεκριμένο επικοινωνιακό σκοπό, τεστ λειτουργικής
γραμματικής κ.α. (Fox, 1989).
17
δραστηριοτήτων, που εμφανίζονται πιο ευέλικτες, ενδιαφέρουσες και γνωστικά
απαιτητικές, λειτουργεί και υποστηρικτικό υλικό (δυνατότητα μετάφρασης, κείμενα
γραμματικής, λεξικό, ηχητική υποστήριξη κειμενικών δομών) και, κυρίως, παρέχεται
στο μαθητή η απαραίτητη ανατροφοδότηση πάνω στις ενέργειές του, σημείο στο
οποίο «χώλαιναν» οι προηγούμενες φάσεις της CALL.
18
Η ίδια η επιστημονική πράξη της διαμόρφωσης και έκφρασης θεωρητικού
πλαισίου είναι μια διαδικασία ιδιαίτερα απαιτητική, η οποία με τη σειρά της πρέπει
να βασίζεται σε ορισμένες σταθερές θεωρητικές αρχές. Η βασική προϋπόθεση για τη
θεμιτή δημιουργία μιας θεωρητικής προσέγγισης πρέπει να είναι η θεμελίωσή της
στην υπάρχουσα γνώση περί του υπό εξέταση αντικειμένου και εν συνεχεία η διαρκής
αξιολόγησή της (ακόμα και βελτίωσή της) μέσα από την πρακτική εφαρμογή.
19
προσέγγιση δίνει περισσότερη έμφαση στο ρόλο της διαπροσωπικής διάδρασης στην
εκμάθηση μιας γλώσσας. Περιλαμβάνει δραστηριότητες όπου ο μαθητής καλείται να
συμμετάσχει σε συγκεκριμένα επικοινωνιακά περιβάλλοντα, προκειμένου να
εκπληρώσει κάποιους στόχους. Κεντρικό ρόλο σε αυτή τη διάδραση κατέχει η
"διαπραγμάτευση του νοήματος" ανάμεσα στα άτομα που συμμετέχουν σε αυτή. Πιο
συγκεκριμένα, οι μαθητές, στα πλαίσια της επικοινωνίας τους με άλλους μαθητές ή
με τον εκπαιδευτικό, προβαίνουν σε προσαρμογές των γλωσσικών παραγωγών τους
(προφορικών ή γραπτών), με σκοπό να τις καταστήσουν περισσότερο κατανοητές
και, κατ' αυτόν τον τρόπο, να επιτύχουν το σκοπό της κάθε δραστηριότητας.
20
Χαρακτηριστικό παράδειγμα προγράμματος που βασίζεται στη συγκεκριμένη
θεωρητική προσέγγιση είναι η εργασία του Light (1993). Στο σχεδιασμό των
δραστηριοτήτων που εμπεριέχονται στο πρόγραμμα για την εκμάθηση μιας γλώσσας
προωθείται η συνεργασία μεταξύ των μαθητών, προκειμένου να επιτύχουν την
επίλυση ενός πραγματικού προβλήματος (προσομοίωση καθημερινών
προβληματικών καταστάσεων) ή να διαλογιστούν και να αναλύσουν μια πραγματική
κατάσταση.
Στο πλαίσιο αυτής της αναλυτικής θεώρησης όλων των επιμέρους στοιχείων
που περιλαμβάνονται σε μια δραστηριότητα εκμάθησης της γλώσσας, ο Blin (2004)
επιχειρεί να διατυπώσει μια ανάλογη θεωρία σε ότι αφορά μια εφαρμογή CALL.
Έτσι, λοιπόν, «μια συγκεκριμένη δραστηριότητα της CALL πρέπει να θεωρηθεί μέσα
σε ένα ευρύτερο πλαίσιο κανόνων και χαρακτηριστικών» (Blin, 2004). Σε αυτή την
αναλυτική θεώρηση μιας δραστηριότητας κεντρικό ρόλο κατέχουν τρία στοιχεία -
παράγοντες της μαθησιακής διαδικασίας: τα υποκείμενα (μαθητές), τα εργαλεία
(χαρακτηριστικά του προγράμματος) και τα αντικείμενα της μάθησης (γλωσσικές
δομές).
21
σημαντικές μεταβλητές της δραστηριότητας μεταβάλλονται κάτω από διαφορετικές
συνθήκες.
O Dalgarno (όπως αναφέρεται από τους Levy & Stockwell, 2006), στην
προσπάθειά του να προτείνει ένα θεωρητικό μοντέλο για τις εφαρμογές CALL, το
οποίο να στηρίζεται στις αρχές του κονστρουκτιβισμού, απομόνωσε τα εξής
χαρακτηριστικά της εν λόγω θεωρίας:
Κάθε άτομο δημιουργεί τις δικές του αναπαραστάσεις της γνώσης. Τα άτομα
μαθαίνουν (δημιουργώντας αυτές τις γνωστικές αναπαραστάσεις) μέσω
ενεργής εξερεύνησης.
Η μάθηση πραγματοποιείται μέσα σε ένα κοινωνικό συγκείμενο, το οποίο
καθορίζει τα χαρακτηριστικά της και την όλη πορεία της. Η διάδραση
ανάμεσα στους μαθητές είναι αναπόσπαστο κομμάτι της μαθησιακής
διαδικασίας.
Λαμβάνοντας υπόψη του αυτές τις γενικές θεωρητικές αρχές και προβάλλοντάς τες
στη μορφή και τα χαρακτηριστικά μιας υπολογιστικής εφαρμογής για τη διδασκαλία
της γλώσσας, κατέληξε στα εξής συμπεράσματα:
Η διδακτική πρακτική που ακολουθείται από έναν δάσκαλό, στα πλαίσια της
μαθησιακής διαδικασίας για την απόκτηση μιας γλώσσας (language acquisition),
είναι αναγκαίο να έχει μια θεωρητική βάση και να μη στηρίζεται αποκλειστικά και
μόνο στην εμπειρική του γνώση. Από την άλλη, αρκετοί ερευνητές έχουν επισημάνει
την αρνητική στάση των εκπαιδευτικών απέναντι στις διάφορες θεωρητικές
προσεγγίσεις. Όπως υποστηρίζουν, η θεωρία πολλές φορές αντιτίθεται στην
πρακτική, καθώς θεωρείται από πολλούς δασκάλους αποκομμένη από τις
πραγματικές συνθήκες διδασκαλίας.
Σε αυτή τη σύντομη επισκόπηση των θεωριών που αφορούν στη μορφή της
διδασκαλίας σε μια τάξη CALL, μπορούμε πιο εύκολα να διαπιστώσουμε μια
ισχυρότερη επιρροή από θεωρητικές προσεγγίσεις που έχουν διατυπωθεί στο χώρο
της αμιγούς διδασκαλίας μιας γλώσσας. Αν και θα συναντήσουμε θεωρίες που
αναφέρθηκαν και στην προηγούμενη υποενότητα, εντοπίζουμε και κάποιες άλλες που
23
ενσωματώνουν τις ιδέες τους στην πραγματικότητα της διδασκαλίας της γλώσσας
μέσω υπολογιστή.
24
απαιτήσεις των μαθητών μιας τάξης, οι οποίες διαμορφώνονται δυναμικά στο πέρας
του χρόνου.
Το πλέον σημαντικό στοιχείο που βρίσκεται στο κέντρο μιας τάξης CALL
είναι ο υπολογιστής, καθώς αυτός τη διαφοροποιεί από άλλες διδακτικές
προσεγγίσεις για την απόκτηση μιας γλώσσας από τους μαθητές. Οι εκπαιδευτικοί
καλούνται να αξιοποιήσουν τις δυνατότητες που παρέχονται από ένα σύστημα
υπολογιστή, ενσωματώνοντας κάποιες από τις λειτουργίες του σε δραστηριότητες
που συνθέτουν τη διδακτική πράξη. Ο δάσκαλος έχει την ευχέρεια να χρησιμοποιήσει
προϋπάρχουσες προγραμματιστικές πλατφόρμες, οι λειτουργίες των οποίων μπορούν
να αξιοποιηθούν στη διδακτική διαδικασία (π.χ. το Microsoft Word), ή να εντάξουν
στη διδασκαλία τους εξειδικευμένα λογισμικά, που έχουν δημιουργηθεί με σκοπό την
απόκτηση μιας γλώσσας από τους μαθητές. Στην παρούσα ενότητα θα εξετασθούν οι
βασικές αρχές που πρέπει να καθορίζουν και να κατευθύνουν την πορεία δημιουργίας
ενός τέτοιου λογισμικού.
Έχει ήδη αναφερθεί στην προηγούμενη ενότητα ότι έχουν προταθεί από
πολλούς ερευνητές της CALL διάφορα θεωρητικά πλαίσια που σκοπό έχουν να
καθορίσουν και να κατευθύνουν τη δημιουργία ανάλογων λογισμικών. Η θεωρητική
προσέγγιση που κρύβεται πίσω από ένα πρόγραμμα δεν υφίσταται για λόγους
τυπολογίας. Άλλωστε, έχει ήδη γίνει αντιληπτό ότι ενδεχόμενες αλλαγές ή και
καινούριες τάσεις που κάνουν την εμφάνισή τους σε θεωρητικό επίπεδο αποτελούν
τους καταλύτες για την ίδια την εξέλιξη των εφαρμογών CALL. Σε κάθε περίπτωση,
25
είναι απαραίτητο ο προγραμματιστής να καταλήξει σε ένα θεωρητικό μοντέλο, πάνω
στο οποίο θα βασιστεί η ανάπτυξη ενός προγράμματος. Προγραμματιστικές
εφαρμογές που δεν ακολουθούν κάποιες βασικές θεωρητικές αρχές δεν έχουν τα
αναμενόμενα αποτελέσματα, όσον αφορά στις επιδόσεις των μαθητών ή στην
αποδοτικότητα του ίδιου του εργαλείου (Bancheri 2006).
Μια από τις δυνατότητες που παρέχει ένα λογισμικό διδασκαλίας της
γλώσσας είναι η ποικιλία δραστηριοτήτων που μπορεί να δοθούν στους χρήστες –
μαθητές. Αυτή η ποικιλομορφία αυξάνει το ενδιαφέρον των μαθητών, καθώς
26
αποφεύγεται η επανάληψη πανομοιότυπων εργασιών. Επιπλέον, διαφορετικές
ασκήσεις μπορούν να βασίζονται σε διαφορετικές μαθησιακές τεχνικές και διδακτικές
προσεγγίσεις. Εξάλλου, η ποικιλία δραστηριοτήτων δίνει στο εκπαιδευτικό
πορτφόλιο δυνατότητα παραμετροποίησης, κυρίως στον τομέα του δείκτη δυσκολίας.
Τα ανώτερα επίπεδα δραστηριοτήτων μπορεί να αναφέρονται σε περίπλοκες
γλωσσικές δομές ή σε πιο απαιτητικές νοητικές διεργασίες, όπως η κριτική σκέψη, η
αναλυτική σκέψη, η δημιουργικότητα κ.α.
27
γρήγορα γλωσσικά αντανακλαστικά από τον ομιλητή. Άλλες δραστηριότητες
παρέχουν άνεση χρόνου στο μαθητή, προκειμένου να επικεντρωθεί περισσότερο στην
ακρίβεια και τη σωστή διατύπωση των απαντήσεων. Τέλος, η ύπαρξη ανοικτών
δραστηριοτήτων δίνει στους μαθητές τη δυνατότητα εξατομικευμένων απαντήσεων
και, επιπλέον, η εξατομίκευση προάγεται ως χαρακτηριστικό της διδασκαλίας. Από
την άλλη, κλειστές δραστηριότητες είναι πιο εύκολα επεξεργάσιμες από τον
ηλεκτρονικό υπολογιστή και μπορούν να παράσχουν αυτοματοποιημένη
ανατροφοδότηση στο χρήστη – μαθητή.
28
εντρυφήσει πάνω στα λάθη που ενδεχομένως να γίνουν από το χρήστη και τα οποία
θα ενεργοποιήσουν το μηχανισμό αυτό. Σύμφωνα με τον Bancheri (2006), η
ανάπτυξη ενός τέτοιου μηχανισμού πρέπει να πραγματοποιηθεί σε δύο βήματα. Σε
μια πρώτη φάση, πρέπει να ληφθούν υπόψη κάποια συνηθισμένα λάθη που κάνουν οι
μαθητές κατά την παραγωγή γλωσσικών δομών, ούτως ώστε να αναπτυχθεί ο
αλγόριθμος του μηχανισμού ανατροφοδότησης, ο οποίος θα αντιμετωπίζει τα λάθη
αυτά, παρέχοντας ανάλογο μήνυμα στο χρήστη προς διόρθωσή τους. Το δεύτερο
βήμα πραγματοποιείται μετά την υλοποίηση του προγράμματος και τη
χρησιμοποίησή του από μαθητές. Σε αυτή τη φάση ο προγραμματιστής δημιουργεί
μια τράπεζα λαθών που έχουν γίνει από τους χρήστες κατά τη χρησιμοποίηση του
προγράμματος. Αυτό οδηγεί σε μια βάση δεδομένων που μπορεί να χρησιμοποιηθεί
για να βελτιωθεί και να εξειδικευθεί ακόμα περισσότερο ο μηχανισμός
ανατροφοδότησης.
29
- λίστα και αριθμός διαφορετικών λέξεων που χρησιμοποιήθηκαν, καθώς και η
συχνότητά τους.
Ο σχεδιασμός είναι μια δραστηριότητα που διαπερνά όλες τις πλευρές και τις
διαστάσεις της CALL και πραγματοποιείται σε όλες τις κλίμακες της, από το επίπεδο
της διδασκαλίας έως και το επίπεδο της κάθε άσκησης ή δραστηριότητας. Ο
σχεδιασμός στοχεύει στην κατά το δυνατό καλύτερη εξυπηρέτηση των στόχων της
διδασκαλίας της γλώσσας με τη βοήθεια του υπολογιστή, όπως αυτοί έχουν
διατυπωθεί από τον εκπαιδευτικό / προγραμματιστή (Levy – Stockwell, 2008).
Σχεδιασμός βασισμένος στη θεωρία και τις συνθήκες που καθορίζει ένα
θεωρητικό πλαίσιο.
Η μορφή και τα χαρακτηριστικά μιας άσκησης ή μιας δραστηριότητας, καθώς
και οι ειδικές συνθήκες που διαμορφώνει, μπορεί να καθορίσει και το
σχεδιασμό μιας εφαρμογής.
Ο σχεδιασμός μπορεί να επηρεαστεί και από τις παραμέτρους του
περιβάλλοντος ανάπτυξης του λογισμικού (σε ποιο υπολογιστικό σύστημα θα
εγκατασταθεί, ποια πλατφόρμα προγραμματισμού θα χρησιμοποιηθεί κ.α.)
30
συγκεκριμένου επιστημονικού πεδίου, που είναι η άσκηση – δραστηριότητα. Κάθε
ένα από τα επίπεδα αυτά διαμορφώνεται από διαφορετικούς παράγοντες και ειδικές
συνθήκες, με αποτέλεσμα οι επιλογές που πρέπει να γίνουν κατά τη διάρκεια της
διαδικασίας του σχεδιασμού να είναι εντελώς διαφορετικές. Λόγω της φύσεως της
συγκεκριμένης εργασίας, και κυρίως του ερευνητικού αντικειμένου της, θα δοθεί στη
συνέχεια περισσότερη έμφαση σε θέματα σχεδιασμού που αφορούν στις
δραστηριότητες – ασκήσεις της CALL.
31
ασκήσεις περισσότερο πολύπλοκες και σαφώς ανωτέρου επιπέδου εξέλιξης. Αυτό
είχε σαν αποτέλεσμα να αλλάξει η εικόνα για το ποιο είδος δραστηριότητας
θεωρείται επιτυχημένο. Ο Meskill (1999), επιχειρώντας να απαντήσει στο παραπάνω
ερώτημα, έδωσε σε μια τέτοια δραστηριότητα τα παρακάτω χαρακτηριστικά:
Τέλος, θα πρέπει να σημειωθεί ότι, λόγω της τεχνολογικής εξέλιξης και των
μέσων που έχουν τεθεί στη διάθεση των δημιουργών δραστηριοτήτων CALL, έχει
επικρατήσει μια σύγχρονη τάση στο σχεδιασμό δραστηριοτήτων που θέλει το μαθητή
32
να είναι αυτόνομος σε όλη τη διάρκεια της μαθησιακής διαδικασίας. Πιο
συγκεκριμένα, ενισχύεται ο ρόλος του μαθητή ως προς την επιλογή των
δραστηριοτήτων ή τον καθορισμό των παραμέτρων τους, και επιπλέον του δίνεται η
δυνατότητα να καθορίσει και τον τρόπο προσέγγισης που θα ακολουθήσει για την
επίλυσή τους (Molebash, 2003, όπως αναφέρεται από τους Levy – Stockwell, 2008).
Ακόμα και στην περίπτωση των τάξεων διδασκαλίας της γλώσσας με τη χρήση
υπολογιστών, ο ρόλος του εκπαιδευτικού είναι καταλυτικός σε όλες τις πτυχές της
συγκεκριμένης προσέγγισης. Αν και το μαθησιακό περιβάλλον καθορίζεται σε
33
μεγάλο βαθμό από τις δυνατότητες και τους περιορισμούς της πλατφόρμας
διδασκαλίας που θα χρησιμοποιηθεί (πρόγραμμα CALL), σε κάθε περίπτωση είναι
αναγκαίο να εξασφαλίζεται η αλληλεπίδραση μεταξύ δασκάλου και προγράμματος
(Webster και Murphy, 2008). Πιο συγκεκριμένα, ο εκπαιδευτικός έχει τη δυνατότητα
να υιοθετήσει ένα συγκεκριμένο τρόπο διδασκαλίας και να επιλέξει την εφαρμογή ή
τις εφαρμογές CALL που θα τον υπηρετήσουν κατά το δυνατόν καλύτερα. Επιπλέον
όμως, θα πρέπει να παρέχεται και η δυνατότητα από τα ίδια τα προγράμματα στον
εκπαιδευτικό να επιφέρει αλλαγές στον τρόπο δόμησης τους αλλά και στη σειρά
παρουσίασης των διαφόρων δραστηριοτήτων, προκειμένου να ανταπεξέλθει στις
μαθησιακές συνθήκες που προκύπτουν, καθώς το περιβάλλον μάθησης είναι κάτι
δυναμικό και μεταβάλλεται διαρκώς.
Είναι λοιπόν προφανές ότι η δραστηριοποίηση ενός εκπαιδευτικού στο χώρο του
σχεδιασμού, ανάπτυξης και χρησιμοποίησης εφαρμογών CALL πρέπει να
συνοδεύεται και από ανάλογη κατάρτισή τους. Ο Kazeroni (2006) προτείνει ένα
τέτοιο σχέδιο εκπαίδευσης δασκάλων πάνω στη διδασκαλία της γλώσσας μέσω
34
υπολογιστή, το οποίο μπορεί να πραγματοποιηθεί σε δύο φάσεις. Στην πρώτη φάση οι
εκπαιδευτικοί ασκούνται στην αξιολόγηση των διαθέσιμων τεχνολογιών ή
προγραμμάτων, τα οποία θα μπορούσαν να αξιοποιηθούν σε μια τάξη CALL. Πιο
συγκεκριμένα, η διδασκαλία μια γλώσσας με τη χρήση υπολογιστή ακολουθεί την
τάση όλων των σύγχρονων παιδαγωγικών προσεγγίσεων, στις οποίες ο εκπαιδευτικός
σταματάει να είναι φορέας γνώσης και αναλαμβάνει το ρόλο του διευκολυντή της
διαδικασίας απόκτησης της γνώσης, η οποία πλέον γίνεται μαθητοκεντρική. Μέσα σε
αυτές τις συνθήκες και το μαθησιακό περιβάλλον, ο δάσκαλος πρέπει να είναι σε
θέση να αναγνωρίζει τα θετικά και αρνητικά στοιχεία προγραμμάτων CALL και να
επιλέγει εκείνα που θα οδηγήσουν με τον καλύτερο δυνατό τρόπο τους μαθητές στην
επίτευξη των ζητούμενων γλωσσικών στόχων.
35
Levy και Stockwell (2006) αναφέρουν χαρακτηριστικά τρεις κατηγορίες
τεχνολογικών εξελίξεων, που επηρεάζουν τη μορφή και τις δυνατότητες ενός
προγράμματος διδασκαλίας μιας γλώσσας:
Ένα επιμέρους χαρακτηριστικό στοιχείο που έχει κάνει την εμφάνισή του σε
διδακτικά πακέτα των τελευταίων ετών είναι η διαδικτυακή δυνατότητα των
συγκεκριμένων προγραμμάτων, που μπορεί να έχει και άμεσες επιπτώσεις τόσο στη
μορφή όσο και στη λειτουργία τους. Σχολιάζοντας τις δυνατότητες αυτές, οι Arneil
και Holmes (2003) επισημαίνουν ότι οι διαδικτυακές δραστηριότητες που έχουν
δημιουργηθεί από ένα συγγραφικό εργαλείο μπορεί να είναι βασισμένες στον
εξυπηρετούμενο υπολογιστή (client based), όπου το περιεχόμενο τους υπάρχει και
36
λειτουργεί στον υπολογιστή του χρήστη, και βασισμένες σε εξυπηρετητή (server
based), όπου αυτό το περιεχόμενο υπάρχει και χρησιμοποιείται σε έναν
απομακρυσμένο υπολογιστή και ο χρήστης έχει πρόσβαση σε αυτόν με τον δικό του
υπολογιστή, ο οποίος χρησιμοποιείται ως τερματικό.
2.6.2 Συνομιλίες
37
Οι τεχνολογικές εξελίξεις στο χώρο των υπολογιστών βελτίωσαν κατά πολύ
τόσο την μορφή όσο και την ποιότητα αυτών των «ηλεκτρονικών» συνομιλιών. Οι
πρώτες εκδοχές αυτών των συνδιαλέξεων απαιτούσαν, ως μέσο εισαγωγής κειμένου
στον υπολογιστή, την πληκτρολόγησή του. Αυτό, κατ' ουσίαν, είναι μια
δραστηριότητα στην οποία δεν είναι όλοι εξασκημένοι και, λόγω του γεγονότος
αυτού, μια τέτοια συνομιλία μπορεί να φαίνεται εξαιρετικά απαιτητική. Όπως θα
αναφερθεί και στο επόμενο κεφάλαιο, εξελιγμένοι τρόποι εισαγωγής κειμένου στον
υπολογιστή (αναγνώριση φωνής) οδηγούν στην απλούστευση αυτών των
δραστηριοτήτων ως προς το χειρισμό τους, επιτρέποντας στους μαθητές - χρήστες να
επικεντρώσουν την προσοχή τους σε ζητήματα που αφορούν κυρίως το γλωσσικό
σύστημα που προσπαθούν να κατακτήσουν.
Τέλος, η εξέλιξη της ποιότητας και του εύρους των διαδικτυακών συνδέσεων
βοήθησε κατά πολύ στη βελτίωση των συνομιλιών μέσω υπολογιστή, καθώς η
γρηγορότερη μεταφορά περισσότερων δεδομένων επέτρεψε τόσο τη συζήτηση σε
πραγματικό χρόνο (συγχρονισμένη επικοινωνία), όσο και την αποστολή αρχείων
ήχου και βίντεο, για την πιο ζωντανή απεικόνιση αυτής της δραστηριότητας.
Μια από τις εξελίξεις στο χώρο της πληροφορικής που είχε άμεσο αντίκτυπο
στα προγράμματα διδασκαλίας μιας γλώσσας ήταν και η δυνατότητα του υπολογιστή
να αναγνωρίζει την ανθρώπινη ομιλία και να την εισάγει με τη μορφή κειμένου.
Πρόκειται για μια εξέλιξη που έδωσε άλλη ώθηση στα μέσα εισαγωγής δεδομένων
στους υπολογιστές, καθώς δεν προϋποθέτει καμία δεξιότητα από τη μεριά του χρήστη
(π.χ. ικανότητα πληκτρολόγησης), αλλά στηρίζεται σε δεξιότητες που ήδη κατέχει και
χρησιμοποιεί στην καθημερινή του ζωή (προφορικός λόγος). Αυτό έχει σαν
αποτέλεσμα το περιβάλλον διάδρασης των διαφόρων εφαρμογών υπολογιστών να
γίνεται απλούστερο και προσιτό σε μεγαλύτερο αριθμό χρηστών. Όπως, άλλωστε,
υποστηρίζει και ο Hardison (2004), η αναγνώριση φωνής αποτελεί επανάσταση στις
μεθόδους εισόδου δεδομένων (data input), καθώς δεν απαιτεί από το χρήστη τη
δυνατότητα πληκτρολόγησης, απλά τη δυνατότητα της ομιλίας.
38
Η αρχή στην οποία βασίζονται τα περισσότερα προγράμματα αναγνώρισης
ομιλίας είναι η κωδικοποίηση των ήχων σε ψηφιακή μορφή και η σύγκρισή τους με
μοντέλα που έχουν ήδη καταχωρηθεί σε μια βάση δεδομένων. Η ψηφιοποίηση των
ήχων γίνεται μέσα από το φάσμα συχνοτήτων τους και την απομόνωση των
ιδιαίτερων χαρακτηριστικών που παρουσιάζει σε αυτό ο κάθε φθόγγος. Το πρόβλημα
που ανακύπτει έγκειται στο γεγονός ότι η εκφορά κάθε φθόγγου διαφοροποιείται από
άτομο σε άτομο, με αποτέλεσμα να υπάρχουν και διαφοροποιήσεις στις συχνότητες
τους. Τα προγράμματα αντιπαρέρχονται την παραπάνω δυσκολία με μια διαδικασία
που λέγεται "εκπαίδευση του προγράμματος" (program training), όπου ο κάθε
χρήστης εισάγει στο σύστημα συγκεκριμένες εκφορές, οι οποίες καταχωρούνται σε
μια βάση δεδομένων, προκειμένου να αναγνωρίζονται οι φθόγγοι κατά τη γλωσσική
εκφορά του εν λόγω χρήστη.
Περιλαμβάνει την αναγνώριση όλων των πιθανών εκφορών και την αποθήκευσή
τους, έτσι ώστε να υπάρχει σύγκριση κατά τη διάρκεια της αξιολόγησης μιας
δραστηριότητας προφορικού λόγου. Η συγκεκριμένη τεχνική, αν και δίνει εξαιρετικά
ακριβή αποτελέσματα, χρειάζεται μεγάλο αποθηκευτικό χώρο, προκειμένου να
καταχωρήσει όλες τις πιθανές γλωσσικές εκφορές. Σε περιπτώσεις ανοικτών
δραστηριοτήτων, μάλιστα, κάτι τέτοιο δεν είναι εφικτό, καθώς πρόκειται για
άπειρους πιθανούς συνδυασμούς γλωσσικών παραγωγών, οι οποίες είναι αδύνατο να
προβλεφθούν. Η συγκεκριμένη τεχνική μπορεί να χρησιμοποιηθεί κυρίως σε
περιπτώσεις κλειστών δραστηριοτήτων.
Πρόκειται για μια πιο περίπλοκη διαδικασία, η οποία επιτρέπει στο σύστημα να
αναγνωρίσει οτιδήποτε ειπωθεί από τη μεριά του χρήστη σε μια συγκεκριμένη
γλώσσα, καθιστώντας την τεχνική αυτή απαραίτητο εργαλείο σε ανοικτού τύπου
δραστηριότητες, όπου οι πιθανές διαφορετικές γλωσσικές παραγωγές είναι αδύνατο
να προβλεφθούν. Ο μηχανισμός που χρησιμοποιείται σε αυτή τη μορφή αναγνώρισης
39
ομιλίας είναι τα κρυφά μοντέλα Markov (ΗΜΜ), που καταχωρούν και αναγνωρίζουν
αλληλουχίες φωνημάτων με βάση στατιστικές μεθόδους.
Πρόκειται για μια τεχνολογική προέκταση της CALL, η οποία πήρε μεγάλη
ώθηση τα τελευταία χρόνια, με την εξάπλωση της χρήσης φορητών συσκευών, όπως
τα κινητά τηλέφωνα και οι υπολογιστές χειρός (PDA). Επιπλέον, σημαντική
τεχνολογική εξέλιξη που βοήθησε ακόμα περισσότερο στην εξάπλωση αυτών των
συσκευών ήταν και η δυνατότητα ασύρματων δικτύων (Wi - Fi).
Πάντως, η εξέλιξη των φορητών αυτών συσκευών και των δυνατοτήτων τους
είναι διαρκής και προσφέρει καινούριες προκλήσεις σε προγραμματιστές και
εκπαιδευτικούς, ως προς την ανάπτυξη εφαρμογών CALL. Οι Homer και Thornton
(2004) εντοπίζουν δύο κατηγορίες τεχνολογικών επιτευγμάτων που μπορούν να
δώσουν επιπλέον ώθηση στη λεγόμενη "φορητή" μάθηση:
40
υπηρεσιών για τη λήψη αρχείων βίντο ή και ήχου, τα οποία θα μπορούσαν να
χρησιμοποιηθούν σε ένα online πρόγραμμα διδασκαλίας της γλώσσας.
Όπως έχει ήδη αναφερθεί ήδη στο κεφάλαιο 1.2 περί του σκοπού της παρούσας
εργασίας, στόχος μας είναι η ανάπτυξη ενός προγράμματος, το οποίο θα παρουσιάζει
στοιχεία ενός λογισμικού CALL, ούτως ώστε να μπορεί να αποτελέσει τη βάση για
ένα προϊόν που να μπορεί να χρησιμοποιηθεί σε μια τάξη για τη διδασκαλία της
ελληνικής γλώσσας ως δεύτερης ή ξένης. Πιο συγκεκριμένα, στοχεύουμε στη
δημιουργία ενός αλγορίθμου, ο οποίος να είναι σε θέση να επεξεργάζεται απλές
προτάσεις της νέας ελληνικής. Οι προτάσεις αυτές θα στηρίζονται σε ένα βασικό
λεξιλόγιο, το οποίο θα έχει ως θέμα τις δραστηριότητες σε μια σχολική τάξη, θα
παρουσιάζουν πολύ απλές συντακτικές δομές (μόνο ένα ρήμα στην πρόταση, απουσία
συνδέσμων και προσδιορισμών) και θα αναφέρονται σε χρόνο ενεστώτα της
ενεργητικής φωνής. Το πρόγραμμά μας, προκειμένου να θεωρηθεί ότι λειτουργεί
σωστά, πρέπει να είναι σε θέση να καλύπτει τα εξής σημεία:
41
2.8 Επεξηγήσεις Συντομογραφιών Που Χρησιμοποιούνται
42
Κεφάλαιο 3
Μεθοδολογία
43
3.1 Εργαλεία Ανάπτυξης
Πέρα από το θεωρητικό μοντέλο και τις γενικές δυνατότητες που δίνονται από
το χώρο της πληροφορικής, το εγχείρημα της ανάπτυξης ενός λογισμικού για τη
διδασκαλία της γλώσσας θα πρέπει να υλοποιηθεί με τη χρησιμοποίηση κατάλληλων
"εργαλείων", που άπτονται κυρίως της προγραμματιστικής πλευράς της προσπάθειας
αυτής και λιγότερο της παιδαγωγικής. Πιο συγκεκριμένα, πρόκειται για μορφές
αλγορίθμων, τεχνικές κατάτμισης γλωσσικών παραγωγών (parsing techniques) και,
κυρίως, η γλώσσα προγραμματισμού, μέσω της οποίας θα υλοποιηθεί το εν λόγω
πρόγραμμα.
44
δικές της ιδιαιτερότητες, που τη διαφοροποιούν από τη "μητρική" της γλώσσα. Οι
σημαντικότερες διαφορές της εντοπίζονται στο γεγονός ότι είναι αντικειμενοστραφής
(object - oriented) και ότι προσφέρει στον προγραμματιστή τη δυνατότητα
δημιουργίας γραφικού περιβάλλοντος διάδρασης (GUI) για την εφαρμογή που
πρόκειται να αναπτύξει (De Boer, 2009).
45
Το αρχείο εγκατάστασής της είναι σχετικά μικρό (περίπου 25 MB) και
διατίθεται δωρεάν για ερευνητικούς σκοπούς και για προσωπική
χρήση. Αυτό την καθιστά εύκολα και άμεσα χρησιμοποιήσιμη.
Έχει τη δυνατότητα να επεξεργάζεται ελληνικούς χαρακτήρες και
ελληνικές γραμματοσειρές.
Διατηρεί ακέραιους τους μηχανισμούς επαγωγής και backtracking της
Prolog, χαρακτηριστικά απαραίτητα για τη δημιουργία parser και την
επεξεργασία φυσικής γλώσσας (NLP).
Προσφέρει στον προγραμματιστή ένα γραφικό περιβάλλον ανάπτυξης,
σε αντίθεση με τη γραμμή εντολών της Prolog, διευκολύνοντάς τον
κατά τη δημιουργία του αλγορίθμου.
Δίνει τη δυνατότητα για ανάπτυξη εφαρμογών με γραφικό περιβάλλον
χειρισμού (GUI) για το χρήστη, καθιστώντας τα προγράμματα αυτά
τόσο πιο θελκτικά όσο και πιο λειτουργικά γι’ αυτόν.
Είναι ιδανική για δενδρικές αναπαραστάσεις δεδομένων, μέσω των
οποίων μπορεί να απεικονιστεί η συντακτική δομή των προτάσεων που
πρόκειται να αναλυθούν από το πρόγραμμα.
46
από αλληλουχίες πεπερασμένου αριθμού συμβόλων που ονομάζεται αλφάβητο
(Jurafsky & Martin, 2000). Η αναλογία με ένα γλωσσικό σύστημα είναι εμφανής,
καθώς υπάρχει μία γραμματική με κανόνες που καθορίζουν εάν μια αλληλουχία
λέξεων (πρόταση) είναι αποδεκτή ή όχι. Οι διαφορετικές προτάσεις που μπορούν να
δημιουργηθούν είναι άπειρες, ενώ το σύνολο των λέξεων μιας γλώσσας, ως δομικά
στοιχεία των προτάσεων, είναι πεπερασμένος, αν και μεγάλος.
S → NP VP (3.1)
Στη συνέχεια ακολουθούν διαδοχικές αναλύσεις των συστατικών στοιχείων, έως ότου
προκύψει μία αναπαράσταση που περιλαμβάνει σύμβολα που αντιστοιχούν σε
γραμματικές κατηγορίες λέξεων. Σε αυτό το σημείο τίθενται σε εφαρμογή οι κανόνες
της δεύτερης κατηγορίας (λεξιλογικοί), οι οποίοι αναλαμβάνουν τη σύνδεση των
συμβόλων γραμματικών κατηγοριών με τις λέξεις που αντιστοιχούν σε αυτά.
N → άλογο (3.2)
47
τερματικά σύνολα, τα οποία μπορούν να αναλυθούν περαιτέρω με βάση κάποιον από
τους κανόνες της γραμματικής (π.χ. NP). Η δεύτερη κατηγορία περιλαμβάνει τα
τερματικά σύμβολα, τα οποία δεν μπορούν να αναλυθούν περισσότερο και, κατ’
επέκταση, τερματίζουν την ανάλυση της πρότασης. Σε μια τέτοια γραμματική τα
τερματικά σύμβολα είναι ουσιαστικά οι λέξεις που αποτελούν την πρόταση.
Σχ. 3.1. Γραφική αναπαράσταση της συντακτικής δομής της πρότασης «Ο κηπουρός ποτίζει τον κήπο.».
48
3.1.3 Τεχνικές Kατάτμησης (Parsing Techniques)
49
συνεχεία, χρησιμοποιώντας τους κανόνες που εμπεριέχονται στη γραμματική,
επιδιώκει να αναλύσει αρχικά το «S» και στη συνέχεια τα υπόλοιπα μη τερματικά
σύμβολα που προκύπτουν, όσο το δυνατόν περισσότερο, έως ότου καταλήξει στα
τερματικά σύμβολα, δηλαδή στις λέξεις που απαρτίζουν την εισαχθείσα πρόταση.
Εάν κάτι τέτοιο δεν καταστεί εφικτό, ο αλγόριθμος τερματίζεται δηλώνοντας
αποτυχία.
50
την ανάλυση της στα δομικά της συστατικά και στη μελέτη του τρόπου που αυτά
συνδυάζονται μεταξύ τους, προκειμένου να προκύψουν πιο περίπλοκες συντακτικές
δομές, φτάνοντας στο επίπεδο της πρότασης. Η συγκεκριμένη διαδικασία, όμως,
παρουσιάζει μια εγγενή αδυναμία. Η αδυναμία αυτή έγκειται στο γεγονός ότι τα
δομικά συστατικά μιας πρότασης δεν συνδέονται τυχαία προκειμένου να
σχηματίσουν δομές ανωτέρου επιπέδου. Θα πρέπει να ισχύσουν συγκεκριμένες
προϋποθέσεις που έχουν σχέση με τα επιμέρους χαρακτηριστικά των συνθετικών
αυτών στοιχείων.
Η ονοματική φράση «το παιδί» σχηματίζεται από το συνδυασμό του άρθρου «το» με
το ουσιαστικό «παιδί». Όμως δεν είναι αποδεκτή οποιαδήποτε σύνθεση άρθρου και
ουσιαστικού για το σχηματισμό μιας ονοματικής φράσης. Έτσι, για παράδειγμα οι
φράσεις
* τα παιδί (3.4)
* ο παιδί (3.5)
δεν είναι γραμματικά αποδεκτές, έστω κι αν πρόκειται για ένα φραστικό σύνολο
αποτελούμενο από ένα άρθρο και από ένα ουσιαστικό. Προκειμένου να καθοριστεί
και να ερμηνευθεί η συγκεκριμένη αδυναμία σχηματισμού φράσης, εισήχθη από τους
γλωσσολόγους η έννοια της «ασυμφωνίας» (disagreement).
Πιο συγκεκριμένα, μια λέξη, πλην της σημασιολογικής της ταυτότητας, φέρει
και μια σειρά πληροφοριών που καθορίζουν τη γραμματική της ταυτότητα. Το
σύνολο των γραμματικών πληροφοριών που χαρακτηρίζουν μια λέξη εκφράζεται με
ένα σύνολο από ζεύγη ιδιοτήτων-τιμών. Πρόκειται για μια σειρά από ιδιότητες, που
διαφέρουν ανάλογα με τη γραμματική κατηγορία της λέξης (αριθμός, πτώση, γένος,
πρόσωπο κ.α.), και οι οποίες παίρνουν μια συγκεκριμένη τιμή, ανάλογα με το κλιτικό
παράδειγμα της συγκεκριμένης λέξης (ενικός, ονομαστική, αρσενικό, τρίτο κ.α.).
51
Όσον αφορά στο παράδειγμα (3.3), οι γραμματικές πληροφορίες για τις δύο λέξεις
που σχηματίζουν την ονοματική φράση έχουν ως εξής:
52
Ο κανόνας της ενοποίησης χειρίζεται επιτυχώς πολλές ιδιάζουσες περιπτώσεις,
όπως συμφωνία αριθμού, συμφωνία υποκειμένου - ρήματος κ.α. Ως παράδειγμα του
πως λειτουργεί ο συγκεκριμένος κανόνας μπορεί να θεωρηθεί ο μη γραμματικός
σχηματισμός (3.4) που αναφέρθηκε παραπάνω («τα παιδί»). Πιο συγκεκριμένα, το
άρθρο «τα» εμπεριέχει στη λίστα των γραμματικών του ιδιοτήτων το ζευγάρι
«αριθμός: πληθυντικός». Από την άλλη, το ουσιαστικό «παιδί» έχει στη δική του
λίστα το ζευγάρι «αριθμός: ενικός». Όταν οι δύο αυτές λέξεις συνδυαστούν για να
σχηματίσουν μια ονοματική φράση, ο κανόνας της ενοποίησης απορρίπτει το
σχηματισμό της, καθώς η ιδιότητα «αριθμός» εμφανίζεται με δύο διαφορετικές τιμές.
Αν ληφθούν υπόψη όλα όσα έχουν αναφερθεί στα προηγούμενα κεφάλαια του
πονήματος αυτού, μπορεί να εξαχθεί το συμπέρασμα ότι η ανάπτυξη ενός λογισμικού
που προορίζεται ως βοήθημα για τη διδασκαλία της γλώσσας είναι μια περίπλοκη
διαδικασία που περιλαμβάνει πολλά στάδια. Ο δημιουργός (προγραμματιστής ή
εκπαιδευτικός), με μια ανασκόπηση σε όλη την υπάρχουσα σχετική βιβλιογραφία,
διαθέτει πολλαπλές επιλογές σε θέματα που άπτονται στόχων, μεθόδων και
διαδικασιών, στοιχεία τα οποία θα πρέπει να αξιολογήσει, στα πλαίσια του δικού του
υπό δημιουργία διδακτικού υλικού, και στη συνέχεια να αποφασίσει ποια από αυτά
θα υιοθετήσει, προκειμένου να ικανοποιήσει τους διδακτικούς ή προγραμματιστικούς
στόχους που έχει θέσει.
53
δεν είναι τελεσίδικες και αμετάβλητες. Συνεχώς αξιολογούνται, κυρίως μέσω της
ανατροφοδότησης στα διάφορα στάδια της υλοποίησης, και σε περίπτωση
δυσλειτουργίας ή απόκλισης από τους αναμενόμενους στόχους, διαφοροποιούνται ή
αντικαθίστανται.
54
προτάσεων, αλλά παράλληλα να ανταπεξέρχεται και στους περιορισμούς που τίθενται
από τα χαρακτηριστικά και τις ιδιαιτερότητες της γλώσσας προγραμματισμού, η
οποία χρησιμοποιείται για την ανάπτυξή του.
55
Προκειμένου να γίνει περισσότερο κατανοητή η σχηματική αναπαράσταση
της αρχιτεκτονικής του αλγορίθμου, που αποτελεί τον πυρήνα της συγκεκριμένης
εργασίας, θα ακολουθήσει μια συνοπτική παρουσίαση των επιμέρους στοιχείων που
τον αποτελούν, καθώς και του τρόπου με τον οποίο συνδέονται μεταξύ τους αλλά και
με το χρήστη – μαθητή.
Ο τρόπος εισαγωγής της πρότασης, όπως καθορίζεται από τις δυνατότητες της
γλώσσας προγραμματισμού, συνεπάγεται τη δημιουργία μιας αλληλουχίας ελληνικών
χαρακτήρων (character string). Ο συγκεκριμένος τύπος δεδομένων, προκειμένου να
τον επεξεργαστούν τα ακόλουθα στοιχεία του αλγορίθμου, πρέπει να μετατραπεί σε
συγκεκριμένη μορφή, δηλαδή σε μια λίστα λέξεων (word list). Τη συγκεκριμένη
διαδικασία αναλαμβάνει το φίλτρο εισαγωγής, το οποίο στη συνέχεια διοχετεύει τη
λίστα αυτή στη γραμματική.
56
ελέγχει τα χαρακτηριστικά (features) των λέξεων ή φράσεων, προκειμένου να
αποφανθεί για το αν μπορούν να συνδυαστούν σε συντακτικές δομές ανωτέρου
επιπέδου. Ο διορθωτής (checker) χρησιμοποιεί τη διαδικασία ενοποίησης,
προκειμένου να καταγράψει τα λάθη που έχουν γίνει από το χρήστη κατά το
σχηματισμό της πρότασης και στη συνέχεια να διοχετεύσει τις πληροφορίες αυτές
στο φίλτρο εξόδου.
Τέλος, οι πληροφορίες που αναφέρονται στην ορθότητα της πρότασης και στα
ενδεχόμενα λάθη που υπάρχουν σε αυτή πρέπει να τροποποιηθούν κατάλληλα και να
πάρουν τη μορφή συγκεκριμένου μηνύματος, το οποίο θα δοθεί στο χρήστη μέσα από
ένα αναδυόμενο παράθυρο. Τη διαδικασία αυτής της τροποποίησης αναλαμβάνει το
φίλτρο εξόδου.
57
κάποιες διεργασίες που επιτελούνται από το πρόγραμμα παρουσιάζονται μέσω της
οθόνης του υπολογιστή.
58
οποίο αποτελεί και το γραφικό περιβάλλον διάδρασης του χρήστη (Εικ. 3.1). Σε αυτό
το παράθυρο δίνονται στο χρήστη οι οδηγίες για τη χρησιμοποίηση του
προγράμματος, με τη μορφή εκφώνησης άσκησης. Στο κέντρο περίπου της οθόνης
ξεχωρίζει ένα πλαίσιο που τιτλοφορείται «Πρόταση». Πρόκειται για ένα πλαίσιο
κειμένου, στο οποίο ο χρήστης μπορεί να πληκτρολογήσει την πρόταση που επιθυμεί,
προκειμένου αυτή να εισαχθεί στο σύστημα.
tokenize(S, [T|Ts]) :-
frontToken(S, T, R), !, tokenize(R, Ts).
tokenize(_, []).
Η συγκεκριμένη διαδικασία παίρνει κάθε λέξη της ακολουθίας, όπως αυτή χωρίζεται
από τις υπόλοιπες με κενό, και την προσθέτει ως ξεχωριστό στοιχείο μιας λίστας που
δημιουργεί εκείνη τη στιγμή. Έτσι η πρόταση «Το παιδί παίζει.» μετατρέπεται στη
λίστα λέξεων
Όπως μπορεί να διαπιστωθεί, η τελευταία λέξη – στοιχείο της λίστας είναι η τελεία, η
οποία αποτελεί μεν σημείο στίξης και μέρος της πρότασης, αλλά δεν συγκαταλέγεται
στις άλλες λέξεις, οι οποίες περιλαμβάνονται στο λεξικό του αλγορίθμου. Το
πρόγραμμα, με την εντολή
59
3.2.3 Η γραμματική
Όπως έχει ήδη σημειωθεί, πρόκειται για το βασικό τμήμα του αλγορίθμου, το
οποίο κατά τη διάρκεια της λειτουργίας του εμπλέκει και όλα τα υπόλοιπα,
αποτελώντας τον βασικό συνδετικό κρίκο όλης της δομής του προγράμματος. Ο
ρόλος της γραμματικής είναι πολύπλευρος, καθώς περιέχει υπό τη μορφή κανόνων
όλες εκείνες τις συντακτικές δομές που είναι αποδεκτές από την ελληνική γλώσσα,
οπότε αποφαίνεται για την ορθότητα των προτάσεων που εισάγει ο χρήστης.
Επιπλέον, διαθέτει διαδικασίες οι οποίες ανατρέχουν στο λεξικό και στο μορφολογικό
αναλυτή, λόγος για τα οποία γίνεται στο επόμενο κεφάλαιο, προκειμένου να
αναζητήσει πληροφορίες για τις λέξεις που εμπεριέχονται στην πρόταση και να
δημιουργήσει τη λίστα των χαρακτηριστικών τους (attribute – value pairs). Τέλος, η
γραμματική διαθέτει και μια διαδικασία ελέγχου, που λειτουργεί παράλληλα με τον
έλεγχο της ορθότητας της πρότασης, αναζητά συγκεκριμένα συντακτικά ή
γραμματικά λάθη και, στην περίπτωση που τα βρει, ενημερώνει το χρήστη με
αντίστοιχα μηνύματα πάνω στην οθόνη.
60
καθορισμό συγκεκριμένης σειράς των συντακτικών στοιχείων μιας πρότασης. Ο
αλγόριθμος θα πρέπει να μετασχηματιστεί, ούτως ώστε να αναζητά την πτώση σε μια
ονοματική φράση και στη συνέχεια να αποφαίνεται για το συντακτικό της ρόλο.
Η διαδικασία lex που εμφανίζεται στον πιο πάνω ορισμό έχει σχέση με το
λεξικό και το μορφολογικό αναλυτή, επομένως θα εξετασθεί στην επόμενη ενότητα
του παρόντος πονήματος. Πριν από κάθε επίκληση της διαδικασίας shift, η οποία
προσθέτει άλλη μια κατηγορία στη λίστα, ο αλγόριθμος ελέγχει εάν η ακολουθία των
γραμματικών κατηγοριών αντιστοιχεί σε κάποια συντακτική δομή, η οποία
καθορίζεται από «κανόνες δομής φράσης» (phrase structure rules) της μορφής:
61
Ο πιο πάνω κανόνας ουσιαστικά ερμηνεύεται ως εξής: Εάν στη λίστα των
γραμματικών κατηγοριών εντοπισθεί η ακολουθία άρθρο (art) – ουσιαστικό (n), θα
πρέπει να αφαιρεθεί από τη λίστα και να αντικατασταθεί με μια ονοματική φράση (np).
Η διαδικασία του αλγορίθμου που αναλαμβάνει τον συγκεκριμένο έλεγχο και
αντικατάσταση ονομάζεται reduce και ορίζεται στον αλγόριθμο ως εξής:
reduce(Stack, Newstack) :-
combine(Stackbottom, Expansion, Stack),
match_rule(Expansion, Head),
Newstack = append(Stackbottom, [Head]).
Στην παραπάνω δήλωση της διαδικασίας reduce, αξίζει να σημειωθεί ότι η διαδικασία
match_rule είναι υπεύθυνη για να εξετάσει εάν και κατά πόσον υπάρχει κανόνας
δομής φράσης που να προβλέπει τη συγκεκριμένη αλληλουχία γραμματικών
κατηγοριών. Ουσιαστικά, η διαδικασία reduce μετασχηματίζει την ακολουθία των
γραμματικών κατηγοριών σε ακολουθία πολυπλοκότερων φραστικών δομών
(ονοματικές και ρηματικές φράσεις, εμπρόθετους προσδιορισμούς κ.α.). Η σύνθεση
όμως αυτών των ανώτερων συντακτικών δομών δε γίνεται αυτόματα, με την εύρεση
από τον αλγόριθμο απλά μιας αλληλουχίας γραμματικών κατηγοριών. Θα πρέπει να
ελεγχθεί εάν τα χαρακτηριστικά της μιας κατηγορίας είναι συμβατά με αυτά της
άλλης, ούτως ώστε να αποφευχθούν περιπτώσεις ασυμφωνίας γένους, πτώσης ή και
αριθμού. Όπως έχει ήδη αναφερθεί σε προηγούμενο κεφάλαιο, η αλγοριθμική τεχνική
που μπορεί να ελέγξει τη συμβατότητα μεταξύ χαρακτηριστικών είναι η ενοποίηση
(unification). Η τεχνική αυτή, στο συγκεκριμένο πρόγραμμα, έχει πάρει τη μορφή
μιας διαδικασίας που ονομάζεται unify και την οποία επικαλείται με τη σειρά της η
διαδικασία match_rule μέσα στον ορισμό της.
62
πρέπει να εμπλουτιστεί, ώστε η διαδικασία unify να μην ελέγχει απλά τη
συμβατότητα των χαρακτηριστικών, αλλά να καθορίζει και το είδος αυτής της
ασυμβατότητας. Τον ρόλο αυτό τον αναλαμβάνει μια άλλη διαδικασία, η οποία
εντάσσεται μέσα στον ορισμό της unify, η οποία ονομάζεται check.
63
τερματικό σύμβολο S (για την πρόταση), όπως συμβαίνει σε κλασικούς bottom – up
parsers. Αντιθέτως, η ανάλυση φτάνει στο επίπεδο όπου έχουν επισημανθεί οι
φράσεις της πρότασης (ονοματικές, ρηματικές κ.τ.λ.) και ακολουθούνται από λίστες
ζευγών χαρακτηριστικών τιμών (attribute – value pairs), όπως αυτές έχουν προκύψει
από τη λειτουργία της ενοποίησης (unification). Το επόμενο βήμα στη λειτουργία της
γραμματικής είναι να καθοριστούν οι ονοματικές φράσεις που παίζουν συγκεκριμένο
συντακτικό ρόλο, δηλαδή το ρόλο του υποκειμένου και του αντικειμένου.
findsyntax([], []).
findsyntax([Pos1|Tail], [Pos2|Tail2]) :-
findsub(Pos1, Pos2), findsyntax(Tail, Tail2).
findsyntax([Pos1|Tail], [Pos2|Tail2]) :-
findobj(Pos1, Pos2), findsyntax(Tail, Tail2).
findsyntax([vp(_A)|Tail], [vp(_A)|Tail2]) :- findsyntax(Tail, Tail2).
Η διαδικασία αυτή ανατρέχει τη λίστα των φράσεων της πρότασης, όπως αυτή έχει
προκύψει από τη λειτουργία της διαδικασίας shift – reduce, και απομονώνει
αποκλειστικά τις ονοματικές φράσεις, καθώς αυτές έχουν τη δυνατότητα του
συντακτικού ρόλου του υποκειμένου ή του αντικειμένου. Στη συνέχεια ψάχνει τη
λίστα των χαρακτηριστικών κάθε ονοματικής φράσης. Σε περίπτωση που η φράση
βρίσκεται σε πτώση ονομαστική, ο αλγόριθμος αποδίδει στη φράση το πρόθεμα
npsub, για να καταδείξει ότι λειτουργεί ως υποκείμενο της πρότασης. Εάν η φράση
βρίσκεται σε πτώση αιτιατική, ο αλγόριθμος της αποδίδει το πρόθεμα npobj,
χαρακτηρίζοντάς την αντικείμενο της πρότασης. Στις περιπτώσεις άλλων πτώσεων, ο
αλγόριθμος διατηρεί το πρόθεμα np στην αρχή της ονοματικής φράσης.
checksub(Phrases) :-
findsubfeats(Phrases, A),!,
64
findvpfeats(Phrases, B),!,
unify(A, B, C).
checksub(Phrases).
3.2.4 Το λεξικό
Όπως φαίνεται και από την ίδια την ονομασία του συγκεκριμένου τμήματος
του αλγορίθμου, το λεξικό περιλαμβάνει έναν κατάλογο όλων των λέξεων, τις οποίες
αναγνωρίζει το πρόγραμμα, προκειμένου να τις αντιστοιχίσει με την ανάλογη
γραμματική κατηγορία, καθώς και με συγκεκριμένη λίστα ζευγών χαρακτηριστικών –
τιμών, η οποία βρίσκεται επίσης καταχωρημένη εκεί.
65
lex(Word, F) :- analyse(Word, _Stem, F), !.
lex(_Word, _F) :-
stdio::write("Αυτή η λέξη δεν υπάρχει μέσα στο λεξικό"), errorexit(1).
Στον παραπάνω ορισμό της lex, αυτό που εμφανίζει μεγαλύτερο ενδιαφέρον είναι η
δεύτερη γραμμή κώδικα. Αυτή περιλαμβάνει οδηγίες για την περίπτωση που μια λέξη
δεν περιλαμβάνεται μέσα στο λεξικό. Εάν συμβεί κάτι τέτοιο, το πρόγραμμα
ενημερώνει το χρήστη, προβάλλοντας το αντίστοιχο μήνυμα.
Η καταχώρηση της λέξης γίνεται με τη μορφή γεγονότος (fact) στην ορολογία της
PROLOG, με την ονομασία dictionary. Αυτή εμφανίζει τρία χαρακτηριστικά. Το
πρώτο είναι η γραφημική αναπαράσταση της λέξης, μέσω της οποίας γίνεται η
αναζήτησή της από το πρόγραμμα. Ακολουθεί η ένδειξη της γραμματικής κατηγορίας
στην οποία ανήκει η συγκεκριμένη λέξη, με τη μορφή συντομογραφίας. Η
καταχώρηση ολοκληρώνεται με την ακολουθία των ζευγών χαρακτηριστικών –
τιμών, οργανωμένων υπό τη μορφή λίστας.
66
μέσα από την διαδικασία lex και σκοπό έχει να απομονώσει από τη γραφημική
αναπαράσταση της λέξης την κατάληξη. Στη συνέχεια ανατρέχει σε ένα άλλο τμήμα
του λεξικού, το οποίο έχει καταχωρημένες τις καταλήξεις διαφόρων κλιτικών
παραδειγμάτων, μαζί με τα ζεύγη χαρακτηριστικών – τιμών, που αντιστοιχούν στην
κάθε κατάληξη. Στη συνέχεια παρατίθεται ένα τμήμα αυτών των καταχωρήσεων, το
οποίο αναφέρεται στις καταλήξεις του ενεστώτα ενεργητικής ρημάτων της α΄
συζυγίας.
67
3.3 Μεθοδολογία Αξιολόγησης
Σε αυτό το σημείο πρέπει να σημειωθεί ότι, λόγω της φύσεως της μεθόδου
ανάπτυξης του λογισμικού, αλλά και του περιορισμένου εύρους της, δεν ήταν δυνατή
η αξιολόγησή του στα πλαίσια της χρήσης του, με την εμπλοκή των ίδιων των
χρηστών σε αυτή. Πιο συγκεκριμένα, το πρόγραμμα αυτό παρουσιάζεται σε μια
πρωτόλεια μορφή, η οποία ούτε μπορεί να θεωρηθεί θελκτική για το χρήστη, ούτε
εμφανίζεται αρκετά λειτουργική ως προς το περιβάλλον διάδρασης. Άλλωστε, ο
σκοπός της ανάπτυξης του συγκεκριμένου λογισμικού δεν ήταν να εμφανιστεί ως μια
πλήρης εφαρμογή διδασκαλίας της ελληνικής, αλλά η δημιουργία μιας αλγοριθμικής
πλατφόρμας, πάνω στην οποία θα μπορούσε να στηριχθεί ένα τέτοιο μελλοντικό
πρόγραμμα. Προκειμένου να ενσωματωθούν, λοιπόν, κάποια αυθεντικά δεδομένα, με
τη μορφή προτάσεων, ούτως ώστε να αξιολογηθεί ο parser ως προς την
αποδοτικότητά του, με γνώμονα τα ερευνητικά ερωτήματα που έχουμε θέσει σε
προηγούμενο κεφάλαιο, χρησιμοποιήθηκαν κάποια ερευνητικά εργαλεία τα οποία
δόθηκαν σε άτομα του πληθυσμού των χρηστών που απευθύνεται το συγκεκριμένο
68
πρόγραμμα. Παράλληλα, ο αλγόριθμος αξιολογήθηκε και με δικές μας προτάσεις,
ούτως ώστε να αναδειχθούν προβλήματα κατά τη διάρκεια της ανάπτυξής του, αλλά
και αδυναμίες και περιορισμοί του τελικού προϊόντος.
Ανάλογα με τον τόπο και τον τρόπο της συλλογής των δεδομένων αυτών,
προκύπτουν διαφορετικές μεθοδολογικές προσεγγίσεις και, κυρίως, μια διαφορετική
οπτική του εν λόγω ζητήματος. Πιο συγκεκριμένα, η αξιολόγηση θα πρέπει να
πραγματοποιείται με βάση δύο άξονες: το χρήστη – μαθητή (μαθησιακή άποψη) και
69
το ίδιο το προϊόν, με τις δυνατότητες και τους περιορισμούς που προκύπτουν από το
σχεδιασμό του και την πλατφόρμα ανάπτυξης (τεχνολογική άποψη).
(Παναγιωτακόπουλος, Πιερρακέας και Πιντέλας, 2003).
70
Προκειμένου λοιπόν να καλυφθούν οι ιδιαίτερες ανάγκες της συγκεκριμένης
μαθησιακής ομάδας, θα πρέπει να αναζητηθούν ερευνητικές δραστηριότητες που
σκιαγραφούν τις αδυναμίες των συγκεκριμένων χρηστών και σε ποιες περιοχές του
γλωσσικού συστήματος εντοπίζονται. Καθώς το συγκεκριμένο πρόγραμμα δίνει
μεγαλύτερη βάση στη γραμματική διόρθωση των προτάσεων, τόσο λόγω
αρχιτεκτονικής του, αλλά κυρίως λόγω των δυνατοτήτων που έχει, η έρευνα
εστιάστηκε στον εντοπισμό μεγάλης συχνότητας γραμματικών λαθών της
συγκεκριμένης ομάδας. Η καταγραφή και ομαδοποίηση αυτών των λαθών θα
καθορίσει και την αξιολόγηση της αποδοτικότητας του προγράμματος.
Μια άλλη κατηγορία λαθών στα οποία οι μη φυσικοί ομιλητές της ελληνικής
εμφανίζονται πιο επιρρεπείς είναι στη μορφολογία των ρημάτων και στην αλλαγή του
θέματος ανάλογα με το χρόνο. Αυτό, κυρίως, συμβαίνει σε μαθητές των οποίων η
μητρική γλώσσα δεν εμφανίζει τη μορφολογική ποικιλία της ελληνικής γλώσσας. Η
μεγαλύτερη δυσκολία έγκειται στο γεγονός ότι τα κλιτικά παραδείγματα ενός
ρήματος διαφοροποιούνται μορφολογικά τόσο ανάλογα με τον αριθμό, όσο και με το
χρόνο, αλλά και την έγκλιση. Την ίδια στιγμή, σε γλώσσες με φτωχή κλιτική
μορφολογία (inflectional morphology), όπως για παράδειγμα τα αγγλικά, οι
μορφολογικές διαφοροποιήσεις είναι ελάχιστες και συνήθως περιλαμβάνουν την
προσθήκη ενός μόνο επιθέματος (suffix) ή βοηθητικού ρήματος για τη
διαφοροποίηση του χρόνου. Λαμβάνοντας υπόψη όλα τα παραπάνω, προκύπτει ότι το
εν λόγω πρόγραμμα θα πρέπει να ελέγχει και τη μορφολογία του ρήματος της
πρότασης, ώστε να διαπιστωθεί εάν η επιλογή της μορφολογίας αυτής αντανακλά την
πρόθεση του χρήστη.
71
Απόρροια της παραπάνω δυσκολίας στη σωστή χρήση της μορφολογίας του
ρήματος είναι και τα γραμματικά λάθη που προκύπτουν λόγω ασυμφωνίας
υποκειμένου – ρήματος. Πάντως, πρέπει να σημειωθεί ότι η έρευνα πάνω στα
γραμματικά λάθη μη φυσικών ομιλητών της νέας ελληνικής δε δείχνει στατιστικά
σημαντικές ενδείξεις για ενδεχόμενη δυσκολία των εν λόγω μαθητών σε αυτό το
είδος συμφωνίας. Παρόλα αυτά, θα ενσωματωθεί στον αλγόριθμο η δυνατότητα
αναγνώρισης λαθών του παραπάνω τύπου, καθώς ήδη υπάρχουν οι μηχανισμοί
εκείνοι που επιτρέπουν τη συγκεκριμένη λειτουργία, χωρίς να είναι απαραίτητη η
προσθήκη πρόσθετων γραμμών κώδικα.
72
προτάσεις (δεν θα έχουν δημιουργηθεί από κάποιο χρήστη, αλλά από εμάς τους
ίδιους), προκειμένου να δια πιστωθεί στοχευμένα η συμπεριφορά του αλγορίθμου σε
συγκεκριμένες περιπτώσεις δεδομένων. Στη συνέχεια, θα χρησιμοποιηθεί ένας ικανός
αριθμός αυθεντικών προτάσεων, προκειμένου να καταδειχθεί τόσο ποιοτικά όσο και
ποσοτικά η αποδοτικότητα του προγράμματος σε κατά το δυνατό πλησιέστερες στις
πραγματικές συνθήκες, με δεδομένα από την ομάδα των χρηστών στους οποίους
απευθύνεται.
73
(διαμορφωτική αξιολόγηση), η οποία όμως παρουσιάζει μια σημαντική διαφορά. Στο
σημείο αυτό έχουμε το τελικό προϊόν και, επομένως, οι δυνατότητες παρέμβασης και
βελτίωσης του αλγορίθμου είναι ελάχιστες. Οι διαπιστώσεις όμως που προκύπτουν
είναι σημαντικότατες ώστε να καθοριστεί έως που φτάνουν οι δυνατότητες του
προγράμματος και να σημειωθούν ενδεχόμενοι περιορισμοί της λειτουργίας του.
74
Ο πληθυσμός στον οποίο αναφέρεται αυτή η αξιολογική δραστηριότητα είναι
το σύνολο των μαθητών δημοτικών σχολείων, οι οποίοι είναι μη φυσικοί ομιλητές της
νέας ελληνικής, με ποικίλο χρόνο παραμονής στην Ελλάδα. Το δείγμα που θα
χρησιμοποιηθεί, προκειμένου να συλλεχθούν τα δεδομένα και να καταρτιστεί η
τράπεζα προτάσεων ήταν δεκαπέντε αλλοδαποί μαθητές, ηλικίας 8 – 13 ετών, οι
οποίοι φοιτούν στις τάξεις Β έως Στ΄ του Δωδεκαθέσιου Δημοτικού Σχολείου
Διακοπτού. Περισσότερα χαρακτηριστικά του δείγματος δεν κρίνεται απαραίτητο να
καθοριστούν από το εργαλείο της έρευνας, καθώς δεν παρουσιάζουν κάποιο
ενδιαφέρον, λόγω των στόχων της αξιολογικής δραστηριότητας.
Αυτό που αναφέρεται ρητά στις οδηγίες συμπλήρωσης είναι ο τρόπος με τον
οποίο πρέπει να δημιουργηθούν οι προτάσεις από το μαθητή, και οι οποίες
συντάχθηκαν με βάση τους περιορισμούς του προγράμματος, ώστε να μη προκύψουν
δεδομένα, τα οποία το πρόγραμμα δεν θα μπορέσει να επεξεργαστεί λόγω εγγενών
αδυναμιών και αρχιτεκτονικής. Επ’ ουδενί οι συγκεκριμένοι περιορισμοί δεν τίθενται
για να μειωθεί το ποσοστό των προτάσεων που δεν θα αναλυθούν σωστά από την
εφαρμογή. Πρόκειται για περιορισμούς που τίθενται από το λεξιλόγιο που
περιλαμβάνει το λεξικό, καθώς και από το είδος των φράσεων που αναγνωρίζει το
πρόγραμμα. Άλλωστε, οι οδηγίες αυτές δεν έχουν καμιά σχέση με τα ερευνητικά
ερωτήματα που έχουν διατυπωθεί και με βάση τα οποία θα διενεργηθεί η αξιολόγηση
του αλγορίθμου.
75
πρέπει να βρίσκονται σε χρόνο ενεστώτα. Οι προτάσεις θα έχουν σχέση με
δραστηριότητες που κάνει ο δάσκαλος και οι μαθητές στην τάξη, χρησιμοποιώντας το
λεξιλόγιο που παρατίθεται και το οποίο περιλαμβάνει ρήματα και ουσιαστικά.
76
Κεφάλαιο 4
Αξιολόγηση
77
4.1 Περιορισμοί Του Λογισμικού
78
κλιτικών παραδειγμάτων.
Επιπρόσθετα, στον αλγόριθμο που έχει αναπτυχθεί απουσιάζει κάποιος
μηχανισμός επίλυσης της αμφισημίας (ambiguity) ορισμένων λεκτικών τύπων, όπως
είναι για παράδειγμα η πτώση στο ουδέτερο άρθρο "το". Σε αυτή την περίπτωση, ο
αλγόριθμος δε μπορεί να ανταποκριθεί στις ανάγκες αναγνώρισης του τύπου που
χρησιμοποιείται, και αυτό έχει άμεση συνέπεια στην ορθότητα ανάλυσης της
πρότασης και εντοπισμού ενδεχόμενων λαθών. Οι περιορισμοί αυτοί μπορούν να
φτάσουν μέχρι και στο επίπεδο λανθασμένης συντακτικής δομής που αποδίδεται στην
πρόταση, καθώς το πρόγραμμα δε μπορεί να καθορίσει το υποκείμενο ή και το
αντικείμενο της πρότασης που καλείται να αναλύσει.
79
αναμενόμενης συμπεριφοράς του και τέλος παρατίθεται το αποτέλεσμα που ελήφθη,
συνοδευόμενο από έναν σύντομο σχολιασμό περί του κατά πόσον ήταν αναμενόμενο.
Επιπλέον, έχει επιχειρηθεί μια κατηγοριοποίηση των προτάσεων που δόθηκαν στο
πρόγραμμα προς επεξεργασία, ούτως ώστε να διευκολυνθεί η διεξαγωγή
συμπερασμάτων ως προς την ορθότητα της λειτουργίας του.
80
Μέσω του μορφολογικού αναλυτή, ο χειρισμός των άγνωστων λέξεων μπορεί
να γίνει λίγο περισσότερο ευφυής και, κατά συνέπεια αποδοτικός. Πιο συγκεκριμένα,
και κυρίως για τα κλιτά μέρη του λόγου, το πρόγραμμα θα μπορούσε να αναζητά την
κατάληξη της συγκεκριμένης λέξης και, αν αυτή υπάρχει καταχωρημένη στο
μορφολογικό αναλυτή, να της αποδίδονται το μέρος του λόγου και τα ζεύγη
χαρακτηριστικών – τιμών που αντιστοιχούν στην κατάληξη αυτή. Κατ’ αυτόν τον
τρόπο, το πρόγραμμα θα μπορεί να επεξεργαστεί περισσότερες προτάσεις,
ξεπερνώντας κάποιους από τους περιορισμούς του λεξιλογίου.
[npsub([num(sing()),gen(masc()),case(nom())]),vp([per(third()),num(sing()),ten(pres(
))])]
81
[vp([per(third()),num(sing()),ten(pres())]),npsub([num(sing()),gen(masc()),case(nom(
))])]
[npsub([num(sing()),gen(masc()),case(nom())]),vp([per(third()),num(sing()),ten(pres(
))]),
npobj([case(acc()),num(sing()),gen(fem())])]
[npobj([case(acc()),num(sing()),gen(fem())]),vp([per(third()),num(sing()),ten(pres())]
),npsub([num(sing()),gen(masc()),case(nom())])]
82
Όπως έχει ήδη αναφερθεί στο κεφάλαιο περί της αρχιτεκτονικής του εν λόγω
προγράμματος, μέσα στον αλγόριθμο έχουν ενσωματωθεί οι μηχανισμοί εκείνοι που
επιτρέπουν τη λειτουργία εμφάνισης μηνυμάτων σε περίπτωση λάθους. Τα μηνύματα
αυτά έχουν πολύ απλή μορφή και αναφέρονται στο είδος του λάθους που έχει γίνει
από το χρήστη. Σε μια μελλοντική έκδοση του προγράμματος μπορούν να
διαμορφωθούν διαφορετικά, ώστε να είναι περισσότερο στοχευμένα και παιδαγωγικά
άρτια.
Μια πρώτη περίπτωση λάθους που θα εξετασθεί στα πλαίσια αυτής της
αξιολόγησης είναι η εσωτερική συμφωνία μεταξύ των συστατικών στοιχείων μιας
ονοματικής φράσης. Σε αυτή την περίπτωση θα πρέπει άρθρο και ουσιαστικό να
έχουν το ίδιο γένος, τον ίδιο αριθμό και την ίδια πτώση. Σε αντίθετη περίπτωση
έχουμε γραμματικό λάθος, οπότε ο χρήστης θα πρέπει να ενημερώνεται σχετικά με το
αντίστοιχο μήνυμα.
83
Υπάρχουν, φυσικά, και περιπτώσεις όπου περιέχονται περισσότερα από ένα λάθη
στην πρόταση που εισάγει ο χρήστης. Σε μια πρώιμη εκδοχή του συγκεκριμένου
προγράμματος ο χειρισμός αυτής της περίπτωσης δεν ήταν ο ενδεδειγμένος. Πιο
συγκεκριμένα, ο αλγόριθμος τερματιζόταν σε περίπτωση ανίχνευσης κάποιου λάθους,
με αποτέλεσμα να εμφανίζεται μόνο το πρώτο κατά σειρά από αυτά. Στη συνέχεια το
πρόβλημα αυτό διορθώθηκε και έτσι, στην παρούσα εκδοχή της εφαρμογής,
παρουσιάζονται με τη σειρά όλα τα μηνύματα που αναφέρονται σε λάθη της
πρότασης. Έτσι, για παράδειγμα στην περίπτωση της πρότασης
αρχικά προβάλλεται στο χρήστη ένα μήνυμα για λάθος στο γένος και, όταν αυτός
πατήσει το κουμπί «ΟΚ», προβάλλεται μήνυμα για λάθος στον αριθμό.
84
της συγκεκριμένης ασυμφωνίας αφού αποδοθεί στην κατάλληλη ονοματική φράση ο
συντακτικός ρόλος του υποκειμένου. Επομένως, σε μια πρόταση του τύπου
Διαπιστώνουμε, λοιπόν, ότι και σε αυτή την περίπτωση ο αλγόριθμός μας λειτουργεί
κατά το αναμενόμενο.
85
έχουν πληκτρολογηθεί λάθος από βιασύνη του χρήστη. Σε τέτοια περίπτωση το
λογισμικό δεν έχει την ευχέρεια να απομονώσει το λάθος και να προτείνει μέσω
μηνύματος στο χρήστη να εισάγει ξανά την πρόταση. Επιπλέον, απουσιάζει και η
δυνατότητα εξεύρεσης και διόρθωσης ορθογραφικών λαθών. Έτσι, σε περιπτώσεις
προτάσεων όπως
το πρόγραμμα, αφού αναζητήσει στο λεξικό το συγκεκριμένο λεκτικό τύπο και δεν
τον βρει, ενημερώνει το χρήστη με το κατάλληλο μήνυμα απλά ότι η συγκεκριμένη
λέξη δεν υπάρχει καταχωρημένη στο λεξικό.
86
την ορθογραφία του, που είναι μέσα στις ζητούμενες γλωσσικές ικανότητες που
πρέπει να αναπτύξει στα πλαίσια της διδασκαλίας.
η εφαρμογή αναγνωρίζει σαν υποκείμενο την ονοματική φράση ένα πρόβλημα και
σαν αντικείμενο τη φράση το παιδί, ενώ στην ουσία συμβαίνει το αντίθετο.
Επιπλέον, τόσο στα αρσενικά όσο και στα ουδέτερα ουσιαστικά, το άρθρο του
είναι η γενική τόσο του αρσενικού ο όσο και του ουδετέρου το. Εδώ, λοιπόν, έχουμε
άλλη μια περίπτωση ασάφειας, όπου στην εγγραφή στο λεξικό του λεκτικού τύπου
του δε μπορούμε να καθορίσουμε το άρθρο. Ακόμα και σε αυτή την περίπτωση, λόγω
της αρχιτεκτονικής και των διαδικασιών που περιλαμβάνονται στον αλγόριθμο,
οδηγούμαστε σε υπερ – παραγωγικότητα, με αποδοχή προτάσεων όπως
87
μηχανισμών αποσαφήνισης διφορούμενων λεκτικών τύπων, ώστε η αποδοτικότητα
του προγράμματος να βελτιωθεί ακόμα περισσότερο.
Σωστή 98 65,3
Λάθος 52 34,7
Ορθότητα Προτάσεων
Σωστές
Λάθος
88
Γράφημα 4.1 Χαρακτηρισμός Προτάσεων
Κατάληξης 41 74,5
Ορθογραφίας 4 7,3
Ασυμφωνίας 10 18,2
Είδη Λαθών
Κατάληξης
Ορθογραφίας
Ασυμφωνίας
89
Επεξηγηματικά, τα λάθη κατάληξης αφορούν σε ορθογραφικά λάθη στις καταλήξεις
ρημάτων και ουσιαστικών. Τα λάθη ορθογραφίας αποτελούν λάθη στο θέμα των
λέξεων. Τέλος, τα λάθη ασυμφωνίας προκύπτουν εντός της δομής των φράσεων, όταν
δύο στοιχεία (π.χ. άρθρο και ουσιαστικό) έχουν διαφορετικό αριθμό, γένος, πτώση
κ.α. Από την επισκόπηση των στοιχείων παρατηρούμε ότι τα λάθη σε καταλήξεις
αποτελούν τη συντριπτική πλειοψηφία, ακολουθούμενα από τα λάθη ασυμφωνίας
και, τέλος, τα ορθογραφικά.
Προβλεπόμενη 73 74,5
Μη Προβλεπόμενη 25 25,5
Προβλεπόμενη
Μη προβλεπόμενη
90
ΣΥΜΠΕΡΙΦΟΡΑ ΑΠΟΛΥΤΗ ΣΥΧΝΟΤΗΤΑ ΣΧΕΤΙΚΗ ΣΥΧΝΟΤΗΤΑ
ΠΡΟΓΡΑΜΜΑΤΟΣ
Προβλεπόμενη 34 82,9
Μη Προβλεπόμενη 7 17,1
Προβλεπόμενη
Μη Προβλεπόμενη
Προβλεπόμενη 0 0
Μη Προβλεπόμενη 4 100
91
Επιδόσεις σε Λάθη Ορθογραφίας
Προβλεπόμενη
Μη Προβλεπόμενη
Προβλεπόμενη 7 70
Μη Προβλεπόμενη 3 30
Προβλεπόμενη
Μη Προβλεπόμενη
92
Συνολικές Επιδόσεις
Προβλεπόμενη
Μη Προβλεπόμενη
4.4 Συζήτηση
Μετά την παράθεση των δεδομένων που προέκυψαν από την αξιολογική
διαδικασία, στην οποία υπεβλήθη ο αλγόριθμος ούτως ώστε να διαπιστωθεί η
αποδοτικότητά του, είναι απαραίτητο να ακολουθήσει η συζήτηση των
αποτελεσμάτων αυτών και να προκύψουν τα σχετικά συμπεράσματα, που αφορούν
τόσο στην προβλεπόμενη ή μη συμπεριφορά του προγράμματος όσο και στο κατά
πόσον καλύπτει τα κριτήρια λειτουργίας που τέθηκαν ως ερευνητικά ερωτήματα σε
προηγούμενο κεφάλαιο. Προκειμένου να εξαχθούν τα συμπεράσματα αυτά και να
διατυπωθούν τα ανάλογα πορίσματα, θα πρέπει να θεωρήσουμε τόσο τα
αποτελέσματα της αξιολόγησης των ερευνητών, όσο και αυτά της αξιολόγησης των
χρηστών, ώστε να προκύψει μια σφαιρική εικόνα περί των επιδόσεων του
προγράμματος.
93
των υπολοίπων στοιχείων της πρότασης. Σε αυτό το σημείο θα ήταν καλό να ενταχθεί
ένας μηχανισμός, ο οποίος να προσπαθεί να προσδώσει στην άγνωστη λέξη
γραμματικά χαρακτηριστικά (λ.χ. μέσω της κατάληξής της) ή με κάποιο τρόπο να
παρακάμπτεται και να επεξεργάζεται την υπόλοιπη πρόταση, αναδεικνύοντας λάθη
στα υπόλοιπα στοιχεία. Επιπλέον, λόγω της παραπάνω συμπεριφοράς, ο αλγόριθμος
τερματίζεται ακόμα και με την εισαγωγή λέξεων που είναι γραμμένες με λάθος
ορθογραφία ή λάθος πληκτρολόγηση.
94
να διακριθεί μορφολογικά η ονομαστική και η αιτιατική πτώση. Ο αλγόριθμος
αποδίδει σε ονοματικές φράσεις το συντακτικό ρόλο του υποκειμένου ή του
αντικειμένου ανάλογα με την πτώση στην οποία βρίσκονται. Αφού κάτι τέτοιο δε
μπορεί να γίνει, το πρόγραμμα δε λειτουργεί σωστά. Ο μόνος τρόπος αναγνώρισης
του υποκειμένου σε τέτοιες περιπτώσεις είναι η αναγνώριση συγκεκριμένων
σημασιολογικών στοιχείων στο υποκείμενο και στο ρήμα, κάτι που στην παρούσα
έκδοση του προγράμματος δεν υφίσταται. Στην περίπτωση της αξιολόγησης του
αλγορίθμου από τους χρήστες, τα λάθη ασυμφωνίας που εντοπίστηκαν στις
αυθεντικές προτάσεις ήταν λιγοστά και οφείλονταν περισσότερο σε ορθογραφικά
λάθη στα άρθρα, που παρέπεμπαν σε διαφορετικό αριθμό ή πτώση. Παρόλα αυτά, οι
7 περιπτώσεις ασυμφωνίας εντοπίστηκαν κανονικά από το λογισμικό και μόλις τρεις
δεν αξιολογήθηκαν ορθά. Πρέπει, όμως, να σημειωθεί ότι οι συγκεκριμένες
προτάσεις περιείχαν λέξεις εκτός λεξικού ή με ορθογραφικά λάθη, με αποτέλεσμα η
λειτουργία του αλγορίθμου να τερματίζεται πρόωρα.
Σε μια συνολική αποτίμηση της αποδοτικότητας και της γενικής επίδοσης του
προγράμματος στο σύνολο της επεξεργασίας της τράπεζας προτάσεων που
καταρτίθηκε, οι σωστές αξιολογήσεις των προτάσεων ανέρχονται στο 74,5%,
ποσοστό που δηλώνει πλειοψηφία, αλλά όχι αρκετά υψηλό. Αυτό, σε μια πρώτη
ανάγνωση θα συνεπαγόταν μη επαρκή λειτουργία του αλγορίθμου. Ελέγχοντας, όμως
τα δεδομένα εις βάθος, διαπιστώνουμε ότι η συντριπτική πλειοψηφία των
περιπτώσεων όπου το πρόγραμμα δε λειτούργησε σωστά περιείχε ανορθόγραφες ή
άγνωστες για το λεξικό λέξεις. Εάν αυτές εξέλειπαν, το λογισμικό θα είχε την
αναμενόμενη συμπεριφορά και επίδοση. Επομένως, το σχετικά υψηλό ποσοστό
αποτυχημένων αναλύσεων προτάσεων δεν οφείλεται μόνο σε μη επαρκή λειτουργία
95
του αλγορίθμου, αλλά περισσότερο στην αδυναμία των μαθητών της ομάδας στόχου
να ακολουθήσουν τους περιορισμούς στο σχηματισμό προτάσεων, οι οποίοι
περιγράφονταν από το φύλλο εργασίας το οποίο κλήθηκαν να συμπληρώσουν. Ακόμα
και τα ορθογραφικά λάθη που έγιναν θα μπορούσαν να είχαν αποφευχθεί αν ήταν
λίγο πιο προσεκτικοί, καθώς η ορθογραφία του θέματος των λέξεων που
εμπεριέχονται στο λεξικό φαινόταν στο φύλλο εργασίας που τους δόθηκε.
96
Κεφάλαιο 5
Εν κατακλείδι
97
5.1 Γενικά Συμπεράσματα
98
μαθησιακό αυτό μοντέλο μπορεί να εξυπηρετηθεί καλύτερα με κάποιο εξειδικευμένο
εκπαιδευτικό λογισμικό. Μπορεί να δοθεί απευθείας στο μαθητή να επιλέξει τις
δραστηριότητες που επιθυμεί, να ασχοληθεί με συγκεκριμένες ενότητες της ύλης, να
αποφασίσει για το ρυθμό της προόδου του ή για την ώρα ενασχόλησής του, ακόμα
και να οδηγηθεί σε μια αυτοαξιολόγηση, υποβοηθούμενος από το ίδιο το πρόγραμμα.
Μια άλλη παράμετρος της μαθησιακής διαδικασίας, στην οποία δίνεται πολύ
μεγάλη σημασία, είναι η κοινωνική διάσταση της μάθησης. Οι μαθησιακοί στόχοι
μπορούν να εκπληρωθούν πιο γρήγορα και ορθά μέσω της αλληλεπίδρασης μαθητών
μεταξύ τους. Η εργασία σε ομάδες, προκειμένου να επιτευχθεί ένας κοινός
μαθησιακός στόχος, αποτελεί μια από τις πλέον διαδεδομένες παιδαγωγικές
πρακτικές. Οι διάφορες τεχνολογικές εξελίξεις επιτρέπουν στα σημερινά
εκπαιδευτικά προγράμματα να χρησιμοποιούν τις δυνατότητες του διαδικτύου, ώστε
οι χρήστες να είναι σε θέση να επικοινωνούν μεταξύ τους, ακόμα και σε πραγματικό
χρόνο, χρησιμοποιώντας συσκευές που προϋποθέτουν αμιγώς γλωσσικές ικανότητες
(συζητούν αντί να πληκτρολογούν μηνύματα ο ένας στον άλλο).
Σημαντική εξέλιξη στον τομέα της πληροφορικής και, κατ’ επέκταση, και στα
προγράμματα διδασκαλίας της γλώσσας, αποτελεί η προσθήκη και συνεχής βελτίωση
της τεχνητής νοημοσύνης. Το γεγονός αυτό έδωσε τη δυνατότητα αναβάθμισης της
επικοινωνίας μεταξύ χρήστη και υπολογιστή και εμπλούτισε τα προγράμματα με
δυνατότητες που ξεφεύγουν από το στενό πλαίσιο δράσης – αντίδρασης στις
διάφορες εφαρμογές. Ένα πρόγραμμα είναι σε θέση να αξιολογήσει, χωρία κάποια
ανθρώπινη παρέμβαση, τις εισαγόμενες πληροφορίες και δεδομένα και να
ενημερώσει το χρήστη για την πρόοδό του, ή να του προτείνει εναλλακτικές
μεθόδους δράσης, ώστε να οδηγηθεί σε περεταίρω βελτίωση.
Μια από τις πιο σημαντικές εφαρμογές της τεχνητής νοημοσύνης στην
τεχνολογία των υπολογιστών είναι η δυνατότητα επικοινωνίας μεταξύ χρήστη και
προγράμματος μέσω φυσικής γλώσσας. Με τον τρόπο αυτό αποφεύγεται η
προαπαίτηση εξειδικευμένων γνώσεων προγραμματισμού ή μεθοδολογιών
προκειμένου να επιτευχθεί η αλληλεπίδραση. Ως μέσο επικοινωνίας αναδεικνύεται η
φυσική γλώσσα, την οποία ούτως ή άλλως οι άνθρωποι χρησιμοποιούν σε διάφορες
επικοινωνιακές καταστάσεις που εμπλέκονται. Σε ένα πρόγραμμα διδασκαλίας μιας
γλώσσας αυτή η δυνατότητα καθίσταται ανεκτίμητη, καθώς ο χρήστης – μαθητής
99
εμπλέκεται σε δραστηριότητες, όπου χρειάζεται να επικοινωνήσει μέσω του ίδιου του
αντικειμένου της μελέτης του, οδηγώντας σε βελτίωση των ικανοτήτων του αλλά και
σε υψηλότερες επιδόσεις.
100
φιλοδοξία του εγχειρήματος είναι να δημιουργηθεί η βάση για περαιτέρω εφαρμογές
CALL, με περισσότερες δυνατότητες και φιλικότερο περιβάλλον χρήστη. Πάνω σε
αυτή την παραδοχή βασίστηκαν αρκετές σχεδιαστικές επιλογές, οι οποίες έγιναν υπό
έναν ορίζοντα μελλοντικών προσθηκών. Με βάση αυτή την προοπτική, το
αποτέλεσμα της λειτουργίας του αλγορίθμου δεν θα έπρεπε να είναι απλά μια δήλωση
περί της ορθότητας της πρότασης, ή κάποιων μηνυμάτων που αναφέρονται στο είδος
των λαθών που έχουν γίνει από το χρήστη. Έτσι, στην περίπτωση κάποιας ορθής
πρότασης δίνεται ως τελικό προϊόν λειτουργίας του αλγορίθμου η συντακτική της
αναπαράσταση. Αυτό μπορεί να χρησιμοποιηθεί σε εφαρμογές επικοινωνίας χρήστη –
υπολογιστή μέσω φυσικής γλώσσας, ή ακόμα και για κάποια σημασιολογική
ανάλυση της εισαχθείσας πρότασης. Γι’ αυτό το λόγο, άλλωστε, και η δομή των
εγγραφών του λεξικού είναι δοσμένη με τέτοιο τρόπο ώστε να επιτρέπει την
εισαγωγή περισσοτέρων πληροφοριών για τους λεκτικούς τύπους που έχουν εισαχθεί,
ούτως ώστε να επιτρέπεται η επέκταση της λειτουργίας του αλγορίθμου και σε άλλα
επίπεδα γλωσσολογικής ανάλυσης, είτε ανώτερα (σημασιολογική, πραγματολογική),
είτε κατώτερα (φωνητική, φωνολογική).
101
Αυθεντικές προτάσεις που να περιέχουν ασυμφωνία υποκειμένου – ρήματος
σε πρόσωπο ή αριθμό δεν περιλαμβάνονταν μέσα στην τράπεζα προτάσεων
που δημιουργήθηκε. Η αξιολόγηση της επίδοσης του προγράμματος σε
τέτοιες περιπτώσεις στηρίχθηκε μόνο στην αξιολογική δραστηριότητα του
ερευνητή, με στοχευμένες προτάσεις που εισήχθησαν στο σύστημα και οι
οποίες αναλύθηκαν ακριβώς και εντοπίστηκαν τα λάθη. Μοναδική περίπτωση
δυσλειτουργίας του αλγορίθμου είναι στην περίπτωση παρουσίας υποκειμένου
και αντικειμένου σε ουδέτερο γένος. Σε αυτή την περίπτωση, λόγω του ότι η
πτώση στην οποία βρίσκονται οι ονοματικές φράσεις δε μπορεί να διακριθεί
μορφολογικά, ο αλγόριθμος αδυνατεί να αποδώσει σωστά το συντακτικό ρόλο
του υποκειμένου ή του αντικειμένου, με αποτέλεσμα να μη μπορεί να
αναγνωρίσει ενδεχόμενη ασυμφωνία μεταξύ υποκειμένου και ρήματος.
Τα καταληκτικά λάθη των ρημάτων αναγνωρίζονται επαρκώς, με την ανάλογη
προβολή μηνύματος στον χρήστη, χάρη στην ύπαρξη του μορφολογικού
αναλυτή, ο οποίος είναι σε θέση να διαχωρίζει το θέμα από την κατάληξη του
ρήματος. Δυστυχώς το ίδιο δε συμβαίνει με καταληκτικά λάθη στα
ουσιαστικά, καθώς δεν υπάρχει αντίστοιχος μορφολογικός αναλυτής που να
τα επεξεργάζεται.
Τόσο στο κεφάλαιο της αξιολόγησης του λογισμικού, όσο και στην
προηγούμενη ενότητα, αναφέρθηκαν οι αδυναμίες του συγκεκριμένου προγράμματος
στο χειρισμό κάποιων προβληματικών περιπτώσεων προτάσεων της νέας ελληνικής.
Από τη στιγμή που διαπιστώθηκαν οι αδυναμίες αυτές, είναι απαραίτητο να
προταθούν συγκεκριμένοι τρόποι αλλά και μέθοδοι, προκειμένου να προκύψει μια
βελτιωμένη εκδοχή του συγκεκριμένου προγράμματος. Η συγκεκριμένη ενότητα θα
ασχοληθεί με την αναφορά συγκεκριμένων προτάσεων προς βελτίωση του τελικού
προϊόντος, αλλά και επέκτασης των δυνατοτήτων του, η οποία δεν επετεύχθη λόγω
του περιορισμένου εύρους του.
Ένα από τα πρώτα σημεία του κώδικα που επιδέχεται περαιτέρω επέκτασης
είναι ο μορφολογικός αναλυτής. Συγκεκριμένα, περιλαμβάνει καταλήξεις ρημάτων σε
Ενεστώτα και Αόριστο. Σε μια μελλοντική επέκταση θα μπορούσε να εμπλουτιστεί
102
με καταλήξεις άλλων χρόνων και εγκλίσεων, χωρίς να αλλάξει ο βασικός μηχανισμός
του αλγορίθμου. Η μοναδική προσθήκη που θα χρειαστεί έγκειται στη συμπλήρωση
της γραμματικής, με την προσθήκη κανόνων στις ρηματικές φράσεις, οι οποίοι θα
περιλαμβάνουν τη χρησιμοποίηση χαρακτηριστικών μορίων, όπως το «θα» για τους
μέλλοντες ή το «να» για την υποτακτική. Επιπλέον, ο μορφολογικός αναλυτής μπορεί
να περιλαμβάνει και καταλήξεις ουσιαστικών και επιθέτων. Αυτό που πρέπει να
ληφθεί υπόψη είναι η προσθήκη ενός μηχανισμού που θα περιλαμβάνει τους κανόνες
τονισμού και θα προβλέπει τη μετακίνησή τους στη γενική και στην αιτιατική, καθώς
και το χειρισμό των ανισοσύλλαβων ουσιαστικών, με αλλαγές στο θέμα της
συγκεκριμένης λέξης.
103
προκειμένου να προσδιορίζεται κάθε φορά το είδος της σύνδεσης των προτάσεων και
έτσι να δίνεται η δυνατότητα στο σύστημα να αποφαίνεται για την γραμματικότητα
των προτάσεων αυτών.
104
κάθε μαθητή στο σύστημα θα δημιουργεί μια καταχώρηση, η οποία, εκτός από τα
προσωπικά του στοιχεία, θα περιλαμβάνει τις επιδόσεις του σε δραστηριότητες που
έχει αναλάβει, τα είδη λαθών στα οποία είναι περισσότερο επιρρεπής κ.α. Αυτό θα
δίνει τη δυνατότητα στον εκπαιδευτικό να παρακολουθεί την πρόοδό τους και να
αναγνωρίζει τυχόν αδυναμίες τους, προκειμένου να προσαρμόσει τη διδασκαλία του
στις ανάγκες τους. Επιπλέον, μέσα από τις συγκεκριμένες πληροφορίες θα μπορεί το
ίδιο το πρόγραμμα να προτείνει στο μαθητή δραστηριότητες που σχετίζονται με τα
πιο συνήθη λάθη του, προκειμένου να βελτιωθεί.
105
Βιβλιογραφία
Arneil, S. & Holmes, M. (2003). Servers, clients, testing and teaching. Στο U. Felix
(Επιμ.), Language learning online: Towards best practice (σελ. 59 – 80). Lisse, The
Netherlands: Swets & Zeitlinger.
Blin, F. (2004). CALL and the development of learner autonomy: Towards an activity
– theoretical perspective. ReCALL, 16 (2), 377 – 395.
Fotos, S. & Browne C. M. (2004). The Development of CALL and current options.
Στο S. Fotos & C. M. Browne (Επιμ.), New Perspectives on CALL for second
language classrooms (σελ. 3 - 14). Mahwah, NJ: Lawrence Erlbaum Associates.
Fox, J. (1989). Can computers aid vocabulary learning? Στο Κ. Cameron (Επιμ.),
Computer Assisted Language Learning (σελ. 1 – 13). Oxford, UK: Intellect Limited.
Kazeroni , A. (2006). Have we left the Teacher out of the Equation? Strengthening the
link between Teacher Cognition and Task Design in CALL. Στο R. P. Donaldson &
106
M. A. Haggstrom (Επιμ.), Changing Language Education Through CALL (σελ. 19 -
30). New York: Routledge.
Levy, M. (2006). Effective use of CALL Technologies: Finding the right balance. Στο
R. P. Donaldson & M. A. Haggstrom (Επιμ.), Changing Language Education
Through CALL (σελ. 1 - 18). New York: Routledge.
Roschelle, J. (2003). Keynote paper: Unlocking the learning value of wireless mobile
devices. Journal of Computer Assisted Learning, 19, 260 – 272.
107
Webster, L. & Murphy, D. (2008). Enhancing Learning Through Technology:
Challenges and Responses. Στο R. Kwan, R. Fox, F.T. Chan & P. Tsang (Επιμ.),
Enhancing Learning through technology: Research on Emerging Technologies and
Pedagogies (σελ. 1 - 16). Singapore: World Scientific Publishing.
Wertch J. V. (1985). Vygotsky and the Social Formation of Mind. Cambridge, MA:
Harvard University Press.
108
Παράρτημα
109
Τράπεζα Προτάσεων
Για Τη Διαδικασία Αξιολόγησης
Τα παιδιά μιλάνε.
Κόβω το χαρτί.
110
Τα παιδιά κάνουν κατασκευή.
Το κορίτσι μιλάει.
Εμείς μιλάμε.
Τα παιδιά ζωγραφίζουν.
Οι μαθητές μιλάνε.
111
Η κυρία φωνάζη στα παιδιά.
112
Εμείς γράφουμε το τεστ.
Εμείς ζωγραφίζουμε.
Κλείνετε το βιβλίο.
Δίνετε το τεστ.
Ξύνουμε το μολύβι.
Κλείνουμε το παράθυρο.
Λύνις το τεστ.
113
Οι κυρίες κάνουν κατασκευές.
Το κορίτσι μιλάει.
Ο δάσκαλος διαβάζει.
Η δασκάλα γράφει.
Το αγόρι μιλάει.
Ο δάσκαλος διαβάζει.
114
Το παιδί κάνει μια γραμμή.
Βοηθάο το αγόρι.
Γράφο έκθεση.
Γράφει το κορίτσι.
Ο μαθητής φωνάζει.
Διορθόνουμε το διαγόνισμα.
Η ξύστρα ξύνει.
Ο κύριος διαβάζει.
115
ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ
Να σχηματίσετε δέκα (10) προτάσεις που να περιγράφουν τι κάνει ένας δάσκαλος –
δασκάλα ή ένας μαθητής – μαθήτρια μέσα στην τάξη. Οι προτάσεις πρέπει να είναι
απλές. Τα ρήματα που θα χρησιμοποιήσετε μπορούν να είναι σε όλα τα πρόσωπα,
αλλά σε χρόνο ενεστώτα. Τα ουσιαστικά μπορεί να είναι και στον ενικό και στον
πληθυντικό αριθμό. Μπορείτε να χρησιμοποιήσετε όλα τα άρθρα, όπως «ο, τον, τους,
στο, ένας» κ.α. Για να φτιάξετε τις προτάσεις χρησιμοποιείστε τις παρακάτω λέξεις:
ΡΗΜΑΤΑ
ΟΥΣΙΑΣΤΙΚΑ
1._________________________________________________________
2. _________________________________________________________
3._________________________________________________________
4._________________________________________________________
5._________________________________________________________
6._________________________________________________________
7._________________________________________________________
8._________________________________________________________
9._________________________________________________________
10.________________________________________________________
116
ΑΛΓΟΡΙΘΜΟΣ
1. Main
implement main
open core, string
constants
className = "main".
classVersion = "VIC1001".
clauses
classInfo(className, classVersion).
clauses
run():-
TaskWindow = taskWindow::new(),
TaskWindow:show().
end implement main
goal
mainExe::run(main::run).
117
2. Grammar – Parser
implement grammar
open core, list, string
constants
className = "parser/grammar/grammar".
classVersion = "VIC1001".
domains
pos = art(feats*); n(feats*); v(feats*); np(feats*); vp(feats*); npsub(feats*); npobj(feats*); part(feats*
); pp(feats*); pr(feats*).
feats = num(number); gen(gender); per(person); case(case); ten(tense); inf(inflect).
number = sing; pl.
gender = masc; fem; neu.
tense = pres; past; pastc.
person = first; sec; third.
case = nom; gen; acc.
inflect = one; two.
class facts
dictionary : (string, pos).
class predicates
118
findsub : (pos, pos) determ (i, o).
findobj : (pos, pos) determ (i, o).
checksub : (pos*) nondeterm (i).
findsubfeats : (pos*, feats*) nondeterm (i, o).
findvpfeats : (pos*, feats*) nondeterm (i, o).
lex : (string, pos) procedure (i, o).
analyse : (string Word, string Stem, pos Feats) nondeterm (i,o,o).
morphcheck : (feats*, feats*) nondeterm (i, i).
clauses
%Άρθρα
%Οριστικά Άρθρα
dictionary("ο", art([num(sing), gen(masc), case(nom)])).
dictionary("του", art([num(sing), case(gen)])).
dictionary("τον", art([num(sing), gen(masc), case(acc)])).
dictionary("οι", art([num(pl), case(nom)])).
dictionary("των", art([num(pl), case(gen)])).
dictionary("τους", art([num(pl), gen(masc), case(acc)])).
dictionary("η", art([num(sing), gen(fem), case(nom)])).
dictionary("της", art([num(sing), gen(fem), case(gen)])).
dictionary("την", art([num(sing), gen(fem), case(acc)])).
dictionary("τις", art([num(pl), gen(fem), case(acc)])).
dictionary("το", art([num(sing), gen(neu)])).
dictionary("τα", art([num(pl), gen(neu)])).
%Αόριστα Άρθρα
dictionary("ένας", art([num(sing), gen(masc), case(nom)])).
dictionary("έναν", art([num(sing), gen(masc), case(acc)])).
dictionary("μια", art([num(sing), gen(fem)])).
dictionary("ένα", art([num(sing), gen(neu)])).
119
%Εμπρόθετα Άρθρα
dictionary("στον", part([num(sing), gen(masc), case(acc)])).
dictionary("στην", part([num(sing), gen(fem), case(acc)])).
dictionary("στο", part([num(sing), gen(neu), case(acc)])).
dictionary("στoυς", part([num(pl), gen(masc), case(acc)])).
dictionary("στις", part([num(pl), gen(fem), case(acc)])).
dictionary("στα", part([num(pl), gen(neu), case(acc)])).
%Αντωνυμίες
dictionary("εγώ", pr([num(sing), per(first), case(nom)])).
dictionary("εσύ", pr([num(sing), per(sec), case(nom)])).
dictionary("αυτός", pr([num(sing), per(third), gen(masc), case(nom)])).
dictionary("αυτή", pr([num(sing), per(first), gen(fem), case(nom)])).
dictionary("αυτό", pr([num(sing), per(first), gen(neu), case(nom)])).
dictionary("εμείς", pr([num(pl), per(first), case(nom)])).
dictionary("εσείς", pr([num(pl), per(sec), case(nom)])).
dictionary("αυτοί", pr([num(sing), per(third), gen(masc), case(nom)])).
dictionary("αυτές", pr([num(sing), per(third), gen(fem), case(nom)])).
dictionary("αυτά", pr([num(sing), per(third), gen(neu), case(nom)])).
%Ουσιαστικά
dictionary("παιδί", n([num(sing), gen(neu)])).
dictionary("παιδιά", n([num(pl), gen(neu)])).
dictionary("μαθητής", n([num(sing), gen(masc), case(nom)])).
dictionary("μαθητή", n([num(sing), gen(masc), case(acc)])).
dictionary("πρόταση", n([num(sing), gen(fem)])).
dictionary("προτάσεις", n([num(pl), gen(fem)])).
dictionary("μαθητές", n([num(pl), gen(masc), case(nom)])).
dictionary("μαθήτρια", n([num(sing), gen(fem)])).
dictionary("μαθήτριες", n([num(pl), gen(fem)])).
dictionary("δάσκαλος", n([num(sing), gen(masc), case(nom)])).
dictionary("δασκάλα", n([num(sing), gen(fem)])).
dictionary("δάσκαλο", n([num(sing), gen(masc), case(acc)])).
dictionary("δάσκαλοι", n([num(pl), gen(masc), case(nom)])).
dictionary("δασκάλες", n([num(pl), gen(fem)])).
dictionary("δασκάλους", n([num(pl), gen(masc), case(acc)])).
dictionary("τσάντα", n([num(sing), gen(fem)])).
dictionary("τσάντες", n([num(sing), gen(fem)])).
dictionary("μολύβι", n([num(sing), gen(neu)])).
120
dictionary("μολύβια", n([num(pl), gen(neu)])).
dictionary("στιλό", n([gen(neu)])).
dictionary("βιβλίο", n([num(sing), gen(neu)])).
dictionary("βιβλία", n([num(pl), gen(neu)])).
dictionary("γόμα", n([num(sing), gen(fem)])).
dictionary("γόμες", n([num(pl), gen(fem)])).
dictionary("κουδούνι", n([num(sing), gen(neu)])).
dictionary("κουδούνια", n([num(pl), gen(neu)])).
dictionary("θρανίο", n([num(sing), gen(neu)])).
dictionary("θρανία", n([num(pl), gen(neu)])).
dictionary("καρέκλα", n([num(sing), gen(fem)])).
dictionary("καρέκλες", n([num(pl), gen(fem)])).
dictionary("παράθυρο", n([num(sing), gen(neu)])).
dictionary("παράθυρα", n([num(pl), gen(neu)])).
dictionary("πόρτα", n([num(sing), gen(fem)])).
dictionary("πόρτες", n([num(pl), gen(fem)])).
dictionary("σφουγγάρι", n([num(sing), gen(neu)])).
dictionary("σφουγγάρια", n([num(pl), gen(neu)])).
dictionary("πίνακας", n([num(sing), gen(masc), case(nom)])).
dictionary("πίνακα", n([num(sing), gen(masc), case(acc)])).
dictionary("πίνακες", n([num(pl), gen(masc)])).
dictionary("βάζο", n([num(sing), gen(neu)])).
dictionary("βάζα", n([num(pl), gen(neu)])).
dictionary("τετράδιο", n([num(sing), gen(neu)])).
dictionary("τετράδια", n([num(pl), gen(neu)])).
dictionary("χαρτί", n([num(sing), gen(neu)])).
dictionary("χαρτιά", n([num(sing), gen(neu)])).
dictionary("αγόρι", n([num(sing), gen(neu)])).
dictionary("αγόρια", n([num(pl), gen(neu)])).
dictionary("κορίτσι", n([num(sing), gen(neu)])).
dictionary("κορίτσια", n([num(pl), gen(neu)])).
dictionary("χέρι", n([num(sing), gen(neu)])).
dictionary("χέρια", n([num(pl), gen(neu)])).
dictionary("μάθημα", n([num(sing), gen(neu)])).
dictionary("μαθήματα", n([num(pl), gen(neu)])).
dictionary("διαγώνισμα", n([num(sing), gen(neu)])).
dictionary("διαγωνίσματα", n([num(pl), gen(neu)])).
dictionary("τεστ", n([gen(neu)])).
dictionary("γράμμα", n([num(sing), gen(neu)])).
dictionary("γράμματα", n([num(pl), gen(neu)])).
121
dictionary("χάρακας", n([num(sing), gen(masc), case(nom)])).
dictionary("χάρακα", n([num(sing), gen(masc), case(acc)])).
dictionary("χάρακες", n([num(pl), gen(masc)])).
dictionary("κύριος", n([num(sing), gen(masc), case(nom)])).
dictionary("κύριο", n([num(sing), gen(masc), case(acc)])).
dictionary("κύριοι", n([num(pl), gen(masc), case(nom)])).
dictionary("κυρίους", n([num(pl), gen(masc), case(acc)])).
dictionary("αριθμός", n([num(sing), gen(masc), case(nom)])).
dictionary("αριθμό", n([num(sing), gen(masc), case(acc)])).
dictionary("αριθμοί", n([num(pl), gen(masc), case(nom)])).
dictionary("αριθμούς", n([num(pl), gen(masc), case(acc)])).
dictionary("ξύστρα", n([num(sing), gen(fem)])).
dictionary("ξύστρες", n([num(pl), gen(fem)])).
dictionary("άσκηση", n([num(sing), gen(fem)])).
dictionary("ασκήσεις", n([num(pl), gen(fem)])).
dictionary("κασετίνα", n([num(sing), gen(fem)])).
dictionary("κασετίνες", n([num(pl), gen(fem)])).
dictionary("προπαίδεια", n([num(sing), gen(fem)])).
dictionary("προπαίδειες", n([num(pl), gen(fem)])).
dictionary("έκθεση", n([num(sing), gen(fem)])).
dictionary("εκθέσεις", n([num(pl), gen(fem)])).
dictionary("κυρία", n([num(sing), gen(fem)])).
dictionary("κυρίες", n([num(pl), gen(fem)])).
dictionary("αίθουσα", n([num(sing), gen(fem)])).
dictionary("αίθουσες", n([num(pl), gen(fem)])).
dictionary("αυλή", n([num(sing), gen(fem)])).
dictionary("αυλές", n([num(pl), gen(fem)])).
dictionary("ορθογραφία", n([num(sing), gen(fem)])).
dictionary("ορθογραφίες", n([num(pl), gen(fem)])).
dictionary("κατασκευή", n([num(sing), gen(fem)])).
dictionary("κατασκευές", n([num(pl), gen(fem)])).
dictionary("γραμμή", n([num(sing), gen(fem)])).
dictionary("γραμμές", n([num(pl), gen(fem)])).
dictionary("αντιγραφή", n([num(sing), gen(fem)])).
dictionary("αντιγραφές", n([num(pl), gen(fem)])).
dictionary("προαύλιο", n([num(sing), gen(neu)])).
dictionary("προαύλια", n([num(pl), gen(neu)])).
%Ρήματα
dictionary("γράφ", v([ten(pres)])).
122
dictionary("έγραφ", v([ten(pastc), inf(one)])).
dictionary("γράψ", v([ten(past), inf(two)])).
dictionary("έγραψ", v([ten(past), inf(one)])).
dictionary("διαβάζ", v([ten(pres)])).
dictionary("διάβαζ", v([ten(pastc), inf(one)])).
dictionary("διαβάσ", v([ten(past), inf(two)])).
dictionary("διάβασ", v([ten(past), inf(one)])).
dictionary("ζωγραφίζ", v([ten(pres)])).
dictionary("ζωγράφιζ", v([ten(pastc), inf(one)])).
dictionary("ζωγραφίσ", v([ten(past), inf(two)])).
dictionary("ζωγράφισ", v([ten(past), inf(one)])).
dictionary("ανοίγ", v([ten(pres)])).
dictionary("άνοιγ", v([ten(pastc), inf(one)])).
dictionary("ανοίξ", v([ten(past), inf(two)])).
dictionary("άνοιξ", v([ten(past), inf(one)])).
dictionary("κλείν", v([ten(pres)])).
dictionary("έκλειν", v([ten(pastc), inf(one)])).
dictionary("κλείσ", v([ten(past), inf(two)])).
dictionary("έκλεισ", v([ten(past), inf(one)])).
dictionary("σβήν", v([ten(pres)])).
dictionary("έσβην", v([ten(pastc), inf(one)])).
dictionary("σβήσ", v([ten(past), inf(two)])).
dictionary("έσβησ", v([ten(past), inf(one)])).
dictionary("ξύν", v([ten(pres)])).
dictionary("έξυν", v([ten(pastc), inf(one)])).
dictionary("ξύσ", v([ten(past), inf(two)])).
dictionary("έξυσ", v([ten(past), inf(one)])).
dictionary("μιλ", v([ten(pres)])).
dictionary("μίλ", v([ten(pastc), inf(one)])).
dictionary("μιλήσ", v([ten(past), inf(two)])).
dictionary("μίλησ", v([ten(past), inf(one)])).
dictionary("δίν", v([ten(pres)])).
dictionary("έδιν", v([ten(pastc), inf(one)])).
dictionary("δώσ", v([ten(past), inf(two)])).
dictionary("έδωσ", v([ten(past), inf(one)])).
dictionary("παίρν", v([ten(pres)])).
dictionary("έπαιρν", v([ten(pastc), inf(one)])).
dictionary("πήρ", v([ten(past)])).
dictionary("παίζ", v([ten(pres)])).
dictionary("έπαιζ", v([ten(pastc), inf(one)])).
123
dictionary("παίξ", v([ten(past), inf(two)])).
dictionary("έπαιξ", v([ten(past), inf(one)])).
dictionary("μαθαίν", v([ten(pres)])).
dictionary("μάθαιν", v([ten(pastc), inf(one)])).
dictionary("μάθ", v([ten(past), inf(two)])).
dictionary("έμαθ", v([ten(past), inf(one)])).
dictionary("σβήν", v([ten(pres)])).
dictionary("έσβην", v([ten(pastc), inf(one)])).
dictionary("σβήσ", v([ten(past), inf(two)])).
dictionary("έσβησ", v([ten(past), inf(one)])).
dictionary("κόβ", v([ten(pres)])).
dictionary("έκοβ", v([ten(pastc), inf(one)])).
dictionary("κόψ", v([ten(past), inf(two)])).
dictionary("έκοψ", v([ten(past), inf(one)])).
dictionary("ρωτ", v([ten(pres)])).
dictionary("ρώτ", v([ten(pastc), inf(one)])).
dictionary("ρωτήσ", v([ten(past), inf(two)])).
dictionary("ρώτησ", v([ten(past), inf(one)])).
dictionary("σηκών", v([ten(pres)])).
dictionary("σήκων", v([ten(pastc), inf(one)])).
dictionary("σηκώσ", v([ten(past), inf(two)])).
dictionary("σήκωσ", v([ten(past), inf(one)])).
dictionary("λέ", v([ten(pres)])).
dictionary("έλεγ", v([ten(pastc), inf(one)])).
dictionary("είπ", v([ten(past)])).
dictionary("διορθών", v([ten(pres)])).
dictionary("διόρθων", v([ten(pastc), inf(one)])).
dictionary("διορθώσ", v([ten(past), inf(two)])).
dictionary("διόρθωσ", v([ten(past), inf(one)])).
dictionary("λύν", v([ten(pres)])).
dictionary("έλυν", v([ten(pastc), inf(one)])).
dictionary("λύσ", v([ten(past), inf(two)])).
dictionary("έλυσ", v([ten(past), inf(one)])).
dictionary("βοηθ", v([ten(pres)])).
dictionary("βοήθ", v([ten(pastc), inf(one)])).
dictionary("βοηθήσ", v([ten(past), inf(two)])).
dictionary("βοήθησ", v([ten(past), inf(one)])).
dictionary("φωνάζ", v([ten(pres)])).
dictionary("φώναζ", v([ten(pastc), inf(one)])).
dictionary("φωνάξ", v([ten(past), inf(two)])).
124
dictionary("φώναξ", v([ten(past), inf(one)])).
dictionary("προσέχ", v([ten(pres)])).
dictionary("πρόσεχ", v([ten(pastc), inf(one)])).
dictionary("προσέξ", v([ten(past), inf(two)])).
dictionary("πρόσεξ", v([ten(past), inf(one)])).
dictionary("αφήν", v([ten(pres)])).
dictionary("άφην", v([ten(pastc), inf(one)])).
dictionary("αφήσ", v([ten(past), inf(two)])).
dictionary("άφησ", v([ten(past), inf(one)])).
dictionary("φτιάχν", v([ten(pres)])).
dictionary("έφτιαχν", v([ten(pastc), inf(one)])).
dictionary("φτιάξ", v([ten(past), inf(two)])).
dictionary("έφτιαξ", v([ten(past), inf(one)])).
dictionary("κάν", v([ten(pres)])).
%--------------------------------------------------------------------------------------------------------------------------
---------------------------------
clauses
classInfo(className, classVersion).
clauses
%Μορφολογικός Αναλυτής Ρημάτων
%Καταλήξεις Ενεστώτα
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ω", Stem),!,
Feats =v( [per(first), num(sing)]),
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "εις", Stem),!,
Feats = v([per(sec), num(sing)]),
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ει", Stem),!,
Feats = v([per(third), num(sing)]),
125
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ουμε", Stem),!,
Feats = v([per(first), num(pl)]),
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ετε", Stem),!,
Feats = v([per(sec), num(pl)]),
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ουν", Stem),!,
Feats = v([per(third), num(pl)]),
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ουν", Stem),!,
Feats = v([per(third), num(pl)]),
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ι", Stem),
dictionary(Stem, v(_VFeats1)),
vpiCommonDialogs::error(Word, "Η κατάληξη του ρήματος είναι λάθος"), errorexit(1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "η", Stem),
dictionary(Stem, v(_VFeats1)),
vpiCommonDialogs::error(Word, "Η κατάληξη του ρήματος είναι λάθος"), errorexit(1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ο", Stem),
dictionary(Stem, v(_VFeats1)),
vpiCommonDialogs::error(Word, "Η κατάληξη του ρήματος είναι λάθος"), errorexit(1).
126
%Λέξεις εκτός Μορφολογικού Αναλυτή
clauses
checksub(Phrases) :-
findsubfeats(Phrases, A),!,
findvpfeats(Phrases, B),!,
unify(A, B, C).
checksub(Phrases).
127
findsub(np(A), npsub(A)) :- isMember(case(nom), A).
findobj(np(A), npobj(A)) :- isMember(case(acc), A).
128
reduce(Stack, Reducedstack),
stdio::write("Reduce: ", Reducedstack), stdio::nl,
shift_reduce(Sentence, Reducedstack, Category), !.
shift_reduce(Sentence, Stack, Category) :-
shift(Sentence, Stack, Newsentence, Newstack),
stdio::write("Shift: ", Newstack), stdio::nl,
shift_reduce(Newsentence, Newstack, Category), !.
reduce(Stack, Newstack) :-
combine(Stackbottom, Expansion, Stack),
match_rule(Expansion, Head),
Newstack = append(Stackbottom, [Head]).
%Κανόνες Γραμματικής
match_rule([v(A)], vp(B)) :- A = B.
match_rule([art(A), n(B)], np(C)) :- unify(A, B, C).
match_rule([pr(A)], npsub(B)) :- A = B.
129
130
131
132