You are on page 1of 76

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ

ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ
ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

∆ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

ΣΤΑ ΠΛΑΙΣΙΑ ΤΟΥ ΜΕΤΑΠΤΥΧΙΑΚΟΥ


∆ΙΠΛΩΜΑΤΟΣ ΕΙ∆ΙΚΕΥΣΗΣ

«ΕΠΙΣΤΗΜΗ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ»

ΤΙΤΛΟΣ: «Αυτόματη Παραγωγή Ασκήσεων για


Διδασκαλία της Λογικής ως Γλώσσας
Αναπαράστασης Γνώσης»

ΠΟΛΙΤΟΠΟΥΛΟΥ ΒΑΣΙΛΙΚΗ

Τριμελής Επιτροπή: Ι. Χατζηλυγερούδης

Ι. Γαροφαλάκης

Χ.Μακρής

ΠΑΤΡΑ, ΣΕΠΤΕΜΒΡΙΟΣ 2008


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

Στη συνέχεια θα ήθελα να ευχαριστήσω όλους εκείνους οι οποίοι με βοήθησαν ώστε να


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

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

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
Εικόνες

Εικόνα 1: Εμφάνιση των λέξεων-κατηγορημάτων αλφαβητικά .................................... 53


Εικόνα 2: Εμφάνιση των λέξεων-κατηγορημάτων ανά κατηγορία................................ 54
Εικόνα 3: Καταχώρηση νέας λέξης-κατηγορήματος ..................................................... 55
Εικόνα 4: Διαγραφή λέξης-κατηγορήματος ................................................................... 56
Εικόνα 5: Εμφάνιση των λέξεων-σταθερών αλφαβητικά .............................................. 57
Εικόνα 6: Εμφάνιση των λέξεων-σταθερών ανά κατηγορία .......................................... 57
Εικόνα 7: Καταχώρηση νέας λέξης-σταθεράς ............................................................... 58
Εικόνα 8: Διαγραφή λέξης-σταθεράς ............................................................................. 59
Εικόνα 9: Εμφάνιση των λέξεων-συναρτήσεων αλφαβητικά ........................................ 60
Εικόνα 10: Εμφάνιση των λέξεων-συναρτήσεων ανά κατηγορία.................................. 60
Εικόνα 11: Καταχώρηση νέας λέξης-συνάρτησης ......................................................... 61
Εικόνα 12: Διαγραφή λέξης-συνάρτησης....................................................................... 62
Εικόνα 13: Διαθέσιμοι Τύποι ......................................................................................... 63
Εικόνα 14: Δημιουργία νέου παραδείγματος ................................................................. 64
Εικόνα 15: Δημιουργία νέου τύπου................................................................................ 65
Εικόνα 16: Διαθέσιμοι Τύποι ανά επίπεδο δυσκολίας ................................................... 66
Εικόνα 17: Διαγραφή Τύπου .......................................................................................... 67
Εικόνα 18: Δημιουργία Ασκήσεων ................................................................................ 68

7
Σχήματα

Σχήμα 1: Η Αρχιτεκτονική του Ευφυούς Συστήματος Διδασκαλίας ............................. 21


Σχήμα 2: Αρχιτεκτονική Συστήματος ............................................................................ 37
Σχήμα 3: (Πλέγμα Λέξεων) Word Lattice...................................................................... 39
Σχήμα 4: Αρχιτεκτονική συστήματος που υλοποιήθηκε................................................ 41
Σχήμα 5: Συντακτικό δέντρο κανόνα ............................................................................. 44
Σχήμα 6: Σημασιολογικό δέντρο κανόνα ....................................................................... 45

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).

1.2 Εκπαιδευτικά Συστήματα Εξατομικευμένης Μάθησης


Βασισμένα στον Ιστό

Η εκπαίδευση που βασίζεται στον ιστό (web-based education - WBE) αποτελεί


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

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Σ) είναι ένα πρόγραμμα υπολογιστή το οποίο
επιδεικνύει νοήμονα συμπεριφορά σε συγκεκριμένους τομείς και διαδικασίες, ανάλογη
ενός ανθρώπου εμπειρογνώμονα με ειδικότητα στον ίδιο τομέα. Κάθε έμπειρο σύστημα
απαιτεί εμπειρική γνώση ανεξάρτητα από το σκοπό για τον οποίο χρησιμοποιείται. Η
εμπειρία δεν είναι απλώς η γνώση ή η εκπαίδευση πάνω σε ένα συγκεκριμένο τομέα
εργασίας ή επιστήμης, αλλά επιπλέον περιλαμβάνει ένα σύνολο εξειδικευμένων
ικανοτήτων που έχουν αποκτηθεί με κόπο και σε μεγάλο χρονικό διάστημα για ένα
τελείως συγκεκριμένο σκοπό.
Επομένως, έμπειρο σύστημα είναι κάθε πρόγραμμα υπολογιστή το οποίο
κωδικοποιεί και χειρίζεται τη γνώση και τη συλλογιστική ενός ανθρώπου-ειδικού σε
έναν εξειδικευμένο τομέα, με σκοπό την επίλυση προβλημάτων ή/και την παροχή
συμβουλών στον εν λόγω τομέα.
Δύο είναι οι τρόποι με τους οποίους μπορεί να χρησιμοποιηθεί ένα έμπειρο
σύστημα. Ο πρώτος είναι να χρησιμοποιείται από έναν άνθρωπο μη-ειδικό, οπότε θα
παρέχει λύσεις σε συγκεκριμένα προβλήματα που τίθενται, αντικαθιστώντας τον
άνθρωπο μη-ειδικό, εξομοιώνοντας την ικανότητα λήψης αποφάσεων εκ μέρους του. Ο
δεύτερος τρόπος χρήσης ενός έμπειρου συστήματος είναι συμβουλευτικός. Ένας
άνθρωπος ειδικός, ο οποίος καλείται να πάρει μια απόφαση συμβουλεύεται το έμπειρο
σύστημα και με τον τρόπο αυτό παίρνει καλύτερες αποφάσεις, βελτιώνοντας την
παραγωγικότητά του.

1.3.1 Χαρακτηριστικά Έμπειρων Συστημάτων

Τα έμπειρα συστήματα πρέπει να έχουν τα ακόλουθα χαρακτηριστικά [16]:


Επεξήγηση και Αιτιολόγηση της πορείας συλλογισμού. Τα έμπειρα συστήματα
πρέπει να επεξηγούν τη συλλογιστική πορεία που ακολούθησαν για την εύρεση της
λύσης στην οποία κατέληξαν. Δεν αρκεί μόνο μια απλή αναφορά μιας λύσης αλλά θα
πρέπει να τεκμηριώνεται με τον ίδιο τρόπο που ένας άνθρωπος-ειδικός θα τεκμηρίωνε
τη δική του απόφαση. Με αυτό τον τρόπο αυξάνεται η εμπιστοσύνη του χρήστη προς το
σύστημα.

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

1.3.2 Πλεονεκτήματα και Μειονεκτήματα Έμπειρων Συστημάτων

Ένα από τα πλεονεκτήματα των έμπειρων συστημάτων σε σχέση με τον


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

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

1.3.3 Αρχιτεκτονική Έμπειρων Συστημάτων

Ο πυρήνας ενός έμπειρου συστήματος αποτελείται από δύο μέρη: τη βάση


γνώσης και το μηχανισμό εξαγωγής συμπερασμάτων. Ο διαχωρισμός αυτός γίνεται
ώστε να υπάρχει ευκολία προσθήκης, αφαίρεσης ή τροποποίησης της γνώσης. Έτσι, με
κατάλληλη αλλαγή της γνώσης μόνο του συστήματος και διατήρηση όλων των
υπόλοιπων συνιστωσών, είναι δυνατόν να εκτελεί διαφορετική λειτουργία.
Βάση Γνώσης (Knowledge Base). Η βάση γνώσης περιέχει όλη την
εμπειρογνωμοσύνη του ανθρώπου-ειδικού που χρησιμοποιήθηκε κατά τη δημιουργία
του έμπειρου συστήματος. Η πιο συνηθισμένη μορφή αναπαράστασης της γνώσης είναι
οι κανόνες. Οι κανόνες αυτοί έχουν τη μορφή «Αν... Τότε ...» (If… Then…).
Ο μηχανισμός εξαγωγής συμπερασμάτων (Inference Engine): Είναι το τμήμα του
πυρήνα το οποίο είναι υπεύθυνο για το χειρισμό της βάσης γνώσης και την εξαγωγή
συμπερασμάτων από αυτή. Ο μηχανισμός εξαγωγής συμπερασμάτων χωρίζεται σε δύο
μέρη, το διερμηνέα (interpreter) και το χρονοπρογραμματιστή (scheduler). Ο
διερμηνέας ασχολείται με το χειρισμό της υπάρχουσας γνώσης και με την παραγωγή
νέας ενώ ο χρονοπρογραμματιστής αποφασίζει πότε και με ποια σειρά θα
χρησιμοποιηθούν τα διάφορα στοιχεία της βάσης γνώσης επιλύοντας το πρόβλημα
σύγκρουσης (conflict) των κανόνων μεταξύ τους. Το πρόβλημα της σύγκρουσης
υφίσταται όταν ικανοποιούνται ταυτόχρονα οι συνθήκες δύο ή περισσοτέρων κανόνων.
Λύση δίνεται από διάφορες στρατηγικές επίλυσης συγκρούσεων οι οποίες αποφασίζουν
ποιος κανόνας θα εφαρμοστεί.

18
1.4 Ασκήσεις και Εκπαιδευτικά Συστήματα

Σύμφωνα με τον Polya [21], μια από τις σημαντικότερες εργασίες που έχει να
εκτελέσει ένας καθηγητής είναι να βοηθά τους μαθητές του. Η εργασία αυτή δεν είναι
τόσο εύκολη, απαιτεί χρόνο, πρακτική, αφοσίωση και σωστές αρχές. Η ολοένα όμως
μεγαλύτερη αύξηση του λόγου φοιτητή προς καθηγητή που παρατηρείται, συνεπάγεται
αύξηση του διδακτικού έργου. Κομμάτι του διδακτικού έργου, ειδικά σε θεματικές
περιοχές όπου η γνώση είναι δομημένη με μαθηματικό τρόπο σημαντικό ρόλο στην
κατανόηση της θεωρίας παίζουν οι ασκήσεις.
Κάθε χρόνο οι εκπαιδευτικοί πρέπει να ανανεώνουν τις ασκήσεις που δίνονται
στα πλαίσια του μαθήματος. Αυτό οδηγεί σε μια διαδικασία ανανέωσης και των ιδίων
αλλά αποτρέπει και φαινόμενα αντιγραφής από τους φοιτητές. Σε αυτό συντελεί και το
γεγονός ότι κάθε χρόνο είναι διαφορετικές οι ανάγκες των φοιτητών που απευθύνονται,
αφού πρόκειται για διαφορετικά άτομα με διαφορετικό υπόβαθρο. Έτσι, για να είναι
επιτυχημένο το διδακτικό έργο οι ασκήσεις που δίνονται θα πρέπει να προσαρμόζονται
στις ανάγκες του ακροατηρίου.
Οι εκπαιδευτικοί προκειμένου να καλύψουν όσο γίνεται περισσότερο τις
ιδιαίτερες ανάγκες των φοιτητών χρησιμοποιούν πολλές μεθόδους εκπαίδευσης και
σπαταλούν αρκετό χρόνο για την αναζήτηση νέων ασκήσεων από διάφορα βιβλία ή για
την κατασκευή ασκήσεων από τους ίδιους. Συνεπώς, κύρια απαίτηση των
εκπαιδευτικών από την τεχνολογία είναι να λειτουργεί ως ένα εργαλείο για να κάνουν
πιο εύκολα και καλύτερα τη δουλειά τους, αρκεί να εξασφαλίζεται η ευχρηστία και να
απαιτείται από αυτούς η λιγότερη δυνατή εργασία και γνώση πάνω σε αυτή. Ένα
εκπαιδευτικό σύστημα για το οποίο οι εκπαιδευτικοί βιώνουν την ενασχόλησή τους με
αυτό σαν εχθρό που έρχεται να τους επιφορτίσει με επιπλέον κόπο και ευθύνες έχει
αποτύχει ολοκληρωτικά.
Από την πλευρά των φοιτητών, είναι έντονη η ανάγκη για πρωτότυπες ασκήσεις
και όσο γίνεται πιο διαφορετικές. Επίσης, έχουν την ανάγκη πολλές φορές να
συμμετέχουν και οι ίδιοι στη διαμόρφωση του μαθήματος προτείνοντας δικές τους
ασκήσεις. Το αίτημα για ποικιλία ασκήσεων γίνεται ακόμα πιο επιτακτικό όταν
πρόκειται για θεματικές περιοχές όπου η θεωρία είναι δυσνόητη. Οι ασκήσεις επομένως
που προσφέρει ένα εκπαιδευτικό σύστημα θα πρέπει αφενός να προκαλούν το φοιτητή
και αφετέρου να προσφέρουν αποδοτική εκπαίδευση. Για να επιτευχθούν τα παραπάνω,
το εκπαιδευτικό σύστημα πρέπει να προσφέρει ασκήσεις κλιμακούμενης δυσκολίας

19
γιατί αν ένας φοιτητής δίνει σωστές απαντήσεις σε ασκήσεις συγκεκριμένης δυσκολίας,
δεν είναι αποδοτικό το σύστημα να του προσφέρει ξανά ασκήσεις ίδιας δυσκολίας.
Επίσης, στην περίπτωση που ένας φοιτητής δεν απαντά σωστά σε ασκήσεις
συγκεκριμένης δυσκολίας τότε το σύστημα θα πρέπει να του προσφέρει πιο εύκολες
ασκήσεις.
Ειδικά, σε εκπαιδευτικά συστήματα εξατομικευμένης μάθησης [12] οι
απαιτήσεις είναι ακόμα μεγαλύτερες αφού κάθε εκπαιδευόμενος αντιμετωπίζεται
χωριστά. Από τις τεχνολογίες που χρησιμοποιούνται σε τέτοιου είδους συστήματα και
παρουσιάστηκαν συνοπτικά σε προηγούμενη ενότητα, εύκολα συμπεραίνει κανείς ότι η
αξιολόγηση της γνώσης των εκπαιδευομένων αποτελεί μείζον ζήτημα. Συνεπώς, αν
λάβουμε υπόψη ότι η αξιολόγηση του επιπέδου γνώσης των μαθητών γίνεται κατά
κύριο λόγο μέσω του μαθησιακού υλικού που τους προσφέρεται συμπεραίνουμε την
αναγκαιότητα ύπαρξης μιας μεγάλης ποικιλίας ασκήσεων που αποτελούν μέρος του
μαθησιακού υλικού.

1.5 Σύστημα Διδασκαλίας Τεχνητής Νοημοσύνης


Στην ενότητα αυτή θα δώσουμε μια σύντομη περιγραφή του εκπαιδευτικού
συστήματος που έχει ήδη υλοποιηθεί και χρησιμοποιείται για τη διδασκαλία της
λογικής στα πλαίσια του μαθήματος Τεχνητής Νοημοσύνης [24] .

1.5.1 Αρχιτεκτονική

Το σχήμα που ακολουθεί (Σχήμα 1) απεικονίζει τη βασική αρχιτεκτονική του


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

20
Σχήμα 1: Η Αρχιτεκτονική του Ευφυούς Συστήματος Διδασκαλίας

¾ Διεπιφάνεια Χρήστη: Η διεπιφάνεια χρήστη είναι υπεύθυνη για την


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

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

1.5.2 Θέματα και Ασκήσεις Κατηγορηματικής Λογικής

Το σύστημα που είναι ήδη υλοποιημένο παρέχει δυνατότητα μάθησης και εξάσκησης
σε θέματα κατηγορηματικής λογικής ως γλώσσας αναπαράστασης. Κάποιες από τις
παρεχόμενες ενότητες είναι οι εξής:
• Λεξιλόγιο
• Προτάσεις
• Μετατροπή μιας πρότασης φυσικής γλώσσας (ΦΓ) σε ΚΛ
• Μετατροπή μιας πρότασης ΚΛ σε προτασιακή μορφή (ΠΜ)
• Διαδικασία Εξαγωγής Συμπερασμάτων
Στην ενότητα «Λεξιλόγιο», ο εκπαιδευόμενος εξοικειώνεται με τις έννοιες:
‘σταθερά’, ‘κατηγόρημα’, ‘μεταβλητή’, ‘συνάρτηση’, ‘λογικά συνδετικά’ και
‘ποσοδείκτες’, που αποτελούν βασικά συστατικά συντακτικά στοιχεία μιας πρότασης
ΚΛ.
Στην ενότητα «Προτάσεις», ασχολείται με τις έννοιες, ‘εμβέλεια ποσοδείκτη’,
‘δεσμευμένη’ και ‘ελεύθερη μεταβλητή’, τις μορφές προτάσεων ‘συζευκτική κανονική
μορφή’, ‘διαζευκτική κανονική μορφή’ και ‘κανονική μορφή prenex’.
Η ενότητα «Μετατροπή μιας πρότασης φυσικής γλώσσας (ΦΓ) σε ΚΛ»
διαπραγματεύεται τις αρχές και τη διαδικασία μετατροπής μιας πρότασης ΦΓ σε ΚΛ,
ενώ η ενότητα «Μετατροπή μιας πρότασης ΚΛ σε προτασιακή μορφή (ΠΜ)» τη
διαδικασία μετατροπής μιας λογικής πρότασης σε μια άλλη μορφή η οποία είναι
κατάλληλη για επίτευξη αυτόματου συλλογισμού, δηλ. αυτόματης εξαγωγής
συμπερασμάτων, θέμα με το οποίο ασχολείται η τελευταία ενότητα.
Το σύστημα προσφέρει στον χρήστη-φοιτητή μαθησιακές μονάδες που
αντιστοιχούν σε κάθε έννοια και μπορεί να είναι τριών διδακτικών τύπων: θεωρία,

22
παράδειγμα, άσκηση. Οι προσφερόμενες ασκήσεις είναι συνήθως ερωτήσεις πολλαπλής
επιλογής, από τις απαντήσεις στις οποίες αξιολογείται ο χρήστης για το πόσο καλά
έμαθε μια έννοια.
Στην ενότητα «Μετατροπή μιας πρότασης ΚΛ σε προτασιακή μορφή (ΠΜ)»
εκτός από ερωτήσεις πολλαπλής επιλογής, υπάρχουν και ασκήσεις μετατροπής μιας
πρότασης ΚΛ σε ΠΜ. Οι προτάσεις που εμπλέκονται στις ερωτήσεις και στις ασκήσεις
προέρχονται από ένα σύνολο προκαθορισμένων προτάσεων που βρίσκονται σε μια
βάση δεδομένων.

1.6 Αντικείμενο Διπλωματικής


Αντικείμενο της παρούσας διπλωματικής εργασίας είναι η σχεδίαση και υλοποίηση
ενός υποσυστήματος του υπάρχοντος ευφυούς εκπαιδευτικού συστήματος το οποίο να
παράγει αυτόματα προτάσεις κατηγορηματικής λογικής πρώτης τάξεως με διάφορα
επίπεδα πολυπλοκότητας. Κύριος σκοπός αυτής της παραγωγής προτάσεων είναι η
χρήση τους ως προτάσεων-ασκήσεων για την ενότητα «Μετατροπή μιας πρότασης ΚΛ
σε προτασιακή μορφή (ΠΜ)» καθώς και ο εμπλουτισμός της βάσης με νέες προτάσεις.
Επίσης, άλλη απαίτηση από το υποσύστημα αυτό είναι η δυνατότητα αυτόματης
εκτίμησης του επιπέδου δυσκολίας των παραγόμενων προτάσεων σε σχέση με την
μετατροπή τους σε ΠΜ.
Μπορεί όμως να χρησιμοποιηθεί και ως ένα αυτόνομο σύστημα ώστε να επιτελεί
και άλλες λειτουργίες εκτός από τη δημιουργία προτάσεων-ασκήσεων. Ένας
δευτερεύον ρόλος, αλλά εξίσου σημαντικός, είναι να προσφέρει μια βιβλιοθήκη
προτάσεων-ασκήσεων όπου ανά πάσα στιγμή ο εκπαιδευτικός μπορεί να ανατρέξει και
να βρει ασκήσεις ή να προσθέσει καινούριες. Μάλιστα, το γεγονός ότι το σύστημα είναι
ηλεκτρονικό προσφέρει το πλεονέκτημα ότι το εκπαιδευτικό υλικό είναι πάντα και από
παντού προσβάσιμο.
Παράλληλα, δίνεται η δυνατότητα, μια και το υλικό των μαθημάτων θα είναι
προσβάσιμο από το δίκτυο, να γίνεται σωστότερη, πιο αντικειμενική και πιο
ολοκληρωμένη αξιολόγηση της εκπαιδευτικής διαδικασίας και του εκπαιδευτικού
έργου μέσα από τη σύγκριση με το υλικό άλλων εκπαιδευτικών.
Μάλιστα, επειδή το σύστημα δεν θέτει περιορισμούς όσον αφορά τις λειτουργίες
δημιουργίας και διαχείρισης του εκπαιδευτικού υλικού και από άλλους εκπαιδευτές, το
υλικό, μπορεί να επαναχρησιμοποιείται από διαφορετικούς εκπαιδευτές οι οποίοι θα το

23
προσαρμόζουν στις ανάγκες της εκάστοτε εκπαιδευτικής διαδικασίας, αλλά και να
ανανεώνεται.
Επίσης, από τη στιγμή που το μαθησιακό υλικό είναι διαθέσιμο στο διαδίκτυο
δίνεται η δυνατότητα να δημιουργηθεί μία κοινή βάση για πολλά θέματα και μία ενιαία
πηγή πληροφόρησης όχι μόνο για τους εκπαιδευτικούς αλλά και για τους φοιτητές. Το
υλικό αυτό θα είναι μία προσφορά στην κοινότητα του διαδικτύου.
Ταυτόχρονα, το γεγονός ότι τέτοιου είδους συστήματα μπορούν να
χρησιμοποιηθούν για να δημιουργήσουν εκπαιδευτικό υλικό, χωρίς να απαιτούνται
ειδικές γνώσεις σε HTML ή άλλες γλώσσες προγραμματισμού δίνει τη δυνατότητα και
στους ίδιους τους μαθητές να συμμετέχουν ενεργά στην εκπαιδευτική διαδικασία. Αυτό
έχει ως αποτέλεσμα να έχουν μεγαλύτερο ενδιαφέρον για το μάθημα.
Βέβαια, ένα τέτοιο σύστημα σε καμία περίπτωση δεν αντικαθιστά τον
εκπαιδευτικό αλλά έχει το ρόλο ενός πολύτιμου βοηθού. Αυτό συμβαίνει γιατί το υλικό
που παράγεται μπορεί να επαναχρησιμοποιηθεί και έτσι δίνεται η δυνατότητα στον
εκπαιδευτή να ασχολείται μόνο με την ενημέρωση και τον εμπλουτισμό του υλικού και
όχι με την εκ νέου δημιουργία του κάθε φορά που διδάσκεται το μάθημα.
Σύμφωνα όμως με τους Pallοff & Pratt, (1999) η χρήση του διαδικτύου απαιτεί
περισσότερο χρόνο ενασχόλησης για τον εκπαιδευτή. Παρόλα αυτά τα οφέλη από τη
χρήση του δεν μπορούν σε καμία περίπτωση να αντισταθμιστούν αφού τα ηλεκτρονικά
συστήματα αυξάνουν την παραγωγικότητα και την ποιότητα της δουλειάς των
εκπαιδευτικών.
Από τα παραπάνω, είναι σαφές ότι το σύστημα που υλοποιήθηκε υποστηρίζει τη
δημιουργία νέας γνώσης όπως και γνώσης που είναι προϊόν συνεργατικής δουλειάς, σε
αντίθεση με τα υπάρχοντα εκπαιδευτικά συστήματα που έχουν αναπτυχθεί για τη
διδασκαλία της λογικής και βασίζονται στο διαδίκτυο. Τέλος, το γεγονός ότι είναι ένα
σύστημα που μπορεί να χρησιμοποιηθεί είτε αυτόνομα είτε για να τροφοδοτεί με
εκπαιδευτικό υλικό άλλα συστήματα το καθιστά πολύ εύχρηστο και ευέλικτο.

24
2 Λογική και Γλώσσα Αναπαράστασης
Η λογική, παρέχει έναν εύχρηστο και αυστηρά καθορισμένο τρόπο τυποποίησης της
διαδικασίας της ανθρώπινης σκέψης. Προσφέρει μια σαφή, ακριβή και απλή στη
σύνταξη γλώσσα, καθώς και τη δυνατότητα παραγωγής νέας γνώσης από την ήδη
υπάρχουσα. Όπως αναφέρθηκε και στον πρόλογο, η χρήση της λογικής σε
υπολογιστικά συστήματα προήλθε από την ακαταλληλότητα της φυσικής γλώσσας. Ας
δούμε όμως αρχικά ποια πορεία ακολούθησε μέχρι να θεμελιωθεί ως επιστήμη .

2.1 Σύντομη Ιστορική Ανασκόπηση

Η θεμελίωση της Λογικής ως επιστήμη αποδίδεται στον Αριστοτέλη [20], αν και τα


πρώτα βήματα προς αυτή την κατεύθυνση έγιναν από τους Ίωνες και Ελεάτες
φιλοσόφους και τους Σοφιστές. Το ενδιαφέρον για τη Λογική άρχισε να φθίνει στους
πρώτους αιώνες μΧ. και μέχρι το Μεσαίωνα. Αναζωπυρώθηκε με την ανακάλυψη των
μη-Ευκλείδειων Γεωμετριών και τη διαπίστωση της ανάγκης για την θεωρητική
θεμελίωση της Ανάλυσης. Σημαντικά γεγονότα στην ιστορία της ανάπτυξης της
Λογικής:
• 1879: ο Frege προτείνει την πρώτη τυπική γλώσσα για τα Μαθηματικά και τη
Λογική.
• 1895-97: ο Cantor δημοσιεύει τη θεμελίωση της θεωρίας συνόλων.
• 1899: δημοσιεύεται το παράδοξο της θεωρίας του Cantor για τους πληθικούς
αριθμούς.
• 1902: δημοσιεύεται το παράδοξο του Russell:
“Κάθε σύνολο χαρακτηρίζεται στη θεωρία του Cantor από τη χαρακτηριστική ιδιότητα
των στοιχείων του. Έστω το σύνολο Α των συνόλων Q, όπου τα σύνολα Q
χαρακτηρίζονται από την ιδιότητα Q ∉A. Δηλαδή, Α = {Q | Q ∉A}.” Τέτοια παράδοξα
έδειξαν ότι μόνο αυστηρή τυποποίηση των εννοιών των Μαθηματικών μπορούν να
προσφέρουν θεωρίες χωρίς αντινομίες.
Στη δεκαετία του 1930, ο Hilbert αναπτύσσει την αξιωματική μέθοδο της
Λογικής ενώ στις αρχές δεκαετίας του 1950, με την ανάπτυξη των ηλεκτρονικών
υπολογιστών, άρχισε σταδιακά και η χρήση τους για υπολογισμούς με σύμβολα
(symbol manipulation). Γράφονται και τα πρώτα προγράμματα για την απόδειξη απλών

25
θεωρημάτων. Το 1965, ο Robinson προτείνει τη μέθοδο της Επίλυσης (resolution) για
το χειρισμό συμβόλων και εκτέλεση μηχανικών αποδείξεων και φτάνουμε στις αρχές
της δεκαετίας 1970 όπου οι Kowalski και Colmeraurer προτείνουν τη Λογική σαν
γλώσσα προγραμματισμού (Prolog).

2.2 Ρόλος της Λογικής στην Επιστήμη Υπολογιστών

Ο ρόλος της Λογικής είναι θεμελιώδης στην Επιστήμη των Υπολογιστών. Αυτό
φαίνεται από τα πλήθη των θεματικών περιοχών της Επιστήμης Υπολογιστών όπου η
συμβολή της Λογικής είναι πλέον εμφανής:
• Λογικά Κυκλώματα (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 Σύνταξη

Οποιαδήποτε τυπική γλώσσα όπως είναι η λογική αποτελείται από το αλφάβητο, το


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

2.3.1 Προτασιακή Λογική (Propositional Logic)

Η προτασιακή λογική (propositional logic) αποτελεί την απλούστερη μορφή λογικής.


Κάθε γεγονός του πραγματικού κόσμου αναπαριστάται με μια λογική πρόταση, η οποία
μπορεί να είναι είτε αληθής είτε ψευδής. Οι λογικές προτάσεις αναπαριστώνται με
λατινικούς χαρακτήρες P,Q,… κλπ. και ονομάζονται άτομα. Τα άτομα μπορούν να
συνδυαστούν με λογικά σύμβολα ή συνδετικά (connectives). Οι σύνθετες προτάσεις
που προκύπτουν ονομάζονται ορθά δομημένοι τύποι (well formed formulae). Τα
συνδετικά είναι η σύζευξη ( ∧ ), η διάζευξη ( ∨ ), η άρνηση ( ¬ ), η συνεπαγωγή ( → ) και
η διπλή συνεπαγωγή ή ισοδυναμία ( ↔ ).
Παραδείγματα αναπαράστασης γνώσης με τη χρήση προτασιακής λογικής
φαίνονται παρακάτω:
• P: “George is human”
• G: “George is mortal”
Σε κάθε μια από τις παραπάνω προτάσεις (γεγονότα) που θέλουμε να
αναπαραστήσουμε αντιστοιχεί ένας λατινικός χαρακτήρας. Με βάση τις παραπάνω
προτάσεις μπορούμε να αναπαραστήσουμε τη σύνθετη πρόταση: “If George is human
then he is mortal” με χρήση του συνδετικού της συνεπαγωγής, S: P → Q.

28
Εύκολα διαπιστώνει κανείς πως ένα από τα βασικά πλεονεκτήματα της
προτασιακής λογικής είναι ότι η σύνταξή της είναι ιδιαίτερα απλή, ενώ το βασικότερο
μειονέκτημα είναι ότι παρουσιάζει έλλειψη γενικότητας που οδηγεί σε τεράστιες
αναπαραστάσεις γνώσης, αφού κάθε γεγονός αναπαρίσταται με μια ξεχωριστή λογική
πρόταση.
Στο πρόβλημα που εμφανίζει η προτασιακή λογική έρχεται να δώσει λύση η
κατηγορηματική λογική. Στο προηγούμενο παράδειγμα, η πρόταση S εκφράζει τις
ιδιότητες του συγκεκριμένου ατόμου, του George. Αν όμως θέλαμε να εκφράσουμε την
ίδια ιδιότητα για άλλα άτομα θα έπρεπε να είχαμε τόσα προτασιακά σύμβολα όσα και
τα ονόματα των ανθρώπων. Αυτό βέβαια είναι πρακτικά αδύνατο.
Στην κατηγορηματική λογική η συγκεκριμένη πρόταση αναπαρίσταται ως εξής:
P: human(x) → mortal (x) που εκφράζει μια γενική σχέση. Έτσι, μπορούμε να
αντικαταστήσουμε στη μεταβλητή x οποιοδήποτε όνομα και να προκύψουν πολλές
διαφορετικές προτάσεις. Στην ενότητα που ακολουθεί θα δώσουμε μια σύντομη
περιγραφή της κατηγορηματικής λογικής αφού είναι μια ιδιαίτερα εκφραστική γλώσσα
και προσφέρει μια καθαρά περιγραφική αναπαράσταση της γνώσης όπως διαπιστώθηκε
και από το προηγούμενο παράδειγμα. Μάλιστα, ιδιαίτερα για εφαρμογές Τεχνητής
Νοημοσύνης χρησιμοποιείται η κατηγορηματική λογική και πιο συγκεκριμένα η
κατηγορηματική λογική πρώτης τάξεως.

2.3.2 Κατηγορηματική Λογική (Predicate Logic)

H κατηγορηματική λογική πρώτης τάξεως αποτελείται από τα ακόλουθα θεμελιώδη


σύμβολα:
I. Λογικά Σύμβολα:
i. Μεταβλητές x, y, z, …
ii. Λογικά Συνδετικά ∧,∨, ¬, →, ↔
iii. Κόμμα και παρενθέσεις “,” “(“ “)”
iv. Ποσοδείκτες ∀, ∃
II. Ειδικά Σύμβολα:
i. Σύμβολα κατηγορημάτων P, Q, R, …
ii. Σύμβολα σταθερών a, b, c, …
iii. Σύμβολα συναρτήσεων f, g, …

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.

2.4 Αναπαράσταση Προτάσεων Φυσικής Γλώσσας


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

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)) που φανερώνει ότι υπάρχει κάποιος μαθητής που δεν τρώει πίτσα.
Επομένως, για να κατασκευαστούν προτάσεις κατηγορηματικής λογικής πρώτης
τάξεως θα πρέπει η μεθοδολογία που θα ακολουθηθεί να έχει τη δυνατότητα
κατασκευής μιας γλώσσας. Το συντακτικό της γλώσσας θα χρησιμοποιηθεί
προκειμένου να σχηματιστούν οι τύποι. Αν σε κάθε τύπο που δημιουργείται, κάθε
κατηγόρημα ή σταθερά ή συνάρτηση αντικατασταθεί με μια λέξη φυσικής γλώσσας
τότε οι τύποι αποκτούν μια σημασιολογία. Εκτός όμως από τη σημασιολογία για να
κατασκευαστούν προτάσεις σε κατηγορηματική λογική απαιτείται όπως σε κάθε
προσπάθεια δημιουργίας προτάσεων φυσικής γλώσσας μια γραμματική, ένα σύνολο
από κανόνες που θα καθορίζει το είδος των λέξεων που μπορεί να αντικαταστήσει
κάποιο κατηγόρημα, σταθερά ή συνάρτηση σε ένα συγκεκριμένο τύπο.

2.5 Προτασιακή Μορφή Κατηγορηματικής Λογικής Πρώτης


Τάξεως
Η Προτασιακή Μορφή (clausal form) είναι μια απλοποιημένη εκδοχή της
κατηγορηματικής λογικής πρώτης τάξεως, η οποία αποτελείται από στοιχεία και
προτάσεις [25].
Ένα στοιχείο (literal) είναι είτε μια ατομική έκφραση ή η άρνηση μιας ατομικής
έκφρασης. Στην πρώτη περίπτωση το στοιχείο λέγεται θετικό, ενώ στη δεύτερη
αρνητικό. Μια πρόταση (clause) είναι ένα σύνολο από στοιχεία, το οποίο αναπαριστά
τη διάζευξή τους.
Μια έκφραση βρίσκεται σε προτασιακή μορφή αν μπορεί να γραφεί σαν σύζευξη
από προτάσεις. Επειδή η σύζευξη και η διάζευξη είναι πράξεις προσεταιριστικές,
αντιμεταθετικές και ανακλαστικές, μια έκφραση θεωρείται συχνά σαν ένα σύνολο από
προτάσεις. Για κάθε έκφραση της κατηγορηματικής λογικής υπάρχει ένα σύνολο από
προτάσεις που είναι ισοδύναμο από πλευράς συμπερασματολογίας.
Η διαδικασία μετατροπής μιας λογικής έκφρασης G, σε προτασιακή μορφή είναι
η εξής:
1. Απαλοιφή των συνεπαγωγών από τη G: η έκφραση (f1 ⇒ f2) γράφεται
σαν ( ¬ f1 ∨ f2).

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]. Στις επόμενες ενότητες θα παρουσιαστούν ενδεικτικά κάποιες
από τις τεχνικές που έχουν εφαρμοστεί σε διάφορους επιστημονικούς τομείς.

3.1 Παραγωγή Ασκήσεων Ηλεκτρικών Κυκλωμάτων

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

35
τιμές κάποιων παραμέτρων και οι μεταβλητές προκύπτουν ως λύσεις σε εξισώσεις που
περιγράφουν το σύστημα.

3.2 Παραγωγή Ασκήσεων με Αντικείμενο τα Πολυμεσικά


Συστήματα
Σε πολλά εκπαιδευτικά συστήματα τα οποία δεν ανήκουν στα ευφυή εκπαιδευτικά
συστήματα, με την έννοια ότι δεν προσαρμόζονται στον χρήστη, έχουν εφαρμοστεί
τεχνικές ώστε να προσφέρουν τη δυνατότητα δημιουργίας απλών ασκήσεων με
αυτόματο τρόπο και με διαφορετικά επίπεδα δυσκολίας, εξάγοντας πληροφορία η οποία
είναι αποθηκευμένη σε μια γνωσιακή βάση δεδομένων [9]. Οι ασκήσεις αυτές αφορούν
το πεδίο των πολυμεσικών συστημάτων και πρόκειται ουσιαστικά για ερωτήσεις
πολλαπλής επιλογής και έχουν απώτερο σκοπό να βοηθήσουν τους εκπαιδευτικούς να
εμπλουτίσουν το μάθημά τους.
Η γνωσιακή βάση δεδομένων αποτελείται από δύο διαφορετικούς χώρους, τον
εννοιολογικό (Concept Space) και τον χώρο των δεδομένων (MediaBrick Space). Ο
εννοιολογικός χώρος αποτελείται από μια οντολογία η οποία περιέχει μία ή
περισσότερες ταξινομίες οι οποίες έχουν τη μορφή ιεραρχικών δενδρικών δομών. Ο
χώρος αυτός περιέχει τις έννοιες οι οποίες θα χρησιμοποιηθούν προκειμένου να
δημιουργηθεί το περίγραμμα ενός μαθήματος, δηλαδή τι θα διδαχθεί κατά τη διάρκεια
του μαθήματος. Ο χώρος των δεδομένων περιέχει όλα τα δεδομένα δηλαδή το
πραγματικό περιεχόμενο του μαθήματος (κείμενα, εικόνες, ήχο κτλ.). Ο διαχωρισμός
αυτός έχει το σημαντικό πλεονέκτημα ότι σε περίπτωση αλλαγής του περιεχομένου δε
συνεπάγεται και αλλαγή της δομής του εννοιολογικού χώρου. Επίσης, είναι πολύ
εύκολη η αλλαγή κάποιου εγγράφου στο χώρο δεδομένων, με προσθήκη ή αφαίρεση
πληροφορίας, χωρίς να τροποποιηθεί καθόλου ο εννοιολογικός χώρος. Επιπλέον, η
προσέγγιση αυτή δίνει τη δυνατότητα αποθήκευσης ενός μαθήματος ώστε να μπορεί να
προσπελαστεί και στο μέλλον. Έτσι, η προετοιμασία ενός μαθήματος είναι ουσιαστικά
μια πλοήγηση στον εννοιολογικό χώρο ακολουθώντας ορισμένα από τα μονοπάτια του.
Οι ερωτήσεις που κατασκευάζονται με την τεχνική αυτή αυτόματα έχουν μια
τυποποιημένη μορφή εκφώνησης στην οποία ένα κομμάτι λείπει και συμπληρώνεται
επιλέγοντας μια έννοια-λέξη από τις έννοιες που περιέχονται στη γνωσιακή βάση
δεδομένων. Οι πιθανές απαντήσεις συμπεριλαμβανομένων και των λανθασμένων,

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

3.3 Παραγωγή Ασκήσεων με Αντικείμενο τη Θεωρία


Υπολογισμού

Στην ενότητα αυτή, παρουσιάζεται μια ακόμη τεχνική παραγωγής ασκήσεων με


αυτόματο τρόπο και με διαφορετικά επίπεδα δυσκολίας [23].

3o Επίπεδο: Επίπεδο Διανομής Πακέτο Διαμορφωμένων Ασκήσεων


2o Επίπεδο: Μεσαίο Επίπεδο Πρότυπα Ασκήσεων
1o Επίπεδο: Επίπεδο Βάσης Φυλλομετρητής Ασκήσεων Θεωρία
Πλατφόρμα Υλοποίησης (Java VM)

Σχήμα 2: Αρχιτεκτονική Συστήματος

Η τεχνική αυτή έχει εφαρμοστεί σε ένα σύστημα προκειμένου να παραχθούν ασκήσεις


σχετικές με τη θεωρία υπολογισμού. Η βασική ιδέα είναι να κατασκευαστεί μια κλάση

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

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

3.4 Παραγωγή Προτάσεων Φυσικής Γλώσσας

Στην ενότητα αυτή θα παρουσιάσουμε μια τεχνική παραγωγής προτάσεων φυσικής


γλώσσας σε ένα ηλεκτρονικό σύστημα μετάφρασης [15].

Σχήμα 3: (Πλέγμα Λέξεων) Word Lattice

Το σύστημα που θα περιγραφεί παράγει αυτόματα προτάσεις χρησιμοποιώντας


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

39
Στη συνέχεια από το πλέγμα λέξεων που δημιουργείται επιλέγεται το μονοπάτι
που δίνει την πιο σωστή πρόταση με τη βοήθεια ενός στατιστικού εργαλείου εξαγωγής.
Το στατιστικό αυτό εργαλείο κατατάσσει τις πιθανές προτάσεις με βάση δεσμευμένες
πιθανότητες. Το μονοπάτι επιλέγεται από το στατιστικό εργαλείο υποθέτοντας ότι
γειτονικά ζεύγη λέξεων στο λεξιλόγιο (σημασιολογική συσχέτιση) θα δημιουργούν πιο
σωστές προτάσεις. Επίσης, ένα άλλο κριτήριο σύμφωνα με το οποίο επιλέγεται το
κατάλληλο μονοπάτι είναι γραμματικοί κανόνες που καθορίζουν τη σειρά εμφάνισης
των λέξεων που ανήκουν σε διαφορετικά μέρη του λόγου (συντακτική συσχέτιση). Οι
γραμματικοί κανόνες αντιστοιχούν μια είσοδο σε μια ενδιάμεση αναπαράσταση που
μπορεί να την επεξεργαστεί το στατιστικό εργαλείο εξαγωγής.
Η απόδοση ενός τέτοιου συστήματος εξαρτάται από το πόσο λεπτομερής θα
είναι η πληροφορία που είναι εγκατεστημένη στη γνωσιακή βάση και στις εισόδους του
γεγονός που περιορίζει την ευρωστία του.
Για να βελτιωθεί η απόδοση αντί να γίνεται ταξινόμηση στο πλέγμα των λέξεων,
το στατιστικό εργαλείο κατασκευάζει συντακτικά δέντρα (parse trees) και η ταξινόμηση
πλέον γίνεται πλέον βάση της πιθανότητας των δέντρων σε ένα σύνολο δέντρων, που
αναπαριστούν διαφορετικές προτάσεις για την ίδια είσοδο και αποκαλείται συντακτικό
δάσος (parse forest). Οι γραμματικοί κανόνες πλέον, αντιστοιχούν μια είσοδο σε ένα
συντακτικό δέντρο και όχι σε ένα πλέγμα λέξεων.
Οι γραμματικοί κανόνες δημιουργούνται από το σύστημα με βάση την είσοδο
την οποία και χρησιμοποιεί για να δημιουργήσει συντακτικές σχέσεις (syntactic
relations). Κάθε τέτοια σχέση αντιστοιχίζεται σε ένα κανόνα. Έτσι, το λεξικό πλέον
πρέπει να επιστρέφει εκτός από τη λέξη και το μέρος του λόγου που ανήκει.
Όλες οι τεχνικές που παρουσιάστηκαν παραπάνω έχουν εφαρμοστεί σε
εκπαιδευτικά συστήματα τα οποία ασχολούνται με θεματικές περιοχές όπως ανάλυση
ηλεκτρικών κυκλωμάτων, συστήματα πολυμέσων, θεωρία υπολογισμού, εκμάθηση
ξένης γλώσσας. Απ’ όσο γνωρίζουμε έως τώρα δεν έχει αναπτυχθεί κάποια τεχνική η
οποία να ασχολείται με παραγωγή ασκήσεων κατηγορηματικής λογικής πρώτης τάξεως
για τις ανάγκες διδασκαλίας της λογικής.

40
4 Σύστημα Παραγωγής Ασκήσεων-Προτάσεων
Κατηγορηματικής Λογικής

4.1 Αρχιτεκτονική Συστήματος


Στην ενότητα αυτή θα περιγραφεί η αρχιτεκτονική του συστήματος που
υλοποιήθηκε. Στο Σχήμα 4 φαίνεται πως είναι η δομή του συστήματος.

User Interface

Formula Creator Sentence Database Vocabulary Creator

Difficulty Estimator

Σχήμα 4: Αρχιτεκτονική συστήματος που υλοποιήθηκε

Αποτελείται από τα ακόλουθα συστατικά μέρη:


(α) τη διεπιφάνεια χρήστη (User Interface) ,
(β) το δημιουργό τύπων (Formula Creator),
(γ) το δημιουργό λεξιλογίου (Vocabulary Creator),
(δ) τον εκτιμητή δυσκολίας (Difficulty Estimator),
(ε) τη βάση προτάσεων (Sentence Database).

¾ Διεπιφάνεια Χρήστη: Η διεπιφάνεια χρήστη είναι υπεύθυνη για την


αλληλεπίδραση του συστήματος με το χρήστη.

41
¾ Δημιουργός τύπων: Δημιουργούνται τύποι χρησιμοποιώντας τα σύμβολα της
κατηγορηματικής λογικής, πάνω στους οποίους θα στηριχτεί η παραγωγή
προτάσεων.
¾ Δημιουργός λεξιλογίου: Δημιουργείται το λεξιλόγιο που περιέχει όλες τις
λέξεις που μπορούν να χρησιμοποιηθούν για να αναπαρασταθούν τα σύμβολα
των σταθερών, των κατηγορημάτων και των συναρτήσεων που εμφανίζονται
στους τύπους.
¾ Εκτιμητής δυσκολίας: Πρόκειται για ένα έμπειρο σύστημα το οποίο προτείνει
για κάθε τύπο που κατασκευάζει ο χρήστης ένα επίπεδο δυσκολίας βάση
κάποιων κανόνων.
¾ Βάση Προτάσεων: Η βάση προτάσεων περιέχει τις προτάσεις κατηγορηματικής
λογικής που παρουσιάζονται στους χρήστες του συστήματος. Οι καταχωρημένες
προτάσεις προέρχονται είτε από τον χρήστη του συστήματος είτε
δημιουργούνται από το ίδιο το σύστημα.

4.2 Σημασιολογικές Κατηγορίες


Η δημιουργία των προτάσεων γίνεται με την αντικατάσταση των συμβόλων κάποιων
προτύπων-καλουπιών προτάσεων (βλ. επόμενη υποενότητα) με συγκεκριμένες λέξεις.
Οι λέξεις αυτές, που καταχωρούνται σ’ ένα λεξικό, είναι κατηγοριοποιημένες σε (α)
λέξεις που μπορούν να χρησιμοποιηθούν ώστε να αντικαταστήσουν σύμβολα
κατηγορημάτων σε κάποιον τύπο, σε (β) αυτές που χρησιμοποιούνται για την
αντικατάσταση των συναρτησιακών συμβόλων και σε (γ) αυτές που αντικαθιστούν
σταθερές.
Επιπλέον, το λεξικό κάνει ταξινόμηση των λέξεων βάσει θεματικών κατηγοριών,
π.χ. άνθρωπος(human), ζώο(animal). Οι θεματικές αυτές κατηγορίες αποτελούν
σημασιολογικές κατηγορίες λέξεων οι οποίες χρησιμοποιούνται ευρέως σε συστήματα
ανάκτησης πληροφοριών [11]. Κάθε σημασιολογική κατηγορία αποτελείται από λέξεις
οι οποίες μοιράζονται ένα σύνολο χαρακτηριστικών. Έτσι, κάθε μια από αυτές μπορεί
να περιέχει λέξεις-κατηγορήματα, λέξεις-συναρτήσεις και λέξεις-σταθερές. Για
παράδειγμα, η σημασιολογική κατηγορία human εμπεριέχει τις λέξεις man
(κατηγόρημα), father_of (συνάρτηση) και George (σταθερά) γιατί αναφέρονται από
κοινού στην έννοια άνθρωπος. Οι σημασιολογικές κατηγορίες που χρησιμοποιούνται

42
βέβαια, δεν αναπαριστούν μόνο το φυσικό κόσμο αλλά και πιο αφηρημένες έννοιες
όπως η κατηγορία, ρήματα (verbs).

4.3 Τύποι Προτάσεων


Το σύστημα κατασκευάζει προτάσεις κατηγορηματικής λογικής βάσει προτάσεων-
προτύπων που είναι καταχωρημένες στο σύστημα. Ένας χρήστης μπορεί να
κατασκευάσει οποιοδήποτε πρότυπο επιθυμεί χρησιμοποιώντας τα σύμβολα
κατηγορηματικής λογικής. Ουσιαστικά, οι προτάσεις-πρότυπα είναι μια συμβολική
αναπαράσταση γεγονότων του φυσικού κόσμου. Για παράδειγμα, το πρότυπο:
∀x∃y (Α(x) → Β (x,y))
αναπαριστά προτάσεις της μορφής «Για κάθε αντικείμενο x που έχει την ιδιότητα Α
υπάρχει αντικείμενο y ώστε να ισχύει η σχέση Β μεταξύ των x,y».
Με τη βοήθεια αυτού του προτύπου μπορούν να δημιουργηθούν προτάσεις όπως
οι παρακάτω:
• Αν αντικατασταθεί το σύμβολο κατηγορήματος Α με τη λέξη «άνθρωπος» και
το σύμβολο κατηγορήματος Β με τη λέξη «όνομα» τότε προκύπτει η πρόταση:
« ∀x∃y (άνθρωπος(x) → όνομα (x,y))» σε κατηγορηματική λογική η οποία
εκφράζει ότι «Κάθε άνθρωπος έχει ένα όνομα».
• Αν τώρα αντικατασταθεί το σύμβολο κατηγορήματος Α με τη λέξη «μηχανικός_
υπολογιστών» και το σύμβολο κατηγορήματος Β με τη λέξη «υπολογιστής»
τότε προκύπτει η πρόταση: « ∀x∃y (μηχανικός_υπολογιστών(x) → υπολογιστής
(x,y))» σε κατηγορηματική λογική η οποία αναπαριστά την πρόταση «Κάθε
μηχανικός υπολογιστών έχει υπολογιστή».

4.4 Μοντελοποίηση Προτάσεων


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

43
Κάθε παράδειγμα που καταχωρείται για ένα συγκεκριμένο πρότυπο, τροφοδοτεί
με πληροφορία το σύστημα σχετικά με την κατηγορία λέξεων που ανήκει η κάθε λέξη
που χρησιμοποιήθηκε, το μέρος του λόγου που ανήκει (ουσιαστικό, ρήμα, επίθετο)
καθώς επίσης και αν το σύμβολο που αντικαταστάθηκε είναι κατηγόρημα ή σταθερά ή
συνάρτηση. Με τον τρόπο αυτό δημιουργείται μια ξεχωριστή γραμματική για κάθε
πρότυπο. Η γραμματική αυτή είναι ένα σύνολο από κανόνες που καθορίζουν για κάθε
σύμβολο του τύπου τις αποδεκτές λέξεις που μπορούν να το αντικαταστήσουν.
Για παράδειγμα, έστω ο απλός τύπος P(x) ⇒ Q(x,a). Στον τύπο αυτό υπάρχουν
τρία σύμβολα που μπορούν να αντικατασταθούν με λέξεις φυσικής γλώσσας, το
κατηγόρημα P, το κατηγόρημα Q και η σταθερά a. Έτσι, αν ο χρήστης έχει επιλέξει να
αντικαταστήσει το κατηγόρημα P με τη λέξη man (άνδρας) από την κατηγορία human
(άνθρωπος), το κατηγόρημα Q με τη λέξη eats (τρώει) από την κατηγορία human και τη
σταθερά a με τη λέξη apple (μήλο) από την κατηγορία fruits(φρούτα) τότε
δημιουργείται ο κάτωθι κανόνας:

Noun_Predicate1_human(x) ⇒ Verb_Predicate2_human(x, Noun_Constant1_fruits)

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

Sentence

Predicate1 Predicate2 Constant1

Noun Verb Noun

Σχήμα 5: Συντακτικό δέντρο κανόνα

Το δέντρο σημασιολογικής ανάλυσης του πρότυπου που χρησιμοποιήθηκε ως


παράδειγμα θα έχει την ακόλουθη μορφή:

44
Sentence

Predicate1 Predicate2 Constant1

human human fruits

Σχήμα 6: Σημασιολογικό δέντρο κανόνα

Το συντακτικό δέντρο επομένως, καθορίζει το μέρος του λόγου που θα ανήκει η


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

4.5 Παραγωγή Προτάσεων


Στην ενότητα αυτή θα παρουσιαστούν τα βήματα που πραγματοποιούνται
προκειμένου να κατασκευαστεί μια πρόταση-άσκηση κατηγορηματικής λογικής από το
σύστημα.
1. Δημιουργία προτύπου εφόσον δεν υπάρχει αλλιώς επιλογή κάποιου
καταχωρημένου τύπου.
2. Καθορισμός δυσκολίας του προτύπου, είτε χειρωνακτικά είτε αυτόματα από το
σύστημα, εφόσον δημιουργείται νέο πρότυπο.
3. Δημιουργία Πρότασης:
α) Χειρωνακτικά: Αντικατάσταση των κατηγορημάτων, σταθερών,
συναρτήσεων εφόσον υπάρχουν με λέξεις από το λεξικό. Αρχικά επιλέγεται

45
κάποια θεματική κατηγορία λέξεων και στη συνέχεια γίνεται από αυτή επιλογή
της λέξης που θα αντικαταστήσει το εκάστοτε σύμβολο.
β) Αυτόματα: Προϋποθέτει να έχει πραγματοποιηθεί το βήμα 3α τουλάχιστον
μία φορά. Το σύστημα επιλέγει τυχαία έναν κανόνα από τη γραμματική του
τύπου και στη συνέχεια αντικαθιστά κάθε σύμβολο χρησιμοποιώντας λέξεις που
ανήκουν στο ίδιο μέρος του λόγου από την ίδια θεματική κατηγορία με τη λέξη
που εισήγαγε ο χρήστης στο βήμα 3α.
4. Η πρόταση που δημιουργείται παρουσιάζεται στο χρήστη και εφόσον το
επιλέξει καταχωρείται στη βάση προτάσεων, αλλιώς πραγματοποιείται το βήμα
3β.

46
5 Προσδιορισμός Δυσκολίας Προτάσεων-Ασκήσεων

5.1 Προσδιορισμός Παραγόντων

Στην ενότητα αυτή θα αναφερθούμε στους παράγοντες που λαμβάνονται υπόψη


προκειμένου να υπολογιστεί ο βαθμός δυσκολίας μιας άσκησης.
Οι παράμετροι που λαμβάνονται υπόψη είναι:
1. ο αριθμός των διαφορετικών λογικών συνδετικών,
2. η ύπαρξη ή όχι του συνδετικού «συνεπάγεται»,
3. το πλήθος των εμφανίσεων του συνδετικού «συνεπάγεται»,
4. η ύπαρξη ή όχι του συνδετικού «ισοδυναμία»,
5. το πλήθος και το είδος των ποσοδεικτών που υπάρχουν στον τύπο,
6. αν υπάρχει ή όχι καθολικός ποσοδείκτης πριν από υπαρξιακό
ποσοδείκτη.

5.2 Κανόνες Προσδιορισμού Δυσκολίας


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

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ο Παράδειγμα:

Είσοδος: «( ∀x )(γλυκό( x ) => μισεί(Ρεβέκκα, x ))»


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

3ο Παράδειγμα:

Είσοδος:«( ∃x )( ∀y )(γάιδαρος( x ) ∧ άλογο( y )))=> γρηγορότερο( x , y ))»


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

4ο Παράδειγμα:

Είσοδος:«( ∃x ) (ζώο( x ) ∧ άρρωστο( x )))=> (( ∀x )(ζώο( x ) => άρρωστο ( x ))»


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

5ο Παράδειγμα:

Είσοδος:«( ∀x ) (ρωμαίος( x ) ∧ γνωρίζει( x ,Μάρκος))=> (μισεί( x ,Καίσαρας)


∨ (( ∀y )( ∃z )μισεί( y, z ) => πιστεύει_είναι_τρελός( x , y ))»
Έξοδος: «Εξειδικευμένων Γνώσεων»

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

51
52
6 Διεπιφάνεια – Οδηγός Χρήσης

6.1 Δημιουργία Κατηγοριών Λέξεων


Μία από τις βασικές δυνατότητες του συστήματος είναι η δημιουργία ενός λεξιλογίου
μέσα από το οποίο θα αντλούνται οι λέξεις που αντικαθιστούν τα κατηγορήματα, τις
σταθερές και τις συναρτήσεις στους τύπους.

6.1.1 Λέξεις - Κατηγορήματα

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

Εικόνα 1: Εμφάνιση των λέξεων-κατηγορημάτων αλφαβητικά

53
Ο χρήστης μπορεί εφόσον το επιθυμεί να ενημερωθεί για τις λέξεις που
υπάρχουν στο λεξιλόγιο ανά κατηγορία λέξεων, αρκεί να επιλέξει από το αριστερό
υπομενού «Per Category», όπως φαίνεται παρακάτω:

Εικόνα 2: Εμφάνιση των λέξεων-κατηγορημάτων ανά κατηγορία

Ο χρήστης για να καταχωρήσει μια καινούρια λέξη-κατηγόρημα στο λεξικό θα


πρέπει να επιλέξει από το αριστερό υπομενού «New Predicate». Έτσι, εμφανίζεται μια
φόρμα μέσω της οποίας θα εισάγει τις λέξεις που θα χρησιμοποιηθούν ως
κατηγορήματα. Κάθε μια λέξη που θέλει να εισάγει ο χρήστης στο λεξικό θα πρέπει να
την πληκτρολογήσει στο πεδίο «Predicate». Επιπλέον, θα πρέπει να επιλέξει την
κατηγορία λέξεων που ανήκει η λέξη από το πεδίο «Category» και αν δεν υπάρχει μια
που να τον ικανοποιεί, να δημιουργήσει μια νέα γράφοντας το όνομα της νέας
κατηγορίας στο πεδίο «Make New Category». Επίσης, ο χρήστης θα πρέπει να εισάγει
το βαθμό του κατηγορήματος στο πεδίο «Arity» και να επιλέξει το μέρος του λόγου που
ανήκει η λέξη από το πεδίο «Syntactic Category». Όταν κάνει κλικ με το ποντίκι στο
κουμπί «Submit» η λέξη καταχωρείται στο λεξιλόγιο του συστήματος. Στην Εικόνα 3
φαίνεται η φόρμα καταχώρησης της νέας λέξης:

54
Εικόνα 3: Καταχώρηση νέας λέξης-κατηγορήματος

Τέλος, το σύστημα δίνει τη δυνατότητα στο χρήστη να διαγράψει κάποια λέξη


κατηγόρημα από το λεξιλόγιο αν επιλέξει από το αριστερό υπομενού «Remove
Predicate». Στην περίπτωση αυτή εμφανίζονται όλες οι λέξεις του λεξιλογίου
αλφαβητικά και με το πάτημα του κουμπιού «Delete» που υπάρχει δίπλα από κάθε
λέξη, η αντίστοιχη λέξη διαγράφεται, όπως φαίνεται από την Εικόνα 4 που ακολουθεί:

55
Εικόνα 4: Διαγραφή λέξης-κατηγορήματος

6.1.2 Λέξεις - Σταθερές

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

56
Εικόνα 5: Εμφάνιση των λέξεων-σταθερών αλφαβητικά

Εικόνα 6: Εμφάνιση των λέξεων-σταθερών ανά κατηγορία

57
Ο χρήστης μπορεί εφόσον το επιθυμεί να ενημερωθεί για τις λέξεις που
υπάρχουν στο λεξιλόγιο ανά κατηγορία λέξεων, αρκεί να επιλέξει από το αριστερό
υπομενού «Per Category», όπως φαίνεται στο σχήμα 6.
Ο χρήστης για να καταχωρήσει μια καινούρια λέξη-σταθερά στο λεξικό θα
πρέπει να επιλέξει από το αριστερό υπομενού «New Constant». Έτσι, εμφανίζεται μια
φόρμα μέσω της οποίας θα εισάγει τις λέξεις που θα χρησιμοποιηθούν ως σταθερές.
Κάθε μια λέξη που θέλει να εισάγει ο χρήστης στο λεξικό θα πρέπει να την
πληκτρολογήσει στο πεδίο «Constant». Επιπλέον, θα πρέπει να επιλέξει την κατηγορία
λέξεων που ανήκει η λέξη από το πεδίο «Category» και αν δεν υπάρχει μια που να τον
ικανοποιεί, να δημιουργήσει μια νέα γράφοντας το όνομα της νέας κατηγορίας στο
πεδίο «Make New Category». Επίσης, ο χρήστης θα πρέπει να επιλέξει το μέρος του
λόγου που ανήκει η λέξη από το πεδίο «Syntactic Category». Για τις σταθερές δεν
υπάρχει το πεδίο «Arity» όπου ο χρήστης επιλέγει την τάξη γιατί οι σταθερές δεν έχουν
τάξη, όπως συμβαίνει στα κατηγορήματα και τις συναρτήσεις. Όταν κάνει κλικ με το
ποντίκι στο κουμπί «Submit» η λέξη καταχωρείται στο λεξιλόγιο του συστήματος. Στην
Εικόνα 7 φαίνεται η φόρμα καταχώρησης της νέας λέξης:

Εικόνα 7: Καταχώρηση νέας λέξης-σταθεράς

58
Τέλος, το σύστημα δίνει τη δυνατότητα στο χρήστη να διαγράψει κάποια λέξη-
σταθερά από το λεξιλόγιο αν επιλέξει από το αριστερό υπομενού «Remove Constant».
Στην περίπτωση αυτή εμφανίζονται όλες οι λέξεις του λεξιλογίου αλφαβητικά και με το
πάτημα του κουμπιού «Delete» που υπάρχει δίπλα από κάθε λέξη, η αντίστοιχη λέξη
διαγράφεται, όπως φαίνεται από την εικόνα που ακολουθεί:

Εικόνα 8: Διαγραφή λέξης-σταθεράς

6.1.3 Λέξεις - Συναρτήσεις

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

59
Εικόνα 9: Εμφάνιση των λέξεων-συναρτήσεων αλφαβητικά

Εικόνα 10: Εμφάνιση των λέξεων-συναρτήσεων ανά κατηγορία

60
Ο χρήστης μπορεί εφόσον το επιθυμεί να ενημερωθεί για τις λέξεις που
υπάρχουν στο λεξιλόγιο ανά κατηγορία λέξεων, αρκεί να επιλέξει από το αριστερό
υπομενού «Per Category», όπως φαίνεται στο σχήμα 10.

Εικόνα 11: Καταχώρηση νέας λέξης-συνάρτησης

Ο χρήστης για να καταχωρήσει μια καινούρια λέξη-συνάρτηση στο λεξικό θα


πρέπει να επιλέξει από το αριστερό υπομενού «New Function». Η διαδικασία που
ακολουθείται είναι πανομοιότυπη με αυτή που ακολουθείται στα κατηγορήματα, αφού
οι συναρτήσεις είναι ειδικές περιπτώσεις κατηγορημάτων. Έτσι, εμφανίζεται επίσης μια
φόρμα μέσω της οποίας θα εισάγει τις λέξεις που θα χρησιμοποιηθούν ως συναρτήσεις.
Κάθε μια λέξη που θέλει να εισάγει ο χρήστης στο λεξικό θα πρέπει να την
πληκτρολογήσει στο πεδίο «Function». Επιπλέον, θα πρέπει να επιλέξει την κατηγορία
λέξεων που ανήκει η λέξη από το πεδίο «Category» και αν δεν υπάρχει μια που να τον
ικανοποιεί, να δημιουργήσει μια νέα γράφοντας το όνομα της νέας κατηγορίας στο
πεδίο «Make New Category». Επίσης, ο χρήστης θα πρέπει να εισάγει την τάξη της
συνάρτησης στο πεδίο «Arity» και να επιλέξει το μέρος του λόγου που ανήκει η λέξη
από το πεδίο «Syntactic Category». Όταν κάνει κλικ με το ποντίκι στο κουμπί «Submit»

61
η λέξη καταχωρείται στο λεξιλόγιο του συστήματος. Στην Εικόνα 11 φαίνεται η φόρμα
καταχώρησης της νέας λέξης:
Τέλος, το σύστημα δίνει τη δυνατότητα στο χρήστη να διαγράψει κάποια λέξη-
συνάρτηση από το λεξιλόγιο αν επιλέξει από το αριστερό υπομενού «Remove
Function». Στην περίπτωση αυτή εμφανίζονται όλες οι λέξεις του λεξιλογίου
αλφαβητικά και με το πάτημα του κουμπιού «Delete» που υπάρχει δίπλα από κάθε
λέξη, η αντίστοιχη λέξη διαγράφεται, όπως φαίνεται από την εικόνα που ακολουθεί:

Εικόνα 12: Διαγραφή λέξης-συνάρτησης

6.2 Δημιουργία Τύπων


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

62
Εικόνα 13: Διαθέσιμοι Τύποι

Δίπλα σε κάθε τύπο εμφανίζεται ένα κουμπί με το όνομα «Give Example». Όταν
ο χρήστης κάνει κλικ σε αυτό το κουμπί τότε εμφανίζονται δύο φόρμες για κάθε ένα
από τα κατηγορήματα, τις σταθερές και τις συναρτήσεις που εμφανίζονται στον τύπο
που επέλεξε ο χρήστης. Η πρώτη φόρμα εμφανίζει τις διαθέσιμες κατηγορίες λέξεων
αντίστοιχα για κάθε κατηγόρημα, σταθερά ή συνάρτηση. Όταν ο χρήστης επιλέξει μια
κατηγορία λέξεων τότε στη δεύτερη φόρμα εμφανίζονται οι λέξεις που ανήκουν σε
αυτή την κατηγορία. Από τη φόρμα αυτή ο χρήστης επιλέγει μια λέξη η οποία θα
αντικαταστήσει το κατηγόρημα ή τη σταθερά ή τη συνάρτηση. Όταν ολοκληρωθεί η
διαδικασία αυτή, δηλαδή έχουν επιλεγεί λέξεις για όλα τα σύμβολα που επιδέχονται
αντικατάσταση (κατηγορήματα, σταθερές, συναρτήσεις) τότε ο χρήστης κάνοντας κλικ
στο κουμπί «Store» αποθηκεύει το παράδειγμα που έδωσε στη βάση. Με την ακόλουθη
διαδικασία επομένως, δημιουργείται μια νέα πρόταση κατηγορηματικής λογικής

63
ακολουθώντας τον τύπο που επέλεξε ο χρήστης. Η διαδικασία που περιγράφηκε
φαίνεται στην Εικόνα 14:

Εικόνα 14: Δημιουργία νέου παραδείγματος

Ο χρήστης από το υπομενού που εμφανίζεται αριστερά της σελίδας μπορεί να


επιλέξει να ενημερωθεί για τις διαθέσιμες ασκήσεις στο σύστημα μέσω της επιλογής
«Available Examples» αλλά και να δημιουργήσει ένα νέο παράδειγμα επιλέγοντας από
το υπομενού «New Example» όπου επαναλαμβάνεται η διαδικασία που περιγράφτηκε
στην προηγούμενη παράγραφο.
Επιπλέον, ο χρήστης μπορεί να δημιουργήσει ένα καινούριο τύπο αν επιλέξει
από το κεντρικό μενού που εμφανίζεται στο πάνω μέρος της σελίδας στην αριστερή
πλευρά, την επιλογή «Formulae» και στη συνέχεια από το υπομενού που εμφανίζεται
επίσης αριστερά να επιλέξει «New Formula». Στο παράθυρο του χρήστη εμφανίζεται
μια φόρμα για τα κατηγορήματα απ’ όπου ο χρήστης μπορεί να επιλέξει κάποιο από τα
διαθέσιμα σύμβολα (P, Q, R, S, T, U). Επίσης, εμφανίζεται μία φόρμα με όλα τα
διαθέσιμα σύμβολα που αναπαριστούν τις συναρτήσεις (f, g, h, q), μια φόρμα με όλα τα

64
διαθέσιμα σύμβολα που αναπαριστούν τις μεταβλητές (x, y, z, w, r, s) και μια φόρμα με
όλους διαθέσιμους χαρακτήρες που αναπαριστούν τις σταθερές (a, b, c, d, e, t).
Προκειμένου να δημιουργηθούν όμως οι τύποι σύμφωνα με το συντακτικό της
κατηγορηματικής λογική χρειάζονται τα λογικά συνδετικά, οι ποσοδείκτες οι δύο
παρενθέσεις, αριστερή και δεξιά, και το κόμμα. Για το λόγο αυτό υπάρχει μια φόρμα
που εμφανίζει όλα τα λογικά συνδετικά ( ∧,∨, ¬, →, ↔ ), μια φόρμα που εμφανίζει τους
δύο ποσοδείκτες ( ∀, ∃ ) και τέλος μια φόρμα που εμφανίζει τα σύμβολα ομαδοποίησης
(Group Symbols) το κόμμα και τις παρενθέσεις («,» «(», «)» ).

Εικόνα 15: Δημιουργία νέου τύπου

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

65
για λόγους αξιοπιστίας, το σύστημα ενημερώνει τον χρήστη τους λόγους για τους
οποίους έχει επιλέξει το συγκεκριμένο βαθμό δυσκολίας. Εφόσον, τεθεί και ο βαθμός
δυσκολίας του τύπου με τον ένα ή τον άλλο τρόπο ο χρήστης μπορεί να τον
καταχωρήσει στο σύστημα αν κάνει κλικ στο κουμπί «Submit». Αυτά που
αναφέρθηκαν παραπάνω φαίνονται και στην Εικόνα 15:
Επιπλέον, ο χρήστης έχει τη δυνατότητα να δει όλους τους διαθέσιμους τύπους
ανά επίπεδο δυσκολίας, αρκεί να επιλέξει από το αριστερό υπομενού «Per Level», όπως
φαίνεται στην Εικόνα 16:

Εικόνα 16: Διαθέσιμοι Τύποι ανά επίπεδο δυσκολίας

Τέλος, το σύστημα δίνει τη δυνατότητα στο χρήστη να διαγράψει κάποιον από


τους υπάρχοντες τύπους στο σύστημα αν επιλέξει από το αριστερό υπομενού «Remove
Formula». Στην περίπτωση αυτή εμφανίζονται όλοι οι τύποι του συστήματος από το
χαμηλότερο βαθμό δυσκολίας προς το υψηλότερο και με το πάτημα του κουμπιού
«Delete» που υπάρχει δίπλα από κάθε τύπο, ο αντίστοιχος τύπος διαγράφεται, όπως
φαίνεται από την Εικόνα 17 που ακολουθεί:

66
Εικόνα 17: Διαγραφή Τύπου

6.3 Δημιουργία προτάσεων-ασκήσεων

Νέες προτάσεις-ασκήσεις μπορούν να δημιουργηθούν χειρωνακτικά από τον


χρήστη, με την διαδικασία που περιγράφτηκε σε προηγούμενη ενότητα (6.2.1). Έτσι,
εφόσον δημιουργήσει ένα τύπο, αν δεν υπάρχει κάποιος που να τον ικανοποιεί από τους
ήδη κατασκευασμένους, να αντικαταστήσει με λέξεις φυσικής γλώσσας τα
κατηγορήματα, τις σταθερές και τις συναρτήσεις, εφόσον υπάρχουν στον τύπο, με
λέξεις φυσικής γλώσσας από το διαθέσιμο λεξιλόγιο.
Μπορούν όμως να δημιουργηθούν νέες ασκήσεις και με αυτόματο τρόπο,
εφόσον ο χρήστης επιλέξει από το κεντρικό μενού «Exercises». Στην οθόνη του χρήστη
εμφανίζονται οι διαθέσιμοι τύποι κατά επίπεδο δυσκολίας. Εφόσον ο χρήστης επιλέξει
κάποιον από τους διαθέσιμους τύπους όταν κάνει κλικ στο κουμπί «Generate

67
Exercises» που βρίσκεται δίπλα σε κάθε τύπο δημιουργείται μια καινούρια πρόταση-
άσκηση. Ο χρήστης στη συνέχεια επιλέγει αν η άσκηση αυτή είναι σωστή να κάνει κλικ
στο κουμπί «Submit» ώστε να καταχωρηθεί στο σύστημα αλλιώς κάνει κλικ στο κουμπί
«More» ώστε να δημιουργηθεί μια νέα πρόταση. Όσα προαναφέρθηκαν φαίνονται στην
Εικόνα 18:

Εικόνα 18: Δημιουργία Ασκήσεων

68
7 Θέματα Υλοποίησης
Στο κεφάλαιο αυτό θα γίνει αναφορά στις τεχνολογίες που χρησιμοποιήθηκαν
για να υλοποιηθεί το σύστημα και τους περιορισμούς που αντιμετωπίστηκαν.

1. Η γλώσσα προγραμματισμού PHP.


Η PHP είναι μια γλώσσα που εφαρμόζεται κυρίως στο επίπεδο της παρουσίασης
του περιεχομένου και χρησιμοποιείται για την ανάπτυξη εφαρμογών του διαδικτύου.
Εστιάζει δε, στη δημιουργία ενός επιπέδου αλληλεπίδρασης με διάφορες βάσεις
δεδομένων για την παραγωγή δυναμικού περιεχομένου στο διαδίκτυο. Το γεγονός αυτό
επηρεάζει την ταχύτητα της γλώσσας και η απόδοσή της δεν πλησιάζει κάποια από τις
γνωστές γλώσσες προγραμματισμού (C ή C++). Το έμπειρο σύστημα που είναι
υπεύθυνο για την εύρεση του βαθμού δυσκολίας μιας άσκησης υλοποιήθηκε επίσης με
τη συγκεκριμένη γλώσσα προγραμματισμού γεγονός που συντέλεσε στο να επηρεαστεί
η δυναμικότητά του και η διαφάνεια του κώδικα.
Επιπλέον, η υλοποίηση της γλώσσας προγραμματισμού PHP δεν περιλαμβάνει
υποστήριξη για την αποθήκευση δεδομένων σε χώρο διαμοιραζόμενο από όλους τους
χρήστες μιας web εφαρμογής (application level support). Αν κάποια δεδομένα πρέπει
να είναι προσβάσιμα από όλα τα κομμάτια του κώδικα θα πρέπει είτε να είναι
αποθηκευμένα στη βάση δεδομένων, με όλη την καθυστέρηση που μπορεί να επιφέρει
η σύνδεση και η ανάκτησή τους, είτε σε μεταβλητές που ορίζονται κατά την
ενεργοποίηση ενός προσαρτήματος λογισμικού. Το μειονέκτημα στη δεύτερη
περίπτωση αφορά τη δυσκολία ανανέωσης του περιεχομένου που κρατάνε οι
μεταβλητές αυτές. Για την υλοποίηση της παρούσας εργασίας ακολουθήθηκε η πρώτη
προσέγγιση.

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

Proceedings of the Interenational Conference on Computer Systems and

Technologies. Varna: Academy of Sciences, 2006, p. V-8-1-V-8-6.

[2]. Βλαχάβας, Ι., Κεφαλάς, Π., Βασιλειάδης, Ν., Ρεφανίδης, Ν., Κόκκορας, Φ. και

Σακελλαρίου, Η. (2002). Τεχνητή Νοημοσύνη. Θεσσαλονίκη: Εκδόσεις Γαρταγάνη.

[3]. Brusilovsky, P. Adaptive Hypermedia, User Modelling and User Adapted

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

Computer Programming in Proceedings of the 2004 IEEE/WIC/ACM International

Conference on Web Intelligence, pp. 159 – 165. IEEE Computer Society, 2004.

[5]. Colton, S. Artificial Intelligence: Representing Knowledge in Predicate Logic.

www.doc.ic.ac.uk/~sgc/teaching/v231/lecture6.ppt.

[6]. Cristea, P., Tuduce, R. Automatic Generation of Exercises for Self-testing in

Adaptive E-learning Systems: Exercises on AC Circuits. In Proceedings of the joint

international workshop on adaptivity, personalization & the semantic web. pp. 11-

20. ACM Press, 2006.

[7]. De Bra, P., Aerts, A., Berden, B., De Lange, B., Rousseau, B., Santic, T., Smits, T.,

D.&Stash, N. AHA! The Adaptive Hypermedia Architecture in Proceedings of

ACM Hypertext Conference. pp.81-84. Nottingham, 2003.

[8]. Devedzic V. Key Issues in Next-Generation Web-based Education IEEE

transactions on systems, man, and cybernetics-part C: Applications and reviews,

vol. 33, no. 3, pp. 339-349, 2003.

73
[9]. Fischer, S., Steinmetz, R. Automatic Creation of Exercises in Adaptive Hypermedia

Learning Systems in Proceedings of the eleventh ACM on Hypertext and

hypermedia. pp. 49 – 55. ACM Press. 2000.

[10]. Frasson, C., Gathier, G. (1990). Intelligent Tutoring Systems-At the cross-roads

of Artificial Intelligence and Education. Norwood, New Jersey: Ablex Publishing

Corporation.

[11]. Gamallo, P., Agustini, A., Quaresma, P. and Lopes, G. Using Semantic Word

Classes in Text Information Systems Actas do Workshop sobre Ontologias realizado

no XII Simpósio Brasileiro de Informática no Ensino. UNISINOS, Porto Alegre,

Rio Grande do Sul, Brasil, Novembro de 2002.

[12]. Hatzilygeroudis, I. and Prentzas, J. "Knowledge Representation Requirements

for Intelligent Tutoring Systems", in J. C. Lester, R. M. Vicari and F. Paraguacu

(Eds), Intelligent Tutoring Systems, 7th International Conference, p.p. 87-97.

Maceio, Alagoas, Brazil, August/September 2004, Proceedings, Springer.

[13]. Heilman, M., Eskenazi, M. Language Learning: Challenges for Intelligent

Tutoring Systems.

[14]. Huang, C., Liu, M., Chu, S., Cheng, C. Application of Machine Learning

Techniques to Web-Based Intelligent Learning Diagnosis System in Proceeding of

the 6th Global Chinese Conference on Computers in Education, Beijing, 2002.

[15]. Langkilde, I. Automatic Sentence Generation Using a Hybrid Statististical

Model of Lexical Collocations and Syntactic Relations, Master thesis. Southern

California: University of Southern California.

[16]. Lucas, P. & van der Gaag, L. (1991). Principles of Expert Systems. Addison-

Wesley.

74
[17]. Μητακίδης, Γ.(1992). Από τη Λογική στο Λογικό Προγραμματισμό και την

Prolog. Αθήνα: Εκδόσεις Καρδαμίτσα.

[18]. Morais, C., Menezes, P., and Reis R. Modelling for Automatic Generation of

Exercises and Evaluations ICECE'2000: International Conference on Engineering

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.

[19]. Νταραντούμης, Θ. Προσαρμογές Εκπαιδευτικών Υπερμέσων.

www.aegean.gr/culturaltec/daradoumis/4PLR126/03-educational-adaptations.ppt.

[20]. Πλεξουσάκης, Δ. Λογική και Τεχνητή Νοημοσύνη.

www.csd.uoc.gr/~hy180/08_spring/handouts/l1.pdf.

[21]. Polya, G. (1945). How to solve it. A New Aspect of Mathematical Method.

United States: Princeton University Press.

[22]. Russell, T. (1999). The No Significant Difference Phenomenon, North Carolina:

North Carolina State University, Office of Instructional Telecommunications.

[23]. Tscherter, V. Exorciser: Automatic Generation and Interactive Grading of

structured Exercises in the Theory of Computation. Ph.D. Thesis. Zurich. 2004.

[24]. Χατζηλυγερούδης, Ι. Γιαννούλης, Χ. και Κουτσογιάννης, Κ. "A Web-Based

Education System for Predicate Logic", Proceedings of the 4th IEEE ICALT-2004,

pp. 106-110. Finland, IEEE Computer Society.

[25]. Χατζηλυγερούδης, Ι. (2004). Αναπαράσταση Γνώσης και Αυτόματος

Συλλογισμός. Πάτρα: Πανεπιστημιακές Εκδόσεις.

75