ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΔΙΑΤΜΗΜΑΤΙΚΟ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΔΙΑΤΜΗΜΑΤΙΚΟ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ"

Transcript

1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΔΙΑΤΜΗΜΑΤΙΚΟ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ «Μαθηματικά των Υπολογιστών και των Αποφάσεων» Χρήση Ευφυών Πρακτόρων σε Εκπαιδευτικό Σύστημα Βασισμένο στον Παγκόσμιο Ιστό ΧΟΥΝΤΗΣ ΠΑΝΑΓΙΩΤΗΣ Επιβλέπων: Ιωάννης Χατζηλυγερούδης, Λέκτορας ΠΑΤΡΑ, ΙΟΥΝΙΟΣ 2004

2 ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ... 1 ΠΕΡΙΛΗΨΗ... 4 ΕΥΧΑΡΙΣΤΙΕΣ... 5 ΚΕΦΑΛΑΙΟ 1 ΕΥΦΥΕΙΣ ΠΡΑΚΤΟΡΕΣ Η έννοια πράκτορας Κατηγορίες Πρακτόρων Αρχιτεκτονικές Ευφυών Πρακτόρων Γλώσσες προγραμματισμού πρακτόρων Εφαρμογές των ευφυών πρακτόρων ΚΕΦΑΛΑΙΟ 2 ΕΥΦΥΗ ΣΥΣΤΗΜΑΤΑ ΕΚΠΑΙΔΕΥΣΗΣ ΚΑΙ ΠΡΑΚΤΟΡΕΣ Απαιτήσεις προσαρμοστικότητας Μοντελοποίηση μαθητή Μέθοδοι προσαρμογής Αρχιτεκτονική υλοποίησης Χρηση ευφυών πρακτόρων στην εκπαιδευτική διαδικασία Συστήματα εκπαίδευσης με πολλαπλούς πράκτορες MATS: Ένα ανοικτό κατανεμημένο εκπαιδευτικό σύστημα πολλαπλών πρακτόρων WebDL: ένα προσαρμοζόμενο σύστημα για διαδικτυακή διδασκαλία Ένα σύστημα πολλαπλών πρακτόρων για ευφυή δικτυακή εκπαίδευση ΚΕΦΑΛΑΙΟ 3 ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΚΑΙ ΛΕΙΤΟΥΡΓΙΑ ΣΥΣΤΗΜΑΤΟΣ Αρχιτεκτονική

3 3.2 Διαχείριση συστήματος Διαδικασία εισαγωγής Εισαγωγή χρήστη Διαχείρηση χρηστών Επεξεργασία ερώτησης ασφαλείας ΚΕΦΑΛΑΙΟ 4 ΔΙΑΧΕΙΡΗΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ Διαχείρηση ερωτήσεων τεχνητής νοημοσύνης Διαχείρηση μαθησιακού υλικού Διαχείρηση τεστ Μορφή τεστ ΚΕΦΑΛΑΙΟ 5 ΣΤΑΤΙΣΤΙΚΑ ΣΤΟΙΧΕΙΑ ΚΕΦΑΛΑΙΟ 6 ΠΡΟΣΑΡΜΟΣΤΙΚΟΤΗΤΑ ΣΥΣΤΗΜΑΤΟΣ Διαδικασία διδασκαλίας Έμπειρο σύστημα ΚΕΦΑΛΑΙΟ 7 ΔΙΕΠΑΦΗ ΧΡΗΣΤΗ ΚΕΦΑΛΑΙΟ 8 ΕΓΚΑΤΑΣΤΑΣΗ ΛΟΓΙΣΜΙΚΟΥ ΚΕΦΑΛΑΙΟ 9 ΥΛΟΠΟΙΗΣΗ ΤΕΚΜΗΡΙΩΣΗ Διαχείρηση Χρηστών Διαδικασία Εισαγωγής Εισαγωγή χρήστη Διαχείρηση χρηστών Επεξεργασία ερώτησης ασφαλείας Διαχείρηση περιεχομένου Διαχείρηση ερωτήσεων Τεχνητής Νοημοσύνης Διαχείρηση μαθησιακού υλικού Διαχείρηση τεστ

4 9.3 Στατιστικά στοιχεία Επικοινωνία χρήστη Πλοήγηση περιεχομένου Εικονικός Πράκτορας Προσαρμοστικότητα συστήματος ΒΙΒΛΙΟΓΡΑΦΙΑ

5 Περίληψη Τα ευφυή εκπαιδευτικά συστήματα (Intelligent Educational Systems) είναι μια συνεχώς αναπτυσσόμενη περιοχή και από πλευράς εφαρμογών αλλά και έρευνας. Τα συστήματα αυτά λέγονται «ευφυή» διότι μπορούν να προσαρμόζονται αυτόματα στις ανάγκες των εκπαιδευόμενων (χρηστών). Αυτό επιτυγχάνεται μέσω του μοντέλου χρήστη που διατηρεί το σύστημα. Τα ευφυή εκπαιδευτικά συστήματα τα βασισμένα στον παγκόσμιο ιστό (Web-Based Intelligent Educational Systems) είναι η υποπεριοχή αιχμής των συστημάτων αυτών. Το επί πλέον πλεονέκτημα τέτοιων συστημάτων είναι ότι πολλοί χρήστες από διαφορετικά γεωγραφικά σημεία μπορούν να τα χρησιμοποιήσουν. Μια δυσκολία που αντιμετωπίζουν τα συστήματα αυτά όμως είναι ότι οι χρήστες είναι πολύ διαφορετικοί μεταξύ τους (διαφορετικά ενδιαφέροντα, διαφορετικό επίπεδο, ηλικία κλπ). Έτσι, το μοντέλο χρήστη είναι δυσκολότερο να προσδιοριστεί και η προσαρμογή δυσκολότερο να γίνει. Μια από τις τεχνολογίες που χρησιμοποιούνται στο Διαδίκτυο σε διάφορες εφαρμογές και θεωρείται συνυφασμένη μ αυτό που ονομάζεται «Ευφυΐα Παγκόσμιου Ιστού» (Web Intelligence) είναι η τεχνολογία των Ευφυών Πρακτόρων (Intelligent Agents). Ενώ η χρήση της σε εφαρμογές όπως το Ηλεκτρονικό Εμπόριο είναι εκτεταμένη, φαίνεται ότι σε εκπαιδευτικά συστήματα είναι κάπως περιορισμένη. Παρόλα αυτά, στην εργασία αυτή θα ασχοληθούμε με την χρήση των ευφυών πρακτόρων σε αυτά τα συστήματα. Η εργασία χωρίζεται σε τρία μέρη. Στο πρώτο μέρος γίνεται μια γενική αναφορά στους ευφυείς πράκτορες. Παρουσιάζονται οι διάφοροι ορισμοί, οι κατηγορίες και η αρχιτεκτονική των ευφυών πρακτόρων. Στην συνέχεια περιγράφονται οι γλώσσες προγραμματισμού των ευφυών πρακτόρων καθώς και οι εφαρμογές τους. Στο δεύτερο μέρος γίνεται μια ανασκόπηση των υπαρχόντων ευφυών εκπαιδευτικών συστημάτων βασισμένων στον παγκόσμιο ιστό και των τεχνολογιών που χρησιμοποιούν, καθώς και ο τρόπος που εφαρμόζονται οι ευφυείς πράκτορες στην διαδικασία της εκπαίδευσης. Στο τρίτο μέρος παρουσιάζεται ο σχεδιασμός και η υλοποίηση ενός εκπαιδευτικού συστήματος για την διδασκαλία θεμάτων Τεχνητής Νοημοσύνης με χρήση της τεχνολογίας των ευφυών πρακτόρων. 4

6 Ευχαριστίες Η παρούσα διατριβή δεν θα μπορούσε να εκπονηθεί και να ολοκληρωθεί χωρίς την βοήθεια και την συμπαράσταση πολλών ανθρώπων. Αισθάνομαι πρωτίστως την ανάγκη να ευχαριστήσω θερμά τον Δάσκαλο μου, Λέκτορα κ. Ι. Χατζηλυγερούδη στον οποίον οφείλεται κατά ένα πολύ μεγάλο βαθμό η υλοποίηση της παρούσας διατριβής. Η ουσιαστική καθοδήγησή του στο ξεπέρασμα των ποικίλων δυσκολιών που συνάντησα κατά την διάρκεια της εργασίας, οι πολύτιμες συμβουλές και υποδείξεις του, και η ηθική του συμπαράσταση με βοήθησαν τα μέγιστα. Ευχαριστώ επίσης και τα άλλα δύο μέλη της Τριμελούς Εξεταστικής Επιτροπής μου, τον Επίκουρο Καθηγητή κ. Ι. Γαροφαλάκη και τον Λέκτορα κ. Μ. Ξένο, των οποίων η βοήθεια ήταν επίσης καθοριστική. Τέλος, αισθάνομαι την υποχρέωση να ευχαριστήσω τον μεταπτυχιακό φοιτητή Χ. Ροδοσθένους και τον φοιτητή κ. Κ. Πίπιλα για τις προγραμματιστικές τους συμβουλές. 5

7 ΚΕΦΑΛΑΙΟ 1 Ευφυείς πράκτορες Οι ευφυείς πράκτορες (intelligent agents) έχουν γίνει τα τελευταία χρόνια ένα δημοφιλές εργαλείο στην ανάπτυξη λογισμικού καθώς χρησιμοποιούνται σε όλο και περισσότερα είδη εφαρμογών. Ήδη σε τομείς όπως αναζήτηση πληροφοριών στο Διαδίκτυο, η υλοποίηση φιλικών διεπαφών (interfaces) και η διαχείριση αλληλογραφίας η τεχνολογία ευφυών πρακτόρων έχει εφαρμοστεί με επιτυχία. Όμως, παρά τη μεγάλη αυτή δημοτικότητα που ήδη έχουν αποκτήσει οι ευφυείς πράκτορες, οι ερευνητές δεν έχουν ακόμα καταλήξει σε έναν ακριβή ορισμό της έννοιας πράκτορας αλλά ούτε και στα χαρακτηριστικά που πρέπει να περιλαμβάνει. Έτσι ο όρος πράκτορας χρησιμοποιείται με πολλούς διαφορετικούς τρόπους κινδυνεύοντας να γίνει ασαφής και να χάσει το νόημά του. Στο κεφάλαιο αυτό θα δώσουμε μία γενική περιγραφή της έννοιας πράκτορας, της χρησιμότητάς τους, καθώς και των κατηγοριών τους. Ακόμα, θα αναφερθούμε σε γλώσσες προγραμματισμού πρακτόρων καθώς και σε εφαρμογές στις οποίες έχουν ήδη χρησιμοποιηθεί ευφυείς πράκτορες. 1.1 Η έννοια πράκτορας Υπάρχουν πολλοί ορισμοί για το τι είναι πράκτορας και αυτό οφείλεται στο ότι υπάρχουν πολλές διαφορετικές προσεγγίσεις. Οι αυτόνομες ή ημιαυτόνομες προγραμματιστικές οντότητες έχει επικρατήσει να αποκαλούνται πράκτορες, και έχουν δημιουργήσει έναν θρύλο γύρω τους που παραπέμπει σε έξυπνα ρομπότ που παρέχουν κάθε είδος υπηρεσίες στον άνθρωπο ή και σε προγράμματα ιών που εισέρχονται στο σύστημα μας και καταστρέφουν τα δεδομένα μας. Για μια πιο επιστημονική προσέγγιση στην ένννοια πράκτορα, αναφερόμαστε στον Bradshaw (1997), που γράφει ότι intelligent agent είναι ένα «έξυπνο αντικείμενο», που είναι αυτόνομο και λειτουργεί συνεχόμενα. Ομοίως ο Shoham (1997) περιγράφει έναν software agent ως μια λογισμική οντότητα που λειτουργεί συνεχόμενα και αυτόνομα σε ένα συγκεκριμένο περιβάλλον που συχνά «κατοικούν» άλλοι πράκτορες και άλλες διαδικασίες. Με παρόμοιο τρόπο ορίζονται και οι κινητοί πράκτορες και από τους Lange και Oshima (1998). Σύμφωνα με αυτούς ο πράκτορας είναι ένα αντικείμενο λογισμικού (software object) που κινείται σε ένα δεδομένο περιβάλλον εκτέλεσης και διαθέτει υποχρεωτικά μια σειρά από ιδιότητες. Συγκεκριμένα, θα πρέπει να είναι αυτόνομος, να αντιλαμβάνεται αλλαγές στο περιβάλλον και να δρα ανάλογα με αυτές (reactive), να οδηγείται από τους στόχους και τα καθήκοντα που του έχουν ανατεθεί (goal driven) και τέλος να ενεργεί χωρίς διακοπές στο χρόνο (temporally continuous). Ο όρος πράκτορας παρατηρούμε ότι δεν είναι μία σαφώς καθορισμένη έννοια αφού έχουν προταθεί από διάφορους ερευνητές πολλοί διαφορετικοί ορισμοί. Έτσι, αυτό 6

8 που θα κάνουμε στη συνέχεια είναι όχι να δώσουμε κάποιον αυστηρό ορισμό, αλλά να περιγράψουμε τις κυριότερες ιδιότητες ενός πράκτορα έτσι ώστε να δοθεί μία γενική εικόνα της έννοιας αυτής. Τις ιδιότητες αυτές μπορούμε να τις κατατάξουμε σε δύο κατηγορίες: στις ιδιότητες που εντάσσονται στην ασθενή θεώρηση της έννοιας πράκτορας και στις ιδιότητες που εντάσσονται στην ισχυρή θεώρηση της έννοιας πράκτορας. Οι ιδιότητες που ανήκουν στην ασθενή θεώρηση είναι αυτές που είναι γενικώς παραδεκτό από τους περισσότερους ερευνητές ότι πρέπει να έχει ένας πράκτορας. Αντιθέτως, οι ιδιότητες της ισχυρής θεώρησης δεν είναι γενικώς παραδεκτό ότι πρέπει να υπάρχουν σε έναν πράκτορα. Η ασθενής θεώρηση του όρου πράκτορας : Οι ιδιότητες που κατά γενική παραδοχή πρέπει να έχει ένας πράκτορας είναι οι παρακάτω: 1. Αυτονομία (autonomy): οι πράκτορες λειτουργούν χωρίς την ανθρώπινη παρέμβαση ώστε να μπορούν να ελέγχουν τις πράξεις τους και την εσωτερική τους κατάσταση. 2. Κοινωνική ικανότητα (social ability): οι πράκτορες έχουν τη δυνατότητα να επικοινωνούν με άλλους πράκτορες μέσω μίας γλώσσας πρακτόρων. 3. Ικανότητα αντίδρασης (reactivity): οι πράκτορες είναι ικανοί να αντιλαμβάνονται το περιβάλλον τους και να αντιδρούν ανάλογα με τις αλλαγές που γίνονται σ αυτό. 4. Χρονική συνέχεια (temporal continuity): οι πράκτορες τρέχουν συνεχώς, είτε είναι ενεργοί στο προσκήνιο, είτε στο παρασκήνιο (background). 5. Προσανατολισμός σε στόχο (proactivity): οι πράκτορες δεν αντιδρούν απλώς στα ερεθίσματα του περιβάλλοντος αλλά μπορούν να δρουν προσανατολισμένοι σε έναν στόχο. Η ισχυρή θεώρηση του όρου πράκτορας : Για πολλούς ερευνητές ο όρος πράκτορας έχει πιο σαφές και συγκεκριμένο νόημα. Αυτοί θεωρούν τον πράκτορα ως ένα υπολογιστικό σύστημα που, εκτός από τις ιδιότητες που δόθηκαν παραπάνω, έχει και ιδιότητες που συναντάμε στους ανθρώπους, όπως γνώση, πεποίθηση, υποχρέωση ή ακόμα και συναισθήματα. Μερικές από τις ιδιότητες που εντάσσονται στην ισχυρή θεώρηση του πράκτορα είναι οι παρακάτω: 1. Ικανότητα Μετακίνησης (mobility): Είναι η ικανότητα του πράκτορα να μετακινείται σε διάφορες τοποθεσίες μέσα σε ένα δίκτυο. 2. Καλοσύνη (benevolence): Οι πράκτορες δεν έχουν αλληλοσυγκρουόμενους στόχους, οπότε ο κάθε πράκτορας προσπαθεί να κάνει ό,τι του ζητηθεί. 3. Ορθολογικότητα (rationality): Ο πράκτορας ενεργεί έτσι ώστε να επιτύχει τους στόχους του. 4. Προσαρμοστικότητα (adaptivity): Η ικανότητα του πράκτορα να προσαρμόζεται στις συνθήκες του περιβάλλοντος. Τα χαρακτηριστικά ενός πράκτορα κατά τις δύο αυτές θεωρήσεις συνοψίζονται στον πίνακα

9 Είναι αρκετά δύσκολο να ορίσουμε τι ακριβώς είναι αυτό που κάνει έναν πράκτορα ευφυή. Ωστόσο, μπορούμε γενικά να πούμε ότι ένας πράκτορας είναι ευφυής όταν έχει την ικανότητα να επιτελεί τους στόχους και τα καθήκοντα που έχει επιφορτιστεί, καθώς επίσης να προσαρμόζεται και να μαθαίνει τα ενδιαφέροντα του χρήστη, ώστε να του προσφέρει μια ουσιαστική υπηρεσία. Για αυτόν τον λόγο μπορούμε να πούμε ότι ένας πράκτορας είναι ευφυής όταν συνδιάζει τεχνικές που παρέχουν αυτές τις δυνατότητες, δηλαδή κυρίως τεχνικές από τους χώρους της Τεχνητής ή Υπολογιστικής Νοημοσύνης (Artificial or Computatinal Intelligence). 1.2 Κατηγορίες Πρακτόρων Σύμφωνα με τους Nwana και Ndumu (1998), οι πράκρορες μπορούν να διακριθούν στις παρακάτω κατηγορίες: Πράκτορες Συνεργασίας (Collaborative Agents) Οι πράκτορες συνεργασίας δίνουν σημασία στην αυτονομία και τη συνεργασία με άλλους πράκτορες για να εκτελέσουν τις εργασίες που τους αναθέτουν οι «ιδιοκτήτες» (owners) τους. Συνήθως κινούνται σε ανοικτά περιβάλλοντα με πλήθος άλλων πρακτόρων και χρονικούς περιορισμούς (open and time-constrained multi-agent environments). Η λειτουργία τους ενδέχεται να περιλαμβάνει κάποια περιορισμένης μορφής μάθηση, χωρίς αυτό όμως να αποτελεί βασικό κομμάτι της συμπεριφοράς τους. Οι πράκτορες συνεργασίας συχνά υποχρεώνονται να προχωρήσουν σε διαπραγματεύσεις (negotiations) με άλλους πράκτορες. Σκοπός των διαπραγματεύσεων αυτών είναι να καταλήξουν σε κάποιες από κοινού συμφωνίες που θα συντονίσουν καλύτερα τις ενέργειες τους. Μερικά από τα πλεονεκτήματα των πράκτορες συνεργασίας είναι τα ακόλουθα: 1. Μπορούν να λύσουν με επιτυχία προβλήματα που χρειάζονται μεγάλο υπολογιστικό χρόνο, και που είναι αδύνατον να λυθούν από έναν μόνο πράκτορα, λόγω έλλειψεις πόρων. Επίσης εξαιτίας της παράλληλης λειτουργίας καταφέρνουν να αυξήσουν την ταχύτητα τους. 2. Επιτρέπουν να συνενωθούν και να συνεργαστούν υπάρχοντα συστήματα όπως έμπειρα συστήματα, συστήματα υποστήριξης απόφασεων και συμβατικά προγράμματα. Επίσης, μπορούν να δώσουν λύση σε προβλήματα με κατανεμημένη δομή ή κατανεμημένες πηγές πληροφοριών. Ανάμεσα στα πλεονεκτήματα τους είναι η ευελιξία (flexibility) και η αξιοπιστία (reliability). 8

10 Πράκτορες Διεπαφής (Interface Agents) Οι πράκτορες διαμεσολάβησης δίνουν μεγαλύτερη έμφαση στην αυτονομία (autonomy) και τη μάθηση (learning) για να φέρουν σε πέρας τα καθήκοντα που τους έχουν ανατεθεί. H Pattie Maes (1994) τονίζει ότι οι πράκτορες διαμεσολάβησης πρέπει να εννοούνται ως προσωπικοί βοηθοί που συνεργάζονται με τον χρήστη στο ίδιο περιβάλλον. Οι πράκτορες διαμεσολάβησης πρέπει να υποστηρίζουν και να παρέχουν προσανατολισμένη στον στόχο (proactive) βοήθεια, τυπικά σε άτομα που μαθαίνουν τη χρήση μιας συγκεκριμένης εφαρμογής, όπως είναι ένα λειτουργικό σύστημα. Ο πράκτορας παρακολουθεί και καταγράφει τις ενέργειες του ατόμου, μαθαίνει και τελικά προτείνει καλύτερες μεθόδους για την εκτέλεση των διαφόρων λειτουργιών. Η μάθηση του πράκτορα μπορεί να γίνει με έναν από τους εξής τρόπους: (i) παρακολουθώντας τον χρήστη, (ii) λαμβάνοντας θετική και αρνητική ανάδραση από τον χρήστη (iii) λαμβάνοντας ρητές οδηγίες από τον χρήστη, και τέλος (iv) ζητώντας συμβουλές από άλλους πράκτορες. Βασική προϋπόθέση για την επιτυχή λειτουργία ενός πράκτορα διαμεσολάβησης είναι η εφαρμογή που χρησιμοποιείται να επιδεικνύει κάποια επαναλαμβανόμενη συμπεριφορά, την οποία να μπορεί να μάθει ο πράκτορας και ακόμα πιο βασικά, αυτή η συμπεριφορά να είναι διαφορετική για κάθε χρήστη γιατί αλλιώς το πρόβλημα θα μπορούσε να λυθεί από ένα απλό σύστημα βασισμένο σε γνώση knowledge-based system. Το βασικό πλεονέκτημα ενός πράκτορα διαμεσολάβησης είναι ότι διευκολύνει σε μεγάλο βαθμό το έργο του χρήστη αλλά και του προγραμματιστή εφαρμογών. Ακόμα, σημαντικό είναι ότι ο πράκτορας μπορεί να προσαρμόζεται όσο περνάει ο χρόνος, με βάση τις προτιμήσεις και τις συνήθειες του χρήστη. Χαρακτηριστικό παράδειγμα πράκτορα διαμεσολάβησης είναι ο Calendar Agent (Kozierok, Maes, 1994), ο οποίος βοηθάει το χρήστη με τον προγραμματισμό των καθημερινών υποχρεώσεων του. Με το πέρασμα του χρόνου μαθαίνει τις προτιμήσεις του χρήστη (όπως π.χ. οτι δεν επιθυμεί να κανονίζει συναντήσεις τα πρωινά της Δευτέρας) και έτσι βελτιώνει τις υπηρεσίες που παρέχει. Ένας ακόμα χαρακτηριστικός πράκτορας διαμεσολάβησης είναι ο NewT (Maes), ο οποίος βοηθάει τους χρήστες να φιλτράρουν και να επιλέγουν ενδιαφέροντα άρθρα από ένα συνεχές ρεύμα κειμένων του Usenet. O NewT εκπαιδεύεται ώστε να εντοπίζει τόσο θετικά (ενδιαφέροντα άρθρα) όσο και αρνητικά (μη-ενδιαφέροντα άρθρα) παραδείγματα. Πληροφοριακοί/Διαδικτυακοί Πράκτορες (Information/Internet Agents) Οι πληροφοριακοί πράκτορες ασχολούνται με τη διαχείριση, την επεξεργασία και τη συγκέντρωση δεδομένων που προέρχονται από πολλές κατανεμημένες πηγές. Η εμφάνιση τους οφείλεται κατά κύριο λόγο στην αρχική ανάγκη εύρεσης ενός τρόπου για να τιθασευτεί η πληθώρα πληροφοριών του Διαδικτύου. Οι διαδικτυακοί πράκτορες θα μπορούσαν να είναι κινητοί. Κάτι τέτοιο όμως δεν ισχύει ακόμα. Συνήθως είναι στατικοί, προσκολλημένοι σε κάποια μηχανή πλοήγησης του Διαδικτύου (Internet browser) και χρησιμοποιούν ένα σύστημα αναζήτησης (search engine) ώστε να συλλέγουν τις ζητούμενες πληροφορίες. Ο σχεδιασμός τους γίνεται με τέτοιο τρόπο ώστε να «ανέχονται» πιθανές ασάφειες, παραλείψεις ή λάθη από την πλευρά του χρήστη. Η πρόβλεψη πάντως για τους διαδικτυακούς πράκτορες είναι ότι πολύ σύντομα θα ενσωματώσουν πολλά από τα χαρακτηριστικά γνωρίσματα των 9

11 κινητών πρακτόρων, κάτι που θα συμπληρώσει και θα κάνει ακόμα πιο πετυχημένη τη λειτουργία τους. Πράκτορες Αντίδρασης(Reactive Software Agents) Οι πράκτορες αντίδρασης, για τους οποίους χρησιμοποιείται και η ονομασία «αυτόνομοι πράκτορες», αντιπροσωπεύουν μια ειδική κατηγορία πρακτόρων οι οποίοι δεν διαθέτουν εσωτερικά, συμβολικά μοντέλα του περιβάλλοντος τους. Απεναντίας, λειτουργούν με βάση ένα πλήθος ζευγαριών «ερεθίσματος-αντίδρασης». Για κάθε ερέθισμα που δέχονται όντας σε μια συγκεκριμένη κατάσταση (state) επιλέγουν την αντίστοιχη αντίδραση, την οποία και εκτελούν. Οι πράκτορες αντίδρασης είναι σχετικά απλοί στη σύλληψη και τη λειτουργία, και η επικοινωνία τους με άλλους πράκτορες γίνεται χρησιμοποιώντας στοιχειώδεις μεθόδους. Παρόλα αυτά, σύνθετα μοτίβα συμπεριφοράς προκύπτουν όταν ένας μεγάλος αριθμός αντιδραστικών πρακτόρων έρθει σε επαφή. Έτσι, δεν υπάρχει ένας a priori τρόπος να καθοριστεί η συμπεριφορά μιας κοινωνίας τέτοιων πρακτόρων. Επίσης, ένα άλλο ενδιαφέρον χαρακτηριστικό που τους αφορά άμεσα είναι ο καταμερισμός των ευθυνών (task decomposition). Ένας πράκτορας αντίδρασης μπορεί να αντιμετωπιστεί ως η συνένωση πολλών διαφορετικών τμημάτων, καθένα από τα οποία ενεργεί αυτόνομα και είναι υπεύθυνο για συγκεκριμένα καθήκοντα. Η επικοινωνία ανάμεσα σε αυτά τα τμήματα είναι πολύ περιορισμένης μορφής. Τέλος, οι πράκτορες αντίδρασεις συνήθως λειτουργούν βασισμένοι σε αναπαραστάσεις (representations) που είναι πολύ κοντά σε «ακατέργαστα δεδομένα αισθητήρα» (raw sensor data) σε αντίθεση με άλλες μορφές πρακτόρων που χρησιμοποιούν υψηλού επιπέδου συμβολικές αναπαραστάσεις. Αυτό το χαρακτηριστικό τους καθιστά σθεναρούς (robust) και περισσότερο ανθεκτικούς σε σφάλματα (fault tolerant). Κινητοί Πράκτορες (Mobile Agents) Οι κινητοί πράκτορες είναι διεργασίες λογισμικού με την ικανότητα να διατρέχουν (roaming) τον κόσμο του Διαδικτύου, να έρχονται σε επαφή με ξένους κεντρικούς υπολογιστές (hosts), να εκτελούν τις εργασίες που έχουν αναλάβει από τους «ιδιοκτήτες» τους και τελικά να επιστρέφουν έχοντας φέρει σε πέρας όλα τα καθήκοντα τους. Τα καθήκοντα τους μπορούν να περιλαμβάνουν από κρατήσεις αεροπορικών εισιτηρίων μέχρι τη διαχείριση ενός τηλεπικοινωνιακού δικτύου. Οι κινητοί πράκτορες αποκαλούνται «πράκτορες» επειδή είναι αυτόνομοι και συνεργάζονται, αν και διαφορετικά απ ότι οι πράκτορες συνεργασίας (collaborative agents). Όπως είναι φυσικό, πλεονεκτούν σε σχέση με τους στατικούς πράκτορες όσον αφορά ένα μεγάλο αριθμό -δικτυακών κυρίως- εργασιών. Οι κινητοί πράκτορες δεν μένουν προσκολλημένοι (bound) στο σύστημα απ όπου ξεκίνησαν να εκτελούνται. Είναι ελεύθεροι να κινούνται ανάμεσα σε υπολογιστές (hosts) του δικτύου. Παρότι δημιουργούνται σε συγκεκριμένο περιβάλλον εκτέλεσης, έχουν τη δυνατότητα να μεταφέρουν την κατάσταση και τον κώδικα τους (state and code) μαζί τους σε διαφορετικό περιβάλλον εκτέλεσης, στο οποίο συνεχίζουν την εκτέλεση τους. Η ικανότητα τους να «ταξιδεύουν» (travel), επιτρέπει στους κινητικούς πράκτορες να μεταπηδούν σε συστήματα που περιλαμβάνουν αντικείμενα (objects) με τα οποία οι πράκτορες επιθυμούν να έρθουν σε επαφή, και στη συνέχεια να επωφεληθούν του γεγονότος ότι βρίσκονται στον ίδιο υπολογιστή ή δίκτυο με το συγκεκριμένο αντικείμενο. 10

12 Παρόλα τα πλεονεκτήματα που έχουν οι κινητοί πράκτορες, υπάρχουν και κάποια μειονεκτήματα, που οφείλονται κυρίως στην έλλειψη εμπιστοσύνης. Οι άνθρωποι συνήθως χρειάζονται αρκετά κίνητρα για να επιτρέψουν την λειτουργία μιας διεργασίας ενός πράκτορα μέσα στο λειτουργικό τους που όχι μόνο θα τους σπαταλήσει πόρους αλλά και πιθανόν μπορεί να πρόκειται για κάποιον ιό που θα τους προκαλέσει αρκετές ζημιές στο σύστημα τους. Τα διάφορα worms που έχουν κατακλύσει το Διαδίκτυο δεν είναι τίποτα άλλο από κινητούς πράκτορες που εισέρχονται στο σύστημα του κάθε χρήστη και προκαλούν κάθε είδους δυσλειτουργίες. Όμως αυτό το πρόβλημα μπορεί να λυθεί χρησιμοποιώντας την Java, η οποία επιτρέπει την εκτέλεση αυτών των διεργασιών σε μια περιοχή που μπορεί ο χρήστης να καθορίσει το είδος της πρόσβασης Χαρακτηριστικό παράδειγμα κινητών πρακτόρων είναι τα Aglets. Τα aglets αποτελούν ουσιαστικά αντικείμενα της Java που μπορούν να μετακινούνται από έναν υπολογιστή (host) του διαδικτύου σε ένα άλλο. Συγκεκριμένα, ένα aglet που εκτελείται σε κάποιον υπολογιστή (host) μπορεί ξαφνικά να σταματήσει την εκτέλεση του, να αποστείλλει τον εαυτό του σε έναν άλλο απομακρυσμένο υπολογιστή (host) και να συνεχίσει την εκτέλεση του σε αυτόν. Όταν ένα aglet μετακινείται, παίρνει μαζί του τον κώδικα προγράμματος καθώς και τα δεδομένα του. Γενικά μπορούμε να ισχυριστούμε ότι τα aglets αντιπροσωπεύουν το επόμενο μεγάλο βήμα στην εξέλιξη του εκτελέσιμου περιεχομένου (executable content) στο διαδίκτυο, εισάγοντας κώδικα προγράμματος που μπορεί να μεταφερθεί μαζί με τις πληροφορίες για την παρούσα κατάσταση του πράκτορα (agent state information). 1.3 Αρχιτεκτονικές Ευφυών Πρακτόρων Έως τώρα ασχοληθήκαμε με την εξωτερική συμπεριφορά και τις κατηγορίες ενός πράκτορα. Για να περιγράψουμε με ποιο τρόπο θα κατασκευάσουμε τον πράκτορα έτσι ώστε να έχει αυτή την συμπεριφορά που ορίσαμε, πρέπει να ασχοληθούμε με την αρχιτεκτονική των ευφυών πρακτόρων. Δηλαδή με την αρχιτεκτονική περιγράφουμε μία συγκεκριμένη μεθοδολογία για την κατασκευή πρακτόρων και αναλύουμε τα τμήματα από τα οποία αποτελείται ένας πράκτορας καθώς και τις αλληλεπιδράσεις των τμημάτων αυτών μεταξύ τους. Όπως είδαμε παραπάνω, ένας πράκτορας πρέπει να έχει ικανότητα αντίδρασης στα ερεθίσματα που δέχεται, επομένως πρέπει να έχει τη δυνατότητα να αντιλαμβάνεται το περιβάλλον αλλά και να επιδρά πάνω σ αυτό. Επομένως για να κατασκευάσουμε έναν πράκτορα πρέπει να τον εφοδιάσουμε με αισθητήρες (detectors) και με επιδραστές (effectors). Με τη βοήθεια των αισθητήρων και των επιδραστών ο πράκτορας θα μπορεί εκτός από την ικανότητα αντίδρασης να έχει και κοινωνική ικανότητα, δηλαδή να αντιλαμβάνεται τα μηνύματα που δέχεται από άλλους πράκτορες μέσω των αισθητήρων του αλλά και να στέλνει μηνύματα μέσω των επιδραστών. Έτσι αν, για παράδειγμα θεωρήσουμε έναν άνθρωπο ως πράκτορα τότε οι αισθητήρες του είναι τα μάτια, τα αφτιά, η μύτη κλπ, ενώ οι επιδραστές είναι τα χέρια, τα πόδια, ή ακόμα και το στόμα με το οποίο στέλνουμε μηνύματα σε άλλους ανθρώπους. Αντίστοιχα, ένα ρομποτάκι (softbot) που δρα σε ένα περιβάλλον λογισμικού έχει ως αισθητήρες και επιδραστές υπολογιστικές διαδικασίες που αντιλαμβάνονται το περιβάλλον και δρουν πάνω σ αυτό. 11

13 Εκτός από τη δυνατότητα να αντιλαμβάνεται το περιβάλλον, στις περισσότερες περιπτώσεις ένας πράκτορας χρειάζεται να έχει μία εσωτερική κατάσταση η οποία να μπορεί να επηρεάζει τις ενέργειες και τη συμπεριφορά του. Στην περίπτωση που ο πράκτορας δεν έχει εσωτερική κατάσταση έχουμε μία απλουστευμένη αρχιτεκτονική, όπου οι ενέργειες του πράκτορα εξαρτώνται αποκλειστικά από τα ερεθίσματα που δέχεται από το περιβάλλον. Ένας τέτοιος πράκτορας ονομάζεται τροπιστικός (tropistic). Αντίθετα με έναν τροπιστικό πράκτορα, ένας πράκτορας με εσωτερική κατάσταση έχει τη δυνατότητα να διατηρεί και να χρησιμοποιεί εσωτερικές πληροφορίες. Η εσωτερική κατάσταση μπορεί να μεταβληθεί από εξωτερικά ερεθίσματα και επηρεάζει τις αποφάσεις που παίρνει ο πράκτορας. Οι παραπάνω περιγραφές της αρχιτεκτονικής ενός πράκτορα θα μπορούσαν να περιγραφούν με μία πιο αυστηρή μαθηματική μορφή, θεωρώντας τα παρακάτω σύνολα (Θεμιστοκλής Ν. Παναγιωτόπουλος). S: Είναι το σύνολο των δυνατών καταστάσεων του περιβάλλοντος στο οποίο βρίσκεται ο πράκτορας. Τ: Είναι το σύνολο των ερεθισμάτων που μπορεί να δεχτεί ο πράκτορας από το εξωτερικό περιβάλλον. Αν υποθέσουμε ότι υπάρχουν περιορισμοί στους αισθητήρες του πράκτορα τότε ο πράκτορας δεν μπορεί να ξεχωρίσει όλες τις εξωτερικές καταστάσεις μεταξύ τους. Έτσι μπορεί δύο διαφορετικές καταστάσεις να φαίνονται ίδιες για έναν πράκτορα. Για παράδειγμα, ένας πράκτορας εφοδιασμένος με μία ασπρόμαυρη κάμερα θα θεωρούσε την κατάσταση στην οποία έχει μπροστά του ένα κόκκινο αντικείμενο ίδια με την κατάσταση όπου έχει μπροστά του ένα πράσινο αντικείμενο. Το σύνολο T καθορίζει ποιες από τις καταστάσεις του περιβάλλοντος φαίνονται ίδιες για τον πράκτορα και ποιες μπορεί να ξεχωρίσει μεταξύ τους. Έτσι το σύνολο T έχει ως στοιχεία υποσύνολα του S και, πιο συγκεκριμένα, διαμερίζει το σύνολο S. Έτσι ο πράκτορας μπορεί να ξεχωρίσει δύο καταστάσεις που βρίσκονται σε διαφορετικές διαμερίσεις αλλά όχι δύο καταστάσεις που βρίσκονται στην ίδια διαμέριση. A: Το σύνολο των δυνατών ενεργειών που μπορεί να κάνει ο πράκτορας. I: Το σύνολο των δυνατών εσωτερικών καταστάσεων του πράκτορα. Αφού ορίσαμε τα παραπάνω σύνολα, μπορούμε επίσης να θεωρήσουμε τις παρακάτω συναρτήσεις οι οποίες συσχετίζουν τα παραπάνω σύνολα μεταξύ τους: see : S T Η συνάρτηση see αντιστοιχεί στις εξωτερικές καταστάσεις του περιβάλλοντος σε ερεθίσματα που δέχεται ο πράκτορας μέσω των αισθητήρων. Δηλαδή η see καθορίζει το πώς αντιλαμβάνεται ο πράκτορας το εξωτερικό περιβάλλον. do: A S S Η συνάρτηση do παίρνει σαν είσοδο την παρούσα κατάσταση του περιβάλλοντος και μία ενέργεια και δίνει την επόμενη κατάσταση του περιβάλλοντος. Επομένως η do καθορίζει τα αποτελέσματα που έχουν οι ενέργειες στο εξωτερικό περιβάλλον. action : I T A Η συνάρτηση action καθορίζει, δοθέντος ενός εξωτερικού ερεθίσματος και μιας εσωτερικής κατάστασης την ενέργεια που θα κάνει ο πράκτορας. internal : I T I Η συνάρτηση internal καθορίζει ποια θα είναι η επόμενη εσωτερική κατάσταση δοθέντος του εξωτερικού ερεθίσματος που δέχτηκε ο πράκτορας και της παρούσας εσωτερικής κατάστασης. 12

14 Με βάση τα παραπάνω μπορούμε να πούμε ότι ο πράκτορας καθορίζεται από την παρακάτω οκτάδα: Πράκτορας = (I, S, T, A, see, do, action, internal) Ο κύκλος λειτουργίας ενός πράκτορα της παραπάνω μορφής γραμμένος σε μορφή ψευδοκώδικα είναι ο παρακάτω: repeat begin t = see(s) i = internal(i, t) a = action(i, t) s = do(a, s) end Σε κάθε κύκλο ο πράκτορας δέχεται μέσω των αισθητήρων του το εξωτερικό ερέθισμα από το περιβάλλον, ενημερώνει την εσωτερική του κατάσταση, αποφασίζει για την ενέργεια που θα εκτελέσει και τέλος, εκτελεί την ενέργεια με τους επιδραστές του αλλάζοντας έτσι το περιβάλλον. Η αρχιτεκτονική που ορίσαμε παραπάνω φαίνεται στο σχήμα 1.1 (Θεμιστοκλής Ν. Παναγιωτόπουλος). Έχοντας ορίσει με τον παραπάνω τρόπο την αρχιτεκτονική ενός ευφυού πράκτορα, το επόμενο βήμα είναι να καθορίσουμε με ποιο τρόπο τα ερεθίσματα του περιβάλλοντος σε συνδυασμό με την παρούσα εσωτερική κατάσταση καθορίζουν την επόμενη εσωτερική κατάσταση καθώς και την ενέργεια που θα κάνει ο πράκτορας με τη βοήθεια των επιδραστών του. Πρέπει δηλαδή να ορίσουμε τον τρόπο με τον οποίο λειτουργούν οι συναρτήσεις internal και action. Πάνω σ αυτό το θέμα υπάρχουν αρκετές προσεγγίσεις που μπορούν να διακριθούν σε δύο βασικές κατηγορίες: τις κλασσικές και τις εναλλακτικές προσεγγίσεις. Κλασσικές προσεγγίσεις: Επίγνωσεις (deliberative) αρχιτεκτονικές. Στην κλασσική προσέγγιση θεωρούμε τον πράκτορα ως έναν ειδικό τύπο συστήματος βασισμένο σε 13

15 γνώση (knowledge based system) χρησιμοποιώντας έτσι μία αρχιτεκτονική που είναι ευρύτερα γνωστή ως deliberative. Με τον όρο επίγνωση αρχιτεκτονική πράκτορα εννοούμε την αρχιτεκτονική η οποία αναπαριστά τον κόσμο με ένα συμβολικό μοντέλο και οι αποφάσεις του πράκτορα παίρνονται μέσω λογικών συμπερασμάτων βασισμένων στην επεξεργασία συμβόλων. Η κατασκευή πρακτόρων με βάση την αρχιτεκτονική επίγνωσης θέτει δύο σημαντικά προβλήματα: 1. Το πρόβλημα της μετάφρασης (transduction problem), δηλαδή πώς θα μεταφράσουμε τον πραγματικό κόσμο σε μία επαρκή και ακριβή συμβολική περιγραφή. 2. Το πρόβλημα της αναπαράστασης και του συλλογισμού (representation and reasoning problem), πώς δηλαδή θα αναπαραστήσουμε συμβολικά την πληροφορία για σύνθετες οντότητες και διαδικασίες του πραγματικού κόσμου και πώς θα βγάλει συμπεράσματα ο πράκτορας βασισμένος στις πληροφορίες αυτές. Το πρώτο πρόβλημα απαιτεί τεχνικές από πεδία όπως αναγνώριση ομιλίας, αναγνώριση εικόνας κλπ ενώ για το δεύτερο πρόβλημα χρειάζονται γνώσεις πάνω σε αναπαράσταση γνώσης, αυτόματη συμπερασματολογία κλπ. Ωστόσο μπορούμε να πούμε ότι κανένα από τα δύο αυτά προβλήματα δεν έχει βρει ακόμα τη λύση του αφού ακόμα και απλά προβλήματα, όπως για παράδειγμα ο κοινότυπος συλλογισμός (commonsence reasoning), έχουν αποδειχθεί εξαιρετικά πολύπλοκα. Το βασικό πρόβλημα φαίνεται ότι είναι η δυσκολία εφαρμογής τεχνικών απόδειξης θεωρημάτων (theorem proving) ακόμα και σε απλές λογικές και η πολυπλοκότητα των αλγορίθμων επεξεργασίας συμβόλων. Έτσι, η ιδέα της κατασκευής ενός ευφυού πράκτορα χρησιμοποιώντας συμβολική λογική και αλγορίθμους απόδειξης θεωρημάτων, αν και αρκετά ελκυστική σαν ιδέα, αποδεικνύεται δύσκολη στην πρακτική εφαρμογή. Λόγω των προβλημάτων αυτών που παρουσιάζουν τέτοιου είδους αρχιτεκτονικές, πολλοί ερευνητές έχουν στραφεί σε εναλλακτικές αρχιτεκτονικές πρακτόρων. Εναλλακτικές προσεγγίσεις: Αρχιτεκτονικές αντίδρασης (reactive architectures). Τα πολλά άλυτα προβλήματα που έχουν οι κλασσικές προσεγγίσεις που είδαμε παραπάνω οδήγησαν πολλούς ερευνητές σε αρχιτεκτονικές που είναι ευρύτερα γνωστές ως αρχιτεκτονικές αντίδρασης (reactive architectures). Τέτοιου είδους αρχιτεκτονικές έχουν το χαρακτηριστικό ότι δεν χρησιμοποιούν συμβολικό μοντέλο αναπαράστασης του κόσμου ούτε και πολύπλοκες τεχνικές συμπερασματολογίας. Βασική ιδέα των αρχιτεκτονικών αντίδρασης είναι ότι η ευφυής συμπεριφορά μπορεί να δημιουργηθεί χωρίς σαφείς αναπαραστάσεις και χωρίς τεχνικές σαφούς συμπερασματολογίας, αλλά απλά μπορεί να προκύψει μέσω της αλληλεπίδρασης του πράκτορα με το περιβάλλον του. Υβριδικές Αρχιτεκτονικές: Οι υβριδικές αρχιτεκτονικές προσπαθούν να συνδυάσουν την αρχιτεκτονική επίγνωσης με την αρχιτεκτονική αντίδρασης εκμεταλλευόμενες τα πλεονεκτήματα της κάθε μίας. Έτσι ένας υβριδικός πράκτορας αποτελείται από δύο υποσυστήματα: το υποσύστημα επίγνωσης όπου υπάρχει μία συμβολική αναπαράσταση του κόσμου και το υποσύστημα αντίδρασης με το οποίο ο πράκτορας μπορεί να αντιδρά στα ερεθίσματα του περιβάλλοντος χωρίς να καταφεύγει σε τεχνικές απόδειξης θεωρημάτων. Συνήθως δίνεται προτεραιότητα στο υποσύστημα αντίδρασης έτσι ώστε ο πράκτορας να μπορεί να αποκρίνεται άμεσα σε ερεθίσματα του περιβάλλοντος. Οι υβριδικές αρχιτεκτονικές έχουν αρκετά πλεονεκτήματα συγκρινόμενες με τις 14

16 αρχιτεκτονικές επίγνωσης και τις αρχιτεκτονικές αντίδρασης. Ωστόσο, το σημαντικότερο πρόβλημα αυτών των αρχιτεκτονικών είναι ότι δεν είναι πάντα εύκολο να συνδυαστούν μεταξύ τους τα δύο υποσυστήματα. 1.4 Γλώσσες προγραμματισμού πρακτόρων Καθώς η τεχνολογία πρακτόρων γίνεται όλο και πιο δημοφιλής, περιμένουμε την εμφάνιση όλο και περισσότερων εργαλείων που βοηθούν το σχεδιασμό και την υλοποίηση υπολογιστικών συστημάτων βασισμένων σε πράκτορες. Έτσι έχουν ήδη αναπτυχθεί αρκετές γλώσσες προγραμματισμού οι οποίες επιτρέπουν τον προγραμματισμό με βάση έννοιες της θεωρίας πρακτόρων. Τέτοιες γλώσσες που έχουν κατά καιρούς αναπτυχθεί εξυπηρετούν κυρίως ερευνητικούς σκοπούς και δεν είναι ευρύτερα διαδεδομένες για ανάπτυξη εμπορικών εφαρμογών. Οι γλώσσες πρακτόρων μπορούμε να πούμε ότι εισάγουν ένα νέο είδος προγραμματισμού, τον προγραμματισμό προσανατολισμένο στους πράκτορες (agent oriented programming ή AOP). Αυτό το είδος προγραμματισμού μπορούμε να πούμε ότι είναι μία εξειδίκευση του αντικειμενοστραφούς προγραμματισμού (object oriented programming ή OOP). Η συσχέτιση του AOP με τον OOP βασίζεται στην λογική ότι οι έννοιες αντικείμενο και πράκτορας έχουν σαφείς αναλογίες (πίνακα 1.2). Τόσο τα αντικείμενα όσο και οι πράκτορες επικοινωνούν μεταξύ τους με μηνύματα. Επίσης, ο πράκτορας έχει μία εσωτερική κατάσταση (διανοητική κατάσταση) που δεν είναι άμεσα προσβάσιμη από τον έξω κόσμο όπως ακριβώς και το αντικείμενο έχει το ιδιωτικό του τμήμα. Έτσι, όπως στον ΟΟP έχουμε ως βασικά στοιχεία προγραμματισμού τα αντικείμενα, στον AOP έχουμε τους πράκτορες. Ενώ όμως τα αντικείμενα μπορούν να έχουν οτιδήποτε ως εσωτερική κατάσταση (το ιδιωτικό τμήμα του αντικειμένου μπορεί να περιέχει κάθε μορφής δεδομένα) η εσωτερική κατάσταση των πρακτόρων έχει καθορισμένη μορφή και ονομάζεται διανοητική κατάσταση (mental state). Η διανοητική κατάσταση αποτελείται από στοιχεία όπως πεποιθήσεις, ικανότητες, αποφάσεις, δεσμεύσεις κλπ. Επίσης και τα μηνύματα που ανταλλάσσονται μεταξύ των πρακτόρων είναι συγκεκριμένης μορφής όπως πληροφορήσεις, αιτήσεις κλπ. Συνολικά λοιπόν, ένα υπολογιστικό σύστημα βασισμένο σε πράκτορες αποτελείται από ένα σύνολο πρακτόρων 15

17 που επικοινωνούν μεταξύ τους με μηνύματα της μορφής που αναφέραμε παραπάνω. Για να πάρουμε μία καλύτερη ιδέα για τον AOP θα περιγράψουμε με συντομία μία συγκεκριμένη γλώσσα πρακτόρων, την AGENT 0. Αν και η AGENT 0 είναι εξαιρετικά απλουστευμένη, μπορεί να μας δώσει μία γενική ιδέα για τον προσανατολισμένο σε πράκτορες προγραμματισμού. Η γλώσσα AGENT 0 : Η λογική που χρησιμοποιεί η γλώσσα AGENT 0 περιέχει τρεις βασικές έννοιες: πεποίθηση, δέσμευση και ικανότητα. Για να εκφράσουμε την t πεποίθηση χρησιμοποιούμε τη γενική μορφή Ba που σημαίνει ότι στον χρόνο t ο πράκτορας a πιστεύει την πρόταση φ. Για την δέσμευση έχουμε τη γενική μορφή t OBL, που σημαίνει ότι στον χρόνο t ο πράκτορας a είναι δεσμευμένος προς τον ab, πράκτορα b για την πρόταση φ. Τέλος, για την ικανότητα έχουμε τη μορφή σημαίνει ότι στον χρόνο t ο πράκτορας a είναι ικανός για την πρόταση φ. t CANa, που Η γλώσσα AGENT 0 ανταποκρίνεται στην παραπάνω λογική. Έτσι ένας πράκτορας αποτελείται από ένα σύνολο ικανοτήτων (καθορίζει τι μπορεί να κάνει ο πράκτορας), ένα σύνολο αρχικών πεποιθήσεων και δεσμεύσεων και τέλος, ένα σύνολο κανόνων δέσμευσης το οποίο καθορίζει τις ενέργειες του πράκτορα. Κάθε κανόνας δέσμευσης περιλαμβάνει μία συνθήκη μηνύματος, μία συνθήκη διανοητικής κατάστασης και μια ενέργεια. Αν η συνθήκη μηνύματος ικανοποιείται από τα μηνύματα που έχει δεχτεί ο πράκτορας και η συνθήκη διανοητικής κατάστασης ικανοποιείται από τις πεποιθήσεις του πράκτορα τότε ο κανόνας δέσμευσης ενεργοποιείται. Αυτό έχει σαν συνέπεια ο πράκτορας να δεσμευτεί για τη συγκεκριμένη ενέργεια. Οι ενέργειες διακρίνονται σε εσωτερικές (επιδρούν στην εσωτερική κατάσταση του πράκτορα) και σε επικοινωνιακές (αποστολή μηνυμάτων). Τα μηνύματα μπορούν να έχουν μόνο τις τρεις ακόλουθες μορφές: αίτηση, ακύρωση αίτησης και ενημέρωση. Τα μηνύματα αίτησης ή ακύρωσης μεταβάλλουν τις δεσμεύσεις του πράκτορα ενώ τα μηνύματα ενημέρωσης αλλάζουν τις πεποιθήσεις του πράκτορα. Άλλες Γλώσσες Πρακτόρων : Εκτός από την AGENT 0 υπάρχουν και άλλες, περισσότερο εξελιγμένες γλώσσες πρακτόρων, μερικές από τις οποίες αναφέρουμε παρακάτω: 1. PLACA (PlAnning Communicating Agents): Η PLACA επιτρέπει τον σχεδιασμό δράσης των πρακτόρων και την επικοινωνία μεταξύ τους με σκοπό την επίτευξη στόχων υψηλού επιπέδου. 2. Concurrent MetateM: Με την γλώσσα αυτή μπορούμε να κατασκευάσουμε συστήματα πρακτόρων αποτελούμενα από πολλούς πράκτορες που δρουν ταυτόχρονα και επικοινωνούν μεταξύ τους μέσω ασύγχρονης εκπομπής μηνυμάτων. Η σημασιολογία της γλώσσας αυτής συνδέεται στενά με την σημασιολογία της χρονικής λογικής. 3. APRIL και MAIL: Οι γλώσσες αυτές βοηθούν στην ανάπτυξη εφαρμογών πολλών πρακτόρων. Η APRIL προσφέρει λειτουργίες για πολυεπεξεργασία και επικοινωνία μεταξύ πρακτόρων. Η MAIL παρέχει μία συλλογή προκαθορισμένων εργαλείων αφαίρεσης όπως καθορισμός πλάνων από πολλούς πράκτορες. 4. TELESCRIPT: Η Telescript είναι ίσως η πρώτη εμπορική γλώσσα πρακτόρων. Η γλώσσα αυτή παρέχει ένα περιβάλλον για ανάπτυξη κοινωνιών πρακτόρων. Στην Telescript έχουμε δύο βασικές έννοιες: τους τόπους και τους πράκτορες. Οι τόποι είναι εικονικές τοποθεσίες στις οποίες μπορούν να δρουν πράκτορες ενώ οι 16

18 πράκτορες είναι παραγωγοί και καταναλωτές αγαθών σε μία εικονική αγορά. Οι πράκτορες μπορούν να κινούνται από τον ένα τόπο στον άλλο, καθώς επίσης και να επικοινωνούν μεταξύ τους είτε βρίσκονται σε διαφορετικές τοποθεσίες είτε βρίσκονται στην ίδια τοποθεσία (οπότε έχουμε συνάντηση ). 1.5 Εφαρμογές των ευφυών πρακτόρων Οι περισσότερες εφαρμογές πρακτόρων που έχουν υλοποιηθεί μέχρι σήμερα είναι κυρίως πειραματικές. Παράλληλα, πολλά πανεπιστήμια και εταιρίες (όπως η Microsoft και η IBM) κάνουν έρευνες πάνω στον τομέα των ευφυών πρακτόρων. Τα ερευνητικά αυτά προγράμματα στοχεύουν κυρίως στην κατασκευή σχετικά απλών εφαρμογών που να μπορούν να υλοποιηθούν σε εύλογο χρονικό διάστημα. Έτσι γίνεται αρχικά έρευνα για απλούς τύπους πρακτόρων (όπως πρακτόρων αναζήτησης, πρακτόρων χειρισμού του ηλεκτρονικού ταχυδρομίου κλπ). Αφού κατασκευαστούν αυτοί οι απλοί τύποι πρακτόρων, χρησιμοποιούνται ως βάση για την κατασκευή πολυπλοκότερων πρακτόρων. Οι σημαντικότερες κατηγορίες εφαρμογών στις οποίες χρησιμοποιείται η τεχνολογία των ευφυών πρακτόρων είναι οι παρακάτω: Διαχείριση Ηλεκτρονικών Μηνυμάτων (e mail) Το λογισμικό διαχείρισης ηλεκτρονικών μηνυμάτων είναι ένας τομέας όπου ήδη χρησιμοποιούνται με αρκετή επιτυχία ευφυείς πράκτορες. Οι χρήστες αυτού του λογισμικού θέλουν να υπάρχει οργάνωση καθώς και ένα είδος προτεραιότητας στα μηνύματα που δέχονται μέσω του ηλεκτρονικού ταχυδρομίου (e mail). Αυτές οι λειτουργίες θα μπορούσαν να απλοποιηθούν με τη βοήθεια ενός ευφυούς πράκτορα στον οποίο ο χρήστης θα δίνει κάποιους κανόνες και προτιμήσεις σύμφωνα με τα οποία θα γίνει η οργάνωση των μηνυμάτων. Ο πράκτορας θα μπορεί επίσης να συμπεραίνει αυτόματα κανόνες παρατηρώντας και προσπαθώντας να βρει πρότυπα στη συμπεριφορά του χρήστη. Αναζήτηση Πληροφοριών Με την δημοτικότητα που έχει αποκτήσει το Διαδίκτυο, οι χρήστες έχουν διαθέσιμο ένα τεράστιο ποσό πληροφορίας. Έτσι δημιουργείται η ανάγκη για την ύπαρξη εργαλείων για αναζήτηση πληροφοριών. Οι μηχανές αναζήτησης που υπάρχουν στο Διαδίκτυο εξυπηρετούν αυτό το σκοπό και αναζητούν πληροφορίες με βάση λέξεις κλειδιά που δίνονται από το χρήστη. Όμως αυτός ο τρόπος αναζήτησης έχει το μειονέκτημα ότι απαιτεί από τον χρήστη να ορίσει τις σωστές λέξεις κλειδιά. Στην αντίθετη περίπτωση μπορεί να μην εμφανιστούν στον χρήστη όλες οι απαιτούμενες πληροφορίες ή αντίθετα μπορεί να του εμφανιστεί ένα μεγάλο πλήθος πληροφορίας, μεγάλο μέρος της οποίας είναι άσχετο. Μια πιο αποτελεσματική λύση στο πρόβλημα της αναζήτησης πληροφοριών θα μπορούσε να δοθεί με τη βοήθεια ενός ευφυούς πράκτορα που θα έχει τη δυνατότητα να αναζητά πληροφορίες με έναν περισσότερο ευφυή τρόπο. Έτσι, η αναζήτηση δεν θα γίνεται μόνο με βάση τις λέξεις που δίνει ο χρήστης αλλά και με λέξεις και έννοιες που σχετίζονται με τις δοθείσες. Ίσως ακόμα να μπορεί ο πράκτορας να κάνει και διορθώσεις στα ερωτήματα του χρήστη αν κρίνει ότι αυτά περιέχουν κάποιο λάθος. 17

19 Προσαρμοστικά Συστήματα Διεπαφής Τα γραφικά συστήματα διεπαφής (Graphic User Interfaces ή GUIs) προσφέρουν σήμερα έναν φιλικό τρόπο αλληλεπίδρασης του χρήστη με τον υπολογιστή. Καθώς όμως τα καινούργια προγράμματα παρουσιάζουν όλο και περισσότερες δυνατότητες και επιλογές, η διεπαφή (interface) τους τείνει και αυτή να γίνει πολύπλοκη. Παράλληλα, όλο και περισσότερα άτομα χρησιμοποιούν τους υπολογιστές, οπότε πολλοί από τους χρήστες δεν είναι καθόλου εξοικειωμένοι με αυτούς και έτσι αντιμετωπίζουν δυσκολίες στον χειρισμό. Είναι λοιπόν χρήσιμο πολλές φορές να υπάρχει κάποια βοήθεια προς τον άπειρο χρήστη πέρα από τα γνωστά κείμενα βοήθειας (help). Για το σκοπό αυτό χρησιμοποιούνται πράκτορες που ονομάζονται πράκτορες διεπαφής (interface agents). Αυτοί παρακολουθούν τη συμπεριφορά του χρήστη και τον βοηθούν αυτόματα όταν υπάρξει κάποιο πρόβλημα. Για παράδειγμα, όταν ο πράκτορας διεπαφής παρατηρήσει ότι ο χρήστης κάνει συχνά το ίδιο λάθος μπορεί να του εμφανίσει ένα κατατοπιστικό κείμενο που να του επεξηγεί το λάθος που έκανε. Πράκτορες αυτού του είδους χρησιμοποιούνται ήδη σε αρκετές δημοφιλείς εμπορικές εφαρμογές. Ηλεκτρονικό Εμπόριο Το ηλεκτρονικό εμπόριο είναι άλλος ένας τομέας που έχει γνωρίσει μεγάλη ανάπτυξη λόγω της δημοτικότητας του Διαδικτύου. Οι χρήστες που θέλουν να κάνουν αγορές μέσω ενός τέτοιου συστήματος πρέπει να αναζητήσουν πληροφορίες για τα προϊόντα που τους ενδιαφέρουν ενώ οι πωλητές πρέπει να αναζητήσουν υποψήφιους αγοραστές για να τους δώσουν πληροφορίες για τα προϊόντα τους. Ένας ευφυής πράκτορας θα μπορούσε να βοηθήσει τους αγοραστές ψάχνοντας πληροφορίες για προϊόντα και ελέγχοντας τις τιμές, τις προδιαγραφές και γενικά όλα τα χαρακτηριστικά τους. Με βάση αυτά τα στοιχεία ο πράκτορας θα είναι σε θέση να προτείνει την άριστη ή τις άριστες αγορές. Ένας πράκτορας επίσης θα μπορούσε να λειτουργεί για λογαριασμό των πωλητών προτείνοντας υποψήφιους αγοραστές και ακόμα δίνοντας συμβουλές για το προϊόν σε άτομα που το έχουν ήδη αγοράσει. Διαχείριση Συστήματος και Δικτύου Καθώς στον χώρο των υπολογιστών τείνουν να κυριαρχήσουν τα δίκτυα και η αρχιτεκτονική πελάτη-εξυπηρετητή (client server), η διαχείριση συστήματος και δικτύου τείνει να γίνει όλο και πιο πολύπλοκη. Έτσι οι διαχειριστές συστήματος και δικτύου χρειάζονται κάποια απλοποίηση στη διαχείριση για να αντιμετωπίσουν την πολυπλοκότητα αυτή. Η τεχνολογία των ευφυών πρακτόρων μπορεί να βοηθήσει προς αυτή την κατεύθυνση βοηθώντας τους χρήστες να διαχειρίζονται το σύστημα σε ένα ανώτερο επίπεδο αφαίρεσης. Επιπλέον, αυτοί οι πράκτορες θα μπορούν να αναγνωρίζουν πρότυπα συμπεριφοράς του συστήματος και να αντιδρούν κατάλληλα. Απομακρυσμένη Πρόσβαση Οι χρήστες σε ένα δίκτυο θέλουν να έχουν πρόσβαση σε πόρους που βρίσκονται σε οποιαδήποτε τοποθεσία στο δίκτυο. Ένας ευφυής πράκτορας που θα βρίσκεται μέσα στο δίκτυο θα μπορεί να ικανοποιεί τις αιτήσεις των χρηστών και παράλληλα να κάνει και κάποια επεξεργασία των δεδομένων που μεταφέρονται (πχ συμπίεση). 18

20 Συνεργασία Στη συνεργασία πολλοί χρήστες εργάζονται την ίδια στιγμή πάνω σε κοινά έγγραφα μέσω δικτύου συνήθως χρησιμοποιώντας βιντεοδιάσκεψη. Οι ευφυείς πράκτορες μπορούν να βοηθήσουν στη διαχείριση της συνεργασίας των ατόμων της ομάδας. Ψυχαγωγικές εφαρμογές Ιδιαίτερο ενδιαφέρον παρουσιάζει η ιδέα της χρησιμοποίησης ευφυών πρακτόρων σε τομείς όπως τα παιχνίδια, η εικονική πραγματικότητα και ο κινηματογράφος. Η βασική ιδέα σε τέτοιου είδους εφαρμογές είναι η κατασκευή εικονικών κόσμων πρακτόρων. Για την κατασκευή τέτοιων εικονικών κόσμων πρέπει πρώτα να κατασκευάσουμε αληθοφανείς πράκτορες (believable agents) δηλαδή πράκτορες που η συμπεριφορά τους μας δίνει την ψευδαίσθηση ότι έχουν πραγματικά ζωή. Η σημαντικότερη ιδιότητα αυτών των πρακτόρων είναι το συναίσθημα, δηλαδή δεν δρουν στο περιβάλλον με έναν μηχανικό τρόπο, αλλά έχουν μία συμπεριφορά που κατά κάποιο τρόπο μοιάζει με την ανθρώπινη. 19

21 ΚΕΦΑΛΑΙΟ 2 Ευφυή συστήματα εκπαίδευσης και πράκτορες Η τεχνολογία των πρακτόρων μπορεί να αντιμετωπίσει με επιτυχία πολλές από τις προκλήσεις που εισάγουν τα σημερινά περιβάλλοντα εκπαίδευσης (Aroyo, Kommers,1999). Ο κόσμος της εκπαίδευσης αλλάζει πλέον δραματικά και επηρεάζεται σε μεγάλο βαθμό από τις πληροφοριακές και διαδικτυακές τεχνολογίες. Αυτή η αλλαγή λαμβάνει χώρα τόσο σε τεχνολογικές όσο και σε διδακτικές μεθόδους που χρησιμοποιούνται στην παραδοσιακή εκπαίδευση αλλά και στην τηλέ-εκπαίδευση. Οι νέες τεχνολογίες επιτρέπουν την κατασκευή εφαρμογών που μπορούν να λειτουργήσουν ως προσωπικοί βοηθοί (personal assistants), οδηγοί χρήσης (user guides), εναλλακτικά συστήματα βοήθειας (alternative help systems), διαμεσολαβητές ανάμεσα στον άνθρωπο και το σύστημα (human-system mediators). Οδηγούμαστε έτσι σε εκπαιδευτικές δομές και παραδείγματα (education infrastructures and paradigms), που γίνονται πολυπλοκότερα και πιο δυναμικά. Τα εκπαιδευτικά συστήματα που προκύπτουν περιλαμβάνουν ένα πλήθος από διαφορετικές απαιτήσεις. Ενδεικτικά μπορούμε να αναφέρουμε: εξατομίκευση (personalization), προσαρμοστικότητα (adaptability), αποτελεσματικότητα (effectiveness), ευελιξία χρήστη (user mobility), υποστήριξη πλήθους πληροφοριών (information support), ασφάλεια (security). Οι ευφυείς πράκτορες έχουν τη δυνατότητα να στηρίξουν με ικανοποιητικό τρόπο όλες αυτές τις απαιτήσεις, σε σχέση με άλλες υπάρχουσες τεχνολογίες. 2.1 Απαιτήσεις προσαρμοστικότητας Η προσαρμοστικότητα αποτελεί το κεντρικό σημείο σχεδίασης των περισσοτέρων εκπαιδευτικών συστημάτων που βασίζονται στην τεχνολογία των πρακτόρων. Βασικό ζητούμενο σε αυτές τις περιπτώσεις είναι η προσαρμοστικότητα να προέρχεται από τον ίδιο το χρήστη, να βασίζεται δηλαδή στις ανάγκες και προτιμήσεις του, οδηγώντας έτσι σε εξατομικευμένα συστήματα. Με αυτό τον τρόπο αυξάνεται η αποτελεσματικότητα και η ευελιξία του συστήματος σε σχέση με ένα σύστημα που προσφέρει το ίδιο περιεχόμενο σε όλους τους χρήστες. Γνωρίσματα του χρήστη που χρησιμοποιούνται από τα εκπαιδευτικά συστήματα ως βάση για να προσαρμόσουν τη συμπεριφορά τους είναι τα εξής: η γνώση, οι στόχοι, το υπόβαθρο, και οι προτιμήσεις του χρήστη. Η γνώση του θέματος από το χρήστη θεωρείται το σημαντικότερο χαρακτηριστικό που χρησιμοποιείται από τα ευφυή εκπαιδευτικά συστήματα. Ένα σύστημα που βασίζεται στη γνώση του χρήστη για να προσαρμόσει τη συμπεριφορά του οφείλει με τη βοήθεια ευφυών πρακτόρων να αναγνωρίζει τις αλλαγές στην κατάσταση της γνώσης του χρήστη και να προσαρμόζει το μοντέλο που αντιστοιχεί σε αυτόν ανάλογα. Τα υπάρχοντα συστήματα χρησιμοποιούν κυρίως δυο τρόπους αναπαράστασης της γνώσης: (i) Με χρήση του μοντέλου επικάλυψης (overlay model) που βασίζεται στο δομημένο 20

22 μοντέλο του χώρου μάθησης. Το δομημένο μοντέλο του χώρου μάθησης αναπαρίσταται ως ένα δίκτυο εννοιών αυτού το χώρου, οι οποίες σχετίζονται μεταξύ τους σχηματίζοντας ένα είδος σημασιολογικού (semantic) δικτύου. Σε διαφορετικά συστήματα οι έννοιες αυτές μπορεί να έχουν διαφορετικές ονομασίες, - π.χ. θέματα, αντικείμενα, αποτελέσματα μάθησης- αλλά σε όλες τις περιπτώσεις αποτελούν τα στοιχειώδη κομμάτια της γνώσης για το συγκεκριμένο χώρο. Η πλειονότητα των συστημάτων χρησιμοποιεί αρκετά περίπλοκα μοντέλα χώρου, με πολλούς τύπους εννοιών και διάφορα είδη συνδέσμων που παριστάνουν σχέσεις ανάμεσα στις έννοιες. Για κάθε έννοια του χώρου μάθησης το μοντέλο επικάλυψης αποθηκεύει μια τιμή ή εκτίμηση (ποιοτική ή ποσοτική) αντιπροσωπευτική του επιπέδου γνώσης του χρήστη γι αυτήν. Δηλαδή το μοντέλο επικάλυψης διατηρεί ένα ζεύγος τιμών «έννοια-τιμή» για κάθε έννοια του χώρου μάθησης. (ii) Με χρήση του μοντέλου στερεοτύπων των χρηστών. Σε αυτό το μοντέλο γίνεται διάκριση διαφορετικών τύπων ή «στερεοτύπων» χρηστών (π.χ. αρχάριος, μέτριος, προχωρημένος, ειδικός) και αντιστοιχίζεται κάθε χρήστης σ ένα στερεότυπο. Και εδώ αποθηκεύονται ζεύγη τιμών «στερεότυπο-τιμή» όπου η τιμή μπορεί να είναι μια πιθανότητα (η πιθανότητα να ανήκει ο χρήστης στο συγκεκριμένο στερεότυπο) ή μια δυαδική τιμή (αληθής-ψευδής). Οι στόχοι του χρήστη είναι το πιο ευμετάβλητο χαρακτηριστικό που μπορεί να χρησιμοποιήσει ένα ευφυές σύστημα για την επίτευξη προσαρμοστικότητας. Σε ένα εκπαιδευτικό σύστημα πιθανοί στόχοι είναι η επίλυση ορισμένων προβλημάτων ή γενικότερα η απόκτηση κάποιου επιπέδου γνώσης σε συγκεκριμένα θέματα. Οι στόχοι του μαθητή είναι δυνατό να διαφοροποιούνται από μάθημα σε μάθημα και αρκετές φορές κατά τη διάρκεια του ίδιου μαθήματος. Γενικά μπορούμε να διακρίνουμε τοπικού επιπέδου στόχους που αλλάζουν αρκετά συχνά και γενικού ή υψηλού επιπέδου στόχους που είναι πιο σταθεροί. Για παράδειγμα σε ένα εκπαιδευτικό σύστημα ο μαθησιακός στόχος είναι στόχος υψηλού επιπέδου ενώ η επίλυση ενός προβλήματος είναι στόχος χαμηλού επιπέδου. Ο τρέχων στόχος του χρήστη μοντελοποιείται με τρόπο παρόμοιο με αυτόν του μοντέλου επικάλυψης. Κάθε σύστημα υποστηρίζει ένα σύνολο από πιθανούς στόχους χρήστη που μπορεί να αναγνωρίσει. Για να μοντελοποιήσει τους στόχους μπορεί να κάνει χρήση ενός δέντρου (δηλαδή μιας ιεραρχίας) ενεργειών ή μιας σειράς από ζεύγη τιμών «στόχος-τιμή», όπου η τιμή είναι η πιθανότητα ότι κάποιος στόχος είναι ο τρέχων στόχος του χρήστη. Το υπόβαθρο του χρήστη αναφέρεται σε όλες εκείνες τις πληροφορίες που συνδέονται με την προηγούμενη εμπειρία του. Οι συγκεκριμένες πληροφορίες ενδέχεται να μην είναι σχετικές με το τρέχον θέμα του συστήματος, αλλά μπορούν να αποδειχτούν χρήσιμες στη διαδικασία μάθησης του χρήστη. Ενδεικτικά μπορούμε να αναφέρουμε το επάγγελμα του χρήστη, την εμπειρία του σε εργασίες παρεμφερών περιοχών κλπ. Ένα τελευταίο χαρακτηριστικό που μπορεί να χρησιμοποιήσει ένα ευφυές εκπαιδευτικό σύστημα με στόχο την προσαρμοστικότητα είναι οι προτιμήσεις του χρήστη. Για διάφορους λόγους ο χρήστης ενδέχεται να προτιμά κάποιους κόμβους ή συνδέσμους από κάποιους άλλους ή συγκεκριμένα τμήματα μιας σελίδας από άλλα. Οι προτιμήσεις διαφέρουν από άλλα χαρακτηριστικά του μοντέλου χρήστη αφού δεν μπορούν να προκύψουν αυτόματα από το σύστημα - ο χρήστης πρέπει να ενημερώσει άμεσα ή έμμεσα για αυτές. Ο τρόπος αναπαράστασης των προτιμήσεων είναι επίσης διαφορετικός - οι προτιμήσεις συχνά αναπαρίστανται με αριθμητικές τιμές ή με ειδικούς τρόπους, π.χ. με τη χρήση μοντέλου ομάδας χρηστών που συγκεντρώνουν τις προτιμήσεις των μελών μιας συγκεκριμένης ομάδας χρηστών. 21

23 2.2 Μοντελοποίηση μαθητή Ένα ακόμα ζήτημα που σχετίζεται με τις ευφυείς εκπαιδευτικές εφαρμογές και παρουσιάζει ιδιαίτερο ενδιαφέρον είναι η μοντελοποίηση των μαθητών με στόχο τη δημιουργία των αντίστοιχων προφίλ μαθητών. Η περιγραφή που ακολουθεί αφορά τη μέθοδο μοντελοποίησης στη γενικότερη της μορφή και όπως θα φανεί στις επόμενες παραγράφους, εφαρμόζεται με τροποποιήσεις στα διάφορα συστήματα που θα περιγραφούν. Κάθε μοντέλο μαθητή χωρίζεται σε δύο τμήματα. Το πρώτο τμήμα περιλαμβάνει γενικές πληροφορίες για το μαθητή, όπως το όνομα του, ψευδώνυμα που πιθανόν χρησιμοποιεί για προσωπικούς λόγους μέσα στο σύστημα, ενδιαφέροντα του σε τομείς έξω από το χώρο της εφαρμογής, καθώς και άλλες παραμέτρους που ενδέχεται να βοηθήσουν στη δημιουργία μιας γενικής εικόνας για το μαθητή. Τέτοιες παράμετροι είναι οι γενικές του γνώσεις (general knowledgeability), η διάθεσή του να προσφέρει βοήθεια (willingness to help) και δεδομένα παρελθόντος (history data), όπως πόσο ενεργός ήταν στις δραστηριότητες του συστήματος, πόσες φορές του ζητήθηκε να παρέχει βοήθεια, και πόσες από αυτές τις φορές τελικά προσέφερε βοήθεια. Άλλα στοιχεία, χρήσιμα για τη δημιουργία ενός ολοκληρωμένου προφίλ μαθητή αφορούν τις προτιμήσεις του σε τομείς από το εκπαιδευτικό υλικό και σε διδακτικές μεθόδους. Το δεύτερο τμήμα του μοντέλου μαθητή σχετίζεται με τη γνώση του, όπως αυτή αποτυπώνεται από την αλληλεπίδρασή του μαθητή με το σύστημα. Υπάρχουν δύο ειδών στοιχεία που χρησιμοποιούνται για την ανανέωση αυτού του τμήματος του μοντέλου μαθητή: άμεσα και έμμεσα. Τα άμεσα στοιχεία προκύπτουν από την παρακολούθηση των ενεργειών ενός μαθητή. Τέτοια στοιχεία είναι: τα θέματα που παρακολούθησε ο μαθητής κατά τη διάρκεια των μαθημάτων, οι βαθμοί που είχε στις εργασίες και στα διαγωνίσματα που έγραψε, η εκτίμηση του ίδιου του μαθητή για την προσωπική του απόδοση (student s self-assessment), η εκτίμηση του καθηγητή για το μαθητή, η εκτίμηση άλλων μαθητών από τις συζητήσεις στις οποίες έλαβε μέρος, τα ερωτήματα που έθεσε και οι απαντήσεις που έδωσε σε συζητήσεις με άλλους μαθητές ή σε FAQs, η εκτίμηση μαθητών στους οποίους προσέφερε βοήθεια, η εκτίμηση μαθητών από τους οποίους δέχτηκε βοήθεια. Τα έμμεσα στοιχεία προκύπτουν από την εφαρμογή κατάλληλης συλλογιστικής (reasoning) και όπως θα δούμε στις επόμενες παραγράφους, βασίζονται στην υπάρχουσα γνώση του συστήματος, στον τρόπο που αυτή αναπαρίσταται από το σύστημα, και τέλος στη γνώση που συλλέγεται και αφορά το μαθητή. Τα στοιχεία που τελικά συγκεντρώνονται χρησιμοποιούνται για να ανανεώσουν τα προφίλ των μαθητών. 2.3 Μέθοδοι προσαρμογής Αφού εντοπιστούν τα γνωρίσματα του χρήστη που θα χρησιμοποιηθούν για να επιτευχθεί προσαρμοστικότητα στη συμπεριφορά του συστήματος, στη συνέχεια θα πρέπει να καθοριστεί ο τρόπος με τον οποίο θα εκφραστεί αυτή η προσαρμοστικότητα στο σύστημα. Τα χαρακτηριστικά του συστήματος που μπορούν να προσαρμοστούν είναι τα στοιχεία εκείνα που το σύστημα μπορεί να παρουσιάσει με διαφορετικό τρόπο ανάλογα με το συγκεκριμένο χρήστη. Συγκεκριμένα, τα χαρακτηριστικά του συστήματος που μπορούν να προσαρμοστούν είναι: η σειρά παρουσίασης της εκπαιδευτικής ύλης (curriculum sequencing), η ανάλυση των λύσεων των μαθητών (intelligent analysis of 22

24 student solutions), η interactive βοήθεια κατά την αλληλεπίδραση για την επίλυση προβλημάτων (interactive problem solving support), o τρόπος παρουσίασης του περιεχομένου (adaptive content presentation), ο τρόπος πλοήγησης (adaptive navigation support) και η υποστήριξη συνεργασίας ανάμεσα στους μαθητές (adaptive collaboration support) (Brusilovsky, 1998). Ο στόχος της προσαρμοστικότητας στην σειρά παρουσίασης του υλικού είναι να βρεθεί για τον κάθε μαθητή η πλέον κατάλληλη σειρά εκπαιδευτικών μονάδων και εκπαιδευτικών στόχων (παραδείγματα, ερωτήσεις, προβλήματα) με την παρακολούθηση των οποίων θα βελτιστοποιηθεί η μαθησιακή διαδικασία. Η υψηλού επιπέδου προσαρμοστικότητα σειράς παρουσίασης καθορίζει το επόμενο θέμα ή έννοια που πρέπει να διδαχτεί. Η χαμηλού επιπέδου προσαρμοστικότητα σειράς παρουσίασης καθορίζει τον επόμενο εκπαιδευτικό στόχο μέσα από το τρέχον θέμα. Η προσαρμοστικότητα στην σειρά παρουσίασης είναι η παλαιότερη και περισσότερο χρησιμοποιημένη μέθοδος προσαρμογής στη συμπεριφορά ενός εκπαιδευτικού συστήματος. Η ευφυής ανάλυση των λύσεων των μαθητών έχει να κάνει με τις τελικές απαντήσεις των μαθητών σε εκπαιδευτικά προβλήματα. Σε αντίθεση με μη-ευφυείς ελεγκτές λύσεων που απλά πιστοποιούν την ορθότητα ή όχι της λύσης, οι ευφυείς αναλυτές μπορούν να εντοπίσουν ποιό ακριβός είναι το λάθος ή η έλλειψη στην λύση, καθώς και ποιά ελλιπής γνώση οδήγησε στο συγκεκριμένο σφάλμα. Ακόμα οι ευφυείς αναλυτές έχουν τη δυνατότητα να δώσουν αναλυτική αναφορά για το λάθος στο μαθητή και τελικά να του ανανεώσουν ανάλογα το μοντέλο που του αντιστοιχεί. Ο στόχος της interactive βοήθειας κατά την αλληλεπίδραση είναι να παρέχεται στο μαθητή ευφυής βοήθεια σε κάθε βήμα κατά την επίλυση ενός προβλήματος. Η βοήθεια μπορεί να είναι απλά μια παρότρυνση στο μαθητή για να φτάσει μέχρι την εκτέλεση του επόμενου ορθού βήματος για αυτόν. Για να επιτευχθεί αυτού του είδους η βοήθεια, οι ευφυείς πράκτορες πρέπει να παρακολουθούν τις ενέργειες του μαθητή, να τις κατανοούν και να χρησιμοποιούν αυτή την κατανόηση για να παρέχουν βοήθεια καθώς και να ανανεώνουν το μοντέλο μαθητή. Ο στόχος της προσαρμοστικότητας στην παρουσίαση είναι να προσαρμόζεται το περιεχόμενο της σελίδας που εμφανίζεται στον χρήστη ανάλογα με τους στόχους, τη γνώση και άλλες πληροφορίες που είναι αποθηκευμένες στο προφίλ του. Οι σελίδες συνεπώς δεν είναι στατικές αλλά κατασκευάζονται on the fly από τη σύνθεση ξεχωριστών κομματιών και είναι διαφορετικές για κάθε χρήστη. Έτσι ένας έμπειρος μαθητής θα διαβάσει σελίδες με αναλυτικά στοιχεία και περισσότερα δεδομένα, ενώ ένας αρχάριος θα διαβάσει σελίδες με περισσότερες εξηγήσεις. Ο στόχος της προσαρμοστικότητας στην πλοήγηση είναι να βρει ο μαθητής τα πιο κατάλληλα μονοπάτια στο εκπαιδευτικό υλικό, μέσα από την προσαρμογή του τρόπου παρουσίασης των συνδέσμων στις σελίδες που θα επισκεφτεί. Σε αυτά τα πλαίσια προτείνονται διάφορες ενδιαφέρουσες τεχνικές: Η απευθείας καθοδήγηση (direct guidance) αποφασίζει ποιός είναι ο βέλτιστος κόμβος για το χρήστη και τον οδηγεί κατευθείαν σε αυτόν. Στην τεχνική της ταξινόμησης (adaptive ordering) οι σύνδεσμοι μιας σελίδας ταξινομούνται και παρουσιάζονται με τη σειρά ταξινόμησης στο χρήστη. Η ταξινόμηση προκύπτει με βάση το μοντέλο μαθητή και κάποια άλλα κριτήρια. Στη συνέχεια ο μαθητής μπορεί να επιλέξει τον σύνδεσμο που προτιμά. Η απόκρυψη (hiding) είναι μια τεχνική που χρησιμοποιείται ευρέως. Βασικό σημείο της είναι ο περιορισμός 23

25 του χώρου της πλοήγησης με την απόκρυψη συνδέσμων σε «μη σχετικές» σελίδες. Μια σελίδα μπορεί να θεωρηθεί «μη σχετική» για διάφορους λόγους, π.χ. να μην είναι σχετική με τους στόχους του χρήστη ή ο χρήστης να μην είναι έτοιμος να κατανοήσει το περιεχόμενο της. Ο προσαρμοζόμενος σχολιασμός συνδέσμων (adaptive annotation) είναι μια τεχνική με την οποία γίνεται επαύξηση των συνδέσμων με κάποιο είδος σχολίων που δίνουν στο χρήστη περισσότερες πληροφορίες σχετικά με την τρέχουσα κατάσταση των κόμβων πίσω από τους σχολιασμένους συνδέσμους. Ακόμα, ο σχολιασμός μπορεί να είναι δυναμικός με βάση το μοντέλο χρήστη. Η υποστήριξη συνεργασίας ανάμεσα στους μαθητές είναι μια νέα τεχνική που προτάθηκε σχεδόν ταυτόχρονα με την εμφάνιση διαδικτυακών εκπαιδευτικών εφαρμογών. Ο στόχος της συνεργασίας είναι να χρησιμοποιηθεί η γνώση του συστήματος για του χρήστες, που βρίσκεται αποθηκευμένη στα μοντέλα μαθητών, ώστε να δημιουργηθούν ομάδες συνεργασίας. Υπάρχουν παραδείγματα συστημάτων όπου τα μέλη μιας ομάδας συνεργασίας προσπαθούν να λύσουν από κοινού κάποιο εκπαιδευτικό πρόβλημα ή που εντοπίζουν τον καταλληλότερο μαθητή για να απαντήσει τις ερωτήσεις που έχουν διατυπωθεί σχετικά με ένα θέμα. 2.4 Αρχιτεκτονική υλοποίησης Ένα σημαντικό ερώτημα που πρέπει να απαντηθεί πριν την κατασκευή μιας διαδικτυακής εκπαιδευτικής εφαρμογής και σχετίζεται με την αρχιτεκτονική της, είναι η κατανομή των τμημάτων του συστήματος. Οι τρεις κεντρικές λύσεις που έχουν προταθεί και υλοποιούνται στην πλειοψηφία των υπαρχόντων συστημάτων είναι οι εξής (Εμμανουήλ Βοζαλή): 1. Αρχιτεκτονική με αποκλειστική χρήση Java (Java-only solution): Ολόκληρη η εφαρμογή που αλληλεπιδρά με το μαθητή βρίσκεται σε ένα Java applet το οποίο «κατεβαίνει» από συγκεκριμένο URL και εκτελείται εξ ολοκλήρου στο μηχάνημα του μαθητή. Η εκπαιδευτική συμπεριφορά του συστήματος στο σύνολό της εντοπίζεται στον πελάτη (client). 2. Αρχιτεκτονική HTML-CGI (HTML-CGI architecture): Ο χρήστης αλληλεπιδρά με ειδικές φόρμες εισόδου δεδομένων HTML από ένα κοινό φυλλομετρητή δικτύου (web browser). Οι πληροφορίες που εισάγονται από το χρήστη αποστέλλονται στον εξυπηρετητή ιστού (web server), ο οποίος με τη σειρά του τις προωθεί σε ειδικό πρόγραμμα CGI (Common Gateway Interface). Το πρόγραμμα CGI θα ανταποκριθεί επιστρέφοντας μια νέα σειρά από σελίδες HTML που θα παρουσιαστούν στο χρήστη. Η εκπαιδευτική συμπεριφορά του συστήματος εντοπίζεται στην πλευρά του εξυπηρετητή (στο πρόγραμμα CGI) αλλά ο χρήστης αλληλεπιδρά με το σύστημα μέσα από έναν απλό φυλλομετρητή δικτύου. 3. Κατανεμημένη αρχιτεκτονική πελάτη εξυπηρετητή (client server) (distributed client-server architecture): Ένα Java applet που μπορεί να «κατεβεί» στον τοπικό υπολογιστή, περιλαμβάνει το τμήμα του συστήματος το οποίο ευθύνεται για την αλληλεπίδραση με το μαθητή. Το συγκεκριμένο Java applet επικοινωνεί όμως άμεσα με την υπόλοιπη εφαρμογή που βρίσκεται στο server χρησιμοποιώντας μια σύνδεση socket ή κάποιον άλλο μηχανισμό επικοινωνίας πελάτη-εξυπηρετητή. Μέρος της εκπαιδευτικής συμπεριφοράς εντοπίζεται στον εξυπηρετητή (server). Το υπόλοιπο βρίσκεται στον πελάτη (client). 24

26 Όταν προτιμηθεί η αρχιτεκτονική HTML-CGI, τα μοντέλα των μαθητών αποθηκεύονται στον κεντρικό εξυπηρετητή και όχι στην τοπική μηχανή που χρησιμοποίησε τελευταία ο χρήστης. Έτσι μπορούν να προσπελαστούν με ασφάλεια από οποιοδήποτε μηχάνημα-πελάτη και να περιέχουν πάντα τις τελευταίες πληροφορίες σχετικά με τον εκάστοτε μαθητή. Ακόμα στην περίπτωση της αρχιτεκτονικής HTML- CGI, οι όποιες διορθώσεις ή προσθήκες στο σύστημα (bug fixes and add-ons) μπορούν να γίνουν άμεσα στο κεντρικό εξυπηρετητή και να τις δουν όλοι οι χρήστες. Κάτι τέτοιο θα ήταν εξαιρετικά δύσκολο στην περίπτωση της αρχιτεκτονικής Java-only, καθώς οι όποιες αλλαγές θα έπρεπε να μεταφερθούν σε κάθε πελάτη (client) ξεχωριστά για να γίνουν αντιληπτές από όλους τους χρήστες. Το πρόβλημα με την λύση της αρχιτεκτονικής HTML-CGI είναι ότι δεν υπάρχει άμεση επικοινωνία ανάμεσα στον πελάτη και το πρόγραμμα CGI. Όλες οι πληροφορίες που ανταλλάσσονται περνάνε μέσα από τον εξυπηρετητή ιστού (web server). Για το λόγο αυτό προκύπτουν καθυστερήσεις στην απόκριση του συστήματος που σε πολλές περιπτώσεις δεν είναι επιτρεπτές. Από την άλλη μεριά, η αρχιτεκτονική Java-only, όπου όλη η εκπαιδευτική εφαρμογή «κατεβαίνει» και τρέχει τοπικά στο μηχάνημα του χρήστη, επιτρέπει την άμεση επικοινωνία του μαθητή με το σύστημα και την γρήγορη απόκριση του τελευταίου, χωρίς ενδιάμεσες παρεμβολές. Ένα μειονέκτημα της συγκεκριμένης προσέγγισης είναι ότι οι δυνατότητες για αλληλεπίδραση που παρέχονται μέσα από τις φόρμες HTML ενός απλού φυλλομετρητή δικτύου είναι περιορισμένες. Έτσι ο προγραμματιστής συχνά δεν μπορεί να πετύχει τα επιθυμητά αποτελέσματα στην επικοινωνία του μαθητή με το σύστημα. 2.5 Χρηση ευφυών πρακτόρων στην εκπαιδευτική διαδικασία Κατά τη διάρκεια των τελευταίων ετών, τα πανεπιστήμια έχουν καταδείξει ουσιαστική πρόοδο προς τη χρήση του Παγκόσμιου Ιστού (World Wide Web) για εφαρμογές που αφορούν εκμάθηση από απόσταση. Αυτό φαίνεται και από το γεγονός ότι πολλά σχολεία επιτρέπουν την παρακολούθηση μαθημάτων μέσω του διαδικτύου (on line). Επίσης μερικά άλλα σχολεία έχουν αντικαταστήσει τον παραδοσιακό τρόπο διδασκαλίας με ειδικό λογισμικό μάθησης. Ενώ η έννοια της μάθησης από απόστασης παρέχει την ευκολότερη εικονική πρόσβαση σε αρχάριους σε όλο τον κόσμο, παρόλα αυτά δημιουργεί και ορισμένα προβλήματα που αφορούν την επικοινωνία, τη συνεργασία, και την παιδαγωγική. Το λογισμικό εκμάθησης, παραδείγματος χάριν, δεν μπορεί να ανταγωνιστεί έναν καθηγητή που έχει άμεση επικοινωνία με έναν μαθητή. Αυτό οφείλεται στο γεγονός ότι ο ψηφιακός δάσκαλος θα έχει αρκετές δυσκολίες να αξιολογήσει την πρόοδο των σπουδαστών καθώς επίσης να παρακολουθήσει την συμμετοχή του κάθε μαθητή κατά τη διάρκεια της παράδοσης. Ωστόσο με την χρησιμοποίηση των ευφυών πρακτόρων σε μια εκμάθηση από απόσταση οι παραπάνω περιορισμοί μπορούν να αποφευχθούν. Παραδείγματος χάριν, με την βοήθεια ενός πράκτορα διδασκαλίας θα μπορούσαν να συλλεχθούν αρκετές πληροφορίες, πχ για τα ονόματα των εργασιών που ένας μαθητής δεν έχει εκπληρώσει εντός ενός διαστήματος, για τα on-line quiz που δεν έλαβε μέρος κτλ. Όλοι αυτοί οι σπουδαστές θα μπορούσαν ακόμη και να ταξινομηθούν σύμφωνα με τις προτιμήσεις του εκπαιδευτικού. Ο πράκτορας μπορεί επίσης να διαμορφωθεί αυτόματα ώστε να στέλνει ηλεκτρονικά μηνύματα ( ) σε κάθε σπουδαστή που ξεπέρασε το μέσο όρο ή έγραψε χειρότερα από το αναμενόμενο. 25

27 Σήμερα υπάρχει ένα μεγάλο πλήθος εμπορικών λογισμικών που χρησιμοποιούνται για την εκμάθηση από απόσταση. Μερικά ιδρύματα χρησιμοποιούν ένα homegrown περιβάλλον λογισμικού (Jafari, 1999) ενώ άλλα χρησιμοποιούν εμπορικά προϊόντα (BlackBoard, 1999 και WebCT 1999). Αν και αυτά τα λογισμικά προσφέρουν έναν εύκολο τρόπο στον χρήστη για την χρησιμοποίηση των web authoring εργαλείων, το πρόβλημα είναι ότι όλα προσφέρουν παθητικά και στατικά σύνολα υπηρεσιών. Κατά συνέπεια, μερικοί εκπαιδευτικοί ξοδεύουν περισσότερο χρόνο στην διδασκαλία από απόσταση από ότι θα χρειάζονταν στην διδασκαλία εντός μιας τάξης. Αυτό το πρόβλημα οφείλεται συνήθως στη χρονοβόρα απαίτηση συντήρησης των μαθημάτων που προσφέρονται σε ένα σύστημα μάθησης από απόστασης. Παραδείγματος χάριν, ο εκπαιδευτικός αναμένεται να ελέγχει τακτικά τα αρχεία των σπουδαστών ώστε να είναι ενημερωμένος για την πρόοδο του κάθε μαθητή, για τις εργασίες που έχει αναλάβει καθώς επίσης και την συμμετοχή του σε διάφορα on-line quiz. Ευφυείς πράκτορες που χρησιμοποιούνται μέσα σε ένα περιβάλλον διαχείρισης μαθημάτων μπορούν να εκτελέσουν μερικές από αυτές τις δραστηριότητες, που απελευθερώνουν το χρόνο του εκπαιδευτικού για το χειρωνακτικό έλεγχο των δραστηριοτήτων του κάθε μαθήματος. Για αυτό τον λόγο έχουν αναπτυχθεί διάφορες ομάδες ευφυών πρακτόρων που αναλαμβάνουν καθήκοντα που αφορούν την εκμάθηση, την διδασκαλία, και διάφορες διοικητικές βοηθητικές ανάγκες. Κάθε ένας από αυτούς τους πράκτορες ονομάζεται Digital Classmate, Digital TA (Teaching Assistant) and Digital Secretary, αντίστοιχα. Οι πράκτορες επικοινωνούν με τους ανθρώπινους πελάτες τους χρησιμοποιώντας διάφορες τεχνικές όπως είναι συνδυασμός κειμένου, γραφική αναπαράσταση, ομιλία, εκφράσεις του προσώπου, και αναγνώριση φωνής. Οι ευφυείς πράκτορες που ενεργούν ως Digital Classmate βοηθούν τους αρχάριους (σπουδαστές) σε μια μεγάλη ποικιλία από αντικείμενα εκμάθησης. Τέτοιοι πράκτορες μπορούν να διαμορφωθούν από τον αρχάριο, τον εκπαιδευτικό, τον υπεύθυνο των μαθημάτων, το περιεχόμενο των μαθημάτων, καθώς επίσης και από την περιβαλλοντική ρύθμιση προεπιλογής. Ο Digital Classmate Intelligent Agents που προτείνονται σε αυτό το έγγραφο θα εμφανιστεί ως ένα εργαλείο ή ως μια σύνδεση μέσα στο web-based σύστημα διαχείρισης μαθημάτων. Οι ευφυείς πράκτορες που ενεργούν ως Digital TA Intelligent Agents βοηθούν τον δάσκαλο (τον εκπαιδευτικό ή τα άλλα μέλη της ομάδας διδασκαλίας) σε διάφορες διδασκαλικές λειτουργίες που είναι διαμορφωμένες από τον εκπαιδευτικό, τον υπεύθυνο των μαθημάτων, το περιεχόμενο των μαθημάτων, και τις προεπιλεγμένες ρυθμίσεις του περιβάλλοντος. Σε μια εκμάθηση από απόσταση, παραδείγματος χάριν, ο εκπαιδευτικός είναι φυσικά απομονωμένος από τους σπουδαστές, μη απαραιτήτως γνωρίζοντας εάν και πότε οι σπουδαστές εργάστηκαν σε μια εργασία που τους έχει ανατεθεί, για πόσο καιρό, ή ποιες μορφές συνεργασίας χρησιμοποιήθηκαν, και συνεπώς είναι ανίκανος σε μια δυναμική αξιολόγηση των εργασιών ενός σπουδαστή. Επίσης ο δάσκαλος είναι συνήθως απληροφόρητος της προόδου του σπουδαστή έως ότου λάβει χώρα ένα διαγώνισμα, ή μέχρι ο σπουδαστής να παρατήσει ένα από τα μαθήματα. Από την άποψη της διατήρησης σπουδαστών όμως είναι σημαντικό να υπάρχει μια συνεχώς και δυναμική ενημέρωση του δασκάλου για τη συμμετοχή ενός σπουδαστή σε μια σειρά μαθημάτων, έτσι ώστε να βοηθήσει έναν αποθαρρυμένο σπουδαστή πριν παρατήσει το μάθημα. Τα παραπάνω προβλήματα τα λύνει η χρήση ενός Digital TA. Το Digital TA μπορεί να βοηθήσει έναν εκπαιδευτικό (course instructor) παρέχοντας του αρκετές δυνατότητες στην διευθέτηση ενός μαθήματος και στην συντήρησης του μαθήματος αυτού. Αυτό περιλαμβάνει την 26

28 αυτόματη ανακοίνωση των σπουδαστών για τις οφειλόμενες εργασίες τους, τη συμμετοχή τους στα μαθήματα, και διάφορους ελέγχους και housekeeping tasks. Οι ευφυείς πράκτορες που ενεργούν ως Digital Secretary βοηθούν τους σπουδαστές, τους εκπαιδευτικούς, και το προσωπικό σε διάφορες διοικητικές βοηθητικές ανάγκες, όπως διαμορφώνεται από το χρήστη και τις προκαθορισμένες περιβαλλοντικές ρυθμίσεις. Το χρονοδιάγραμμα μιας συνεδρίασης, ή η εύρεση ενός συνάδελφου με τα παρόμοια ερευνητικά ενδιαφέροντα που είναι διαθέσιμος κατά τη διάρκεια των Σαββατοκύριακων, ή η εύρεση των καλύτερων σπουδαστών στα μαθηματικά που μπορεί να χρησιμεύσουν ως σύμβουλοι, είναι παραδείγματα των καθηκόντων που αναλαμβάνονται από έναν Digital Secretary. Ένας Digital Secretary χρησιμοποιείται για να εξυπηρετήσει τους σπουδαστές, τους καθηγητές, και το προσωπικό ενός εκπαιδευτικού ιδρύματος. 2.6 Συστήματα εκπαίδευσης με πολλαπλούς πράκτορες Στη συνέχεια θα παρουσιαστούν ορισμένα εκπαιδευτικά συστήματα που βασίζονται στη χρήση τεχνολογίας ευφυών πρακτόρων MATS: Ένα ανοικτό κατανεμημένο εκπαιδευτικό σύστημα πολλαπλών πρακτόρων Το σύστημα MATS (Multi-Agent Tutoring System), (Solomos, Avouris, 1999) βασίζεται σε μια αρχιτεκτονική πολλαπλών πρακτόρων, που μοντελοποιεί μια κατάσταση εκμάθησης "ενός σπουδαστή - με πολλούς δασκάλους". Κάθε πράκτορας στο MATS αντιπροσωπεύει έναν δάσκαλο, ικανό να διδάξει ένα ξεχωριστό θέμα. Το ζητούμενο είναι να χτιστεί μια πλατφόρμα υποστήριξης πολλαπλών-πρακτόρων, καθώς και μηχανισμοί ανταλλαγής γνώσης ανάμεσα στους εκπαιδευτικούς πράκτορες οι οποιοι κινούνται ελεύθερα στον χώρο του διαδικτύου και περιλαμβάνουν διαφορετικές γνώσεις όσον αφορά το περιεχόμενο και την δομή. Η βασική ιδέα ανάπτυξης αυτού του συστήματος είναι η χρήση πολλαπλών πρακτόρων ως εκπαιδευτικοί. Αυτό οφείλεται στο γεγονός ότι η εκμάθηση από πολλαπλούς δασκάλους είναι μια κατάσταση που εμφανίζεται συχνά στην παραδοσιακή εκπαίδευση. Πολλαπλές συμπληρωματικές απόψεις του ίδιου θέματος παρέχονται συχνά στους σπουδαστές από πολλούς δασκάλους. Αυτό μπορεί να είναι ένα τυχαίο αποτέλεσμα ή μπορεί να είναι εγγενές χαρακτηριστικό της εκπαιδευτικής διαδικασίας. Οι πράκτορες του συστήματος MATS είναι αρκετά περίπλοκοι. Εκτός από τις βασικές ιδιότητες ενός συμβατικού εκπαιδευτικού συστήματος, μπορούν ακόμα να επικοινωνούν μέσα από το διαδίκτυο με άλλους πράκτορες και να συνεργάζονται μαζί τους. Το γεγονός ότι αυτοί οι ετερογενείς πράκτορες μπορούν να επικοινωνήσουν ο ένας με τον άλλον οφείλονται στην κοινή οντολογία που χρησιμοποιείται για να εκφράσουν το περιεχόμενο και τη γλώσσα επικοινωνίας που μπορούν να χρησιμοποιήσουν. Ως αποτέλεσμα της συνεργατικής φύση των πρακτόρων διδασκαλίας του MATS, είναι ότι μπορούν να βελτιώσουν τις ικανότητες διδασκαλίας και την αποτελεσματικότητά τους. Ένα παράδειγμα της συνεργάσιμης διδασκαλίας στην περίπτωση ενός αρχαρίου είναι να έχει παρακολουθήσει περισσότερα από ένα υποχρεωτικά μαθήματα ή να έχει ολοκληρώσει κάποια μαθήματα που έχει διδαχθεί από άλλους πράκτορες στο παρελθόν. Αυτό το γεγονός, που είναι γνωστό στους σχετικούς πράκτορες, απεικονίζεται στους 27

29 αντίστοιχους πράκτορες του μαθητικού μοντέλου. Η προηγούμενη γνώση του μαθητή χρησιμοποιείται έτσι ώστε παρόμοιες επεξηγήσεις από τα ήδη γνωστά θέματα να παρέχονται στον σπουδαστή, ενισχύοντας κατά συνέπεια την εκμαθησιακή διαδικασία. Επίσης η συνεργασία των δασκάλων μπορεί να οδηγήσει στην αποφυγή της επανάληψης των περιοχών γνώσεις που έχουν ήδη καλυφθεί από άλλους πράκτορες εάν αυτό είναι γνωστό στον πράκτορα διδασκαλίας. Εξάλλου ένας ακόμα λόγος ύπαρξης της επικοινωνίας οφείλεται στο ότι είναι πιθανόν ένας πράκτορας να μην μπορεί να ανταποκριθεί στις απαιτήσεις του χρήστη. Οπότε αναζητά βοήθεια από άλλους πράκτορες και εφόσον αυτή η υποστήριξη παραχθεί και είναι σε επαρκή μορφή και επίπεδο, η νέα γνώση μετασχηματίζεται και προσφέρονται στο σπουδαστή προκειμένου να τον βοηθήσει να ξεπεράσει την μαθησιακή δυσκολία. Υπάρχουν πολλά ζητήματα που πρέπει να αντιμετωπιστούν κατά τη διάρκεια διαμόρφωση αυτής της διαδικασίας. Μια γλώσσα επικοινωνίας υψηλού επιπέδου πρέπει να χρησιμοποιηθεί από τους πράκτορες παράδοσης μαθημάτων. Αυτή η γλώσσα πρέπει να είναι αρκετά πλούσια ώστε να εκφράσει τις έννοιες που διδάσκονται με επαρκή βαθμό λεπτομέρειας, με βάση το πρότυπο και το πλαίσιο της εκμάθησης του ενδιαφερόμενου σπουδαστή. Μια επαρκή οντολογία που εκφράζει τα αντικείμενα εκμάθησης πρέπει να χρησιμοποιηθεί επίσης. Αυτή πρέπει να είναι σε θέση να περιγράψει την meta-level υπαγόμενη-γνώση, που ανταλλάσσεται μεταξύ των ενοτήτων παράδοσης μαθημάτων. Η κύρια υπολογιστική οντότητα του συστήματος MATS είναι αυτή ενός πράκτορα. Οι πράκτορες στο πλαίσιό μας είναι ενεργά επίμονα τμήματα λογισμικού που αντιλαμβάνονται, αντιδρούν, ενεργούν και επικοινωνούν με το περιβάλλον τους και με τους άλλους πράκτορες. Οι πράκτορές μας είναι αρκετά σύνθετοι, με πρόσθετες ικανότητες από ένα κανονικό σύστημα διδασκαλίας, ώστε να έχουν την δυνατότητα να επικοινωνούν μέσω του Διαδικτύου με άλλους πράκτορες και να συνεργάζονται με αυτούς. Συνήθως μια ενέργεια συνεργασίας αρχίζει με μια αίτηση ενός πράκτορα για υποστήριξη κατά τη διάρκεια της εκπαιδευτικής δραστηριότητας. Οι πράκτορες αποκρίνονται στο μήνυμα συνεργασία-αιτήματος με έναν ασύγχρονο τρόπο, εάν κρίνουν ότι είναι σε θέση να υποστηρίξουν τον αιτούντα, ενώ εκτελούν τις κανονικές δραστηριότητες της διδασκαλίας τους. Η συνεργασία δια-πρακτόρων διευκολύνεται από έναν ειδικό τύπο πράκτορα, που ονομάζεται διαμεσολαβητής πράκτορας (BA). Αυτός ο BA περιέχει τα πρότυπα διάφορων διδασκαλικών πρακτόρων(ta). Τα πρότυπα μέσα στο BA, περιέχουν επαρκείς πληροφορίες προκειμένου να εξυπηρετηθεί η συνεργασία αιτημάτων στα TAs. 28

30 Σχ 2.1 Αρχιτεκτονική MATS Η επικοινωνία δια-πρακτόρων είναι βασισμένη σε μια γλώσσα που μοιάζει με την KQML, η οποία έχει καθοριστεί στο πλαίσιο αυτής της έρευνας. Αυτό καλείται εκπαιδευτική γλώσσα συνεργασίας πρακτόρων (EACL). Μια συνολική περιγραφή της EACL μπορεί να βρεθεί στο (Avouris 1999). Όπως περιγράφεται στις (Genesereth 1992 και Finin 1993), η KQML είναι μια υψηλού επιπέδου γλώσσα επικοινωνίας πρακτόρων βασισμένη στην speech act theory (Austin 1962 και Searle 1969). Οι εντολές της KQML έχουν οριστεί ως μια βιβλιοθήκη από ενέργειες επικοινωνίας. Η EACL χρησιμοποιεί τις εντολές τις KQML προκειμένου να μοντελοποιήσει ενέργειες εκμάθησης όπως την μεταφορά γνώσης, το αίτημα γνώσης, την ενημερώσει για την ικανότητα των πρακτόρων, κ.λπ. Υπάρχουν EACL εντολές που υποστηρίζουν την επικοινωνία διδασκαλικού πράκτορα και πράκτορα μεσολαβητή, θέματα registration ενός διδασκαλικού πράκτορα (Announce_course,Announce_change, Announce_removal, Announce_busy), την έναρξη ενός αιτήματος γνώσης (Ask_for_relevant_course) και πιθανός απαντήσεις του πράκτορα μεσολαβητή (Service_done, Reject, Contract_request). Όσο αφορά την peer to peer επικοινωνία μεταξύ των διδασκαλικών πρακτόρων, υπάρχουν λειτουργίες που εξετάζουν την έναρξη και την εκπλήρωση μιας διαδικασίας συμβάσεων όπως (Bid_offer, Sign_contract, Accept_contract, Reject_contract κ.λπ.). Η οργανωτική δομή του συστήματος MATS μπορεί να περιγραφεί ως μια nonmediated open agent society, όπου οι βοηθοί (BA) παρέχουν τις υπηρεσίες ενημέρωσης των πρακτόρων για άλλα μέλη της κοινότητας και την διαθεσιμότητά τους, χωρίς να παρεμβαίνουν στις σχέσεις δια-πρακτόρων ή να κάνουν οποιωνδήποτε προσπάθεια για να ισορροπήσουν τον φόρτο εργασίας. Η ανοικτή αρχιτεκτονική του συστήματος, το οποίο δεν απαιτεί point to point συνδέσεις μεταξύ των πρακτόρων ή της εγκατάστασης μόνιμων συνδέσεων, σημαίνει ότι οι δάσκαλοι μπορούν να μπουν ή να αποχωρήσουν ελεύθερα από την κοινότητα, χωρίς να επηρεάσουν την απόδοση του συστήματος. Βασικά, οποιοδήποτε TA μπορεί να επικοινωνήσει με όλα τα διαθέσιμα συντροφικά TAs ζητώντας τη βοήθειά τους για τις μαθησιακές δυσκολίες των μαθητών του. Για πρακτικούς λόγους εντούτοις, τα μέλη των Trusted agents που χτίζονται από κάθε πράκτορα, χρησιμοποιούνται προκειμένου να εστιάσουν στην αναζητήσει των συνεργατών αλληλεπίδρασης. Οι "εμπιστευμένοι πράκτορες" χρησιμοποιούνται σε συνδυασμό με έναν ανοικτό αίτημα για το μηχανισμό προσφορών, ώστε να επιλέξουν την ποιο κατάλληλη προσφορά για τη συνεργασία και την καθιέρωση ενός 29

31 "Collaboration Tread". Μια προσφορά από έναν εμπιστευμένο πράκτορα λαμβάνει ποιο υψηλή προτεραιότητα και προτιμάται από μια ενός μη γνωστού πράκτορα. Ο πράκτορας μεσολαβητής είναι ένας ασύγχρονος, αυτόνομος πράκτορας. Η κύρια λειτουργία του είναι να παράσχει υπηρεσίες καταλόγου στους διδακτικούς πράκτορες. Μπορούν να υπάρξουν περισσότερα από ένα ΒΑs, ανταλλάζοντας πληροφορίες μεταξύ τους. Ένα BA διαχειρίζεται μια γειτονιά των πρακτόρων, διατηρώντας ένα πρότυπο κάθε ένα από αυτούς, και περιγράφοντας πληροφορίες για τις ικανότητές τους, τους τομείς εμπειρίας τους, το επίπεδο του υλικού των μαθημάτων κ.λπ. Το BA συλλέγει επίσης τις πληροφορίες και τις στατιστικές της κατάστασης των πρακτόρων και της διαθεσιμότητας τους. Το BA λαμβάνει τα αιτήματα για συνεργασία, τα οποία διανέμει στους διαθέσιμους σχετικούς πράκτορες. Εντούτοις τα επόμενα στάδια της διαδικασίας προσφοράς πραγματοποιούνται άμεσα μεταξύ των requesting πράκτορα και των πλειοδοτών Οι πράκτορες διδασκαλίας(ta) είναι ασύγχρονα, αυτόνομα συστατικά που αντιπροσωπεύουν διαλογικές μονάδες λογισμικού εκμάθησης μέσα στην κοινωνία των συνεργαζόμενων δασκάλων. Καλύπτουν διαφορετικά θέματα, τα οποία ορίζονται ως οι τομείς εμπειρίας που μπορούν να διδάξουν. Ενώ το λογισμικό διαλογικής εκμάθησης μπορεί να περιλαμβάνει πολλούς διαφορετικούς πράκτορες, η διεπαφή (interface) τους στην κοινωνία των συνεργαζόμενων πρακτόρων είναι τυποποιημένη. Όλοι περιέχουν μια περιγραφή των ικανοτήτων τους, ένα λεπτομερές πρότυπο της γνώσης τους, εκφρασμένος σύμφωνα με μια οντολογία του συστήματος διδασκαλίας. Επίσης διατηρούν τα πρότυπα άλλων πρακτόρων (εμπιστευτικοί μηχανισμοί πρακτόρων) και επικοινωνούν με άλλους πράκτορες και το BA σε EACL. Σε ένα τυπικό σενάριο λειτουργίας του συστήματος, οι ΒΑ περιμένουν να δεχτούν αρχικές αιτήσεις από τους ΤΑ. Κάθε ΤΑ στέλνει τα χαρακτηριστικά του γνωρίσματα τα οποία καταγράφονται στον πλησιέστερο ΒΑ. Στη συνέχεια, ο μαθητής έρχεται σε επαφή με κάποιον ΤΑ. Ο ΤΑ θα προχωρήσει στην εκπαίδευση του μαθητή με βάση τις γνώσεις που διαθέτει. Αν σε κάποιο σημείο ο ΤΑ διαπιστώσει ότι δεν μπορεί να αντεπεξέλθει στις απαιτήσεις του μαθητή, θα στείλει ένα μήνυμα για αναζήτηση συνεργασίας στον ΒΑ. Το μήνυμα αυτό θα περιλαμβάνει πληροφορίες σχετικά με το συγκεκριμένο μαθητή καθώς και τις γνώσεις που αυτός αναζητά. Ο ΒΑ μόλις δεχτεί την αίτηση θα διατρέξει όλα τα μοντέλα των ΤΑ που έχει αποθηκευμένα. Θα επιλέξει το καταλληλότερο με βάση τις γνώσεις του αλλά και τη διαθεσιμότητα του. Παράλληλα, ένας ΤΑ ενδέχεται να δεχτεί ταυτόχρονα περισσότερες προτάσεις για συνεργασία. Σε αυτή την περίπτωση χρησιμοποιείται ένας αλγόριθμος επιλογής, για να προκύψει τελικά η αίτηση που θα ικανοποιηθεί. Για την δημιουργία αυτού του συστήματος, έπρεπε να καθοριστούν δύο είδη αρχιτεκτονικών. Το ένα αφορά τον καθορισμό μιας γενικής αρχιτεκτονικής TA για τους πράκτορες που χτίζονται από την αρχή και εισάγονται στο MATS, ενώ ο δεύτερος είναι ο καθορισμός των απαραίτητων μηχανισμών για τον μετασχηματισμό ενός υπάρχοντος συστήματος διδασκαλίας μέσα σε ένα TA. Ο δεύτερος στόχος είναι ποιο ενδιαφέρων και δυσκολότερος να επιτύχει, δεδομένου ότι εξαρτάται από τα συγκεκριμένα χαρακτηριστικά των επιμέρους συστατικών τους, την αρχιτεκτονική τους, τον APIs τους, το πρότυπο αλληλεπίδρασής τους και την γνώση που κτίζουν και αντιπροσωπεύουν. Για την λύση αυτού του προβλήματος αναπτύχθηκε ένα γενικό TA, δίνοντας του μια μορφωτική δομή. Έτσι ένα Collaboration Component (CC) για την δημιουργία ενός πράκτορα, χρησιμοποιείται από όλους τους πράκτορες MATS, ενώ το Interactive 30

32 Learning Component(ILC) χρησιμοποιείται για την επικοινωνία του πράκτορα με τον μαθητή. Το TAs που αναπτύσσονται μπορούν να αλληλεπιδράσουν με το χρήστη τους από απόσταση δεδομένου ότι ο πράκτορας χτίζεται σύμφωνα με την αρχιτεκτονική πελέτηεξυπηρετητή (client/server), που φαίνεται στο σχήμα 2.1. O client component χειρίζεται γεγονότα που δημιουργεί ο χρήστης και παρουσιάζει πληροφορίες σταλμένες από το ΤΑserver Οι απαντήσεις των χρηστών κωδικοποιούνται αναλόγως και διαβιβάζονται στον κεντρικό υπολογιστή. Η ανάπτυξη του πελάτη/εξυπηρετητή (client/server) συστήματος βασίζεται σε μια τεχνική εξυπηρετητή ιστού (web sever) /Java servlet, παρουσιάζοντας τις πληροφορίες στον χρήστη δια μέσου ενός φυλλομετρητή δικτύου (web browser). Η αρχιτεκτονική του αναπτυγμένου γενικού TA παρουσιάζεται στο σχήμα 2.2. Το κύριο μέρος του πράκτορα είναι ο Ελεγκτής πρακτόρων(agent Controller) που διαχειρίζεται τους πόρους του πράκτορα και είναι ο κύριος γεωμετρικός τόπος ελέγχου, καθορίζοντας την συμπεριφορά των πρακτόρων. Ο ελεγκτής διατηρεί τις δομές δεδομένων που περιέχουν την κατάσταση των νημάτων αλληλεπίδρασης με τους άλλους πράκτορες, διαχειρίζεται τις σειρές αναμονής εισαγωγής αλληλεπίδρασης και παραγωγής, και ζητήματα ερωτήσεων στο τμήμα περιοχών. Το τμήμα επικοινωνίας(communication Component) είναι αρμόδιο για την παραγωγή και receiving μηνυμάτων σε EACL. Λειτουργεί με έναν ασύγχρονο τρόπο όσον αφορά τον πράκτορα ελεγκτή και διατηρεί τις σειρές αναμονής εισαγωγής και παραγωγής. Τα πρότυπα σπουδαστών (Student Models) και τα εμπιστευμένα πρότυπα πρακτόρων (Trusted agents models) χρησιμοποιούνται για να διαχειριστούν την αλληλεπίδραση με τους μαθητές και τους άλλους πράκτορες αναλόγως. Τα πρότυπα σπουδαστών είναι βασισμένα σε ένα πρότυπο επικαλύψεων (Carbonell, 1970), και αντιπροσωπεύουν την πρόοδο των μαθητών με το διδαγμένο θέμα. Ενώ κάποια μορφή Student Model ίσως ήδη να υπάρχει στο Interactive learning Component, αυτό έχει θεωρηθεί απαραίτητο να διατηρούμε μια μορφή του SM στον Πράκτορα, προκειμένου να είναι σε θέση να απαντήσει στα αιτήματα άλλων πρακτόρων στο συγκεκριμένο μαθητή και να προσαρμόσει την συνεργασία πρακτόρων στα συγκεκριμένα χαρακτηριστικά των μαθητών. Το πρότυπο περιοχών(domain Model) είναι ένας χάρτης του Interactive learning Component, εκφρασμένο με μια καλά πολύ-στρωματική οντολογία, την περιοχή(domain). Οι ερωτήσεις που απευθύνονται στον πράκτορα στέλνονται στο πρότυπο περιοχών από τον ελεγκτή. Τα αντικείμενα του DM μπορούν να διαχειριστούν τα συγκεκριμένα μέρη του τμήματος εκμάθησης. Ενώ το Interactive learning Component είναι διαφορετικό από πράκτορα σε πράκτορα, το πρότυπο περιοχών έχει μια κοινή δομή. Είναι μέσω αυτού του μηχανισμού, να γίνεται πιθανό να ενσωματωθούν τα ετερογενή συστατικά του συστήματος MATS. Σχ 2.2 Η δομή του γενικού ΤΑ 31

33 2.6.2 WebDL: ένα προσαρμοζόμενο σύστημα για διαδικτυακή διδασκαλία Το σύστημα WebDL (Boticario, Gaudioso, Hernandez, 2000) είναι μια αρχιτεκτονική πολλαπλών πρακτόρων. Bασίζεται σε ένα συνδυασμό τεχνικών που εφαρμόζονται σε ευφυή εκπαιδευτικά συστήματα (intelligent tutoring systems-its), και σε προσαρμοζόμενα προγράμματα υπερμέσων (adaptive hypermedia programs-ah). Το σύστημα αποτελείται από δυο βασικά κομμάτια. Το πρώτο εμπλέκεται στην διασύνδεση με το χρήστη και υλοποιείται με τη βοήθεια ενός πράκτορα διαμεσολάβησης (interface agent). Το δεύτερο κομμάτι αφορά την προσαρμοστικότητα του συστήματος και αποτελείται από μια σειρά διαφορετικών πρακτόρων. Μια σύντομη αναφορά σε κάθε έναν από αυτούς τους πράκτορες ακολουθεί: Interface agent - συγκεντρώνει τις αιτήσεις των μαθητών και τις προωθεί στον coordinator agent. Επίσης κατασκευάζει τις τελικές σελίδες που θα παρουσιαστούν στο μαθητή με βάση την απάντηση που θα λάβει από τον coordinator agent καθώς και τους κανόνες σχεδίασης (design rules) που περιλαμβάνει ο τελευταίος στη βάση γνώσης του (knowledge base). Coordination agent - συγκεντρώνει αιτήσεις μαθητών από τον interface agent και τις προωθεί στους ανάλογους πράκτορες, που θα εμπλακούν στην ικανοποίηση τους. Τελικά δέχεται τις απαντήσεις από τους υπόλοιπους πράκτορες και τις συνενώνει σε μια μοναδική απάντηση, την οποία και στέλνει στον interface agent. User model agent and service model agent - υπευθυνότητα τους είναι να λαμβάνουν, να διατηρούν και να διαχειρίζονται όλες της πληροφορίες χρήστη (user) και εξυπηρέτησης (service). Συνεργάζονται με άλλους πράκτορες και τους παρέχουν τα δεδομένα που τους είναι απαραίτητα. Material agent - οφείλει να συγκεντρώνει και να διαχειρίζεται το συνολικό υλικό (material) του συστήματος, π.χ. πως ορίζονται οι HTML σελίδες, τις ασκήσεις κλπ. Pedagogical agent - είναι υπεύθυνος για την εξατομίκευση της διδασκαλίας στους μαθητές που χρησιμοποιούν το σύστημα. Στην παρούσα υλοποίηση του WebDL παρέχει κυρίως προσαρμοζόμενη πλοήγηση στο μαθητή. Contact agent - είναι υπεύθυνος για την επικοινωνία ανάμεσα στους μαθητές και τους καθηγητές. Χρησιμοποιεί το μοντέλο του μαθητή, συνεισφορές (contributions) που προέρχονται από μαθητές και καθηγητές, καθώς και πληροφορίες που συγκεντρώνονται από τους μαθητές που είναι συνδεδεμένοι στο σύστημα. Service identification agent - επιλέγει υπηρεσίες που μπορεί να ενδιαφέρουν ένα σημαντικό αριθμό χρηστών, με τη βοήθεια τεχνικών clustering. Ο σκοπός του είναι να "μάθει" τα χαρακτηριστικά που καθορίζουν ποιές υπηρεσίες μπορεί να ενδιαφέρουν ένα δεδομένο χρήστη. User modeling agent and service modeling agent - υπευθυνότητα τους είναι να μαθαίνουν κάθε μοντέλο χρήστη (user model) και μοντέλο υπηρεσίας (service model). 32

34 Advisor agent - για την επίτευξη της καλύτερης δυνατής εξατομίκευσης στη συμπεριφορά του συστήματος, οι δημιουργοί του επέλεξαν μια σειρά από ετερογενείς πράκτορες που εφαρμόζουν διαφορετικές μεθόδους μηχανικής μάθησης (machine learning methods), όπως νευρωνικά δίκτυα, bayesian nets, και δένδρα απόφασης, και συνδυάζουν τις τελικές λύσεις. Αυτό γίνεται για να εντοπιστεί η μέθοδος που ανταποκρίνεται καλύτερα σε κάθε πρόβλημα, η οποία και θα προτιμηθεί σε μελλοντικές περιπτώσεις. Δεν περιγράφεται με σαφήνεια ο τρόπος που γίνεται η επιλογή ή, σε περίπτωση που συνδυάζονται παραπάνω από μια λύσεις, πώς επιτυγχάνεται αυτός ο συνδυασμός. Οι σελίδες που παρουσιάζονται στους χρήστες δημιουργούνται δυναμικά με βάση το μοντέλο που αντιστοιχεί σε αυτούς καθώς και τις προτάσεις του συστήματος. Σύμφωνα με αυτές τις προτάσεις στις σελίδες μπορούν να προστεθούν σχόλια, να τονιστούν ή να κρυφτούν κομμάτια τους, ή να αλλάξει η σειρά παρουσίασης των θεμάτων. Το σύστημα ακόμα υποστηρίζει προσαρμοζόμενη πλοήγηση (adaptation navigation support) με βάση την οποία χρησιμοποιούνται συγκεκριμένοι κανόνες και από μια σειρά πιθανών συνδέσμων που προτείνονται αρχικά από τον καθηγητή, επιλέγονται εκείνοι που ταιριάζουν περισσότερο σε συγκεκριμένους μαθητές. Για τη συγγραφή αυτών των κανόνων χρησιμοποιείται μια γλώσσα λογικής που μοιάζει με την Prolog. Οι συγγραφείς δεν δίνουν πληροφορίες για το είδος των κανόνων που χρησιμοποιούνται στην προσαρμοζόμενη πλοήγηση, ούτε για το πως προκύπτουν. Τέλος, το WebDL υποστηρίζει προσαρμοζόμενη συνεργασία (adaptive collaboration support). Τέτοιου είδους συνεργασία είναι εφικτή ανάμεσα σε μαθητές και καθηγητές, κυρίως μέσα από σχολιασμό ασκήσεων, ανάμεσα σε άτομα που είναι συνδεδεμένα στο σύστημα την ίδια χρονική στιγμή, μέσα από chats, και ανάμεσα σε άτομα με κοινά ενδιαφέρονται, μέσα από τη χρήση ομάδων συνεργασίας (workgroups). Ο contact agent είναι ο πράκτορας που παρέχει στον coordinator agent όλες τις απαραίτητες προτάσεις για να καταστεί δυνατή η επικοινωνία και η συνεργασία ανάμεσα στα κατάλληλα άτομα. Και πάλι, δεν γίνεται λόγος για τον τρόπο που επιτυγχάνεται η προσαρμοστικότητα στη συνεργασία Ένα σύστημα πολλαπλών πρακτόρων για ευφυή δικτυακή εκπαίδευση Το σύστημα (Riordan, Griffith, 1999) που θα παρουσιαστεί εδώ επιχειρεί να καλύψει κάποια από τα κενά των περισσοτέρων σύγχρονων εκπαιδευτικών συστημάτων, συγκεκριμένα την έλλειψη συνεργασίας μεταξύ ισότιμων μαθητών για καλύτερη μάθηση (peer-peer learning), το στατικό περιεχόμενο της παρεχόμενης γνώσης(static nature of content) και την έλλειψη υποστήριξης εξατομικευμένης μάθησης (personalized learning). Βασικές έννοιες για το συγκεκριμένο σύστημα είναι η μοντελοποίηση των χρηστών (user modeling) και η διαχείριση των πληροφοριών (information management). Το σύστημα περιλαμβάνει μια βάση δεδομένων εκπαιδευτικού υλικού (content material database), όπου η ύλη είναι οργανωμένη σε ιεραρχίες θεμάτων. Η αρχική επιλογή των θεμάτων γίνεται από το διδάσκοντα. Παράλληλα, υπάρχει και ένας πράκτορας φιλτραρίσματος πληροφοριών (information filtering agent) που βρίσκει αυτόματα σχετικά θέματα στο διαδίκτυο. Τα θέματα αυτά μπορούν να περιληφθούν μόνο 33

35 μετά από την έγκριση του διδάσκοντα. Κάθε θέμα έχει ένα σχετικό επίπεδο δυσκολίας και αναμενόμενο χρόνο ολοκλήρωσης, κάποια quiz που ελέγχουν τις γνώσεις του μαθητή στο συγκεκριμένο θέμα, καθώς και συνδέσμους σε σχετιζόμενο υλικό που υπάρχει στο διαδίκτυο. Ακόμα, το σύστημα διαθέτει δυνατότητα για «δωμάτια» συνομιλίας μαθητών (chat rooms), πίνακα ανακοινώσεων (bulletin board), απαντήσεις σε ερωτήσεις που γίνονται συχνά (frequently asked questions ή απλά FAQ) και φόρμες που επιτρέπουν στους μαθητές να αλληλεπιδρούν με τους διδάσκοντες. Ένας πράκτορας μοντελοποίησης μαθητών (user-modeling agent) διατηρεί ένα προφίλ για κάθε μαθητή, το οποίο αποθηκεύεται σε ειδική βάση δεδομένων. Αρχικά το προφίλ είναι κενό. Το προφίλ συμπληρώνεται και στη συνέχεια ανανεώνεται με ποικίλους τρόπους: ανάλογα με τη δυσκολία των θεμάτων που ο μαθητής παρακολουθεί και το χρόνο που απαιτεί για να τα ολοκληρώσει, ανάλογα με τα αποτελέσματα που έχει στα διάφορα quiz, ανάλογα με τις ερωτήσεις που θέτει στους διδάσκοντες μέσα από τις διαθέσιμες φόρμες, ανάλογα με τα θέματα που παρακολουθεί στους πίνακες ανακοινώσεων αλλά και τις ερωτήσεις για τις οποίες αναζητά απαντήσεις στα FAQs. Όλες αυτές οι δραστηριότητες του μαθητή παρακολουθούνται από τον πράκτορα μοντελοποίησης, ο οποίος και αναθέτει στο μαθητή τον ανάλογο "βαθμό" σύμφωνα με την απόδοση του σε κάθε μια από τις δραστηριότητες. Ο πράκτορας μοντελοποίησης υπολογίζει σε τακτά χρονικά διαστήματα ένα normalized weighted άθροισμα όλων αυτών των "βαθμών". Το αποτέλεσμα είναι μια αριθμητική τιμή προφίλ ανάμεσα στο -1 και το +1 που αντιπροσωπεύει τη μέχρι στιγμής εικόνα του συγκεκριμένου μαθητή. Τα προφίλ των μαθητών χρησιμοποιούνται για να ελέγχουν την επιλογή της καταλληλότερης διδακτέας ύλης από τη βάση δεδομένων εκπαιδευτικού υλικού. Αυτό επιτυγχάνεται μετά από μια απλή σύγκριση του βαθμού δυσκολίας των θεμάτων, όπως αυτός έχει τεθεί αρχικά από τον διδάσκοντα, με το προφίλ του μαθητή. Τέλος, αξίζει να σημειωθεί ότι το σύστημα υποστηρίζει τη δυνατότητα συνεργασίας μεταξύ ισότιμων μαθητών. Συγκεκριμένα, μαθητές που έχουν παρόμοια προφίλ ωθούνται στη δημιουργία ομάδων κοινής εργασίας. Αυτές οι ομάδες μπορούν κατά διαστήματα να συγκεντρώνονται σε «δωμάτια» συνομιλίας για να συζητούν θέματα σχετικά με τη διδακτέα ύλη, τις εργασίες καθώς και να λύνουν απορίες. Ακόμα, με βάση τα κοινά τους προφίλ, μπορούν να τους προταθούν συγκεκριμένοι σύνδεσμοι στο διαδίκτυο όπου πιθανόν να βρουν εκπαιδευτικό υλικό που να τους ενδιαφέρει. 34

36 ΚΕΦΑΛΑΙΟ 3 Αρχιτεκτονική και λειτουργία συστήματος Στο κεφάλαιο αυτό παρουσιάζουμε ένα ατομικευσμένο σύστημα μάθησης μέσω του διαδικτύου. Το σύστημα αυτό ονομάζεται ATS(Artificial Technology System) και ο σκοπός του είναι να βοηθήσει τους χρήστες, ανεξαρτήτου επιπέδου να μάθουν τεχνητή νοημοσύνη. Με σκοπό να παρέχει προσαρμοσμένη βοήθεια και έναν τρόπο διδασκαλίας, ο ATS αποτελείται από έναν πράκτορα που παρέχει το κατάλληλο υλικό μάθησης ανάλογα με τις δυνάτοτητες και τις απαιτήσεις του κάθε μαθητή. Για τον σκοπό αυτό υπάρχει μια μονάδα που αξιολογεί την πρόοδο του κάθε χρήστη και αποθηκεύει όλες αυτές τις πληροφορίες στο μοντέλο μαθητή (student model). Το κύριο χαρακτηριστικό αυτού του συστήματος είναι η χρήση ενός εικονικού πράκτορα (avatar) που καθοδηγεί τον μαθητή καθόλι την διάρκεια παραμονής του στο σύστημα. 3.1 Αρχιτεκτονική Για να περιγράψουμε με ποιο τρόπο θα κατασκευάσουμε το σύστημα έτσι ώστε να έχει την συμπεριφορά που του έχουμε ορίσει, πρέπει να ασχοληθούμε με την αρχιτεκτονική του. Δηλαδή με την αρχιτεκτονική θα περιγράφουμε τις μονάδες από τις οποίες αποτελείται το σύστημα καθώς και τις αλληλεπιδράσεις των μονάδων αυτών μεταξύ τους. Ο ATS αποτελείται από πέντε ξεχωριστές μονάδες, που συνεργάζονται μεταξύ τους για την επίτευξη του βέλτιστου αποτελέσματος. Αυτές οι μονάδες είναι η μονάδα πιστοποίησης, η μονάδα διδασκαλίας, το μοντέλο μαθητή (student model), η μονάδα αξιολόγησης και ο εικονικός πράκτορας (avatar) όπως φαίνονται και στο σχήμα 3.1. Στην συνέχεια θα ασχοληθούμε με κάθε μια μονάδα χωριστά. 35

37 ΜΟΝΑΔΑ ΠΙΣΤΟΠΟΙΗΣΗΣ ΜΟΝΤΕΛΟ ΜΑΘΗΤΗ ΣΤΕΡΕΟΤΥΠΑ ΜΟΝΑΔΑ ΔΙΔΑΣΚΑΛΙΑΣ ΜΟΝΑΔΑ ΑΞΙΟΛΟΓΗΣΗΣ ΕΙΚΟΝΙΚΟΣ ΠΡΑΚΤΟΡΑΣ ΕΜΠΕΙΡΟ ΣΥΣΤΗΜΑ Σχ3.1. Αρχιτεκτονική συστήματος Μονάδα πιστοποίησης Μέσω της μονάδας πιστοποίησης ο χρήστης θα πρέπει αρχικά να εγγραφεί στο σύστημα ώστε να αποκτήσει έναν κωδικό πρόσβασης. Κατά την διάρκεια εγγραφής του συλλέγονται αρκετά προσωπικά του στοιχεία. Στην συνέχεια μπορεί να εισέλθει στο σύστημα οποιαδήποτε στιγμή. Μοντέλο μαθητή Το μοντέλο μαθητή περιέχει όλα τα στοιχεία που αφορούν τον μαθητή, όπως οι προτιμήσεις του, τα ενδιαφέροντά του, το επίπεδο γνώσεις του θέματος που διδάσκεται κτλ. Επειδή όμως κατά την πρώτη εισαγωγή του μαθητή στο σύστημα μας δεν έχουμε γενική εικόνα του μαθητή, χρησιμοποιούμε μια μονάδα που ονομάζεται μέθοδος στερεοτύπου. Η κύρια χρήση της είναι να αποκτήσουμε ένα υποθετικό προφιλ του κάθε μαθητή ώστε το σύστημα να προσαρμοστεί στο προφιλ αυτό. Για την επίτευξη αυτού του στόχου χρησιμοποιούμε κάποια ερωτηματολόγια που περιέχουν ερωτήσεις σχετικά με το επίπεδο γνώσεις του μαθητή, τον επιθυμητό τρόπο παρουσίασης του υλικού και τους προσδοκόμενους στόχους του από το σύστημα. Στην συνέχεια τα στοιχεία που έχουμε συλλέξει αποθηκεύονται στο μοντέλο μαθητή το οποίο ανανεώνεται με την απόκτηση καινούργιων στοιχείων του μαθητή. Μονάδα διδασκαλίας Στην μονάδα αυτή ο μαθητής έχει την δυνατότητα να επιλέξει οποιαδήποτε ενότητα από το διδακτικό υλικό. Ανάλογα με την ενότητα που επιλέγει εμφανίζεται και το αντίστοιχο υλικό. Το υλικό αυτό αποτελείται από την αντίστοιχη θεωρία και μερικά παραδείγματα. Η σειρά που εμφανίζεται το υλικό εξαρτάται αποκλειστικά από την επιλογή του μαθητή. Εκτός όμως από το υλικό ο μαθητής έχει την δυνατότητα να επιλέξει κάποιο τεστ, ώστε να εξετάσει κατά πόσο έμαθε μια έννοια. Με το τέλος του 36

38 τεστ, το σύστημα διατηρεί τα ποσοστά μάθησης της κάθε έννοιας στην οποία έχει εξεταστεί ο μαθητής και σε περίπτωση που δεν είναι ικανοποιητικά συμβουλεύει τον μαθητή να μελετήσει ξανά τις αντίστοιχες έννοιες και του προτείνει κάποια τεστ για καινούργια εξέταση. Τα τεστ αυτά περιέχουν μόνο ερωτήσεις για τις έννοιες στις οποίες υπάρχει το πρόβλημα. Μονάδα αξιολόγησης Έμπειρο σύστημα Η μονάδα αυτή έχει ως κύριο σκοπό να αξιολογήσει την πρόοδο του μαθητή κατά την διάρκεια παραμονής του στο σύστημα. Η αξιολόγηση αυτή γίνεται με την χρήση διάφορων τεστ. Από τα αποτελέσματα των τεστ ο δάσκαλος έχει την δυνατότητα να παρακολουθήσει την πρόοδο του κάθε μαθητή καθώς και να δει κάποια στατιστικά στοιχεία που αφορούν τις έννοιες και τις ενότητες στις οποίες ένας χρήστης εξετάστηκε. Επίσης παρέχεται και η δυνατότητα να δει συγκεντρωτικά στοιχεία για όλους τους μαθητές που έλυσαν ένα συγκεκριμένο τεστ. Η αξιολόγηση του μαθητή γίνεται με την χρηση ενός έμπειρου συστήματος (στην συγκεκριμένη περίπτωση με το Jess) το οποίο διαχωρίζει τους μαθητές σε διάφορα επίπεδα όπως άριστος, πολύ καλός κτλ. Εικονικός πράκτορας Οι εικονικοί πράκτορες έχουν ως σκοπό να βελτιώσουν την αποτελεσματικότητα του συστήματος και να υποκινήσουν τους μαθητές. Ο εικονικός πράκτορας που χρησιμοποιούμε στο σύστημα μας παρουσιάζει τις πληροφορίες στον χρήστη με έναν ποιο φυσικό και διασκεδαστικό τρόπο. Για να το πετύχει αυτό ο εικονικός πράκτορας παίρνει πληροφορίες από το μοντέλο μαθητή και επικοινωνεί με τον χρήστη με τον ίδιο τρόπο που θα επικοινωνούσε και ένας φυσικός δάσκαλος. Παρόλα αυτά δεν περιέχει κάποιο μηχανισμό συλλογισμού. 3.2 Διαχείριση συστήματος Διαδικασία εισαγωγής Η πρώτη σελίδα στην οποία έχει πρόσβαση ο χρήστης είναι η enterlogin.php. Εδώ στον χρήστη παρέχονται τρεις δυνατότητες (δες εικόνα 3.1). 37

39 Εικ 3.1. Φόρμα εισαγωγής στο σύστημα 1. Να γίνει μέλος, δηλαδή να εγγραφεί στο σύστημα (εικόνα 3.2). Το μόνο που χρειάζεται είναι να συμπληρώσει την φόρμα εγγραφής. Εδώ πρέπει να αναφέρουμε ότι κατά την διάρκεια εγγραφής ο χρήστης είναι υποχρεωμένος να συμπληρώσει τα περισσότερα από τα στοιχεία που του ζητούνται, όπως το όνομα, το επώνυμο, το προσωνύμιο(username) και ο κωδικός ενώ άλλα είναι προαιρετικά όπως το τηλέφωνο ή το . Εδώ πρέπει να αναφέρουμε επίσης ότι τα στοιχεία που συμπληρώνει ο χρήστης πρέπει να είναι σύμφωνα με τον ζητούμενο τύπο. Δηλαδή δεν μπορεί στο όνομα του να υπάρχουν αριθμητικά ή στο τηλέφωνο χαρακτήρες. 38

40 Εικ 3.2 Εγγραφή καινούργιου μέλους. 2. Να του υπενθυμίσει το σύστημα τον κωδικό του. Πολλές φορές κάποιος χρήστης έχει ξεχάσει τον κωδικό του οπότε πρέπει να βρεθεί με τον υπεύθυνο του συστήματος για να λύσουν το πρόβλημα αυτό. Στο σύστημα μας έχει προβλεφθεί το γεγονός αυτό, για αυτό σε περίπτωση που συμβεί αυτό, ο χρήστης το μόνο που χρειάζεται είναι να συμπληρώσει την αντίστοιχη φόρμα (εικόνα 3.3) με βάση τα στοιχεία που είχε αναφέρει κατά την διάρκεια εγγραφής του και το σύστημα θα του στείλει τον κωδικό του στο ηλεκτρονικό του ταχυδρομίο ( ) του ή σε περίπτωση που δεν έχει θα του το εμφανίσει στην οθόνη. 39

41 Εικ 3.3 Φόρμα υπενθύμισης κωδικού. 3. Να εισέλθει στο σύστημα. Εδώ πρέπει να αναφέρουμε ότι υπάρχουν δύο διαφορετικές περιπτώσεις. 3.1 Η πρώτη περίπτωση είναι ο χρήστης που προσπαθεί να εισέλθει στο σύστημα να είναι ο δάσκαλος. Τότε θα του εμφανιστεί μια σελίδα από την οποία μπορεί να ελέγχει όλες τις δυνατότητες του συστήματος (εικόνα 3.4) καθώς να βλέπει τα άτομα που έχουν λογαριασμό. Αυτές οι ενέργειες μπορούν να χωριστούν στις παρακάτω δραστηριότητες: Διαχείρηση χρηστών Επεξεργασία ερώτησης ασφαλείας Διαχείρηση ερωτήσεων τεχνητής νοημοσύνης Διαχείρηση μαθησιακού υλικού Δημιουργία τεστ Εμφάνιση στατιστικών στοιχείων για την απόδοση των μαθητών. 40

42 Εικ 3.4 Χειριστήρια δασκάλου 3.2 Η δεύτερη περίπτωση είναι ο χρήστης να είναι ένας απλός μαθητής. Τότε αν εισέρχεται για πρώτη φορα θα του εμφανιστεί ένα ερωτηματολόγιο που εφόσον το συμπληρώσει θα εισέρθει στο σύστημα διδασκαλίας (εικόνα 3.5), ενώ αν έχει ξανα-εισέλθει στο σύστημα θα εμφανίζεται κατευθείαν το σύστημα διδασκαλίας (εικόνα 3.6). 41

43 Εικ 3.5 Ερωτηματολόγιο για την πληροφόρηση του συστήματος με τις προτιμήσεις και το επίπεδο του μαθητή. Εικ 3.6 Η σελίδα που εμφανίζεται κατά την εισαγωγή ενός μαθητή στο σύστημα διδασκαλίας 42

44 Εκτός όμως από τις παραπάνω δυνατότητες το σύστημα εμφανίζει για πρώτη φορά και τον εικονικό πράκτορα. Η λειτουργία του στην περίπτωση αυτή είναι να ενημερώνει τον χρήστη για τον σκοπό ύπαρξης κάποιων συνδέσμων, και εμφανίζεται εφόσον ο χρήστης περάσει με το ποντίκι πάνω απο τους συνδέσμους αυτούς Εισαγωγή χρήστη Όταν ο χρήστης εισέρχεται για πρώτη φορα στο σύστημα θα πρέπει να συμπληρώσει ένα ερωτηματολόγιο ώστε να ξέρουμε ποίες είναι οι προτιμήσεις του, ο σκοπός που χρησιμοποιεί το σύστημα καθώς και το επίπεδο γνώσης του σε θέματα τεχνητής νοημοσύνης. Το ερωτηματολόγιο αυτό αποτελείται από 3 ερωτήσεις (εικόνα 3.5). Η πρώτη ερώτηση αναφέρεται στον σκοπό που ο μαθητής χρησιμοποιεί το σύστημα. Αν απαντήσει Overview σημαίνει ότι δεν ενδιαφέρεται να μάθει αρκετά. Αυτό σημαίνει ότι το υλικό θα πρέπει να εμφανίζεται με την απλούστερη μορφή. Στις άλλες περιπτώσεις το υλικό θα εμφανίζεται σε πλήρη μορφή. Η δεύτερη ερώτηση αναφέρεται στο επίπεδο που έχει ο μαθητής για τα θέματα που περιλαμβάνει το σύστημα μας. Ανάλογα με την απάντηση που θα δώσει θα του εμφανιστεί και ένα αντίστοιχο ερωτηματολόγιο που θα περιέχει κάποιες ερωτήσεις που αφορούν διάφορες θεματικές ενότητες. Ανάλογα με τον βαθμό που θα συγκεντρώσει θα καταταγεί σε ένα από τα επίπεδα (άσχετος, αρχάριος, καλός, πολύ καλός,άριστος). Αυτό δεν θα γίνεται αν απαντήσει «ποτέ» αφού τότε θα θεωρείται άσχετος. Ποιο συγκεκριμένα για τις άλλες περιπτώσεις: 1. Αν απαντήσει little θα του εμφανιστούν τρεις ερωτήσεις που θα είναι εύκολες. Για να θεωρείται αρχάριος πρέπει να συγκεντρώσει βαθμό μεταξύ 1.5 και 0.5 ενώ για να θεωρείται άσχετος βαθμό μικρότερο από 0.5. Αν απαντήσει και στις 3 σωστά θα του εμφανιστεί ένα καινούργιο ερωτηματολόγιο με 3 μεσαίες σε επίπεδο δυσκολίας ερωτήσεις. Αν ο βαθμός που συγκεντρώσει είναι κάτω από 2 θα θεωρείται αρχάριος. Αν είναι μεταξύ 2 και 3 θα θεωρείται καλός, αν είναι μεταξύ 3 και 3.75 θα θεωρείται πολύ καλός ενώ πάνω από 3.75 θα θεωρείται άριστος. 2. Αν απαντήσει moderate θα του εμφανιστούν τρεις ερωτήσεις μεσαίου επιπέδου δυσκολίας. Αν τις απαντήσει όλες σωστά θα του εμφανιστεί ένα ερωτηματολόγιο με τρεις δύσκολες ερωτήσεις. Διαφορετικά θα του εμαφανιστεί ένα ερωτηματολόγιο με τρεις εύκολες ερωτήσεις. Ανάλογα με τον βαθμό που θα συγκεντρώσει θα καταταγεί σε ένα από τα επίπεδα μόρφωσης. 3. Αν απαντήσει lot θα του εμφανιστούν τρεις δύσκολες σε επίπεδο ερωτήσεις. Αν τις απαντήσει όλες σωστά θα θεωρείται άριστος. Διαφορετικά θα του εμφανιστεί ένα ερωτηματολόγιο με τρεις μεσαίες ερωτήσεις. Ανάλογα με τον βαθμό που θα συγκεντρώσει θα καταταγεί σε ένα από τα επίπεδα μόρφωσης. Η τρίτη ερώτηση έχει σχέση με τον τρόπο που θέλει να εμφανίζονται τα τεστ που θα λύνει. Συγκεκριμένα ανάλογα με την απάντηση του θα εμφανίζεται κατά την διάρκεια ενός τεστ η υπόδειξη, η απάντηση και τα δύο ή κανένα από τα δύο. 43

45 3.2.3 Διαχείρηση χρηστών Στην διαχείρηση χρηστών, ο δάσκαλος έχει την δυνατότητα να ελέγχει ποια άτομα χρησιμοποιούν το σύστημα καθώς και τα άτομα που έχουν εγγραφεί. Μόλις εισέρχεται στο σύστημα εμφανίζεται ένας πίνακας που αναφέρει το όνομα, το επώνυμο και το προσωνύμιο (username) του κάθε χρήστη. Για κάθε έναν χρήστη αντιστοιχεί μια γραμμή απο την στήλη Δ/Μ (διαγραφή μαθητή), που αν το μαρκάρει και πατήσει «διαγραφή» θα διαγραφεί ο συγκεκριμένος μαθητής από το σύστημα (εικόνα 3.4). Το username αποτελεί έναν σύνδεσμο που όταν τον επιλέξει θα εμφανιστούν κάποια προσωπικά στοιχεία του χρήστη σε μορφή φόρμας, όπως το τηλέφωνο και το (εικόνα 3.7). Οπότε είναι αρκετά εύκολο να επικοινωνήσει με το άτομο αυτό. Από αυτήν την φόρμα επίσης μπορεί να αλλάξει τα στοιχεία ενός χρήστη σε περίπτωση που το απαιτήσει ο ίδιος ο χρήστης ή για λόγους ασφαλείας. Εικ 3.7 Προσωπικά στοιχεία του χρήστη bill Επεξεργασία ερώτησης ασφαλείας Στην επεξεργασία ερώτησης ασφαλείας, ο δάσκαλος μπορεί να δει ποιες ερωτήσεις υπάρχουν στον πίνακα ασφαλείας. Επίσης μπορεί να προσθέσει μια καινούργια ερώτηση, να διαγράψει μια παλιότερη και να διαρθώσει κάποια υπάρχουσα (εικόνα 3.8). 44

46 Εικ 3.8 Επεξεργασία ερώτησης ασφαλείας 45

47 ΚΕΦΑΛΑΙΟ 4 Διαχείρηση περιεχομένου 4.1 Διαχείρηση ερωτήσεων τεχνητής νοημοσύνης Το σημαντικότερο κομμάτι για την ομαλή λειτουργία του συστήματος αποτελεί η διαχείρηση των ερωτήσεων της τεχνητής νοημοσύνης. Οι ερωτήσεις αυτές αποτελούν τα κύρια συστατικά στοιχεία των τεστ που δημιουργεί ο δάσκαλος και τα οποία αξιολογούνται από την μονάδα αξιολόγησης, για να βρεθεί η απόδοση του κάθε μαθητή. Στην διαχείρηση των ερωτήσεων περιλαμβάνονται οι δυνατότητες εισαγωγής, διαγραφής και διόρθωσης μιας ερώτησης (εικόνα 4.1) καθώς και των πληροφοριών που αντιστοιχούν σε κάθε μια από αυτές. Στην συνέχεια θα εξετάσουμε κάθε μια από αυτές τις δυνατότητες χωριστά. Εικ 4.1 Διαχείρηση ερωτήσεων τεχνητής νοημοσύνης. Εισαγωγή ερώτησης τεχνητής νοημοσύνης Για την εισαγωγή μιας ερώτησης τεχνητής νοημοσύνης ο δάσκαλος πρέπει να επιλέξει την αντίστοιχη φόρμα. Στην φόρμα αυτή εκτός από το όνομα της ερώτησης θα 46

48 πρέπει να εισαχθούν διάφορες πληροφορίες για το είδος της ερώτησης, το επίπεδο δυσκολίας της, και τις τυχόν απαντήσεις της (εικόνα 4.2). Εικ 4.2. Εισαγωγή ερώτησης τεχνητής νοημοσύνης. Αναθεώρηση ερωτήσεων τεχνητής νοημοσύνης Άλλη μια δυνατότητα που προσφέρεται στον δάσκαλο κατά την διαχείρηση των ερωτήσεων είναι ότι ο δάσκαλος μπορεί να αναθεωρήσει τον βαθμό, τις υποδείξεις, και τις απαντήσεις της κάθε ερώτησης καθώς επίσης και την ίδια την ερώτηση. Για να το πετύχει αυτό αρκεί να επιλέξει κάθε ένα από στοιχεία που θέλει να αναθεωρήσει (εικόνα ) αντίστοιχα. 47

49 ικ 4.3 Αναθεώρηση ερώτησης Ε Εικ 4.4 Αναθεώρηση απάντηση-υπόδειξης-βαθμού 48

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

51 Εικ 4.6 Διάφορες πληροφορίες για το είδος της κάθε ερώτησης. Δομή γνώσης πεδίου Στις προηγούμενες υπο-ενότητες μελετήσαμε τις δυνατότητες που πρόσφερονται στον δάσκαλο κατά την επεξεργασία των ερωτήσεων τεχνητής νοημοσύνης, χωρίς να εξετάσουμε τον λόγο για τον οποίο είναι απαραίτητες. Αυτό οφείλονται στην δομή που έχουν οι ερωτήσεις που εισάγει ο δάσκαλος. Καταρχάς, πρέπει να αναφέρουμε ότι το υλικό μάθησης χωρίζεται σε μια δενδρική μορφή όπου η ρίζα είναι το μάθημα που αναφέρεται το σύστημα μας, δηλαδή τεχνητή νοημοσύνη ένώ τα φύλλα είναι οι έννοιες (βλέπε σχ 4.1). Οι εδιάμεσοι κόμβοι αποτελούν τα κεφάλαια, τις ενότητες και τις υποένοτητες. Η κάθε ερώτηση που εισάγουμε αναφέρεται σε μια από τις έννοιες που υπάρχουν. Δηλαδή κατά την εισαγωγή μιας νέας ερώτησης πρέπει να αναγράφεται και η έννοια που διαπραγματεύεται η συγκεκριμένη ερώτηση. Εκτός όμως από την έννοια θα πρέπει να γνωρίζουμε και την υποενότητα, την ενότητα και το κεφάλαιο στα οποία ανήκει η συγκεκριμένη έννοια (εικόνα 4.6) ώστε να μπορούμε από τα φύλλα του δέντρου να ανέβουμε προς την ρίζα. Εκτός όμως από την διάκριση της ερώτησης με βάση την έννοια στην οποία αναφέρεται, η κάθε ερώτηση χωρίζεται και με το επίπεδο δυσκολίας της. Υπάρχουν δηλαδή ερωτήσεις που ανάφερονται στην ίδια έννοια, αλλά η μια μπορεί να είναι αρκετά ποιο δύσκολη από την άλλη. Στο συγκεκριμένο σύστημα οι ερωτήσεις έχουν χωριστεί με βάση το επίπεδο δυσκολίας σε τρία είδη: τις εύκολες (ονομάζονται easy), τις μεσαίες(ονομάζονται medium) και τις δύσκολες (ονομάζονται difficult). 50

52 Θα πρέπει να αναφέρουμε επίσης ότι εκτός από την ερώτηση ο δάσκαλος θα πρέπει να εισάγει και την απάντηση της κάθε ερώτησης. Οι απαντήσεις που μπορεί να εισάγει για κάθε ερώτηση είναι μέχρι τέσσερις. Σε καθε μια από αυτές αντιστοιχεί και ένας βαθμός που εισάγει ο δάσκαλος και ο οποίος αντικατροπτίζει το πόσο σχετική είναι η απάντηση που επιλέχτηκε με την σωστή. Η σωστή απάντηση έχει βαθμό 1 για τις δύσκολες ερωτήσεις ενώ μια απάντηση με βαθμό πχ 0.8 σημαίνει ότι είναι λάθος, αλλά το λάθος δεν είναι πολύ σημαντικό. Επίσης για λόγους διδακτικούς έχουμε αντιστοιχήσει σε κάθε ερώτηση και μια υπόδειξη. Η υπόδειξη αναφέρει λίγα σχόλια για την συγκεκριμένη απάντηση. Πχ αν μια απάντηση είναι λάθος, η αντίστοιχη υπόδειξη θα μπορούσε να αναφέρει στον χρήστη για ποίο λόγο είναι λάθος, κατά την διάρκεια ενός τεστ ή την διάρκεια εκμάθησης. ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΚΕΦΑΛΑΙΟ 1 ΚΕΦΑΛΑΙΟ Ν ΕΝΟΤΗΤΑ 1 ΕΝΟΤΗΤΑ Ν ΥΠΟ ΕΝΟΤΗΤΑ 1 ΥΠΟ ΕΝΟΤΗΤΑ Ν ΕΝΝΟΙΑ 1 ΕΝΝΟΙΑ Ν Σχ 4.1 Δενδρική μορφή του περιεχομένου διδασκαλίας 4.2 Διαχείρηση μαθησιακού υλικού Ως τώρα μελετήσαμε τον τρόπο με τον οποίο διαχειρίζεται ο δάσκαλος τα θέματα που αφορούν τις ερωτήσεις. Όμως, όπως αναφέραμε η κάθε ερώτηση σχετίζεται με κάποιο κομμάτι από το διδακτικό υλικό και συγκεκριμένα με κάποια επικεφαλίδα του πχ πεδίο ορισμού. Οπότε είναι σημαντικό ο δάσκαλος να έχει την δυνατότητα να εισάγει τις επικεφαλίδες του διδακτικού υλικού με έναν αυτοματοποιημένο τρόπο και να μπορεί να τις διαχειρίζεται με τον ίδιο εύκολο τρόπο. Για αυτό τον λόγο υπάρχει η διαχείρηση του 51

53 διδακτικού υλικού. Στην διαχείρηση αυτή ο δάσκαλος μπορεί να δεί ποια είναι τα κεφάλαια (εικόνα 4.7), ποιες οι ενότητες, οι υποενότητες και οι έννοιες (εικόνα 4.8) που διαπραγματεύεται το σύστημα. Εικ 4.7 Επεξεργασία κεφαλαίων. 52

54 4.8 Επεξεργασία ενοτήτων Εικ Επίσης του προσφέρεται η δυνατότητα διαγραφής κάποιων από τα παραπάνω στοιχείων, η εισαγωγή καινούργιων και η αναθεώρηση τους (εικόνα 4.9). Εικ 4.9 Αναθεώρηση της ενότητας της υπο-ενότητας.. 53

55 4.3 ΔΙΑΧΕΙΡΗΣΗ ΤΕΣΤ Ο δάσκαλος έχει την δυνατότητα να διαχειριστεί τα τεστ στα οποία θα εξεταστουν οι μαθητές (εικόνα 4.10). Για κάθε ένα από αυτά τα τεστ μπορεί να δει ποιο είναι το περιεχόμενο τους. Για να το πετύχει αυτό αρκεί να επιλέξει το όνομα του τεστ που θέλει να δει το περιεχόμενο. Επίσης έχει την δυνατότητα να διαγράψει οποιοδήποτε από αυτά μαρκάροντας την στήλη διαγραφή τεστ (Δ/Τ) και επιλέγοντας διαγραφή. Σε περίπτωση που θέλει να δημιουργήσει ένα καινούργιο τεστ το μόνο που χρειάζεται είναι να γράψει το όνομα του τεστ στο edit box και να πατήσει εισαγωγή. Εικ 4.10 Επεξεργασία Τεστ Στην συνέχεια θα του εμφανιστεί μια φόρμα που θα του δίνει την δυνατότητα να επιλέξει το κεφάλαιο, την ενότητα, το επίπεδο δυσκολίας και το πλήθος των ερωτήσεων που θα εισαχθούν στο συγκεκριμένο τεστ (εικόνα 4.11). Οπότε πατώντας Εισαγωγή θα εισαχθούν με τυχαίο τρόπο οι ερωτήσεις που ικανοποιούν τα παραπάνω κριτήρια στο τεστ από την βάση δεδομένων. Στην συνέχεια ο δάσκαλος μπορεί να εισάγει και άλλες ερωτήσεις στο τεστ ακολουθώντας την ίδια διαδικασία ή να τερματίσει την εισαγωγή των ερωτήσεων. 54

56 Εικ 4.11 Εισαγωγή ερωτήσεων στο τεστ. Στην παραπάνω διαδικασία πρέπει να αναφέρουμε ότι η φόρμα των ερωτήσεων είναι φτιαγμένη με δυναμικό τρόπο. Με τον τρόπο αυτό πετυχαίνουμε κάθε φορά που ο χρήστης επιλέγει ένα κεφάλαιο να εμφανίζονται στο combo box της ενότητας, οι ενότητες που σχετίζονται με το επιλεγμένο κεφάλαιο. 4.4 Μορφή τεστ Κάθε φορά που ένας μαθητής τελείωνει μια έννοια ή μια ενότητα θα ακολουθεί ένα τεστ ώστε να εξεταστεί πόσο καλά έχει μάθει την έννοια ή τις έννοιες που διδάχθηκε. Στο τεστ αυτό οι ερωτήσεις θα εμφανίζόνται μια μια. Ο μαθητής θα μπορεί να απαντήσει όποια ερώτηση θέλει με οποιαδήποτε σειρά, και σε περίπτωση που σε κάποια δώσει λάθος απάντηση θα έχει την δυνατότητα να ξανα-προσπαθήσει (εικόνα 4.12). Επίσης ανάλογα με τις προτίμησεις του μαθητή το σύστημα θα του εμφανίζει δύο δυνατότητες, οι οποίες είναι να δει μια υπόδειξη για την ερώτηση που θα απάντησει καθώς και να δει την ίδια την απάντηση. Στην τελευταία περίπτωση δεν συγκεντρώνει κανένα βαθμό από την ερώτηση αυτή. Αντίθετα σε όλες τις άλλες περιπτώσεις ανάλογα με την απάντηση που επέλεξε παίρνει και τον αντίστοιχο βαθμό. Για να μπορούμε να ξέρουμε αν μια απάντηση είναι σωστή ή λάθος γίνεται έλεγχος του επιπέδου της ερώτησης με τον αντίστοιχο βαθμό της απάντησης. Θεωρούμε ότι μια εύκολη ερώτηση είναι σωστή όταν αντιστοιχεί η απάντηση σε βαθμό 0.5. Μια μεσαία ερώτηση είναι σωστή όταν η απάντηση έχει βαθμό 0.75, ενώ μια δύσκολη ερώτηση είναι σωστή αν αντιστοιχεί σε βαθμό 1. 55

57 Εικ 4.12 Εμφάνιση τεστ 56

58 ΚΕΦΑΛΑΙΟ 5 Στατιστικά στοιχεία Σε ένα σύστημα διδασκαλίας σημαντικό ρόλο παίζει και η αξιολόγηση των μαθητών. Ο δάσκαλος πρέπει να έχει την δυνατότητα να δει ποια είναι η πρόοδος των μαθητών καθώς επίσης να ελέγχει κατά το πόσο μια έννοια ή μια ενότητα έχει αφομοιωθεί από έναν μαθητή ή από ένα σύνολο μαθητών. Ελέγχοντας αυτά τα στοιχεία μπορεί να αποφασίσει κατά πόσο η μέθοδος διδασκαλίας που ακολουθείται πετυχαίνει τον σκοπό της. Σε περίπτωση που τα αποτελέσματα είναι αρνητικά θα μπορεί να αλλάξει τον τρόπο διδασκαλίας ώστε να επιτευχθεί το βέλτιστο αποτέλεσμα. Το σύστημα μας λαμβάνοντας τη σημασία της έγκυρης ενημέρωσης του δασκάλου για την πρόοδο ενός μαθητή και γενικά των μελών που παρακολουθούν το σύστημα διδασκαλίας προσφέρει στον δάσκαλο την δυνατότητα αυτή. Ο δάσκαλος έχει δηλαδή την δυνατότητα να ελέγχει τα τεστ που έχουν λύσει οι μαθητές (εικόνα 5.1), και σε κάθε ένα από τα τεστ μπορεί να βλέπει τα άτομα που το έλυσαν καθώς και το επίπεδο που τους αντιστοιχεί (εικόνα 5.2) και συγχρόνως να έχει πλήρη στατιστικά στοιχεία για την απόδοση τους σε κάθε ένα από τα τεστ (εικόνα 5.3). Εικ 5.1 Τα τεστ που έλυσαν οι μαθητές. 57

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

60 Εικ 5.3 Στατιστικά στοιχεία για την απόδοση του μαθητή στο συγκεκριμένο τεστ. Εκτός όμως από τα παραπάνω στοιχεία που αφορούν τον κάθε μαθητή, ο δάσκαλος θα μπορεί να δει και το συνολικό ποσοστό των σωστών απάντησεων με βάση το επίπεδο δυσκολίας για κάθε έννοια, για το σύνολο των μαθητών που συμμετείχαν στο συγκεκριμένο τεστ. Εδώ πρέπει να αναφέρουμε ότι τα παραπάνω στοιχεία δίνουν μόνο μια στατιστική ενημέρωση στον δάσκαλο για τα αποτελέσματα του κάθε τεστ. Δεν αναφέρουν κατά το πόσο έμαθε ή όχι μια έννοια. Για αυτόν τον λόγο χρησιμοποιούμε ένα μικρό έμπειρο σύστημα βασισμένο σε κανόνες. Οι κανόνες αξιολογούν το κατά πόσο ένας μαθητής έμαθε μια έννοια. Οι κανόνες αυτοί εξετάζουν για κάθε έννοια το επίπεδο των ερωτήσεων που υπάρχουν στο τεστ και που αφορούν την έννοια αυτη. Οι περιπτώσεις που υπάρχουν ειναι: 1. Να υπάρχουν ερωτήσεις που περιλάμβάνουν και τα τρία επίπεδα δυσκολίας. Στην περιπτώση αυτή, οι εύκολες ερωτήσεις αντιστοιχούν στο 20% της βαθμολογίας, οι μεσαίες στο 30% και οι δύσκολες στο 50%. 2. Να υπάρχουν ερωτήσεις που περιλαμβάνουν μόνο δύο από τα επίπεδα δυσκολίας. Αν το επίπεδο αυτό αναφέρεται σε εύκολες και μεσαίες ερωτήσεις, τότε οι εύκολες αντιστοιχούν στον 40% της βαθμολογίας ενώ οι μεσαίες στο 60%. Σε περίπτωση που υπάρχουν εύκολες και δύσκολες ερωτήσεις οι εύκολες αντιστοιχούν στο 30% ενώ οι δύσκολες στο 70%, και τέλος αν υπάρχουν μεσαίες και δύσκολες, οι μεσαίες αντιστοιχούν στο 40% και οι δύσκολες στο 60%. 59

61 3. Να υπάρχουν ερωτήσεις που αντιστοιχούν σε ένα μόνο από τα επίπεδα δύσκολιας. Αν οι ερωτήσεις αυτές είναι εύκολες αντιστοιχούν στο 70%, αν είναι μεσαίες στο 80% και αν είναι δύσκολες στο 100%. Οι περιπτώσεις αυτές αποτυπώνονται στον πίνακα 5.1. Στην συνέχεια, ανάλογα με το ποσοστό που έχει δώσει το έμπειρο σύστημα κατατάσσεται ο μαθητής σε ένα από τα παρακάτω επίπεδα μάθησης μιας έννοιας: 1. Άριστα. Έχει συγκεντρώσει ποσοστό μεταξύ % 2. Πολύ καλά. Έχει συγκενρτώσει ποσοστό μεταξύ 70-85% 3. Καλά. Έχει συγκεντρώσει ποσοστό μεταξύ 50-70% 4. Μέτρια ή Αρχάριος. Έχει συγκεντρώσει ποσοστό μεταξύ 30-50% 5. Άσχημα ή Άσχετος. Έχει συγκεντρώσει ποσοστό μεταξύ 0-30%. Εδώ πρέπει να αναφέρουμε ότι το ποσοστό του βαθμού που αντιστοιχεί σε κάθε ερώτηση ανάλογα με το επίπεδο της, έχει σχέση με το ποσοστό των σωστών απαντήσεων μιας έννοιας που συγκέντρωσε ένας μαθητής σε σχέση με το επίπεδο δυσκολίας των ερωτήσεων. Δηλαδή αν στο τεστ οι ερωτήσεις που αφορούν τις έννοιες είναι μόνο εύκολες επιπέδου και ο μαθητής απάντησε το 50% σωστα, τότε θα πυροδοτηθεί ο κανόνας που έχει μόνο εύκολες ερωτήσεις και το ποσοστό που θα δώσει είναι 50*70/100=35%, αφού όταν υπάρχουν μόνο εύκολες ερωτήσεις αντιστοιχούν στο 70%. Άρα ο μαθητής έμαθε την έννοια κατά 35% που σημαίνει μέτρια. Easy Medium Difficult Marked (Easy*20+med*30+dif*50)/ (40,60) (30,70) (40,60) Πίνακας 5.1 Κανόνες υποογισμού ποσοστού μάθησης. Εκτός όμως το ποσοστό της έννοιας που έμαθε ο μαθητής θα πρέπει να εμφανίζεται και ένα συνολικό αποτέλεσμα για το τεστ. Για τον λόγο αυτό έχουμε φτιάξει ένα άλλο σύνολο κανόνων που αναφέρονται σε κάθε ερώτηση που απαντά ο μαθητής. Οι κανόνες αυτοί απεικονίζονται στον πίνακα 5.2. Επίπεδο Αριθμός Πήρε Υπόδειξη Απότελεσμα Συμπερασμα Προσπάθειων easy 1 0 Σωστό Άριστος -85 easy 1 1 Σωστό Πολύ καλός-70 easy 1 0 Λάθος Αρχάριος -30 easy 1 1 Λάθος Άσχετος -0 easy 2 0 Σωστό Καλός -50 easy 2 1 Σωστό Αρχάριος -30 easy 2 0 Λάθος Αρχάριος -30 easy 2 1 Λάθος Άσχετος -0 60

62 easy >2 Άσχετος -0 medium 1 0 Σωστό Άριστος -92 medium 1 1 Σωστό Αρκετά καλός - 77 medium 1 0 Λάθος Αρχάριος -40 medium 1 1 Λάθος Άσχετος -15 medium 2 0 Σωστό Καλός -60 medium 2 1 Σωστό Αρχάριος -40 medium 2 0 Λάθος Αρχάριος -40 medium 2 1 Λάθος Άσχετος -15 medium >2 Άσχετος- 15 difficult 1 0 Σωστό Άριστος -100 difficult 1 1 Σωστό Αρκετά καλός - 85 difficult 1 0 Λάθος Αρχάριος -50 difficult 1 1 Λάθος Άσχετος -30 difficult 2 0 Σωστό Καλός -70 difficult 2 1 Σωστό Αρχάριος -50 difficult 2 0 Λάθος Αρχάριος -50 difficult 2 1 Λάθος Άσχετος -30 difficult >2 Άσχετος -30 Πίνακας 5.2. Κανόνες κατάταξης μαθητή σε επίπεδο μάθησης για ένα συγκεκριμένο τεστ. Στον πίνακα 2 παρατηρούμε ότι στην τελευταία στήλη αντιστοιχεί δίπλα σε κάθε επίπεδο και ένας αριθμός. Παραδείγματος χάριν στην πρώτη γραμμή στο Άριστα αντιστοιχεί ο αριθμός 85. Δηλαδή το βάρος του συμπεράσματός αυτού είναι 85. Αυτό συμβαίνει διότι ανάλογα με το επίπεδο δυσκολίας το κάθε συμπέρασμα έχει διαφορετικό δυναμικό. Στην περίπτωση που μια ερώτηση είναι μεσαίου επιπέδου και ο μαθητής την απαντήσε σωστά χωρίς υπόδειξη και με μια προσπάθεια τότε θεωρείται άριστος με βάρος όμως 92, ενώ στην ίδια περίπτωση για μια εύκολη ερώτηση το άριστα θα είχε βάρος 85. Στην συνέχεια τα αποτελέσματα από το έμπειρο σύστημα αναλύονται και κατατάσσουμε τον μαθητή (όσον αφορά το τεστ) σε ένα από τα επίπεδα άριστος, αρκετά καλός, καλός, αρχάριος και άσχετος. Το επίπεδο του βαθμού που πρέπει να συγκεντρώσει για να βρεθεί σε μια από τις παραπάνω κατηγορίες είνα ίδια με πριν. Η ανάλυση των στοιχείων αυτών γίνεται ως εξής: προσθέτουμε τους βαθμούς των αποτελέσματων που συγκέντρωσε για κάθε ερώτηση και την διαιρούμε με το σύνολο των ερωτήσεων που υπάρχουν στο τεστ. Στην συνέχεια ελέγχουμε σε ποιο επίπεδο ανήκει ο βαθμός αυτός και αυτό θα είναι το απότελεσμα από το τεστ για τον μαθητή. 61

63 ΚΕΦΑΛΑΙΟ 6 Προσαρμοστικότητα συστήματος 6.1 Διαδικασία διδασκαλίας Το επόμενο κομμάτι που θα εξετάσουμε είναι η διαδικασία διδασκαλίας. Ο σκοπός μας είναι να δημιουργήσουμε ένα ευφυές σύστημα το οποίο θα μπορεί κάθε χρονική στιγμή να γνωρίζει το επίπεδο μάθησης μιας έννοιας (από τον μαθητή) και ανάλογα με το ποσοστό να του προτείνει και το αντίστοιχο υλικό μάθησης. Στο σύστημα μας προτείνουμε στον μαθητή να εξετάσει μόνο το υλικό στο οποίο τα αποτελέσματα δεν είναι ικανοποιητικά και στην συνέχεια δημιουργώντας διάφορα τεστ για τις έννοιες που υπάρχει το πρόβλημα ξανά-εξεταζούμε τον μαθητή (εικόνα 6.1). Εικ 6.1 Ο μαθητής έχει πρόβλημα στην έννοια Ε.ΠΡΟΤΑΣΕΙΣ και το τεστ που του προτείνεται να λύσει είναι το temp71. Ο τρόπος λειτουργίας της παραπάνω διαδικασίας είναι σχετικά απλός. Κάθε φορά που ο μαθητής λύνει ένα τεστ, το σύστημα γνωρίζει ποιες έννοιες περιέχει το αντίστοιχο τεστ και το επίπεδο μάθησης κάθε μιας από αυτές (για τον μαθητή). Σε περίπτωση που ο βαθμός μιας έννοιας είναι χαμηλότερος του 50%, τότε σημαίνει ότι ο μαθητής πρέπει να μελετήσει ξανά την έννοια αυτή. Για τον λόγο αυτό το σύστημα ενημερώνει τον μαθητή για αυτή την κατάσταση και του προτείνει να λύσει κάποιο τεστ, το οποίο έχει δημιουργήσει αυτόματα, ώστε να εξεταστεί αποκλειστικά στην έννοια που δεν κατανόησε σωστά. Εφόσον ο μαθητής γνωρίζει με ποιες έννοιες δεν έχει εξοιωθεί αρκετά μπορεί να διαβάσει το αντίστοιχο υλικό και στην συνέχεια να λύσει τα τεστ που του προτείνει το σύστημα. Εφόσον λύσει ένα από αυτά τα τεστ θα πρέπει να επιλέξει την επιλογή με τα στατιστικά στοιχεία ώστε να δει τα αποτελέσματα. Με τον τρόπο αυτό το σύστημα ενημερώνει την βάση για τα αποτελέσματα. Ποιο συγκεκριμένα το πεδίο του πίνακα 62

64 concept_student στο οποίο αντιστοιχεί η έννοια του τεστ που έλυσε ο μαθητής αντικαθιστά την προηγούμενη. Σε περίπτωση που το ποσοστό είναι μεγαλύτερο από 50% τότε η έννοια αφομοιώθηκε από τον μαθητή. Διαφορετικά θα πρέπει να εκτελέσει ο μαθητής την ίδια διαδικασία. 6.2 Έμπειρο σύστημα Παρόλο, ότι δεν έχουν ακόµη βρεθεί γενικές λύσεις σε κλασσικά προβλήµατα τεχνητής νοηµοσύνης, όπως η µετάφραση φυσικής γλώσσας (natural language translation), η κατανόηση οµιλίας (speech understanding) και η όραση (vision), περιορίζοντας το χώρο του προβλήµατος, έχουν οδηγήσει σε ενδιαφέρουσες και χρήσιµες λύσεις. Ο τοµέας των εµπείρων συστηµάτων, έχει αποτελέσει µια τέτοια επιτυχή προσεγγιστική λύση στο κλασσικό πρόβληµα της τεχνητής νοηµοσύνης για προγραµµατισµό της ευφυΐας σε υπολογιστικά συστήµατα, µε πολλές εφαρµογές σε πραγµατικά προβλήµατα του επιχειρηµατικού κόσµου, της ιατρικής, της επιστήµης και της µηχανικής, εκεί όπου συχνά µέθοδοι συµβατικού προγραµµατισµού δεν µπόρεσαν να δώσουν λύση σε προβλήµατα µε αβέβαιη ή ελλιπή γνώση. Κατά τον Feigenbaum, ένα έµπειρο σύστηµα (expert system) ή σύστηµα βασισµένο στη γνώση (knowledge based system), ή έµπειρο σύστηµα βασισµένο στη γνώση (knowledge based expert system), είναι ένα ευφυές πρόγραµµα υπολογιστή, το οποίο χρησιµοποιεί γνώση (knowledge) και µηχανισµούς συµπερασµού/εξαγωγής συµπερασµάτων (inference procedures), για να λύσει προβλήµατα τα οποία είναι αρκετά δύσκολα, ώστε να απαιτούν σηµαντική ανθρώπινη εµπειρία (expertise) για να επιλυθούν, για να παρέχει συµβουλές σ ένα εξειδικευµένο τοµέα γνώσης, ή για να παίρνουν αποφάσεις. Το έµπειρο σύστηµα επιλύει προβλήµατα χρησιµοποιώντας ένα µοντέλο της λογικής του ειδικού σε κάποιο χώρο γνώσης και καταλήγει στα ίδια συµπεράσµατα στα οποία θα έφθανε και ο ειδικός εάν αντιµετώπιζε ένα ανάλογο πρόβληµα. Γενικά, στα έµπειρα συστήµατα, η γνώση αναπαρίσταται µε τη βοήθεια γεγονότων σχετικών µε τον κόσµο (αναφέρονται σε ταξινοµήσεις και σχέσεις αντικειµένων), µε τη βοήθεια κανόνων ή διαδικασιών χειρισµού των γεγονότων και µε τη βοήθεια στρατηγικών ή δοµών ελέγχου (πληροφοριών για το πότε και πως θα εφαρµόσουµε τους κανόνες). Τα έµπειρα συστήµατα επιδεικνύουν συµπεριφορά την οποία θα χαρακτηρίζαµε νοήµονα, σε συγκεκριµένους τοµείς και διαδικασίες, ανάλογη µε αυτή ενός ανθρώπου εµπειρογνώµονα στον ίδιο τοµέα. Το έµπειρο σύστηµα εξοµοιώνει (emulates) πλήρως την ικανότητα εξαγωγής συµπερασµάτων ενός ανθρώπου εµπειρογνώµονα, ενεργώντας δηλαδή από όλες τις απόψεις όπως αυτός και όχι µερικώς (simulation-προσοµοίωση). Τα έµπειρα συστήµατα, η ανάπτυξη των οποίων άρχισε από τα µέσα της δεκαετίας του 1960, κάνουν εκτεταµένη χρήση εξειδικευµένης γνώσης, για να επιλύσουν προβλήµατα, όπως ένας άνθρωπος εµπειρογνώµονας (human expert). Ο άνθρωπος εµπειρογνώµονας διαθέτει γνώση, εµπειρία και εξειδικευµένες ικανότητες, σε µια συγκεκριµένη περιοχή γνώσης, γενικά µη διαθέσιµα στους περισσότερους ανθρώπους και µπορεί να δώσει αποτελεσµατικές λύσεις σε προβλήµατα τα οποία εµπίπτουν στην ειδικότητά του. Η γνώση του µπορεί να είναι γνώση διαθέσιµη στη διεθνή βιβλιογραφία, σε ειδικά περιοδικά και βιβλία του χώρου, σε βάσεις δεδοµένων, ή να προέρχεται µέσα από τη διαδικασία της µάθησης από γνωρίζοντα άτοµα, αλλά είναι κυρίως εµπειρογνωµοσύνη (expertise), περιλαµβάνει δηλαδή ένα σύνολο εξειδικευµένων ικανοτήτων, οι οποίες έχουν αποκτηθεί µε κόπο και σε µεγάλο χρονικό διάστηµα, για ένα τελείως συγκεκριµένο σκοπό. 63

65 Στο σχήµα 6.1, αποτυπώνεται η βασική αρχή λειτουργίας ενός έµπειρου συστήµατος. Ο χρήστης διατυπώνει ένα αίτηµα για παροχή συµβουλής από το έµπειρο σύστηµα και το τροφοδοτεί µε δεδοµένα-πληροφορίες για το τι είναι γνωστό (γεγονότα/facts στην ορολογία των εµπείρων συστηµάτων). Τα γεγονότα µπορεί να αναφέρονται είτε σε αρχικά διαθέσιµες πληροφορίες για το πρόβληµα, είτε σε απαντήσεις του χρήστη σε απορίες του συστήµατος σχετικές µε παροχή πρόσθετων πληροφοριών. Εσωτερικά το έµπειρο σύστηµα αποτελείται κυρίως από δύο συστατικά στοιχεία, τη βάση γνώσης (knowledge base) η οποία περιέχει τη γνώση και τη µηχανή συµπερασµού (inference engine), η οποία χρησιµοποιώντας τη γνώση, εξάγει συµπεράσµατα. Ο χρήστης, λαµβάνει αυτά τα συµπεράσµατα-έµπειρες συµβουλές, ως απάντηση του έµπειρου συστήµατος στην αρχική αίτησή του για εµπειρογνωµοσύνη, είτε λαµβάνει από το έµπειρο σύστηµα δήλωση αδυναµίας παροχής συµβουλής, επειδή δεν υπάρχει επαρκής γνώση. Σχ 6.1 Βασική αρχή λειτουργίας ενός έμπειρου συστήματος Η διαδικασία δηµιουργίας ενός έµπειρου συστήµατος καλείται µηχανική γνώσης (knowledge engineering) και συντελείται από το µηχανικό γνώσης (knowledge engineer). Γενικά, δεν υπάρχει καθολικά αποδεκτή µεθοδολογία για τη σχεδίαση και τον προγραµµατισµό της εκµαίευσης γνώσης και της εκτίµησης του αποτελέσµατος. Η συνήθης πρακτική είναι, ο µηχανικός γνώσης µετά από εκτενείς συνεντεύξεις, να εκµαιεύει τη γνώση από τους ανθρώπους εµειρογνώµονες, ή από άλλες πηγές και να την κωδικοποιεί µε χρήση κατάλληλου φορµαλισµού (τεχνικές αναπαράστασης γνώσης) στη βάση γνώσης του έµπειρου συστήµατος. Στη συνέχεια, ο άνθρωπος εµπειρογνώµονας αξιολογεί το πρωτότυπο έµπειρο σύστηµα, δίνοντας τις παρατηρήσεις του στο µηχανικό γνώσης. Η χρονοβόρα και επίπονη αλληλεπιδραστική αυτή διαδικασία επαναλαµβάνεται αρκετές φορές, µέχρις ότου η απόδοση του έµπειρου συστήµατος κριθεί ικανοποιητική από τον εµπειρογνώµονα. Κάποια έµπειρα συστήµατα, χρησιµοποιώντας τεχνικές µηχανικής µάθησης και πίνακες δεδοµένων, προσπαθούν να ανακαλύψουν σχέσεις µεταξύ των δεδοµένων αυτών, τις οποίες εκφράζουν µε νέους κανόνες, µέσω επαγωγής κανόνων (rule induction). Όµως, µόνο περιορισµένοι τύποι γνώσης µπορούν να κωδικοποιηθούν µε τον τρόπο αυτό. Τα τυπικά έµπειρα συστήµατα δεν µπορούν να γενικεύσουν τη γνώση τους, χρησιµοποιώντας, όπως οι άνθρωποι, αναλογία, για να ανταπεξέλθουν σε νέες καταστάσεις. Έτσι, το πρόβληµα της µεταφοράς της ανθρώπινης γνώσης στο έµπειρο σύστηµα από το µηχανικό γνώσης, αποτελεί το µείζονα ανασχετικό παράγοντα κατά τη διαδικασία δηµιουργίας ενός έµπειρου συστήµατος και καλείται το στόµιο φιάλης της απόκτησης γνώσης (knowledge acquisition bottleneck), αφού περιορίζει τη δηµιουργία ενός έµπειρου συστήµατος, όπως το στόµιο της φιάλης εµποδίζει την ελεύθερη ροή του υγρού. Αφού αναφέραμε τον τρόπο λειτουργίας ενός έμπειρου συστήματος θα δούμε στην συνέχεια πως εφαρμόζεται στο σύστημα εκπαίδευσης. Ο μαθητής όπως αναφέραμε έχει 64

66 πλήρη γνώση των στατιστικών αποτελεσμάτων του κάθε τεστ που έλυσε. Αυτό που δεν γνωρίζει είναι ο βαθμός που του αντιστοιχεί στο τεστ που έλυσε. Ο βαθμός αυτός δεν είναι ένα αριθμητικό αποτέλεσμα αλλά μια κατάταξη σε μια από τις επόμενες πέντε κατηγορίες: άριστα, πολύ καλά, καλά, αρχάρια, άσχετα. Για να επιτευχθεί η παραπάνω κατάταξη χρησιμοποιούμε ένα έμπειρο σύστημα, το Jess. Το έμπειρο αυτό σύστημα αποτελείται από τρία αρχεία. Το ένα είναι το cluster_student.clp και μέσα σε αυτό βρίσκονται οι κανόνες που πρέπει να πυροδοτηθούν. Οι κανόνες αυτοί σε φυσική γλώσσα αντιστοιχούν στον πίνακα 5.2 της ενότητας των στατιστικών στοιχείων. Το δεύτερο αρχείο είναι το cluster_student.txt μέσα στο οποίο βρίσκονται τα γεγονότα (facts) που θα πυροδοτήσουν τους κανόνες. Τα γεγονότα (facts) αυτά αποθηκεύονται στο αρχείο εφόσον ο μαθητής έχει λύσει ένα τεστ και κάθε ένα από αυτά αντιστοιχεί σε μια ερώτηση. Το τρίτο αρχείο είναι το panos.txt και μέσα σε αυτό αποθηκεύονται τα αποτελέσματα που επιστρέφει το jess κατά την εκτέλεση του αρχείου cluster_student.clp. Παραδείγματός χάριν, αν ο μαθητής σε ερώτηση ενός τεστ που είναι επιπέδου εύκολη, απάντησε με μια προσπάθεια, χωρίς να χρησιμοποιήσει υπόδειξη και το αποτέλεσμα είναι σωστό, τότε στο αρχείο cluster_student.txt θα αποθηκευτεί το γεγονός (fact) (expert (level easy) (number_try 1) (use_hint n) (result CORRECT) Στην συνέχεια, όταν φορτώσουμε το αρχείο cluster_student.clp στο jess τότε θα πυροδοτειθεί ο κανόνας που ικανοποιεί το παραπάνω γεγονός (fact) και αυτός θα ήταν ο (defrule rule1?level2 <- (expert (level easy) (number_try 1) (use_hint n) (result CORRECT)) => (retract?level2) (print-level-message 85)) Στην συνέχεια θα αποθήκευε στο αρχείο panos.txt τον αριθμό 85 που αντιστοιχεί στον κανόνα αυτόν. 65

67 ΚΕΦΑΛΑΙΟ 7 ΔΙΕΠΑΦΗ ΧΡΗΣΤΗ Η διεπαφή χρήστη είναι το σημαντικότερο κομμάτι σε ένα πρόγραμμα επειδή με αυτό τον τρόπο καθορίζεται ο τρόπος που επικοινωνεί ο χρήστης με τον υπολογιστή και στην συγκεκριμένη περίπτωση με το εκπαιδευτικό λογισμικό πρόγραμμα. Όσον αφορά το πρόγραμμα που έχουμε κατασκευάσει, αυτό αποτελείται από δύο ξεχωριστά μέρη. Το πρώτο είναι ο εξυπηρετητής (server) και απευθύνεται στον δάσκαλο, και το δεύτερο είναι ο πελάτης (client) και απευθύνεται στον χρήστη του συστήματος, που εδώ είναι ο μαθητής. Στο πρώτο κομμάτι, τον εφυπηρετητή (server), ο δάσκαλος έχει τη δυνατότητα να εκτελέσει όλες τις ενέργειες που έχουμε αναφέρει στα προηγούμενα κεφάλαια, όπως διαχείρηση χρήστη, διαχείρηση τεστ κτλ. Ο τρόπος που πετυχαίνουμε την διαχείρηση αυτή είναι αρκετά απλή και φιλική προς αυτόν. Η χρήση του εικονικού πράκτορα (avatar) και η ύπαρξη ενός γραφικού περιβάλλοντος, μέσα στο οποίο υπάρχουν μενού, checkbox, κουμπία και πολλές άλλες εντολές για την επικοινωνία του χρήστη με το πρόγραμμα πετυχαίνουν αυτές τις δυνατότητες. Στο δεύτερο κομμάτι η ύπαρξη του εικονικού πράκτορα και του γραφικού περιβάλλοντος πετυχαίνουν και πάλι την ύπαρξη ενός φιλικού περιβάλλοντος. Εδώ όμως πρέπει να αναφέρουμε ότι η σελίδα που εμφανίζεται στον χρήστη αποτελείται από τέσσερα ξεχωριστά frames (εικόνα 7.1), σε αντίθεση με τον εξυπηρετητή (server) που αποτελείται από ένα. 66

68 Εικ 7.1 Τρόπος επικοινωνίας μαθητή με το σύστημα. Το πρώτο frame είναι το πάνω αριστερό κομμάτι του παραθύρου (εικόνα 7.2). Μέσα σε αυτό εμφανίζονται τα περιεχόμενα του μαθήματος της τεχνητής νοημοσύνης στα οποία θα διδαχθεί ο μαθητής. Η ύπαρξη αυτού του παραθύρου οφείλεται στο αρχείο treemenu.php. Το αρχείο αυτό καλείται από το αρχείο login.php. Η λειτουργία του treemenu.php είναι να φορτώσει το αρχεία που απευθύνεται στα περιεχόμενα του μαθήματος, το demoframelessnodes.js, καθώς και τα αρχεία που καθορίζουν την μορφή εμφάνισης του περιεχομένου, τα ua.js και ftiens4.js. Εικ 7.2 Το πρώτο frame- Εμφάνιση περιεχομένων μαθήματος Το δεύτερο frame είναι το δεξί μεγάλο κομμάτι του παραθύρου (εικόνα 7.3). Μέσα σε αυτό εμφανίζεται το υλικό του μαθήματος της τεχνητής νοημοσύνης στα οποία θα διδαχθεί ο μαθητής. Κάθε φορά που ο μαθητής επιλέγει ένα κομμάτι από τα περιεχόμενα 67

69 του μαθήματος, που βρίσκονται στο πρώτο frame, τότε ενεργοποιείται το δεύτερο frame και εμφανίζει το υλικό που αντιστοιχεί στην επιλογή του χρήστη. Το δεύτερο frame σε αντίθεση με το πρώτο έχει καθορισμένο όνομα και αυτό είναι contents. Η ύπαρξη αυτού του παραθύρου οφείλεται στο αρχείο succeed_login.php το οποίο καλείται από το αρχείο login.php. Η λειτουργία του succeed_login.php είναι να εμφανίσει το υλικό του μαθήματος καθώς και να ελέγχει αν τα στοιχεία που έχει εισαγάγει ο χρήστης κατά την διαδικασία πιστοποιήσης είναι αυθεντικά. Εικ 7.3 Το δεύτερο frame- Εμφάνιση υλικού Το τρίτο frame είναι το κάτω αριστερό κομμάτι του παραθύρου (εικόνα 7.4). Μέσα σε αυτό εμφανίζονται οι έννοιες στις οποίες έχει εξεταστεί ο μαθητής και το ποσοστό μάθησης τους είναι κάτω του 50%. Επίσης εμφανίζει για κάθε μια από αυτές τις έννοιες και ένα τεστ που του προτείνει το σύστημα να το λύσει ώστε να εξεταστεί μόνο στην έννοια που δεν έχει αφομοιώσει αρκετά. Επιλέγοντας ο μαθητής ένα από αυτά τα τεστ, εμφανίζεται το περιεχόμενο του τεστ στο δεύτερο frame. Εδώ πρέπει να αναφέρουμε ότι το frame αυτό έχει συγκεκριμένο όνομα και είναι reminder. Η ύπαρξη αυτού του παραθύρου οφείλεται στο αρχείο reminderstudent.php το οποίο φορτώνεται από το αρχείο login.php. Εικ 7.4 Τρίτο frame- Οι έννοιες που δεν έχει αφομοιώσει ο μαθητής και τα τεστ που του προτείνει το σύστημα. 68

70 Το τέταρτο frame είναι το κάτω κομμάτι του παραθύρου (εικόνα 7.5). Μέσα σε αυτό εμφανίζονται οι δύο δυνατότητες που έχει ο χρήστης. Η πρώτη να αλλάξει τα προσωπικά του δεδομένα και η δεύτερη να εξέλθει από το σύστημα. Η ύπαρξη αυτού του παραθύρου οφείλεται στο αρχείο info.php το οποίο φορτώνεται από το αρχείο login.php. Σε περίπτωση που ο χρήστης επιλέξει να αλλάξει τα προσωπικά του στοιχεία τα περιεχόμενα θα εμφανιστούν στο δεύτερο frame, δηλαδή στο κεντρικό παράθυρο. Εικ 7.5 Το τέταρτο frame- Δυνατότητες μαθητή 69

71 ΚΕΦΑΛΑΙΟ 8 Εγκατάσταση λογισμικού Το σύστημα εκμάθησης που παρουσιάσουμε όπως αναφέραμε ονομάζεται ATS και ο σκοπός του είναι να βοηθήσει τους χρήστες, ανεξαρτήτως επιπέδου να μάθουν τεχνητή νοημοσύνη. Το χαρακτηριστικό του είναι ότι προσαρμόζεται στο επίπεδο και στις προτιμήσεις του κάθε μαθητή παρέχοντας του τις κατάλληλες συμβουλές κάθε φορά που συναντάει ένα πρόβλημα. Το σύστημα δουλεύει μόνο μέσω του διαδικτύου και δεν είναι δυνατή η εγκαταστασή του στον προσωπικό υπολογιστή του χρήστη. Επίσης για την ομαλή λειτουργία του συστήματος είναι απαραίτητο να εγκατασταθεί σε λειτουργικό της Microsoft. Για να πετύχουμε την παραπάνω λειτουργία το σύστημα γράφτηκε με τον συνδυασμό αρκετών γλωσσών προγραμματισμού όπως είναι η php, η vbscript, η javascript, η java και html. Η βασική γλώσσα που χρησιμοποιήθηκε ήταν η HTML. Το γεγονός ότι η εφαρμογή μας τρέχει στο διαδίκτυο κάνει απαραίτητη την χρήση μιας γλώσσας που επιτρέπει την συγγραφή σελίδων για το διαδίκτυο (Web), και αυτή είναι η HTML. Εκτός όμως από την συγγραφή των σελίδων το σύστημα μας θέλουμε να είναι δυναμικό και να μπορεί να αλληλεπιδρά με τον χρήστη. Η χρήση της php συμβάλλει στο γεγονός αυτό, αφου μπορεί να επικοινωνεί χωρίς προβλήματα με την βάση δεδομένων, η οποία στην συγκεκριμένη περίπτωση ήταν η mysql. Οι άλλες τρεις γλώσσες είναι απαραίτητες για την εμφάνιση του εικονικού πράκτορα και την δημιουργία ενός ευφυούς συστήματος. Όπως αναφέραμε η php και η mysql αλληλεπιδρούν μεταξύ τους. Για να επιτευχθεί αυτό πρέπει να εγκατασταθεί στον εξυπηρετητή (server) το αντίστοιχο πρόγραμμα, που να υποστηρίζει αυτην την δυνατότητα. Το πρόγραμμα αυτό βρίσκεται στο αρχείο php4ts και ο τρόπος εγκατάστασης του περιγράφεται στην συνέχεια. 1. Θα πρέπει να τρέξει το php4ts αρχείο σε λειτουργικό περιβάλλον windows 2000/98. Σε περίπτωση που υπάρχει άλλο λειτουργικό της Microsoft θα πρέπει να βρει το αντίστοιχο πακέτο μέσω του διαδικτύου. To php4ts είναι ένα συμπιεσμένο αρχείο που περιέχει την mysql, τον apache και την php, οπότε για να τρέξει πρέπει ο υπεύθυνος της εγκατάστασης να έχει στον υπολογιστή του ένα πρόγραμμα συμπίεσης, όπως το winzip. 2. Στο παράθυρο που θα εμφανιστεί όταν τρέξει το αρχείο θα πρέπει να επιλέξει unzip. Τότε τα αρχεία αποσυμπιέζονται και εγκαθιστάνται σε έναν φάκελο C:/phpdev που δημιουργείται αυτόματα. 3. Στην συνέχεια πρέπει να ανοίξει τον φάκελο phpdev και να μεταφέρει το αρχείο php.ini στον φάκελο c:\winnt αν το λειτουργικό του σύστημα ειναι windows 2000, ή στο c:\windows για Windows 98. Σε περίπτωση που ήδη υπάρχει το ίδιο αρχείο στον φάκελο αυτό, θα πρέπει να το αντικαταστήσει με το καινούργιο. 70

72 4. Για να δουλέψει η php ως ένα τμήμα (module) του Apache, πρέπει να αντιγράψει το php4ts.dll (βρίσκεται στον φάκελο php/sapi/) στο windows/system (για Windows 9x/Me) ή στον φάκελο winnt/system32 (για Windows NT/2000), αντικαθιστώντας οποιονδήποτε παλιότερο αρχείο. Στην συνέχεια θα πρέπει να προσθέσει τις ακόλουθες δύο γραμμές στο Apache conf αρχείο: LoadModule php4_module c:/php/sapi/php4apache.dll AddType application/x-httpd-php.php μετά από τις γραμμές: LoadModule php4_module c:/phpdev/php/sapi/php4apache.dll AddType application/x-httpd-php.php4.php.htm.php3.inc.fire AddType application/x-httpd-php-source.phps Εφόσον εκτελέσει την παραπάνω διαδικασία τότε για να φορτώσει την php, την mysql και τον apache αρκεί να τρέξει το php_dev_start.bat που βρίσκεται μέσα στο phpdev. Τότε θα του εμφανιστεί μια σελίδα που θα τον προτρέπει να επιλέξει σε έναν σύνδεσμο για να ξεκινήσει όπως φαίνεται στην εικόνα 8.1. Εικόνα 8.1 Εμφανίζεται όταν ο διαχειρίστης τρέξει το php_dev_start.bat αρχείο. Πατώντας πάνω σε αυτόν θα του εμφανιστεί μια καινούργια σελίδα που θα του αναφέρει ότι ο apache τρέχει κανονικά (εικόνα 8.2). Στην σελίδα αυτή μπορεί να ελέγχει και αν η php και η mysql τρέχουν και αυτές ακολουθώντας τις οδηγίες που βρίσκονται στην σελίδα. Εφόσον όλα δουλεύουν κανονικά μπορεί να πατήσει στον σύνδεσμο (εικόνα 8.2) το οποίο θα του εμφανίσει μια λίστα με τους καταλόγους που βρίσκονται στον φάκελο C:/phpdev/www/. 71

73 Εικόνα 8.2. Αν εμφανιστεί αυτή η σελίδα, ο apache, η mysql και η php εγκαταστάθηκαν κανονικά Μέσα σε αυτόν τον φάκελο πρέπει να αποθηκεύονται όλα τα php αρχεία που χρησιμοποιούνται από την εφαρμογή μας. Για αυτόν τον λόγο έχουμε φτιάξει μέσα σε αυτόν τον φάκελο έναν κατάλογο που ονομάζεται diplwmatiki και μέσα σε αυτόν αποθηκεύουμε όλα τα αρχεία που χρησιμοποιούνται από το ATS. Για να τρέξει η εφαρμογή μας το μόνο που χρειάζεται είναι να ανοιξούμε τον κατάλογο αυτόν και να επιλέξουμε το enterlogin.php αρχείο. Σε περίπτωση που θέλουμε να απενεργοποιησούμε τον apache αρκεί να πατησούμε το phpdev_stop.bat που βρίσκεται στο phpdev φάκελο. Στην περίπτωση αυτή όμως δεν μπορεί κανένας να έχει πρόσβαση στον ATS. Εφόσον ο apache, η php και η mysql τρέχουν κανονικά, τότε για να δουλέψει ο μηχανισμός που παρουσιάζεται στο σχήμα 3.1 είναι απαραίτητη η δημιουργία μιας βάσης δεδομένων μέσα στην mysql, που θα αποθηκεύονται όλα τα απαραίτητα στοιχεία. Για την δημιουργία απαιτούνται τα παρακάτω βήματα: 1. Ο δάσκαλος πρέπει να τρέξει το εκτελέσιμο αρχείο mysql.exe που βρίσκεται στον φάκελο C:\phpdev\mysql\bin. Τότε θα του εμφανιστεί μια κονσόλα. 2. Στην συνέχεια χρειάζεται να δημιουργήσει την βάση δεδομένων όπου θα αποθηκεύει τους πίνακες του. Για να δημιουργηθεί η βάση δεδομένων πρέπει να πληκτρολογήσει create name_database Στην περίπτωση της εφαρμογής μας το όνομα της βάσης είναι diplwmatiki. 72

74 3. Η παραπάνω διαδικασία γίνεται μόνο μια φορά. Τώρα θα πρέπει να ανοίξει την βάση αυτή ώστε να δημιουργήσει τους πίνακες που θα χρειαστεί. Η βάση ανοίγει με την εντολή use name_database, οπότε στην περιπτώση μας θα είναι use diplwmatiki. 4. Στην συνέχεια χρησιμοποιώντας τις εντολές που επιτρέπει η mysql μπορεί να δημιουργήσει πίνακες, να ανακτήσει πληροφορίες, να προσθέσει νέες εγγραφές κτλ. 5. Για να εξέλθει από το περιβάλλον της mysql αρκεί να πληκτρολογήσει exit. 73

75 ΚΕΦΑΛΑΙΟ 9 Υλοποίηση Τεκμηρίωση 9.1 Διαχείρηση Χρηστών Διαδικασία Εισαγωγής Αρχεία για την διαδικασία εισαγωγής Τα αρχεία που χρησιμοποιούνται για τις δυνατότητες της διαδικασίας εισαγωγής και ο τρόπος συσχέτισης μεταξύ τους φαίνονται στο σχήμα 9.1. Όλα τα αρχεία είναι γραμμένα στην γλώσσα προγραμματισμού php σε συνδιασμό με την mysql, την javascript και την vbscript. avatar enterlogin newmember misspassword login_step1 succeedlogin misspassword1 login_step2 login administratorview studentpreference Σχ 9.1 Αρχεία για την διαδικασία εισαγωγή και οι σχέσεις τους. Η λειτουργία του κάθε αρχείου είναι: 1. newmember.php: Εμφανίζεται μια φόρμα που χρείαζεται να συμπληρώσει ένα άτομο για να εγγραφεί στο σύστημα. 2. succeedlogin.php: Εφόσον τα στοιχεία που συμπλήρωσε ο χρήστης ειναι σύμφωνα με τον ζητούμενο τύπο και σωστά, εγγράφονται τα στοιχεία αυτά στους πίνακες login και student. 3. misspassword.php: Εμφανίζεται μια φόρμα που πρέπει να συμπληρώσει ο χρήστης, εφόσον έχει ξεχάσει τον κωδικό του. Από τα πεδία τηλ ή πρέπει να συμπληρωθεί τουλάχιστον το ένα. 74

76 4. misspassword1.php: Γίνεται ο έλεγχος των στοιχείων της προηγούμενης φόρμας και αν υπάρχει χρήστης με τα δοσμένα στοιχεία του στέλνει τον κωδικό στο του εφόσον έχει, διαφορετικά θα το εμφανίσει στην οθόνη. 5. enterlogin.php: Η πρώτη σελίδα που εμφανίζεται στον χρήστη. Από εδώ μπορεί να εγγραφεί, να συνδεθεί ή να πάρει τον χαμένο κωδικό του. Ορίζονται επίσης και τα διάφορα χαρακτηριστικά του avatar. 6. avatar.php: Γίνεται αρχικοποίηση του avatar. 7. login_step1.php: Ορίζονται δύο μεταβλητές που οι τιμές τους είναι το username και το password του χρήστη που εισέρχεται. Οι τιμές αυτές διατηρούνται στις μεταβλητές αυτές καθόλη την διάρκεια που ο χρήστης είναι μέσα στο σύστημα. 8. login_step2.php: Γίνεται έλεγχος του κωδικού και ανάλογα με το αν είναι ο δάσκαλος ή ένας μαθητής, του εμφανίζει τις αντίστοιχες σελίδες. Υπενθυμίζουμε ότι όταν ο χρήστης εισέρχεται για πρώτη φορα θα του εμφανίσει ένα ερωτηματολόγιο προτού εισέλθει στο σύστημα διδασκαλίας. Πίνακες για την διαδικασία εισαγωγής Οι πρωταρχικοί πίνακες που θα χρησιμοποιηθούν για να επιτευχθεί η αρχιτεκτονική της διαδικασίας εισαγωγής είναι ο πίνακας student, ο πίνακας login και ο πίνακας questionsafe. Ο πίνακας student είναι απαραίτητος διότι μέσα σε αυτόν θα αποθηκεύονται οι προσωπικές πληροφορίες του κάθε χρήστη κατά την διάρκεια εγγραφής του. Τα πεδία του ειναι τα id_student name surname phone Το id_student είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ όλα τα άλλα πεδία είναι χαρακτήρες. Για την δημιουργία του γράφτηκε η εντολή create table student (id_student int not null primary key auto_increment, name varchar(30) not null, surname varchar(30) not null, phone varchar(15) not null, varchar(50) not null) Ο πίνακας login είναι απαραίτητος διότι μέσα σε αυτόν θα αποθηκεύονται πληροφορίες που αφορούν τους κωδικούς πρόσβασης του κάθε χρήστη. Τα πεδία του ειναι τα id_login username password id_questionsafel answersafe Το id_login είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ όλα τα άλλα πεδία εκτός του id_questionsafel που είναι ακέραιος είναι χαρακτήρες. Για την δημιουργία του γράφτηκε η εντολή create table login (id_login int not null primary key auto_increment, username varchar(30) not null, password varchar(16) not null, id_questionsafel varchar(15) not null, answersafe varchar(50) not null) 75

77 Ο πίνακας questionsafe είναι απαραίτητος διότι μέσα σε αυτόν θα αποθηκεύονται οι ερωτήσεις που θα εμφανίζονται κατά την δίαρκεια εγγραφής ενός χρήστη στο πεδίο ερώτηση ασφαλείας. Τα πεδία του ειναι τα id_questionsafe questionsafe Το id_questionsafe είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ το questionsafe είναι χαρακτήρας. Για την δημιουργία του γράφτηκε η εντολή create table questionsafe (id_questionsafe int not null primary key auto_increment, questionsafe varchar(100) not null) Εδώ πρέπει να αναφέρουμε ότι το id_login και το id_student έχουν την ίδια τιμή για τον ίδιο μαθητή, οπότε με αυτόν τον τρόπο μπορoύμε να συνδέσουμε τους δύο πίνακες (login και student). Επίσης το πεδίο id_questionsafel του πίνακα login έχει μια από τις τιμές του id_questionsafe του πίνακα questionsafe ώστε να γνωρίζουμε ποία ερώτηση ασφαλείας έχει επιλέξει ο συγκεκριμένος μαθητή. Η σχέση των πινάκων αυτών φαίνεται στο σχήμα 9.2. Σχ 9.2. Σχέση μεταξύ πινάκων της βάσης δεδομένων που αφορούν την είσοδο του χρήστη Εισαγωγή χρήστη Απαιτούμενοι πίνακες για την εισαγωγή πρώτης φοράς του χρήστη Για να γνωρίζει το σύστημα αν ο χρήστης έχει εισέλθει για πρώτη φορά, οπότε θα του εμφάνισει το ερωτηματολόγιο της εικόνας 3.5 είναι απαραίτητο να δημιουργήσουμε έναν πίνακα που να διατηρεί τον αριθμό των φορών που έχει εισέλθει ο χρήστης σε αυτό. Επίσης θα διατηρεί και κάποια στοιχεία για τις προτιμήσεις του, καθώς και το επίπεδο του. Τον πίνακα αυτόν τον ονομάζουμε counter και τα πεδία του είναι τα Id_counter Id_studentc Count Level_studentc Aim_student Shape_test Το id_counter είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo id_studentc είναι και αυτός ακέραιος και αποθηκευόνται όλα τα id_student του κάθε μαθητή που εισέρχεται στο σύστημα. Το count είναι και αυτός ακέραιος και διατηρεί τον αριθμό τον φορών που έχει εισέλθει ο χρήστης στο σύστημα, ενώ το Level_studentc,shape_test, aim_student είναι χαρακτήρες και κρατάνε το επίπεδο του μαθητή, την 76

78 μορφή του τεστ και τον σκοπό του μαθητή αντίστοιχα. Για την δημιουργία του πίνακα αυτού γράφτηκε η εντολή create table counter (id_counter int not null primary key auto_increment, id_studentc int not null, count int not null, level_studentc varchar(50), shape_test varchar(50), aim_student varchar(50)) Αρχεία για την εισαγωγή χρήστη για πρώτη φορά Τα αρχεία και ο τρόπος συσχετισμού μεταξύ τους για την δημιουργία της παραπάνω αρχιτεκτονικής φαίνονται στο σχήμα 9.3. studentpreference avatar login Studentpreference2 Easy_question Student_level1 medium_question difficult_question Answer_question Student_level2 >1.5 login medium_question =1.5 =3 <2.2 Student_level3 >2.2 easy_question difficult_question login <3 medium_question Σχ 9.3 Αρχεία που σχετίζονται με τα ερωτηματολόγια που εμφανίζονται κατά την πρώτη εισαγωγή του χρήστη και οι σχέσεις τους. Η λειτουργία του κάθε αρχείου είναι: Studentpreference.php: Εμφανίζει το ερωτηματολόγιο με τις προτιμήσεις του μαθητή. Ο μαθητής πρέπει να απαντήσει σε όλες τις ερωτήσεις. Studentpreference2.php: Ο πίνακας counter ενημερώνεται ότι έχει εισέλθει ένας καινούργιος μαθητής. Στην συνέχεια ανάλογα με τις απαντήσεις που έδωσε ενημερώνει 77

79 τα πεδία του. Για την πρώτη και την τρίτη ερώτηση η ενημέρωση γίνεται άμεσα. Αντίθετα για την δεύτερη ερώτηση που αφορά το επίπεδο γνώσης του θα πρέπει να συμπληρώσει κάποια τεστ ώστε να καθοριστεί το επίπεδο του. Τα αρχεία Student_level1, Student_level2 και Student_level3 χρησιμοποιούνται ώστε ανάλογα με το βαθμό που έχει συγκεντρώσει ο μαθητής από κάποιο τεστ να μπορεί είτε να βγάζει συμπέρασμα για το επίπεδο του είτε να τον αναγκάζει να λύσει και κάποιο άλλο τεστ ώστε να βγάλει ασφαλές συμπέρασμα. Τα αρχεία easy_question, medium_question και difficult_question περιέχουν τις ερωτήσεις των τεστ με εύκολες, μεσαίες και δύσκολες σε επίπεδο ερωτήσεις αντίστοιχα. Το αρχείο answer_question ελέγχει τις απαντήσεις του μαθητή και προσκομίζει τον αντίστοιχο βαθμό (για κάθε απάντηση) Διαχείρηση χρηστών Αρχεία για την διαχείρηση χρηστών Τα αρχεία που χρησιμοποιούνται για την διαχείρηση χρηστών και ο τρόπος συσχέτισης μεταξύ τους φαίνονται στο σχήμα 9.4. administratorview deletestudent updatestudent1 updatestudent2 Σχ 9.4 Αρχεία διαχείρησης χρηστών και η σχέση τους Η λειτουργία του κάθε αρχείου είναι: 1. Administratorview.php: Στο αρχείο αυτό εμφανίζεται ο πίνακας με τα διάφορα στοιχεία του μαθητή. Προσφέρεται στον δάσκαλο και η δυνατότητα να επιλέξει τον ή τους μαθητές που θα διαγράψει. 2. Deletestudent.php: Στο αρχείο αυτό διαγράφεται ο μαθητής από το σύστημα. Κατά την διαγραφή τα στοιχεία του μαθητή που βρίσκονται στους πίνακες login, counter και student διαγράφονται. 3. Updatestudent1.php: Στο αρχείο αυτό εμφανίζεται μια φόρμα με διάφορα στοιχεία του μαθητή. Ο δάσκαλος μπορεί να αλλάξει οποιαδήποτε από αυτά. 4. Updatestudent2.php: Τα στοιχεία που άλλαξαν κατά την προηγούμενη διαδικασία αποθηκεύονται στους πίνακες login και student αντικαθιστώντας τις προηγούμενες τιμές τους. 78

80 Εκτός όμως από τον δάσκαλο και ο ίδιος ο μαθητής έχει την δυνατότητα να αλλάξει τα προσωπικά του στοιχεία. Αυτό γίνεται επιλέγοντας τον σύνδεσμο Αλλαγή προσωπικών στοιχείων, που βρίσκεται στο κάτω μέρος του παραθύρου που εμφανίζεται κατά την εισαγωγή του μαθητή στο σύστημα. Τα αρχεία που χρησιμοποιούνται και ο τρόπος συσχέτισης τους φαίνονται στο σχήμα 9.5. info updatelogin1 succeed_login Updatelogin2 Σχ 9.5 Αρχεία ανανέωσεις προσωπικών στοιχείων από τον μαθητή Η λειτουργία του κάθε αρχείου είναι: 1. Updatelogin1.php: Στο αρχείο αυτό εμφανίζεται μια φόρμα με διάφορα στοιχεία του μαθητή. Ο δάσκαλος μπορεί να αλλάξει οποιαδήποτε από αυτά. 2. Updatelogin2.php: Τα στοιχεία που άλλαξαν κατά την προηγούμενη διαδικασία αποθηκεύονται στους πίνακες login και student αντικαθιστώντας τις προηγούμενες τιμές τους Επεξεργασία ερώτησης ασφαλείας Αρχεία για την επεξεργασία της ερώτησης ασφαλείας Τα αρχεία που χρησιμοποιούνται για την επεξεργασία της ερώτησης ασφαλείας και ο τρόπος συσχέτισης μεταξύ τους φαίνονται στο σχήμα 9.6 viewquestionsafe deletequestionsafe updatequestionsafe insertquestionsafe updatequestionsafe2 Σχ 9.6 Αρχεία διαχείρησης ερωτήσεων και η σχέση τους Η λειτουργία του κάθε αρχείου είναι : 79

81 1. Viewquestionsafe.php: Στο αρχείο αυτό εμφανίζεται ένας πίνακας με το όνομα της ερώτησης ασφαλείας που είναι σύνδεσμος. Για κάθε μια ερώτηση αντιστοιχεί μια γραμμή της στήλης διαγραφή ερώτηση Δ/Ε, που αν το το επιλέξει σημαίνει ότι θέλει να διαγράψει την ερώτηση αυτή. Πατώντας διαφραφή, το πετυχαίνει αυτό. Επίσης υπάρχει και ένα edit box όπου ο χρήστης μπορεί να εισάγει μια καινούργια ερώτηση. 2. Deletequestionsafe.php: Διαγράφει την ερώτηση που έχει επιλέξει ο χρήστης από τον πίνακα questionsafe. 3. Updatequestionsafe.php: Εμφανίζεται ένα edit box με το όνομα της ερώτησης που θα αναθεωρηθεί 4. Updatequestionsafe2.php: Αποθηκεύει την ερώτηση που αναθεωρήθηκε στον πίνακα questionsafe αντικαθιστώντας την προηγούμενητιμή της. 9.2 Διαχείρηση περιεχομένου Διαχείρηση ερωτήσεων Τεχνητής Νοημοσύνης Απαιτούμενοι πίνακες για την διαχείρηση των ερωτήσεων Με όσα έχουμε αναφέρει στην υποενότητα 4.1 συμπεραίνουμε ότι για να καταφέρουμε να δημιουργήσουμε την μονάδα διαχείρησης των ερωτήσεων τεχνητής νοημοσύνης, είναι απαραίτητο να φτιάξουμε πρώτα έναν μηχανισμό που να χωρίζει το υλικό με βάση τα κεφάλαια, τις ενότητες, τις υποένοτητες και τις έννοιες. Επισής θα πρέπει κάθε ένα από αυτά να γνωρίζει όλη την διαδρομή στην οποία ανήκει. Για να το πετύχουμε αυτό δημιουργούμε στην βάση δεδομένων τους ακόλουθους πίνακες. Ο πίνακας chapter είναι απαραίτητος διότι μέσα σε αυτόν θα αποθηκεύονται τα κεφάλαια τα οποία περιλαμβάνονται στο μάθημα της τεχνητής νοημοσύνης. Τα πεδία του ειναι τα id_chapter chapter Το id_chapter είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo chapter είναι χαρακτήρας και αναφέρεται στο όνομα του κεφάλαιου. Για την δημιουργία του γράφτηκε η εντολή create table chapter (id_chapter int not null primary key auto_increment, chapter varchar(50) not null) Ο πίνακας section είναι απαραίτητος διότι μέσα σε αυτόν θα αποθηκεύονται οι ενότητες στις οποίες περιλαμβάνονται μέσα σε κάθε κεφάλαιο. Τα πεδία του ειναι τα id_section section id_chaptersec Το id_section είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo section είναι χαρακτήρας και αναφέρεται στο όνομα της ενότητας. Το id_chaptersec είναι ακέραιος και είναι απαραίτητος για την αντιστοίχηση του πίνακα section με τον πίνακα chapter. Αυτό γίνεται ώστε να γνωρίζουμε σε ποίο κεφάλαιο αντιστοιχεί η κάθε ενότητα. Για την δημιουργία του γράφτηκε η εντολή 80

82 create table section (id_section int not null primary key auto_increment, section varchar(50) not null, id_chaptersec int not null ) Ο πίνακας subsection είναι απαραίτητος διότι μέσα σε αυτόν θα αποθηκεύονται οι υπο-ενότητες στις οποίες περιλαμβάνονται μέσα σε κάθε ενότητα. Τα πεδία του ειναι τα id_subsection subsection id_sectionsub Το id_subsection είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo subsection είναι χαρακτήρας και αναφέρεται στο όνομα της υπο-ενότητας. Το id_sectionsub είναι ακέραιος και είναι απαραίτητο για την αντιστοίχηση του πίνακα subsection με τον πίνακα section. Αυτό γίνεται ώστε να γνωρίζουμε σε ποία ενότητα αντιστοιχεί η κάθε υπο-ενότητα. Για την δημιουργία του γράφτηκε η εντολή create table subsection (id_subsection int not null primary key auto_increment, subsection varchar(50) not null, id_sectionsub int not null ) Ο πίνακας subsubsection είναι απαραίτητος διότι μέσα σε αυτόν θα αποθηκεύονται οι έννοιες στις οποίες περιλαμβάνονται μέσα σε κάθε υπο-ενότητα. Τα πεδία του ειναι τα id_subsubsection subsubsection id_subsectionsub Το id_subsubsection είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo subsubsection είναι χαρακτήρας και αναφέρεται στο όνομα της έννοιας. Το id_subsectionsub είναι ακέραιος και είναι απαραίτητο για την αντιστοίχηση του πίνακα subsubsection με τον πίνακα subsection. Αυτό γίνεται ώστε να γνωρίζουμε σε ποία υποενότητα αντιστοιχεί η κάθε έννοια. Για την δημιουργία του γράφτηκε η εντολή create table subsubsection (id_subsubsection int not null primary key auto_increment, subsubsection varchar(50) not null, id_subsectionsub int not null ) Με τις παραπάνω εντολές δημιουργήσαμε τους πίνακες που αναφέρονται στα κεφάλαια, τις ενότητες, τις υποένοτητες και τις έννοιες. Στην συνέχεια πρέπει να δημιουργήσουμε και έναν πίνακα που θα εμφανίζει τα επίπεδα δυσκολίας της κάθε ερώτησης. Ο πίνακας αυτός ονομάζεται level και τα πεδία του είναι τα id_level level Το id_level είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo level είναι χαρακτήρας και αναφέρεται στο όνομα του επιπέδου δυσκολίας (EASY, MEDIUM, DIFFICULT). Για την δημιουργία του γράφτηκε η εντολή create table level (id_level int not null primary key auto_increment, level varchar(50) not null) 81

83 Το επόμενο βήμα για να δημιουργήσουμε της ερωτήσεις είναι να φτιάξουμε τους πίνακες που θα αποθηκεύουν τις ερωτήσεις, τις απαντήσεις και τις υποδείξεις τους. Ο πίνακας που αποθηκεύει τις ερωτήσεις ονομάζεται question και τα πεδία του είναι τα id_question question id_chapterq id_sectionq id_subsectionq id_subsubsectionq id_levelq answerq Το id_question είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo question είναι χαρακτήρας και αναφέρεται στο όνομα της ερώτησης. Το id_chapterq, το id_sectionq, το id_subsectionq, το id_subsubsectionq και το id_levelq είναι ακέραιοι και είναι απαραίτητοι για την αντιστοίχηση του πίνακα question με τους πίνακες chapter, section, subsection, subsubsection και τον level. Ποίο συγκεκριμένα το id_chapterq αντιστοιχεί στο id_chapter του πίνακα chapter και δείχνει σε ποίο κεφάλαιο ανήκει η ερώτηση. Το id_subsectionq αντιστοιχεί στο id_subsection του πίνακα subsection και δείχνει σε ποια υπο-ενότητα ανήκει η ερώτηση. Το id_subsubsectionq αντιστοιχεί στο id_subsubsection του πίνακα subsubsection και δείχνει σε ποία έννοια αναφέρεται η ερώτηση. Το id_levelq αντιστοιχεί στο id_level του πίνακα level και δείχνει ποιο είναι το επίπεδο δυσκολίας της ερώτησης. Το answerq είναι χαρακτήρας και αναφέρει μια υπόδειξη για την σωστή απάντηση, η οποία είναι αυτή που γράφεται στο πεδίο αυτό. Για την δημιουργία του γράφτηκε η εντολή create table question (id_question int not null primary key auto_increment, question varchar(150) not null, answerq varchar(100) not null, id_chapterq int not null id_subsectionq int not null id_subsubsectionq int not null id_level int not null ) Οι απαντήσεις αποθηκεύονται σε τέσσερις πίνακες. Ο κάθε πίνακας αποθηκεύει μια πιθανή απάντηση. Ο πρώτος πίνακας ονομάζεται answer1 και τα πεδία του είναι τα id_answer1 answer1 degree1 hint1 Το id_answer1 είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo degree1 είναι χαρακτήρας και αναφέρεται στο όνομα της απάντησης. Το degree1 είναι πραγματικός αριθμός και αποθηκεύεται ο βαθμός που αντιστοιχεί σε αυτήν την απάντηση. Το hint1 είναι χαρακτήρας και κρατάει την υπόδειξη που αντιστοιχεί σε αυτήν την απάντηση. Για την δημιουργία του γράφτηκε η εντολή create table answer1 (id_answer1 int not null primary key auto_increment, answer1 varchar(100) not null, degree1 float(4,2) not null, hint1 varchar(100) not null ) Ο δεύτερος πίνακας ονομάζεται answer2 και τα πεδία του είναι τα id_answer2 answer2 degree2 hint2 Το id_answer2 είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo degree2 είναι χαρακτήρας και αναφέρεται στο όνομα της απάντησης. Το degree2 είναι πραγματικός αριθμός και αποθηκεύεται ο βαθμός που αντιστοιχεί σε αυτήν την απάντηση. Το hint2 είναι χαρακτήρας και κρατάει την υπόδειξη που αντιστοιχεί σε αυτήν την απάντηση. Για την δημιουργία του γράφτηκε η εντολή 82

84 create table answer2 (id_answer2 int not null primary key auto_increment, answer2 varchar(100) not null, degree2 float(4,2) not null, hint2 varchar(100) not null ) Ο τρίτος πίνακας ονομάζεται answer3 και τα πεδία του είναι τα id_answer3 answer3 degree3 hint3 Το id_answer3 είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo degree3 είναι χαρακτήρας και αναφέρεται στο όνομα της απάντησης. Το degree3 είναι πραγματικός αριθμός και αποθηκεύεται ο βαθμός που αντιστοιχεί σε αυτήν την απάντηση. Το hint3 είναι χαρακτήρας και κρατάει την υπόδειξη που αντιστοιχεί σε αυτήν την απάντηση. Για την δημιουργία του γράφτηκε η εντολή create table answer3 (id_answer3 int not null primary key auto_increment, answer3 varchar(100) not null, degree3 float(4,2) not null, hint3 varchar(100) not null ) Ο τέταρτος πίνακας ονομάζεται answer4 και τα πεδία του είναι τα id_answer4 answer4 degree4 hint4 Το id_answer4 είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo degree4 είναι χαρακτήρας και αναφέρεται στο όνομα της απάντησης. Το degree4 είναι πραγματικός αριθμός και αποθηκεύεται ο βαθμός που αντιστοιχεί σε αυτήν την απάντηση. Το hint4 είναι χαρακτήρας και κρατάει την υπόδειξη που αντιστοιχεί σε αυτήν την απάντηση. Για την δημιουργία του γράφτηκε η εντολή create table answer4 (id_answer4 int not null primary key auto_increment, answer4 varchar(100) not null, degree4 float(4,2) not null, hint4 varchar(100) not null ) Στους παραπάνω πίνακες πρέπει να αναφέρουμε ότι τα πεδία id_question, id_answer1, id_answer2, id_answer3 και id_answer4 έχουν την ίδια τίμη για κάθε συγκεκριμένη ερώτηση. Δηλαδή όταν εισάγουμε μια καινούργια ερώτηση στην βάση με τις αντίστοιχες απαντήσεις, το id του primary key για αυτήν την ερώτηση είναι το ίδιο και στους πέντε πίνακες (answer1, answer2, answer3, answer4, question) (σχήμα 9.7). Σχ 9.7 Πίνακες ερωτήσεων απαντήσεων και η σχέση μεταξύ τους. Τέλος για την ολοκληρώμενη εισαγωγή της ερώτησης πρέπει να εισάγουμε τον πίνακα hint που θα διατηρεί μια υπόδειξη που θα αφορά γενικά την ερώτηση. Ο ρόλος αυτής της υπόδειξης είναι να βοηθήσει τον μαθητή στην απάντηση μιας ερώτησης, προτού επιλέξει κάποια απάντηση. Τα πεδία αυτού του πίνακα είναι 83

85 id_hint hint id_questionh degreeh Το id_hint είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo hint είναι χαρακτήρας και αναφέρεται στο περιέχομενο της υπόδειξης. Το degreeh είναι πραγματικός αριθμός και αποθηκεύεται ο βαθμός που αντιστοιχεί σε αυτήν την υπόδειξη και το id_questionh αποτελεί έναν σύνδεσμο του πίνακα αυτού με τον πίνακα question. Αυτό χρειάζεται επειδή πρέπει να γνωρίζουμε σε ποια ερώτηση αντιστοιχεί η σεγκεκριμένη υπόδειξη. Για την δημιουργία του πίνακα αυτού γράφτηκε η εντολή create table hint (id_hint int not null primary key auto_increment, hint varchar(100) not null, id_questionh int not null degreeh float(4,2) not null ) Αρχεία για την διαχείρηση των ερωτήσεων Εφόσον οι παραπάνω πίνακες δημιουργήθηκαν στην συνέχεια μπορούμε να δούμε τα αρχεία που χρησιμοποιούνται για την αποθήκευση, την διόρθωση και την διαγραφή μιας ερώτησης όπως φαίνονται και στο σχήμα 9.8. viewquestionai insertquestion deletequestion updatequestion insertquestion updatequestion2 Σχ 9.8 Αρχεία διαχείρησης ερωτήσεων και η σχέση τους Οι λειτουργίες των παραπάνω αρχείων είναι: 1. Viewquestionai.php: Το αρχείο αυτό εμφανίζει όλες τις δυνατότητες που έχει ο δάσκαλος και που αφορούν τον χειρισμό των ερωτήσεων τεχνητής νοημοσύνης. Αρχικά εμφανίζεται ένας πίνακας με τις ερωτήσεις που υπάρχουν και τις αντίστοιχες απαντήσεις τους. Για κάθε μια ερώτηση αντιστοιχεί και μια γραμμή της στήλης Δ/Ε που αν την επιλέξει σημαίνει ότι θέλει να διαγραφεί η συγκεκριμένη ερώτηση. Επίσης η κάθε ερώτηση είναι και ένας σύνδεσμος σε ένα άλλο αρχείο για την διόρθωση της. Οι άλλες δυνατότητες που μπορεί να εκτελέσει από αυτό το αρχείο είναι να δεί τα κεφάλαια, τις ενότητες, τις υπόενοτητες καθώς και τις έννοιες που αντιστοιχεί η κάθε ερώτηση και να τα αναθεωρήσει. Επίσης υπάρχουν σύνδεσμοι για τον χειρισμό των κεφάλαιων, των ενοτήτων κτλ. 2. Insertquestion.php: Το αρχείο αυτό αφορά την εισάγωγή μιας ερώτησης. Αρχικά εμφανίζεται μια φόρμα, όπου ο δάσκαλος πρέπει να επιλέξει το κεφάλαιο, την ενότητητα, την υποένοτητα και την έννοια που αντιστοιχεί η ερώτηση που θα εισάγει. Εδώ πρέπει να αναφέρουμε ότι κάθε φορά που επιλέγει ένα κεφάλαιο, 84

86 στο combobox της ενότητας θα παρουσιαστούν οι ενότητες που αντιστοιχούν στο κεφάλαιο που επέλεξε. Το ίδιο θα συμβαίνει και για τις υποένοτητες όταν θα επιλέγει την ενότητα. Αφού συμπληρώσει αυτά τα στοιχεία μετά πρέπει να επιλέξει το επίπεδο της ερώτησης και στην συνέχεια να γράψει την ερώτηση με τις πιθανές τις απαντήσεις, τους βαθμούς της κάθε απάντησης και τις αντίστοιχες υποδείξεις. Σε περίπτωση που οι απαντήσεις είναι λιγότερες από 4 θα θεωρούνται ως none. 3. Insertquestion2.php: Με το αρχείο αυτό αποθηκευόνται οι ερωτήσεις, οι απαντήσεις και οι υποδείξεις στους αντίστοιχους πίνακες, εφόσον ο έλεγχος για την συμπλήρωση των στοιχείων κριθεί ικανοποιητικός. 4. Deletequestion.php: Διαγράφει από τον πίνακα question, answer1, answer2, answer3, answer4 και hint τα πεδία που αφορούν την ερώτηση που επέλεξε να διαγραφεί και συγχρόνως αφαιρεί από τα τεστ που έχει δημιουργήσει ο δάσκαλος τις ερωτήσεις που αντιστοιχούν στις διαγραφείσες. 5. Updatequestion.php: Εμφανίζει ένα edit box με την ερώτηση που χρειάζεται διόρθωση. 6. Updatequestion2.php: Αποθηκεύει την αναθεωρημένη ερώτηση στον πίνακα question αντικαθιστώντας την προηγούμενη τιμή της. Αρχεία για την διαχείρηση των στοιχείων των ερωτήσεων Τα αρχεία που χρησιμοποιούνται για την επεξεργασία των στοιχείων που αφορούν τις ερωτήσεις τεχνητής νοημοσύνης και οι σχέσεις τους φαίνονται σχήμα 9.9 viewquestionai contentquestionai updatequestion Updateanswer1_step2 Updateanswer2_step2 Updateanswer1 Updateanswer2 Updatequestion2 Updateanswer3_step2 Updateanswer3 Updatelesson Updateanswer4_step2 Updateanswer4 Updatelesson_step2 Updatedegreehint2 Updatedegreehint Σχ 9.9 Αρχεία διαχείρησης στοιχείων ερωτήσεων και οι σχέσεις τους Η λειτουργία του κάθε αρχείου είναι: 85

87 Contentquestionai.php: Το αρχείο αυτό φορτώνεται σε ένα καινούργιο παράθυρο και ανάλογα με ποίο σύνδεσμο έχει πατήσει ο χρήστης από τον πίνακα «πληροφορίες ερώτησης» εμφανίζει έναν πίνακα με τις ανάλογες πληροφορίες. Updateanswer1.php: Εμφανίζει 3 edit box από τα οποία ο δάσκαλος μπορεί να αναθεωρήσει την πρώτη απάντηση, την υπόδειξη της απάντησης αυτής, και τον αντίστοιχο βαθμό της. Updateanswer1_step2.php: Αποθηκεύει την αναθεωρημένη απάντηση, υπόδειξη ή βαθμό στον πίνακα answer1 στην προηγούμενη τιμή της. Updateanswer2.php: Εμφανίζει 3 edit box από τα οποία ο δάσκαλος μπορεί να αναθεωρήσει την δεύτερη απάντηση, την υπόδειξη της απάντησης αυτής, και τον αντίστοιχο βαθμό της. Updateanswer2_step2.php: Αποθηκεύει την αναθεωρημένη απάντηση, υπόδειξη ή βαθμό στον πίνακα answer2 αντικαθιστώντας την προηγούμενη τιμή της. Updateanswer3.php: Εμφανίζει 3 edit box από τα οποία ο δάσκαλος μπορεί να αναθεωρήσει την τρίτη απάντηση, την υπόδειξη της απάντησης αυτής, και τον αντίστοιχο βαθμό της. Updateanswer3_step2.php: Αποθηκεύει την αναθεωρημένη απάντηση, υπόδειξη ή βαθμό στον πίνακα answer3 αντικαθιστώντας την προηγούμενη τιμή της. Updateanswer4.php: Εμφανίζει 3 edit box από τα οποία ο δάσκαλος μπορεί να αναθεωρήσει την τέταρτη απάντηση, την υπόδειξη της απάντησης αυτής, και τον αντίστοιχο βαθμό της. Updateanswer4_step2.php: Αποθηκεύει την αναθεωρημένη απάντηση, υπόδειξη ή βαθμό στον πίνακα answer4 αντικαθιστώντας την προηγούμενη τιμή της. Updatelesson.php: Εμφανίζει 1 edit box το οποίο μπορεί να είναι είτε του κεφαλαίου, είτε της ενότητας, είτε της υποενότητας είτε της έννοιας στην οποία διάλεξε να αναθεωρήσει. Updatelesson_step2.php: Αποθηκεύει το αναθεωρημένο κεφάλαιο ή την αναθεωρημένη ενότητα, ή την αναθεωρημένη υποένοτητα ή την αναθεωρημένη έννοια στον πίνακα question αντικαθιστώντας την προηγούμενη τιμή της. Updatedegreehint.php: Εμφανίζει 3 edit box από τα οποία ο δάσκαλος μπορεί να αναθεωρήσει την απάντηση, την υπόδειξη της απάντησης αυτής, και τον αντίστοιχο βαθμό της ερώτησης. Updatedegreehint2.php: Σε περίπτωση που αναθεώρησε την απάντηση αποθηκεύει την αναθεωρημένη απάντηση στον πίνακα question αντικαθιστώντας την προηγούμενη τιμή της. Σε περίπτωση που αναθεώρησε την υπόδειξη ή τον βαθμό αποθηκεύει την αναθεωρημένη απάντηση στον πίνακα hint αντικαθιστώντας τις προηγούμενες τιμές τους. Για την αναθεώρηση του επιπέδου μιας ερώτησης τα αρχεία που χρησιμοποιούνται φαίνονται στο σχήμα

88 viewquestionai Updatelevelquestion2 contentquestionai updatelevelquestion Σχ 9.10 Διόρθωση επιπέδου ερώτησης. Η λειτουργία των αρχείων είναι: Updatelevelquestion: Εμφανίζει 1 edit box από τα οποία ο δάσκαλος μπορεί να αναθεωρήσει το επίπεδο της ερώτησης. Updatelevelquestion2: Αποθηκεύει την αναθεωρημένη υπόδειξη στον πίνακα question αντικαθιστώντας την προηγούμενη τιμή της Διαχείρηση μαθησιακού υλικού Αρχεία για την διαχείρηση του μαθησιακού υλικού Για την διαχείρηση των κεφαλαίων, τα αρχεία που συμμετέχουν και ο τρόπος συσχετισμού τους φαίνονται στο σχήμα 9.11 viewchapter updatechapter deletechapter Updatechapter2 insertchapter Σχ 9.11 Αρχεία διαχείρησης κεφαλαίων και οι σχέσεις τους. Η λειτουργία του κάθε αρχείου φαίνεται παρακάτω: Viewchapter.php: Στο αρχείο αυτό εμαφανίζεται ένας πίνακας με το σύνολο των κεφαλαίων που υπάρχουν στο σύστημα. Σε κάθε ένα από αυτά αντιστοιχεί μια γραμμή από την στήλη διαγραφή κεφαλαίου Δ/Κ και αν ο χρήστης το επιλέξει σημαίνει πως θέλει το αντίστοιχο κεφάλαιο να διαγραφεί. Επίσης κάθε ένα κεφαλαίο αποτελεί σύνδεσμο ως προς το αρχειο updatechapter.php και τέλος του προσφέρεται και η δυνατότητα εισαγωγής νέου κεφαλαίου γράφοντας το όνομα του στο edit box που υπάρχει στην σελίδα αυτή. 87

89 Updatechapter.php: Εμφανίζει ένα edit box με το όνομα του κεφαλαίου που χρειάζεται διόρθωση. Ο δάσκαλος μπορεί από εδώ να αναθεωρήσει το κεφάλαιο. Updatechapter2.php: Το αναθεωρημένο κεφάλαιο αποθηκεύεται στον πίνακα chapter αντικαθιστώντας την προηγούμενη τιμή του. Deletechapter.php: Διαγράφει την εγγραφή με το όνομα του κεφαλαίου που επιλέχτηκε από τον πίνακα chapter. Insertchapter.php: Εισάγει μια καινούργια εγγραφή στον πίνακα chapter Για την διαχείρηση των ενοτήτων, τα αρχεία που συμμετέχουν και ο τρόπος συσχετισμού τους φαίνονται στο σχήμα 9.12: viewsection updatesection deletesection Updatesection2 insertsection Updatechaptersec Updatechaptersec2 Σχ 9.12 Αρχεία διαχείρησης κεφαλαίων και οι σχέσει τους Η λειτουργία του κάθε αρχείου φαίνεται παρακάτω: Viewsection.php: Στο αρχείο αυτό εμαφανίζεται ένας πίνακας με το σύνολο των ενοτήτων που υπάρχουν στο σύστημα και των κεφάλαιων που αντιστοιχεί κάθε μια από αυτές. Σε κάθε ένα από αυτά αντιστοιχεί μια γραμμή από την στήλη Δ/Ε και αν ο χρήστης το επιλέξει σημαίνει πως θέλει η αντίστοιχη ενότητα να διαγραφεί. Επίσης κάθε μια ενότητα αποτελεί σύνδεσμο ως προς το αρχειο updatesection.php και τέλος του προσφέρεται και η δυνατότητα εισαγωγής νέας ενότητας γράφοντας το όνομα της στο edit box που υπάρχει στην σελίδα αυτή. Γράφοντας όμως της καινούργια ενότητα πρέπει να επιλέξει και το κεφάλαιο στο οποία θα αντιστοιχεί. Updatesection.php: Εμφανίζει ένα edit box με το όνομα της ενότητας που χρειάζεται διόρθωση. Ο δάσκαλος μπορεί από εδώ να αναθεωρήσει την ενότητα. Updatesection2.php: Η αναθεωρημένη ενότητα αποθηκεύεται στον πίνακα section αντικαθιστώντας την προηγούμενη τιμή της. 88

90 updatechaptersec.php: Εμφανίζει το όνομα του κεφαλαίου στο οποίο αντιστοιχεί η ενότητα, και που χρείαζεται αλλαγεί. updatechaptersec.php: Εμφανίζει ένα edit box με το όνομα του κεφαλαίου στο οποίο αντιστοιχεί η ενότητα και που χρειάζεται διόρθωση. Ο δάσκαλος μπορεί από εδώ να αναθεωρήσει το κεφάλαιο. updatechaptersec2.php: Αποθηκεύει το καινούργιο κεφάλαιο που αντιστοιχεί η ενότητα στον πίνακα section και συκεκριμένα στο πεδίο id_chaptersec αντικαθιστώντας την προηγούμενη τιμή του. Deletesection.php: Διαγράφει την εγγραφή με το όνομα της ενότηατς που επιλέχτηκε από τον πίνακα section. Insertsection.php: Εισάγει μια καινούργια εγγραφή στον πίνακα section Για την διαχείρηση των υπό-ενοτήτων, τα αρχεία που συμμετέχουν και ο τρόπος συσχετισμού τους φαίνονται στο σχήμα 9.13 viewsubsection updatesubsection deletesubsection Updatesubsection2 insertsubsection Updatesectionsub Updatesectionsub2 Σχ 9.13 Αρχεία διαχείρησης υπό-ενοτήτων και οι σχέσει τους. Η λειτουργία του κάθε αρχείου φαίνεται παρακάτω: Viewsubsection.php: Το αρχείο αυτό εμφανίζει έναν πίνακα με το σύνολο των υπόενοτήτων που υπάρχουν στο σύστημα και των ενοτήτων που αντιστοιχεί κάθε μια από αυτές. Σε κάθε ένα από αυτά αντιστοιχεί μια γραμμή από την στήλη διαγραφή υποενοτήτων Δ/Υ και αν ο χρήστης το επιλέξει σημαίνει πως θέλει η αντίστοιχη υπό ενότητα να διαγραφεί. Επίσης κάθε μια υπο-ενότητα αποτελεί σύνδεσμο ως προς το αρχειο updatesubsection.php και τέλος του προσφέρεται και η δυνατότητα εισαγωγής νέας υποενότητας γράφοντας το όνομα της στο edit box που υπάρχει στην σελίδα αυτή. Γράφοντας όμως της καινούργια υποενότητα πρέπει να επιλέξει και την ενότητα στην οποία θα αντιστοιχεί. 89

91 Updatesubsection.php: Εμφανίζει ένα edit box με το όνομα της υποενότητας που χρειάζεται διόρθωση. Ο δάσκαλος μπορεί από εδώ να αναθεωρήσει την υποενότητα. Updatesubsection2.php: Η αναθεωρημένη υποενότητα αποθηκεύεται στον πίνακα subsection αντικαθιστώντας την προηγούμενη τιμή της. updatesectionsub.php: Εμφανίζει το όνομα της ενότητας στο οποίο αντιστοιχεί η υποενότητα, και που χρείαζεται αλλαγή. updatesectionsub2.php: Αποθηκεύει την καινούργια ενότητα που αντιστοιχεί η υποενότητα στον πίνακα subsection και συκεκριμένα στο πεδίο id_sectionsub αντικαθιστώντας την προηγούμενη τιμή του. Deletesubsection.php: Διαγράφει την εγγραφή με το όνομα της υποενότητας που επιλέχτηκε από τον πίνακα subsection. Insertsubsection.php: Εισάγει μια καινούργια εγγραφή στον πίνακα subsection. Για την διαχείρηση των εννοιών, τα αρχεία που συμμετέχουν και ο τρόπος συσχετισμού τους φαίνονται στο σχήμα viewsubsubsection updatesubsubsection deletesubsubsection Updatesubsubsection2 insertsubsubsection Updatesubsectionsub Updatesubsectionsub2 Σχ 9.14 Αρχεία διαχείρησης εννοιών και οι σχέσει τους. Η λειτουργία του κάθε αρχείου φαίνεται παρακάτω: Viewsubsubsection.php: Το αρχείο αυτό εμφανίζει έναν πίνακα με το σύνολο των εννοιών που υπάρχουν στο σύστημα καθώς και των ενοτήτων που αντιστοιχεί κάθε μια από αυτές. Σε κάθε ένα από αυτά αντιστοιχεί μια γραμμή από την στήλη διαγραφή υποενοτήτων Δ/Ε και αν ο χρήστης το επιλέξει σημαίνει πως θέλει η αντίστοιχη έννοια να διαγραφεί. Επίσης κάθε μια έννοια αποτελεί σύνδεσμο ως προς το αρχειο updatesubsubsection.php και τέλος του προσφέρεται και η δυνατότητα εισαγωγής νέας έννοιας γράφοντας το όνομα της στο edit box που υπάρχει στην σελίδα αυτή. Γράφοντας όμως της καινούργια έννοια πρέπει να επιλέξει και την υποενότητα στην οποία θα αντιστοιχεί η έννοια αυτή. 90

92 Updatesubsubsection.php: Εμφανίζει ένα edit box με το όνομα της έννοιας που χρειάζεται διόρθωση. Ο δάσκαλος μπορεί από εδώ να αναθεωρήσει την έννοια. Updatesubsubsection2.php: Η αναθεωρημένη έννοια αποθηκεύεται στον πίνακα subsubsection αντικαθιστώντας την προηγούμενη τιμή της. updatesubsectionsub.php: Εμφανίζει το όνομα της υποενότητας στο οποίο αντιστοιχεί η έννοια, και που χρειάζεται αλλαγή. updatesubsectionsub2.php: Αποθηκεύει την καινούργια υποενότητα που αντιστοιχεί η έννοια στον πίνακα subsubsection και συκεκριμένα στο πεδίο id_subsectionsub αντικαθιστώντας την προηγούμενη τιμή της. Deletesubsubsection.php: Διαγράφει την εγγραφή με το όνομα της έννοια που επιλέχτηκε από τον πίνακα subsubsection. Insertsubsubsection.php: Εισάγει μια καινούργια εγγραφή στον πίνακα subsubsection. Για την διαχείρηση των επιπέδων, τα αρχεία που συμμετέχουν και ο τρόπος συσχετισμού τους φαίνονται στο σχήμα viewlevel updatelevel deletelevel Updatelevelr2 insertlevel Σχ 9.15 Αρχεία διαχείρησης επιπέδων και οι σχέσει τους Η λειτουργία του κάθε αρχείου φαίνεται παρακάτω: Viewlevel.php: Στο αρχείο αυτό εμαφανίζεται ένας πίνακας με το σύνολο των επιπεδων που υπάρχουν στο σύστημα. Σε κάθε ένα από αυτά αντιστοιχεί μια γραμμή από την στήλη διαγραφή επιπέδου Δ/Ε και αν ο χρήστης το επιλέξει σημαίνει πως θέλει το αντίστοιχο επίπεδο να διαγραφεί. Επίσης κάθε ένα επίπεδο αποτελεί σύνδεσμο ως προς το αρχειο updatelevel.php και τέλος του προσφέρεται και η δυνατότητα εισαγωγής νέου επιπέδου γράφοντας το όνομα του στο edit box που υπάρχει στην σελίδα αυτή. Updatelevel.php: Εμφανίζει ένα edit box με το όνομα του επιπέδου που χρειάζεται διόρθωση. Ο δάσκαλος μπορεί από εδώ να αναθεωρήσει το επίπεδο. Updatelevel2.php: Το αναθεωρημένο επίπεδο αποθηκεύεται στον πίνακα level αντικαθιστώντας την προηγούμενη τιμή του. 91

93 Deletelevel.php: Διαγράφει την εγγραφή με το όνομα του επιπέδου που επιλέχτηκε από τον πίνακα level. Insertlevel.php: Εισάγει μια καινούργια εγγραφή στον πίνακα level Διαχείρηση τεστ Απαιτούμενοι πίνακες για την διαχείρηση των τεστ Για να επιτεχθεί η δημιουργία και ο χειρισμός των τεστ είναι απαραίτητη η δημιουργία ορισμένων πινάκων. Ο βασικότερος από αυτούς είναι ο πίνακας test που χρησιμεύει στην αποθήκευση όλων των test που έχει δημιουργήσει ο δάσκαλος. Τα πεδία αυτού του πίνακα είναι τα id_test name_test Το id_test είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo name_test είναι χαρακτήρας και διατηρεί όλα τα ονόματα των τεστ που έχει δημιουργήσει ο δάσκαλος. Για την δημιουργία του πίνακα αυτού γράφτηκε η εντολή create table test (id_test int not null primary key auto_increment, test varchar(50) not null) Η δημιουργία ενός τεστ συνεπάγεται και την δημιουργία ενός πίνακα που ονομάζεται όπως και το τεστ και αποτελείται από δύο πεδία id_test1 Id_questiontest Το id_test1 είναι ένας ακέραιος και αποτελεί το primary key του πίνακα ενώ τo id_questiontest είναι και αυτός ακέραιος και αποθηκευόνται όλα τα id_question της κάθε ερώτησης που περιέχεται μέσα στο τεστ αυτό. Για την δημιουργία του πίνακα αυτού γράφτηκε η εντολή create table name_of_the_test (id_test1 int not null primary key auto_increment, id_questiontest int not null) Σχέση πίνακα test1 και test2 με τον πίνακα test. 92

94 Αρχεία για την διαχείρηση τεστ Τα αρχεία που χρησιμοποιούνται και ο συσχετισμός μεταξύ τους για την διαχείρηση των τεστ φαίνονται στο σχήμα viewtest deletetest createtest contenttest Createquestion_step1 Createquestion_step2 Σχ 9.16 Αρχεία διαχείρησης τεστ και οι σχέσεις τους. Η λειτουργία του κάθε αρχείου είναι: Viewtest.php: Εμφανίζει έναν πίνακα με τα ονόματα των τεστ που έχουν ήδη δημιουργηθεί. Κάθε ένα από τα ονόματα των τεστ αποτελεί σύνδεσμο στην σελίδα contenttest.php. Επίσης ο δάσκαλος έχει την δυνατότητα να δημιουργήσει ένα καινούργιο τεστ γράφοντας το όνομα του τεστ στο edit box καθώς επίσης να διαγράψει κάποιο τεστ μαρκάροντας την αντίστοιχη γραμμή της στήλης Δ/Τ που αντιστοιχεί αυτό το τεστ. Createtest.php: Προσθέτει στον πίνακα test μια καινούργια εγγραφή με το όνομα του τεστ και στην συνέχεια δημιουργεί έναν καινούργιο πίνακα που έχει το όνομα του τεστ. Createquestion_step1: Εμφανίζει μια φόρμα όπου ο δάσκαλος επιλέγει τις ιδιότητες των ερωτήσεων που θα εισαχθούν στο τεστ. Όλα τα πεδία πρέπει να είναι συμπληρωμένα. Createquestion_step2: Εισάγει στον πίνακα του τεστ που δημιουργήθηκε τις ερωτήσεις που ικανοποιούν τα κριτήρια του δάσκαλου. Deletetest.php: Διαφράφει από τον πίνακα test την εγγραφή με το όνομα του τεστ που επέλεξε ο δάσκαλος και συγχρόνως διαγράφει τον πίνακα που αντιστοιχεί σε αυτό το τεστ. Contenttest.php: Εμφανίζει τις ερωτήσεις μαζί με τις αντίστοιχες απαντήσεις που περιέχονται στο αντίστοιχο τεστ. Αρχεία για την μορφή του τεστ Για την επίτευξη της μορφής του τεστ που περιγράφεται στην υποενότητα 4.4 τα αρχεία που χρησιμοποιήθηκαν και ο τρόπος συσχέτισης τους φαίνεται στο σχήμα

95 avatar Slide00 resulttest slide Slide2 jess Σχ 9.17 Αρχεία διαχείρησης των ερωτήσεων του κάθε τεστ και οι σχέσεις τους Η λειτουργία του κάθε αρχείου είναι: Slide00.php: Φορτώνει το αρχείο slide.php. Slide.php: Εμφανίζει τις ερωτήσεις από το τεστ που εξετάζεται ο μαθητής, καθώς επίσης τις δυνατότητες που έχει( να δει υπόδειξη ή την απάντηση). Σε περίπτωση που ζητα υπόδειξη ή βοήθεια εμφανίζεται ο avatar στην ίδια σελίδα. Στην συνέχεια εισάγει μια καινούργια εγγραφή στον πίνακα stopreminder θέτοντας στο πεδίο stop την τιμή ένα. Αυτό γίνεται εφόσον ο μαθήτης επιλέξει για πρώτη φορά να λύσει κάποιο τεστ. Σε αντίθετη περίπτωση αντικαθιστά την τιμή stop (που αντιστοιχεί στην εγγραφή του μαθητή που χρησιμοποιεί το σύστημα) με την τιμή ένα. Slide2.php: Ανάλογα με την απάντηση που έδωσε ο χρήστης σε μια ερώτηση καθώς επίσης και με τον τρόπο που την απάντησε (χρησιμοποίησε βοήθεια, προσπάθησε παραπάνω από μια φορα, απάντησε σωστά ή όχι κτλ) αποθηκεύει όλες αυτές τις πληροφορίες στον πίνακα result_student. Resulttest.php: Εμφανίζει τα συνολικά αποτέλεσματα για την κάθε έννοια που εξετάστηκε ο μαθητής και ενημερώνει τον πίνακα total_result_student. Jess: Επεξεργάζεται τα στοιχεία του πίνακα total_result_student με σκοπό να δώσει ποσοστό μάθησης για κάθε έννοια ανεξαρτήτως του επιπέδου δυσκολίας. Στην συνέχεια αποθηκεύει την πληροφορία αυτή στον πίνακα concept_student. 9.3 Στατιστικά στοιχεία Απαιτούμενοι πίνακες για την δημιουργία των στατιστικών στοιχείων Για να επιτεχθεί η διαδικασία που περιγράφεται στο κεφάλαιο 5 οι κανόνες γράφτηκαν στο πρόγραμμα JESS. Αντίθετα τα στατιστικά στοιχεία που εμφανίζονται στον δάσκαλο και που χρησιμεύουν κατά ένα μέρος στο αποτέλεσμα που θα δώσει το έμπειρο σύστημα γράφηκαν σε php και mysql. Για την επίτευξή τους δημιουργήθηκε ο πίνακας result_student, ο οποίος διατηρεί στοιχεία που άφορούν τις ερωτήσεις και τον τρόπο απάντησεις τους από τον κάθε μαθητή. Τα στοιχεία τα οποία διατηρούνται είναι το id του μαθητή, το όνομα του τεστ που έλυσε, το id της ερώτησης που βρίσκεται στο τεστ αυτό, την απάντηση που έδωσε (αν είναι σωστή ή λάθος), το επίπεδο δυσκολίας της ερώτησης, την έννοια που αφορά η ερώτηση και τέλος το αν χρησιμοποίησε υπόδειξη 94

96 και το πόσες φορές απάντησε στην συγκεκριμένη ερώτηση. Ποιο συγκεκριμένα τα πεδία αυτού του πίνακα είναι Id_result Id_studentr Name_testr Id_questionr Answer Levelr Concept Number_answer seehint Το id_result είναι ένας ακέραιος και αποτελεί το primary key του πίνακα. Το Id_studentr είναι και αυτός ακέραιος και διατηρεί το id που έχει κάθε μαθητής. Αυτό δηλαδή το πεδίο συσχετίζει τον πίνακα result_student με τον πίνακα student. Το name_testr είναι χαρακτήρας και αποθηκεύει το όνομα του τεστ που λύνει ο μαθητής. Τo id_questionr είναι ακέραιος και αποθηκεύει το id της κάθε ερώτησης. Με αυτό τον τρόπο συσχετίζεται ο πίνακας αυτός με τον πίνακα question. Το πεδίο answer είναι χαρακτήρας και μπορεί να πάρει τιμή CORRECT ή WRONG. Το levelr αποθηκεύει το επίπεδο της ερώτησης και είναι χαρακτήτας, το concept είναι και αυτός χαρακτήρας και αποθηκεύει το όνομα της έννοιας, το number_answer ειναι ακέραιος και αναφέρεται στο πόσες φορές απάντησε στην συγκεκριμένη ερώτηση και το seehint είναι χαρακτήρας και αναφέρεται στο αν ο μαθητής χρησιμοποίησε την βοήθεια ή όχι για να απάντησει στην ερώτηση. Για την δημιουργία του πίνακα αυτού γράφτηκε η εντολή: create table result_student (id_result int not null primary key auto_increment, id_studentr int not null, name_testr varchar(50), id_questionr int, answer varchar(50), levelr varchar(50), concept varchar(50), number_answer int, seehint varchar(50) ) Για να μπορεί να δεί ο δάσκαλος το επίπεδο που αντιστοιχεί σε κάθε μαθητή που έλυσε ένα τεστ (προέρχεται από το έμπειρο σύστημα), χρησιμοποιούμε τον πίνακα result_test. Ο πίνακας αυτός αποτελείται από τέσσερα πεδία. Το πρώτο είναι το id_result_test που είναι ένας ακέραιος και αποτελεί το primary key του πίνακα. Το δεύτερο πεδίο είναι το result που είναι χαρακτήρας και διατηρεί το επίπεδο που αντιστοιχεί στον μαθητή για το συγκεκριμένο τεστ. Το τρίτο πεδίο είναι το test που είναι και αυτός ο χαρακτήρας και δαιτηρεί το όνομα του τεστ. Το τελευταίο πεδίο είναι το idstudent που είναι ακέραιος και διατηρεί το id που έχει ο μαθητής. Τα πεδία του πίνακα result_test παρουσιάζονται στον παρακάτω πίνακα: Id_result_test result test Idstudent Για την δημιουργία του πίνακα αυτού γράφτηκε η εντολή 95

97 create table result_test (id_result_tets int not null primary key auto_increment, result varchar(50), test varchar(50), id_student int ) Στην συνέχεια για να μπορεί ο δάσκαλος να έχει συγκεντρωτικά στοιχεία για το σύνολο των μαθητών που έλυσαν ένα συγκεκριμένο τεστ έπρεπε να φτιαχτεί ο πίνακας total_result_student. Στα πεδία αυτού του πίνακα αποθηκεύονται πληροφορίες για το σύνολο των σωστών απαντήσεων μιας έννοιας με βάση το επίπεδο δυσκολίας (για κάθε μαθητή). Τα πεδία του είναι τα Id_total_result Name_test concept percentage Level Id_student Το id_total_result είναι ένας ακέραιος και αποτελεί το primary key του πίνακα. Το Id_student είναι και αυτός ακέραιος και διατηρεί το id που έχει ο κάθε μαθητής. Αυτό δηλαδή το πεδίο συσχετίζει τον πίνακα result_total_student με τον πίνακα student. Το name_test είναι χαρακτήρας και αποθηκεύει το όνομα του τεστ που λύνει ο μαθητής. Το πεδίο concept είναι χαρακτήρας και αποθηκεύει την έννοια που διαπραγματεύεται το τεστ ενώ το πεδίο percentage είναι πραγματικός αριθμός και αποθηκεύει το ποσοστο των σωστών απαντήσεων του μαθητή για την έννοια αυτή με βάση το επιπεδό της. Το επίπεδο της έννοιας αποθηκεύεται στο πεδιο level οπότε είναι χαρακτήρας Για την δημιουργία του πίνακα αυτού γράφτηκε η εντολή create table total_result_student (id_total_result int not null primary key auto_increment, name_test varchar(50), concept varchar(50), percentage float(5,2), level varchar(50), id_student int) Στην παραπάνω αρχιτεκτονική πρέπει να αναφέρουμε ότι για να εμφανιστούν τα συνολικά αποτελέσματα για όλους τους μαθητές πρέπει πρώτα ο δάσκαλος να δει τα αποτελέσματα για κάθε έναν μαθητή και ύστερα να δει τα συνολικά αποτελέσματα για όλους. Αυτό οφείλεται στο γεγονός ότι για να δούμε τα συνολικά αποτελέσματα για κάθε έναν από τους μαθητές που έλυσαν κάποιο τεστ πρέπει να διαβάσουμε τα στοιχεία από τον πίνακα total_result_student που οι εγγράφες του εισάγονται εφόσον ο δάσκαλος έχει δει τα αποτελέσματα του κάθε μαθητή. Δηλαδή κάθε φορά που ο δάσκαλος βλέπει τα αποτελέσματα από έναν μαθητή μια καινουργία εγγραφή προστίθεται στον προηγούμενο πίνακα. Επείδη όμως η εγγραφή αυτή θα πρέπει να προστίθεται μόνο την πρώτη φορά που βλέπουμε τα στατιστικά στοιχεία ενός μαθητή (για ένα συγκεκριμένο τεστ) υπήρξε η ανάγκη δημιουργίας ενός καινούργιου πίνακα του access_resulttest. Ο πίνακας αυτός κρατάει τον αριθμό των φορών που έχει εισέλθει ο δάσκαλος στα στατιστικά στοιχεία ενός μαθητή. Τα πεδία του είναι τα 96

98 Id_access Id_studenta Number_access Name_test Το id_access είναι ένας ακέραιος και αποτελεί το primary key του πίνακα. Το Id_studenta είναι και αυτός ακέραιος και διατηρεί το id που έχει ο μαθητής για τον οποίο ο δάσκαλος βλέπει τα στατιστικά του στοιχεία. Αυτό δηλαδή το πεδίο συσχετίζει τον πίνακα αυτόν με τον πίνακα student. Το number_access ειναι ακέραιος και διατηρεί τον αριθμό των φορών που έχει εισέλθει ο δάσκολος στην σελίδα με τα στατιστικά στοιχεία του μαθητή. Το name_test είναι χαρακτήρας και αποθηκεύει το όνομα του τεστ που έχει λύσει ο μαθητής. Για την δημιουργία του πίνακα αυτού γράφτηκε η εντολή create table total_access_resulttest (id_access int not null primary key auto_increment, id_student int, number_access int, name_test varchar(50)) Αρχεία για την δημιουργία των στατιστικών στοιχείων Τα αρχεία που χρησιμοποιούνται για την εμφάνιση των παραπάνω στοιχείων και ο τρόπος συσχετισμού φαίνονται στο σχήμα viewstatistic studentsolvetest totalresultstudent resulttest Σχ 9.18 Αρχεία διαχείρησης στατιστικών στοιχείων και οι σχέσεις τους. Viewstatistic.php: Εμφανίζει όλα τα τεστ που έχουν λύσει οι μαθητές. Κάθε τεστ αποτελεί και ένα σύνδεσμο ως προς το αρχείο studentsolvetest.php. studentsolvetest.php: Εμφανίζει τα ονόματα των μαθητών που έλυσαν το επιλεγμένο τεστ. Απο εδώ μπορεί να δει τα στατιστικά στοιχεία για κάθε έναν μαθητή χωριστά ή για όλους τους μαθητές. Totalresultstudent: Εμφανίζει τα συνολικά αποτελέσματα για όλους τους μαθητές που έλυσαν το τεστ. resulttest: Εμφανίζει τα συνολικά αποτελέσματα για κάθε έναν από τους μαθητές που επέλεξε. Επίσης προσθέτει καινούργια δεδομένα στον πίνακα total_result_student. 97

99 9.4 Επικοινωνία χρήστη Πλοήγηση περιεχομένου Όπως αναφέραμε σε προηγούμενη ενότητα ο μαθητής έχει την δυνατότητα να επιλέξει ο ίδιος το υλικό που θα διδαχθεί. Για να το πετύχουμε αυτό κατά την εισαγωγή του χρήστη εμφανίζεται ένα δυναμικό μενού που έχει δενδρική μορφή. Ο χρήστης το μόνο που χρειάζεται να κάνει είναι να επιλέξει το κεφάλαιο, την ενότητα, την υποενότητα και τέλος την έννοια που θέλει να διδαχθεί (εικόνα 9.1). Εικ 9.1 Μενού Με την χρησιμοποίηση ενός μενού με δενδρική μορφή πετυχαίνουμε να εμφανίζεται το υλικό με μια ιεραρχική μορφή. Το κύριο θέμα πχ τα κεφάλαια βρίσκονται στην κορυφή ενώ τα υπαγόμενα στοιχεία, όπως οι ενότητες, οι έννοιες κτλ βρίσκονται από κάτω. Αρχεία πλοήγησης περιεχομένου Το μενού το οποίο χρησιμοποιούμε αποτελείται από τρεία αρχεία. Τα 1. demoframelessnodes.js 2. ftiens4.js 3. ua.js. Στο πρώτο αρχείο εισάγονται τα κεφάλαια, οι ενότητες, οι υπο-ενότητες και οι έννοιες που θα αποτελούν το διδακτικό υλικό για τον χρήστη του συστήματος. Ανάλογα με το επίπεδο που βρίσκεται το κάθε υλικό θα πρέπει να εισαχθεί με διαφορετικό τρόπο. Δηλαδή, σε περίπτωση που θέλουμε να εισάγουμε ένα κύριο θέμα, παραδείγματος χάριν το κεφάλαιο ΚΛΠΤ θα πρέπει να γράψουμε την εντολή 98

100 aux1 = insfld(folderstree, gfld("κλπτ", "javascript:undefined")) Στην συνέχεια για να εισάγουμε μια ενότητα πχ ΣΥΝΤΑΞΗ, θα πρέπει να γράψουμε την εντολή aux2 = insfld(aux1, gfld("συνταξη", "javascript:undefined")) Η εντολή αυτή θα πρέπει να βρίσκεται ακριβώς κάτω από το κύριο θέμα στο οποίο ανήκει. Ομοίως για να εισάγουμε μια υπο-ενότητα, πχ ΛΕΞΙΛΟΓΙΟ, θα πρέπει να γράψουμε την εντολή aux3 = insfld(aux2, gfld("λεξιλογιο", "javascript:undefined")) Στην περίπτωση που θέλουμε να εισάγουμε μια έννοια, πχ ΠΕΔΙΟ ΟΡΙΣΜΟΥ, τότε θα πρέπει να γράψουμε την εντολή insdoc(aux2, glnk("q", "ΠΕΔΙΟ ΟΡΙΣΜΟΥ", "pedio_orismou.html")) Εδώ πρέπει να αναφέρουμε ότι ανάλογα με το που θέλουμε να εμφανιστεί η έννοια που επειλέχθηκε χρησιμοποιούμε ένα από τα γράμματα B, P, S, T, Q. 1. Το B σημαίνει ότι το υλικό θα εμφανιστεί σε ένα καινούργιο ανώνυμο παράθυρο. 2. Το P σημαίνει ότι το υλικό θα φορτωθεί στο πατρικό έγγραφο του τρέχοντος εγγράφου. 3. Το T σημαίνει ότι το υλικό θα φορτωθεί σε πλήρες παράθυρο του Web browser, αντικαθιστώντας ολοκληρωτικά το τρέχον <FRAMESET>. 4. Το S σημαίνει ότι το υλικό θα φορτωθεί στο παράθυρο ή στο πλαίσιο που βρίσκεται ο σύνδεσμος. 5. Το Q σημαίνει ότι το υλικό θα φορτωθεί στο πλαίσιο που έχει το όνομα contents, και αυτό αποτελεί το δεξί κεντρικό παράθυρο της εικόνας. Το τρίτο πεδίο της συνάρτησης glnk αποτελεί τον σύνδεσμο που βρίσκεται το υλικό. Στο δεύτερο αρχείο (το ftiens4.js) βρίσκονται όλες οι συναρτήσεις που μας επιτρέπουν την δημιουργία ενός δυναμικού μενού με δενδρική μορφή. Στο τρίτο αρχείο (το ua.js) βρίσκονται κάποιες συναρτήσεις που επιτρέπουν την εγκατάσταση του παραπάνω μενού σε διαφορετικούς browser, όπως τον Explorer ή τον Mozilla κτλ Εικονικός Πράκτορας Ένα από τα σημαντικότερα κομμάτια του συστήματος είναι ο εικονικός πράκτορας που εμφανίζεται κάθε φορά που πρέπει ο χρήστης να ενημερωθεί για ένα γεγονός ή που χρείαζεται κάποια διευκρίνηση (εικόνα 9.2). Ο εικονικός πράκτορας είναι σχεδιασμένος έτσι ώστε να προσαρμόζεται στις απαιτήσεις του κάθε χρήστη. Επίσης έχει την δυνατότητα να κινείται και ανάλογα με το είδος της επικοινωνίας να προσαρμόζει το 99

101 βλέμα του. Παραδειγμάτος χάριν όταν θέλει να δώσει κάποια εξήγηση ή να δώσει κάποια υπόδειξη ο τρόπος παρουσίασης του θα είναι διαφορετικός. Εικ 9.2 Ο εικονικός πράκτορας Merlin Δημιουργία εικονικού πράκτορα Για να μπορέσουμε να χρησιμοποιήσουμε τον avatar πρέπει πρώτα να καλέσουμε το αντικείμενο του από τον ελεκτή των windows. Για να το πετύχουμε αυτό εισάγουμε τις επόμενες δύο γραμμές κώδικα. <OBJECT id=agentcontrol codebase=#version=2,0,0,0 height=0 width=0 classid=clsid:d45fd31b-5c6e-11d1-9ec1-00c04fd7081f></object> Στην συνέχεια για να τον χρησιμοποιήσουμε πρέπει να συνδεθούμε με το αντικείμενο αυτό και να το φορτώσουμε. Μετά από τις ενέργειες αυτές μπορούμε καλώντας τις διάφορες συναρτήσεις του, μπορούμε να τον εμφανίσουμε στην οθόνη και να τον κάνουμε να επικοινωνήσει με τον χρήστη. Για να γίνουν όμως όλα αυτά θα πρέπει να εισάγουμε κάποιες εντολές. Καταρχάς πρέπει να φτίαξουμε ένα μπλοκ της VBScript μέσα στην οποία θα εισάγουμε τις εντολές. Αυτό γίνεται γράφοντας 1. <SCRIPT language="vbscript" > 2. <! > 4. </SCRIPT> Στην συνέχεια θα πρέπει να εισάγουμε μια μεταβλητή που θα κρατάει το όνομα του εικονικού πράκτορα. Το μόνο που χρειάζεται είναι να γράψουμε μέσα στο παραπάνω μπλοκ 5. Dim Robby Εφόσον δημιουργήσαμε την μεταβλητή θα πρέπει να ορίσουμε τον χαρακτήρα που θα αντιπροσωπεύει και στην περιπτωσή μας είναι ο merlin. Πρωτού όμως κάνουμε αυτό θα πρέπει να συνδεθούμε με το αντικείμενο του εικονικού πράκτορα και να το φορτώσουμε. Αυτό γίνεται με τις εντολές 6. AgentControl.Connected=True 7. AgentControl.Characters.Load "Merlin", "merlin.acs" 8. Set Robby = AgentControl.Characters("Merlin") 100

Ευφυείς Τεχνολογίες ----Πράκτορες

Ευφυείς Τεχνολογίες ----Πράκτορες Ευφυείς Τεχνολογίες ----Πράκτορες Ενότητα 3: Εισαγωγή στους Ευφυείς Πράκτορες Δημοσθένης Σταμάτης demos@it.teithe.gr www.it.teithe.gr/~demos Μαθησιακοί Στόχοι της ενότητας 3 H κατανόηση της φύσης των πρακτόρων

Διαβάστε περισσότερα

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. Eυφυή Πληροφοριακά Συστήματα. Δρ. Κωνσταντίνος Χ.

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. Eυφυή Πληροφοριακά Συστήματα. Δρ. Κωνσταντίνος Χ. Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας Eυφυή Πληροφοριακά Συστήματα Δρ. Κωνσταντίνος Χ. Γιωτόπουλος Ανάγκη για Ευφυή Πληροφοριακά Συστήματα Η συσσώρευση ολοένα και μεγαλύτερου

Διαβάστε περισσότερα

Κωνσταντίνος Παπαβλασόπουλος ΑΜ:475

Κωνσταντίνος Παπαβλασόπουλος ΑΜ:475 «ΧΡΗΣΗ ΥΒΡΙΔΙΚΩΝ ΕΥΦΥΩΝ ΜΕΘΟΔΩΝ ΓΙΑ ΠΡΟΣΑΡΜΟΣΤΙΚΗ ΑΞΙΟΛΟΓΗΣΗ ΜΑΘΗΤΩΝ ΣΕ ΕΥΦΥΕΣ ΣΥΣΤΗΜΑ ΔΙΔΑΣΚΑΛΙΑΣ ΣΤΟ ΔΙΑΔΙΚΤΥΟ» Κωνσταντίνος Παπαβλασόπουλος ΑΜ:475 Τριμελής Εξεταστική Επιτροπή: Καθηγητής:Λυκοθανάσης

Διαβάστε περισσότερα

Ευφυείς Τεχνολογίες ----Πράκτορες

Ευφυείς Τεχνολογίες ----Πράκτορες Ευφυείς Τεχνολογίες ----Πράκτορες Ενότητα 4: Αρχιτεκτονικές Ευφυών Πρακτόρων Δημοσθένης Σταμάτης demos@it.teithe.gr www.it.teithe.gr/~demos Μαθησιακοί Στόχοι της ενότητας 4 H κατανόηση των διαφόρων μοντέλων/αρχιτεκτονικών

Διαβάστε περισσότερα

ΕΝΙΑΙΟ ΠΛΑΙΣΙΟ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΠΟΥΔΩΝ

ΕΝΙΑΙΟ ΠΛΑΙΣΙΟ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΠΟΥΔΩΝ ΥΠΟΥΡΓΕΙΟ ΕΘΝΙΚΗΣ ΠΑΙΔΕΙΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΠΑΙΔΑΓΩΓΙΚΟ ΙΝΣΤΙΤΟΥΤΟ ΕΝΙΑΙΟ ΠΛΑΙΣΙΟ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΙΣΧΥΕΙ ΚΑΤΑ ΤΟ ΜΕΡΟΣ ΠΟΥ ΑΦΟΡΑ ΤΟ ΛΥΚΕΙΟ ΓΙΑ ΤΗΝ ΥΠΟΧΡΕΩΤΙΚΗ ΕΚΠΑΙΔΕΥΣΗ ΙΣΧΥΟΥΝ ΤΟ ΔΕΠΠΣ

Διαβάστε περισσότερα

Είδη Groupware. Λογισμικό Συνεργασίας Ομάδων (Groupware) Λογισμικό Groupware. Υπάρχουν διάφορα είδη groupware ανάλογα με το αν οι χρήστες εργάζονται:

Είδη Groupware. Λογισμικό Συνεργασίας Ομάδων (Groupware) Λογισμικό Groupware. Υπάρχουν διάφορα είδη groupware ανάλογα με το αν οι χρήστες εργάζονται: Μάθημα 10 Συστήματα Διάχυσης και Διαχείρισης Γνώσης Chapter 10 Knowledge Transfer In The E-world Chapter 13 Knowledge Management Tools and Knowledge Portals Συστήματα Διάχυσης και Διαχείρισης Γνώσης Λογισμικό

Διαβάστε περισσότερα

Εφαρμογές Προσομοίωσης

Εφαρμογές Προσομοίωσης Εφαρμογές Προσομοίωσης H προσομοίωση (simulation) ως τεχνική μίμησης της συμπεριφοράς ενός συστήματος από ένα άλλο σύστημα, καταλαμβάνει περίοπτη θέση στα πλαίσια των εκπαιδευτικών εφαρμογών των ΤΠΕ. Μπορούμε

Διαβάστε περισσότερα

Περιεχόµενα. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής. Π.Σ. ιαχείρισης Πράξεων. Π.Σ. ιοίκησης. Κατηγορίες Π.Σ. Ο κύκλος ζωής Π.Σ.

Περιεχόµενα. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής. Π.Σ. ιαχείρισης Πράξεων. Π.Σ. ιοίκησης. Κατηγορίες Π.Σ. Ο κύκλος ζωής Π.Σ. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής Περιεχόµενα Κατηγορίες Π.Σ. ιαχείρισης Πράξεων ιοίκησης Υποστήριξης Αποφάσεων Έµπειρα Συστήµατα Ατόµων και Οµάδων Ο κύκλος ζωής Π.Σ. Ορισµός Φάσεις Χρήστες

Διαβάστε περισσότερα

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία ΠΛΗΡΟΦΟΡΙΚΗ Ι

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία ΠΛΗΡΟΦΟΡΙΚΗ Ι ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία ΠΛΗΡΟΦΟΡΙΚΗ Ι Συστήματα Υποστήριξης Αποφάσεων Τα Συστήματα Υποστήριξης Αποφάσεων (Σ.Υ.Α. - Decision Support Systems, D.S.S.) ορίζονται ως συστήματα

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ Π ΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ Π ΕΡΙΒΑΛΛΟΝ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ Π ΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ Π ΕΡΙΒΑΛΛΟΝ ΥΠΟΥΡΓΕΙΟ ΕΘΝΙΚΗΣ ΠΑΙΔΕΙΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΠΑΙΔΑΓΩΓΙΚΟ ΙΝΣΤΙΤΟΥΤΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ Π ΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ Π ΕΡΙΒΑΛΛΟΝ Κ Υ Κ Λ Ο Υ Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Η Σ Κ Α Ι Υ Π Η Ρ Ε Σ Ι Ω Ν Τ Ε Χ Ν Ο Λ Ο Γ Ι Κ Η

Διαβάστε περισσότερα

ΚΑΙΝΟΤΟΜΕΣ ΛΥΣΕΙΣ ΕΚΠΑΙΔΕΥΣΗΣ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗΣ ΟΔΗΓΟΣ E-LEARNING

ΚΑΙΝΟΤΟΜΕΣ ΛΥΣΕΙΣ ΕΚΠΑΙΔΕΥΣΗΣ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗΣ ΟΔΗΓΟΣ E-LEARNING ΚΑΙΝΟΤΟΜΕΣ ΛΥΣΕΙΣ ΕΚΠΑΙΔΕΥΣΗΣ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗΣ ΑΘΗΝΑ 2014 1 1. Τι είναι το e-learning; Το e-learning, η ηλεκτρονική μάθηση, είναι μια διαδικασία μάθησης και ταυτόχρονα μια μεθοδολογία εξ αποστάσεως εκπαίδευσης

Διαβάστε περισσότερα

Γουλή Ευαγγελία. 1. Εισαγωγή. 2. Παρουσίαση και Σχολιασµός των Εργασιών της Συνεδρίας

Γουλή Ευαγγελία. 1. Εισαγωγή. 2. Παρουσίαση και Σχολιασµός των Εργασιών της Συνεδρίας 1. Εισαγωγή Σχολιασµός των εργασιών της 16 ης παράλληλης συνεδρίας µε θέµα «Σχεδίαση Περιβαλλόντων για ιδασκαλία Προγραµµατισµού» που πραγµατοποιήθηκε στο πλαίσιο του 4 ου Πανελλήνιου Συνεδρίου «ιδακτική

Διαβάστε περισσότερα

215 Μηχανικών Η/Υ και Πληροφορικής Πάτρας

215 Μηχανικών Η/Υ και Πληροφορικής Πάτρας 215 Μηχανικών Η/Υ και Πληροφορικής Πάτρας Το Τμήμα ασχολείται με τη διδασκαλία και την έρευνα στην επιστήμη και τεχνολογία των υπολογιστών και τη μελέτη των εφαρμογών τους. Το Τμήμα ιδρύθηκε το 1980 (ως

Διαβάστε περισσότερα

Πληροφορική 2. Τεχνητή νοημοσύνη

Πληροφορική 2. Τεχνητή νοημοσύνη Πληροφορική 2 Τεχνητή νοημοσύνη 1 2 Τι είναι τεχνητή νοημοσύνη; Τεχνητή νοημοσύνη (AI=Artificial Intelligence) είναι η μελέτη προγραμματισμένων συστημάτων τα οποία μπορούν να προσομοιώνουν μέχρι κάποιο

Διαβάστε περισσότερα

Τσικολάτας Α. (2011) Οι ΤΠΕ ως Εκπαιδευτικό Εργαλείο στην Ειδική Αγωγή. Αθήνα

Τσικολάτας Α. (2011) Οι ΤΠΕ ως Εκπαιδευτικό Εργαλείο στην Ειδική Αγωγή. Αθήνα Οι ΤΠΕ ως Εκπαιδευτικό Εργαλείο στην Ειδική Αγωγή Τσικολάτας Αλέξανδρος Αναπληρωτής Καθηγητής, ΕΕΕΕΚ Παμμακαρίστου, tsikoman@hotmail.com Περίληψη Στην παρούσα εργασία γίνεται διαπραγμάτευση του ρόλου των

Διαβάστε περισσότερα

Εκπαίδευση Ενηλίκων: Εμπειρίες και Δράσεις ΑΘΗΝΑ, Δευτέρα 12 Οκτωβρίου 2015

Εκπαίδευση Ενηλίκων: Εμπειρίες και Δράσεις ΑΘΗΝΑ, Δευτέρα 12 Οκτωβρίου 2015 Εκπαίδευση Ενηλίκων: Εμπειρίες και Δράσεις ΑΘΗΝΑ, Δευτέρα 12 Οκτωβρίου 2015 Μάθηση και γνώση: μια συνεχής και καθοριστική αλληλοεπίδραση Αντώνης Λιοναράκης Στην παρουσίαση που θα ακολουθήσει θα μιλήσουμε

Διαβάστε περισσότερα

ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ. 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ. 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Στόχος Θεματικής Ενότητας Οι μαθητές να περιγράφουν τους βασικούς τομείς της Επιστήμης των Υπολογιστών και να μπορούν

Διαβάστε περισσότερα

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

Παιδαγωγικές δραστηριότητες μοντελοποίησης με χρήση ανοικτών υπολογιστικών περιβαλλόντων Παιδαγωγικές δραστηριότητες μοντελοποίησης με χρήση ανοικτών υπολογιστικών περιβαλλόντων Βασίλης Κόμης, Επίκουρος Καθηγητής Ερευνητική Ομάδα «ΤΠΕ στην Εκπαίδευση» Τμήμα Επιστημών της Εκπαίδευσης και της

Διαβάστε περισσότερα

Διδακτική της Πληροφορικής ΙΙ

Διδακτική της Πληροφορικής ΙΙ Διδακτική της Πληροφορικής ΙΙ Ομάδα Γ Βότσης Ευστάθιος Γιαζιτσής Παντελής Σπαής Αλέξανδρος Τάτσης Γεώργιος Προβλήματα που αντιμετωπίζουν οι αρχάριοι προγραμματιστές Εισαγωγή Προβλήματα Δυσκολίες Διδακτικό

Διαβάστε περισσότερα

Διερευνητική μάθηση We are researchers, let us do research! (Elbers and Streefland, 2000)

Διερευνητική μάθηση We are researchers, let us do research! (Elbers and Streefland, 2000) Διερευνητική μάθηση We are researchers, let us do research! (Elbers and Streefland, 2000) Πρόκειται για την έρευνα που διεξάγουν οι επιστήμονες. Είναι μια πολύπλοκη δραστηριότητα που απαιτεί ειδικό ακριβό

Διαβάστε περισσότερα

ΑΝΑΦΟΡΑ ΚΑΙΝΟΤΟΜΙΑΣ (STATE OF THE ART) ΤΟΥ ENTELIS ΕΚΔΟΣΗ EΥΚΟΛΗΣ ΑΝΑΓΝΩΣΗΣ

ΑΝΑΦΟΡΑ ΚΑΙΝΟΤΟΜΙΑΣ (STATE OF THE ART) ΤΟΥ ENTELIS ΕΚΔΟΣΗ EΥΚΟΛΗΣ ΑΝΑΓΝΩΣΗΣ ΑΝΑΦΟΡΑ ΚΑΙΝΟΤΟΜΙΑΣ (STATE OF THE ART) ΤΟΥ ENTELIS ΕΚΔΟΣΗ EΥΚΟΛΗΣ ΑΝΑΓΝΩΣΗΣ Εισαγωγή Η έρευνα στην Ευρώπη δείχνει ότι οι άνθρωποι με αναπηρίες όλων των ηλικιών έχουν προσωπική εμπειρία με την τεχνολογία.

Διαβάστε περισσότερα

Σύνοψη Θεωρίας ΟΡΙΣΜΟΣ ΚΑΙ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΑΛΓΟΡΙΘΜΩΝ

Σύνοψη Θεωρίας ΟΡΙΣΜΟΣ ΚΑΙ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΑΛΓΟΡΙΘΜΩΝ 1 ο ΓΥΜΝΑΣΙΟ ΘΕΡΜΗΣ Τάξη: Γ Μάθημα: Πληροφορική Εξεταστέα ύλη: Παρ11.1 & 11.2 Σύνοψη Θεωρίας ΟΡΙΣΜΟΣ ΚΑΙ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΑΛΓΟΡΙΘΜΩΝ Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών που περιγράφει τη διαδικασία

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Τι ονοµάζουµε πρόγραµµα υπολογιστή; Ένα πρόγραµµα

Διαβάστε περισσότερα

28 Πολυπρακτορικά Συστήµατα

28 Πολυπρακτορικά Συστήµατα ΚΕΦΑΛΑΙΟ 28 28 Πολυπρακτορικά Συστήµατα "There is no such thing as a single agent system". [Woodridge, 2002] Η παραπάνω ρήση από το βιβλίο του M.Wooldridge τονίζει, ίσως µε περισσή έµφαση, ότι είναι πλέον

Διαβάστε περισσότερα

Υπηρεσία Ασύγχρονης Τηλεκπαίδευσης Εθνικό & Καποδιστρικό Πανεπιστήμιο Αθηνών

Υπηρεσία Ασύγχρονης Τηλεκπαίδευσης Εθνικό & Καποδιστρικό Πανεπιστήμιο Αθηνών Υπηρεσία Ασύγχρονης Τηλεκπαίδευσης Εθνικό & Καποδιστρικό Πανεπιστήμιο Αθηνών ΤΣΙΜΠΑΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΕΞΗΝΤΑΡΙΔΗΣ ΙΩΑΝΝΗΣ Κέντρο Λειτουργίας και Διαχείρισης Δικτύου ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

Διαβάστε περισσότερα

Διδακτικές Τεχνικές (Στρατηγικές)

Διδακτικές Τεχνικές (Στρατηγικές) Διδακτικές Τεχνικές (Στρατηγικές) Ενδεικτικές τεχνικές διδασκαλίας: 1. Εισήγηση ή διάλεξη ή Μονολογική Παρουσίαση 2. Συζήτηση ή διάλογος 3. Ερωταποκρίσεις 4. Χιονοστιβάδα 5. Καταιγισμός Ιδεών 6. Επίδειξη

Διαβάστε περισσότερα

Τα σχέδια μαθήματος 1 Εισαγωγή

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

Διαβάστε περισσότερα

Μηχανική Λογισμικού για Διαδικτυακές & Φορητές Εφαρμογές

Μηχανική Λογισμικού για Διαδικτυακές & Φορητές Εφαρμογές Μεταπτυχιακό Δίπλωμα Ειδίκευσης Μηχανική Λογισμικού για Διαδικτυακές & Φορητές Εφαρμογές Δρ. Κακαρόντζας Γεώργιος Επίκουρος Καθηγητής Τμ. Μηχανικών Πληροφορικής Τ.Ε. Μηχανική Λογισμικού για Διαδικτυακές

Διαβάστε περισσότερα

ΛΟΓΙΣΜΟΣ ΜΙΑΣ ΜΕΤΑΒΛΗΤΗΣ, ΕΣΠΙ 1

ΛΟΓΙΣΜΟΣ ΜΙΑΣ ΜΕΤΑΒΛΗΤΗΣ, ΕΣΠΙ 1 ΛΟΓΙΣΜΟΣ ΜΙΑΣ ΜΕΤΑΒΛΗΤΗΣ, ΕΣΠΙ 1 ΣΥΝΑΡΤΗΣΕΙΣ Η έννοια της συνάρτησης είναι θεμελιώδης στο λογισμό και διαπερνά όλους τους μαθηματικούς κλάδους. Για το φοιτητή είναι σημαντικό να κατανοήσει πλήρως αυτή

Διαβάστε περισσότερα

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Κεφάλαιο 4 SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ 1 4.1 ΕΙΣΑΓΩΓΗ...3 4.2 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ...3 4.2.1 Η ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΟΥ...3 4.2.1.1 ΣΤΑΘΜΟΣ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΟΥ...4 4.2.1.2 ΔΙΑΧΕΙΡΙΖΟΜΕΝΟΙ

Διαβάστε περισσότερα

Εννοιολογική χαρτογράφηση: Διδακτική αξιοποίηση- Αποτελέσματα για το μαθητή

Εννοιολογική χαρτογράφηση: Διδακτική αξιοποίηση- Αποτελέσματα για το μαθητή Το λογισμικό της εννοιολογικής χαρτογράυησης Inspiration Η τεχνική της εννοιολογικής χαρτογράφησης αναπτύχθηκε από τον καθηγητή Joseph D. Novak, στο πανεπιστήμιο του Cornell. Βασίστηκε στις θεωρίες του

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Β ) Λειτουργικό Σύστημα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Γ Γυμνασίου: Οδηγίες Γραπτής Εργασίας και Σεμιναρίων. Επιμέλεια Καραβλίδης Αλέξανδρος. Πίνακας περιεχομένων

Γ Γυμνασίου: Οδηγίες Γραπτής Εργασίας και Σεμιναρίων. Επιμέλεια Καραβλίδης Αλέξανδρος. Πίνακας περιεχομένων Γ Γυμνασίου: Οδηγίες Γραπτής Εργασίας και Σεμιναρίων. Πίνακας περιεχομένων Τίτλος της έρευνας (title)... 2 Περιγραφή του προβλήματος (Statement of the problem)... 2 Περιγραφή του σκοπού της έρευνας (statement

Διαβάστε περισσότερα

Τ.Ε.Ι. ΑΝΑΤΟΛΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ & ΕΠΙΧΕΙΡΗΣΕΩΝ

Τ.Ε.Ι. ΑΝΑΤΟΛΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ & ΕΠΙΧΕΙΡΗΣΕΩΝ Τ.Ε.Ι. ΑΝΑΤΟΛΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ & ΕΠΙΧΕΙΡΗΣΕΩΝ Η Έρευνα Μάρκετινγκ ως εργαλείο ανάπτυξης νέων προϊόντων ΕΙΣΗΓΗΤΗΣ: Δρ. Ιωάννης Σ. Τουρτούρας Μηχανικός Παραγωγής & Διοίκησης Δ.Π.Θ.

Διαβάστε περισσότερα

723 Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών ΤΕΙ Λάρισας

723 Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών ΤΕΙ Λάρισας 723 Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών ΤΕΙ Λάρισας Το Τμήμα Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών του ΤΕΙ Λάρισας ιδρύθηκε με το Προεδρικό Διάταγμα 200/1999 (ΦΕΚ 179 06/09/99), με πρώτο

Διαβάστε περισσότερα

ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΓΙΑ ΤΗ ΜΑΘΗΣΗ ΚΑΙ ΤΗ ΔΙΔΑΣΚΑΛΙΑ ΣΤΗΝ ΠΡΟΣΧΟΛΙΚΗ ΕΚΠΑΙΔΕΥΣΗ

ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΓΙΑ ΤΗ ΜΑΘΗΣΗ ΚΑΙ ΤΗ ΔΙΔΑΣΚΑΛΙΑ ΣΤΗΝ ΠΡΟΣΧΟΛΙΚΗ ΕΚΠΑΙΔΕΥΣΗ ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΓΙΑ ΤΗ ΜΑΘΗΣΗ ΚΑΙ ΤΗ ΔΙΔΑΣΚΑΛΙΑ ΣΤΗΝ ΠΡΟΣΧΟΛΙΚΗ ΕΚΠΑΙΔΕΥΣΗ ΑΝΑΓΝΩΡΙΖΟΝΤΑΣ ΤΗ ΔΙΑΦΟΡΕΤΙΚΟΤΗΤΑ & ΑΝΑΠΤΥΣΣΟΝΤΑΣ ΔΙΑΦΟΡΟΠΟΙΗΜΕΝΕΣ ΠΡΟΣΕΓΓΙΣΕΙΣ Διαστάσεις της διαφορετικότητας Τα παιδιά προέρχονται

Διαβάστε περισσότερα

Γράφοντας ένα σχολικό βιβλίο για τα Μαθηματικά. Μαριάννα Τζεκάκη Αν. Καθηγήτρια Α.Π.Θ. Μ. Καλδρυμίδου Αν. Καθηγήτρια Πανεπιστημίου Ιωαννίνων

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

Διαβάστε περισσότερα

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams Αλέκα Σεληνιωτάκη Ηράκλειο, 26/06/12 aseliniotaki@csd.uoc.gr ΑΜ: 703 1. Περίληψη Συνεισφοράς

Διαβάστε περισσότερα

ΗΥ Λογική. Διδάσκων: Δημήτρης Πλεξουσάκης Καθηγητής

ΗΥ Λογική. Διδάσκων: Δημήτρης Πλεξουσάκης Καθηγητής ΗΥ 180 - Λογική Διδάσκων: Καθηγητής E-mail: dp@csd.uoc.gr Ώρες διδασκαλίας: Δευτέρα, Τετάρτη 4-6 μμ, Αμφ. Β Ώρες φροντιστηρίου: Πέμπτη 4-6 μμ, Αμφ. Β Ώρες γραφείου: Δευτέρα, Τετάρτη 2-4 μμ, Κ.307 Web site:

Διαβάστε περισσότερα

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ Μ. Γρηγοριάδου Ρ. Γόγουλου Ενότητα: Η Διδασκαλία του Προγραμματισμού Περιεχόμενα Παρουσίασης

Διαβάστε περισσότερα

H Συμβολή της Υπολογιστικής Σκέψης στην Προετοιμασία του Αυριανού Πολίτη

H Συμβολή της Υπολογιστικής Σκέψης στην Προετοιμασία του Αυριανού Πολίτη H Συμβολή της Υπολογιστικής Σκέψης στην Προετοιμασία του Αυριανού Πολίτη Κοτίνη Ι., Τζελέπη Σ. Σχ. Σύμβουλοι Κ. Μακεδονίας στην οικονομία, στη τέχνη, στην επιστήμη, στις ανθρωπιστικές και κοινωνικές επιστήμες.

Διαβάστε περισσότερα

Τεχνολογία στην Εκπαίδευση Εισαγωγή. Χαρίκλεια Τσαλαπάτα 24/9/2012

Τεχνολογία στην Εκπαίδευση Εισαγωγή. Χαρίκλεια Τσαλαπάτα 24/9/2012 Τεχνολογία στην Εκπαίδευση Εισαγωγή Χαρίκλεια Τσαλαπάτα 24/9/2012 Μάθηση Γενικότερος όρος από την «εκπαίδευση» Την εκπαίδευση την αντιλαμβανόμαστε σαν διαδικασία μέσα στην τάξη «Μάθηση» παντού και συνεχώς

Διαβάστε περισσότερα

Δικτυακοί τόποι. Η σχεδίαση ενός δικτυακού τόπου. Δρ. Ματθαίος Α. Πατρινόπουλος

Δικτυακοί τόποι. Η σχεδίαση ενός δικτυακού τόπου. Δρ. Ματθαίος Α. Πατρινόπουλος Δικτυακοί τόποι Η σχεδίαση ενός δικτυακού τόπου Δρ. Ματθαίος Α. Πατρινόπουλος Πώς χρησιμοποιούμε το διαδίκτυο; ΔΙΑΦΑΝΕΙΕΣ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΔΙΑΔΙΚΤΥΟΥ. 2 Από το www.smartinsights.

Διαβάστε περισσότερα

Εργαλεία ανάπτυξης εφαρμογών internet Ι

Εργαλεία ανάπτυξης εφαρμογών internet Ι IEK ΟΑΕΔ ΚΑΛΑΜΑΤΑΣ ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΟΦΟΡΙΚΗΣ Εργαλεία ανάπτυξης εφαρμογών internet Ι Διδάσκουσα: Κανελλοπούλου Χριστίνα ΠΕ19 Πληροφορικής 4 φάσεις διαδικτυακών εφαρμογών 1.Εφαρμογές στατικής πληροφόρησης

Διαβάστε περισσότερα

O μετασχηματισμός μιας «διαθεματικής» δραστηριότητας σε μαθηματική. Δέσποινα Πόταρη Πανεπιστήμιο Πατρών

O μετασχηματισμός μιας «διαθεματικής» δραστηριότητας σε μαθηματική. Δέσποινα Πόταρη Πανεπιστήμιο Πατρών O μετασχηματισμός μιας «διαθεματικής» δραστηριότητας σε μαθηματική Δέσποινα Πόταρη Πανεπιστήμιο Πατρών Η έννοια της δραστηριότητας Δραστηριότητα είναι κάθε ανθρώπινη δράση που έχει ένα κίνητρο και ένα

Διαβάστε περισσότερα

1. Η σκοπιμότητα της ένταξης εργαλείων ψηφιακής τεχνολογίας στη Μαθηματική Εκπαίδευση

1. Η σκοπιμότητα της ένταξης εργαλείων ψηφιακής τεχνολογίας στη Μαθηματική Εκπαίδευση 1. Η σκοπιμότητα της ένταξης εργαλείων ψηφιακής τεχνολογίας στη Μαθηματική Εκπαίδευση Στη βασική παιδεία, τα μαθηματικά διδάσκονται με στατικά μέσα α) πίνακα/χαρτιού β) κιμωλίας/στυλού γ) χάρτινου βιβλίου.

Διαβάστε περισσότερα

ΥΠΗΡΕΣΙΑ. Ηλεκτρονική ιαχείριση Τάξης. Οδηγίες χρήσης για τον µαθητή.

ΥΠΗΡΕΣΙΑ. Ηλεκτρονική ιαχείριση Τάξης. Οδηγίες χρήσης για τον µαθητή. ΥΠΗΡΕΣΙΑ Ηλεκτρονική ιαχείριση Τάξης Οδηγίες χρήσης για τον µαθητή http://eclass.sch.gr Η υπηρεσία ηλεκτρονικής διαχείρισης τάξης αναπτύχθηκε από το Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών για λογαριασµό

Διαβάστε περισσότερα

Managing Information. Lecturer: N. Kyritsis, MBA, Ph.D. Candidate Athens University of Economics and Business. e-mail: kyritsis@ist.edu.

Managing Information. Lecturer: N. Kyritsis, MBA, Ph.D. Candidate Athens University of Economics and Business. e-mail: kyritsis@ist.edu. Managing Information Lecturer: N. Kyritsis, MBA, Ph.D. Candidate Athens University of Economics and Business e-mail: kyritsis@ist.edu.gr Διαχείριση Γνώσης Knowledge Management Learning Objectives Ποιοί

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής & Υπολογιστών

Τμήμα Μηχανικών Πληροφορικής & Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΔΥΤΙΚΗΣ ΑΤΤΙΚΗΣ Τμήμα Μηχανικών Πληροφορικής & Υπολογιστών ΑΝΤΙΣΤΟΙΧΙΣΕΙΣ ΜΑΘΗΜΑΤΩΝ ΠΡΟΓΡΑΜΜΑΤΩΝ ΣΠΟΥΔΩΝ & ΜΕΤΑΒΑΤΙΚΕΣ ΔΙΑΤΑΞΕΙΣ 2 Πίνακας περιεχομένων 1. Νομοθετικό Πλαίσιο και Υφιστάμενα

Διαβάστε περισσότερα

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

4. Συντακτικό μιας γλώσσας είναι το σύνολο των κανόνων που ορίζει τις μορφές με τις οποίες μια λέξη είναι αποδεκτή. ΑΕσΠΠ-Κεφ6. Εισαγωγή στον προγραμματισμό 1 ΣΩΣΤΟ ΛΑΘΟΣ 1. Οι γλώσσες προγραμματισμού αναπτυχθήκαν με σκοπό την επικοινωνία ανθρώπου μηχανής. 2. Αλγόριθμος = Πρόγραμμα + Δομές Δεδομένων 3. Ένα πρόγραμμα

Διαβάστε περισσότερα

1. Οι Τεχνολογίες της Πληροφορίας και των Επικοινωνιών στην εκπαιδευτική διαδικασία

1. Οι Τεχνολογίες της Πληροφορίας και των Επικοινωνιών στην εκπαιδευτική διαδικασία 1. Οι Τεχνολογίες της Πληροφορίας και των Επικοινωνιών στην εκπαιδευτική διαδικασία Ο διδακτικός σχεδιασμός (instructional design) εμφανίσθηκε στην εκπαιδευτική διαδικασία και στην κατάρτιση την περίοδο

Διαβάστε περισσότερα

ΑΞΙΟΛΟΓΗΣΗ (THE MATRIX)

ΑΞΙΟΛΟΓΗΣΗ (THE MATRIX) ΕΠΙΧΕΙΡΗΜΑΤΙΚΟ ΠΑΙΧΝΙΔΙ PLAY4GUIDANCE ΑΞΙΟΛΟΓΗΣΗ (THE MATRIX) Συγγραφέας: Jan M. Pawlowski, Hochschule Ruhr West (HRW) Page 1 of 7 Κατηγορία Ικανότητας Περιγραφή Ικανότητας Περιγραφή του επιπέδου επάρκειας

Διαβάστε περισσότερα

Συστήµατα Τηλεκπαίδευσης: Κύκλος ζωής εκπαιδευτικού υλικού

Συστήµατα Τηλεκπαίδευσης: Κύκλος ζωής εκπαιδευτικού υλικού 1 Συστήµατα Τηλεκπαίδευσης: Κύκλος ζωής εκπαιδευτικού υλικού Τµήµα Διοίκησης Επιχειρήσεων Τει Δυτικής Ελλάδας Μεσολόγγι Δρ. Α. Στεφανή Διάλεξη 3 Το Εκπαιδευτικό Υλικό Το Εκπαιδευτικό Υλικό, έχει έντυπη

Διαβάστε περισσότερα

Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018. Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια)

Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018. Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια) Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018 Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια) ΠΕΡΙΟΧΗ Α: ΕΦΑΡΜΟΓΕΣ ΜΕ ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ΕΠΙΓΝΩΣΗ ΣΥΓΚΕΙΜΕΝΟΥ Οι αισθητήρες μας δίνουν τη δυνατότητα

Διαβάστε περισσότερα

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων. Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων. Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Ενότητα 1: Πώς να διδάξεις ηλικιωμένους για να χρησιμοποιήσουν τη ψηφιακή τεχνολογία. Ημερομηνία: 15/09/2017. Intellectual Output:

Ενότητα 1: Πώς να διδάξεις ηλικιωμένους για να χρησιμοποιήσουν τη ψηφιακή τεχνολογία. Ημερομηνία: 15/09/2017. Intellectual Output: Τίτλος: Εταίρος: Ενότητα 1: Πώς να διδάξεις ηλικιωμένους για να χρησιμοποιήσουν τη ψηφιακή τεχνολογία SOSU Oestjylland Ημερομηνία: 15/09/2017 Intellectual Output: IO3 ΠΕΡΙΕΧΟΜΕΝΑ Ψυχολογικές Πτυχές...2

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Ενότητα 1: Εισαγωγή. Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Ενότητα 1: Εισαγωγή. Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Λογική Ενότητα 1: Εισαγωγή Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται στην άδεια χρήσης Creative Commons

Διαβάστε περισσότερα

ιπλωµατική εργασία: Νικόλαος Ματάνας Επιβλέπων Καθηγήτρια: Μπούσιου έσποινα

ιπλωµατική εργασία: Νικόλαος Ματάνας Επιβλέπων Καθηγήτρια: Μπούσιου έσποινα ιπλωµατική εργασία: Νικόλαος Ματάνας Επιβλέπων Καθηγήτρια: Μπούσιου έσποινα ΤµήµαΕφαρµοσµένης Πληροφορικής Πανεπιστήµιο Μακεδονίας Θεσσαλονίκη Ιούνιος 2006 εισαγωγικού µαθήµατος προγραµµατισµού υπολογιστών.

Διαβάστε περισσότερα

ΕΡΕΥΝΗΤΙΚΗ ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

ΕΡΕΥΝΗΤΙΚΗ ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΏΝ ΣΠΟΥΔΩΝ (Master in Business Administration) «ΔΙΟΙΚΗΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΜΕ 4 ΚΑΤΕΥΘΥΝΣΕΙΣ» ΕΡΕΥΝΗΤΙΚΗ ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

Διαβάστε περισσότερα

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

ΣΗΜΕΙΩΣΕΙΣ ΤΕΛΙΚΗΣ ΕΡΓΑΣΙΑΣ ΤΟΥ ΜΑΘΗΜΑΤΟΣ «ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ» ΣΗΜΕΙΩΣΕΙΣ ΤΕΛΙΚΗΣ ΕΡΓΑΣΙΑΣ ΤΟΥ ΜΑΘΗΜΑΤΟΣ «ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ» Κωνσταντίνος Π. Φερεντίνος Διδάσκων ΠΔ 407/80 Οι σημειώσεις αυτές αναπτύχθηκαν στα πλαίσια του προγράμματος «ΕΠΕΑΕΚ 2 Πρόγραμμα Αναβάθμισης

Διαβάστε περισσότερα

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

Διαφοροποίηση στρατηγικών διδασκαλίας ανάλογα με το περιεχόμενο στα μαθήματα των φυσικών επιστημών Διαφοροποίηση στρατηγικών διδασκαλίας ανάλογα με το περιεχόμενο στα μαθήματα των φυσικών επιστημών Κων/νος Στεφανίδης Σχολικός Σύμβουλος Πειραιά kstef2001@yahoo.gr Νικόλαος Στεφανίδης Φοιτητής ΣΕΜΦΕ, ΕΜΠ

Διαβάστε περισσότερα

Ενότητες Γ3.1 - Γ3.2 - Γ3.3

Ενότητες Γ3.1 - Γ3.2 - Γ3.3 Ενότητες Γ3.1 - Γ3.2 - Γ3.3 3.1 Τo διαδίκτυο ως πηγή πληροφοριών 3.2 Αξιοποίηση- αξιολόγηση ιστοσελίδων, ιστοχώρων και πυλών 3.3 Σχεδίαση μαθημάτων με τη χρήση του διαδικτύου To Διαδίκτυο ως πηγή πληροφοριών

Διαβάστε περισσότερα

Εκπαιδευτικό Σενάριο 2

Εκπαιδευτικό Σενάριο 2 Εκπαιδευτικό Σενάριο 2 Τίτλος: Τα συνεργατικά περιβάλλοντα δημιουργίας και επεξεργασίας υπολογιστικών φύλλων Εκτιμώμενη διάρκεια εκπαιδευτικού σεναρίου: Προβλέπεται να διαρκέσει συνολικά 3 διδακτικές ώρες.

Διαβάστε περισσότερα

ΕΚΠΑ η-τάξη Πλατφόρμα Ασύγχρονης Τηλεκπαίδευσης

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

Διαβάστε περισσότερα

Μάθηση σε κίνηση (Mobile learning) Χαρίκλεια Τσαλαπάτα 16/11/2016

Μάθηση σε κίνηση (Mobile learning) Χαρίκλεια Τσαλαπάτα 16/11/2016 Μάθηση σε κίνηση (Mobile learning) Χαρίκλεια Τσαλαπάτα 16/11/2016 Τι είναι το Mobile Learning? Χρήση συσκευών για σύνδεση σε εκπαιδευτική και άλλη πληροφορία Με συμμαθητές, συνεργάτες, κοινότητες, υπηρεσίες,

Διαβάστε περισσότερα

ΤΕΙ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ

ΤΕΙ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΤΕΙ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ Τμήμα Διοίκησης Συστημάτων Εφοδιασμού Μάθημα: Εισαγωγή στην Εφοδιαστική (Εργαστήριο) Ανάλυση του άρθρου με τίτλο: «Intelligent Decision Support Systems» των Stephanie Guerlain,

Διαβάστε περισσότερα

Περιεχόμενα Παρουσίασης

Περιεχόμενα Παρουσίασης 1 Περιεχόμενα Παρουσίασης Σπουδές και εκπαίδευση Ποιοί είμαστε Τι προσφέρουμε: Προγράμματα σπουδών Προπτυχιακές σπουδές Επαγγελματικά δικαιώματα Μεταπτυχιακές σπουδές και έρευνα Διδακτορικές σπουδές Μεταδιδακτορική

Διαβάστε περισσότερα

Λογισμικό Καθοδήγησης ή Διδασκαλίας

Λογισμικό Καθοδήγησης ή Διδασκαλίας Λογισμικό Καθοδήγησης ή Διδασκαλίας Ένα σύγχρονο σύστημα καθοδήγησης στοχεύει να ικανοποιήσει τουλάχιστον δύο βασικές φάσεις των οποίων η δομή και η αλληλουχία παρουσιάζεται στο σχήμα 3: παρουσίαση της

Διαβάστε περισσότερα

Πως μπορούν (αλλά και γιατί πρέπει) να συνδυάζονται στην εκπαιδευτική διαδικασία;

Πως μπορούν (αλλά και γιατί πρέπει) να συνδυάζονται στην εκπαιδευτική διαδικασία; Πως μπορούν (αλλά και γιατί πρέπει) να συνδυάζονται στην εκπαιδευτική διαδικασία; Οι Ερευνητικές Εργασίες χαρακτηρίζονται ως εκπαιδευτικές καινοτομίες, βασίζονται σε συγκεκριμένες παιδαγωγικές αρχές, οι

Διαβάστε περισσότερα

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Διάλεξη 8: Σχεδίαση Συστήματος Σχεδίαση Συστήματος 2 Διεργασία μετατροπής του προβλήματος σε λύση. Από το Τί στο Πώς. Σχέδιο: Λεπτομερής περιγραφή της λύσης. Λύση:

Διαβάστε περισσότερα

Κοινωνικοπολιτισμικές. Θεωρίες Μάθησης. & Εκπαιδευτικό Λογισμικό

Κοινωνικοπολιτισμικές. Θεωρίες Μάθησης. & Εκπαιδευτικό Λογισμικό Κοινωνικοπολιτισμικές Θεωρίες Μάθησης & Εκπαιδευτικό Λογισμικό Κοινωνικοπολιτισμικές προσεγγίσεις Η σκέψη αναπτύσσεται (προϊόν οικοδόμησης και αναδόμησης γνώσεων) στα πλαίσια συνεργατικών δραστηριοτήτων

Διαβάστε περισσότερα

ΔΙΔΑΚΤΙΚΉ ΤΩΝ ΜΑΘΗΜΑΤΙΚΏΝ

ΔΙΔΑΚΤΙΚΉ ΤΩΝ ΜΑΘΗΜΑΤΙΚΏΝ ΔΙΔΑΚΤΙΚΉ ΤΩΝ ΜΑΘΗΜΑΤΙΚΏΝ 2. Εκπαιδευτικό Λογισμικό για τα Μαθηματικά 2.1 Κύρια χαρακτηριστικά του εκπαιδευτικού λογισμικού για την Διδακτική των Μαθηματικών 2.2 Κατηγορίες εκπαιδευτικού λογισμικού για

Διαβάστε περισσότερα

Μέθοδος : έρευνα και πειραματισμός

Μέθοδος : έρευνα και πειραματισμός 1 Ο ΓΥΜΝΑΣΙΟ ΠΕΥΚΩΝ Γ ΓΥΜΝΑΣΙΟΥ ΜΑΘΗΜΑ : ΤΕΧΝΟΛΟΓΙΑ ΕΚΠΑΙΔΕΥΤΙΚΟΣ : Τρασανίδης Γεώργιος, διπλ. Ηλεκ/γος Μηχανικός Μsc ΠΕ12 05 Μέθοδος : έρευνα και πειραματισμός Στόχος της Τεχνολογίας στην Γ Γυμνασίου

Διαβάστε περισσότερα

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ.

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ. Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων Δρ. Κωνσταντίνος Χ. Γιωτόπουλος Βασικά θέματα Βάσεων Δεδομένων Ένα Σύστημα Βάσης Δεδομένων

Διαβάστε περισσότερα

711 Πληροφορικής ΤΕΙ Αθήνας

711 Πληροφορικής ΤΕΙ Αθήνας 711 Πληροφορικής ΤΕΙ Αθήνας Το Τμήμα Πληροφορικής του ΤΕΙ Αθήνας ιδρύθηκε και δέχτηκε τους πρώτους του σπουδαστές τον Οκτώβριο του 1983, ταυτόχρονα δηλαδή με την έναρξη ισχύος του νόμου 1404/83 για τα

Διαβάστε περισσότερα

Βετεράνοι αθλητές. Απόδοση & Ηλικία. Βασικά στοιχεία. Αθλητισμός Επιδόσεων στη 2η και 3η Ηλικία. Γενικευμένη θεωρία για τη

Βετεράνοι αθλητές. Απόδοση & Ηλικία. Βασικά στοιχεία. Αθλητισμός Επιδόσεων στη 2η και 3η Ηλικία. Γενικευμένη θεωρία για τη Αθλητισμός Επιδόσεων στη 2η και 3η Ηλικία. Γενικευμένη θεωρία για τη Διατήρηση η της αθλητικής απόδοσης 710: 8 η Διάλεξη Μιχαλοπούλου Μαρία Ph.D. Περιεχόμενο της διάλεξης αυτής αποτελούν: Αγωνιστικός αθλητισμός

Διαβάστε περισσότερα

710 -Μάθηση - Απόδοση. Κινητικής Συμπεριφοράς: Προετοιμασία

710 -Μάθηση - Απόδοση. Κινητικής Συμπεριφοράς: Προετοιμασία 710 -Μάθηση - Απόδοση Διάλεξη 5η Ποιοτική αξιολόγηση της Κινητικής Συμπεριφοράς: Προετοιμασία Περιεχόμενο ενοτήτων Ποιοτική αξιολόγηση Ορισμός και στάδια που περιλαμβάνονται Περιεχόμενο: στοιχεία που τη

Διαβάστε περισσότερα

Σύγχρονες Προσεγγίσεις στη Διδακτική

Σύγχρονες Προσεγγίσεις στη Διδακτική Σύγχρονες Προσεγγίσεις στη Διδακτική Ορολογία Ορισμοί Μέθοδος διδασκαλίας θεωρείται ένα πρότυπο (pattern) οργάνωσης του μαθήματος και συμπεριφοράς του εκπαιδευτικού. Στρατηγική διδασκαλίας. Περιλαμβάνει

Διαβάστε περισσότερα

Τομέας Εκπαιδευτικής Τεχνολογίας Παιδαγωγικό Ινστιτούτο Κύπρου ATS2020 ΤΟΜΕΙΣ ΙΚΑΝΟΤΗΤΩΝ ΚΑΙ ΔΕΞΙΟΤΗΤΩΝ ΜΕ ΣΤΟΧΟΥΣ ΕΠΙΤΕΥΞΗΣ

Τομέας Εκπαιδευτικής Τεχνολογίας Παιδαγωγικό Ινστιτούτο Κύπρου ATS2020 ΤΟΜΕΙΣ ΙΚΑΝΟΤΗΤΩΝ ΚΑΙ ΔΕΞΙΟΤΗΤΩΝ ΜΕ ΣΤΟΧΟΥΣ ΕΠΙΤΕΥΞΗΣ ATS2020 ΤΟΜΕΙΣ ΙΚΑΝΟΤΗΤΩΝ ΚΑΙ ΔΕΞΙΟΤΗΤΩΝ ΜΕ ΣΤΟΧΟΥΣ ΕΠΙΤΕΥΞΗΣ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΑΚΟΥ ΓΡΑΜΜΑΤΙΣΜΟΥ 1. Σχεδιασμός στρατηγικών για διερεύνηση 1.1. Εντοπίζουν σημαντικές ανάγκες/ προβλήματα/ ερωτήματα για διερεύνηση

Διαβάστε περισσότερα

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος Κεφάλαιο 2.3: Προγραμματισμός 1 2.3.1 Αναφορά σε γλώσσες προγραμματισμού και «Προγραμματιστικά Υποδείγματα» 2.3.1.1 Πρόγραμμα και Γλώσσες Προγραμματισμού Πρόγραμμα: σύνολο εντολών που χρειάζεται να δοθούν

Διαβάστε περισσότερα

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας.

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας. Η Πυξίδα Απασχόλησης είναι ένα πλήρως παραμετροποιήσιμο portal που απευθύνεται σε Κέντρα Επαγγελματικής Κατάρτισης, Δήμους, Εκπαιδευτικούς Οργανισμούς και Εταιρίες Εύρεσης Εργασίας, με στόχο τόσο την μηχανογράφηση

Διαβάστε περισσότερα

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δυναμική προσωποποιημένη ενημέρωση προσφορών Super Markets στη Θεσσαλονίκη

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δυναμική προσωποποιημένη ενημέρωση προσφορών Super Markets στη Θεσσαλονίκη ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δυναμική προσωποποιημένη ενημέρωση προσφορών Super Markets στη Θεσσαλονίκη Παπαδόπουλου Κυριάκου Αρ. Μητρώου: 093507 Επιβλέπων καθηγητής: Ηλιούδης Χρήστος Εισαγωγή - Σκοπός Εργασίας Καινοτόμες

Διαβάστε περισσότερα

Λογισμικό διδασκαλίας των μαθηματικών της Γ Τάξης Γυμνασίου

Λογισμικό διδασκαλίας των μαθηματικών της Γ Τάξης Γυμνασίου Λογισμικό διδασκαλίας των μαθηματικών της Γ Τάξης Γυμνασίου Δρ. Βασίλειος Σάλτας 1, Αλέξης Ηλιάδης 2, Ιωάννης Μουστακέας 3 1 Διδάκτωρ Διδακτικής Μαθηματικών, Επιστημονικός Συνεργάτης ΑΣΠΑΙΤΕ Σαπών coin_kav@otenet.gr

Διαβάστε περισσότερα

Εισαγωγή στη Σχεδίαση Λογισμικού

Εισαγωγή στη Σχεδίαση Λογισμικού Εισαγωγή στη Σχεδίαση Λογισμικού περιεχόμενα παρουσίασης Τι είναι η σχεδίαση λογισμικού Έννοιες σχεδίασης Δραστηριότητες σχεδίασης Σχεδίαση και υποδείγματα ανάπτυξης λογισμικού σχεδίαση Η σχεδίαση του

Διαβάστε περισσότερα

ΑΕΠΠ Ερωτήσεις θεωρίας

ΑΕΠΠ Ερωτήσεις θεωρίας ΑΕΠΠ Ερωτήσεις θεωρίας Κεφάλαιο 1 1. Τα δεδομένα μπορούν να παρέχουν πληροφορίες όταν υποβάλλονται σε 2. Το πρόβλημα μεγιστοποίησης των κερδών μιας επιχείρησης είναι πρόβλημα 3. Για την επίλυση ενός προβλήματος

Διαβάστε περισσότερα

GUnet eclass 1.7 Πλατφόρμα Ασύγχρονης Τηλεκπαίδευσης

GUnet eclass 1.7 Πλατφόρμα Ασύγχρονης Τηλεκπαίδευσης GUnet eclass 1.7 Πλατφόρμα Ασύγχρονης Τηλεκπαίδευσης Περιγραφή Πλατφόρμας Η πλατφόρμα eclass είναι ένα ολοκληρωμένο Σύστημα Διαχείρισης Ηλεκτρονικών Μαθημάτων και αποτελεί την πρόταση του Ακαδημαϊκού Διαδικτύου

Διαβάστε περισσότερα

Ενότητα 1: Εισαγωγή. ΤΕΙ Στερεάς Ελλάδας. Τμήμα Φυσικοθεραπείας. Προπτυχιακό Πρόγραμμα. Μάθημα: Βιοστατιστική-Οικονομία της υγείας Εξάμηνο: Ε (5 ο )

Ενότητα 1: Εισαγωγή. ΤΕΙ Στερεάς Ελλάδας. Τμήμα Φυσικοθεραπείας. Προπτυχιακό Πρόγραμμα. Μάθημα: Βιοστατιστική-Οικονομία της υγείας Εξάμηνο: Ε (5 ο ) ΤΕΙ Στερεάς Ελλάδας Τμήμα Φυσικοθεραπείας Προπτυχιακό Πρόγραμμα Μάθημα: Βιοστατιστική-Οικονομία της υγείας Εξάμηνο: Ε (5 ο ) Ενότητα 1: Εισαγωγή Δρ. Χρήστος Γενιτσαρόπουλος Λαμία, 2017 1.1. Σκοπός και

Διαβάστε περισσότερα

Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης. Συντάκτης. Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης

Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης. Συντάκτης. Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης Συντάκτης Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης Ηµεροµηνία Μάιος 2004 Πίνακας Περιεχοµένων ΕΙΣΑΓΩΓΗ 3 ΦΙΛΟΣΟΦΙΑ ΠΛΑΤΦΟΡΜΑΣ 4 ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ

Διαβάστε περισσότερα

ΓΕΩΓΡΑΦΙΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΩΝ ΓΕΩΓΡΑΦΙΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΩΝ - ΕΝΟΤΗΤΑ 1 7/4/2013 ΕΝΟΤΗΤΕΣ ΜΑΘΗΜΑΤΟΣ. Ορισμός

ΓΕΩΓΡΑΦΙΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΩΝ ΓΕΩΓΡΑΦΙΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΩΝ - ΕΝΟΤΗΤΑ 1 7/4/2013 ΕΝΟΤΗΤΕΣ ΜΑΘΗΜΑΤΟΣ. Ορισμός ΓΕΩΓΡΑΦΙΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΩΝ ΕΝΟΤΗΤΑ 1 : ΕΙΣΑΓΩΓΗ Διάλεξη 1: Γενικά για το ΓΣΠ, Ιστορική αναδρομή, Διαχρονική εξέλιξη Διάλεξη 2 : Ανάλυση χώρου (8/4/2013) Διάλεξη 3: Βασικές έννοιες των Γ.Σ.Π.. (8/4/2013)

Διαβάστε περισσότερα

Συνεχής επιμόρφωση χωρίς φραγμούς

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

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ανάπτυξη μιας προσαρμοστικής πολιτικής αντικατάστασης αρχείων, με χρήση

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Τεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Τεχνολογία Λογισμικού Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

Σύστημα. Αντώνης Μαϊργιώτης

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

Διαβάστε περισσότερα

Μέθοδοι διδασκαλίας 191

Μέθοδοι διδασκαλίας 191 Μέθοδοι διδασκαλίας 191 ΜΕΘΟΔΟΣ Μέθοδος στη γενική της σημασία είναι ο τρόπος για να φτάσουμε στο σκοπό, η ρύθμιση της δραστηριότητας με καθορισμένο τρόπο 191 ΜΕΘΟΔΟΣ Μέθοδοςσημαίνειτρόποςκατάκτησης ενός

Διαβάστε περισσότερα

Στρατηγική Αξιολόγησης κατά την Υλοποίηση Εκπαιδευτικού Λογισμικού

Στρατηγική Αξιολόγησης κατά την Υλοποίηση Εκπαιδευτικού Λογισμικού Στρατηγική Αξιολόγησης κατά την Υλοποίηση Εκπαιδευτικού Λογισμικού Μαρία Καραβελάκη, Γεώργιος Παπαπαναγιώτου, Γιάννα Κοντού INTE*LEARN Αγν.Στρατιώτη 46, Καλλιθέα τηλ. 95 91 853, fax. 95 72 098, e-mail:

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Εισαγωγή Στις Αρχές Της Επιστήμης Των Η/Υ. Η έννοια του Προβλήματος - ΚΕΦΑΛΑΙΟ 2

Εισαγωγή Στις Αρχές Της Επιστήμης Των Η/Υ. Η έννοια του Προβλήματος - ΚΕΦΑΛΑΙΟ 2 Εισαγωγή Στις Αρχές Της Επιστήμης Των Η/Υ Η έννοια του Προβλήματος - ΚΕΦΑΛΑΙΟ 2 2. Η έννοια του προβλήματος 2 2. Η έννοια του προβλήματος 2.1 Το πρόβλημα στην επιστήμη των Η/Υ 2.2 Κατηγορίες προβλημάτων

Διαβάστε περισσότερα

Δεύτερη Συνάντηση ΜΑΘΗΣΗ ΜΕΣΑ ΑΠΟ ΟΜΑΔΕΣ ΕΡΓΑΣΙΕΣ. Κάππας Σπυρίδων

Δεύτερη Συνάντηση ΜΑΘΗΣΗ ΜΕΣΑ ΑΠΟ ΟΜΑΔΕΣ ΕΡΓΑΣΙΕΣ. Κάππας Σπυρίδων Δεύτερη Συνάντηση ΜΑΘΗΣΗ ΜΕΣΑ ΑΠΟ ΟΜΑΔΕΣ ΕΡΓΑΣΙΕΣ Κάππας Σπυρίδων ΟΜΑΔΑ είναι μια συνάθροιση ατόμων στην οποία το καθένα έχει συνείδηση της παρουσίας των άλλων, ενώ ταυτόχρονα βιώνει κάποια μορφή εξάρτησης

Διαβάστε περισσότερα

Η διάρκεια πραγματοποίησης της ανοιχτής εκπαιδευτικής πρακτικής ήταν 2 διδακτικές ώρες

Η διάρκεια πραγματοποίησης της ανοιχτής εκπαιδευτικής πρακτικής ήταν 2 διδακτικές ώρες ΣΧΟΛΕΙΟ Η εκπαιδευτική πρακτική αφορούσε τη διδασκαλία των μεταβλητών στον προγραμματισμό και εφαρμόστηκε σε μαθητές της τελευταίας τάξης ΕΠΑΛ του τομέα Πληροφορικής στα πλαίσια του μαθήματος του Δομημένου

Διαβάστε περισσότερα