Professional Documents
Culture Documents
ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ
ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ
∆ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ
ΠΟΛΙΤΟΠΟΥΛΟΥ ΒΑΣΙΛΙΚΗ
Ι. Γαροφαλάκης
Χ.Μακρής
Τέλος, ένα πολύ μεγάλο ευχαριστώ στους γονείς μου Παύλο και Παναγιώτα, οι οποίοι
με στηρίζουν σε οποιαδήποτε προσπάθειά μου και ιδιαίτερα στη μητέρα μου η οποία
ανέχτηκε όλες τις παραξενιές μου λόγω του υπερβολικού άγχους και της κούρασης.
ii
Στην οικογένειά μου
iii
Περίληψη
Τα τελευταία χρόνια αυξάνεται η χρήση των ηλεκτρονικών συστημάτων μάθησης.
Ωστόσο φαίνεται ότι τα συστήματα αυτά δεν έχουν ακόμη αποκτήσει τη θέση που
οραματίστηκαν οι δημιουργοί τους στο χώρο της μάθησης. Αυτό οφείλεται σε διάφορες
αδυναμίες που έχουν ακόμη. Κάποιες από αυτές σχετίζονται με την παραγωγή και
διαχείριση των ασκήσεων. Όσον αφορά στην πλευρά των μαθητών, τα συστήματα αυτά
δεν προσφέρουν ποικιλία ασκήσεων αφού στις περισσότερες περιπτώσεις οι ασκήσεις
είναι συγκεκριμένες και στατικές. Επιπλέον, οι μαθητές θέλουν οι ασκήσεις που τους
δίνονται από το σύστημα να ικανοποιούν τις προσωπικές τους ανάγκες και προτιμήσεις.
Από την πλευρά των καθηγητών, τα συστήματα αυτά δεν προσφέρουν έναν εύκολο
τρόπο για να προετοιμάσουν το μάθημά τους, μέρος του οποίου είναι και η δημιουργία
ασκήσεων αφού στα περισσότερα συστήματα γίνεται χειρωνακτικά.
Στο Τμήμα Μηχ/κών Η/Υ & Πληροφορικής του Πανεπιστημίου Πατρών έχει
αναπτυχθεί από την Ομάδα Τεχνητής Νοημοσύνης (ΤΝ) ένα ευφυές σύστημα
διδασκαλίας θεμάτων ΤΝ. Το σύστημα αυτό σκοπό έχει την βοήθεια των φοιτητών σε
θέματα του μαθήματος ΤΝ και ιδιαίτερα στην αναπαράσταση γνώσης. Ένα από τα
θέματα αυτά είναι η κατηγορηματική λογική (ΚΛ) πρώτης τάξεως σαν γλώσσα
αναπαράστασης γνώσης. Μια κατηγορία ασκήσεων που συνδέεται με το θέμα αυτό
είναι η μετατροπή μιας πρότασης ΚΛ σε προτασιακή μορφή, που είναι μια μορφή
κατάλληλη για αυτόματο συλλογισμό. Ένα μειονέκτημα του συστήματος είναι ότι
διαθέτει ένα σύνολο ασκήσεων που δύσκολα ανανεώνεται. Στα πλαίσια αυτής της
διπλωματικής εργασίας προτείνουμε και υλοποιούμε μια μέθοδο για αυτόματη
παραγωγή προτάσεων ΚΛ για χρήση ως ασκήσεων για το παραπάνω θέμα. Οι
παραγόμενες προτάσεις-ασκήσεις είναι διαφόρων επιπέδων δυσκολίας. Το σύστημα
εκτός της παραγωγής σημασιολογικά σωστών προτάσεων εκτιμά αυτόματα και το
επίπεδο δυσκολίας των προτάσεων-ασκήσεων.
iv
Summary
In the recent years, the use of e-learning systems is steadily increasing. However, such
systems do not seem to completely fulfill the vision of their creators. This is due to the
fact that they still have a number of deficiencies. Some of them are related to the
generation and management of exercises. From the student’s point of view, most of
those systems do not offer a variety of exercises, because in most cases the exercises are
pre-specified and static. Additionally, students require exercises, which match their
needs and preferences. From the teacher’s point of view, the main drawback of current
systems is that they still tend to require much effort in preparing their lesson and
especially in creating exercises, because in most cases it is done manually.
At the Department of Computer Engineering & Informatics of the University of
Patras, an intelligent tutoring system for teaching artificial intelligence (AI) aspects has
been created by the AI Group. The system aims at helping students with aspects of the
AI course, especially of knowledge representation. One of those aspects is exercising in
first-order predicate logic as a knowledge representation language. A type of exercises
related to it concerns the conversion of a logical formula into clausal form, a form
suitable for automated reasoning. A deficiency of that system is however that it offers a
predefined set of such exercises, which are difficult to update.
In this master thesis, we propose and implement an approach for automatic
generation of logical formulas to use for exercising in converting a logical formula into
clausal form. The produced formulas-exercises are of various difficulty levels. The
system apart from producing meaningful formulas also automatically estimates their
difficulty levels.
v
Περιεχόμενα
1 Εκπαιδευτικά Συστήματα.................................................................................... 11
1.1 Εκπαιδευτικά Συστήματα Εξατομικευμένης Μάθησης ................................. 12
1.2 Εκπαιδευτικά Συστήματα Εξατομικευμένης Μάθησης Βασισμένα στον Ιστό
12
1.3 Ευφυείς Τεχνικές σε Εκπαιδευτικά Συστήματα ............................................. 16
1.3.1 Χαρακτηριστικά Έμπειρων Συστημάτων............................................... 16
1.3.2 Πλεονεκτήματα και Μειονεκτήματα Έμπειρων Συστημάτων ............... 17
1.3.3 Αρχιτεκτονική Έμπειρων Συστημάτων.................................................. 18
1.4 Ασκήσεις και Εκπαιδευτικά Συστήματα ........................................................ 19
1.5 Σύστημα Διδασκαλίας Τεχνητής Νοημοσύνης .............................................. 20
1.5.1 Αρχιτεκτονική......................................................................................... 20
1.5.2 Θέματα και Ασκήσεις Κατηγορηματικής Λογικής ................................ 22
1.6 Αντικείμενο Διπλωματικής............................................................................. 23
2 Λογική και Γλώσσα Αναπαράστασης................................................................. 25
2.1 Σύντομη Ιστορική Ανασκόπηση..................................................................... 25
2.2 Ρόλος της Λογικής στην Επιστήμη Υπολογιστών ......................................... 26
2.3 Σύνταξη .......................................................................................................... 28
2.3.1 Προτασιακή Λογική (Propositional Logic) ............................................ 28
2.3.2 Κατηγορηματική Λογική (Predicate Logic)........................................... 29
2.4 Αναπαράσταση Προτάσεων Φυσικής Γλώσσας ............................................ 30
2.5 Προτασιακή Μορφή Κατηγορηματικής Λογικής Πρώτης Τάξεως................ 32
3 Τεχνικές Παραγωγής Ασκήσεων σε Εκπαιδευτικά Συστήματα ...................... 35
3.1 Παραγωγή Ασκήσεων Ηλεκτρικών Κυκλωμάτων ......................................... 35
3.2 Παραγωγή Ασκήσεων με Αντικείμενο τα Πολυμεσικά Συστήματα .............. 36
3.3 Παραγωγή Ασκήσεων με Αντικείμενο τη Θεωρία Υπολογισμού.................. 37
3.4 Παραγωγή Προτάσεων Φυσικής Γλώσσας .................................................... 39
4 Σύστημα Παραγωγής Ασκήσεων-Προτάσεων Κατηγορηματικής Λογικής ... 41
4.1 Αρχιτεκτονική Συστήματος............................................................................ 41
4.2 Σημασιολογικές Κατηγορίες .......................................................................... 42
4.3 Τύποι Προτάσεων........................................................................................... 43
4.4 Μοντελοποίηση Προτάσεων .......................................................................... 43
4.5 Παραγωγή Προτάσεων ................................................................................... 45
5 Προσδιορισμός Δυσκολίας Προτάσεων-Ασκήσεων .......................................... 47
5.1 Προσδιορισμός Παραγόντων ......................................................................... 47
5.2 Κανόνες Προσδιορισμού Δυσκολίας.............................................................. 47
5.3 Αξιολόγηση .................................................................................................... 49
6 Διεπιφάνεια – Οδηγός Χρήσης ............................................................................ 53
6.1 Δημιουργία Κατηγοριών Λέξεων................................................................... 53
6.1.1 Λέξεις - Κατηγορήματα.......................................................................... 53
6.1.2 Λέξεις - Σταθερές ................................................................................... 56
6.1.3 Λέξεις - Συναρτήσεις.............................................................................. 59
6.2 Δημιουργία Τύπων ......................................................................................... 62
6.3 Δημιουργία προτάσεων-ασκήσεων ................................................................ 67
7 Θέματα Υλοποίησης ............................................................................................. 69
8 Συμπεράσματα – Προοπτικές .............................................................................. 71
9 Βιβλιογραφία......................................................................................................... 73
6
Εικόνες
7
Σχήματα
8
Πρόλογος
Στην καθημερινή μας ζωή, η αναπαράσταση της γνώσης για τον κόσμο γίνεται με την
περιγραφή της σε φυσική γλώσσα. Η αναπαράσταση γνώσης αναφέρεται στο σύνολο
κάποιων συντακτικών και σημασιολογικών παραδοχών οι οποίες καθιστούν δυνατή την
περιγραφή ενός κόσμου και η φυσική γλώσσα αποτελεί την καλύτερη ίσως μέθοδο
αναπαράστασης της γνώσης για τον άνθρωπο. Ωστόσο, σε υπολογιστικά συστήματα η
φυσική γλώσσα είναι ακατάλληλη. Ειδικά για συστήματα τεχνητής νοημοσύνης είναι
απαραίτητο να χρησιμοποιηθεί ένας συμβολισμός που να παρέχει ακριβή
αναπαράσταση της γνώσης, κάτι που δεν μπορεί να παρέχει η φυσική γλώσσα λόγω της
πολυσημαντικότητας των προτάσεων. Μια από τις δημοφιλέστερες μεθόδους
αναπαράστασης γνώσης σε τέτοιου είδους συστήματα είναι η κατηγορηματική λογική
και πιο συγκεκριμένα η κατηγορηματική λογική πρώτης τάξεως.
Η λογική, ως γλώσσα αναπαράστασης γνώσης διδάσκεται στα πλαίσια του
μαθήματος “Τεχνητή Νοημοσύνη” σε όλα σχεδόν τα πανεπιστήμια του κόσμου. Πολλοί
είναι οι καθηγητές που καταφεύγουν στη χρήση ηλεκτρονικών συστημάτων μάθησης
για να δημιουργήσουν ασκήσεις για το μάθημά τους. Βέβαια, αυτά τα συστήματα δεν
ικανοποιούν πλήρως τις ανάγκες τους αφού η παραγωγή ασκήσεων στις περισσότερες
περιπτώσεις γίνεται χειρωνακτικά. Επομένως, κύρια απαίτηση των καθηγητών αποτελεί
η παροχή ενός εύκολου τρόπου δημιουργίας ασκήσεων που να προϋποθέτει όσο το
δυνατόν λιγότερη χειρωνακτική εργασία.
Στα πλαίσια αυτής της διπλωματικής εργασίας περιγράφουμε ένα σύστημα το οποίο
απευθύνεται σε καθηγητές οι οποίοι διδάσκουν το μάθημα της τεχνητής νοημοσύνης.
Το σύστημα αυτό χρησιμοποιεί τεχνικές ώστε να παράγει αυτόματα προτάσεις
κατηγορηματικής λογικής πρώτης τάξεως κλιμακούμενης δυσκολίας. Η εργασία
χωρίζεται σε τρία μέρη. Στο πρώτο μέρος, γίνεται θεωρητική αναφορά στην λογική και
ορισμένων μορφών αυτής, την προτασιακή και ιδίως την κατηγορηματική λογική,
προκειμένου ο αναγνώστης να κατανοήσει το είδος των ασκήσεων που δημιουργεί το
σύστημα. Επίσης, αναφέρονται θεωρητικές γνώσεις που θα πρέπει να γνωρίζει κάποιος
προκειμένου να είναι σε θέση να καταλάβει το πλαίσιο στο οποίο κινείται η παρούσα
εργασία. Στο δεύτερο μέρος, επιχειρείται μια ανασκόπηση των υπαρχόντων μεθόδων
δημιουργίας ασκήσεων σε εκπαιδευτικά συστήματα. Τέλος, στο τρίτο μέρος
9
παρουσιάζεται ο σχεδιασμός και η υλοποίηση του συστήματος που αναπτύχθηκε στα
πλαίσια της συγκεκριμένης εργασίας.
10
1 Εκπαιδευτικά Συστήματα
Τα εκπαιδευτικά συστήματα προσφέρουν σημαντική βοήθεια στο σχεδιασμό και
ανάπτυξη του μαθησιακού περιεχομένου (learning content) και των μαθησιακών
δραστηριοτήτων (learning activities) με αποτέλεσμα να γίνεται ευκολότερη η
διαχείριση του μαθησιακού περιεχομένου και των μαθησιακών γεγονότων γενικότερα.
Βέβαια, όσον αφορά τη συνεισφορά της εκπαιδευτικής τεχνολογίας
διαπιστώθηκε ότι η πλειοψηφία των εκπαιδευομένων έχει μια μέση απόδοση, με
κάποιους εκπαιδευόμενους να αποδίδουν είτε πολύ καλά, είτε πολύ άσχημα και ότι η
χρήση της τεχνολογίας δεν είχε μια σημαντική επίδραση στις εκβάσεις εκμάθησης
(φαινόμενο της «μη-σημαντικής διαφοράς») [22].
Μια πιθανή λύση στο φαινόμενο της «μη-σημαντικής διαφοράς», είναι ο
σχεδιασμός εκπαιδευτικών συστημάτων εξατομικευμένης μάθησης. Κάθε τέτοιο
σύστημα αντιμετωπίζει κάθε εκπαιδευόμενο ξεχωριστά και διαμορφώνει ένα
εξατομικευμένο περιβάλλον μάθησης.
Σε αντίθεση με τα συμβατικά εκπαιδευτικά συστήματα, τα συστήματα
εξατομικευμένης μάθησης προκειμένου να προσαρμόσουν το περιβάλλον σε κάθε
εκπαιδευόμενο χωριστά, λαμβάνουν υπόψη τους παράγοντες όπως:
• χαρακτηριστικά του εκπαιδευόμενου (user data), δηλαδή τους στόχους, τη
γνώση, το υπόβαθρο, την εμπειρία, τις προτιμήσεις, τα ενδιαφέροντα, τα
γνωρίσματα, κλπ.
• χαρακτηριστικά "χρήσης" (usage data). Με τον όρο αυτό αναφερόμαστε στα
δεδομένα (πληροφορίες) που αναφέρονται στην αλληλεπίδραση του χρήστη με
το σύστημα.
• χαρακτηριστικά του "περιβάλλοντος" του χρήστη (environment data), δηλαδή
την προσαρμογή στη τοποθεσία που βρίσκεται ο χρήστης (η κατεύθυνση που
κοιτάζει και κινείται, π.χ. μουσεία), την προσαρμογή στη πλατφόρμα που
χρησιμοποιεί (hardware, software, σύνδεση) η οποία περιλαμβάνει κατάλληλη
επιλογή του είδους του υλικού και του μέσου (π.χ., σταθερή εικόνα vs. βίντεο)
για να παρουσιάσει το περιεχόμενο. Επίσης, επιλογή διαφορετικής διεπαφής
(π.χ. στη χρήση PDA).
11
1.1 Εκπαιδευτικά Συστήματα Εξατομικευμένης Μάθησης
Τα σημερινά εκπαιδευτικά συστήματα που προσφέρουν εξατομικευμένη μάθηση
ανήκουν κατά κύριο λόγο σε δύο μεγάλες κατηγορίες [3],[10]:
• Τα ευφυή συστήματα διδασκαλίας (Intelligent Learning Systems) και
• Τα προσαρμοστικά εκπαιδευτικά υπερμέσα (Adaptive Hypermedia
Learning Systems)
Τα ευφυή συστήματα διδασκαλίας έχουν την ικανότητα να προσαρμόζουν την
παρουσίαση του εκπαιδευτικού υλικού στις ανάγκες και ιδιαιτερότητες των χρηστών
τους. Αυτό επιτυγχάνεται με τη βοήθεια χρήσης μεθόδων της Τεχνητής Νοημοσύνης
(Artificial Intelligence) για την αναπαράσταση των παιδαγωγικών αποφάσεων και των
πληροφοριών που αφορούν τον κάθε εκπαιδευόμενο.
Τα προσαρμοστικά εκπαιδευτικά υπερμέσα συγκεντρώνουν χαρακτηριστικά των
ευφυών συστημάτων διδασκαλίας (Intelligent Tutoring Systems) και των
προσαρμοστικών υπερμέσων (Adaptive Hypermedia) [7], [13]. Στα προσαρμοστικά
εκπαιδευτικά υπερμέσα ο χρήστης έχει ελευθερία επιλογής στην πλοήγηση σε αντίθεση
με τα ευφυή συστήματα διδασκαλίας στα οποία το σύστημα ελέγχει σε μεγάλο βαθμό τι
παρουσιάζεται τελικά στο χρήστη. Τα προσαρμοστικά εκπαιδευτικά υπερμέσα
προσπαθούν να προσαρμόσουν το περιεχόμενο και τις συνδέσεις (links) μιας σελίδας
υπερκειμένου (hypertext) στις απαιτήσεις του χρήστη. Έτσι οι δύο βασικές υπηρεσίες
που προσφέρουν στον χρήστη είναι η προσαρμοστική παρουσίαση (adaptive
presentation) και η προσαρμοστική πλοήγηση (adaptive navigation).
12
Το πρόβλημα που εντοπίζεται βέβαια σε συστήματα τα οποία προσφέρουν
τέτοιου είδους εκπαίδευση, είναι ότι τα περισσότερα από αυτά δεν είναι τίποτα
παραπάνω από ένα δίκτυο στατικών σελίδων υπερκειμένου.
Αποτελεί συνεπώς πρόκληση για το χώρο της έρευνας η ανάπτυξη
προχωρημένων web-based εκπαιδευτικών εφαρμογών που μπορούν να προσφέρουν, σε
κάποιο βαθμό, προσαρμοστικότητα και ευφυΐα. Αυτά είναι σημαντικά χαρακτηριστικά
για web-based εκπαιδευτικές εφαρμογές από τη στιγμή που οι μαθητές από απόσταση
συνήθως εργάζονται μόνοι τους (συχνά από το σπίτι) και έτσι δεν είναι εύκολο να
επιτευχθεί μια ευφυής και εξατομικευμένη βοήθεια που ένας δάσκαλος ή ένας
εκπαιδευτής μπορεί να παρέχει σε μια κανονική αίθουσα διδασκαλίας. Επιπλέον, είναι
σημαντικό τα web-based μαθήματα να είναι προσαρμόσιμα ώστε να μπορούν να
χρησιμοποιηθούν από μεγαλύτερο εύρος επιπέδου εκπαιδευόμενων σε αντίθεση με μια
"standalone" εκπαιδευτική εφαρμογή. Μαθήματα Web που σχεδιάζονται έχοντας
υπόψη μια συγκεκριμένη κατηγορία χρηστών μπορεί να μην ταιριάζουν σε άλλους
χρήστες.
Τα web-based προσαρμοστικά και ευφυή εκπαιδευτικά συστήματα (web-based
adaptive and intelligent educational systems - AIES) δεν είναι εντελώς νέο είδος
συστημάτων. Ιστορικά, σχεδόν όλα τα web-based AIES κληρονόμησαν στοιχεία από τα
δύο νεώτερα είδη AIES που αναφέρθηκαν παραπάνω, τα ευφυή διδακτικά συστήματα
(intelligent tutoring systems - ITS), και τα προσαρμοστικά συστήματα υπερμέσων
(adaptive hypermedia systems - AH). Μάλιστα, οι περισσότερες από τις
προσαρμοστικές και ευφυείς τεχνολογίες που εφαρμόζονται σε web-based AIES
συστήματα έχουν υιοθετηθεί είτε από την περιοχή των ITS είτε από τα AH. Βέβαια,
όσο η έρευνα σε web-based AIES ωριμάζει, θα οδηγήσει στη δημιουργία νέων
τεχνολογιών εμπνευσμένες από το web [4], [8], [14].
Όσον αφορά τα ευφυή διδακτικά συστήματα (ITS) εφαρμόζονται οι ακόλουθες
προσαρμοστικές τεχνολογίες [4], [19]:
• σειριακή εξέλιξη μαθήματος/προγράμματος (curriculum sequencing) –
διδακτικός σχεδιασμός
• υποστήριξη επίλυσης προβλημάτων.
Η τεχνολογία της σειριακής εξέλιξης μαθήματος/προγράμματος παρέχει στον
κάθε εκπαιδευόμενο ξεχωριστά την πιο κατάλληλη σχεδιασμένη σειρά θεμάτων ή
γνωστικών αντικειμένων για να μάθει, και μια σειρά από μαθησιακές εργασίες για να
δουλέψει. Δηλαδή, στόχος είναι να βοηθήσει τον εκπαιδευόμενο να βρει το βέλτιστο
13
μονοπάτι μέσα στο μαθησιακό υλικό. Η προσαρμογή του περιβάλλοντος μάθησης
γίνεται με βάση την γνώση του εκπαιδευόμενου – τη διαφορά μεταξύ της γνώσης του
εκπαιδευόμενου και του μαθησιακού στόχου – ενώ σε μερικά συστήματα μπορεί να
βασίζεται στις προτιμήσεις του εκπαιδευόμενου για το είδος και το μέσο (media) του
μαθησιακού υλικού που είναι διαθέσιμο.
Η τεχνολογία υποστήριξης επίλυσης προβλημάτων εμφανίζει τρείς διαφορετικές
εκδοχές. Η πρώτη είναι η ευφυής ανάλυση των λύσεων των εκπαιδευόμενων (intelligent
analysis of student solutions). Αυτή ασχολείται με τις τελικές απαντήσεις των
εκπαιδευόμενων στα εκπαιδευτικά προβλήματα, ανεξάρτητα από το πως δόθηκαν αυτές
οι απαντήσεις. Ένας τέτοιος αναλυτής αποφασίζει αν μια λύση είναι σωστή ή όχι,
εξακριβώνει τι είναι λάθος ή ημιτελές και βρίσκει ποια ελλιπής ή λαθεμένη γνώση είναι
υπεύθυνη για το λάθος (η τελευταία λειτουργία αναφέρεται ως διάγνωση γνώσης). Οι
ευφυείς αναλυτές μπορούν να παρέχουν στον εκπαιδευόμενο εκτεταμένη
ανατροφοδότηση λαθών και να ενημερώνουν το μοντέλο του εκπαιδευόμενου.
Η δεύτερη τεχνολογία υποστήριξης επίλυσης προβλημάτων είναι η υποστήριξη
διαδραστικής επίλυσης προβλημάτων (interactive problem solving support). Αυτή η
τεχνολογία αντί να περιμένει την τελική λύση, παρέχει στον εκπαιδευόμενο ευφυή
βοήθεια σε κάθε βήμα της επίλυσης προβλήματος. Το επίπεδο της βοήθειας μπορεί να
ποικίλει: από υπόδειξη σχετικά με ένα λάθος βήμα, μέχρι να δίνει μια οδηγία, ή ακόμα
και να εκτελεί το επόμενο βήμα για τον εκπαιδευόμενο.
Τέλος, η τρίτη τεχνολογία υποστήριξης επίλυσης προβλημάτων είναι η επίλυση
προβλημάτων βασισμένη σε παραδείγματα (example-based problem solving). Η
τεχνολογία αυτή βοηθάει τους εκπαιδευόμενους να επιλύσουν νέα προβλήματα, όχι
ενημερώνοντάς τους για τα λάθη τους, αλλά προτείνοντάς τους σχετικές επιτυχημένες
περιπτώσεις επίλυσης προβλημάτων από την προηγούμενη εμπειρία τους (θα μπορούσε
να ήταν παραδείγματα που τους εξηγήθηκαν ή προβλήματα που λύθηκαν από αυτούς
νωρίτερα).
Όσον αφορά στα προσαρμοστικά υπερμέσα (ΑΗ) εφαρμόζονται οι ακόλουθες
προσαρμοστικές τεχνολογίες [1]:
• η προσαρμοστική παρουσίαση και
• η υποστήριξη προσαρμοστικής πλοήγησης
Η τεχνολογία προσαρμοστικής προσαρμογής, προσαρμόζει το περιεχόμενο της
σελίδας υπερμέσου στους στόχους, τη γνώση, κλπ. του χρήστη. Έτσι, οι σελίδες δεν
είναι στατικές αλλά δημιουργούνται ή συντίθενται από πληροφορίες για κάθε
14
εκπαιδευόμενο, προσαρμοστικά. Οι έμπειροι χρήστες λαμβάνουν περισσότερες
λεπτομερείς και σε βάθος πληροφορίες, ενώ οι άπειροι χρήστες λαμβάνουν
περισσότερες επιπρόσθετες επεξηγήσεις.
Η τεχνολογία υποστήριξης προσαρμοστικής πλοήγησης παρέχει υποστήριξη του
εκπαιδευόμενου σε προσανατολισμό και πλοήγηση του υπερχώρου αλλάζοντας την
εμφάνιση των ορατών συνδέσμων. Το σύστημα προτείνει την επόμενη καλύτερη σελίδα
στον υπερχώρο, η οποία είτε υπάρχει είτε δημιουργείται δυναμικά. Όταν ο χρήστης
ζητήσει να πάει σε μια σελίδα που το σύστημα κρίνει ότι δεν είναι η καταλληλότερη
δυνατή, το σύστημα του προτείνει να διαβάσει μια λίστα από άλλες σελίδες πριν πάει
στη ζητούμενη.
Τέλος, οι νέες τεχνολογίες που εφαρμόζονται είναι περισσότερο εμπνευσμένες
από το web. Μία από αυτές εφαρμόζει το ταίριασμα μοντέλου (model matching).
Υπάρχουν δύο συγκεκριμένες τεχνολογίες:
• adaptive collaboration support
• intelligent class monitoring
Η τεχνολογία adaptive collaboration support κάνει χρήση της γνώσης του
συστήματος σχετικά με διαφορετικούς εκπαιδευόμενους ώστε να σχηματιστούν ομάδες
που να ταιριάζουν για διαφορετικά είδη συνεργασίας, π.χ. σχηματισμός ομάδων για
επίλυση προβλημάτων σε συνεργασία σε μια δεδομένη χρονική στιγμή, ή εύρεση του
πιο ικανού εκπαιδευόμενου μέσα σε μια ομάδα να απαντήσει σε μια ερώτηση σχετικά
με ένα θέμα.
Η τεχνολογία intelligent class monitoring βασίζεται στην δυνατότητα σύγκρισης
των ενεργειών που καταγράφονται από το σύστημα για διαφορετικούς
εκπαιδευόμενους. Αντί να αναζητά ταιριάσματα, αναζητά ασυμφωνίες, π.χ.
εκπαιδευόμενους που δεν έχουν καλές επιδόσεις και ίσως να χρειάζονται τη βοήθεια
του εκπαιδευτή, εκπαιδευόμενους με γρήγορη ή αργή πρόοδο, ή αυτούς που διάβασαν
πολύ λιγότερο υλικό από άλλους, κ.τ.λ. Στόχος είναι να αναγνωριστούν οι
εκπαιδευόμενοι που χρειάζονται περισσότερο από άλλους την προσοχή του εκπαιδευτή
– ο οποίος μπορεί να παροτρύνει αυτούς που μπορούν, να δώσει περισσότερες
πληροφορίες σε αυτούς που δεν μπορούν, και λίγη ώθηση σε αυτούς που καθυστερούν.
15
1.3 Ευφυείς Τεχνικές σε Εκπαιδευτικά Συστήματα
Μία από τις ευφυείς τεχνικές που εφαρμόζονται στα εκπαιδευτικά συστήματα
είναι και τα έμπειρα συστήματα [1], [24].
Ένα Έμπειρο Σύστημα (EΣ) είναι ένα πρόγραμμα υπολογιστή το οποίο
επιδεικνύει νοήμονα συμπεριφορά σε συγκεκριμένους τομείς και διαδικασίες, ανάλογη
ενός ανθρώπου εμπειρογνώμονα με ειδικότητα στον ίδιο τομέα. Κάθε έμπειρο σύστημα
απαιτεί εμπειρική γνώση ανεξάρτητα από το σκοπό για τον οποίο χρησιμοποιείται. Η
εμπειρία δεν είναι απλώς η γνώση ή η εκπαίδευση πάνω σε ένα συγκεκριμένο τομέα
εργασίας ή επιστήμης, αλλά επιπλέον περιλαμβάνει ένα σύνολο εξειδικευμένων
ικανοτήτων που έχουν αποκτηθεί με κόπο και σε μεγάλο χρονικό διάστημα για ένα
τελείως συγκεκριμένο σκοπό.
Επομένως, έμπειρο σύστημα είναι κάθε πρόγραμμα υπολογιστή το οποίο
κωδικοποιεί και χειρίζεται τη γνώση και τη συλλογιστική ενός ανθρώπου-ειδικού σε
έναν εξειδικευμένο τομέα, με σκοπό την επίλυση προβλημάτων ή/και την παροχή
συμβουλών στον εν λόγω τομέα.
Δύο είναι οι τρόποι με τους οποίους μπορεί να χρησιμοποιηθεί ένα έμπειρο
σύστημα. Ο πρώτος είναι να χρησιμοποιείται από έναν άνθρωπο μη-ειδικό, οπότε θα
παρέχει λύσεις σε συγκεκριμένα προβλήματα που τίθενται, αντικαθιστώντας τον
άνθρωπο μη-ειδικό, εξομοιώνοντας την ικανότητα λήψης αποφάσεων εκ μέρους του. Ο
δεύτερος τρόπος χρήσης ενός έμπειρου συστήματος είναι συμβουλευτικός. Ένας
άνθρωπος ειδικός, ο οποίος καλείται να πάρει μια απόφαση συμβουλεύεται το έμπειρο
σύστημα και με τον τρόπο αυτό παίρνει καλύτερες αποφάσεις, βελτιώνοντας την
παραγωγικότητά του.
16
Δυναμικότητα. Τα έμπειρα συστήματα πρέπει να επιτρέπουν την αλλαγή της
υπάρχουσας γνώσης. Επειδή πολλές φορές η γνώση σε έναν τομέα της επιστήμης δεν
είναι σταθερή, αλλά αλλάζει διαρκώς, θα πρέπει να υπάρχουν οι κατάλληλοι
μηχανισμοί για τροποποίηση της υπάρχουσας γνώσης, πρόσθεση καινούριας ή
αφαίρεση λανθασμένης γνώσης από το σύστημα.
Ταχύτητα Απόκρισης. Τα έμπειρα συστήματα θα πρέπει να φτάνουν σε
αποτέλεσμα πολύ γρήγορα ή τουλάχιστον σε τόσο χρόνο όσο θα έκανε και ένας
άνθρωπος-ειδικός να αποκριθεί σε ένα τυχαίο πρόβλημα. Δεν είναι αποδοτικό το
σύστημα να προσφέρει την τέλεια λύση και να την τεκμηριώνει όταν αργεί πάρα πολύ
να το πετύχει.
Διαφάνεια του Κώδικα. Ο κώδικας των έμπειρων συστημάτων είναι μια σαφή
περιγραφή του προβλήματος με το οποίο ασχολούνται. Αναπαριστούν τη γνώση για το
πρόβλημα σε συμβολική μορφή και δε θα πρέπει να αναμειγνύουν τη γνώση με το
μηχανισμό χειρισμού και ελέγχου της.
Χειρισμός αβέβαιης ή ελλιπούς γνώσης. Το έμπειρο σύστημα θα πρέπει να είναι
σε θέση να επεξεργαστεί γνώση που είναι ασαφής ή ελλιπής.
17
βέβαια επειδή εμπλέκεται ο ανθρώπινος παράγοντας είναι πιθανό η γνώση αυτή να μην
είναι απόλυτα σωστή. Επίσης, τα περισσότερα έμπειρα συστήματα δεν εκτελούν έλεγχο
της ορθότητας, της πληρότητας και της συνέπειας της γνώσης με την οποία
τροφοδοτούνται. Η ορθότητα αναφέρεται στο λογικό και όχι στο συντακτικό έλεγχο της
γνώσης, η πληρότητα είναι η απαίτηση να καλύπτει η γνώση όλα τα ενδεχόμενα του
πεδίου στο οποίο θα βρει εφαρμογή το έμπειρο σύστημα και η συνέπεια υφίσταται όταν
η νέα γνώση που υφίσταται δεν αναιρεί την ήδη υπάρχουσα. Τέλος, η χρήση των
έμπειρων συστημάτων σε προβλήματα πραγματικού χρόνου όπου η λήψη μιας
απόφασης πρέπει να γίνει σε πολύ μικρό χρονικό διάστημα έδειξε ότι οι χρόνοι
απόκρισης συνήθως είναι μεγάλοι και παρουσιάζεται μεγάλη διακύμανση στο χρόνο
απόκρισής τους.
18
1.4 Ασκήσεις και Εκπαιδευτικά Συστήματα
Σύμφωνα με τον Polya [21], μια από τις σημαντικότερες εργασίες που έχει να
εκτελέσει ένας καθηγητής είναι να βοηθά τους μαθητές του. Η εργασία αυτή δεν είναι
τόσο εύκολη, απαιτεί χρόνο, πρακτική, αφοσίωση και σωστές αρχές. Η ολοένα όμως
μεγαλύτερη αύξηση του λόγου φοιτητή προς καθηγητή που παρατηρείται, συνεπάγεται
αύξηση του διδακτικού έργου. Κομμάτι του διδακτικού έργου, ειδικά σε θεματικές
περιοχές όπου η γνώση είναι δομημένη με μαθηματικό τρόπο σημαντικό ρόλο στην
κατανόηση της θεωρίας παίζουν οι ασκήσεις.
Κάθε χρόνο οι εκπαιδευτικοί πρέπει να ανανεώνουν τις ασκήσεις που δίνονται
στα πλαίσια του μαθήματος. Αυτό οδηγεί σε μια διαδικασία ανανέωσης και των ιδίων
αλλά αποτρέπει και φαινόμενα αντιγραφής από τους φοιτητές. Σε αυτό συντελεί και το
γεγονός ότι κάθε χρόνο είναι διαφορετικές οι ανάγκες των φοιτητών που απευθύνονται,
αφού πρόκειται για διαφορετικά άτομα με διαφορετικό υπόβαθρο. Έτσι, για να είναι
επιτυχημένο το διδακτικό έργο οι ασκήσεις που δίνονται θα πρέπει να προσαρμόζονται
στις ανάγκες του ακροατηρίου.
Οι εκπαιδευτικοί προκειμένου να καλύψουν όσο γίνεται περισσότερο τις
ιδιαίτερες ανάγκες των φοιτητών χρησιμοποιούν πολλές μεθόδους εκπαίδευσης και
σπαταλούν αρκετό χρόνο για την αναζήτηση νέων ασκήσεων από διάφορα βιβλία ή για
την κατασκευή ασκήσεων από τους ίδιους. Συνεπώς, κύρια απαίτηση των
εκπαιδευτικών από την τεχνολογία είναι να λειτουργεί ως ένα εργαλείο για να κάνουν
πιο εύκολα και καλύτερα τη δουλειά τους, αρκεί να εξασφαλίζεται η ευχρηστία και να
απαιτείται από αυτούς η λιγότερη δυνατή εργασία και γνώση πάνω σε αυτή. Ένα
εκπαιδευτικό σύστημα για το οποίο οι εκπαιδευτικοί βιώνουν την ενασχόλησή τους με
αυτό σαν εχθρό που έρχεται να τους επιφορτίσει με επιπλέον κόπο και ευθύνες έχει
αποτύχει ολοκληρωτικά.
Από την πλευρά των φοιτητών, είναι έντονη η ανάγκη για πρωτότυπες ασκήσεις
και όσο γίνεται πιο διαφορετικές. Επίσης, έχουν την ανάγκη πολλές φορές να
συμμετέχουν και οι ίδιοι στη διαμόρφωση του μαθήματος προτείνοντας δικές τους
ασκήσεις. Το αίτημα για ποικιλία ασκήσεων γίνεται ακόμα πιο επιτακτικό όταν
πρόκειται για θεματικές περιοχές όπου η θεωρία είναι δυσνόητη. Οι ασκήσεις επομένως
που προσφέρει ένα εκπαιδευτικό σύστημα θα πρέπει αφενός να προκαλούν το φοιτητή
και αφετέρου να προσφέρουν αποδοτική εκπαίδευση. Για να επιτευχθούν τα παραπάνω,
το εκπαιδευτικό σύστημα πρέπει να προσφέρει ασκήσεις κλιμακούμενης δυσκολίας
19
γιατί αν ένας φοιτητής δίνει σωστές απαντήσεις σε ασκήσεις συγκεκριμένης δυσκολίας,
δεν είναι αποδοτικό το σύστημα να του προσφέρει ξανά ασκήσεις ίδιας δυσκολίας.
Επίσης, στην περίπτωση που ένας φοιτητής δεν απαντά σωστά σε ασκήσεις
συγκεκριμένης δυσκολίας τότε το σύστημα θα πρέπει να του προσφέρει πιο εύκολες
ασκήσεις.
Ειδικά, σε εκπαιδευτικά συστήματα εξατομικευμένης μάθησης [12] οι
απαιτήσεις είναι ακόμα μεγαλύτερες αφού κάθε εκπαιδευόμενος αντιμετωπίζεται
χωριστά. Από τις τεχνολογίες που χρησιμοποιούνται σε τέτοιου είδους συστήματα και
παρουσιάστηκαν συνοπτικά σε προηγούμενη ενότητα, εύκολα συμπεραίνει κανείς ότι η
αξιολόγηση της γνώσης των εκπαιδευομένων αποτελεί μείζον ζήτημα. Συνεπώς, αν
λάβουμε υπόψη ότι η αξιολόγηση του επιπέδου γνώσης των μαθητών γίνεται κατά
κύριο λόγο μέσω του μαθησιακού υλικού που τους προσφέρεται συμπεραίνουμε την
αναγκαιότητα ύπαρξης μιας μεγάλης ποικιλίας ασκήσεων που αποτελούν μέρος του
μαθησιακού υλικού.
1.5.1 Αρχιτεκτονική
20
Σχήμα 1: Η Αρχιτεκτονική του Ευφυούς Συστήματος Διδασκαλίας
21
Αναδεικνύεται επομένως η έλλειψη ικανότητας δημιουργίας νέου εκπαιδευτικού υλικού
από το ίδιο το σύστημα που θα ήταν πολύ χρήσιμο για τους εκπαιδευτικούς. Παρακάτω
θα περιγραφεί το σύστημα που υλοποιήθηκε προκειμένου να χρησιμοποιηθεί για την
τροφοδότηση του υπάρχοντος συστήματος με νέο εκπαιδευτικό υλικό και ειδικότερα με
την παροχή ασκήσεων κατηγορηματικής λογικής πρώτης τάξεως οι οποίες
κατασκευάζονται αυτόματα από το σύστημα και επιπλέον σε κάθε μία από αυτές
ανατίθεται αυτόματα από το σύστημα ένας βαθμός δυσκολίας.
Το σύστημα που είναι ήδη υλοποιημένο παρέχει δυνατότητα μάθησης και εξάσκησης
σε θέματα κατηγορηματικής λογικής ως γλώσσας αναπαράστασης. Κάποιες από τις
παρεχόμενες ενότητες είναι οι εξής:
• Λεξιλόγιο
• Προτάσεις
• Μετατροπή μιας πρότασης φυσικής γλώσσας (ΦΓ) σε ΚΛ
• Μετατροπή μιας πρότασης ΚΛ σε προτασιακή μορφή (ΠΜ)
• Διαδικασία Εξαγωγής Συμπερασμάτων
Στην ενότητα «Λεξιλόγιο», ο εκπαιδευόμενος εξοικειώνεται με τις έννοιες:
‘σταθερά’, ‘κατηγόρημα’, ‘μεταβλητή’, ‘συνάρτηση’, ‘λογικά συνδετικά’ και
‘ποσοδείκτες’, που αποτελούν βασικά συστατικά συντακτικά στοιχεία μιας πρότασης
ΚΛ.
Στην ενότητα «Προτάσεις», ασχολείται με τις έννοιες, ‘εμβέλεια ποσοδείκτη’,
‘δεσμευμένη’ και ‘ελεύθερη μεταβλητή’, τις μορφές προτάσεων ‘συζευκτική κανονική
μορφή’, ‘διαζευκτική κανονική μορφή’ και ‘κανονική μορφή prenex’.
Η ενότητα «Μετατροπή μιας πρότασης φυσικής γλώσσας (ΦΓ) σε ΚΛ»
διαπραγματεύεται τις αρχές και τη διαδικασία μετατροπής μιας πρότασης ΦΓ σε ΚΛ,
ενώ η ενότητα «Μετατροπή μιας πρότασης ΚΛ σε προτασιακή μορφή (ΠΜ)» τη
διαδικασία μετατροπής μιας λογικής πρότασης σε μια άλλη μορφή η οποία είναι
κατάλληλη για επίτευξη αυτόματου συλλογισμού, δηλ. αυτόματης εξαγωγής
συμπερασμάτων, θέμα με το οποίο ασχολείται η τελευταία ενότητα.
Το σύστημα προσφέρει στον χρήστη-φοιτητή μαθησιακές μονάδες που
αντιστοιχούν σε κάθε έννοια και μπορεί να είναι τριών διδακτικών τύπων: θεωρία,
22
παράδειγμα, άσκηση. Οι προσφερόμενες ασκήσεις είναι συνήθως ερωτήσεις πολλαπλής
επιλογής, από τις απαντήσεις στις οποίες αξιολογείται ο χρήστης για το πόσο καλά
έμαθε μια έννοια.
Στην ενότητα «Μετατροπή μιας πρότασης ΚΛ σε προτασιακή μορφή (ΠΜ)»
εκτός από ερωτήσεις πολλαπλής επιλογής, υπάρχουν και ασκήσεις μετατροπής μιας
πρότασης ΚΛ σε ΠΜ. Οι προτάσεις που εμπλέκονται στις ερωτήσεις και στις ασκήσεις
προέρχονται από ένα σύνολο προκαθορισμένων προτάσεων που βρίσκονται σε μια
βάση δεδομένων.
23
προσαρμόζουν στις ανάγκες της εκάστοτε εκπαιδευτικής διαδικασίας, αλλά και να
ανανεώνεται.
Επίσης, από τη στιγμή που το μαθησιακό υλικό είναι διαθέσιμο στο διαδίκτυο
δίνεται η δυνατότητα να δημιουργηθεί μία κοινή βάση για πολλά θέματα και μία ενιαία
πηγή πληροφόρησης όχι μόνο για τους εκπαιδευτικούς αλλά και για τους φοιτητές. Το
υλικό αυτό θα είναι μία προσφορά στην κοινότητα του διαδικτύου.
Ταυτόχρονα, το γεγονός ότι τέτοιου είδους συστήματα μπορούν να
χρησιμοποιηθούν για να δημιουργήσουν εκπαιδευτικό υλικό, χωρίς να απαιτούνται
ειδικές γνώσεις σε HTML ή άλλες γλώσσες προγραμματισμού δίνει τη δυνατότητα και
στους ίδιους τους μαθητές να συμμετέχουν ενεργά στην εκπαιδευτική διαδικασία. Αυτό
έχει ως αποτέλεσμα να έχουν μεγαλύτερο ενδιαφέρον για το μάθημα.
Βέβαια, ένα τέτοιο σύστημα σε καμία περίπτωση δεν αντικαθιστά τον
εκπαιδευτικό αλλά έχει το ρόλο ενός πολύτιμου βοηθού. Αυτό συμβαίνει γιατί το υλικό
που παράγεται μπορεί να επαναχρησιμοποιηθεί και έτσι δίνεται η δυνατότητα στον
εκπαιδευτή να ασχολείται μόνο με την ενημέρωση και τον εμπλουτισμό του υλικού και
όχι με την εκ νέου δημιουργία του κάθε φορά που διδάσκεται το μάθημα.
Σύμφωνα όμως με τους Pallοff & Pratt, (1999) η χρήση του διαδικτύου απαιτεί
περισσότερο χρόνο ενασχόλησης για τον εκπαιδευτή. Παρόλα αυτά τα οφέλη από τη
χρήση του δεν μπορούν σε καμία περίπτωση να αντισταθμιστούν αφού τα ηλεκτρονικά
συστήματα αυξάνουν την παραγωγικότητα και την ποιότητα της δουλειάς των
εκπαιδευτικών.
Από τα παραπάνω, είναι σαφές ότι το σύστημα που υλοποιήθηκε υποστηρίζει τη
δημιουργία νέας γνώσης όπως και γνώσης που είναι προϊόν συνεργατικής δουλειάς, σε
αντίθεση με τα υπάρχοντα εκπαιδευτικά συστήματα που έχουν αναπτυχθεί για τη
διδασκαλία της λογικής και βασίζονται στο διαδίκτυο. Τέλος, το γεγονός ότι είναι ένα
σύστημα που μπορεί να χρησιμοποιηθεί είτε αυτόνομα είτε για να τροφοδοτεί με
εκπαιδευτικό υλικό άλλα συστήματα το καθιστά πολύ εύχρηστο και ευέλικτο.
24
2 Λογική και Γλώσσα Αναπαράστασης
Η λογική, παρέχει έναν εύχρηστο και αυστηρά καθορισμένο τρόπο τυποποίησης της
διαδικασίας της ανθρώπινης σκέψης. Προσφέρει μια σαφή, ακριβή και απλή στη
σύνταξη γλώσσα, καθώς και τη δυνατότητα παραγωγής νέας γνώσης από την ήδη
υπάρχουσα. Όπως αναφέρθηκε και στον πρόλογο, η χρήση της λογικής σε
υπολογιστικά συστήματα προήλθε από την ακαταλληλότητα της φυσικής γλώσσας. Ας
δούμε όμως αρχικά ποια πορεία ακολούθησε μέχρι να θεμελιωθεί ως επιστήμη .
25
θεωρημάτων. Το 1965, ο Robinson προτείνει τη μέθοδο της Επίλυσης (resolution) για
το χειρισμό συμβόλων και εκτέλεση μηχανικών αποδείξεων και φτάνουμε στις αρχές
της δεκαετίας 1970 όπου οι Kowalski και Colmeraurer προτείνουν τη Λογική σαν
γλώσσα προγραμματισμού (Prolog).
Ο ρόλος της Λογικής είναι θεμελιώδης στην Επιστήμη των Υπολογιστών. Αυτό
φαίνεται από τα πλήθη των θεματικών περιοχών της Επιστήμης Υπολογιστών όπου η
συμβολή της Λογικής είναι πλέον εμφανής:
• Λογικά Κυκλώματα (Logic circuits)
Στη Λογική, προτάσεις συνδυάζονται με συνδέσμους (σύζευξη, διάζευξη,
άρνηση). Λογικά κυκλώματα σχηματίζονται με συνδυασμούς πυλών (AND, OR, NOT).
Κάθε κύκλωμα μπορεί να χαρακτηριστεί από μια πρόταση του Προτασιακού Λογισμού.
Προβλήματα σχεδιασμού κυκλωμάτων μεταφράζονται σε προβλήματα εύρεσης
αντίστοιχων προτάσεων και του χειρισμού αυτών.
• Προγραμματισμός: Boolean data types
Οι τύποι δεδομένων Boolean επιδέχονται δύο τιμές: true, false. Μπορούν να
συνδυαστούν μέσω συνδετικών and, or, not για να παράγουν σύνθετες εκφράσεις του
ίδιου τύπου.
• Σχεδίαση Προγραμμάτων (Program Design)
Πριν γραφτεί ένα πρόγραμμα, απαιτείται ένα σύνολο προδιαγραφών (program
specifications) οι οποίες καθορίζουν τη συμπεριφορά του προγράμματος. Οι
προδιαγραφές αυτές μπορούν να γράφονται σε φυσική γλώσσα (ελληνικά, αγγλικά), σε
ψευδογλώσσα ή ψευδοκώδικα (pseudocode) ή σε μια τυπική ή τεχνική γλώσσα.
Προδιαγραφές σε τυπικές γλώσσες είναι πλέον χρήσιμες καθώς επιτρέπουν (συχνά) την
επαλήθευση ότι το πρόγραμμα συμπεριφέρεται σύμφωνα με τις προδιαγραφές.
Διαφορετικά, η συμπεριφορά ενός προγράμματος μπορεί να ελεγχθεί μόνο με
επαναληπτικές δοκιμές, οι οποίες όμως δεν μπορούν πολλές φορές να εξαντλήσουν
όλες τις δυνατές περιπτώσεις. Η Λογική μπορεί να χρησιμοποιηθεί και στην περιγραφή
του ίδιου του προγράμματος και της επιθυμητής συμπεριφοράς του. Τεχνικές της
Λογικής χρησιμοποιούνται για να ελεγχθεί αν οι εκφράσεις της συμπεριφοράς του
26
προγράμματος είναι λογικές συνέπειες των εκφράσεων που περιγράφουν το
πρόγραμμα.
• Λογικός Προγραμματισμός (Logic programming)
Η πλειοψηφία των γλωσσών προγραμματισμού ακολουθούν την περιγραφή των
βημάτων που πρέπει να γίνουν προκειμένου να παραχθεί ένα επιθυμητό αποτέλεσμα. Ο
Λογικός Προγραμματισμός ακολουθεί ένα διαφορετικό στυλ: περιγράφει ποιό είναι το
επιθυμητό αποτέλεσμα και όχι το πώς θα επιτευχθεί. Αυτό γίνεται με τη βοήθεια
προτάσεων και κανόνων εξαγωγής συμπερασμάτων που ορίζει ο προγραμματιστής.
Ουσιαστικά, ένα λογικό πρόγραμμα είναι ένα σύνολο από εκτελέσιμες προδιαγραφές.
• Αυτοματοποιημένος Λογισμός (Automated Reasoning)
Ο Λογικός Προγραμματισμός εκτελεί μια μορφή αυτοματοποιημένου λογισμού.
Για συγκεκριμένους κλάδους των Μαθηματικών (π.χ. Θεωρία Αριθμών, Άλγεβρα)
υπάρχουν συστήματα αυτομάτων αποδείξεων βασισμένα στη Λογική και το χειρισμό
συμβόλων. Παρόμοια προγράμματα μπορούν να χρησιμοποιηθούν και για την
επαλήθευση προγραμμάτων (program verification) για να ελέγχουν αν υλοποιούν
σωστά τις προδιαγραφές τους. Ένα ενδιαφέρον πρόβλημα είναι επίσης η σύνθεση
προγραμμάτων, δηλαδή το πρόβλημα της παραγωγής ενός προγράμματος δεδομένων
κάποιων προδιαγραφών, έτσι ώστε να αποδεικνύεται ότι το πρόγραμμα υλοποιεί σωστά
τις προδιαγραφές.
• Βάσεις Δεδομένων και Γνώσεων (Data and Knowledge Bases)
Η Λογική και η Θεωρία Συνόλων αποτέλεσαν τη βάση του Σχεσιακού Μοντέλου
Δεδομένων (Relational Data Model) το οποίο είναι το πλέον επιτυχημένο και δημοφιλές
μοντέλο δεδομένων στην περιοχή των Βάσεων Δεδομένων. Οι βάσεις γνώσεων
αναπαριστούν γνώση με τη μορφή λογικών εκφράσεων. Η παραγωγή συμπερασμάτων
από βάσεις δεδομένων ή γνώσεων γίνεται με γλώσσες επερωτήσεων (query languages)
και συμπερασματικούς κανόνες (inference rules) που συνήθως βασίζονται σε
διαλέκτους του Κατηγορηματικού Λογισμού (Predicate calculus).
• Τεχνητή Νοημοσύνη (Artificial Intelligence)
Η Τεχνητή Νοημοσύνη αναφέρεται στον κλάδο της επιστήμης υπολογιστών ο
οποίος ασχολείται με τη σχεδίαση και την υλοποίηση υπολογιστικών συστημάτων που
μιμούνται στοιχεία της ανθρώπινης συμπεριφοράς τα οποία υπονοούν ευφυΐα (έστω και
στοιχειώδη): μάθηση, προσαρμοστικότητα, εξαγωγή συμπερασμάτων, κατανόηση από
τα συμφραζόμενα, επίλυση προβλημάτων κλπ. Ο Τζον Μακάρθι όρισε τον τομέα αυτόν
ως "επιστήμη και μεθοδολογία της δημιουργίας νοούντων μηχανών". Η Τεχνητή
27
Νοημοσύνη επιχειρεί να εξομοιώσει την ανθρώπινη νοημοσύνη αλγοριθμικά
χρησιμοποιώντας σύμβολα και λογικούς κανόνες. Η Λογική μπορεί να δώσει το
απαραίτητο τεχνικό υπόβαθρο για διάφορες νοητικές διαδικασίες, όπως για παράδειγμα
η αναπαράσταση γνώσης (knowledge representation).
Από τα παραπάνω μπορούμε επομένως να συμπεράνουμε την αδιαμφισβήτητη
αξία της λογικής στην επιστήμη των υπολογιστών.
2.3 Σύνταξη
28
Εύκολα διαπιστώνει κανείς πως ένα από τα βασικά πλεονεκτήματα της
προτασιακής λογικής είναι ότι η σύνταξή της είναι ιδιαίτερα απλή, ενώ το βασικότερο
μειονέκτημα είναι ότι παρουσιάζει έλλειψη γενικότητας που οδηγεί σε τεράστιες
αναπαραστάσεις γνώσης, αφού κάθε γεγονός αναπαρίσταται με μια ξεχωριστή λογική
πρόταση.
Στο πρόβλημα που εμφανίζει η προτασιακή λογική έρχεται να δώσει λύση η
κατηγορηματική λογική. Στο προηγούμενο παράδειγμα, η πρόταση S εκφράζει τις
ιδιότητες του συγκεκριμένου ατόμου, του George. Αν όμως θέλαμε να εκφράσουμε την
ίδια ιδιότητα για άλλα άτομα θα έπρεπε να είχαμε τόσα προτασιακά σύμβολα όσα και
τα ονόματα των ανθρώπων. Αυτό βέβαια είναι πρακτικά αδύνατο.
Στην κατηγορηματική λογική η συγκεκριμένη πρόταση αναπαρίσταται ως εξής:
P: human(x) → mortal (x) που εκφράζει μια γενική σχέση. Έτσι, μπορούμε να
αντικαταστήσουμε στη μεταβλητή x οποιοδήποτε όνομα και να προκύψουν πολλές
διαφορετικές προτάσεις. Στην ενότητα που ακολουθεί θα δώσουμε μια σύντομη
περιγραφή της κατηγορηματικής λογικής αφού είναι μια ιδιαίτερα εκφραστική γλώσσα
και προσφέρει μια καθαρά περιγραφική αναπαράσταση της γνώσης όπως διαπιστώθηκε
και από το προηγούμενο παράδειγμα. Μάλιστα, ιδιαίτερα για εφαρμογές Τεχνητής
Νοημοσύνης χρησιμοποιείται η κατηγορηματική λογική και πιο συγκεκριμένα η
κατηγορηματική λογική πρώτης τάξεως.
29
Ο αριθμός των διαφορετικών ορισμάτων που εμφανίζονται σε ένα σύμβολο
κατηγορήματος ονομάζεται βαθμός (arity) του κατηγορήματος. Π.χ. το κατηγόρημα
P(x,y) είναι κατηγόρημα δευτέρου βαθμού. Αντίστοιχα ισχύουν για τις συναρτήσεις
αφού αποτελούν ειδική περίπτωση των κατηγορημάτων.
Για να καθοριστεί πλήρως η κατηγορηματική λογική θα πρέπει να ορίσουμε τα
ειδικά της σύμβολα αφού τα λογικά σύμβολα περιέχονται σε όλες τις γλώσσες.
Ένας όρος (term) ορίζεται επαγωγικά ως εξής:
i. Μία σταθερά είναι όρος.
ii. Μία μεταβλητή είναι όρος.
iii. Αν f είναι μία συνάρτηση βαθμού n και t1, …, tn είναι όροι τότε f(t1, …,
tn) είναι όρος.
Ατομικός τύπος ή άτομο (atomic formula) ορίζεται κάθε ακολουθία συμβόλων
της μορφής P(t1, …, tn), όπου το P είναι σύμβολο κατηγορήματος βαθμού n και ti είναι
όρος για κάθε i=1, 2, …, n.
Ένας τύπος (formula) ορίζεται επαγωγικά ως εξής:
i. Κάθε άτομο είναι τύπος.
ii. Αν σ1, σ2 είναι τύποι, τότε τύποι είναι και οι: (σ1 ∧ σ2), (σ1 ∨ σ2),
(σ1 → σ2), (σ1 ↔ σ2), ( ¬ σ1).
iii. Αν v είναι μεταβλητή και φ τύπος, τότε τύποι είναι και οι: (∃v )φ , (∀v )φ .
iv. Τύποι είναι μόνο ακολουθίες συμβόλων που σχηματίζονται σύμφωνα με
τους κανόνες i, ii και iii.
30
κατηγορήματα, τα συνδετικά, οι σταθερές, οι συναρτήσεις, οι μεταβλητές και οι
ποσοδείκτες. Παρακάτω θα αναφέρουμε, [3], [4], [5], [12], τι εκφράζει καθένα από
αυτά τα σύμβολα όταν χρησιμοποιείται στην κατασκευή προτάσεων.
Τα κατηγορήματα εκφράζουν τη σχέση που υπάρχει ανάμεσα σε συγκεκριμένα
αντικείμενα. Το όνομα του κατηγορήματος εκφράζει τη σχέση ανάμεσα στα
συνδεόμενα αντικείμενα ενώ ο βαθμός του εκφράζει το πλήθος των συσχετιζόμενων
αντικειμένων, π.χ. loves(bob, bill). Στο παράδειγμα αυτό η λέξη loves εκφράζει τη
σχέση αγάπης που υπάρχει ανάμεσα στα δύο πρόσωπα, τον bob και τον bill. Ο βαθμός
του κατηγορήματος είναι δύο αφού τα σχετιζόμενα αντικείμενα είναι δύο, ο bob και ο
bill. Τα κατηγορήματα μπορούν να συσχετίσουν σταθερές, συναρτήσεις και
μεταβλητές.
Τα συνδετικά χρησιμοποιούνται για να συνδεθούν μεταξύ τους τα
κατηγορήματα ώστε να δημιουργηθούν οι προτάσεις. Το συνδετικό “και” (p1 ∧ p2)
αναπαριστά το γεγονός ότι αν ισχύει το p1 και ταυτόχρονα το p2 τότε θα ισχύει και το
γεγονός (p1 ∧ p2). Το συνδετικό “ή” (p1 ∨ p2) αναπαριστά το γεγονός ότι αν ισχύει το
p1 ή το p2 τότε θα ισχύει και το γεγονός (p1 ∨ p2). Το συνδετικό “όχι” ( ¬ p1) αλλάζει
την αλήθεια του κατηγορήματος (αλήθεια σε ψέμα και ψέμα σε αλήθεια). Το συνδετικό
“συνεπάγεται” (p1 → p2) αναπαριστά το γεγονός ότι αν είναι αλήθεια το p1, θα είναι
αλήθεια και το p2. τέλος, το συνδετικό “ισοδυναμεί” (p1 ↔ p2) αναπαριστά το γεγονός
ότι το p2 είναι αλήθεια αν και μόνο αν είναι αλήθεια το p1.
Οι συναρτήσεις είναι ειδικές περιπτώσεις κατηγορημάτων. Αν μια συνάρτηση
είναι n βαθμού τότε δέχεται n ορίσματα. Μια συνάρτηση εκφράζει μια σχέση 1-1
μεταξύ των ορισμάτων της και του αποτελέσματος. Π.χ. στο father-of(bill), master-
of(Pluto), sum-of(x, y).
Οι σταθερές αναπαριστούν πραγματικά αντικείμενα, αντικείμενα τα οποία δεν
μπορούν να αλλάξουν, π.χ. το όνομα μιας χώρας, England.
Οι μεταβλητές χρησιμοποιούνται για να αυξηθεί η εκφραστικότητα της γλώσσας
αφού μπορούν να αναπαραστήσουν πιο γενικές σχέσεις, π.χ. ( ∀ x)human(x) → mortal
(x). Στο παράδειγμα που αναφέρθηκε προηγουμένως η μεταβλητή εκφράζεται μέσω του
συμβόλου x. Αν αντικατασταθεί η μεταβλητή αυτή με διάφορες σταθερές τιμές τότε
από την γενικότερη σχέση θα προκύψουν προτάσεις που θα εκφράζουν μια
συγκεκριμένη σχέση.
Όσον αφορά τους ποσοσδείκτες, ο καθολικός ( ∀ ) εκφράζει την αλήθεια ενός
κατηγορήματος για οποιαδήποτε τιμή τεθεί στις μεταβλητές του, π.χ. η ακόλουθη
31
πρόταση εκφράζει ότι σε όλους τους μαθητές αρέσει το παιχνίδι, ( ∀ x) (student(x) →
enjoys(x,playing)), ενώ ο υπαρξιακός ποσοδείκτης ( ∃ x) εκφράζει την αλήθεια ενός
κατηγορήματος για κάποια τιμή που θα τεθεί στις μεταβλητές του, π.χ. ( ∃ x) (student(x)
→ ¬ eats(x,Pizza)) που φανερώνει ότι υπάρχει κάποιος μαθητής που δεν τρώει πίτσα.
Επομένως, για να κατασκευαστούν προτάσεις κατηγορηματικής λογικής πρώτης
τάξεως θα πρέπει η μεθοδολογία που θα ακολουθηθεί να έχει τη δυνατότητα
κατασκευής μιας γλώσσας. Το συντακτικό της γλώσσας θα χρησιμοποιηθεί
προκειμένου να σχηματιστούν οι τύποι. Αν σε κάθε τύπο που δημιουργείται, κάθε
κατηγόρημα ή σταθερά ή συνάρτηση αντικατασταθεί με μια λέξη φυσικής γλώσσας
τότε οι τύποι αποκτούν μια σημασιολογία. Εκτός όμως από τη σημασιολογία για να
κατασκευαστούν προτάσεις σε κατηγορηματική λογική απαιτείται όπως σε κάθε
προσπάθεια δημιουργίας προτάσεων φυσικής γλώσσας μια γραμματική, ένα σύνολο
από κανόνες που θα καθορίζει το είδος των λέξεων που μπορεί να αντικαταστήσει
κάποιο κατηγόρημα, σταθερά ή συνάρτηση σε ένα συγκεκριμένο τύπο.
32
2. Περιορισμός των αρνήσεων ( ¬ ), διανέμοντάς τις στα υπόλοιπα
συνδετικά:
• Η ¬ ( ¬ f) γράφεται σαν f.
• Η ¬ ( ∀ x)f γράφεται σαν ( ∃ x)( ¬ f).
• Η ¬ ( ∃ x)f γράφεται σαν ( ∀ x)( ¬ f).
• H ¬ ( f1 ∧ f2 ∧ … ∧ fn) γράφεται σαν ¬ f1 ∨ ¬ f2 ∨ … ∨ ¬ fn)
• H ¬ ( f1 ∨ f2 ∨ … ∨ fn) γράφεται σαν ¬ f1 ∧ ¬ f2 ∧ … ∧ ¬ fn)
3. Μετονομασία μεταβλητών που δεσμεύονται από διαφορετικούς
ποσοδείκτες, έτσι ώστε κάθε μεταβλητή να δεσμεύεται από έναν μόνο
ποσοδείκτη.
4. Μετατροπή της έκφρασης σε κανονική μορφή prenex. Πιο
συγκεκριμένα, μια έκφραση βρίσκεται σε κανονική μορφή prenex όταν
είναι της μορφής: ((q1x1)((q2x2)…((qnxn)F…), όπου το qi, i=1,…,n είναι
είτε ο ποσοδείκτης “ ∀ ” είτε ο “ ∃ ”, και το F είναι μια έκφραση που δεν
περιέχει ποσοδείκτες. Γίνεται επομένως μεταφορά των ποσοδεικτών στα
αριστερά της έκφρασης, με τη σειρά όμως που βρίσκονται σε αυτή.
5. Απαλοιφή υπαρξιακών ποσοδεικτών χρησιμοποιώντας συναρτήσεις και
σταθερές Skolem (Skolemization). Ειδικότερα, έστω μια έκφραση που
βρίσκεται σε κανονική μορφή prenex: ((q1x1)((q2x2)…((qnxn)F…). Αν το
qr, 1 ≤ r ≤ n, είναι ένας υπαρξιακός ποσοδείκτης και πριν από αυτόν δεν
εμφανίζεται κανένας καθολικός ποσοδείκτης, τότε εισάγουμε μια νέα
σταθερά sk-cr (σταθερά Skolem) διαφορετική από τις σταθερές που
εμφανίζονται στην έκφραση m, αντικαθιστούμε κάθε εμφάνιση της
μεταβλητής xr με τη σταθερά sk-cr, και διαγράφουμε το (qrxr). Αν πριν
από τον υπαρξιακό ποσοδείκτη εμφανίζονται οι καθολικοί ποσοδείκτες
qs1 ... qsm , 1 ≤ s1<s2…<sm<r, εισάγουμε μια νέα συνάρτηση sk-fr,
(συνάρτηση Skolem) διαφορετική από τις συναρτήσεις Που
εμφανίζονται στην έκφραση m, αντικαθιστούμε κάθε εμφάνιση της
μεταβλητής xr από την sk-fr(xs1,xs2,…,xsm), και διαγράφουμε το (qrxr).
Αφού εφαρμόσουμε αυτή τη διαδικασία σε όλους τους υπαρξιακούς
ποσοδείκτες, προκύπτει μια έκφραση που δεν περιέχει υπαρξιακούς
ποσοδείκτες και λέμε ότι βρίσκεται σε κανονική μορφή Skolem.
6. Διαγραφή των καθολικών ποσοδεικτών.
33
7. Μετατροπή της έκφρασης σε συζευκτική κανονική μορφή (CNF):
Η (f ∨ ( f1 ∧ f2 ∧ … ∧ fn) γράφεται σαν ((f ∨ f1) ∧ (f ∨ f2) ∧ ... ∧ (f ∨ fn).
8. Απαλοιφή των διασυνδετικών και γραφή του συνόλου των προτάσεων
που προέκυψαν.
9. Μετονομασία των μεταβλητών, έτσι ώστε μια μεταβλητή να μην
εμφανίζεται σε περισσότερες από μια προτάσεις.
34
3 Τεχνικές Παραγωγής Ασκήσεων σε Εκπαιδευτικά
Συστήματα
Μέχρι σήμερα έχουν υλοποιηθεί αρκετά εκπαιδευτικά συστήματα στα οποία
εφαρμόζονται τεχνικές παραγωγής ασκήσεων άλλοτε με έναν ημι-αυτόματο και άλλοτε
με αυτόματο τρόπο [18]. Στις επόμενες ενότητες θα παρουσιαστούν ενδεικτικά κάποιες
από τις τεχνικές που έχουν εφαρμοστεί σε διάφορους επιστημονικούς τομείς.
Αρχικά θα περιγραφεί μια τεχνική η οποία έχει υλοποιηθεί σε ένα σύστημα ώστε να
παράγει αυτόματα ασκήσεις ηλεκτρικών κυκλωμάτων εναλλασσόμενου ρεύματος [6].
Το σύστημα αυτό παράγει μεγάλα σύνολα από προβλήματα ανάλυσης ηλεκτρικών
κυκλωμάτων τα οποία έχουν τα ίδια γενικά χαρακτηριστικά αλλά έχουν διαφορετικές
δομές τοπολογίας και παραμέτρους.
Αρχικά ο χρήστης προτρέπεται να καθορίσει το πρόβλημα, δηλαδή το πλήθος
των προβλημάτων που θα δημιουργηθούν και άλλες παραμέτρους που αφορούν την
αναπαράστασή του. Στη συνέχεια για κάθε πρόβλημα του συνόλου, καλείται να δώσει
τιμές στις μεταβλητές, στις ανεξάρτητες παραμέτρους αλλά και όλες τις υπόλοιπες
παραμέτρους που απαιτούνται προκειμένου να κατασκευαστεί το κύκλωμα.
Κατόπιν, για κάθε πρόβλημα του συνόλου και με βάση τις τιμές που έχει δώσει ο
χρήστης, δημιουργείται μια ξεχωριστή τοπολογία. Αρχικά, κατασκευάζεται ένα δέντρο
και η διαδικασία συνεχίζει με την εισαγωγή ακμών προκειμένου να δημιουργηθεί ο
γράφος που περιγράφει το κύκλωμα. Ταυτόχρονα υπολογίζεται με βάσει τις τιμές που
έχουν δοθεί από το χρήστη ο πίνακας που περιγράφει την τοπολογία του κυκλώματος.
Στο δεύτερο μέρος της διαδικασίας, οι παράμετροι του κυκλώματος είτε επιλέγονται
είτε υπολογίζονται χειρωνακτικά. Τέλος, οι πηγές τάσης μετατρέπονται σε πηγές
ρεύματος όπως και οι εξαρτημένες πηγές σε ανεξάρτητες, εφόσον υπάρχουν.
Από την παραπάνω ανάλυση προκύπτει ότι η τεχνική αυτή προσφέρει τη
δυνατότητα κατασκευής ασκήσεων από το σύστημα που έχουν την ίδια δυσκολία με
έναν αυτόματο τρόπο. Η τεχνική αυτή μπορεί να εφαρμοστεί επίσης σε προβλήματα
όπου απαιτείται μια ανάλυση όπως η προηγούμενη, εφόσον δοθούν από το χρήστη οι
35
τιμές κάποιων παραμέτρων και οι μεταβλητές προκύπτουν ως λύσεις σε εξισώσεις που
περιγράφουν το σύστημα.
36
επιλέγονται ακολουθώντας μονοπάτια που συνδέουν την έννοια που έχει επιλεγεί στην
εκφώνηση με άλλες έννοιες στον εννοιολογικό χώρο. Ακολουθώντας διαφορετικές
σχέσεις μέσα στην οντολογία δημιουργούνται δύο ξεχωριστές λίστες, μια με τις σωστές
απαντήσεις και μια με πιθανές λανθασμένες. Σημαντικό ζήτημα στην εύρεση του
συνόλου με τις λανθασμένες απαντήσεις είναι αυτές να είναι σχετικές με τη σωστή
απάντηση. Αυτό επιτυγχάνεται ακολουθώντας τα κατάλληλα μονοπάτια στον
εννοιολογικό χώρο.
Εδώ πρέπει να σημειωθεί ότι ερωτήσεις που σχετίζονται με λεπτομέρειες ή
υπολογισμούς δεν μπορούν να παραχθούν αυτόματα με αυτή την τεχνική γιατί αφενός
οι λεπτομέρειες δεν αποτελούν μέρος του περιγράμματος ενός μαθήματος και αφετέρου
ο εννοιολογικός χώρος δεν έχει τους απαραίτητους μηχανισμούς για υπολογισμούς.
Επίσης, όπως προαναφέρθηκε οι ερωτήσεις χαρακτηρίζονται από διάφορα επίπεδα
δυσκολίας. Κάθε φορά το επίπεδο δυσκολίας καθορίζεται από το βάθος του μονοπατιού
που επιλέγεται στον εννοιολογικό χώρο, δηλαδή πόσο μακριά από τη ρίζα βρίσκεται η
απάντηση της ερώτησης. Η δυνατότητα αυτή δίνεται από το γεγονός ότι πολλές
οντολογίες περιέχουν ταξινομίες. Τέλος, οι ασκήσεις που κατασκευάζονται με αυτή την
τεχνική δεν επιτρέπουν τη συμμετοχή και την ανακάλυψη γνώσης από τον ίδιο το
χρήστη.
37
ασκήσεων και ένας χώρος λύσεων μέσα στον οποίο θα περιορίζεται η απάντηση που
δίνει ο χρήστης. Παρακάτω θα δώσουμε μια σύντομη περιγραφή του συστήματος όπου
εφαρμόστηκε η τεχνική αυτή προκειμένου να την κατανοήσουμε καλύτερα. Στο Σχήμα
2 απεικονίζεται η αρχιτεκτονική του συστήματος.
Στην αρχιτεκτονική αυτή θα εστιάσουμε την προσοχή μας στα τρία επίπεδα. Το
πρώτο επίπεδο, το επίπεδο βάσης, αποτελείται από δύο ανεξάρτητα τμήματα: 1) Το
φυλλομετρητή ασκήσεων, ο οποίος δίνει πρόσβαση και εμφανίζει τις σελίδες οι οποίες
είναι ασκήσεις που επιτρέπουν τη συμμετοχή του χρήστη ή έγγραφα υπερκειμένου και
2) Μια βάση με τη θεωρία για το μάθημα που θα διδαχθεί (στην προκειμένη περίπτωση
για τη Θεωρία υπολογισμού).
Το μεσαίο επίπεδο, αποτελείται από ένα σύνολο προτύπων από ασκήσεις που
έχουν ήδη διαμορφωθεί. Τυπικά χαρακτηριστικά διαμορφωμένων χαρακτηριστικών
μιας άσκησης είναι τα πρότυπα διαλόγων ανάμεσα στο σύστημα και το χρήστη, το
φάσμα των διαθέσιμων εντολών και το σχήμα βαθμολογίας.
Το τελευταίο επίπεδο, το επίπεδο διανομής, έχει ως σκοπό να φτιάχνει σύνολα
από ασκήσεις που έχουν ήδη διαμορφωθεί προκειμένου να χρησιμοποιηθούν για κάποιο
σκοπό όπως μια διάλεξη.
Οι τεχνικές που χρησιμοποιούνται στο σύστημα αυτό είναι δύο, η μία παράγει
γρήγορα ασκήσεις τη στιγμή που ο χρήστης το απαιτεί και η άλλη προσφέρει ένα
πλήθος ασκήσεων από συλλογές που είναι ήδη καταχωρημένες στο σύστημα.
Στην πρώτη περίπτωση, υπάρχει μια γεννήτρια ασκήσεων η οποία παράγει
ασκήσεις που έχουν ίδια δομή αλλά διαφέρουν σε λεπτομέρειες. Μια διαδικασία που
ακολουθείται από τη γεννήτρια των ασκήσεων, είναι να παράγει πρώτα μια λύση της
επιθυμητής πολυπλοκότητας και στη συνέχεια κατασκευάζεται μια άσκηση η οποία έχει
ως λύση, τη λύση που παράχτηκε.
Στη δεύτερη περίπτωση, εφαρμόζεται μια τεχνική κατά την οποία προσφέρονται
στο χρήστη του συστήματος ασκήσεις οι οποίες ανήκουν σε συλλογές ασκήσεων που
είναι ήδη καταχωρημένες. Επίσης, δίνεται η δυνατότητα να παράγονται επιπλέον
συλλογές ασκήσεων από τις ήδη υπάρχουσες. Στο σύστημα υπάρχει εγκατεστημένο ένα
λεξικό το οποίο είναι ένωση ανεξάρτητων μεταξύ τους λεξιλογίων τα οποία έχουν
ασκήσεις της ίδιας δομής. Με τη χρήση του λεξικού δημιουργούνται έτσι αλυσίδες από
ασκήσεις με βάση τις προηγούμενες απαντήσεις που έχει δώσει ο χρήστης.
Συνοψίζοντας, η πρώτη τεχνική που χρησιμοποιείται στο σύστημα δίνει τη
δυνατότητα να παράγει ένα απεριόριστο πλήθος ασκήσεων διαφορετικού επιπέδου
38
δυσκολίας αν και λόγω του ότι οι ασκήσεις κατασκευάζονται τη στιγμή που το απαιτεί
ο χρήστης επηρεάζεται η απόδοσή του. Η δεύτερη τεχνική από την άλλη, είναι μια
συμβατική μέθοδος παραγωγής ασκήσεων που χρησιμοποιεί υλικό που είναι ήδη
εγκατεστημένο στο σύστημα.
39
Στη συνέχεια από το πλέγμα λέξεων που δημιουργείται επιλέγεται το μονοπάτι
που δίνει την πιο σωστή πρόταση με τη βοήθεια ενός στατιστικού εργαλείου εξαγωγής.
Το στατιστικό αυτό εργαλείο κατατάσσει τις πιθανές προτάσεις με βάση δεσμευμένες
πιθανότητες. Το μονοπάτι επιλέγεται από το στατιστικό εργαλείο υποθέτοντας ότι
γειτονικά ζεύγη λέξεων στο λεξιλόγιο (σημασιολογική συσχέτιση) θα δημιουργούν πιο
σωστές προτάσεις. Επίσης, ένα άλλο κριτήριο σύμφωνα με το οποίο επιλέγεται το
κατάλληλο μονοπάτι είναι γραμματικοί κανόνες που καθορίζουν τη σειρά εμφάνισης
των λέξεων που ανήκουν σε διαφορετικά μέρη του λόγου (συντακτική συσχέτιση). Οι
γραμματικοί κανόνες αντιστοιχούν μια είσοδο σε μια ενδιάμεση αναπαράσταση που
μπορεί να την επεξεργαστεί το στατιστικό εργαλείο εξαγωγής.
Η απόδοση ενός τέτοιου συστήματος εξαρτάται από το πόσο λεπτομερής θα
είναι η πληροφορία που είναι εγκατεστημένη στη γνωσιακή βάση και στις εισόδους του
γεγονός που περιορίζει την ευρωστία του.
Για να βελτιωθεί η απόδοση αντί να γίνεται ταξινόμηση στο πλέγμα των λέξεων,
το στατιστικό εργαλείο κατασκευάζει συντακτικά δέντρα (parse trees) και η ταξινόμηση
πλέον γίνεται πλέον βάση της πιθανότητας των δέντρων σε ένα σύνολο δέντρων, που
αναπαριστούν διαφορετικές προτάσεις για την ίδια είσοδο και αποκαλείται συντακτικό
δάσος (parse forest). Οι γραμματικοί κανόνες πλέον, αντιστοιχούν μια είσοδο σε ένα
συντακτικό δέντρο και όχι σε ένα πλέγμα λέξεων.
Οι γραμματικοί κανόνες δημιουργούνται από το σύστημα με βάση την είσοδο
την οποία και χρησιμοποιεί για να δημιουργήσει συντακτικές σχέσεις (syntactic
relations). Κάθε τέτοια σχέση αντιστοιχίζεται σε ένα κανόνα. Έτσι, το λεξικό πλέον
πρέπει να επιστρέφει εκτός από τη λέξη και το μέρος του λόγου που ανήκει.
Όλες οι τεχνικές που παρουσιάστηκαν παραπάνω έχουν εφαρμοστεί σε
εκπαιδευτικά συστήματα τα οποία ασχολούνται με θεματικές περιοχές όπως ανάλυση
ηλεκτρικών κυκλωμάτων, συστήματα πολυμέσων, θεωρία υπολογισμού, εκμάθηση
ξένης γλώσσας. Απ’ όσο γνωρίζουμε έως τώρα δεν έχει αναπτυχθεί κάποια τεχνική η
οποία να ασχολείται με παραγωγή ασκήσεων κατηγορηματικής λογικής πρώτης τάξεως
για τις ανάγκες διδασκαλίας της λογικής.
40
4 Σύστημα Παραγωγής Ασκήσεων-Προτάσεων
Κατηγορηματικής Λογικής
User Interface
Difficulty Estimator
41
¾ Δημιουργός τύπων: Δημιουργούνται τύποι χρησιμοποιώντας τα σύμβολα της
κατηγορηματικής λογικής, πάνω στους οποίους θα στηριχτεί η παραγωγή
προτάσεων.
¾ Δημιουργός λεξιλογίου: Δημιουργείται το λεξιλόγιο που περιέχει όλες τις
λέξεις που μπορούν να χρησιμοποιηθούν για να αναπαρασταθούν τα σύμβολα
των σταθερών, των κατηγορημάτων και των συναρτήσεων που εμφανίζονται
στους τύπους.
¾ Εκτιμητής δυσκολίας: Πρόκειται για ένα έμπειρο σύστημα το οποίο προτείνει
για κάθε τύπο που κατασκευάζει ο χρήστης ένα επίπεδο δυσκολίας βάση
κάποιων κανόνων.
¾ Βάση Προτάσεων: Η βάση προτάσεων περιέχει τις προτάσεις κατηγορηματικής
λογικής που παρουσιάζονται στους χρήστες του συστήματος. Οι καταχωρημένες
προτάσεις προέρχονται είτε από τον χρήστη του συστήματος είτε
δημιουργούνται από το ίδιο το σύστημα.
42
βέβαια, δεν αναπαριστούν μόνο το φυσικό κόσμο αλλά και πιο αφηρημένες έννοιες
όπως η κατηγορία, ρήματα (verbs).
43
Κάθε παράδειγμα που καταχωρείται για ένα συγκεκριμένο πρότυπο, τροφοδοτεί
με πληροφορία το σύστημα σχετικά με την κατηγορία λέξεων που ανήκει η κάθε λέξη
που χρησιμοποιήθηκε, το μέρος του λόγου που ανήκει (ουσιαστικό, ρήμα, επίθετο)
καθώς επίσης και αν το σύμβολο που αντικαταστάθηκε είναι κατηγόρημα ή σταθερά ή
συνάρτηση. Με τον τρόπο αυτό δημιουργείται μια ξεχωριστή γραμματική για κάθε
πρότυπο. Η γραμματική αυτή είναι ένα σύνολο από κανόνες που καθορίζουν για κάθε
σύμβολο του τύπου τις αποδεκτές λέξεις που μπορούν να το αντικαταστήσουν.
Για παράδειγμα, έστω ο απλός τύπος P(x) ⇒ Q(x,a). Στον τύπο αυτό υπάρχουν
τρία σύμβολα που μπορούν να αντικατασταθούν με λέξεις φυσικής γλώσσας, το
κατηγόρημα P, το κατηγόρημα Q και η σταθερά a. Έτσι, αν ο χρήστης έχει επιλέξει να
αντικαταστήσει το κατηγόρημα P με τη λέξη man (άνδρας) από την κατηγορία human
(άνθρωπος), το κατηγόρημα Q με τη λέξη eats (τρώει) από την κατηγορία human και τη
σταθερά a με τη λέξη apple (μήλο) από την κατηγορία fruits(φρούτα) τότε
δημιουργείται ο κάτωθι κανόνας:
Έτσι, δημιουργούνται για κάθε πρότυπο δύο δένδρα, ένα δέντρο συντακτικής
ανάλυσης και ένα δέντρο σημασιολογικής ανάλυσης. Το συντακτικό δέντρο για το
παράδειγμα θα έχει την ακόλουθη μορφή:
Sentence
44
Sentence
45
κάποια θεματική κατηγορία λέξεων και στη συνέχεια γίνεται από αυτή επιλογή
της λέξης που θα αντικαταστήσει το εκάστοτε σύμβολο.
β) Αυτόματα: Προϋποθέτει να έχει πραγματοποιηθεί το βήμα 3α τουλάχιστον
μία φορά. Το σύστημα επιλέγει τυχαία έναν κανόνα από τη γραμματική του
τύπου και στη συνέχεια αντικαθιστά κάθε σύμβολο χρησιμοποιώντας λέξεις που
ανήκουν στο ίδιο μέρος του λόγου από την ίδια θεματική κατηγορία με τη λέξη
που εισήγαγε ο χρήστης στο βήμα 3α.
4. Η πρόταση που δημιουργείται παρουσιάζεται στο χρήστη και εφόσον το
επιλέξει καταχωρείται στη βάση προτάσεων, αλλιώς πραγματοποιείται το βήμα
3β.
46
5 Προσδιορισμός Δυσκολίας Προτάσεων-Ασκήσεων
47
1. Αν το πλήθος των ποσοδεικτών είναι μικρότερο ή ίσο με ένα και το πλήθος των
συνδετικών «συνεπάγεται» είναι μηδέν και τότε ο βαθμός δυσκολίας είναι:
«Πολύ εύκολη» (Very Easy).
2. Αν υπάρχει ένα μόνο είδος ποσοδείκτη και το πλήθος του είναι μεγαλύτερο ή
ίσο με ένα και, το πλήθος του συνδετικού «συνεπάγεται» είναι μηδέν, τότε ο
βαθμός δυσκολίας είναι: «Εύκολη» (Easy).
3. Αν το πλήθος των ποσοδεικτών είναι μικρότερο ή ίσο με ένα, το πλήθος του
συνδετικού «συνεπάγεται» είναι ένα και το πλήθος των διαφορετικών
συνδετικών είναι έως και δύο, τότε ο βαθμός δυσκολίας είναι: «Εύκολη»
(Easy).
4. Αν υπάρχουν και τα δύο είδη ποσοδεικτών και το πλήθος του καθενός από
αυτούς είναι μεγαλύτερο ή ίσο με ένα και το πλήθος του συνδετικού
«συνεπάγεται» είναι μηδέν, τότε ο βαθμός δυσκολίας είναι: «Εύκολη» (Easy).
5. Αν υπάρχει ένα μόνο είδος ποσοδείκτη και το πλήθος του είναι μικρότερο ή ίσο
με ένα, το πλήθος του συνδετικού «συνεπάγεται» είναι μικρότερο ή ίσο με ένα
και το πλήθος των διαφορετικών λογικών συνδετικών είναι τρία, τότε ο βαθμός
δυσκολίας είναι: «Μεσαία Δυσκολία» (Medium).
6. Αν υπάρχει ένα μόνο είδος ποσοδείκτη και το πλήθος του είναι μεγαλύτερο από
ένα, το πλήθος του συνδετικού «συνεπάγεται» είναι μικρότερο ή ίσο με ένα και
το πλήθος των διαφορετικών λογικών συνδετικών είναι έως και δύο, τότε ο
βαθμός δυσκολίας είναι: «Μεσαία Δυσκολία» (Medium).
7. Αν υπάρχουν και τα δύο είδη ποσοδεικτών και το πλήθος καθενός από αυτούς
είναι μεγαλύτερο ή ίσο με ένα, το πλήθος του συνδετικού «συνεπάγεται» είναι
ίσο με ένα και το πλήθος των διαφορετικών λογικών συνδετικών είναι έως και
δύο, τότε ο βαθμός δυσκολίας είναι: «Μεσαία Δυσκολία» (Medium).
8. Αν το πλήθος των ποσοδεικτών είναι μικρότερο ή ίσο με ένα, το πλήθος του
συνδετικού «συνεπάγεται» είναι ίσο με ένα και το πλήθος το πλήθος των
διαφορετικών λογικών συνδετικών είναι μεγαλύτερο ή ίσο με τρία, τότε ο
βαθμός δυσκολίας είναι: «Δύσκολη» (Difficult).
9. Αν το πλήθος των ποσοδεικτών είναι μικρότερο ή ίσο με ένα, το πλήθος του
συνδετικού «συνεπάγεται» είναι ίσο με δύο και το πλήθος το πλήθος των
διαφορετικών λογικών συνδετικών είναι μικρότερο ή ίσο με τρία, τότε ο βαθμός
δυσκολίας είναι: «Δύσκολη» (Difficult).
48
10. Αν υπάρχουν και τα δύο είδη ποσοδεικτών και το πλήθος καθενός από αυτούς
είναι μεγαλύτερο ή ίσο με ένα, το πλήθος του συνδετικού «συνεπάγεται» είναι
ίσο με ένα και το πλήθος των διαφορετικών λογικών συνδετικών είναι
μικρότερο ή ίσο με τρία, τότε ο βαθμός δυσκολίας είναι: «Δύσκολη»
(Difficult).
11. Αν υπάρχουν και τα δύο είδη ποσοδεικτών και το πλήθος καθενός από αυτούς
είναι μεγαλύτερο ή ίσο με ένα, το πλήθος του συνδετικού «συνεπάγεται» είναι
ίσο με δύο και το πλήθος των διαφορετικών λογικών συνδετικών είναι
μικρότερο ή ίσο τρία, τότε ο βαθμός δυσκολίας είναι: «Δύσκολη» (Difficult).
12. Αν δεν ικανοποιείται κάποιος από τους παραπάνω κανόνες τότε ο βαθμός
δυσκολίας είναι: «Εξειδικευμένων Γνώσεων» (Expert).
13. Αν υπάρχουν και τα δύο είδη ποσοδεικτών ή το λογικό συνδετικό «ισοδυναμία»
σε έναν τύπο τότε ο βαθμός δυσκολίας αναπροσαρμόζεται από το σύστημα και
θα είναι ένα επίπεδο δυσκολίας παραπάνω από αυτό που προκύπτει με βάση
τους προηγούμενους κανόνες, εκτός αν ο βαθμός δυσκολίας είναι
«Εξειδικευμένων Γνώσεων» (Expert).
5.3 Αξιολόγηση
Το έμπειρο σύστημα που υλοποιήθηκε και περιλαμβάνει στη γνώση βάσης του τους
κανόνες που παρουσιάστηκαν στην προηγούμενη ενότητα αξιολογήθηκε όσον αφορά
την ορθότητά του αλλά και το χρόνο απόκρισής του. Τα πειράματα έγιναν
χρησιμοποιώντας ως είσοδο μια σειρά ασκήσεων που είναι καταχωρημένες στη βάση
του συστήματος που είναι ήδη υλοποιημένο και η δυσκολία τους έχει πιστοποιηθεί από
τον εμπειρογνώμονα-καθηγητή. Παρακάτω γίνεται παρουσίαση ενός δείγματος από
ασκήσεις από κάθε βαθμό δυσκολίας.
1ο Παράδειγμα:
Είσοδος: «πάπια(ντάφυ_ντακ)»
Έξοδος: «Πολύ Εύκολη».
Η άσκηση αυτή χαρακτηρίζεται ορθά πολύ εύκολη σύμφωνα με τον πρώτο κανόνα,
αφού δεν περιέχει ποσοδείκτες και το συνδετικό «συνεπάγεται».
49
2ο Παράδειγμα:
3ο Παράδειγμα:
4ο Παράδειγμα:
5ο Παράδειγμα:
50
Η άσκηση αυτή χαρακτηρίζεται με το ανώτατο επίπεδο δυσκολίας αφού ενεργοποιείται
ο ενδέκατος κανόνας αφού υπάρχουν και τα δύο είδη ποσοδεικτών και το πλήθος
καθενός από αυτούς είναι μεγαλύτερο ή ίσο με ένα, το πλήθος του συνδετικού
«συνεπάγεται» είναι ίσο με δύο και το πλήθος των διαφορετικών λογικών συνδετικών
είναι μικρότερο ή ίσο τρία. Επειδή όμως υπάρχει καθολικός ποσοδείκτης μπροστά από
τον υπαρξιακό ο βαθμός δυσκολίας αναπροσαρμόζεται και γίνεται «Εξειδικευμένων
Γνώσεων» σύμφωνα με τον τελευταίο κανόνα.
Από τα παραπάνω παραδείγματα φαίνεται κατά την προσωπική μας άποψη ότι
το έμπειρο σύστημα έχει πολύ υψηλό επιτυχίας όσον αφορά την ορθότητα των
αποφάσεων. Επίσης, ο χρόνος απόκρισής του κατά τη διάρκεια των πειραμάτων ήταν
πάρα πολύ μικρός της τάξης μερικών δευτερολέπτων. Τα ίδια αποτελέσματα
προέκυψαν και για το σύνολο των ασκήσεων της βάσης που χρησιμοποιήθηκε.
51
52
6 Διεπιφάνεια – Οδηγός Χρήσης
Το σύστημα δίνει τη δυνατότητα στο χρήστη να ενημερωθεί για τις λέξεις που
υπάρχουν στο λεξιλόγιο του συστήματος και θα χρησιμοποιηθούν ως κατηγορήματα,
αν επιλέξει από το κεντρικό μενού που εμφανίζεται στο πάνω μέρος της σελίδας στην
αριστερή πλευρά, την επιλογή «Predicates». Έτσι, εμφανίζονται στο χρήστη όλες οι
λέξεις που έχουν καταχωρηθεί ως τώρα για να αντικαθιστούν κατηγορήματα στους
τύπους κατά αλφαβητική σειρά, όπως φαίνεται και στην Εικόνα 1:
53
Ο χρήστης μπορεί εφόσον το επιθυμεί να ενημερωθεί για τις λέξεις που
υπάρχουν στο λεξιλόγιο ανά κατηγορία λέξεων, αρκεί να επιλέξει από το αριστερό
υπομενού «Per Category», όπως φαίνεται παρακάτω:
54
Εικόνα 3: Καταχώρηση νέας λέξης-κατηγορήματος
55
Εικόνα 4: Διαγραφή λέξης-κατηγορήματος
Το σύστημα δίνει τη δυνατότητα στο χρήστη να ενημερωθεί επίσης για τις λέξεις
που υπάρχουν στο λεξιλόγιο του συστήματος και θα χρησιμοποιηθούν ως σταθερές αν
επιλέξει από το κεντρικό μενού που εμφανίζεται στο πάνω μέρος της σελίδας στην
αριστερή πλευρά, την επιλογή «Constants». Έτσι, εμφανίζονται στο χρήστη όλες οι
λέξεις που έχουν καταχωρηθεί ως τώρα για να αντικαθιστούν σταθερές στους τύπους
κατά αλφαβητική σειρά, όπως φαίνεται και στην Εικόνα 5:
56
Εικόνα 5: Εμφάνιση των λέξεων-σταθερών αλφαβητικά
57
Ο χρήστης μπορεί εφόσον το επιθυμεί να ενημερωθεί για τις λέξεις που
υπάρχουν στο λεξιλόγιο ανά κατηγορία λέξεων, αρκεί να επιλέξει από το αριστερό
υπομενού «Per Category», όπως φαίνεται στο σχήμα 6.
Ο χρήστης για να καταχωρήσει μια καινούρια λέξη-σταθερά στο λεξικό θα
πρέπει να επιλέξει από το αριστερό υπομενού «New Constant». Έτσι, εμφανίζεται μια
φόρμα μέσω της οποίας θα εισάγει τις λέξεις που θα χρησιμοποιηθούν ως σταθερές.
Κάθε μια λέξη που θέλει να εισάγει ο χρήστης στο λεξικό θα πρέπει να την
πληκτρολογήσει στο πεδίο «Constant». Επιπλέον, θα πρέπει να επιλέξει την κατηγορία
λέξεων που ανήκει η λέξη από το πεδίο «Category» και αν δεν υπάρχει μια που να τον
ικανοποιεί, να δημιουργήσει μια νέα γράφοντας το όνομα της νέας κατηγορίας στο
πεδίο «Make New Category». Επίσης, ο χρήστης θα πρέπει να επιλέξει το μέρος του
λόγου που ανήκει η λέξη από το πεδίο «Syntactic Category». Για τις σταθερές δεν
υπάρχει το πεδίο «Arity» όπου ο χρήστης επιλέγει την τάξη γιατί οι σταθερές δεν έχουν
τάξη, όπως συμβαίνει στα κατηγορήματα και τις συναρτήσεις. Όταν κάνει κλικ με το
ποντίκι στο κουμπί «Submit» η λέξη καταχωρείται στο λεξιλόγιο του συστήματος. Στην
Εικόνα 7 φαίνεται η φόρμα καταχώρησης της νέας λέξης:
58
Τέλος, το σύστημα δίνει τη δυνατότητα στο χρήστη να διαγράψει κάποια λέξη-
σταθερά από το λεξιλόγιο αν επιλέξει από το αριστερό υπομενού «Remove Constant».
Στην περίπτωση αυτή εμφανίζονται όλες οι λέξεις του λεξιλογίου αλφαβητικά και με το
πάτημα του κουμπιού «Delete» που υπάρχει δίπλα από κάθε λέξη, η αντίστοιχη λέξη
διαγράφεται, όπως φαίνεται από την εικόνα που ακολουθεί:
Το σύστημα δίνει τη δυνατότητα στο χρήστη να ενημερωθεί τέλος για τις λέξεις
που υπάρχουν στο λεξιλόγιο του συστήματος και θα χρησιμοποιηθούν ως συναρτήσεις,
αν επιλέξει από το κεντρικό μενού που εμφανίζεται στο πάνω μέρος της σελίδας στην
αριστερή πλευρά, την επιλογή «Functions». Έτσι, εμφανίζονται στο χρήστη όλες οι
λέξεις που έχουν καταχωρηθεί ως τώρα για να αντικαθιστούν συναρτήσεις στους
τύπους κατά αλφαβητική σειρά, όπως φαίνεται και στην Εικόνα 9:
59
Εικόνα 9: Εμφάνιση των λέξεων-συναρτήσεων αλφαβητικά
60
Ο χρήστης μπορεί εφόσον το επιθυμεί να ενημερωθεί για τις λέξεις που
υπάρχουν στο λεξιλόγιο ανά κατηγορία λέξεων, αρκεί να επιλέξει από το αριστερό
υπομενού «Per Category», όπως φαίνεται στο σχήμα 10.
61
η λέξη καταχωρείται στο λεξιλόγιο του συστήματος. Στην Εικόνα 11 φαίνεται η φόρμα
καταχώρησης της νέας λέξης:
Τέλος, το σύστημα δίνει τη δυνατότητα στο χρήστη να διαγράψει κάποια λέξη-
συνάρτηση από το λεξιλόγιο αν επιλέξει από το αριστερό υπομενού «Remove
Function». Στην περίπτωση αυτή εμφανίζονται όλες οι λέξεις του λεξιλογίου
αλφαβητικά και με το πάτημα του κουμπιού «Delete» που υπάρχει δίπλα από κάθε
λέξη, η αντίστοιχη λέξη διαγράφεται, όπως φαίνεται από την εικόνα που ακολουθεί:
62
Εικόνα 13: Διαθέσιμοι Τύποι
Δίπλα σε κάθε τύπο εμφανίζεται ένα κουμπί με το όνομα «Give Example». Όταν
ο χρήστης κάνει κλικ σε αυτό το κουμπί τότε εμφανίζονται δύο φόρμες για κάθε ένα
από τα κατηγορήματα, τις σταθερές και τις συναρτήσεις που εμφανίζονται στον τύπο
που επέλεξε ο χρήστης. Η πρώτη φόρμα εμφανίζει τις διαθέσιμες κατηγορίες λέξεων
αντίστοιχα για κάθε κατηγόρημα, σταθερά ή συνάρτηση. Όταν ο χρήστης επιλέξει μια
κατηγορία λέξεων τότε στη δεύτερη φόρμα εμφανίζονται οι λέξεις που ανήκουν σε
αυτή την κατηγορία. Από τη φόρμα αυτή ο χρήστης επιλέγει μια λέξη η οποία θα
αντικαταστήσει το κατηγόρημα ή τη σταθερά ή τη συνάρτηση. Όταν ολοκληρωθεί η
διαδικασία αυτή, δηλαδή έχουν επιλεγεί λέξεις για όλα τα σύμβολα που επιδέχονται
αντικατάσταση (κατηγορήματα, σταθερές, συναρτήσεις) τότε ο χρήστης κάνοντας κλικ
στο κουμπί «Store» αποθηκεύει το παράδειγμα που έδωσε στη βάση. Με την ακόλουθη
διαδικασία επομένως, δημιουργείται μια νέα πρόταση κατηγορηματικής λογικής
63
ακολουθώντας τον τύπο που επέλεξε ο χρήστης. Η διαδικασία που περιγράφηκε
φαίνεται στην Εικόνα 14:
64
διαθέσιμα σύμβολα που αναπαριστούν τις μεταβλητές (x, y, z, w, r, s) και μια φόρμα με
όλους διαθέσιμους χαρακτήρες που αναπαριστούν τις σταθερές (a, b, c, d, e, t).
Προκειμένου να δημιουργηθούν όμως οι τύποι σύμφωνα με το συντακτικό της
κατηγορηματικής λογική χρειάζονται τα λογικά συνδετικά, οι ποσοδείκτες οι δύο
παρενθέσεις, αριστερή και δεξιά, και το κόμμα. Για το λόγο αυτό υπάρχει μια φόρμα
που εμφανίζει όλα τα λογικά συνδετικά ( ∧,∨, ¬, →, ↔ ), μια φόρμα που εμφανίζει τους
δύο ποσοδείκτες ( ∀, ∃ ) και τέλος μια φόρμα που εμφανίζει τα σύμβολα ομαδοποίησης
(Group Symbols) το κόμμα και τις παρενθέσεις («,» «(», «)» ).
Κάθε σύμβολο που επιλέγει ο χρήστης από τις διαθέσιμες φόρμες καταγράφεται
σύμφωνα με τη σειρά επιλογής στο πεδίο «Formula». Στο πεδίο αυτό ο χρήστης μπορεί
να πληκτρολογήσει και απευθείας από το πληκτρολόγιο τον τύπο που επιθυμεί και να
χρησιμοποιήσει για τα σύμβολα τα οποία δεν μπορεί να πληκτρολογήσει τις
υπάρχουσες φόρμες. Στη συνέχεια, ο χρήστης έχει τη δυνατότητα να επιλέξει
χειρωνακτικά το βαθμό δυσκολίας του τύπου ή να κάνει κλικ στο κουμπί
«AutoSuggest» ώστε το σύστημα να προτείνει ένα βαθμό δυσκολίας. Να σημειωθεί ότι
65
για λόγους αξιοπιστίας, το σύστημα ενημερώνει τον χρήστη τους λόγους για τους
οποίους έχει επιλέξει το συγκεκριμένο βαθμό δυσκολίας. Εφόσον, τεθεί και ο βαθμός
δυσκολίας του τύπου με τον ένα ή τον άλλο τρόπο ο χρήστης μπορεί να τον
καταχωρήσει στο σύστημα αν κάνει κλικ στο κουμπί «Submit». Αυτά που
αναφέρθηκαν παραπάνω φαίνονται και στην Εικόνα 15:
Επιπλέον, ο χρήστης έχει τη δυνατότητα να δει όλους τους διαθέσιμους τύπους
ανά επίπεδο δυσκολίας, αρκεί να επιλέξει από το αριστερό υπομενού «Per Level», όπως
φαίνεται στην Εικόνα 16:
66
Εικόνα 17: Διαγραφή Τύπου
67
Exercises» που βρίσκεται δίπλα σε κάθε τύπο δημιουργείται μια καινούρια πρόταση-
άσκηση. Ο χρήστης στη συνέχεια επιλέγει αν η άσκηση αυτή είναι σωστή να κάνει κλικ
στο κουμπί «Submit» ώστε να καταχωρηθεί στο σύστημα αλλιώς κάνει κλικ στο κουμπί
«More» ώστε να δημιουργηθεί μια νέα πρόταση. Όσα προαναφέρθηκαν φαίνονται στην
Εικόνα 18:
68
7 Θέματα Υλοποίησης
Στο κεφάλαιο αυτό θα γίνει αναφορά στις τεχνολογίες που χρησιμοποιήθηκαν
για να υλοποιηθεί το σύστημα και τους περιορισμούς που αντιμετωπίστηκαν.
2. Η γλώσσα css.
Η γλώσσα css χρησιμοποιήθηκε για τον έλεγχο της εμφάνισης ενός εγγράφου. Η
γλώσσα αυτή δεν υποστηρίζεται από όλους τους φυλλομετρητές (browsers). Συνεπώς,
ενδέχεται οι ιστοσελίδες που απαρτίζουν το σύστημα να μην εμφανίζονται σωστά σε
άλλους φυλλομετρητές (όπως ο Internet Explorer της εταιρείας Microsoft) εκτός του
Mozilla Firefox που χρησιμοποιήθηκε κατά την υλοποίηση.
69
3. Η γλώσσα Mysql.
Η γλώσσα για να κατασκευαστεί η βάση δεδομένων που χρησιμοποιήθηκε για
να υποστηρίξει το σύστημα είναι η Mysql. Η Mysql έχει δυσκολία όσον αφορά τη
συντήρηση και επίσης έχει περιορισμένες δυνατότητες όσον αφορά την ανάκτηση
δεδομένων, την ακεραιότητα και την αποθήκευση των δεδομένων.
4. Η τεχνολογία AJAX.
Η ανάπτυξη της εφαρμογής χρησιμοποιώντας σε πολλά σημεία AJAX απαίτησε
περισσότερο χρόνο λόγω των πολλών εμπλεκόμενων τεχνολογιών. Επίσης, τίθενται
ζητήματα ασφαλείας καθώς πολλά είναι τα αναπάντητα ερωτήματα που αφήνει αυτή η
τεχνολογία στα θέματα αυτά. Επίσης ένα σχετικά σημαντικό πρόβλημα, είναι ότι ο
AJAX υποστηρίζεται μόνο από φυλλομετρητές οι οποίοι υποστηρίζουν πλήρως
JavaScript με έμφαση στο XMLHttpRequest αντικείμενο. Οπότε μπορεί να υπάρχουν
επισκέπτες που να έχουν παλιότερους φυλλομετρητές και έτσι να μην μπορούν να δουν
την εφαρμογή.
5. Η γλώσσα Javascript.
Η γλώσσα αυτή εκτελείται απευθείας στην πλευρά του χρήστη οπότε τα
αντικείμενα που χειρίζεται μέσα στον κώδικα της εφαρμογής φορτώνονται τελευταία με
αποτέλεσμα τα μηνύματα που εμφανίζονται στους χρήστες όταν έχουν κάνει κάποιο
λάθος να φορτώνονται πριν ολοκληρωθεί η εμφάνιση ολόκληρης της ιστοσελίδας. Στα
υπόλοιπα σημεία του κώδικα που χρησιμοποιήθηκε δεν εμφάνισε ιδιαίτερα
προβλήματα.
70
8 Συμπεράσματα – Προοπτικές
Ο αλγόριθμος εύρεσης της δυσκολίας μιας άσκησης που προτάθηκε στο πλαίσιο
αυτής της εργασίας εφαρμόστηκε αποτελεσματικά σε μια σειρά ασκήσεων που είναι
καταχωρημένες στη βάση του συστήματος που είναι ήδη υλοποιημένο. Ωστόσο θα
πρέπει να πραγματοποιηθούν περαιτέρω πειράματα σε διάφορες συλλογές ασκήσεων
που παρέχονται στο διαδίκτυο ή που θα δημιουργήσει ο ίδιος ο καθηγητής προκειμένου
να αποκτηθεί ακόμα καλύτερη άποψη για τις επιδόσεις της διαδικασίας. Βελτιώσεις και
επεκτάσεις μπορούν να πραγματοποιηθούν σε διάφορα μέρη του συστήματος και
αφορούν τόσο την υλοποίηση του (π.χ. νέες τεχνολογίες που μπορούν να υιοθετηθούν)
όσο και την αλγοριθμική σχεδίαση με την χρήση πιο αποδοτικών τεχνικών.
Επίσης, όσον αφορά στη μέθοδο εύρεσης της δυσκολίας μιας άσκησης θα
μπορούσε να εμπλουτιστεί και με άλλα κριτήρια, όπως ο χρόνος που χρειάζονται οι
μαθητές για να απαντήσουν σε μια άσκηση. Παράλληλα, θα μπορούσε να δοθεί ένα
σύνολο ασκήσεων στους μαθητές ώστε να χαρακτηρίσουν μόνοι τους το πόσο δύσκολη
τους φαίνεται μια άσκηση. Αυτό σε συνδυασμό με το προφίλ κάθε μαθητή είναι
παράγοντες που θα μπορούσαν να ληφθούν υπόψη κατά τη διάρκεια υλοποίησης ενός
αλγορίθμου.
Όσον αφορά τον τρόπο με τον οποίο δημιουργείται η γραμματική που
αντιστοιχεί σε κάθε τύπο, θα ήταν πολύ ενδιαφέρον τα παραδείγματα που
χρησιμοποιούνται για την εξαγωγή των κανόνων να προέρχονται από διάφορες
τοποθεσίες του Παγκόσμιου Ιστού, οι οποίες έχουν κάποιο είδος αξιοπιστίας όσον
αφορά την ποιότητα του περιεχομένου τους. Το σύστημα δηλαδή να μετατρέπει τις
προτάσεις αυτές σε τύπους και στη συνέχεια να δημιουργούνται οι γραμματικοί
κανόνες. Πρόκληση στο συγκεκριμένο ζήτημα είναι το σύστημα να αποκτήσει τη
δυνατότητα να παράγει αυτόματα τύπους με τη βοήθεια γραμματικών κανόνων.
Στο σύστημα που υλοποιήθηκε η παραγωγή ασκήσεων γίνεται με
αντικατάσταση μιας λέξης με λέξεις που ανήκουν στην ίδια κατηγορία λέξεων. Αυτή η
απόφαση λήφθηκε γιατί θα δημιουργούνταν ένας τεράστιος όγκος από προτάσεις αν
δημιουργούνταν όλοι οι συνδυασμοί λέξεων και το σύστημα θα οδηγούνταν στην
κατάρρευση. Το πρόβλημα αυτό θα μπορούσε να αντιμετωπιστεί με την ανάπτυξη ενός
πιθανοτικού αλγορίθμου. Θα μπορούσε να ανατεθούν πιθανότητες στις λέξεις οι οποίες
να δηλώσουν τη σημασιολογική συσχέτιση των λέξεων μεταξύ τους. Έτσι, όταν
71
πρόκειται να αντικατασταθεί μια λέξη ο αλγόριθμος να επιλέγει λέξεις από το λεξιλόγιο
που έχουν μεγαλύτερη σημασιολογική συσχέτιση.
Τέλος, στην παρούσα υλοποίηση δεν αποθηκεύεται πληροφορία για τον αριθμό
κάθε λέξης (ενικός ή πληθυντικός αριθμός) στο λεξικό. Συνεπώς, το λεξικό θα
μπορούσε να αναδιαμορφωθεί και να περιέχει λέξεις οι οποίες διαφοροποιούνται και με
βάση τον αριθμό που βρίσκονται.
72
9 Βιβλιογραφία
[1]. Balík, M., Jelínek, I. Towards Semantic Web-based Adaptive Hypermedia Model. In
[2]. Βλαχάβας, Ι., Κεφαλάς, Π., Βασιλειάδης, Ν., Ρεφανίδης, Ν., Κόκκορας, Φ. και
Interaction, Ten Year Anniversary Issue. pp.87-110. Alfred Kobsa edition, 2002.
[4]. Butz, C.J., Hua, S., Maguire, R.B. A Web-Based Intelligent Tutoring System for
Conference on Web Intelligence, pp. 159 – 165. IEEE Computer Society, 2004.
www.doc.ic.ac.uk/~sgc/teaching/v231/lecture6.ppt.
international workshop on adaptivity, personalization & the semantic web. pp. 11-
[7]. De Bra, P., Aerts, A., Berden, B., De Lange, B., Rousseau, B., Santic, T., Smits, T.,
73
[9]. Fischer, S., Steinmetz, R. Automatic Creation of Exercises in Adaptive Hypermedia
[10]. Frasson, C., Gathier, G. (1990). Intelligent Tutoring Systems-At the cross-roads
Corporation.
[11]. Gamallo, P., Agustini, A., Quaresma, P. and Lopes, G. Using Semantic Word
Tutoring Systems.
[14]. Huang, C., Liu, M., Chu, S., Cheng, C. Application of Machine Learning
[16]. Lucas, P. & van der Gaag, L. (1991). Principles of Expert Systems. Addison-
Wesley.
74
[17]. Μητακίδης, Γ.(1992). Από τη Λογική στο Λογικό Προγραμματισμό και την
[18]. Morais, C., Menezes, P., and Reis R. Modelling for Automatic Generation of
and Computer Education, 2000, São Paulo. Cooperative Network for Engineering
and Computer Education Development : proceedings. v.1. pp. 100 – 105. São Paulo:
SENAC/SP, 2000.
www.aegean.gr/culturaltec/daradoumis/4PLR126/03-educational-adaptations.ppt.
www.csd.uoc.gr/~hy180/08_spring/handouts/l1.pdf.
[21]. Polya, G. (1945). How to solve it. A New Aspect of Mathematical Method.
Education System for Predicate Logic", Proceedings of the 4th IEEE ICALT-2004,
75