SlideShare una empresa de Scribd logo
1 de 54
Descargar para leer sin conexión
1
Ασαφής Λογική (Fuzzy Logic). Βασικές αρχές και θεωρία. Ανάπτυξη
εφαρμογής της λειτουργιάς ενός air condition με το λογισμικό Matlab 2013.
Γκούμας Στράτος. Πτυχιούχος Οικονομολόγος.
MSc ‘Εφαρμοσμένη Οικονομική και Χρηματοοικονομική (Ε.Κ.Π.Α./ Τμήμα Οικονομικών)’
Team Site: A.E.A.C. Co.ProjectManager-SiteAdministrator
e-mail: s_4goum@yahoo.com, My Blog, Twitter, Linkedin
09/09/2019
ΠΕΡΙΕΧΟΜΕΝΑ
Περίληψη .......................................................................................................................2
Εισαγωγή- Ιστορική αναδρομή......................................................................................3
Εφαρμογές Fuzzy Logic ................................................................................................6
Βασικές έννοεις ασαφούς λογικής.................................................................................8
1) Ασαφές Σύνολο (Fuzzy Set)......................................................................................8
2) Ασαφείς Κανόνες και Προτάσεις (Fuzzy Rules and Statements) ...........................13
3) Γλωσσικές Μεταβλητες (LinguisticVariables)........................................................15
4) Συναρτήσεις Συμμετοχής (Membership Functions)................................................19
____a) Τριγωνική Συνάρτηση Συμμετοχής (Triangle ή Triangular MF)....................21
____b) Τραπεζοειδής Συνάρτηση Συμμετοχής (TrapezoidalMF)...............................22
____c) Καμπανοειδής Συνάρτηση Συμμετοχής (Generalize Bell MF) .......................23
____d) Γκαουσιανή Συνάρτηση Συμμετοχής (Gaussian MF).....................................24
____e) S Συνάρτηση Συμμετοχής (S MF)...................................................................25
____f) Pi Συνάρτηση Συμμετοχής (Pi MF) .................................................................26
____g) Z Συνάρτηση Συμμετοχής (Z MF) ..................................................................27
____h) Σιγμοειδής Συνάρτηση Συμμετοχης (Sigmoidal MF) .....................................28
Παρουσίαση του προγραμμάτος Matlab......................................................................30
Εφαρμογή λειτουργίας aircodition στο Matlab. ..........................................................31
Συμπεράσματα. ............................................................................................................52
Βιβλιογραφία- Αναφορές.............................................................................................54
2
ΠΕΡΙΛΗΨΗ
Στην παρουσίαση αυτή θα ασχοληθούμε με την έννοια και τις εφαρμογές της
Ασαφούς Λογικής (Fuzzy Logic). Αρχικά θα αναπτύξουμε τις έννοιες και την βασική
θεωρία της Ασαφούς Λογικής, έπειτα τις μεθόδους καθώς και τις θεμελιώδεις
τεχνικές ανάπτυξης ενός μοντέλου. Τελειώνοντας θα σχεδιάσουμε και θα
παρουσιαστεί ένα παράδειγμα με την χρήση κατάλληλου λογισμικού.
Στην εργασία μας θα χρησιμοποιήσουμε το πρόγραμμα MatLab version R2013, όπου
περιέχει τυποποιημένα πακέτα εφαρμογών Fuzzy Logic (Fuzzy Logic Toolbox) και
είναι αρκετά εύκολο στην χρήση του. Το πλεονέκτημα του συγκεκριμένου
προγράμματος είναι ότι δεν χρειάζεται πολλές παραμετροποιήσεις, η εργαλειοθήκη
Fuzzy Logic περιέχει αρκετά έτοιμα παραδείγματα τα οποία είναι κατανοητά και
επίσης περιλαμβάνει ένα εγχειρίδιο χρήσης το οποίο καθοδηγεί βήμα προς βήμα για
την ανάπτυξη και εκτέλεση ενός μοντέλου.
Ωστόσο, ο αναγνώστης καλό θα ήταν να γνωρίζει και να κατανοεί μερικές βασικές
έννοιες μαθηματικών- στατιστικής και προγραμματισμού, διότι ο σχεδιασμός ενός
τέτοιου συστήματος βασίζεται στους κλάδους μαθηματικών και πληροφορικής.
Keywords: fuzzy logic, fuzzy set, fuzzy rules, fuzzy information system, fuzzy logic
membership functions, logical connectives operators, linguistic variables, universe of
discourse, matlab, matlab fuzzy logic toolbox, matlab examples, matlab aircondition
operation.
Για να κατεβάσετε τα αρχεία του matlab με την εφαρμογή του aircondition
πατήστε εδώ ή εδώ ή εδώ
## Αφιερωμένο εξαιρετικά, στην μικρή μας κόρη που γεννήθηκε
τον Ιούλιο/2018 ##
3
ΕΙΣΑΓΩΓΗ- ΙΣΤΟΡΙΚΗ ΑΝΑΔΡΟΜΗ
Η Ασαφής Λογική (Fuzzy Logic), είναι ένας κλάδος των μαθηματικών και ειδικότερα
του κλάδου της μαθηματικής λογικής (mathematical logic) που εμπίπτει στα θέματα
του προτασιακού λογισμού/ λογικής (propositional calculus/ logic).
Η προτασιακή λογική μελετά τις λογικές προτάσεις οι οποίες σχηματίζονται από
άλλες προτάσεις με την χρήση λογικών συνδέσμων (logical connectives).
Λογικοί σύνδεσμοι είναι σύμβολα ή συναρτήσεις που χρησιμοποιούνται για να
συνδέουν λογικές προτάσεις.
Τα πιο γνωστά λογικά σύμβολα/ συναρτήσεις που μπορεί να έχουμε συναντήσει (είτε
από τις σχολικές αίθουσες, είτε σε ανώτερες σχολές) είναι τα κάτωθι
1) AND // Σύμβολο «∧»
2) OR // Σύμβολο «∨»
3) NOT // Σύμβολο «¬»
4) XOR // Σύμβολο «⊕»
5) IF……… THEN………..ELSE // Σύμβολο «→»
6) IF AND ONLY IF // Σύμβολο «↔»
7) TRUE / FALSE
4
Οι πρώτες προσπάθειες για την βάση και οι αρχικές δομές της Ασαφούς Λογικής
επετεύχθηκαν κατά την δεκαετία του 1920 από τον Jan Lukasiewicz (1878-1956), ο
οποίος ήταν επιστήμων της λογικής και φιλόσοφος, και τον Alfred Tarski (1901-
1983), ο οποίος ήταν μαθηματικός.
Αργότερα, γύρω στο 1965, εισήχθηκαν νέες έννοιες και παρουσιάστηκε πιο
ολοκληρωμένα από τον LoftiZadeh (1921-2017), ο οποίος ήταν μαθηματικός και
ηλεκτρολόγος-μηχανικός. Ο LoftiZadehπρότεινε τη έννοια του ασαφούς αριθμού
(fuzzy number), του ασαφούς συνόλου (fuzzyset), ασαφή αλγορίθμου (fuzzy
algorithm) και ασαφή λήψη αποφάσεων (fuzzy decision making).
Μετέπειτα προστέθηκαν νέες έννοιες από τον Salii Viacheslav Nikolaevich (1939-),
όπου όρισε την L-σχέση (L- relation ή FuzzyRelation) με αποτέλεσμα η Ασαφής
Λογική να εξελιχθεί και να βρει εφαρμογές σε νέα πεδία επιστημών.
Ακόμα και σήμερα η Ασαφής Λογική συνεχίζει να εξελίσσεται με νέες θεωρίες και
εφαρμογές.
Ο βασικός λόγος της ανάπτυξηςτης Ασαφούς Λογικής ήταν διότι πολλά προβλήματα
δεν μπορούσαν να λυθούν με την χρήση των κλασσικών μεθόδων λογικής
(BooleanLogic).
Η βασική διαφορά που έγκειται μεταξύ Fuzzy Logic και Boolean Logic, είναι ότι η
Boolean Logic λαμβάνει τιμές 0 και 1, ενώ η Fuzzy Logic λαμβάνει όλες τις ρητές
τιμές μεταξύ του 0 και 1, με τις τιμές 0 και 1 να αποτελούν τις ακραίες τιμές.
Με την καθημερινή ορολογία, θα λέγαμε ότι δεν είναι όλα άσπρα (value 1) ή μαύρα
(value 0) αλλά υπάρχει και το γκρι (fuzzy logic values).
Τα συστήματα παριστάνονται παραδοσιακά με μαθηματικό προγραμματισμό και
αναλυτικά μοντέλα τα οποία διαφέρουν πολλές φόρες από την κοινή λογική σε δύο
κυρίως σημεία:1) Δεν μπορούν να αντιμετωπίσουν κάποιο βαθμό πεποίθησης και 2)
Δεν μπορούν να αντιμετωπίσουν ασυνεπή και ελλιπή στοιχεία.
Τα περισσότερα εμπειρικά συστήματα προσπαθούν να χρησιμοποιήσουν λογικές
τυποποιήσεις για να προσομοιώσουν την ανθρώπινη γνώση και τη συλλογιστική. Ο
κύριος περιορισμός αυτών των συστημάτων είναι ότι δεν είναι ευέλικτα όταν
οι πληροφορίες που απαιτούνται για την απάντηση ενός ερωτήματος είναι αβέβαιες ή
ελλιπείς.
5
Αντιθέτως, ένας άνθρωπος, όταν αντιμετωπίζει ελλιπείς και αβέβαιες πληροφορίες,
είναι σε θέση να τις διαχωρίσει, να συλλέξειτα στοιχεία που χρειάζεται και να
καταλήξει σε κάποιο συμπέρασμα, το οποίο είναι ίσως αβέβαιο, αλλά επαρκές για να
οδηγηθεί σε μια πρακτική απόφαση.
Όταν αντιμετωπίζουμε ελλιπείς ή ασυνεπείς πληροφορίες, τότε η κλασσική λογική
αποτυγχάνει και όλες οι προτάσεις αντιμετωπίζονται ως ισάξιες, ούτε περισσότεροή
λιγότερο αληθείς ή ψευδείς.
Για να γίνει κατανοητή η διαφορά παραθέτουμε το εξής παράδειγμα.
ΠΑΡΑΔΕΙΓΜΑ
Ο Η/Υ και η λειτουργία του βασίζεται στην Boolean Logic, καθώς τα ηλεκτρικά
κυκλώματα λειτουργούν με βάση αν διοχετεύεται ρεύμα (τιμή 1) ή όχι (τιμή 0) και
αναλόγως εκτελούνται οι εντολές του Η/Υ.
Αντιθέτως, το κλιματιστικό (aircondition), βασίζεται σε εφαρμογή Fuzzy Logic. Ο
προγραμματισμός του κλιματιστικού λειτουργεί περίπου ως εξής. Έστω ότι έχει ζέστη
και ρυθμίζουμε την θερμοκρασία του κλιματιστικού στους 25 o
C.
Οι προγραμματισμένες εντολές για την ρύθμιση της θερμοκρασίας μπορεί να είναι οι
εξής.
Α) Αν θερμοκρασία δωματίου >35o
C και διαφορά θερμοκρασίας δωματίου με
ρύθμιση θερμοκρασίας >10o
C τότε λειτουργία ανεμιστήρα στο ΔΥΝΑΤΟ.
Β) Αν θερμοκρασία δωματίου μεταξύ 30o
C και 35o
C και διαφορά θερμοκρασίας
δωματίου με ρύθμιση θερμοκρασίας <10o
C τότε λειτουργία ανεμιστήρα στο
ΜΕΣΑΙΟ.
Γ) Αν θερμοκρασία δωματίου μεταξύ 25o
C και 30o
C και διαφορά θερμοκρασίας
δωματίου με ρύθμιση θερμοκρασίας <5o
C τότε λειτουργία ανεμιστήρα στο
ΧΑΜΗΛΟ.
Δ) Αν θερμοκρασία δωματίου μεταξύ 25 o
C και 30o
C και διαφορά θερμοκρασίας
δωματίου με ρύθμιση θερμοκρασίας <2o
C τότελειτουργία ανεμιστήρα σε
ΑΝΑΜΟΝΗ.
6
Με ορούς προγραμματισμού, η παραπάνω σχέσεις δηλώνονται ως εξής
Εστω ΘΕΡΜΟΚΡΑΣΙΑ ΔΩΜΑΤΙΟΥTINDOOR[HOT(>35 o
C), WARM(25o
C-35 o
C),
COLD<25o
C)]
Εστω ΡΥΘΜΙΖΟΜΕΝΗ ΘΕΡΜΟΚΡΑΣΙΑ TAIRCON
Εστω ΛΕΙΤΟΥΡΓΙΑ ΑΝΕΜΙΣΤΗΡΑFANSPEED (HIGH, MEDIUM, LOW,
IDLE)
IF TΙΝDDOR>35 o
C AND (TINDOOR -TAIRCON )>10o
CTHEN FAN SPEED= HIGH
IF 30o
C<TΙΝDOOR < 35o
C AND (TINDOOR -TAIRCON )<10o
C THEN FAN SPEED=
MEDIUM
IF 25o
C<TΙΝDOOR < 30o
C AND (TINDOOR -TAIRCON )<5o
C THEN FAN SPEED=
MEDIUM
IF 25o
C<TΙΝDOOR< 30o
C AND (TINDOOR -TAIRCON )<2o
C THEN FAN SPEED= IDLE
ΕΦΑΡΜΟΓΕΣ FUZZYLOGIC
Στην καθημερινότητά μας, η έννοια της Ασαφούς Λογικής είναι ίσως άγνωστη,
ωστόσο οι εφαρμογές της είναι ποικίλες και τις χρησιμοποιούμε συχνά. Μερικά
πεδίαεφαρμογής είναι τα εξής
1) Η πρώτη προσπάθεια εφαρμογής επιτεύχθηκε στην Ιαπωνία και πιο
συγκεκριμένα στον σιδηρόδρομο της πόλης Sendai. Τα αποτελέσματα ήταν να
βελτιωθούν τα δρομολόγια και να εξυπηρετείται πιο έγκαιρα το κοινό,
μειώθηκε ο χρόνος αναμονής, έγινε εξοικονόμηση στην κατανάλωση
καύσιμων των τρένων κτλ
2) Συνεχίζοντας στην Ιαπωνία, ήταν οι πρώτοι που εφάρμοσαν την Ασαφή
Λογική σε ηλεκτρικές συσκευές όπως τα πλυντήρια, οι ηλεκτρικές σκούπες
και κλιματιστικά για την εξοικονόμηση ενέργειας. Λίγοαργότερα
χρησιμοποιήθηκε, a) Στα αυτοκίνητα για τον έλεγχο της κατανάλωσης
καύσιμων, b) Σε εργοστάσια καθαρισμού υδάτων
3) Χρησιμοποιείται για μοντέλα πρόβλεψης των σεισμών και του καιρού
7
4) Χρηματοοικονομικές εφαρμογές (διαχείριση κεφαλαίων, αποτίμηση
περιουσιακών στοιχείων, προβλέψεις για δείκτες-μετοχές κτλ)
5) Γραμμή παράγωγης σε εργοστάσια που παράγουν τυποποιημένα προϊόντα
(π.χ. ηλεκτρικές συσκευές, εξαρτήματα Η/Υ κτλ)
6) Κινηματογράφο. Ταινίες τύπου όπως τοWorld of Warcraft ή Lord of the Rings
έχουν χρησιμοποιήσει τεχνικές, όπου οι στρατοί και οι κινήσεις τους
παράχθηκαν μέσω συστημάτων fuzzy logic.
7) Μεταφορές (πλοία, αεροπλάνα)
8) Διαστημόπλοια και δορυφόροι
9) Ιατρική (π.χ. ακτινολογία, διαγνώσεις)
10) Ρομποτική και αυτοματισμοί.
Αξίζει να σημειωθεί ότι από τους πρωτοπόρους ερευνητές που εφάρμοσαν πρακτικά
τις μεθόδους ασαφούς λογικήςήταν οι Mamdani Ebrahim και Assilian Sedrak, όπου
κατασκεύασαν έναν ασαφή ελεγκτή (fuzzy controller) για έλεγχο μιας ατμομηχανής
το 1975 (Mamdani- Assilian model), καθώς και ο Michio Sugeno , ο οποίος
εφάρμοσε ένα ασαφή ελεγκτή σε ένα εργοστάσιο καθαρισμούυδάτων (1980). Λίγα
έτη αργότερα (1985) ο Michio Sugeno σε συνεργασία με τους Tomohiro Takagi και
Kang Guen-Taek εφάρμοσαν τεχνικές ρομποτικής στην βιομηχανία οχημάτων (T-S-K
model).
Πάνω σε αυτά τα μοντέλα έχουν στηριχθεί σχεδόν όλοι οι μεταγενέστεροι ερευνητές,
οι οποίοι με τις κατάλληλες προσθήκες και βελτιώσεις τα έχουν εξελίξει σε
υψηλότερο επίπεδο.
Διαπιστώνουμε ότι η Ασαφής Λογική έχει ένα ευρύ πεδίο εφαρμογών και η χρήση
της διευκολύνει τόσο την παράγωγη προϊόντων όσο και την βέλτιστη διαχείριση
πόρων.
Το πλεονέκτημα, έγκειται στο γεγονός ότι είναι σχετικά εύκολα κατανοητή, αφού
προσομοιώνει ουσιαστικά την ανθρώπινη σκέψη και την γλωσσική επικοινωνία.
Επίσης είναι εύκολη η μοντελοποίηση αυθαίρετων δεδομένων, συνδυάζεται με άλλες
τεχνικές και υπάρχει ανεκτικότητα σε μη-ακριβή δεδομένα.
Ωστόσο, στον αντίποδα, όταν απαιτείται μεγάλη ακρίβεια στην παραγωγή
αποτελεσμάτωντότε δεν ενδείκνυται η χρήση της.
8
Επιπλέον σε περιπτώσεις όπου α) Ένα πρόβλημα δύναται να λυθεί με άλλες τεχνικές
β) Υπάρχουν ευκολότερες τεχνικές για την εύρεση λύσης γ) Υπάρχουν ήδη
εναλλακτικές τεχνικές οι οποίες έχουν εφαρμοστεί για την λύση ενός προβλήματος
και είναι αποτελεσματικές, τότε η χρήση της Ασαφούς Λογικής είναι περιττή.
Οι τεχνικές της ΑσαφούςΛογικής δεν είναι πάντοτε οι βέλτιστες και πολλές φόρες
προκύπτουν προβλήματα, όπου με την χρήση διαφορετικών μεθόδων θα
αποφεύγονταν. Γενικά, καλο θα είναι να ζυγίζονται τα πλεονέκτημα και τα
μειονεκτήματα της χρήσης της Ασαφούς Λογικής έναντι εναλλακτικών τεχνικών για
την λύσης ενός προβλήματος και έπειτα να καταλήγουμε στην επιλογή μας.
ΒΑΣΙΚΕΣ ΕΝΝΟΕΙΣ ΑΣΑΦΟΥΣ ΛΟΓΙΚΗΣ
1) ΑΣΑΦΕΣ ΣΥΝΟΛΟ (FUZZYSET)
Από τις αρχικές έννοιες που θα συναντήσουμε στην ΑσαφήΛογική, είναι η έννοια
τους Ασαφούς Συνόλου (Fuzzy Set).
Στην κλασική θεωρία των συνόλων, ένα σύνολο αποτελείται από ένα πεπερασμένο ή
άπειρο αριθμό στοιχείων και μπορεί να αναπαρασταθεί από την απαρίθμηση των
στοιχείων του ως εξής:
Τα στοιχεία όλων των υπό μελέτη συνόλων ανήκουν σε ένα υπερσύνολο αναφοράς
(Universe of Discourse, U),το οποίο έστω ότι το ονομάζουμε U.
Αν αυτά τα στοιχεία αi( i=1,….,n ) του Α είναι όλα μαζί ένα υποσύνολο του
υπερσυνόλου αναφοράς U, το σύνολο Α μπορεί να αναπαρασταθεί από όλα τα
στοιχεία xЄU,χρησιμοποιώντας την χαρακτηριστική συνάρτηση (indicator function
or characteristic function)
CRISP SET
𝜇 𝛢(𝑥) = �
1 𝛼𝜈 𝑥 ∈ 𝑈
0 𝛼𝜈𝑥 ∉ 𝑈
{ }1, 2, 3,...., nA a a a a=
9
Στην κλασική θεωρία των συνόλων το μΑ(x) έχει μόνο τις τιμές 0 (false) και 1 (true),
δηλαδή το στοιχείο x είτε ανήκει είτε δεν ανήκει στο σύνολο αναφοράς U. Τέτοια
σύνολα επίσης ονομάζονται crisp σύνολα (crisp set). Πολλές φορές συναντώνται και
με τις ονομασίες classical sets ή ordinary sets
Τα μη-crisp σύνολα ονομάζονται ασαφή σύνολα (fuzzy sets).
Ασαφές Σύνολο(fuzzy set) είναι οποιοδήποτε σύνολο το οποίο επιτρέπει τα μέλη του
να έχουν διαφορετικούς βαθμούς συμμετοχής (ο οποίος προσδιορίζεται από την
συνάρτηση συμμετοχής) στο διάστημα [0,1].
Το ασαφές σύνολο είναι ένα ζεύγος (U,m) όπουU είναι το σύνολο αναφοράς και m
είναι η συνάρτηση συμμετοχής (m:U[0,1]). Για κάθε x το οποίο ανήκει στο U
(∀x∊U), η τιμή m(x) ονομάζεται βαθμός συμμετοχής του x στο (U,m).
Η συνάρτηση m=μA καλείται συνάρτηση συμμετοχής του ασαφές συνόλου A=(U,m)
(Μembership Function- MF ή μA)
Η παραπάνω χαρακτηριστική συνάρτηση επεκτείνεται πλέον ως εξής
FUZZY SET
𝜇 𝛢(𝑥) �
0
0 < 𝜇 𝛢(𝑥) < 1
1
𝑥 ∉ 𝑈 (𝑛𝑜 𝑚𝑒𝑚𝑏𝑒𝑟)
𝑥 𝑓𝑢𝑧𝑧𝑦 𝑚𝑒𝑚𝑏𝑒𝑟𝑜𝑓𝑈
𝑥 ∈ 𝑈 (𝑓𝑢𝑙𝑙 𝑚𝑒𝑚𝑏𝑒𝑟)
Η συνάρτηση συμμετοχής (m=μAήMF) υποδεικνύει το βαθμό κατά τον οποίο το
σύνολο x ανήκει στο σύνολο U.
Στο παρακάτω σχήμα (ΕΙΚΟΝΑ 1), παρατηρούμε μια συνάρτηση συμμετοχής ενός
κλασσικού συνόλου (crisp set) και ενός ασαφές συνόλου (fuzzy set)
10
ΕΙΚΟΝΑ 1.
Τα ασαφή σύνολα συχνά αναπαρίστανται από σύνολα διατεταγμένων ζευγών
(ordered pairs) ως εξής
𝜇 𝛢(𝑥) = {𝜇1(𝑥)/𝑥1, 𝜇2(𝑥)/𝑥2, … 𝜇 𝑛(𝑥)/𝑥 𝑛, } , 𝛾𝜄𝛼 𝑥 ∈ 𝑈
Παραθέτουμε ένα παράδειγμα για να γίνει πιο κατανοητή η έννοια των crispsets και
fuzzysets.
A) CRISPSETS.
Οι μέρες της εβδομάδας (Δευτέρα, Τρίτη…… Κυριακή), ανήκουν σε ένα
σύνολοcrispset το οποίοονομάζουμε ‘’ΕΒΔΟΜΑΔΑ’’. Οποιαδήποτε άλλη έννοια δεν
ανήκει στο crispset ‘’ΕΒΔΟΜΑΔΑ’’. Τα crisp sets, είναι σαφώς ορισμένα και με
καθορισμένα όρια.
B) FUZZYSET.
Λαμβάνοντας υπόψη το παραπάνω παράδειγμα με τις ημέρες της εβδομάδας, θα
ορίσουμε ένα σύνολο fuzzy set, το οποίο είναι το Σαββατοκύριακο.
Με την έννοια του crispset, το Σαββατοκύριακο αποτελείται από το Σάββατο και την
Κυριακή. Το crispset είναι ένα αυστηρό σύνολο και δεν χωράει καμία ανοχή στον
ορισμό της έννοιας ‘’Σαββατοκύριακο’’.
11
Ωστόσο, ένα fuzzyset, έχει ανεκτικότητα σε αυτές τις περιπτώσεις, καθώς όπως
έχουμε προαναφέρει, η Ασαφής Λογική, προσπαθεί να προσομοιάσει την ανθρώπινη
επικοινωνία και σκέψη. Έτσι λοιπόν, ένα ασαφές σύνολο, θα μπορούσε να
περιλαμβάνει και την Παρασκευή ως μέρος του Σαββατοκύριακου.
Ωστόσο, γεννάται το ερώτημα: Κατά πόσο η ημέρα ‘’Παρασκευή’’ ανήκει στο
σύνολο ‘’Σαββατοκύριακο’’;
Η απάντηση είναι καθαρά υποκειμενική και ασαφής. Μπορούμε να ορίσουμε ότι η
Παρασκευή από τις 15.00 μμ ανήκει στο σύνολο ‘’Σαββατοκύριακο’’ ή από τις 20.00
μμ ανήκει στο Σαββατοκύριακο. Σε αυτό το σημείο θα χρειαστεί να ορίσουμε μια
συνάρτηση συμμετοχής (membership function) η οποία να σταθμίζει την ημέρα
‘’Παρασκευή’’ στο σύνολο ‘’Σαββατοκύριακο’’
Για την συνάρτηση συμμετοχής εξετάζουμε σε παρακάτω ενότητα.
ΕΙΚΟΝΑ 2.
CRISPSET(ΑΡΙΣΤΕΡΑ) και FUZZYSET (ΔΕΞΙΑ) ΓΙΑ ΤΟ ΣΥΝΟΛΟ ‘’ΣΑΒΒΑΤΟΚΥΡΙΑΚΟ
Στο αριστερόσχέδιο , όλες οι ήμερες πλην του Σαββάτου και της Κυριακής έχουν
τιμή μηδέν (0), ενώ το Σάββατο και η Κυριακή έχουν τιμή ένα (1). Στο δεξιό σχέδιο
οι ήμερες Πέμπτη και Δευτέρα σταθμίζονται με έναν μικρό συντελεστή, ενώ η
Παρασκευή με έναν μεγαλύτερο συντελεστή, δηλαδή οι ήμερες Πέμπτη και Δευτέρα
ανήκουν λίγο στην έννοια του ασαφές συνόλου ‘’Σαββατοκύριακο’’, ενώ η
Παρασκευή ανήκει περισσότερο.
12
ΕΙΚΟΝΑ 3.
Παράδειγμα Συνάρτησης Συμμετοχής. (Membership Function).
Έχει σχεδιαστεί η κλασσική συνάρτηση Gaussian (κανονική κατανομή), η οποία στην
περίπτωση μας αποτελεί την συνάρτηση συμμετοχής.
Εφιστούμε την προσοχή στα εξής.
Οι τιμές της Συνάρτησης Συμμετοχής (MF), κυμαίνονται στο εύρος [0,1].
Οι τιμές Χ, παρατηρούμε ότι σταθμίζονται (συμμετέχουν) με διαφορετικό βαθμό
συμμετοχής, ο οποίος προκύπτει από της συνάρτηση Gaussian. Λόγου χάρη, η τιμή
X=1, έχει βαθμό συμμετοχής περίπου MF=0.1, ενώ η τιμή X=4 έχει βαθμό
συμμετοχής περίπου MF=0.9
13
2) ΑΣΑΦΕΙΣ ΚΑΝΟΝΕΣ ΚΑΙ ΠΡΟΤΑΣΕΙΣ
(FUZZY RULES AND STATEMENTS)
Οι ασαφείς κανόνες περιλαμβάνουν ασαφείς προτάσεις (απλές ή σύνθετες), οι οποίες
συνδέονται με την συνάρτηση IF…THEN…ELSE και τους λογικούς συνδέσμους
AND, OR, NOT.
Αρχικά θα πρέπει να γίνει κατανοητό ότι τα Ασαφή Σύνολα (fuzzy sets), είναι σύνολα
τα οποία περικλείουν τα Λογικά Σύνολα (Boolean sets), οπότε η Ασαφής Λογική
(Fuzzy Logic) εμπεριέχει την Δυαδική Λογική (Boolean Logic).
Όπως αναφέραμε προηγουμένως, στα ασαφή σύνολα οι μεταβλητές σταθμίζονται με
συντελεστές οι οποίοι λαμβάνουντιμές στο εύρος [0,1]. Για τις ακραίες τιμές 0 και 1,
καταλήγουμε στην Δυαδική Λογική.
Το επόμενο βήμα είναι οι κανόνες και οι προτάσεις της Δυαδικής Λογικής να
μετατραπούν σε κανόνες στην Ασαφή Λογική.
Οι τελεστές AND, OR, NOT της Δυαδικής Λογικής μετατρέπονται ως εξής.
BOOLEANΤΕΛΕΣΤΗΣ‘’AND’’ΜΕΤΑΤΡΕΠΕΤΑΙΣΕFUZZYΤΕΛΕΣΤΗ‘’MIN’’
ΔΥΑΔΙΚΗ ΛΟΓΙΚΗ ΑΣΑΦΗΣ ΛΟΓΙΚΗ
A B A AND B Α Β Min(A,B)
0 0 0 0 0 0
0 1 0 0 1 0
1 0 0 1 0 0
1 1 1 1 1 1
14
BOOLEAN ΤΕΛΕΣΤΗΣ ‘’OR’’ ΜΕΤΑΤΡΕΠΕΤΑΙΣΕ FUZZY ΤΕΛΕΣΤΗ ‘’MAX’’
ΔΥΑΔΙΚΗ ΛΟΓΙΚΗ ΑΣΑΦΗΣ ΛΟΓΙΚΗ
A B A OR B Α Β Max(A,B)
0 0 0 0 0 0
0 1 1 0 1 1
1 0 1 1 0 1
1 1 1 1 1 1
BOOLEAN ΤΕΛΕΣΤΗΣ ‘’NOT A’’ ΜΕΤΑΤΡΕΠΕΤΑΣΕ FUZZY ΤΕΛΕΣΤΗ ‘’1-A’’
ΔΥΑΔΙΚΗ ΛΟΓΙΚΗ ΑΣΑΦΗΣ ΛΟΓΙΚΗ
A NOT A Α 1-A
0 0 0 0
1 0 0 1
ΕΙΚΟΝΑ 4.
15
Ο κανόνας IF-THEN-ELSE, λειτουργεί τόσο στην Boolean Logic όσο και στην
Fuzzy Logic, με τον ίδιοτρόπο. Η μόνη διάφορα είναι ότι στην Fuzzy Logic, το
αποτέλεσμα (output) είναι ένα συγκεκριμένο ασαφές σύνολο (fuzzy set).
Παράδειγμα
IFx=ATHENy=B
Η πρόταση A, είναι μια γλωσσική μεταβλητηπου ορίζεται από ένα ασαφές σύνολο
και αποτελεί την προϋπόθεση (premise) του κανόνα, ενώ η πρόταση B είναι επίσης
γλωσσική μεταβλητή και αποτελεί το συμπέρασμα (conclusion) του κανόνα. Η
πρόταση B, αποτελεί επίσης ένα ασαφές σύνολο.
3) ΓΛΩΣΣΙΚΕΣ ΜΕΤΑΒΛΗΤΕΣ (LINGUISTIC VARIABLES)
Μια από της βασικές έννοιες που θα συναντήσουμε, είναι η έννοια της γλωσσικής
μεταβλητής (linguistic variable). Όπως προαναφέραμε, η Ασαφής Λογική προσπαθεί
να προσομοιάσει την ανθρωπινή επικοινωνία, έτσι λοιπόν θα πρέπει να
χρησιμοποιηθούν κάποιες μεταβλητές για να γίνει κατανοητή η ανθρωπινή
επικοινωνία στον Η/Υ. Οι μεταβλητές αυτές ονομάζονται γλωσσικές μεταβλητές.
Οι γλωσσικές μεταβλητές είναι λέξεις ή προτάσεις της ανθρώπινης επικοινωνίας, οι
οποίες δεν είναι αριθμητικές και περιγράφουν τα χαρακτηριστικά ενός στοιχείου.
Τούτες οι μεταβλητές για να γίνουν κατανοητές από τον Η/Υ, θα πρέπει να
μεταγλωττιστούν με κατάλληλο τρόπο, ώστε να είναι δυνατή η επεξεργασία τους από
το ηλεκτρονικό σύστημα.
Μερικές μεταβλητές οι οποίες χαρακτηρίζονται ως γλωσσικές είναι η ηλικία, η
θερμοκρασία κτλ. Λογού χάριν, η ηλικία λαμβάνει γλωσσικές τιμές (π.χ. Παιδί, Νέος,
Ενήλικος, Γέρος κτλ), οι τιμές αυτές όμως δεν είναι κατανοητές από τον Η/Υ, οπότε
θα πρέπει να μεταγλωττιστούν με τέτοιο τρόπο ώστε να γίνει εφικτή η επεξεργασία
τους.
16
Οι γλωσσικές μεταβλητές χαρακτηρίζονται από πέντε παραμέτρους.
Έστω L η γλωσσικήμεταβλητή, τότε
L= (L,T(L), U,G,M), όπου
LΌνομα της Μεταβλητής (nameofvariable)
T(L) Σύνολο Γλωσσικών Τιμών. (set of fuzzy terms, collection of linguistic
variables)
UΣύνολο Τιμών Αναφοράς των Γλωσσικών Μεταβλητών (universe of discourse)
GΣυντακτικός Κανόνας που παράγει τις γλωσσικές τιμές T(L) (syntactic rule)
MΣημασιολογικός Κανόνας που συνδέει τις Γλωσσικές Τιμές. (membership
function MF:U[0,1]). Αποτελεί ένα Ασαφές Υποσύνολο (fuzzy subset) του
Συνόλου Αναφοράς U (universe of discourse).
Η συνάρτηση συμμετοχής (membership function) είναι μια καμπύλη, όπως θα
δούμε παρακάτω, η οποία ορίζει τον τρόπο με τον οποίο συνδέονται τα εκάστοτε
σημεία Χ του ασαφούς συνόλου (fuzzy set) , όπου κάθε σημείο X, αντιστοιχεί σε
τιμές στην συνάρτηση αναφοράς στο εύρος [0,1], δηλαδή Y=MF(X), 0≤Y≤1.
Οι τιμές αυτές της συνάρτησης MF, ονομάζονται βαθμός συμμετοχής (degree of
membership ή membershipvalue)
Για να περιγράψουμε τις γλωσσικές μεταβλητές χρησιμοποιούμε ασαφήσύνολα.
Ακολουθεί παράδειγμα για να γίνουν κατανοητές οι έννοιες.
17
ΠΑΡΑΔΕΙΓΜΑ
Έστω ότι θέλουμε να περιγράψουμε την θερμοκρασία, χρησιμοποιώντας κάποιες
τιμές. Στο παράδειγμα αυτό, η θερμοκρασία αποτελεί την μεταβλητή, η οποία μπορεί
να λάβει τις εξής γλωσσικέςτιμές [ΚΡΥΟ(Κ), ΕΛΑΦΡΩΣ ΔΡΟΣΕΡΟ(ΕΔ),
ΔΡΟΣΕΡΟ(Δ), ΦΥΣΙΟΛΟΓΙΚΟ(Φ), ΕΛΑΦΡΩΣ ΘΕΡΜΟ(ΕΘ), ΘΕΡΜΟ(Θ),
ΖΕΣΤΟ(Ζ)].
Οι τιμές αυτές δεν είναι αριθμοί και χαρακτηρίζονται ως γλωσσικές μεταβλητές.
Ωστόσο, οι τιμές αυτές θα πρέπει να αναπαρασταθούν στον Η/Υ για να αναπτυχθεί
ένα μοντέλο FuzzyLogic.
Η διαδικασία για την αναπαράσταση επιτυγχάνεται μέσω των Ασαφών Συνόλων.
Υποθέτουμε ότι οι γλωσσικές τιμές λαμβάνονται στο εύρος[0,40]. Το εύρος αυτών
των τιμών ονομάζεται σύνολο αναφοράς.
Έχουμε λοιπόν τα εξής που χαρακτηρίζουν την μεταβλητή μας.
Γλωσσική Μεταβλητή (L)
Θερμοκρασία Όνομα Γλωσσικής Μεταβλητή (L)
Σύνολο Γλωσσικών ΤιμώνT(L), όπουT(L)=[ΚΡΥΟ(Κ), ΕΛΑΦΡΩΣ
ΔΡΟΣΕΡΟ(ΕΔ), ΔΡΟΣΕΡΟ(Δ), ΦΥΣΙΟΛΟΓΙΚΟ(Φ), ΕΛΑΦΡΩΣ ΘΕΡΜΟ(ΕΘ),
ΘΕΡΜΟ(Θ), ΖΕΣΤΟ(Ζ)]
Σύνολο Τιμών Αναφοράς Γλωσσικών Μεταβλητών στο οποίο παίρνουν ασαφείς
τιμές οι Γλωσσικές ΜεταβλητέςU, όπου U(0,40).
Άρα L=(L, T(L),U)
18
ΕΙΚΟΝΑ5.
Στο παραπάνω γράφημα, οι γλωσσικές μεταβλητές, λαμβάνουν ασαφείς τιμές στο
διάστημα (0,40).
Παραδείγματος χάριν, η τιμή ΚΡΥΟ(Κ) λαμβάνει τιμές Κ(0,10), ενώ η τιμή
ΕΛΑΦΡΩΣ ΔΡΟΣΕΡΟ (ΕΔ) λαμβάνει τιμές ΕΔ(5,15). Το διάστημα των τιμών (5,10)
εμπίπτει και στις δυο γλωσσικές μεταβλητές, άρα είναι ασαφές σύνολο.
Παρατηρούμε ότι η γλωσσική τιμή ΔΡΟΣΕΡΟ περιλαμβάνει τιμές και στο
ΕΛΑΡΦΩΣ ΔΡΟΣΕΡΟ (ΕΔ) και ΦΥΣΙΟΛΟΓΙΚΟ (Φ). Άρα, θα λέγαμε ότι το
ΔΡΟΣΕΡΟ είναι ένα ασαφές σύνολο.
Στο σημείο αυτό θα αναφέρουμε την παράμετρο MF (membership function).
Παρατηρούμε ότι στο εύρος θερμοκρασιών [5,10], υπάρχει ένα ασαφές σύνολο
(fuzzy set), καθώς οι γλωσσικές μεταβλητές ΚΡΥΟ[0,10] και ΕΛΑΦΡΩΣ
ΔΡΟΣΕΡΟ[5,15], αλληλοκαλύπτονται.
Η συνάρτηση συμμετοχής (MF), σταθμίζει τις τιμές του συνόλου αναφοράς (universe
of discourse), ώστε να υπάρχει μια ‘’ιεραρχία’’, δηλαδή αν θέλουμε να ορίσουμε το
ΚΡΥΟ στο εύροςτιμών [5,10], τότε η τιμή 6 είναι πιο κοντά στην τιμή 5, ενώ η τιμή 9
απέχει περισσότερο.
19
Υποθέτουμε λοιπόν, όσο αφόρα την τιμή ΚΡΥΟ, ότι η στάθμιση για την τιμή 6 θα
είναι μεγαλύτερη από την τιμή 9, δηλαδή π.χ. η τιμή 6 σταθμίζεται με συντελεστή 0.5
ενώ η τιμή 9 με συντελεστή 0.07, (Οι τιμές είναι ενδεικτικές, ωστόσο οι σταθμίσεις
για την παράμετρο MF θα πρέπει να λαμβάνουντιμές στο διάστημα [0,1])
4) ΣΥΝΑΡΗΤΣΕΙΣ ΣΥΜΜΕΤΟΧΗΣ
(MEMBERSHIPFUNCTIONS)
Υπάρχουν διάφοροι τύποι συναρτήσεων συμμετοχής(Membershipfunctions ή MF)
που αναπαριστούν τα ασαφή σύνολα. Οι συναρτήσεις που συναντώνται πιο συχνά
είναι οι εξής:
a) Τριγωνική συνάρτηση (Triangular MF)
b) Τραπεζοειδής συνάρτηση (Trapezoidal MF)
c) Καμπανοειδής συνάρτηση (Generalize Bell MF ή GBell MF)
d) Γκαουσιανή συνάρτηση (Gaussian MF)
e) S συνάρτηση (S MF)
f) Pi συνάρτηση (Pi MF)
g) Z συνάρτηση (Z MF)
h) Σιγμοειδής συνάρτηση (Sigmoidal MF)
Το πρόγραμμα που έχει χρησιμοποιηθεί για την σχεδίαση των συναρτήσεων είναι το
MATLAB R2013a, καθώς οι συναρτήσεις είναι τυποποιημένες.
Αρκετές από τις άνω συναρτήσεις είναι γνώριμες, καθώς έχουν αναλυθεί και σε
βιβλία Στατιστικής.. Στην στατιστική, οι συνεχείς κατανομές συναντώνται με την
ονομασία ‘’Συνάρτηση Πυκνότητας Πιθανότητας- Probability Density Function
(PDF)’’, ενώ στην Ασαφή Λογική ονομάζονται ‘’Συνάρτηση Συμμετοχής-
Membership Function’’. Το τυπολόγιο και τα χαρακτηριστικά των συναρτήσεων δεν
αλλάζουν, οι λειτουργίες τους είναι οι ίδιες, εκείνο όμως που αλλάζει είναι η
ερμηνεία τους.
20
Στην Στατιστική η κατανομή πιθανότητας (PDF) εκφράζει τις πιθανότητες εμφάνισης
διαφορετικών αποτελεσμάτων ενός πειράματος, ήτοι εκφράζει την πιθανότητα μια
μεταβλητή να εμπίπτει σε ένα συγκεκριμένο εύρος τιμών.
Στην ΑσαφήΛογική, η συνάρτηση συμμετοχής, εκφράζει τον βαθμό συμμετοχής του
κάθε στοιχείου του υπό εξέταση συνόλου.
Για όλες τις Συναρτήσεις Συμμετοχής (Membership functions), ισχύουν τα εξής
a) Η Συνάρτηση Συμμετοχής λαμβάνει τιμές το διάστημα [0,1] (ΆξοναςY)
b) Η Συνάρτηση Συμμετοχής, ορίζει τον βαθμό συμμετοχής (στάθμιση) των τιμών x
(Άξονας Χ)
21
a) ΤΡΙΓΩΝΙΚΗ ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ
(Triangle ή Triangular MF)
Triangle (x,[a,b,c])=max [min �
x−a
b−a
,
c−x
c−b
�, 0]
ήεναλλακτικά
Triangle (x,[a,b,c])=
⎩
⎪
⎪
⎨
⎪
⎪
⎧
0 , x ≤ a
(
x−a
b−a
) , a ≤ x ≤ 𝑏
(
(c−x)
c−b
) , b ≤ x ≤ c
0 , c ≤ x ⎭
⎪
⎪
⎬
⎪
⎪
⎫
ΕΙΚΟΝΑ 6.
Παράδειγμα τριγωνικής συνάρτησης συμμετοχής
για x(0,10), Parameters= [a=3, b=6, c=8]
22
b) ΤΡΑΠΕΖΟΕΙΔΗΣ ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗ
(TrapezoidalMF)
Trapezoidal(x,[a,b,c,d])=max [min �
x−a
b−a
, 1,
d−x
d−c
� , 0]
ή εναλλακτικά
Trapezoidal(x,[a,b,c,d])=
⎩
⎪
⎪
⎪
⎨
⎪
⎪
⎪
⎧
0 , x ≤ a
(
x−a
b−a
) , a ≤ x ≤ b
1 , b ≤ x ≤ c
(
d−x
d−c
) , c ≤ x ≤ d
0 , d ≤ x ⎭
⎪
⎪
⎪
⎬
⎪
⎪
⎪
⎫
ΕΙΚΟΝΑ 7.
Παράδειγμα τραπεζοειδής συνάρτησης συμμετοχής
για x=(0,10), Parameters= [a=1, b=5, c=7, d=8]
23
c) ΚΑΜΠΑΝΟΕΙΔΗΣ ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ
(Generalized Bell MF ή GBell MF)
GBell(x,[a,b,c])=
1
1+|
𝑥−𝑐
𝑎
|2∗𝑏
ΕΙΚΟΝΑ 8.
Παράδειγμα καμπανοειδής συνάρτησης συμμετοχής
για x=(0,10), Parameters= [a=2, b=4, c=6]
24
d) ΓΚΑΟΥΣΙΑΝΗ ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ
(Gaussian MF)
Gaussian(x,[σ,c])=e −(
x−c
2∗σ
)2
ΕΙΚΟΝΑ 9.
Παράδειγμα γκαουσιανής συνάρτησης συμμετοχής
για x=(0,10) , Parameters= [σ=2, c=5]
25
e) S ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ
(S MF)
S(x,[a,b])=
⎩
⎪
⎪
⎨
⎪
⎪
⎧
0 , x ≤ a
2 ∗ (
x−a
b−a
)2
, a ≤ x ≤
a+b
2
1 − 2 ∗ (
x−b
b−a
)2
,
a+b
2
≤ x ≤ b
1 , x ≥ b ⎭
⎪
⎪
⎬
⎪
⎪
⎫
EIKONA10.
Παράδειγμα S συνάρτησης συμμετοχής για
x=(0,10), Parameters= [a=1, b=8]
26
f) Pi ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ
(Pi MF)
Pi(x,[a,b,c,d])=
⎩
⎪
⎪
⎪
⎪
⎪
⎪
⎨
⎪
⎪
⎪
⎪
⎪
⎪
⎧
0 , x ≤ a
2 ∗ (
x−a
b−a
)2
, a ≤ x ≤
a+b
2
1 − 2 ∗ (
x−b
b−a
)2
,
a+b
2
≤ x ≤ b
1 , b ≤ x ≤ c
1 − 2 ∗ (
x−c
d−c
)2
, c ≤ x ≤
c+d
2
2 ∗ (
x−d
d−c
)2
,
c+d
2
≤ x ≤ d
1 , x ≥ d ⎭
⎪
⎪
⎪
⎪
⎪
⎪
⎬
⎪
⎪
⎪
⎪
⎪
⎪
⎫
EIKONA11.
Παράδειγμα Pi συνάρτησης συμμετοχής
για x=(0,10), Parameters= [a=1, b=4, c=5, d=10]
27
g) Z ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ
(Z MF)
Pi(x, [a,b])=
⎩
⎪
⎪
⎨
⎪
⎪
⎧
1 , x ≤ a
1 − 2 ∗ (
x−b
b−a
)2
, a ≤ x ≤
a+b
2
2 ∗ (
x−b
b−a
)2
,
a+b
2
≤ x ≤ b
0 , x ≥ b ⎭
⎪
⎪
⎬
⎪
⎪
⎫
EIKONA12.
Παράδειγμα Z συνάρτησης συμμετοχής για
x=(0,10), Parameters= [a=3, b=7]
28
h) ΣΙΓΜΟΕΙΔΗΣ ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ
(SIGMOIDAL MF)
Sigmoid (x,[a,c])=
𝟏
𝟏+𝐞 –𝐚∗(
𝐱−𝐜)
EIKONA13.
Παράδειγμα σιγμοειδής συνάρτησης συμμετοχής
x=(0,10), Parameters= [a=2, b=4]
29
Έχοντας ολοκληρώσει την βασική θεωρία που χρειαζόμαστε να είναι κατανοητή, στο
επόμενο βημα θα αναπτυχθεί ένα ασαφές μοντέλο λειτουργίας ενός air condition.
Για να σχεδιάσουμε το μοντέλο θα χρειαστούμε το Matlab R2013a με την
εργαλειοθήκη Fuzzy Logic Toolbox.
Η λειτουργία του aircodition είναι αρκετά απλή, χωρίς πολλές εντολές, ώστε να γίνει
αντιληπτή η κατασκευή με την χρήση του λογισμικού Matlab.
Τα βήματα που ακολουθούμε είναι τα εξής.
ΒΗΜΑ 1.
Προσπαθούμε να κατανοήσουμε ποιες θα είναι οι λειτουργίες του, ποιες θα είναι οι
ασαφείς ανεξάρτητες μεταβλητές (inputvariables) και ποιες οι εξαρτημένες
μεταβλητές (output variables).
ΒΗΜΑ 2.
Σχεδιασμός του μοντέλου (σε ‘’χαρτί’’) με ψευδομεταβλητές και ψευδοκώδικα, ώστε
να είναι εύκολα αντιληπτές και διακριτές οι λειτουργίες του.
Κατανόηση των μεταβλητών και των τιμών που λαμβάνουν οι μεταβλητές.
Σχεδίαση των συναρτήσεων συμμετοχής (membership functions) των μεταβλητών.
Κατασκευή των κανόνων (fuzzy rules-statements) που συνδέουν τις μεταβλητές.
ΒΗΜΑ 3.
Υλοποίηση των παραπάνω βημάτων, στο λογισμικό Matlab, λαμβάνοντας παράλληλα
υπόψη και την θεωρία που στηρίζεται το μοντέλο μας.
ΒΗΜΑ 4.
Εξαγωγή των αποτελεσμάτων και έλεγχος αν τα αποτελέσματα συνάδουν με τους
κανόνες που έχουμε θέσει στο μοντέλο μας.Διόρθωση μοντέλου σε περίπτωση
αστοχίας.
30
ΠΑΡΟΥΣΙΑΣΗ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ MATLAB.
Το λογισμικό MATLAB (MATrixLABoratory) είναι ένα πρόγραμμα υπολογιστικού
περιβάλλοντος για επεξεργασία και ανάλυση δεδομένων. Είναι γραμμένο, στο
μεγαλύτερο μέρος του, στην γλωσσά προγραμματισμού C++. Περιέχει επίσης
στοιχεία από τις γλώσσες C, JAVA, PYTHON και FORTAN
Το MATLAB, χρησιμοποιείται σε ένα εύρος εφαρμογών και επιστημών, όπως τα
μαθηματικά, μηχανολογία, οικονομικά, στατιστική κτλ.
Έχει σχεδιαστεί κυρίως για την επίλυση γραμμικών προβλημάτων, εύρεση ιδιωτιμών-
ιδιοδιανυσμάτων, λύση συναρτήσεων και γενικά οτιδήποτε αφόρα την γραμμική
άλγεβρα και τις επεκτάσεις της καθώς και την άλγεβρα με την γενικότερη έννοια.
Είναι επίσης εφοδιασμένο με ένα πλήθος πρόσθετων εργαλείων (toolboxes), με τα
οποία δίνεται η δυνατότητα για περεταίρω εργασίες.
Μερικά toolboxes που περιέχει το MATLAB είναι τα εξής
1) MATH- STATISTICS- OPTIMIZATION
(Curve Fitting,Symbolic Math, Statistics and Machine Learning, Regression κτλ)
2) CONTROL SYSTEM, DESIGN AND ANALYSIS
(Fuzzy Logic,Control System Tuning, Linear System Analysis, Neuro Fuzzy Design
κτλ)
3) COMPUTATIONAL FINANCE
(Financial Time Series Analysis, Risk Management, Econometrics κτλ)
4) IMAGE PROCESSING AND COMPUTER VISION
(Image Viewer, Map Viewer κτλ)
5) DATA SCIENCE AND DEEP LEARNING
(Statistics anδ Machine Learning, Deep Learning, Text Analytics)
31
Το γραφικό περιβάλλον είναι αρκετά κατανοητό και προσιτό, χρειάζεται ωστόσο
αρκετή ενασχόληση και αναδρομή στα εγχειρίδια του προγράμματος για την
εκμάθηση. Πρέπει να προσέξουμε επίσης ότι, επειδή το MATLAB είναι γραμμένο
στην γλωσσά C++, οι εντολές/μεταβλητές κτλ είναι ‘’case sensitive’’, δηλαδή,
υπάρχει διάφορα μεταξύ κεφαλαίων και πεζών χαρακτήρων.
Επίσης, σε πολλά toolboxes, υπάρχει η δυνατότητ αγια συμβολικούς υπολογισμούς
(όπως στο Mathematica), δηλαδή την καταχώριση των εντολών όπως θα γράφονταν
στο χαρτί
Ένα ακόμα σημαντικό πλεονέκτημα, είναι η δυνατότητα προσομοίωσης ενός
συστήματος/ μοντέλου με την χρήση του Simulink.
Το Simulink είναι ένα προσθετό του MATLAB, όπου όταν ολοκληρωθεί ένα
μοντέλο/ πρόγραμμα κτλ, υπάρχει η δυνατότητα να δοκιμαστεί υπό πραγματικές
συνθήκες, προτού προωθηθεί στην αγορά, χρησιμοποιηθεί για ερευνά κτλ.
Χρησιμοποιείται ευρέως σε εφαρμογές Ρομποτικής, Συστήματα Έλεγχου,
Ηλεκτρονική, Τηλεπικοινωνίες κ.α.
ΕΦΑΡΜΟΓΗ ΛΕΙΤΟΥΡΓΙΑΣ AIRCODITION ΣΤΟ MATLAB.
ΠΡΟΣΟΧΗ!!
(Αρχικά, να επισημάνουμε ότι το λογισμικό MATLAB είναι γραμμένο, στο
μεγαλύτερο μέρος του, στην γλωσσά προγραμματισμού C++. Γι’ αυτό το λόγο ο
αναγνώστης θα πρέπει να δώσει προσοχή ότι η C++ είναι γλωσσά ‘’case sensitive’’
δηλαδή, υπάρχει διάφορα μεταξύ κεφαλαίων και πεζών χαρακτήρων. Τούτο
συνεπάγεται ότι είναι διαφορετικό όταν, λογού χάρη ονομάζουμε μια μεταβλητή
‘’LOW’’ από την μεταβλητή ‘’low’’.
Εφιστούμε την προσοχή του αναγνώστη σε αυτή την μικρή, αλλά βασική
λεπτομέρεια, διότι το πρόγραμμα MATLAB θα διαβάσει τις μεταβλητές/ εντολές
όπως ακριβώς τις έχουμε ορίσει ή είναι ορισμένες/ καταχωρημένες από τις
προεπιλογές του προγράμματος (by default) .
32
Αν έχει οριστεί μια μεταβλητή‘’LOW’’ και έπειτα επιθυμούμε να κάνουμε πράξεις με
την μεταβλητή‘’low’’, το MATLAB θα εμφανίσει σφάλμα ότι δεν αναγνωρίζει την
μεταβλητή ‘’low’’ )
Στο παράδειγμα μας, υποθέτουμε ότι το aircodition λειτούργει ως έξης:
Το aircontition, διαθέτει αισθητήρες για την θερμοκρασία και την υγρασία.
Αναλόγως την θερμοκρασία και την υγρασία του περιβάλλοντος, θέτει σε λειτουργιά
των ανεμιστήρα ή/και τον αφυγραντήρα.
Υποθέτουμε ότι ο αισθητήρας της θερμοκρασίας εντοπίζειτιμές από 0ο
C έως 40ο
C,
ενώ ο αισθητήρας της υγρασίας εντοπίζει τιμές από 0% υγρασία έως 100% υγρασία.
Αναλόγως τις τιμές που θα εντοπίσουν οι δυο αισθητήρες, θα αρχίσει η λειτουργιά
του ανεμιστήρα ή/και του αφυγραντήρα.
Ο ανεμιστήρας υποθέτουμε ότι έχει τρεις βαθμίδες λειτουργιάς (LOW, MEDIUM,
HIGH).
Ο αφυγραντηρας υποθέτουμε ότι έχει τρεις βαθμίδες λειτουργιάς (OFF, LOW,
HIGH).
Πρωτού προχωρήσουμε στα βήματα σχεδιασμού της λειτουργίας του air condition,
θα χρειαστεί να τρέξουμε το Fuzzy Logic Toolbox του Matlab.
Ανοίγουμε το πρόγραμμα Matlab και στο αρχικό παράθυρο ‘’COMMAND
WINDOW’’ γραφουμε ‘’fuzzy’’. Με την εντολή αυτή ανοίγει το Fuzzy Logic
Toolbox (Fuzzy Information Sustem- FIS).
Στο νέο παράθυρο που ανοίγει κάνουμε κλικ στο ‘’FILE’’  ‘’IMPORT ….. from
file’’ και επιλέγουμε το αρχείο για το air condition, το οποίο έχουμε ονομάσει
‘’ FuzzyLogicAIRCONDITION.fis’’
Από εκεί και έπειτα ακολούθουμε τα βήματα
33
----------------- ΒΗΜΑ 1.
ΟΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ
Αρχικά ονομάζουμε τις μεταβλητές μας.
ΘΕΡΜΟΚΡΑΣΙΑTEMPERATURE (T)
ΥΓΡΑΣΙΑHUMIDITY (H)
ΑΝΕΜΙΣΤΗΡΑΣFAN SPEED (FS)
ΑΦΥΓΡΑΝΤΗΡΑΣDEHUMIDIFIER (DH)
Από τα παραπάνω, γίνεται κατανοητό ότι οι ανεξάρτητες μεταβλητές/ μεταβλητές
εισόδου (input variables) είναι η θερμοκρασία (T) και η υγρασία (H), ενώ οι
εξαρτημένες μεταβλητές/ μεταβλητές εξόδου (output variables) είναι ο ανεμιστήρας
(FS) και ο αφυγραντήρας (DH).
INPUT VARIABLES: TEMPERATURE (T), HUMIDITY (H)
OUTPUT VARIABLES: FAN SPEED (FS), DEHUMIDIFIER (DH)
----------------- ΒΗΜΑ 2.
ΑΝΕΞΑΡΤΗΤΕΣ ΜΕΤΑΒΛΗΤΕΣ- ΜΕΤΑΒΛΗΤΕΣ ΕΙΣΟΔΟΥ
(INPUTVARIABLES)
ΕΥΡΟΣ ΤΙΜΩΝ ΤΩΝ ΜΕΤΑΒΛΗΤΩΝ, ΣΥΝΟΛΟ ΤΙΜΩΝ ΑΝΑΦΟΡΑΣ ΚΑΙ
ΣΥΝΑΡΤΗΣΕΙΣ ΣΥΜΜΕΤΟΧΗΣ
Αρχικά, ορίζονται οι μεταβλητές (θερμοκρασία, υγρασία), το εύρος τιμών της
θερμοκρασίας, το εύρος τιμών της υγρασίας, καθώς και οι συναρτήσεις συμμετοχής
(MF)
34
--------ΓΛΩΣΣΙΚΗ ΜΕΤΑΒΛΗΤΗ ΘΕΡΜΟΚΡΑΣΙΑ[T]
ΣΥΝΟΛΟ ΓΛΩΣΣΙΚΩΝ ΤΙΜΩΝ [T(L)]
[Extremly Cold (EC), Very Cold (VC), Cold (C), Normal(N), Hot (H), Very
Hot(VH), Extremly Hot (EH)]
ΣΥΝΟΛΟ ΤΙΜΩΝ ΑΝΑΦΟΡΑΣ [U]
U=(0,40)
ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ - MEMBERSHIPFUNCTION [MF]
MF= Triangle
TEMPERATURE=(T,T(L), U(0,40),TRIANGLE)
35
MEMBERSHIP FUNCTIONS AND VALUES OF TEMPERATURE (MATLAB
ΕΙΚΟΝΑ 14.
36
Στο παραπάνω γράφημα παρατηρούμε τα εξής για τις γλωσσικές τιμές και το σύνολο
τιμών των γλωσσικών τιμών
EC (0,10) // MF(Triangle)
VC (5,15) // MF(Triangle)
C (10,20) // MF(Triangle)
N (15,25) // MF(Triangle)
H (20,30) // MF(Triangle)
VH (25,35) // MF(Triangle)
EH (30,40) // MF(Triangle)
Η μεταβλητή ΘΕΡΜΟΚΡΑΣΙΑ είναι μια γλωσσική μεταβλητή η οποία
χαρακτηρίζεται από τις γλωσσικές τιμές, οι οποίες λαμβάνονται στο σύνολο
αναφοράς U(0,40).
Υποθέτουμε επίσης ότι η συνάρτηση συμμετοχής είναι τριγωνική (trimf). Αν
επιθυμούμε μπορεί να αλλαχτεί σε άλλη συνάρτηση συμμετοχής επιλέγοντας το
‘’type’’.
--------ΓΛΩΣΣΙΚΗ ΜΕΤΑΒΛΗΤΗ ΥΓΡΑΣΙΑ [H]
ΣΥΝΟΛΟ ΓΛΩΣΣΙΚΩΝ ΤΙΜΩΝ [H(L)]
[Very Dry (VD), Dry (D), Normal(N), Hot (H), Moist (M),VeryMoist (VM)]
ΣΥΝΟΛΟ ΤΙΜΩΝ ΑΝΑΦΟΡΑΣ [U]
U=(0,100)
ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ - MEMBERSHIPFUNCTION [MF]
MF= Trapezoid and Triangle
HUMIDITY=(H, H(L), U(0,100),TRAPEZOID &TRIANGLE)
37
MEMBERSHIP FUNCTIONS AND VALUES OF HUMIDITY (H)(MATLAB)
ΕΙΚΟΝΑ 15.
38
Στο παραπάνω γράφημα παρατηρούμε τα εξής για τις γλωσσικές τιμές και το σύνολο
τιμών των γλωσσικών τιμών
VD (0,25) // MF(Trapezoid)
D (20,40) // MF(Triangle)
N (35,55) // MF(Triangle)
M (50,75) // MF(Triangle)
VM (65,100) // MF(Trapezoid)
Η μεταβλητή ΥΓΡΑΣΙΑ είναι μια γλωσσική μεταβλητή η οποία χαρακτηρίζεται από
τις γλωσσικές τιμές οι οποίες λαμβάνονται στο σύνολο αναφοράς U(0,100).
Υποθέτουμε επίσης ότι η συνάρτηση συμμετοχής είναι τραπεζοειδής και τριγωνική
(trampf και trimf). Αν επιθυμούμε μπορεί να αλλαχτεί σε άλλη συνάρτηση
συμμετοχής επιλέγοντας το ‘’type’’.
Συνοψίζοντας τις ανεξάρτητες μεταβλητές (input variables)
INPUT VARIABLES
TEMPERATURE=(T, T(L), U(0,40), TRIANGLE)
HUMIDITY=(H, H(L), U(0,100),TRAPEZOID &TRIANGLE)
39
ΕΞΑΡΤΗΜΕΝΕΣΜΕΤΑΒΛΗΤΕΣ- ΜΕΤΑΒΛΗΤΕΣΕΞΟΔΟΥ
(OUTPUT VARIABLES)
ΕΥΡΟΣ ΤΙΜΩΝ ΤΩΝ ΜΕΤΑΒΛΗΤΩΝ, ΣΥΝΟΛΟ ΤΙΜΩΝ ΑΝΑΦΟΡΑΣ ΚΑΙ
ΣΥΝΑΡΤΗΣΕΙΣ ΣΥΜΜΕΤΟΧΗΣ
Οι επόμενες μεταβλητές που θα οριστούν είναι ο ανεμιστήρας (FS) και ο
αφυγραντήρας (DH). Οι δυο αυτές μεταβλητές, όπως έχουμε προαναφέρει, είναι οι
εξαρτημένες μεταβλητές (output variables), άρα οι τιμές τους θα συναρτώνται με τις
εξαρτημένες μεταβλητές(input variables), δηλαδή την θερμοκρασία (T) και την
υγρασία (H).
Σε πρώτοστάδιοορίζονται οιμεταβλητές (ανεμιστήρας, αφυγραντηρας), το
εύροςτιμών του ανεμιστήρα, το εύροςτιμών του αφυγραντήρα,καθώς και
οισυναρτήσειςσυμμετοχής(MF)
--------ΓΛΩΣΣΙΚΗ ΜΕΤΑΒΛΗΤΗ FANSPEED [FS]
ΣΥΝΟΛΟ ΓΛΩΣΣΙΚΩΝ ΤΙΜΩΝ [FS(L)]
[Low(L), Medium (M), High (H)]
ΣΥΝΟΛΟ ΤΙΜΩΝ ΑΝΑΦΟΡΑΣ [U]
U=(1,4)
ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ - MEMBERSHIPFUNCTION [MF]
MF= Triangle
FAN SPEED=(FS, FS(L), U(1,4),TRIANGLE)
40
MEMBERSHIP FUNCTIONSAND VALUES OF FAN SPEED(MATLAB)
ΕΙΚΟΝΑ 16
41
Στο παραπάνω γράφημα παρατηρούμε τα εξήςγια τις γλωσσικές τιμές και το σύνολο
τιμών των γλωσσικών τιμών
LOW (1,2) // MF(Triangle)
MEDIUM (2,3) // MF(Triangle)
HIGH (3,4) // MF(Triangle)
Η μεταβλητή ΑΝΕΜΙΣΤΗΡΑΣ είναι μια γλωσσική μεταβλητή η οποία
χαρακτηρίζεται από τις γλωσσικές τιμές οι οποίες λαμβάνονται στο σύνολο
αναφοράςU(1,4).
Υποθέτουμε επίσης ότι η συνάρτηση συμμετοχής είναι τριγωνική (trimf). Αν
επιθυμούμε μπορούμε να την αλλάξουμε σε άλλη συνάρτηση συμμετοχής
επιλέγοντας το ‘’type’’.
ΠΑΡΑΤΗΡΗΣΗ: Οι αριθμητικές τιμές που έχουν οριστεί για τις γλωσσικές
τιμές‘’LOW’’, ‘’MEDIUM’’, ‘’HIGH’’είναι ενδεικτικές. Οι τιμές [1,4] είναι καθαρά
θεωρητικές και χρησιμεύουν για το παράδειγμά μας, καθώς σκοπεύουμε απλά να
ορίσουμε τις λειτουργιές του ανεμιστήρα.
Θα ήταν εφικτό, για να γίνει πιο πρακτικό το παράδειγμα, να οριστούν οι στροφές
του ανεμιστήρα (από ένα εγχειρίδιο χρήσης) όταν η λειτουργιά είναι ‘’LOW’’,
‘’MEDIUM’’ ή ‘’HIGH’’
-------- ΓΛΩΣΣΙΚΗ ΜΕΤΑΒΛΗΤΗ DEHUMIDIFIER- [DH]
ΣΥΝΟΛΟ ΓΛΩΣΣΙΚΩΝ ΤΙΜΩΝ [DH(L)]
[OFF(OFF), Low (L), High (H)]
ΣΥΝΟΛΟ ΤΙΜΩΝ ΑΝΑΦΟΡΑΣ [U]
U=(0,3)
ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ - MEMBERSHIPFUNCTION [MF]
MF= Triangle
DEHUMIDIFIER=(DH, DH(L), U(0,3), TRIANGLE)
42
MEMBERSHIP FUNCTIONSAND VALUES OF DEHUMIDIFIER(MATLAB)
ΕΙΚΟΝΑ 17.
43
Στο παραπάνωγράφη μαπαρατηρούμε τα εξής για τις γλωσσικές τιμές και το σύνολο
τιμών των γλωσσικών τιμών
OFF (0,1) // MF(Triangle)
LOW (1,2) // MF(Triangle)
HIGH (2,3) // MF(Triangle)
Η μεταβλητή ΑΦΥΓΡΑΝΤΗΡΑΣ είναι μια γλωσσική μεταβλητή η οποία
χαρακτηρίζεται από τις γλωσσικές τιμές οι οποίες λαμβάνονται στο σύνολο αναφοράς
U(0,3).
Υποθέτουμε επίσης ότι η συνάρτηση συμμετοχής είναι τριγωνική (trimf). Αν
επιθυμούμε μπορεί να αλλαχτεί σε άλλη συνάρτηση συμμετοχής επιλέγοντας το
‘’type’’.
ΠΑΡΑΤΗΡΗΣΗ: Οι αριθμητικές τιμές που έχουν οριστεί για τις γλωσσικές τιμές
‘’OFF’’, ‘’LOW’’, ‘’HIGH’’είναι ενδεικτικές. Οι τιμές [0,3] είναι καθαρά
θεωρητικές και χρησιμεύουν για το παράδειγμα μας, καθώς σκοπεύουμε απλά να
ορίσουμε τις λειτουργιές του ανεμιστήρα.
Θα μπορούσαμε, για να γίνει πιο πρακτικό το παράδειγμα, να ορίσουμε τις στροφές
του ανεμιστήρα (από ένα εγχειρίδιο χρήσης) όταν η λειτουργιά είναι ‘’LOW’’,
‘’MEDIUM’’ ή ‘’HIGH’’
OUTPUT VARIABLES
FAN SPEED=(FS, FS(L), U(1,4), TRIANGLE)
DEHUMIDIFIER=(DH, DH(L), U(0,3), TRIANGLE)
44
----------------- ΒΗΜΑ 3.
ΟΡΙΣΜΟΣ ΚΑΝΟΝΩΝ
Στο επόμενο βήμα, έχοντας ορίσειπλέον το εύρος τιμών του ΑΝΕΜΙΣΤΗΡΑ
(FANSPEED) και του ΑΦΥΓΡΑΝΤΗΡΑ (DEHUMIDIFIER), θα πρέπει να τεθούν οι
κανόνες (rules- statements) στο λογισμικό Matlab, ώστε να προκύψουν οι ανάλογες
σχέσεις όπου θα ελέγχουν την λειτουργιά των εξαρτημένων μεταβλητών
ΑΝΕΜΙΣΤΗΡΑ (FANSPEED) και του ΑΦΥΓΡΑΝΤΗΡΑ (DEHUMIDIFIER).
Οι κανόνες θα τεθούν για τις input variables και οι output variables θα λάβουν τις
ανάλογες τιμές τους.
Οι κανόνες φαίνονται στην κατωθι εικόνα (ΕΙΚΟΝΑ 18).
45
RULES AND STATEMENTS OF AIRCONTIRION OPERATION
(ΚΑΝΟΝΕΣ ΛΕΙΤΟΥΡΓΙΕΣ ΤΟΥ AIRCONDITION)
ΕΙΚΟΝΑ 18.
46
INPUT VARIABLES
TEMPERATURE [T]
[Extremly Cold (EC), Very Cold (VC), Cold (C), Normal(N), Hot (H), Very
Hot(VH), Extremly Hot (EH)]
HUMIDITY [H]
[Very Dry (VD), Dry (D), Normal(N), Hot (H), Moist (M),VeryMoist (VM)]
OUTPUT VARIABLES
FAN SPEED [FS]
[Low(L), Medium (M), High (H)]
DEHUMIDIFIER (DH)
[OFF(OFF), Low (L), High (H)]
ΕΝΤΟΛΕΣ- ΚΑΝΟΝΕΣ (19 ΚΑΝΟΝΕΣ)
IF TEMPERATURE=EC AND HUMIDITY=VD THEN FS=HIGH AND DEHUMIDIFIER=OFF
IF TEMPERATURE=EC AND HUMIDITY=D THEN FS=HIGH AND DEHUMIDIFIER=OFF
IF TEMPERATURE=EC AND HUMIDITY=N THEN FS=HIGH AND DEHUMIDIFIER=OFF
IF TEMPERATURE=EC AND HUMIDITY=M THEN FS=HIGH AND DEHUMIDIFIER=LOW
IF TEMPERATURE=EC AND HUMIDITY=VM THEN FS=HIGH AND DEHUMIDIFIER=HIGH
IF TEMPERATURE=VC AND HUMIDITY=VD THEN FS=HIGH AND DEHUMIDIFIER=OFF
IF TEMPERATURE=VC AND HUMIDITY=D THEN FS=HIGH AND DEHUMIDIFIER=OFF
IF TEMPERATURE=VC AND HUMIDITY=N THEN FS=HIGH AND DEHUMIDIFIER=OFF
IF TEMPERATURE=VC AND HUMIDITY=M THEN FS=HIGH AND DEHUMIDIFIER=LOW
IF TEMPERATURE=VC AND HUMIDITY=VM THEN FS=HIGH AND DEHUMIDIFIER=HIGH
IF TEMPERATURE=C AND HUMIDITY=VD THEN FS=MEDIUM AND DEHUMIDIFIER=OFF
IF TEMPERATURE=C AND HUMIDITY=D THEN FS= MEDIUM AND DEHUMIDIFIER=OFF
IF TEMPERATURE=C AND HUMIDITY=N THEN FS= MEDIUM AND DEHUMIDIFIER=OFF
IF TEMPERATURE=C AND HUMIDITY=M THEN FS= MEDIUM AND DEHUMIDIFIER=LOW
IF TEMPERATURE=C AND HUMIDITY=VM THEN FS= MEDIUM AND DEHUMIDIFIER=HIGH
47
IF TEMPERATURE=N THEN FS=LOW AND DEHUMIDIFIER=OFF
IF TEMPERATURE=H THEN FS=MEDIUM AND DEHUMIDIFIER=OFF
IF TEMPERATURE=VH THEN FS=HIGH AND DEHUMIDIFIER=OFF
IF TEMPERATURE=EH THEN FS=HIGH AND DEHUMIDIFIER=OFF
Συνοπτικά οι παραπάνω εντολές εκτελούν τα εξής για τις ανεξάρτητες μεταβλητές
ΑΝΕΜΙΣΤΗΡΑΣ (FANSPEED) και ΑΦΥΓΡΑΝΤΗΡΑΣ (DEHUMIDIFIER).
Ο ΑΦΥΓΡΑΝΤΗΡΑΣ (DEHUMIDIFIER) απενεργοποιείται (OFF), όταν η ΥΓΡΑΣΙΑ
(HUMIDITY) είναι VERYDRY/ DRY/NORMAL και λειτούργει μόνο όταν υπάρχει
ένδειξη ΥΓΡΑΣΙΑΣ (MOIST/ VERY MOIST).
Ο ΑΝΕΜΙΣΤΗΡΑΣ (FANSPEED) λειτούργει σε κλίμακες (LOW/ MEDIUM.
HIGH), αναλόγως την ΘΕΡΜΟΚΡΑΣΙΑ (TEMPERATURE). Σε κανονικές ή υψηλές
θερμοκρασίες (TEMPERATURE= NORMAL/ HOT/VERY HOT/ EXTREMELY
HOT), υποθέτουμε ότι δεν υπάρχει ένδειξη ΥΓΡΑΣΙΑΣ (HUMIDITY), άρα η
αντίστοιχη μεταβλητή δεν λαμβάνεται υπόψη στους κανόνες, οπότε ο
ΑΦΥΓΡΑΝΤΗΡΑΣ (DEHUMIDIFIER) είναι μονίμως απενεργοποιημένος (OFF)
Αν TEMPERATURE(T)=EXTREMLY COLD(EC) και HUMIDITY(H)= VERY DRY(VD)/ DRY(D)/
NORMAL(N) FANSPEED (FS)= HIGH και DEHUMIDIFIER(DH)=OFF
Αν TEMPERATURE(T)=EXTREMLY COLD(EC) και HUMIDITY(H)= MOIST(M)FAN SPEED
(FS)=HIGH και DEHUMIDIFIER(DH)=LOW
Αν TEMPERATURE(T)=EXTREMLY COLD(EC) και HUMIDITY(H)= VERY MOIST(VM)FAN
SPEED(FS)=HIGH και DEHUMIDIFIER(DH)=HIGH
Αν TEMPERATURE(T)= VERY COLD(VC) και HUMIDITY(H)= VERY DRY(VD) / DRY(D)/
NORMAL(N)  FAN SPEED(FS)=HIGH και DEHUMIDIFIER(DH)=OFF
Αν TEMPERATURE(T)=COLD(C) και HUMIDITY(H)= VERY DRY(VD) / DRY(D)/ NORMAL(N)
 FAN SPEED(FS)=MEDIUM και DEHUMIDIFIER(DH)=OFF
Αν TEMPERATURE(T)= NORMAL(N)  FAN SPEED(FS)=LOW και DEHUMIDIFIER(DH)=OFF
Αν TEMPERATURE(T)= ΗΟΤ(Η)  FAN SPEED (FS)=MEDIUM και DEHUMIDIFIER(DH)=OFF
48
Αν TEMPERATURE(T)= VERY ΗΟΤ(VΗ) FAN SPEED(FS)=HIGH και
DEHUMIDIFIER(DH)=OFF
Αν TEMPERATURE(T)= EXTREMELY ΗΟΤ(EΗ)  FAN SPEED(FS)=HIGH και
DEHUMIDIFIER(DH)=OFF
Τα βήματα μιας υποτυπώδους λειτουργιάς ενός aircondition, εχουν πλέον
ολοκληρωθεί και εν συνεχεία θα πρέπει να ελεγθεί η λειτουργία του μοντέλου μας.
Το επόμενο βήμα είναι να εισάγουμε διάφορες τιμές για τις ανεξάρτητες μεταβλητές
(ΘΕΡΜΟΚΡΑΣΙΑ, ΥΓΡΑΣΙΑ) και να διαπιστώσουμε αν για τις τιμές εισόδου θα
προκύψουν οι ανάλογες τιμές εξόδου, βασιζόμενοι πάντα στους κανόνες που έχουμε
θέσει για τις εξαρτημένες μεταβλητές (ΑΝΕΜΙΣΤΗΡΑΣ, ΑΦΥΓΡΑΝΤΗΡΑΣ).
----------------- BHMA 4.
Στα προηγούμενα βήματα έχει ολοκληρωθεί ο σχεδιασμός του ασαφούς συστήματος,
ορίζοντας τα εξης:
1) Τις μεταβλητές εισόδου (input variables) ΘΕΡΜΟΚΡΑΣΙΑ και ΥΓΡΑΣΙΑ.
2) Το εύρος τιμών των μεταβλητών εισόδου.
3) Τις συναρτήσεις συμμετοχής των μεταβλητών εισόδου (membership functions of
input variables).
4) Τις μεταβλητές εξόδου (output variables) ΑΝΕΜΙΣΤΗΡΑΣ και
ΑΦΥΓΡΑΝΤΗΡΑΣ.
5) Το εύρος τιμών των μεταβλητών εξόδου.
6) Τις συναρτήσεις συμμετοχής των μεταβλητών εξόδου (membership functions of
output variables).
7) Τους κανόνες που σχετίζουν τις μεταβλητές εισόδου με τις μεταβλητές εξοδου
(rules and statements).
49
Στο τελευταίο βήμα της διαδικασίας πραγματοποιείται ο έλεγχος των αποτελεσμάτων
που εξάγει το σύστημα, ώστε να προβούμε σε διορθώσεις σε περίπτωση που δεν
συνάδουν με το σχεδιασμό μας.
Για να επιτύχουμε τούτο το σκοπό, θα χρησιμοποιήσουμε τον RulerView της
εργαλειοθήκης FuzzyLogic.
Το RulerView παρέχει την δυνατότητα εισαγωγής τιμών για τις ανεξάρτητες
μεταβλητές και αποδίδει τις αντίστοιχες εξαρτημένες μεταβλητές βασιζόμενο στους
κανόνες και τις εντολές που έχει αποδώσει ο σχεδιαστής.
Για να ανοίξουμε το RulerView, κατευθυνόμαστε από την αρχική οθόνη του
Ασαφούς Μοντέλου ως εξής (βλ. παρακάτω εικόνες)
Επιλεγούμε από το VIEWRULES (EIKONA 19) και έπειτα στην νέα οθόνη
θέτουμε τιμές για τις μεταβλητές εισόδου στο πεδίο input (ΕΙΚΟΝΑ 20)
50
ΕΙΚΟΝΑ 19.
51
ΕΙΚΟΝΑ 20.
52
Υπενθυμίζουμε ότι για τις ανεξάρτητες μεταβλητές ισχύουν τα εξής
ΑΝΕΜΙΣΤΗΡΑΣ (FANSPEED/ FS)
FS: LOW (1,2) // MEDIUM (2,3) // HIGH (3,4)
ΑΦΥΓΡΑΝΤΗΡΑΣ (DEHUMIDIFIER/ DH)
DH: OFF (0,1) // LOW (1,2) // HIGH (2,3)
Θέτοντας τιμές στις μεταβλητές TEMPERATURE και HUMIDITY, μεταβάλλονται
ανάλογα οι εξαρτημένες μεταβλητές FANSPEED και DEHUMIDIFIER
ΣΥΜΠΕΡΑΣΜΑΤΑ.
Η Ασαφής Λογική είναι μια τεχνική, η οποία χρησιμοποιείται ευρέως σε ένα πλήθος
επιστήμων και εφαρμογών. Τα θεμέλιά της εντοπίζονται σε μαθηματικές και λογικές
δομές και ο μαθηματικός LotfiZadeh ήταν ο πρώτος που καθιέρωσε τον ορό ασαφές
σύνολο και ασαφής λογική το 1965.
Τεχνικές της Ασαφούς Λογικής χρησιμοποιούνται σε εφαρμογές και κλάδους όπως η
μηχανική, οικονομικά, ηλεκτρολογία, χημεία, φυσική, αεροναυπηγική, νευρωνικά
δίκτυα, υπολογιστές, κινηματογράφο κτλ.
Στην εργασία μας παρουσιάσαμε ένα βασικό μοντέλο λειτουργιάς ενός aircondition
με δυο μεταβλητές εισόδου (Θερμοκρασία και Υγρασία) και δυο μεταβλητές εξόδου
(Ανεμιστήρας και Αφυγραντηρας). Σκοπός μας ήταν να γίνουν κατανοητές η βασική
θεωρία και οι δομές που στηρίζεται η Ασαφής Λογική καθώς και η ανάπτυξη του
μοντέλου με το λογισμικό Matlab.
Αναπτύχθηκαν έννοιες όπως 1) Ασαφές Σύνολο (fuzzy set) 2) Γλωσσικές
Μεταβλητές (linguistic variables) 3) Συναρτήσεις Συμμετοχής (membership
functions) 4) Ασαφείς Κανόνες και Προτάσεις (fuzzy rules and statements).
Τούτα αποτελούν τα θεμέλια ώστε να μπορεί ο αναγνώστης να κατανοήσει πιο
πολύπλοκες έννοιες και θεωρίες καθώς και πιο προχωρημένα μοντέλα.
Το Matlab είναι ένα πρόγραμμα το οποίο έχει πραγματικά πολλές δυνατότητες και
αξίζει η ενασχόληση και εκμάθηση του τρόπου λειτουργιάς του. Για κάποιον που θα
ασχοληθεί για πρώτη φορά, συστήνουμε να ξεκινήσει με το manual του Matlab
53
καθώς και με τα παραδείγματα και τις έτοιμες εφαρμογές που διαθέτει, ώστε να γίνει
κατανοητός ο τρόπος λειτουργιάς του. Επειδή διαθέτει ένα μεγάλο πλήθος
εφαρμογών και εργαλείων, καλό θα ήταν η αρχή να γίνει πάνω σε ένα αντικείμενο
που ο αναγνώστης γνωρίζει ή είναι εξοικειωμένος με αυτό.
Προτείνουμε για κάποιον που λειτούργει πρώτη φορά το Matlab και επιθυμεί να
εξοικειωθεί, να αρχίσει με τα εξής toolboxes και τις εφαρμογές τους 1) Statistics and
Machine Learning Toolbox 2) Curve Fitting Toolbox 3) OptimizationToolbox
4) Symbolic Math Toolbox.
Τουτα τα toolboxes αντιστοιχούν σε εφαρμογές μαθηματικών και στατιστικής,
αντικείμενα που είναι γνωστά είτε από το λύκειο είτε από κάποια ανώτερη σχολή.
Για όσους ασχολούνται με οικονομικές επιστήμες ή συναφή αντικείμενα
(χρηματοοικονομικά, επενδύσεις, τραπεζικά, χρηματιστηριακά κτλ) τα επόμενα
toolboxes θα φάνουν πολύ χρήσιμα 1) Econometrics Toolbox 2) FinancialToolbox 3)
Financial Instruments Toolbox 4) Trading Toolbox 5) Risk Management Toolbox.
Τελειώνοντας, ένα πολύ καλό εργαλείο που διαθέτει το Matlab είναι το Simulink
(Simulation and Model-Base Design), όπου ο ερευνητής έχει την δυνατότητα να
αναπτύξει το δικό του μοντέλο ή σύστημα, να το τρέξει, ελέγξει, διορθώσει
οποιαδήποτε προβλήματα προκύψουν και έπειτα να το ‘’πακετάρει’’ ως
ολοκληρωμένο πρόγραμμα το οποίο θα βγει στην αγορά για χρήση. Πολυεθνικές
εταιρίες και ερευνητικά κέντρα (π.χ. Fujitsu, NASA, Huawei) χρησιμοποιούν το
Matlab και το Simulink, προτού προωθήσουν το προϊόν ή την υπηρεσία για χρήση.
54
ΒΙΒΛΙΟΓΡΑΦΙΑ- ΑΝΑΦΟΡΕΣ
[1] Εισαγωγή στην Ασαφή Λογική. (Θεοδώρου Α. Γιάννης. Εκδόσεις Τζιολα- 2000)
[2] Μαθηματική λογική. Θεωρία και πράξη (Τουρλακης Γεώργιος. Πανεπιστημιακές
εκδόσεις Κρήτης- 2011)
[3] Scientific theories and the computational theory of perceptions-A structuralis view
including fuzzy sets (Rudolf Seising-2007)
[4] Fuzzy Logic, knowledge and natural language (Gaetano Licata- 2012)
[5] Fuzzy sets, fuzzy logic and fuzzy systems (Lotfi A. Zadeh- 1996)
[6] Fuzzy sets, fuzzy logic, fuzzy methods with applications.
(Hans Bandemer, Siegfried Gottwald- 1995)
[7] Advances in the linguistic synthesis of fuzzy controllers (Ebrahim Mamdani-
1976)
[8] Structure identification of fuzzy model (Michio Sugeno, Geuntaek Kang- 1988)
[9] A fuzzy logic based approach to qualitative modeling (Michio Sugeno and
Takahiro Yasukawa- 1993)
[10] Twenty years of fuzzy control experiences gained and lessons learnt
Ebrahim Mamdani- 1993)
[11] Fuzzy sets and fuzzy logic. Theory and applications (George J. Klir, Bo Yuan-
1995)
[12] Fuzzy description logics from a mathematical fuzzy logic point of view (Marco
Cerami- 2012)
[13] Matlab 2013 manual
[14] Matlab Fuzzy Logic Toolbox manual

Más contenido relacionado

La actualidad más candente

Κεφ. 8 Εντολές Επιλογής και Επανάληψης
Κεφ. 8 Εντολές Επιλογής και ΕπανάληψηςΚεφ. 8 Εντολές Επιλογής και Επανάληψης
Κεφ. 8 Εντολές Επιλογής και Επανάληψης
Ιωάννου Γιαννάκης
 
ΛΙΘΟΣΦΑΙΡΑ ΛΙΘΟΣΦΑΙΡΙΚΕΣ ΠΛΑΚΕΣ
ΛΙΘΟΣΦΑΙΡΑ ΛΙΘΟΣΦΑΙΡΙΚΕΣ ΠΛΑΚΕΣΛΙΘΟΣΦΑΙΡΑ ΛΙΘΟΣΦΑΙΡΙΚΕΣ ΠΛΑΚΕΣ
ΛΙΘΟΣΦΑΙΡΑ ΛΙΘΟΣΦΑΙΡΙΚΕΣ ΠΛΑΚΕΣ
mary nastakou
 
Σημειώσεις ανάπτυξη εφαρμογών Δομη επανάληψης
Σημειώσεις ανάπτυξη εφαρμογών Δομη επανάληψηςΣημειώσεις ανάπτυξη εφαρμογών Δομη επανάληψης
Σημειώσεις ανάπτυξη εφαρμογών Δομη επανάληψης
Θανάσης Δρούγας
 
ΣΕΝΑΡΙΟ Α3.2 ΚΑΡΤΕΣΙΑΝΕΣ ΣΥΝΤΕΤΑΓΜΑΝΕΣ - ΓΡΑΦΙΚΗ ΠΑΡΑΣΤΑΣΗ ΣΥΝΑΡΤΗΣΗΣ
ΣΕΝΑΡΙΟ Α3.2 ΚΑΡΤΕΣΙΑΝΕΣ ΣΥΝΤΕΤΑΓΜΑΝΕΣ - ΓΡΑΦΙΚΗ ΠΑΡΑΣΤΑΣΗ ΣΥΝΑΡΤΗΣΗΣΣΕΝΑΡΙΟ Α3.2 ΚΑΡΤΕΣΙΑΝΕΣ ΣΥΝΤΕΤΑΓΜΑΝΕΣ - ΓΡΑΦΙΚΗ ΠΑΡΑΣΤΑΣΗ ΣΥΝΑΡΤΗΣΗΣ
ΣΕΝΑΡΙΟ Α3.2 ΚΑΡΤΕΣΙΑΝΕΣ ΣΥΝΤΕΤΑΓΜΑΝΕΣ - ΓΡΑΦΙΚΗ ΠΑΡΑΣΤΑΣΗ ΣΥΝΑΡΤΗΣΗΣ
pliakas
 

La actualidad más candente (20)

ΘΕΜΑΤΑ ΦΥΣΙΚΗΣ Α' ΓΥΜΝΑΣΙΟΥ 2018
ΘΕΜΑΤΑ ΦΥΣΙΚΗΣ Α' ΓΥΜΝΑΣΙΟΥ 2018ΘΕΜΑΤΑ ΦΥΣΙΚΗΣ Α' ΓΥΜΝΑΣΙΟΥ 2018
ΘΕΜΑΤΑ ΦΥΣΙΚΗΣ Α' ΓΥΜΝΑΣΙΟΥ 2018
 
Κεφ. 8 Εντολές Επιλογής και Επανάληψης
Κεφ. 8 Εντολές Επιλογής και ΕπανάληψηςΚεφ. 8 Εντολές Επιλογής και Επανάληψης
Κεφ. 8 Εντολές Επιλογής και Επανάληψης
 
Μαθηματικές ιστορίες
Μαθηματικές ιστορίεςΜαθηματικές ιστορίες
Μαθηματικές ιστορίες
 
κεφ 3ο τριγωνομετρία
κεφ 3ο τριγωνομετρίακεφ 3ο τριγωνομετρία
κεφ 3ο τριγωνομετρία
 
γεωγραφια α γυμνασίου 2012 2013
γεωγραφια α γυμνασίου 2012   2013γεωγραφια α γυμνασίου 2012   2013
γεωγραφια α γυμνασίου 2012 2013
 
Aναπαραγωγη ζωων
Aναπαραγωγη ζωωνAναπαραγωγη ζωων
Aναπαραγωγη ζωων
 
ΜΕΘΟΔΟΛΟΓΙΑ ΓΙΑ ΤΗΝ ΑΠΟΔΕΙΞΗ ΥΠΑΡΞΗΣ ΡΙΖΩΝ ΣΥΝΕΧΟΥΣ ΚΑΙ ΠΑΡΑΓΩΓΙΣΙΜΗΣ ΣΥΝΑΡΤΗΣΗΣ
ΜΕΘΟΔΟΛΟΓΙΑ ΓΙΑ ΤΗΝ ΑΠΟΔΕΙΞΗ ΥΠΑΡΞΗΣ ΡΙΖΩΝ ΣΥΝΕΧΟΥΣ ΚΑΙ ΠΑΡΑΓΩΓΙΣΙΜΗΣ ΣΥΝΑΡΤΗΣΗΣΜΕΘΟΔΟΛΟΓΙΑ ΓΙΑ ΤΗΝ ΑΠΟΔΕΙΞΗ ΥΠΑΡΞΗΣ ΡΙΖΩΝ ΣΥΝΕΧΟΥΣ ΚΑΙ ΠΑΡΑΓΩΓΙΣΙΜΗΣ ΣΥΝΑΡΤΗΣΗΣ
ΜΕΘΟΔΟΛΟΓΙΑ ΓΙΑ ΤΗΝ ΑΠΟΔΕΙΞΗ ΥΠΑΡΞΗΣ ΡΙΖΩΝ ΣΥΝΕΧΟΥΣ ΚΑΙ ΠΑΡΑΓΩΓΙΣΙΜΗΣ ΣΥΝΑΡΤΗΣΗΣ
 
Β Γυμνασίου διαγώνισμα β τριμήνου 2015 16 - συναρτήσεις
Β Γυμνασίου διαγώνισμα β τριμήνου 2015 16 - συναρτήσειςΒ Γυμνασίου διαγώνισμα β τριμήνου 2015 16 - συναρτήσεις
Β Γυμνασίου διαγώνισμα β τριμήνου 2015 16 - συναρτήσεις
 
ΛΙΘΟΣΦΑΙΡΑ ΛΙΘΟΣΦΑΙΡΙΚΕΣ ΠΛΑΚΕΣ
ΛΙΘΟΣΦΑΙΡΑ ΛΙΘΟΣΦΑΙΡΙΚΕΣ ΠΛΑΚΕΣΛΙΘΟΣΦΑΙΡΑ ΛΙΘΟΣΦΑΙΡΙΚΕΣ ΠΛΑΚΕΣ
ΛΙΘΟΣΦΑΙΡΑ ΛΙΘΟΣΦΑΙΡΙΚΕΣ ΠΛΑΚΕΣ
 
Adamantia Spanaka 5th face to face tutorial
Adamantia Spanaka 5th face to face tutorialAdamantia Spanaka 5th face to face tutorial
Adamantia Spanaka 5th face to face tutorial
 
Ασκήσεις Φυσικής Β΄ Γυμνασίου: Θέση-Μετατόπιση-Απόσταση-Μέση Ταχύτητα
Ασκήσεις Φυσικής Β΄ Γυμνασίου: Θέση-Μετατόπιση-Απόσταση-Μέση  ΤαχύτηταΑσκήσεις Φυσικής Β΄ Γυμνασίου: Θέση-Μετατόπιση-Απόσταση-Μέση  Ταχύτητα
Ασκήσεις Φυσικής Β΄ Γυμνασίου: Θέση-Μετατόπιση-Απόσταση-Μέση Ταχύτητα
 
Διατροφικές Συνήθειες Εφήβων
Διατροφικές Συνήθειες ΕφήβωνΔιατροφικές Συνήθειες Εφήβων
Διατροφικές Συνήθειες Εφήβων
 
παδ
παδπαδ
παδ
 
Σημειώσεις ανάπτυξη εφαρμογών Δομη επανάληψης
Σημειώσεις ανάπτυξη εφαρμογών Δομη επανάληψηςΣημειώσεις ανάπτυξη εφαρμογών Δομη επανάληψης
Σημειώσεις ανάπτυξη εφαρμογών Δομη επανάληψης
 
ΣΕΝΑΡΙΟ Α3.2 ΚΑΡΤΕΣΙΑΝΕΣ ΣΥΝΤΕΤΑΓΜΑΝΕΣ - ΓΡΑΦΙΚΗ ΠΑΡΑΣΤΑΣΗ ΣΥΝΑΡΤΗΣΗΣ
ΣΕΝΑΡΙΟ Α3.2 ΚΑΡΤΕΣΙΑΝΕΣ ΣΥΝΤΕΤΑΓΜΑΝΕΣ - ΓΡΑΦΙΚΗ ΠΑΡΑΣΤΑΣΗ ΣΥΝΑΡΤΗΣΗΣΣΕΝΑΡΙΟ Α3.2 ΚΑΡΤΕΣΙΑΝΕΣ ΣΥΝΤΕΤΑΓΜΑΝΕΣ - ΓΡΑΦΙΚΗ ΠΑΡΑΣΤΑΣΗ ΣΥΝΑΡΤΗΣΗΣ
ΣΕΝΑΡΙΟ Α3.2 ΚΑΡΤΕΣΙΑΝΕΣ ΣΥΝΤΕΤΑΓΜΑΝΕΣ - ΓΡΑΦΙΚΗ ΠΑΡΑΣΤΑΣΗ ΣΥΝΑΡΤΗΣΗΣ
 
Επαναληπτικό διαγώνισμα Β Λυκείου Άλγεβρα - Πολυώνυμα
Επαναληπτικό διαγώνισμα Β Λυκείου Άλγεβρα - ΠολυώνυμαΕπαναληπτικό διαγώνισμα Β Λυκείου Άλγεβρα - Πολυώνυμα
Επαναληπτικό διαγώνισμα Β Λυκείου Άλγεβρα - Πολυώνυμα
 
Πυθαγόρειο θεώρημα - θωρία
Πυθαγόρειο θεώρημα - θωρίαΠυθαγόρειο θεώρημα - θωρία
Πυθαγόρειο θεώρημα - θωρία
 
Ένα απλό κύκλωμα
Ένα απλό κύκλωμαΈνα απλό κύκλωμα
Ένα απλό κύκλωμα
 
Διαγωνισμα Αρσάκειο μέχρι αντίστροφη συνάρτηση
Διαγωνισμα Αρσάκειο μέχρι αντίστροφη συνάρτησηΔιαγωνισμα Αρσάκειο μέχρι αντίστροφη συνάρτηση
Διαγωνισμα Αρσάκειο μέχρι αντίστροφη συνάρτηση
 
Διδακτικό σενάριο Α΄ Λυκείου [2021]
Διδακτικό σενάριο Α΄ Λυκείου [2021]Διδακτικό σενάριο Α΄ Λυκείου [2021]
Διδακτικό σενάριο Α΄ Λυκείου [2021]
 

Similar a Ασαφής Λογική (Fuzzy Logic). Βασικές αρχές και θεωρία. Ανάπτυξη εφαρμογής της λειτουργιάς ενός air condition με το λογισμικό Matlab 2013.

ΑΛΓΟΡΙΘΜΟΙ & ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ
ΑΛΓΟΡΙΘΜΟΙ & ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΑΛΓΟΡΙΘΜΟΙ & ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ
ΑΛΓΟΡΙΘΜΟΙ & ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ
evaplyta
 
ΑΕΠΠ: 15ο Φύλλο Ασκήσεων
ΑΕΠΠ: 15ο Φύλλο ΑσκήσεωνΑΕΠΠ: 15ο Φύλλο Ασκήσεων
ΑΕΠΠ: 15ο Φύλλο Ασκήσεων
Nikos Michailidis
 

Similar a Ασαφής Λογική (Fuzzy Logic). Βασικές αρχές και θεωρία. Ανάπτυξη εφαρμογής της λειτουργιάς ενός air condition με το λογισμικό Matlab 2013. (11)

Εφαρμογές Πληροφορικής - Α' τάξη ΓΕΛ
Εφαρμογές Πληροφορικής - Α' τάξη ΓΕΛΕφαρμογές Πληροφορικής - Α' τάξη ΓΕΛ
Εφαρμογές Πληροφορικής - Α' τάξη ΓΕΛ
 
εφαρμογές πληροφορικής α γενικού λυκείου
εφαρμογές πληροφορικής α γενικού λυκείουεφαρμογές πληροφορικής α γενικού λυκείου
εφαρμογές πληροφορικής α γενικού λυκείου
 
Στατιστική Επεξεργασία με SPSS
Στατιστική Επεξεργασία με SPSSΣτατιστική Επεξεργασία με SPSS
Στατιστική Επεξεργασία με SPSS
 
ΑΛΓΟΡΙΘΜΟΙ & ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ
ΑΛΓΟΡΙΘΜΟΙ & ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΑΛΓΟΡΙΘΜΟΙ & ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ
ΑΛΓΟΡΙΘΜΟΙ & ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ
 
Scratch xaralampidis
Scratch xaralampidisScratch xaralampidis
Scratch xaralampidis
 
διδακτικο σεναριο στη δομή επιλογής
διδακτικο σεναριο στη δομή επιλογήςδιδακτικο σεναριο στη δομή επιλογής
διδακτικο σεναριο στη δομή επιλογής
 
σημειώσεις συνάντηση 9
σημειώσεις συνάντηση 9σημειώσεις συνάντηση 9
σημειώσεις συνάντηση 9
 
ΣΗΜΕΙΩΣΕΙΣ 8
ΣΗΜΕΙΩΣΕΙΣ 8ΣΗΜΕΙΩΣΕΙΣ 8
ΣΗΜΕΙΩΣΕΙΣ 8
 
ΑΕΠΠ: 15ο Φύλλο Ασκήσεων
ΑΕΠΠ: 15ο Φύλλο ΑσκήσεωνΑΕΠΠ: 15ο Φύλλο Ασκήσεων
ΑΕΠΠ: 15ο Φύλλο Ασκήσεων
 
Newsletter no 28 - Ιούνιος 2020
Newsletter no 28 - Ιούνιος 2020Newsletter no 28 - Ιούνιος 2020
Newsletter no 28 - Ιούνιος 2020
 
Newsletter no 28
Newsletter no 28Newsletter no 28
Newsletter no 28
 

Más de stratos goumas

Επενδυτικές ιδέες για χαμηλά, μεσαία εισοδήματα και αρχάριους.
Επενδυτικές ιδέες για χαμηλά, μεσαία εισοδήματα και αρχάριους.Επενδυτικές ιδέες για χαμηλά, μεσαία εισοδήματα και αρχάριους.
Επενδυτικές ιδέες για χαμηλά, μεσαία εισοδήματα και αρχάριους.
stratos goumas
 
Τεχνικές εκτίμησης κινδύνου.
Τεχνικές εκτίμησης κινδύνου.Τεχνικές εκτίμησης κινδύνου.
Τεχνικές εκτίμησης κινδύνου.
stratos goumas
 
Ομήρου Οδύσσεια και θεωρία παιγνίων. Γνώριζε η Πηνελοπη από στρατηγική;
Ομήρου Οδύσσεια και θεωρία παιγνίων. Γνώριζε η Πηνελοπη από στρατηγική;Ομήρου Οδύσσεια και θεωρία παιγνίων. Γνώριζε η Πηνελοπη από στρατηγική;
Ομήρου Οδύσσεια και θεωρία παιγνίων. Γνώριζε η Πηνελοπη από στρατηγική;
stratos goumas
 
Εξέλιξη του Δείκτη Τιμών Τροφίμων κατά τη διάρκεια των ετών 1990-2012.
Εξέλιξη του Δείκτη Τιμών Τροφίμων κατά τη διάρκεια των ετών 1990-2012.Εξέλιξη του Δείκτη Τιμών Τροφίμων κατά τη διάρκεια των ετών 1990-2012.
Εξέλιξη του Δείκτη Τιμών Τροφίμων κατά τη διάρκεια των ετών 1990-2012.
stratos goumas
 
Λογιστική- Χρηματοοικονομική ανάλυση με χρήση αριθμοδεικτών. Περίπτωση ναυτιλ...
Λογιστική- Χρηματοοικονομική ανάλυση με χρήση αριθμοδεικτών. Περίπτωση ναυτιλ...Λογιστική- Χρηματοοικονομική ανάλυση με χρήση αριθμοδεικτών. Περίπτωση ναυτιλ...
Λογιστική- Χρηματοοικονομική ανάλυση με χρήση αριθμοδεικτών. Περίπτωση ναυτιλ...
stratos goumas
 
Ανάλυση και μελέτη του δείκτη ανθρώπινης ανάπτυξης (HDI) μεταξύ ανεπτυγμένων,...
Ανάλυση και μελέτη του δείκτη ανθρώπινης ανάπτυξης (HDI) μεταξύ ανεπτυγμένων,...Ανάλυση και μελέτη του δείκτη ανθρώπινης ανάπτυξης (HDI) μεταξύ ανεπτυγμένων,...
Ανάλυση και μελέτη του δείκτη ανθρώπινης ανάπτυξης (HDI) μεταξύ ανεπτυγμένων,...
stratos goumas
 
Αναλογία εργαζομένων ελληνικού δημοσίου τομέα σε σχέση με δεκαπέντε πολυεθνικ...
Αναλογία εργαζομένων ελληνικού δημοσίου τομέα σε σχέση με δεκαπέντε πολυεθνικ...Αναλογία εργαζομένων ελληνικού δημοσίου τομέα σε σχέση με δεκαπέντε πολυεθνικ...
Αναλογία εργαζομένων ελληνικού δημοσίου τομέα σε σχέση με δεκαπέντε πολυεθνικ...
stratos goumas
 
Επίδραση και αλληλεξάρτηση μεταξύ των μεγαλυτέρων χρηματαγορών. Σχέση μακροχρ...
Επίδραση και αλληλεξάρτηση μεταξύ των μεγαλυτέρων χρηματαγορών. Σχέση μακροχρ...Επίδραση και αλληλεξάρτηση μεταξύ των μεγαλυτέρων χρηματαγορών. Σχέση μακροχρ...
Επίδραση και αλληλεξάρτηση μεταξύ των μεγαλυτέρων χρηματαγορών. Σχέση μακροχρ...
stratos goumas
 

Más de stratos goumas (20)

Επενδυτικές ιδέες για χαμηλά, μεσαία εισοδήματα και αρχάριους.
Επενδυτικές ιδέες για χαμηλά, μεσαία εισοδήματα και αρχάριους.Επενδυτικές ιδέες για χαμηλά, μεσαία εισοδήματα και αρχάριους.
Επενδυτικές ιδέες για χαμηλά, μεσαία εισοδήματα και αρχάριους.
 
Bitcoin. Είναι εφικτό να γίνει ο διάδοχος του δολαρίου;.pdf
Bitcoin. Είναι εφικτό να γίνει ο διάδοχος του δολαρίου;.pdfBitcoin. Είναι εφικτό να γίνει ο διάδοχος του δολαρίου;.pdf
Bitcoin. Είναι εφικτό να γίνει ο διάδοχος του δολαρίου;.pdf
 
Τεχνικές εκτίμησης κινδύνου.
Τεχνικές εκτίμησης κινδύνου.Τεχνικές εκτίμησης κινδύνου.
Τεχνικές εκτίμησης κινδύνου.
 
Τεχνική και Θεμελιώδης Ανάλυση μετοχών και εταιριών
Τεχνική και Θεμελιώδης Ανάλυση μετοχών και εταιριώνΤεχνική και Θεμελιώδης Ανάλυση μετοχών και εταιριών
Τεχνική και Θεμελιώδης Ανάλυση μετοχών και εταιριών
 
Στατιστικές Κατανομές και Πιθανότητες. Θεωρία και παραδείγματα.
Στατιστικές Κατανομές και Πιθανότητες. Θεωρία και παραδείγματα.Στατιστικές Κατανομές και Πιθανότητες. Θεωρία και παραδείγματα.
Στατιστικές Κατανομές και Πιθανότητες. Θεωρία και παραδείγματα.
 
Πολλαπλή γραμμική παλινδρόμηση με χρήση excel 2003. Θεωρία και παραδείγματα.
Πολλαπλή γραμμική παλινδρόμηση με χρήση excel 2003. Θεωρία και παραδείγματα.Πολλαπλή γραμμική παλινδρόμηση με χρήση excel 2003. Θεωρία και παραδείγματα.
Πολλαπλή γραμμική παλινδρόμηση με χρήση excel 2003. Θεωρία και παραδείγματα.
 
Σχηματισμός χαρτοφυλακίου με χρήση Excel. Θεωρία και πράξη
Σχηματισμός χαρτοφυλακίου με χρήση Excel. Θεωρία και πράξηΣχηματισμός χαρτοφυλακίου με χρήση Excel. Θεωρία και πράξη
Σχηματισμός χαρτοφυλακίου με χρήση Excel. Θεωρία και πράξη
 
Ομήρου Οδύσσεια και θεωρία παιγνίων. Γνώριζε η Πηνελοπη από στρατηγική;
Ομήρου Οδύσσεια και θεωρία παιγνίων. Γνώριζε η Πηνελοπη από στρατηγική;Ομήρου Οδύσσεια και θεωρία παιγνίων. Γνώριζε η Πηνελοπη από στρατηγική;
Ομήρου Οδύσσεια και θεωρία παιγνίων. Γνώριζε η Πηνελοπη από στρατηγική;
 
Παρουσίαση: Γραμμικός Προγραμματισμός (Αλγόριθμος Simplex). Λύση δυο προβλημά...
Παρουσίαση: Γραμμικός Προγραμματισμός (Αλγόριθμος Simplex). Λύση δυο προβλημά...Παρουσίαση: Γραμμικός Προγραμματισμός (Αλγόριθμος Simplex). Λύση δυο προβλημά...
Παρουσίαση: Γραμμικός Προγραμματισμός (Αλγόριθμος Simplex). Λύση δυο προβλημά...
 
Εφαρμογές Οικονομικών-Μαθηματικών με χρήση excel 2003. Θεωρία και πράξη.
Εφαρμογές Οικονομικών-Μαθηματικών με χρήση excel 2003. Θεωρία και πράξη.Εφαρμογές Οικονομικών-Μαθηματικών με χρήση excel 2003. Θεωρία και πράξη.
Εφαρμογές Οικονομικών-Μαθηματικών με χρήση excel 2003. Θεωρία και πράξη.
 
Εξέλιξη του Δείκτη Τιμών Τροφίμων κατά τη διάρκεια των ετών 1990-2012.
Εξέλιξη του Δείκτη Τιμών Τροφίμων κατά τη διάρκεια των ετών 1990-2012.Εξέλιξη του Δείκτη Τιμών Τροφίμων κατά τη διάρκεια των ετών 1990-2012.
Εξέλιξη του Δείκτη Τιμών Τροφίμων κατά τη διάρκεια των ετών 1990-2012.
 
Διαχρονική εξέλιξη των τιμών του πετρελαίου και της βενζίνης.
Διαχρονική εξέλιξη των τιμών του πετρελαίου και της βενζίνης.Διαχρονική εξέλιξη των τιμών του πετρελαίου και της βενζίνης.
Διαχρονική εξέλιξη των τιμών του πετρελαίου και της βενζίνης.
 
Εξέλιξη ελληνικών τραπεζικών καταθέσεων κατά τη διάρκεια των ετών 2001-2010.
Εξέλιξη ελληνικών τραπεζικών καταθέσεων κατά τη διάρκεια των ετών 2001-2010.Εξέλιξη ελληνικών τραπεζικών καταθέσεων κατά τη διάρκεια των ετών 2001-2010.
Εξέλιξη ελληνικών τραπεζικών καταθέσεων κατά τη διάρκεια των ετών 2001-2010.
 
Σύγκριση κύκλου εργασιών δέκα πολυεθνικών εταιριών με το ΑΕΠ δέκα κρατών και ...
Σύγκριση κύκλου εργασιών δέκα πολυεθνικών εταιριών με το ΑΕΠ δέκα κρατών και ...Σύγκριση κύκλου εργασιών δέκα πολυεθνικών εταιριών με το ΑΕΠ δέκα κρατών και ...
Σύγκριση κύκλου εργασιών δέκα πολυεθνικών εταιριών με το ΑΕΠ δέκα κρατών και ...
 
Λογιστική- Χρηματοοικονομική ανάλυση με χρήση αριθμοδεικτών. Περίπτωση ναυτιλ...
Λογιστική- Χρηματοοικονομική ανάλυση με χρήση αριθμοδεικτών. Περίπτωση ναυτιλ...Λογιστική- Χρηματοοικονομική ανάλυση με χρήση αριθμοδεικτών. Περίπτωση ναυτιλ...
Λογιστική- Χρηματοοικονομική ανάλυση με χρήση αριθμοδεικτών. Περίπτωση ναυτιλ...
 
Ανάλυση και μελέτη του δείκτη ανθρώπινης ανάπτυξης (HDI) μεταξύ ανεπτυγμένων,...
Ανάλυση και μελέτη του δείκτη ανθρώπινης ανάπτυξης (HDI) μεταξύ ανεπτυγμένων,...Ανάλυση και μελέτη του δείκτη ανθρώπινης ανάπτυξης (HDI) μεταξύ ανεπτυγμένων,...
Ανάλυση και μελέτη του δείκτη ανθρώπινης ανάπτυξης (HDI) μεταξύ ανεπτυγμένων,...
 
Αναλογία εργαζομένων ελληνικού δημοσίου τομέα σε σχέση με δεκαπέντε πολυεθνικ...
Αναλογία εργαζομένων ελληνικού δημοσίου τομέα σε σχέση με δεκαπέντε πολυεθνικ...Αναλογία εργαζομένων ελληνικού δημοσίου τομέα σε σχέση με δεκαπέντε πολυεθνικ...
Αναλογία εργαζομένων ελληνικού δημοσίου τομέα σε σχέση με δεκαπέντε πολυεθνικ...
 
Παρουσίαση και μελέτη μακροοικονομικών μεγεθών κρατών της Ε.Ε., ΗΠΑ και Ιαπων...
Παρουσίαση και μελέτη μακροοικονομικών μεγεθών κρατών της Ε.Ε., ΗΠΑ και Ιαπων...Παρουσίαση και μελέτη μακροοικονομικών μεγεθών κρατών της Ε.Ε., ΗΠΑ και Ιαπων...
Παρουσίαση και μελέτη μακροοικονομικών μεγεθών κρατών της Ε.Ε., ΗΠΑ και Ιαπων...
 
Επίδραση και αλληλεξάρτηση μεταξύ των μεγαλυτέρων χρηματαγορών. Σχέση μακροχρ...
Επίδραση και αλληλεξάρτηση μεταξύ των μεγαλυτέρων χρηματαγορών. Σχέση μακροχρ...Επίδραση και αλληλεξάρτηση μεταξύ των μεγαλυτέρων χρηματαγορών. Σχέση μακροχρ...
Επίδραση και αλληλεξάρτηση μεταξύ των μεγαλυτέρων χρηματαγορών. Σχέση μακροχρ...
 
Η επίδραση των διακυμάνσεων της τιμής του πετρελαίου στις χρηματιστηριακές απ...
Η επίδραση των διακυμάνσεων της τιμής του πετρελαίου στις χρηματιστηριακές απ...Η επίδραση των διακυμάνσεων της τιμής του πετρελαίου στις χρηματιστηριακές απ...
Η επίδραση των διακυμάνσεων της τιμής του πετρελαίου στις χρηματιστηριακές απ...
 

Ασαφής Λογική (Fuzzy Logic). Βασικές αρχές και θεωρία. Ανάπτυξη εφαρμογής της λειτουργιάς ενός air condition με το λογισμικό Matlab 2013.

  • 1. 1 Ασαφής Λογική (Fuzzy Logic). Βασικές αρχές και θεωρία. Ανάπτυξη εφαρμογής της λειτουργιάς ενός air condition με το λογισμικό Matlab 2013. Γκούμας Στράτος. Πτυχιούχος Οικονομολόγος. MSc ‘Εφαρμοσμένη Οικονομική και Χρηματοοικονομική (Ε.Κ.Π.Α./ Τμήμα Οικονομικών)’ Team Site: A.E.A.C. Co.ProjectManager-SiteAdministrator e-mail: s_4goum@yahoo.com, My Blog, Twitter, Linkedin 09/09/2019 ΠΕΡΙΕΧΟΜΕΝΑ Περίληψη .......................................................................................................................2 Εισαγωγή- Ιστορική αναδρομή......................................................................................3 Εφαρμογές Fuzzy Logic ................................................................................................6 Βασικές έννοεις ασαφούς λογικής.................................................................................8 1) Ασαφές Σύνολο (Fuzzy Set)......................................................................................8 2) Ασαφείς Κανόνες και Προτάσεις (Fuzzy Rules and Statements) ...........................13 3) Γλωσσικές Μεταβλητες (LinguisticVariables)........................................................15 4) Συναρτήσεις Συμμετοχής (Membership Functions)................................................19 ____a) Τριγωνική Συνάρτηση Συμμετοχής (Triangle ή Triangular MF)....................21 ____b) Τραπεζοειδής Συνάρτηση Συμμετοχής (TrapezoidalMF)...............................22 ____c) Καμπανοειδής Συνάρτηση Συμμετοχής (Generalize Bell MF) .......................23 ____d) Γκαουσιανή Συνάρτηση Συμμετοχής (Gaussian MF).....................................24 ____e) S Συνάρτηση Συμμετοχής (S MF)...................................................................25 ____f) Pi Συνάρτηση Συμμετοχής (Pi MF) .................................................................26 ____g) Z Συνάρτηση Συμμετοχής (Z MF) ..................................................................27 ____h) Σιγμοειδής Συνάρτηση Συμμετοχης (Sigmoidal MF) .....................................28 Παρουσίαση του προγραμμάτος Matlab......................................................................30 Εφαρμογή λειτουργίας aircodition στο Matlab. ..........................................................31 Συμπεράσματα. ............................................................................................................52 Βιβλιογραφία- Αναφορές.............................................................................................54
  • 2. 2 ΠΕΡΙΛΗΨΗ Στην παρουσίαση αυτή θα ασχοληθούμε με την έννοια και τις εφαρμογές της Ασαφούς Λογικής (Fuzzy Logic). Αρχικά θα αναπτύξουμε τις έννοιες και την βασική θεωρία της Ασαφούς Λογικής, έπειτα τις μεθόδους καθώς και τις θεμελιώδεις τεχνικές ανάπτυξης ενός μοντέλου. Τελειώνοντας θα σχεδιάσουμε και θα παρουσιαστεί ένα παράδειγμα με την χρήση κατάλληλου λογισμικού. Στην εργασία μας θα χρησιμοποιήσουμε το πρόγραμμα MatLab version R2013, όπου περιέχει τυποποιημένα πακέτα εφαρμογών Fuzzy Logic (Fuzzy Logic Toolbox) και είναι αρκετά εύκολο στην χρήση του. Το πλεονέκτημα του συγκεκριμένου προγράμματος είναι ότι δεν χρειάζεται πολλές παραμετροποιήσεις, η εργαλειοθήκη Fuzzy Logic περιέχει αρκετά έτοιμα παραδείγματα τα οποία είναι κατανοητά και επίσης περιλαμβάνει ένα εγχειρίδιο χρήσης το οποίο καθοδηγεί βήμα προς βήμα για την ανάπτυξη και εκτέλεση ενός μοντέλου. Ωστόσο, ο αναγνώστης καλό θα ήταν να γνωρίζει και να κατανοεί μερικές βασικές έννοιες μαθηματικών- στατιστικής και προγραμματισμού, διότι ο σχεδιασμός ενός τέτοιου συστήματος βασίζεται στους κλάδους μαθηματικών και πληροφορικής. Keywords: fuzzy logic, fuzzy set, fuzzy rules, fuzzy information system, fuzzy logic membership functions, logical connectives operators, linguistic variables, universe of discourse, matlab, matlab fuzzy logic toolbox, matlab examples, matlab aircondition operation. Για να κατεβάσετε τα αρχεία του matlab με την εφαρμογή του aircondition πατήστε εδώ ή εδώ ή εδώ ## Αφιερωμένο εξαιρετικά, στην μικρή μας κόρη που γεννήθηκε τον Ιούλιο/2018 ##
  • 3. 3 ΕΙΣΑΓΩΓΗ- ΙΣΤΟΡΙΚΗ ΑΝΑΔΡΟΜΗ Η Ασαφής Λογική (Fuzzy Logic), είναι ένας κλάδος των μαθηματικών και ειδικότερα του κλάδου της μαθηματικής λογικής (mathematical logic) που εμπίπτει στα θέματα του προτασιακού λογισμού/ λογικής (propositional calculus/ logic). Η προτασιακή λογική μελετά τις λογικές προτάσεις οι οποίες σχηματίζονται από άλλες προτάσεις με την χρήση λογικών συνδέσμων (logical connectives). Λογικοί σύνδεσμοι είναι σύμβολα ή συναρτήσεις που χρησιμοποιούνται για να συνδέουν λογικές προτάσεις. Τα πιο γνωστά λογικά σύμβολα/ συναρτήσεις που μπορεί να έχουμε συναντήσει (είτε από τις σχολικές αίθουσες, είτε σε ανώτερες σχολές) είναι τα κάτωθι 1) AND // Σύμβολο «∧» 2) OR // Σύμβολο «∨» 3) NOT // Σύμβολο «¬» 4) XOR // Σύμβολο «⊕» 5) IF……… THEN………..ELSE // Σύμβολο «→» 6) IF AND ONLY IF // Σύμβολο «↔» 7) TRUE / FALSE
  • 4. 4 Οι πρώτες προσπάθειες για την βάση και οι αρχικές δομές της Ασαφούς Λογικής επετεύχθηκαν κατά την δεκαετία του 1920 από τον Jan Lukasiewicz (1878-1956), ο οποίος ήταν επιστήμων της λογικής και φιλόσοφος, και τον Alfred Tarski (1901- 1983), ο οποίος ήταν μαθηματικός. Αργότερα, γύρω στο 1965, εισήχθηκαν νέες έννοιες και παρουσιάστηκε πιο ολοκληρωμένα από τον LoftiZadeh (1921-2017), ο οποίος ήταν μαθηματικός και ηλεκτρολόγος-μηχανικός. Ο LoftiZadehπρότεινε τη έννοια του ασαφούς αριθμού (fuzzy number), του ασαφούς συνόλου (fuzzyset), ασαφή αλγορίθμου (fuzzy algorithm) και ασαφή λήψη αποφάσεων (fuzzy decision making). Μετέπειτα προστέθηκαν νέες έννοιες από τον Salii Viacheslav Nikolaevich (1939-), όπου όρισε την L-σχέση (L- relation ή FuzzyRelation) με αποτέλεσμα η Ασαφής Λογική να εξελιχθεί και να βρει εφαρμογές σε νέα πεδία επιστημών. Ακόμα και σήμερα η Ασαφής Λογική συνεχίζει να εξελίσσεται με νέες θεωρίες και εφαρμογές. Ο βασικός λόγος της ανάπτυξηςτης Ασαφούς Λογικής ήταν διότι πολλά προβλήματα δεν μπορούσαν να λυθούν με την χρήση των κλασσικών μεθόδων λογικής (BooleanLogic). Η βασική διαφορά που έγκειται μεταξύ Fuzzy Logic και Boolean Logic, είναι ότι η Boolean Logic λαμβάνει τιμές 0 και 1, ενώ η Fuzzy Logic λαμβάνει όλες τις ρητές τιμές μεταξύ του 0 και 1, με τις τιμές 0 και 1 να αποτελούν τις ακραίες τιμές. Με την καθημερινή ορολογία, θα λέγαμε ότι δεν είναι όλα άσπρα (value 1) ή μαύρα (value 0) αλλά υπάρχει και το γκρι (fuzzy logic values). Τα συστήματα παριστάνονται παραδοσιακά με μαθηματικό προγραμματισμό και αναλυτικά μοντέλα τα οποία διαφέρουν πολλές φόρες από την κοινή λογική σε δύο κυρίως σημεία:1) Δεν μπορούν να αντιμετωπίσουν κάποιο βαθμό πεποίθησης και 2) Δεν μπορούν να αντιμετωπίσουν ασυνεπή και ελλιπή στοιχεία. Τα περισσότερα εμπειρικά συστήματα προσπαθούν να χρησιμοποιήσουν λογικές τυποποιήσεις για να προσομοιώσουν την ανθρώπινη γνώση και τη συλλογιστική. Ο κύριος περιορισμός αυτών των συστημάτων είναι ότι δεν είναι ευέλικτα όταν οι πληροφορίες που απαιτούνται για την απάντηση ενός ερωτήματος είναι αβέβαιες ή ελλιπείς.
  • 5. 5 Αντιθέτως, ένας άνθρωπος, όταν αντιμετωπίζει ελλιπείς και αβέβαιες πληροφορίες, είναι σε θέση να τις διαχωρίσει, να συλλέξειτα στοιχεία που χρειάζεται και να καταλήξει σε κάποιο συμπέρασμα, το οποίο είναι ίσως αβέβαιο, αλλά επαρκές για να οδηγηθεί σε μια πρακτική απόφαση. Όταν αντιμετωπίζουμε ελλιπείς ή ασυνεπείς πληροφορίες, τότε η κλασσική λογική αποτυγχάνει και όλες οι προτάσεις αντιμετωπίζονται ως ισάξιες, ούτε περισσότεροή λιγότερο αληθείς ή ψευδείς. Για να γίνει κατανοητή η διαφορά παραθέτουμε το εξής παράδειγμα. ΠΑΡΑΔΕΙΓΜΑ Ο Η/Υ και η λειτουργία του βασίζεται στην Boolean Logic, καθώς τα ηλεκτρικά κυκλώματα λειτουργούν με βάση αν διοχετεύεται ρεύμα (τιμή 1) ή όχι (τιμή 0) και αναλόγως εκτελούνται οι εντολές του Η/Υ. Αντιθέτως, το κλιματιστικό (aircondition), βασίζεται σε εφαρμογή Fuzzy Logic. Ο προγραμματισμός του κλιματιστικού λειτουργεί περίπου ως εξής. Έστω ότι έχει ζέστη και ρυθμίζουμε την θερμοκρασία του κλιματιστικού στους 25 o C. Οι προγραμματισμένες εντολές για την ρύθμιση της θερμοκρασίας μπορεί να είναι οι εξής. Α) Αν θερμοκρασία δωματίου >35o C και διαφορά θερμοκρασίας δωματίου με ρύθμιση θερμοκρασίας >10o C τότε λειτουργία ανεμιστήρα στο ΔΥΝΑΤΟ. Β) Αν θερμοκρασία δωματίου μεταξύ 30o C και 35o C και διαφορά θερμοκρασίας δωματίου με ρύθμιση θερμοκρασίας <10o C τότε λειτουργία ανεμιστήρα στο ΜΕΣΑΙΟ. Γ) Αν θερμοκρασία δωματίου μεταξύ 25o C και 30o C και διαφορά θερμοκρασίας δωματίου με ρύθμιση θερμοκρασίας <5o C τότε λειτουργία ανεμιστήρα στο ΧΑΜΗΛΟ. Δ) Αν θερμοκρασία δωματίου μεταξύ 25 o C και 30o C και διαφορά θερμοκρασίας δωματίου με ρύθμιση θερμοκρασίας <2o C τότελειτουργία ανεμιστήρα σε ΑΝΑΜΟΝΗ.
  • 6. 6 Με ορούς προγραμματισμού, η παραπάνω σχέσεις δηλώνονται ως εξής Εστω ΘΕΡΜΟΚΡΑΣΙΑ ΔΩΜΑΤΙΟΥTINDOOR[HOT(>35 o C), WARM(25o C-35 o C), COLD<25o C)] Εστω ΡΥΘΜΙΖΟΜΕΝΗ ΘΕΡΜΟΚΡΑΣΙΑ TAIRCON Εστω ΛΕΙΤΟΥΡΓΙΑ ΑΝΕΜΙΣΤΗΡΑFANSPEED (HIGH, MEDIUM, LOW, IDLE) IF TΙΝDDOR>35 o C AND (TINDOOR -TAIRCON )>10o CTHEN FAN SPEED= HIGH IF 30o C<TΙΝDOOR < 35o C AND (TINDOOR -TAIRCON )<10o C THEN FAN SPEED= MEDIUM IF 25o C<TΙΝDOOR < 30o C AND (TINDOOR -TAIRCON )<5o C THEN FAN SPEED= MEDIUM IF 25o C<TΙΝDOOR< 30o C AND (TINDOOR -TAIRCON )<2o C THEN FAN SPEED= IDLE ΕΦΑΡΜΟΓΕΣ FUZZYLOGIC Στην καθημερινότητά μας, η έννοια της Ασαφούς Λογικής είναι ίσως άγνωστη, ωστόσο οι εφαρμογές της είναι ποικίλες και τις χρησιμοποιούμε συχνά. Μερικά πεδίαεφαρμογής είναι τα εξής 1) Η πρώτη προσπάθεια εφαρμογής επιτεύχθηκε στην Ιαπωνία και πιο συγκεκριμένα στον σιδηρόδρομο της πόλης Sendai. Τα αποτελέσματα ήταν να βελτιωθούν τα δρομολόγια και να εξυπηρετείται πιο έγκαιρα το κοινό, μειώθηκε ο χρόνος αναμονής, έγινε εξοικονόμηση στην κατανάλωση καύσιμων των τρένων κτλ 2) Συνεχίζοντας στην Ιαπωνία, ήταν οι πρώτοι που εφάρμοσαν την Ασαφή Λογική σε ηλεκτρικές συσκευές όπως τα πλυντήρια, οι ηλεκτρικές σκούπες και κλιματιστικά για την εξοικονόμηση ενέργειας. Λίγοαργότερα χρησιμοποιήθηκε, a) Στα αυτοκίνητα για τον έλεγχο της κατανάλωσης καύσιμων, b) Σε εργοστάσια καθαρισμού υδάτων 3) Χρησιμοποιείται για μοντέλα πρόβλεψης των σεισμών και του καιρού
  • 7. 7 4) Χρηματοοικονομικές εφαρμογές (διαχείριση κεφαλαίων, αποτίμηση περιουσιακών στοιχείων, προβλέψεις για δείκτες-μετοχές κτλ) 5) Γραμμή παράγωγης σε εργοστάσια που παράγουν τυποποιημένα προϊόντα (π.χ. ηλεκτρικές συσκευές, εξαρτήματα Η/Υ κτλ) 6) Κινηματογράφο. Ταινίες τύπου όπως τοWorld of Warcraft ή Lord of the Rings έχουν χρησιμοποιήσει τεχνικές, όπου οι στρατοί και οι κινήσεις τους παράχθηκαν μέσω συστημάτων fuzzy logic. 7) Μεταφορές (πλοία, αεροπλάνα) 8) Διαστημόπλοια και δορυφόροι 9) Ιατρική (π.χ. ακτινολογία, διαγνώσεις) 10) Ρομποτική και αυτοματισμοί. Αξίζει να σημειωθεί ότι από τους πρωτοπόρους ερευνητές που εφάρμοσαν πρακτικά τις μεθόδους ασαφούς λογικήςήταν οι Mamdani Ebrahim και Assilian Sedrak, όπου κατασκεύασαν έναν ασαφή ελεγκτή (fuzzy controller) για έλεγχο μιας ατμομηχανής το 1975 (Mamdani- Assilian model), καθώς και ο Michio Sugeno , ο οποίος εφάρμοσε ένα ασαφή ελεγκτή σε ένα εργοστάσιο καθαρισμούυδάτων (1980). Λίγα έτη αργότερα (1985) ο Michio Sugeno σε συνεργασία με τους Tomohiro Takagi και Kang Guen-Taek εφάρμοσαν τεχνικές ρομποτικής στην βιομηχανία οχημάτων (T-S-K model). Πάνω σε αυτά τα μοντέλα έχουν στηριχθεί σχεδόν όλοι οι μεταγενέστεροι ερευνητές, οι οποίοι με τις κατάλληλες προσθήκες και βελτιώσεις τα έχουν εξελίξει σε υψηλότερο επίπεδο. Διαπιστώνουμε ότι η Ασαφής Λογική έχει ένα ευρύ πεδίο εφαρμογών και η χρήση της διευκολύνει τόσο την παράγωγη προϊόντων όσο και την βέλτιστη διαχείριση πόρων. Το πλεονέκτημα, έγκειται στο γεγονός ότι είναι σχετικά εύκολα κατανοητή, αφού προσομοιώνει ουσιαστικά την ανθρώπινη σκέψη και την γλωσσική επικοινωνία. Επίσης είναι εύκολη η μοντελοποίηση αυθαίρετων δεδομένων, συνδυάζεται με άλλες τεχνικές και υπάρχει ανεκτικότητα σε μη-ακριβή δεδομένα. Ωστόσο, στον αντίποδα, όταν απαιτείται μεγάλη ακρίβεια στην παραγωγή αποτελεσμάτωντότε δεν ενδείκνυται η χρήση της.
  • 8. 8 Επιπλέον σε περιπτώσεις όπου α) Ένα πρόβλημα δύναται να λυθεί με άλλες τεχνικές β) Υπάρχουν ευκολότερες τεχνικές για την εύρεση λύσης γ) Υπάρχουν ήδη εναλλακτικές τεχνικές οι οποίες έχουν εφαρμοστεί για την λύση ενός προβλήματος και είναι αποτελεσματικές, τότε η χρήση της Ασαφούς Λογικής είναι περιττή. Οι τεχνικές της ΑσαφούςΛογικής δεν είναι πάντοτε οι βέλτιστες και πολλές φόρες προκύπτουν προβλήματα, όπου με την χρήση διαφορετικών μεθόδων θα αποφεύγονταν. Γενικά, καλο θα είναι να ζυγίζονται τα πλεονέκτημα και τα μειονεκτήματα της χρήσης της Ασαφούς Λογικής έναντι εναλλακτικών τεχνικών για την λύσης ενός προβλήματος και έπειτα να καταλήγουμε στην επιλογή μας. ΒΑΣΙΚΕΣ ΕΝΝΟΕΙΣ ΑΣΑΦΟΥΣ ΛΟΓΙΚΗΣ 1) ΑΣΑΦΕΣ ΣΥΝΟΛΟ (FUZZYSET) Από τις αρχικές έννοιες που θα συναντήσουμε στην ΑσαφήΛογική, είναι η έννοια τους Ασαφούς Συνόλου (Fuzzy Set). Στην κλασική θεωρία των συνόλων, ένα σύνολο αποτελείται από ένα πεπερασμένο ή άπειρο αριθμό στοιχείων και μπορεί να αναπαρασταθεί από την απαρίθμηση των στοιχείων του ως εξής: Τα στοιχεία όλων των υπό μελέτη συνόλων ανήκουν σε ένα υπερσύνολο αναφοράς (Universe of Discourse, U),το οποίο έστω ότι το ονομάζουμε U. Αν αυτά τα στοιχεία αi( i=1,….,n ) του Α είναι όλα μαζί ένα υποσύνολο του υπερσυνόλου αναφοράς U, το σύνολο Α μπορεί να αναπαρασταθεί από όλα τα στοιχεία xЄU,χρησιμοποιώντας την χαρακτηριστική συνάρτηση (indicator function or characteristic function) CRISP SET 𝜇 𝛢(𝑥) = � 1 𝛼𝜈 𝑥 ∈ 𝑈 0 𝛼𝜈𝑥 ∉ 𝑈 { }1, 2, 3,...., nA a a a a=
  • 9. 9 Στην κλασική θεωρία των συνόλων το μΑ(x) έχει μόνο τις τιμές 0 (false) και 1 (true), δηλαδή το στοιχείο x είτε ανήκει είτε δεν ανήκει στο σύνολο αναφοράς U. Τέτοια σύνολα επίσης ονομάζονται crisp σύνολα (crisp set). Πολλές φορές συναντώνται και με τις ονομασίες classical sets ή ordinary sets Τα μη-crisp σύνολα ονομάζονται ασαφή σύνολα (fuzzy sets). Ασαφές Σύνολο(fuzzy set) είναι οποιοδήποτε σύνολο το οποίο επιτρέπει τα μέλη του να έχουν διαφορετικούς βαθμούς συμμετοχής (ο οποίος προσδιορίζεται από την συνάρτηση συμμετοχής) στο διάστημα [0,1]. Το ασαφές σύνολο είναι ένα ζεύγος (U,m) όπουU είναι το σύνολο αναφοράς και m είναι η συνάρτηση συμμετοχής (m:U[0,1]). Για κάθε x το οποίο ανήκει στο U (∀x∊U), η τιμή m(x) ονομάζεται βαθμός συμμετοχής του x στο (U,m). Η συνάρτηση m=μA καλείται συνάρτηση συμμετοχής του ασαφές συνόλου A=(U,m) (Μembership Function- MF ή μA) Η παραπάνω χαρακτηριστική συνάρτηση επεκτείνεται πλέον ως εξής FUZZY SET 𝜇 𝛢(𝑥) � 0 0 < 𝜇 𝛢(𝑥) < 1 1 𝑥 ∉ 𝑈 (𝑛𝑜 𝑚𝑒𝑚𝑏𝑒𝑟) 𝑥 𝑓𝑢𝑧𝑧𝑦 𝑚𝑒𝑚𝑏𝑒𝑟𝑜𝑓𝑈 𝑥 ∈ 𝑈 (𝑓𝑢𝑙𝑙 𝑚𝑒𝑚𝑏𝑒𝑟) Η συνάρτηση συμμετοχής (m=μAήMF) υποδεικνύει το βαθμό κατά τον οποίο το σύνολο x ανήκει στο σύνολο U. Στο παρακάτω σχήμα (ΕΙΚΟΝΑ 1), παρατηρούμε μια συνάρτηση συμμετοχής ενός κλασσικού συνόλου (crisp set) και ενός ασαφές συνόλου (fuzzy set)
  • 10. 10 ΕΙΚΟΝΑ 1. Τα ασαφή σύνολα συχνά αναπαρίστανται από σύνολα διατεταγμένων ζευγών (ordered pairs) ως εξής 𝜇 𝛢(𝑥) = {𝜇1(𝑥)/𝑥1, 𝜇2(𝑥)/𝑥2, … 𝜇 𝑛(𝑥)/𝑥 𝑛, } , 𝛾𝜄𝛼 𝑥 ∈ 𝑈 Παραθέτουμε ένα παράδειγμα για να γίνει πιο κατανοητή η έννοια των crispsets και fuzzysets. A) CRISPSETS. Οι μέρες της εβδομάδας (Δευτέρα, Τρίτη…… Κυριακή), ανήκουν σε ένα σύνολοcrispset το οποίοονομάζουμε ‘’ΕΒΔΟΜΑΔΑ’’. Οποιαδήποτε άλλη έννοια δεν ανήκει στο crispset ‘’ΕΒΔΟΜΑΔΑ’’. Τα crisp sets, είναι σαφώς ορισμένα και με καθορισμένα όρια. B) FUZZYSET. Λαμβάνοντας υπόψη το παραπάνω παράδειγμα με τις ημέρες της εβδομάδας, θα ορίσουμε ένα σύνολο fuzzy set, το οποίο είναι το Σαββατοκύριακο. Με την έννοια του crispset, το Σαββατοκύριακο αποτελείται από το Σάββατο και την Κυριακή. Το crispset είναι ένα αυστηρό σύνολο και δεν χωράει καμία ανοχή στον ορισμό της έννοιας ‘’Σαββατοκύριακο’’.
  • 11. 11 Ωστόσο, ένα fuzzyset, έχει ανεκτικότητα σε αυτές τις περιπτώσεις, καθώς όπως έχουμε προαναφέρει, η Ασαφής Λογική, προσπαθεί να προσομοιάσει την ανθρώπινη επικοινωνία και σκέψη. Έτσι λοιπόν, ένα ασαφές σύνολο, θα μπορούσε να περιλαμβάνει και την Παρασκευή ως μέρος του Σαββατοκύριακου. Ωστόσο, γεννάται το ερώτημα: Κατά πόσο η ημέρα ‘’Παρασκευή’’ ανήκει στο σύνολο ‘’Σαββατοκύριακο’’; Η απάντηση είναι καθαρά υποκειμενική και ασαφής. Μπορούμε να ορίσουμε ότι η Παρασκευή από τις 15.00 μμ ανήκει στο σύνολο ‘’Σαββατοκύριακο’’ ή από τις 20.00 μμ ανήκει στο Σαββατοκύριακο. Σε αυτό το σημείο θα χρειαστεί να ορίσουμε μια συνάρτηση συμμετοχής (membership function) η οποία να σταθμίζει την ημέρα ‘’Παρασκευή’’ στο σύνολο ‘’Σαββατοκύριακο’’ Για την συνάρτηση συμμετοχής εξετάζουμε σε παρακάτω ενότητα. ΕΙΚΟΝΑ 2. CRISPSET(ΑΡΙΣΤΕΡΑ) και FUZZYSET (ΔΕΞΙΑ) ΓΙΑ ΤΟ ΣΥΝΟΛΟ ‘’ΣΑΒΒΑΤΟΚΥΡΙΑΚΟ Στο αριστερόσχέδιο , όλες οι ήμερες πλην του Σαββάτου και της Κυριακής έχουν τιμή μηδέν (0), ενώ το Σάββατο και η Κυριακή έχουν τιμή ένα (1). Στο δεξιό σχέδιο οι ήμερες Πέμπτη και Δευτέρα σταθμίζονται με έναν μικρό συντελεστή, ενώ η Παρασκευή με έναν μεγαλύτερο συντελεστή, δηλαδή οι ήμερες Πέμπτη και Δευτέρα ανήκουν λίγο στην έννοια του ασαφές συνόλου ‘’Σαββατοκύριακο’’, ενώ η Παρασκευή ανήκει περισσότερο.
  • 12. 12 ΕΙΚΟΝΑ 3. Παράδειγμα Συνάρτησης Συμμετοχής. (Membership Function). Έχει σχεδιαστεί η κλασσική συνάρτηση Gaussian (κανονική κατανομή), η οποία στην περίπτωση μας αποτελεί την συνάρτηση συμμετοχής. Εφιστούμε την προσοχή στα εξής. Οι τιμές της Συνάρτησης Συμμετοχής (MF), κυμαίνονται στο εύρος [0,1]. Οι τιμές Χ, παρατηρούμε ότι σταθμίζονται (συμμετέχουν) με διαφορετικό βαθμό συμμετοχής, ο οποίος προκύπτει από της συνάρτηση Gaussian. Λόγου χάρη, η τιμή X=1, έχει βαθμό συμμετοχής περίπου MF=0.1, ενώ η τιμή X=4 έχει βαθμό συμμετοχής περίπου MF=0.9
  • 13. 13 2) ΑΣΑΦΕΙΣ ΚΑΝΟΝΕΣ ΚΑΙ ΠΡΟΤΑΣΕΙΣ (FUZZY RULES AND STATEMENTS) Οι ασαφείς κανόνες περιλαμβάνουν ασαφείς προτάσεις (απλές ή σύνθετες), οι οποίες συνδέονται με την συνάρτηση IF…THEN…ELSE και τους λογικούς συνδέσμους AND, OR, NOT. Αρχικά θα πρέπει να γίνει κατανοητό ότι τα Ασαφή Σύνολα (fuzzy sets), είναι σύνολα τα οποία περικλείουν τα Λογικά Σύνολα (Boolean sets), οπότε η Ασαφής Λογική (Fuzzy Logic) εμπεριέχει την Δυαδική Λογική (Boolean Logic). Όπως αναφέραμε προηγουμένως, στα ασαφή σύνολα οι μεταβλητές σταθμίζονται με συντελεστές οι οποίοι λαμβάνουντιμές στο εύρος [0,1]. Για τις ακραίες τιμές 0 και 1, καταλήγουμε στην Δυαδική Λογική. Το επόμενο βήμα είναι οι κανόνες και οι προτάσεις της Δυαδικής Λογικής να μετατραπούν σε κανόνες στην Ασαφή Λογική. Οι τελεστές AND, OR, NOT της Δυαδικής Λογικής μετατρέπονται ως εξής. BOOLEANΤΕΛΕΣΤΗΣ‘’AND’’ΜΕΤΑΤΡΕΠΕΤΑΙΣΕFUZZYΤΕΛΕΣΤΗ‘’MIN’’ ΔΥΑΔΙΚΗ ΛΟΓΙΚΗ ΑΣΑΦΗΣ ΛΟΓΙΚΗ A B A AND B Α Β Min(A,B) 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1 1 1 1 1
  • 14. 14 BOOLEAN ΤΕΛΕΣΤΗΣ ‘’OR’’ ΜΕΤΑΤΡΕΠΕΤΑΙΣΕ FUZZY ΤΕΛΕΣΤΗ ‘’MAX’’ ΔΥΑΔΙΚΗ ΛΟΓΙΚΗ ΑΣΑΦΗΣ ΛΟΓΙΚΗ A B A OR B Α Β Max(A,B) 0 0 0 0 0 0 0 1 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 1 BOOLEAN ΤΕΛΕΣΤΗΣ ‘’NOT A’’ ΜΕΤΑΤΡΕΠΕΤΑΣΕ FUZZY ΤΕΛΕΣΤΗ ‘’1-A’’ ΔΥΑΔΙΚΗ ΛΟΓΙΚΗ ΑΣΑΦΗΣ ΛΟΓΙΚΗ A NOT A Α 1-A 0 0 0 0 1 0 0 1 ΕΙΚΟΝΑ 4.
  • 15. 15 Ο κανόνας IF-THEN-ELSE, λειτουργεί τόσο στην Boolean Logic όσο και στην Fuzzy Logic, με τον ίδιοτρόπο. Η μόνη διάφορα είναι ότι στην Fuzzy Logic, το αποτέλεσμα (output) είναι ένα συγκεκριμένο ασαφές σύνολο (fuzzy set). Παράδειγμα IFx=ATHENy=B Η πρόταση A, είναι μια γλωσσική μεταβλητηπου ορίζεται από ένα ασαφές σύνολο και αποτελεί την προϋπόθεση (premise) του κανόνα, ενώ η πρόταση B είναι επίσης γλωσσική μεταβλητή και αποτελεί το συμπέρασμα (conclusion) του κανόνα. Η πρόταση B, αποτελεί επίσης ένα ασαφές σύνολο. 3) ΓΛΩΣΣΙΚΕΣ ΜΕΤΑΒΛΗΤΕΣ (LINGUISTIC VARIABLES) Μια από της βασικές έννοιες που θα συναντήσουμε, είναι η έννοια της γλωσσικής μεταβλητής (linguistic variable). Όπως προαναφέραμε, η Ασαφής Λογική προσπαθεί να προσομοιάσει την ανθρωπινή επικοινωνία, έτσι λοιπόν θα πρέπει να χρησιμοποιηθούν κάποιες μεταβλητές για να γίνει κατανοητή η ανθρωπινή επικοινωνία στον Η/Υ. Οι μεταβλητές αυτές ονομάζονται γλωσσικές μεταβλητές. Οι γλωσσικές μεταβλητές είναι λέξεις ή προτάσεις της ανθρώπινης επικοινωνίας, οι οποίες δεν είναι αριθμητικές και περιγράφουν τα χαρακτηριστικά ενός στοιχείου. Τούτες οι μεταβλητές για να γίνουν κατανοητές από τον Η/Υ, θα πρέπει να μεταγλωττιστούν με κατάλληλο τρόπο, ώστε να είναι δυνατή η επεξεργασία τους από το ηλεκτρονικό σύστημα. Μερικές μεταβλητές οι οποίες χαρακτηρίζονται ως γλωσσικές είναι η ηλικία, η θερμοκρασία κτλ. Λογού χάριν, η ηλικία λαμβάνει γλωσσικές τιμές (π.χ. Παιδί, Νέος, Ενήλικος, Γέρος κτλ), οι τιμές αυτές όμως δεν είναι κατανοητές από τον Η/Υ, οπότε θα πρέπει να μεταγλωττιστούν με τέτοιο τρόπο ώστε να γίνει εφικτή η επεξεργασία τους.
  • 16. 16 Οι γλωσσικές μεταβλητές χαρακτηρίζονται από πέντε παραμέτρους. Έστω L η γλωσσικήμεταβλητή, τότε L= (L,T(L), U,G,M), όπου LΌνομα της Μεταβλητής (nameofvariable) T(L) Σύνολο Γλωσσικών Τιμών. (set of fuzzy terms, collection of linguistic variables) UΣύνολο Τιμών Αναφοράς των Γλωσσικών Μεταβλητών (universe of discourse) GΣυντακτικός Κανόνας που παράγει τις γλωσσικές τιμές T(L) (syntactic rule) MΣημασιολογικός Κανόνας που συνδέει τις Γλωσσικές Τιμές. (membership function MF:U[0,1]). Αποτελεί ένα Ασαφές Υποσύνολο (fuzzy subset) του Συνόλου Αναφοράς U (universe of discourse). Η συνάρτηση συμμετοχής (membership function) είναι μια καμπύλη, όπως θα δούμε παρακάτω, η οποία ορίζει τον τρόπο με τον οποίο συνδέονται τα εκάστοτε σημεία Χ του ασαφούς συνόλου (fuzzy set) , όπου κάθε σημείο X, αντιστοιχεί σε τιμές στην συνάρτηση αναφοράς στο εύρος [0,1], δηλαδή Y=MF(X), 0≤Y≤1. Οι τιμές αυτές της συνάρτησης MF, ονομάζονται βαθμός συμμετοχής (degree of membership ή membershipvalue) Για να περιγράψουμε τις γλωσσικές μεταβλητές χρησιμοποιούμε ασαφήσύνολα. Ακολουθεί παράδειγμα για να γίνουν κατανοητές οι έννοιες.
  • 17. 17 ΠΑΡΑΔΕΙΓΜΑ Έστω ότι θέλουμε να περιγράψουμε την θερμοκρασία, χρησιμοποιώντας κάποιες τιμές. Στο παράδειγμα αυτό, η θερμοκρασία αποτελεί την μεταβλητή, η οποία μπορεί να λάβει τις εξής γλωσσικέςτιμές [ΚΡΥΟ(Κ), ΕΛΑΦΡΩΣ ΔΡΟΣΕΡΟ(ΕΔ), ΔΡΟΣΕΡΟ(Δ), ΦΥΣΙΟΛΟΓΙΚΟ(Φ), ΕΛΑΦΡΩΣ ΘΕΡΜΟ(ΕΘ), ΘΕΡΜΟ(Θ), ΖΕΣΤΟ(Ζ)]. Οι τιμές αυτές δεν είναι αριθμοί και χαρακτηρίζονται ως γλωσσικές μεταβλητές. Ωστόσο, οι τιμές αυτές θα πρέπει να αναπαρασταθούν στον Η/Υ για να αναπτυχθεί ένα μοντέλο FuzzyLogic. Η διαδικασία για την αναπαράσταση επιτυγχάνεται μέσω των Ασαφών Συνόλων. Υποθέτουμε ότι οι γλωσσικές τιμές λαμβάνονται στο εύρος[0,40]. Το εύρος αυτών των τιμών ονομάζεται σύνολο αναφοράς. Έχουμε λοιπόν τα εξής που χαρακτηρίζουν την μεταβλητή μας. Γλωσσική Μεταβλητή (L) Θερμοκρασία Όνομα Γλωσσικής Μεταβλητή (L) Σύνολο Γλωσσικών ΤιμώνT(L), όπουT(L)=[ΚΡΥΟ(Κ), ΕΛΑΦΡΩΣ ΔΡΟΣΕΡΟ(ΕΔ), ΔΡΟΣΕΡΟ(Δ), ΦΥΣΙΟΛΟΓΙΚΟ(Φ), ΕΛΑΦΡΩΣ ΘΕΡΜΟ(ΕΘ), ΘΕΡΜΟ(Θ), ΖΕΣΤΟ(Ζ)] Σύνολο Τιμών Αναφοράς Γλωσσικών Μεταβλητών στο οποίο παίρνουν ασαφείς τιμές οι Γλωσσικές ΜεταβλητέςU, όπου U(0,40). Άρα L=(L, T(L),U)
  • 18. 18 ΕΙΚΟΝΑ5. Στο παραπάνω γράφημα, οι γλωσσικές μεταβλητές, λαμβάνουν ασαφείς τιμές στο διάστημα (0,40). Παραδείγματος χάριν, η τιμή ΚΡΥΟ(Κ) λαμβάνει τιμές Κ(0,10), ενώ η τιμή ΕΛΑΦΡΩΣ ΔΡΟΣΕΡΟ (ΕΔ) λαμβάνει τιμές ΕΔ(5,15). Το διάστημα των τιμών (5,10) εμπίπτει και στις δυο γλωσσικές μεταβλητές, άρα είναι ασαφές σύνολο. Παρατηρούμε ότι η γλωσσική τιμή ΔΡΟΣΕΡΟ περιλαμβάνει τιμές και στο ΕΛΑΡΦΩΣ ΔΡΟΣΕΡΟ (ΕΔ) και ΦΥΣΙΟΛΟΓΙΚΟ (Φ). Άρα, θα λέγαμε ότι το ΔΡΟΣΕΡΟ είναι ένα ασαφές σύνολο. Στο σημείο αυτό θα αναφέρουμε την παράμετρο MF (membership function). Παρατηρούμε ότι στο εύρος θερμοκρασιών [5,10], υπάρχει ένα ασαφές σύνολο (fuzzy set), καθώς οι γλωσσικές μεταβλητές ΚΡΥΟ[0,10] και ΕΛΑΦΡΩΣ ΔΡΟΣΕΡΟ[5,15], αλληλοκαλύπτονται. Η συνάρτηση συμμετοχής (MF), σταθμίζει τις τιμές του συνόλου αναφοράς (universe of discourse), ώστε να υπάρχει μια ‘’ιεραρχία’’, δηλαδή αν θέλουμε να ορίσουμε το ΚΡΥΟ στο εύροςτιμών [5,10], τότε η τιμή 6 είναι πιο κοντά στην τιμή 5, ενώ η τιμή 9 απέχει περισσότερο.
  • 19. 19 Υποθέτουμε λοιπόν, όσο αφόρα την τιμή ΚΡΥΟ, ότι η στάθμιση για την τιμή 6 θα είναι μεγαλύτερη από την τιμή 9, δηλαδή π.χ. η τιμή 6 σταθμίζεται με συντελεστή 0.5 ενώ η τιμή 9 με συντελεστή 0.07, (Οι τιμές είναι ενδεικτικές, ωστόσο οι σταθμίσεις για την παράμετρο MF θα πρέπει να λαμβάνουντιμές στο διάστημα [0,1]) 4) ΣΥΝΑΡΗΤΣΕΙΣ ΣΥΜΜΕΤΟΧΗΣ (MEMBERSHIPFUNCTIONS) Υπάρχουν διάφοροι τύποι συναρτήσεων συμμετοχής(Membershipfunctions ή MF) που αναπαριστούν τα ασαφή σύνολα. Οι συναρτήσεις που συναντώνται πιο συχνά είναι οι εξής: a) Τριγωνική συνάρτηση (Triangular MF) b) Τραπεζοειδής συνάρτηση (Trapezoidal MF) c) Καμπανοειδής συνάρτηση (Generalize Bell MF ή GBell MF) d) Γκαουσιανή συνάρτηση (Gaussian MF) e) S συνάρτηση (S MF) f) Pi συνάρτηση (Pi MF) g) Z συνάρτηση (Z MF) h) Σιγμοειδής συνάρτηση (Sigmoidal MF) Το πρόγραμμα που έχει χρησιμοποιηθεί για την σχεδίαση των συναρτήσεων είναι το MATLAB R2013a, καθώς οι συναρτήσεις είναι τυποποιημένες. Αρκετές από τις άνω συναρτήσεις είναι γνώριμες, καθώς έχουν αναλυθεί και σε βιβλία Στατιστικής.. Στην στατιστική, οι συνεχείς κατανομές συναντώνται με την ονομασία ‘’Συνάρτηση Πυκνότητας Πιθανότητας- Probability Density Function (PDF)’’, ενώ στην Ασαφή Λογική ονομάζονται ‘’Συνάρτηση Συμμετοχής- Membership Function’’. Το τυπολόγιο και τα χαρακτηριστικά των συναρτήσεων δεν αλλάζουν, οι λειτουργίες τους είναι οι ίδιες, εκείνο όμως που αλλάζει είναι η ερμηνεία τους.
  • 20. 20 Στην Στατιστική η κατανομή πιθανότητας (PDF) εκφράζει τις πιθανότητες εμφάνισης διαφορετικών αποτελεσμάτων ενός πειράματος, ήτοι εκφράζει την πιθανότητα μια μεταβλητή να εμπίπτει σε ένα συγκεκριμένο εύρος τιμών. Στην ΑσαφήΛογική, η συνάρτηση συμμετοχής, εκφράζει τον βαθμό συμμετοχής του κάθε στοιχείου του υπό εξέταση συνόλου. Για όλες τις Συναρτήσεις Συμμετοχής (Membership functions), ισχύουν τα εξής a) Η Συνάρτηση Συμμετοχής λαμβάνει τιμές το διάστημα [0,1] (ΆξοναςY) b) Η Συνάρτηση Συμμετοχής, ορίζει τον βαθμό συμμετοχής (στάθμιση) των τιμών x (Άξονας Χ)
  • 21. 21 a) ΤΡΙΓΩΝΙΚΗ ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ (Triangle ή Triangular MF) Triangle (x,[a,b,c])=max [min � x−a b−a , c−x c−b �, 0] ήεναλλακτικά Triangle (x,[a,b,c])= ⎩ ⎪ ⎪ ⎨ ⎪ ⎪ ⎧ 0 , x ≤ a ( x−a b−a ) , a ≤ x ≤ 𝑏 ( (c−x) c−b ) , b ≤ x ≤ c 0 , c ≤ x ⎭ ⎪ ⎪ ⎬ ⎪ ⎪ ⎫ ΕΙΚΟΝΑ 6. Παράδειγμα τριγωνικής συνάρτησης συμμετοχής για x(0,10), Parameters= [a=3, b=6, c=8]
  • 22. 22 b) ΤΡΑΠΕΖΟΕΙΔΗΣ ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗ (TrapezoidalMF) Trapezoidal(x,[a,b,c,d])=max [min � x−a b−a , 1, d−x d−c � , 0] ή εναλλακτικά Trapezoidal(x,[a,b,c,d])= ⎩ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎧ 0 , x ≤ a ( x−a b−a ) , a ≤ x ≤ b 1 , b ≤ x ≤ c ( d−x d−c ) , c ≤ x ≤ d 0 , d ≤ x ⎭ ⎪ ⎪ ⎪ ⎬ ⎪ ⎪ ⎪ ⎫ ΕΙΚΟΝΑ 7. Παράδειγμα τραπεζοειδής συνάρτησης συμμετοχής για x=(0,10), Parameters= [a=1, b=5, c=7, d=8]
  • 23. 23 c) ΚΑΜΠΑΝΟΕΙΔΗΣ ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ (Generalized Bell MF ή GBell MF) GBell(x,[a,b,c])= 1 1+| 𝑥−𝑐 𝑎 |2∗𝑏 ΕΙΚΟΝΑ 8. Παράδειγμα καμπανοειδής συνάρτησης συμμετοχής για x=(0,10), Parameters= [a=2, b=4, c=6]
  • 24. 24 d) ΓΚΑΟΥΣΙΑΝΗ ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ (Gaussian MF) Gaussian(x,[σ,c])=e −( x−c 2∗σ )2 ΕΙΚΟΝΑ 9. Παράδειγμα γκαουσιανής συνάρτησης συμμετοχής για x=(0,10) , Parameters= [σ=2, c=5]
  • 25. 25 e) S ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ (S MF) S(x,[a,b])= ⎩ ⎪ ⎪ ⎨ ⎪ ⎪ ⎧ 0 , x ≤ a 2 ∗ ( x−a b−a )2 , a ≤ x ≤ a+b 2 1 − 2 ∗ ( x−b b−a )2 , a+b 2 ≤ x ≤ b 1 , x ≥ b ⎭ ⎪ ⎪ ⎬ ⎪ ⎪ ⎫ EIKONA10. Παράδειγμα S συνάρτησης συμμετοχής για x=(0,10), Parameters= [a=1, b=8]
  • 26. 26 f) Pi ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ (Pi MF) Pi(x,[a,b,c,d])= ⎩ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎧ 0 , x ≤ a 2 ∗ ( x−a b−a )2 , a ≤ x ≤ a+b 2 1 − 2 ∗ ( x−b b−a )2 , a+b 2 ≤ x ≤ b 1 , b ≤ x ≤ c 1 − 2 ∗ ( x−c d−c )2 , c ≤ x ≤ c+d 2 2 ∗ ( x−d d−c )2 , c+d 2 ≤ x ≤ d 1 , x ≥ d ⎭ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎬ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎫ EIKONA11. Παράδειγμα Pi συνάρτησης συμμετοχής για x=(0,10), Parameters= [a=1, b=4, c=5, d=10]
  • 27. 27 g) Z ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ (Z MF) Pi(x, [a,b])= ⎩ ⎪ ⎪ ⎨ ⎪ ⎪ ⎧ 1 , x ≤ a 1 − 2 ∗ ( x−b b−a )2 , a ≤ x ≤ a+b 2 2 ∗ ( x−b b−a )2 , a+b 2 ≤ x ≤ b 0 , x ≥ b ⎭ ⎪ ⎪ ⎬ ⎪ ⎪ ⎫ EIKONA12. Παράδειγμα Z συνάρτησης συμμετοχής για x=(0,10), Parameters= [a=3, b=7]
  • 28. 28 h) ΣΙΓΜΟΕΙΔΗΣ ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ (SIGMOIDAL MF) Sigmoid (x,[a,c])= 𝟏 𝟏+𝐞 –𝐚∗( 𝐱−𝐜) EIKONA13. Παράδειγμα σιγμοειδής συνάρτησης συμμετοχής x=(0,10), Parameters= [a=2, b=4]
  • 29. 29 Έχοντας ολοκληρώσει την βασική θεωρία που χρειαζόμαστε να είναι κατανοητή, στο επόμενο βημα θα αναπτυχθεί ένα ασαφές μοντέλο λειτουργίας ενός air condition. Για να σχεδιάσουμε το μοντέλο θα χρειαστούμε το Matlab R2013a με την εργαλειοθήκη Fuzzy Logic Toolbox. Η λειτουργία του aircodition είναι αρκετά απλή, χωρίς πολλές εντολές, ώστε να γίνει αντιληπτή η κατασκευή με την χρήση του λογισμικού Matlab. Τα βήματα που ακολουθούμε είναι τα εξής. ΒΗΜΑ 1. Προσπαθούμε να κατανοήσουμε ποιες θα είναι οι λειτουργίες του, ποιες θα είναι οι ασαφείς ανεξάρτητες μεταβλητές (inputvariables) και ποιες οι εξαρτημένες μεταβλητές (output variables). ΒΗΜΑ 2. Σχεδιασμός του μοντέλου (σε ‘’χαρτί’’) με ψευδομεταβλητές και ψευδοκώδικα, ώστε να είναι εύκολα αντιληπτές και διακριτές οι λειτουργίες του. Κατανόηση των μεταβλητών και των τιμών που λαμβάνουν οι μεταβλητές. Σχεδίαση των συναρτήσεων συμμετοχής (membership functions) των μεταβλητών. Κατασκευή των κανόνων (fuzzy rules-statements) που συνδέουν τις μεταβλητές. ΒΗΜΑ 3. Υλοποίηση των παραπάνω βημάτων, στο λογισμικό Matlab, λαμβάνοντας παράλληλα υπόψη και την θεωρία που στηρίζεται το μοντέλο μας. ΒΗΜΑ 4. Εξαγωγή των αποτελεσμάτων και έλεγχος αν τα αποτελέσματα συνάδουν με τους κανόνες που έχουμε θέσει στο μοντέλο μας.Διόρθωση μοντέλου σε περίπτωση αστοχίας.
  • 30. 30 ΠΑΡΟΥΣΙΑΣΗ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ MATLAB. Το λογισμικό MATLAB (MATrixLABoratory) είναι ένα πρόγραμμα υπολογιστικού περιβάλλοντος για επεξεργασία και ανάλυση δεδομένων. Είναι γραμμένο, στο μεγαλύτερο μέρος του, στην γλωσσά προγραμματισμού C++. Περιέχει επίσης στοιχεία από τις γλώσσες C, JAVA, PYTHON και FORTAN Το MATLAB, χρησιμοποιείται σε ένα εύρος εφαρμογών και επιστημών, όπως τα μαθηματικά, μηχανολογία, οικονομικά, στατιστική κτλ. Έχει σχεδιαστεί κυρίως για την επίλυση γραμμικών προβλημάτων, εύρεση ιδιωτιμών- ιδιοδιανυσμάτων, λύση συναρτήσεων και γενικά οτιδήποτε αφόρα την γραμμική άλγεβρα και τις επεκτάσεις της καθώς και την άλγεβρα με την γενικότερη έννοια. Είναι επίσης εφοδιασμένο με ένα πλήθος πρόσθετων εργαλείων (toolboxes), με τα οποία δίνεται η δυνατότητα για περεταίρω εργασίες. Μερικά toolboxes που περιέχει το MATLAB είναι τα εξής 1) MATH- STATISTICS- OPTIMIZATION (Curve Fitting,Symbolic Math, Statistics and Machine Learning, Regression κτλ) 2) CONTROL SYSTEM, DESIGN AND ANALYSIS (Fuzzy Logic,Control System Tuning, Linear System Analysis, Neuro Fuzzy Design κτλ) 3) COMPUTATIONAL FINANCE (Financial Time Series Analysis, Risk Management, Econometrics κτλ) 4) IMAGE PROCESSING AND COMPUTER VISION (Image Viewer, Map Viewer κτλ) 5) DATA SCIENCE AND DEEP LEARNING (Statistics anδ Machine Learning, Deep Learning, Text Analytics)
  • 31. 31 Το γραφικό περιβάλλον είναι αρκετά κατανοητό και προσιτό, χρειάζεται ωστόσο αρκετή ενασχόληση και αναδρομή στα εγχειρίδια του προγράμματος για την εκμάθηση. Πρέπει να προσέξουμε επίσης ότι, επειδή το MATLAB είναι γραμμένο στην γλωσσά C++, οι εντολές/μεταβλητές κτλ είναι ‘’case sensitive’’, δηλαδή, υπάρχει διάφορα μεταξύ κεφαλαίων και πεζών χαρακτήρων. Επίσης, σε πολλά toolboxes, υπάρχει η δυνατότητ αγια συμβολικούς υπολογισμούς (όπως στο Mathematica), δηλαδή την καταχώριση των εντολών όπως θα γράφονταν στο χαρτί Ένα ακόμα σημαντικό πλεονέκτημα, είναι η δυνατότητα προσομοίωσης ενός συστήματος/ μοντέλου με την χρήση του Simulink. Το Simulink είναι ένα προσθετό του MATLAB, όπου όταν ολοκληρωθεί ένα μοντέλο/ πρόγραμμα κτλ, υπάρχει η δυνατότητα να δοκιμαστεί υπό πραγματικές συνθήκες, προτού προωθηθεί στην αγορά, χρησιμοποιηθεί για ερευνά κτλ. Χρησιμοποιείται ευρέως σε εφαρμογές Ρομποτικής, Συστήματα Έλεγχου, Ηλεκτρονική, Τηλεπικοινωνίες κ.α. ΕΦΑΡΜΟΓΗ ΛΕΙΤΟΥΡΓΙΑΣ AIRCODITION ΣΤΟ MATLAB. ΠΡΟΣΟΧΗ!! (Αρχικά, να επισημάνουμε ότι το λογισμικό MATLAB είναι γραμμένο, στο μεγαλύτερο μέρος του, στην γλωσσά προγραμματισμού C++. Γι’ αυτό το λόγο ο αναγνώστης θα πρέπει να δώσει προσοχή ότι η C++ είναι γλωσσά ‘’case sensitive’’ δηλαδή, υπάρχει διάφορα μεταξύ κεφαλαίων και πεζών χαρακτήρων. Τούτο συνεπάγεται ότι είναι διαφορετικό όταν, λογού χάρη ονομάζουμε μια μεταβλητή ‘’LOW’’ από την μεταβλητή ‘’low’’. Εφιστούμε την προσοχή του αναγνώστη σε αυτή την μικρή, αλλά βασική λεπτομέρεια, διότι το πρόγραμμα MATLAB θα διαβάσει τις μεταβλητές/ εντολές όπως ακριβώς τις έχουμε ορίσει ή είναι ορισμένες/ καταχωρημένες από τις προεπιλογές του προγράμματος (by default) .
  • 32. 32 Αν έχει οριστεί μια μεταβλητή‘’LOW’’ και έπειτα επιθυμούμε να κάνουμε πράξεις με την μεταβλητή‘’low’’, το MATLAB θα εμφανίσει σφάλμα ότι δεν αναγνωρίζει την μεταβλητή ‘’low’’ ) Στο παράδειγμα μας, υποθέτουμε ότι το aircodition λειτούργει ως έξης: Το aircontition, διαθέτει αισθητήρες για την θερμοκρασία και την υγρασία. Αναλόγως την θερμοκρασία και την υγρασία του περιβάλλοντος, θέτει σε λειτουργιά των ανεμιστήρα ή/και τον αφυγραντήρα. Υποθέτουμε ότι ο αισθητήρας της θερμοκρασίας εντοπίζειτιμές από 0ο C έως 40ο C, ενώ ο αισθητήρας της υγρασίας εντοπίζει τιμές από 0% υγρασία έως 100% υγρασία. Αναλόγως τις τιμές που θα εντοπίσουν οι δυο αισθητήρες, θα αρχίσει η λειτουργιά του ανεμιστήρα ή/και του αφυγραντήρα. Ο ανεμιστήρας υποθέτουμε ότι έχει τρεις βαθμίδες λειτουργιάς (LOW, MEDIUM, HIGH). Ο αφυγραντηρας υποθέτουμε ότι έχει τρεις βαθμίδες λειτουργιάς (OFF, LOW, HIGH). Πρωτού προχωρήσουμε στα βήματα σχεδιασμού της λειτουργίας του air condition, θα χρειαστεί να τρέξουμε το Fuzzy Logic Toolbox του Matlab. Ανοίγουμε το πρόγραμμα Matlab και στο αρχικό παράθυρο ‘’COMMAND WINDOW’’ γραφουμε ‘’fuzzy’’. Με την εντολή αυτή ανοίγει το Fuzzy Logic Toolbox (Fuzzy Information Sustem- FIS). Στο νέο παράθυρο που ανοίγει κάνουμε κλικ στο ‘’FILE’’  ‘’IMPORT ….. from file’’ και επιλέγουμε το αρχείο για το air condition, το οποίο έχουμε ονομάσει ‘’ FuzzyLogicAIRCONDITION.fis’’ Από εκεί και έπειτα ακολούθουμε τα βήματα
  • 33. 33 ----------------- ΒΗΜΑ 1. ΟΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ Αρχικά ονομάζουμε τις μεταβλητές μας. ΘΕΡΜΟΚΡΑΣΙΑTEMPERATURE (T) ΥΓΡΑΣΙΑHUMIDITY (H) ΑΝΕΜΙΣΤΗΡΑΣFAN SPEED (FS) ΑΦΥΓΡΑΝΤΗΡΑΣDEHUMIDIFIER (DH) Από τα παραπάνω, γίνεται κατανοητό ότι οι ανεξάρτητες μεταβλητές/ μεταβλητές εισόδου (input variables) είναι η θερμοκρασία (T) και η υγρασία (H), ενώ οι εξαρτημένες μεταβλητές/ μεταβλητές εξόδου (output variables) είναι ο ανεμιστήρας (FS) και ο αφυγραντήρας (DH). INPUT VARIABLES: TEMPERATURE (T), HUMIDITY (H) OUTPUT VARIABLES: FAN SPEED (FS), DEHUMIDIFIER (DH) ----------------- ΒΗΜΑ 2. ΑΝΕΞΑΡΤΗΤΕΣ ΜΕΤΑΒΛΗΤΕΣ- ΜΕΤΑΒΛΗΤΕΣ ΕΙΣΟΔΟΥ (INPUTVARIABLES) ΕΥΡΟΣ ΤΙΜΩΝ ΤΩΝ ΜΕΤΑΒΛΗΤΩΝ, ΣΥΝΟΛΟ ΤΙΜΩΝ ΑΝΑΦΟΡΑΣ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΣΥΜΜΕΤΟΧΗΣ Αρχικά, ορίζονται οι μεταβλητές (θερμοκρασία, υγρασία), το εύρος τιμών της θερμοκρασίας, το εύρος τιμών της υγρασίας, καθώς και οι συναρτήσεις συμμετοχής (MF)
  • 34. 34 --------ΓΛΩΣΣΙΚΗ ΜΕΤΑΒΛΗΤΗ ΘΕΡΜΟΚΡΑΣΙΑ[T] ΣΥΝΟΛΟ ΓΛΩΣΣΙΚΩΝ ΤΙΜΩΝ [T(L)] [Extremly Cold (EC), Very Cold (VC), Cold (C), Normal(N), Hot (H), Very Hot(VH), Extremly Hot (EH)] ΣΥΝΟΛΟ ΤΙΜΩΝ ΑΝΑΦΟΡΑΣ [U] U=(0,40) ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ - MEMBERSHIPFUNCTION [MF] MF= Triangle TEMPERATURE=(T,T(L), U(0,40),TRIANGLE)
  • 35. 35 MEMBERSHIP FUNCTIONS AND VALUES OF TEMPERATURE (MATLAB ΕΙΚΟΝΑ 14.
  • 36. 36 Στο παραπάνω γράφημα παρατηρούμε τα εξής για τις γλωσσικές τιμές και το σύνολο τιμών των γλωσσικών τιμών EC (0,10) // MF(Triangle) VC (5,15) // MF(Triangle) C (10,20) // MF(Triangle) N (15,25) // MF(Triangle) H (20,30) // MF(Triangle) VH (25,35) // MF(Triangle) EH (30,40) // MF(Triangle) Η μεταβλητή ΘΕΡΜΟΚΡΑΣΙΑ είναι μια γλωσσική μεταβλητή η οποία χαρακτηρίζεται από τις γλωσσικές τιμές, οι οποίες λαμβάνονται στο σύνολο αναφοράς U(0,40). Υποθέτουμε επίσης ότι η συνάρτηση συμμετοχής είναι τριγωνική (trimf). Αν επιθυμούμε μπορεί να αλλαχτεί σε άλλη συνάρτηση συμμετοχής επιλέγοντας το ‘’type’’. --------ΓΛΩΣΣΙΚΗ ΜΕΤΑΒΛΗΤΗ ΥΓΡΑΣΙΑ [H] ΣΥΝΟΛΟ ΓΛΩΣΣΙΚΩΝ ΤΙΜΩΝ [H(L)] [Very Dry (VD), Dry (D), Normal(N), Hot (H), Moist (M),VeryMoist (VM)] ΣΥΝΟΛΟ ΤΙΜΩΝ ΑΝΑΦΟΡΑΣ [U] U=(0,100) ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ - MEMBERSHIPFUNCTION [MF] MF= Trapezoid and Triangle HUMIDITY=(H, H(L), U(0,100),TRAPEZOID &TRIANGLE)
  • 37. 37 MEMBERSHIP FUNCTIONS AND VALUES OF HUMIDITY (H)(MATLAB) ΕΙΚΟΝΑ 15.
  • 38. 38 Στο παραπάνω γράφημα παρατηρούμε τα εξής για τις γλωσσικές τιμές και το σύνολο τιμών των γλωσσικών τιμών VD (0,25) // MF(Trapezoid) D (20,40) // MF(Triangle) N (35,55) // MF(Triangle) M (50,75) // MF(Triangle) VM (65,100) // MF(Trapezoid) Η μεταβλητή ΥΓΡΑΣΙΑ είναι μια γλωσσική μεταβλητή η οποία χαρακτηρίζεται από τις γλωσσικές τιμές οι οποίες λαμβάνονται στο σύνολο αναφοράς U(0,100). Υποθέτουμε επίσης ότι η συνάρτηση συμμετοχής είναι τραπεζοειδής και τριγωνική (trampf και trimf). Αν επιθυμούμε μπορεί να αλλαχτεί σε άλλη συνάρτηση συμμετοχής επιλέγοντας το ‘’type’’. Συνοψίζοντας τις ανεξάρτητες μεταβλητές (input variables) INPUT VARIABLES TEMPERATURE=(T, T(L), U(0,40), TRIANGLE) HUMIDITY=(H, H(L), U(0,100),TRAPEZOID &TRIANGLE)
  • 39. 39 ΕΞΑΡΤΗΜΕΝΕΣΜΕΤΑΒΛΗΤΕΣ- ΜΕΤΑΒΛΗΤΕΣΕΞΟΔΟΥ (OUTPUT VARIABLES) ΕΥΡΟΣ ΤΙΜΩΝ ΤΩΝ ΜΕΤΑΒΛΗΤΩΝ, ΣΥΝΟΛΟ ΤΙΜΩΝ ΑΝΑΦΟΡΑΣ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΣΥΜΜΕΤΟΧΗΣ Οι επόμενες μεταβλητές που θα οριστούν είναι ο ανεμιστήρας (FS) και ο αφυγραντήρας (DH). Οι δυο αυτές μεταβλητές, όπως έχουμε προαναφέρει, είναι οι εξαρτημένες μεταβλητές (output variables), άρα οι τιμές τους θα συναρτώνται με τις εξαρτημένες μεταβλητές(input variables), δηλαδή την θερμοκρασία (T) και την υγρασία (H). Σε πρώτοστάδιοορίζονται οιμεταβλητές (ανεμιστήρας, αφυγραντηρας), το εύροςτιμών του ανεμιστήρα, το εύροςτιμών του αφυγραντήρα,καθώς και οισυναρτήσειςσυμμετοχής(MF) --------ΓΛΩΣΣΙΚΗ ΜΕΤΑΒΛΗΤΗ FANSPEED [FS] ΣΥΝΟΛΟ ΓΛΩΣΣΙΚΩΝ ΤΙΜΩΝ [FS(L)] [Low(L), Medium (M), High (H)] ΣΥΝΟΛΟ ΤΙΜΩΝ ΑΝΑΦΟΡΑΣ [U] U=(1,4) ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ - MEMBERSHIPFUNCTION [MF] MF= Triangle FAN SPEED=(FS, FS(L), U(1,4),TRIANGLE)
  • 40. 40 MEMBERSHIP FUNCTIONSAND VALUES OF FAN SPEED(MATLAB) ΕΙΚΟΝΑ 16
  • 41. 41 Στο παραπάνω γράφημα παρατηρούμε τα εξήςγια τις γλωσσικές τιμές και το σύνολο τιμών των γλωσσικών τιμών LOW (1,2) // MF(Triangle) MEDIUM (2,3) // MF(Triangle) HIGH (3,4) // MF(Triangle) Η μεταβλητή ΑΝΕΜΙΣΤΗΡΑΣ είναι μια γλωσσική μεταβλητή η οποία χαρακτηρίζεται από τις γλωσσικές τιμές οι οποίες λαμβάνονται στο σύνολο αναφοράςU(1,4). Υποθέτουμε επίσης ότι η συνάρτηση συμμετοχής είναι τριγωνική (trimf). Αν επιθυμούμε μπορούμε να την αλλάξουμε σε άλλη συνάρτηση συμμετοχής επιλέγοντας το ‘’type’’. ΠΑΡΑΤΗΡΗΣΗ: Οι αριθμητικές τιμές που έχουν οριστεί για τις γλωσσικές τιμές‘’LOW’’, ‘’MEDIUM’’, ‘’HIGH’’είναι ενδεικτικές. Οι τιμές [1,4] είναι καθαρά θεωρητικές και χρησιμεύουν για το παράδειγμά μας, καθώς σκοπεύουμε απλά να ορίσουμε τις λειτουργιές του ανεμιστήρα. Θα ήταν εφικτό, για να γίνει πιο πρακτικό το παράδειγμα, να οριστούν οι στροφές του ανεμιστήρα (από ένα εγχειρίδιο χρήσης) όταν η λειτουργιά είναι ‘’LOW’’, ‘’MEDIUM’’ ή ‘’HIGH’’ -------- ΓΛΩΣΣΙΚΗ ΜΕΤΑΒΛΗΤΗ DEHUMIDIFIER- [DH] ΣΥΝΟΛΟ ΓΛΩΣΣΙΚΩΝ ΤΙΜΩΝ [DH(L)] [OFF(OFF), Low (L), High (H)] ΣΥΝΟΛΟ ΤΙΜΩΝ ΑΝΑΦΟΡΑΣ [U] U=(0,3) ΣΥΝΑΡΤΗΣΗ ΣΥΜΜΕΤΟΧΗΣ - MEMBERSHIPFUNCTION [MF] MF= Triangle DEHUMIDIFIER=(DH, DH(L), U(0,3), TRIANGLE)
  • 42. 42 MEMBERSHIP FUNCTIONSAND VALUES OF DEHUMIDIFIER(MATLAB) ΕΙΚΟΝΑ 17.
  • 43. 43 Στο παραπάνωγράφη μαπαρατηρούμε τα εξής για τις γλωσσικές τιμές και το σύνολο τιμών των γλωσσικών τιμών OFF (0,1) // MF(Triangle) LOW (1,2) // MF(Triangle) HIGH (2,3) // MF(Triangle) Η μεταβλητή ΑΦΥΓΡΑΝΤΗΡΑΣ είναι μια γλωσσική μεταβλητή η οποία χαρακτηρίζεται από τις γλωσσικές τιμές οι οποίες λαμβάνονται στο σύνολο αναφοράς U(0,3). Υποθέτουμε επίσης ότι η συνάρτηση συμμετοχής είναι τριγωνική (trimf). Αν επιθυμούμε μπορεί να αλλαχτεί σε άλλη συνάρτηση συμμετοχής επιλέγοντας το ‘’type’’. ΠΑΡΑΤΗΡΗΣΗ: Οι αριθμητικές τιμές που έχουν οριστεί για τις γλωσσικές τιμές ‘’OFF’’, ‘’LOW’’, ‘’HIGH’’είναι ενδεικτικές. Οι τιμές [0,3] είναι καθαρά θεωρητικές και χρησιμεύουν για το παράδειγμα μας, καθώς σκοπεύουμε απλά να ορίσουμε τις λειτουργιές του ανεμιστήρα. Θα μπορούσαμε, για να γίνει πιο πρακτικό το παράδειγμα, να ορίσουμε τις στροφές του ανεμιστήρα (από ένα εγχειρίδιο χρήσης) όταν η λειτουργιά είναι ‘’LOW’’, ‘’MEDIUM’’ ή ‘’HIGH’’ OUTPUT VARIABLES FAN SPEED=(FS, FS(L), U(1,4), TRIANGLE) DEHUMIDIFIER=(DH, DH(L), U(0,3), TRIANGLE)
  • 44. 44 ----------------- ΒΗΜΑ 3. ΟΡΙΣΜΟΣ ΚΑΝΟΝΩΝ Στο επόμενο βήμα, έχοντας ορίσειπλέον το εύρος τιμών του ΑΝΕΜΙΣΤΗΡΑ (FANSPEED) και του ΑΦΥΓΡΑΝΤΗΡΑ (DEHUMIDIFIER), θα πρέπει να τεθούν οι κανόνες (rules- statements) στο λογισμικό Matlab, ώστε να προκύψουν οι ανάλογες σχέσεις όπου θα ελέγχουν την λειτουργιά των εξαρτημένων μεταβλητών ΑΝΕΜΙΣΤΗΡΑ (FANSPEED) και του ΑΦΥΓΡΑΝΤΗΡΑ (DEHUMIDIFIER). Οι κανόνες θα τεθούν για τις input variables και οι output variables θα λάβουν τις ανάλογες τιμές τους. Οι κανόνες φαίνονται στην κατωθι εικόνα (ΕΙΚΟΝΑ 18).
  • 45. 45 RULES AND STATEMENTS OF AIRCONTIRION OPERATION (ΚΑΝΟΝΕΣ ΛΕΙΤΟΥΡΓΙΕΣ ΤΟΥ AIRCONDITION) ΕΙΚΟΝΑ 18.
  • 46. 46 INPUT VARIABLES TEMPERATURE [T] [Extremly Cold (EC), Very Cold (VC), Cold (C), Normal(N), Hot (H), Very Hot(VH), Extremly Hot (EH)] HUMIDITY [H] [Very Dry (VD), Dry (D), Normal(N), Hot (H), Moist (M),VeryMoist (VM)] OUTPUT VARIABLES FAN SPEED [FS] [Low(L), Medium (M), High (H)] DEHUMIDIFIER (DH) [OFF(OFF), Low (L), High (H)] ΕΝΤΟΛΕΣ- ΚΑΝΟΝΕΣ (19 ΚΑΝΟΝΕΣ) IF TEMPERATURE=EC AND HUMIDITY=VD THEN FS=HIGH AND DEHUMIDIFIER=OFF IF TEMPERATURE=EC AND HUMIDITY=D THEN FS=HIGH AND DEHUMIDIFIER=OFF IF TEMPERATURE=EC AND HUMIDITY=N THEN FS=HIGH AND DEHUMIDIFIER=OFF IF TEMPERATURE=EC AND HUMIDITY=M THEN FS=HIGH AND DEHUMIDIFIER=LOW IF TEMPERATURE=EC AND HUMIDITY=VM THEN FS=HIGH AND DEHUMIDIFIER=HIGH IF TEMPERATURE=VC AND HUMIDITY=VD THEN FS=HIGH AND DEHUMIDIFIER=OFF IF TEMPERATURE=VC AND HUMIDITY=D THEN FS=HIGH AND DEHUMIDIFIER=OFF IF TEMPERATURE=VC AND HUMIDITY=N THEN FS=HIGH AND DEHUMIDIFIER=OFF IF TEMPERATURE=VC AND HUMIDITY=M THEN FS=HIGH AND DEHUMIDIFIER=LOW IF TEMPERATURE=VC AND HUMIDITY=VM THEN FS=HIGH AND DEHUMIDIFIER=HIGH IF TEMPERATURE=C AND HUMIDITY=VD THEN FS=MEDIUM AND DEHUMIDIFIER=OFF IF TEMPERATURE=C AND HUMIDITY=D THEN FS= MEDIUM AND DEHUMIDIFIER=OFF IF TEMPERATURE=C AND HUMIDITY=N THEN FS= MEDIUM AND DEHUMIDIFIER=OFF IF TEMPERATURE=C AND HUMIDITY=M THEN FS= MEDIUM AND DEHUMIDIFIER=LOW IF TEMPERATURE=C AND HUMIDITY=VM THEN FS= MEDIUM AND DEHUMIDIFIER=HIGH
  • 47. 47 IF TEMPERATURE=N THEN FS=LOW AND DEHUMIDIFIER=OFF IF TEMPERATURE=H THEN FS=MEDIUM AND DEHUMIDIFIER=OFF IF TEMPERATURE=VH THEN FS=HIGH AND DEHUMIDIFIER=OFF IF TEMPERATURE=EH THEN FS=HIGH AND DEHUMIDIFIER=OFF Συνοπτικά οι παραπάνω εντολές εκτελούν τα εξής για τις ανεξάρτητες μεταβλητές ΑΝΕΜΙΣΤΗΡΑΣ (FANSPEED) και ΑΦΥΓΡΑΝΤΗΡΑΣ (DEHUMIDIFIER). Ο ΑΦΥΓΡΑΝΤΗΡΑΣ (DEHUMIDIFIER) απενεργοποιείται (OFF), όταν η ΥΓΡΑΣΙΑ (HUMIDITY) είναι VERYDRY/ DRY/NORMAL και λειτούργει μόνο όταν υπάρχει ένδειξη ΥΓΡΑΣΙΑΣ (MOIST/ VERY MOIST). Ο ΑΝΕΜΙΣΤΗΡΑΣ (FANSPEED) λειτούργει σε κλίμακες (LOW/ MEDIUM. HIGH), αναλόγως την ΘΕΡΜΟΚΡΑΣΙΑ (TEMPERATURE). Σε κανονικές ή υψηλές θερμοκρασίες (TEMPERATURE= NORMAL/ HOT/VERY HOT/ EXTREMELY HOT), υποθέτουμε ότι δεν υπάρχει ένδειξη ΥΓΡΑΣΙΑΣ (HUMIDITY), άρα η αντίστοιχη μεταβλητή δεν λαμβάνεται υπόψη στους κανόνες, οπότε ο ΑΦΥΓΡΑΝΤΗΡΑΣ (DEHUMIDIFIER) είναι μονίμως απενεργοποιημένος (OFF) Αν TEMPERATURE(T)=EXTREMLY COLD(EC) και HUMIDITY(H)= VERY DRY(VD)/ DRY(D)/ NORMAL(N) FANSPEED (FS)= HIGH και DEHUMIDIFIER(DH)=OFF Αν TEMPERATURE(T)=EXTREMLY COLD(EC) και HUMIDITY(H)= MOIST(M)FAN SPEED (FS)=HIGH και DEHUMIDIFIER(DH)=LOW Αν TEMPERATURE(T)=EXTREMLY COLD(EC) και HUMIDITY(H)= VERY MOIST(VM)FAN SPEED(FS)=HIGH και DEHUMIDIFIER(DH)=HIGH Αν TEMPERATURE(T)= VERY COLD(VC) και HUMIDITY(H)= VERY DRY(VD) / DRY(D)/ NORMAL(N)  FAN SPEED(FS)=HIGH και DEHUMIDIFIER(DH)=OFF Αν TEMPERATURE(T)=COLD(C) και HUMIDITY(H)= VERY DRY(VD) / DRY(D)/ NORMAL(N)  FAN SPEED(FS)=MEDIUM και DEHUMIDIFIER(DH)=OFF Αν TEMPERATURE(T)= NORMAL(N)  FAN SPEED(FS)=LOW και DEHUMIDIFIER(DH)=OFF Αν TEMPERATURE(T)= ΗΟΤ(Η)  FAN SPEED (FS)=MEDIUM και DEHUMIDIFIER(DH)=OFF
  • 48. 48 Αν TEMPERATURE(T)= VERY ΗΟΤ(VΗ) FAN SPEED(FS)=HIGH και DEHUMIDIFIER(DH)=OFF Αν TEMPERATURE(T)= EXTREMELY ΗΟΤ(EΗ)  FAN SPEED(FS)=HIGH και DEHUMIDIFIER(DH)=OFF Τα βήματα μιας υποτυπώδους λειτουργιάς ενός aircondition, εχουν πλέον ολοκληρωθεί και εν συνεχεία θα πρέπει να ελεγθεί η λειτουργία του μοντέλου μας. Το επόμενο βήμα είναι να εισάγουμε διάφορες τιμές για τις ανεξάρτητες μεταβλητές (ΘΕΡΜΟΚΡΑΣΙΑ, ΥΓΡΑΣΙΑ) και να διαπιστώσουμε αν για τις τιμές εισόδου θα προκύψουν οι ανάλογες τιμές εξόδου, βασιζόμενοι πάντα στους κανόνες που έχουμε θέσει για τις εξαρτημένες μεταβλητές (ΑΝΕΜΙΣΤΗΡΑΣ, ΑΦΥΓΡΑΝΤΗΡΑΣ). ----------------- BHMA 4. Στα προηγούμενα βήματα έχει ολοκληρωθεί ο σχεδιασμός του ασαφούς συστήματος, ορίζοντας τα εξης: 1) Τις μεταβλητές εισόδου (input variables) ΘΕΡΜΟΚΡΑΣΙΑ και ΥΓΡΑΣΙΑ. 2) Το εύρος τιμών των μεταβλητών εισόδου. 3) Τις συναρτήσεις συμμετοχής των μεταβλητών εισόδου (membership functions of input variables). 4) Τις μεταβλητές εξόδου (output variables) ΑΝΕΜΙΣΤΗΡΑΣ και ΑΦΥΓΡΑΝΤΗΡΑΣ. 5) Το εύρος τιμών των μεταβλητών εξόδου. 6) Τις συναρτήσεις συμμετοχής των μεταβλητών εξόδου (membership functions of output variables). 7) Τους κανόνες που σχετίζουν τις μεταβλητές εισόδου με τις μεταβλητές εξοδου (rules and statements).
  • 49. 49 Στο τελευταίο βήμα της διαδικασίας πραγματοποιείται ο έλεγχος των αποτελεσμάτων που εξάγει το σύστημα, ώστε να προβούμε σε διορθώσεις σε περίπτωση που δεν συνάδουν με το σχεδιασμό μας. Για να επιτύχουμε τούτο το σκοπό, θα χρησιμοποιήσουμε τον RulerView της εργαλειοθήκης FuzzyLogic. Το RulerView παρέχει την δυνατότητα εισαγωγής τιμών για τις ανεξάρτητες μεταβλητές και αποδίδει τις αντίστοιχες εξαρτημένες μεταβλητές βασιζόμενο στους κανόνες και τις εντολές που έχει αποδώσει ο σχεδιαστής. Για να ανοίξουμε το RulerView, κατευθυνόμαστε από την αρχική οθόνη του Ασαφούς Μοντέλου ως εξής (βλ. παρακάτω εικόνες) Επιλεγούμε από το VIEWRULES (EIKONA 19) και έπειτα στην νέα οθόνη θέτουμε τιμές για τις μεταβλητές εισόδου στο πεδίο input (ΕΙΚΟΝΑ 20)
  • 52. 52 Υπενθυμίζουμε ότι για τις ανεξάρτητες μεταβλητές ισχύουν τα εξής ΑΝΕΜΙΣΤΗΡΑΣ (FANSPEED/ FS) FS: LOW (1,2) // MEDIUM (2,3) // HIGH (3,4) ΑΦΥΓΡΑΝΤΗΡΑΣ (DEHUMIDIFIER/ DH) DH: OFF (0,1) // LOW (1,2) // HIGH (2,3) Θέτοντας τιμές στις μεταβλητές TEMPERATURE και HUMIDITY, μεταβάλλονται ανάλογα οι εξαρτημένες μεταβλητές FANSPEED και DEHUMIDIFIER ΣΥΜΠΕΡΑΣΜΑΤΑ. Η Ασαφής Λογική είναι μια τεχνική, η οποία χρησιμοποιείται ευρέως σε ένα πλήθος επιστήμων και εφαρμογών. Τα θεμέλιά της εντοπίζονται σε μαθηματικές και λογικές δομές και ο μαθηματικός LotfiZadeh ήταν ο πρώτος που καθιέρωσε τον ορό ασαφές σύνολο και ασαφής λογική το 1965. Τεχνικές της Ασαφούς Λογικής χρησιμοποιούνται σε εφαρμογές και κλάδους όπως η μηχανική, οικονομικά, ηλεκτρολογία, χημεία, φυσική, αεροναυπηγική, νευρωνικά δίκτυα, υπολογιστές, κινηματογράφο κτλ. Στην εργασία μας παρουσιάσαμε ένα βασικό μοντέλο λειτουργιάς ενός aircondition με δυο μεταβλητές εισόδου (Θερμοκρασία και Υγρασία) και δυο μεταβλητές εξόδου (Ανεμιστήρας και Αφυγραντηρας). Σκοπός μας ήταν να γίνουν κατανοητές η βασική θεωρία και οι δομές που στηρίζεται η Ασαφής Λογική καθώς και η ανάπτυξη του μοντέλου με το λογισμικό Matlab. Αναπτύχθηκαν έννοιες όπως 1) Ασαφές Σύνολο (fuzzy set) 2) Γλωσσικές Μεταβλητές (linguistic variables) 3) Συναρτήσεις Συμμετοχής (membership functions) 4) Ασαφείς Κανόνες και Προτάσεις (fuzzy rules and statements). Τούτα αποτελούν τα θεμέλια ώστε να μπορεί ο αναγνώστης να κατανοήσει πιο πολύπλοκες έννοιες και θεωρίες καθώς και πιο προχωρημένα μοντέλα. Το Matlab είναι ένα πρόγραμμα το οποίο έχει πραγματικά πολλές δυνατότητες και αξίζει η ενασχόληση και εκμάθηση του τρόπου λειτουργιάς του. Για κάποιον που θα ασχοληθεί για πρώτη φορά, συστήνουμε να ξεκινήσει με το manual του Matlab
  • 53. 53 καθώς και με τα παραδείγματα και τις έτοιμες εφαρμογές που διαθέτει, ώστε να γίνει κατανοητός ο τρόπος λειτουργιάς του. Επειδή διαθέτει ένα μεγάλο πλήθος εφαρμογών και εργαλείων, καλό θα ήταν η αρχή να γίνει πάνω σε ένα αντικείμενο που ο αναγνώστης γνωρίζει ή είναι εξοικειωμένος με αυτό. Προτείνουμε για κάποιον που λειτούργει πρώτη φορά το Matlab και επιθυμεί να εξοικειωθεί, να αρχίσει με τα εξής toolboxes και τις εφαρμογές τους 1) Statistics and Machine Learning Toolbox 2) Curve Fitting Toolbox 3) OptimizationToolbox 4) Symbolic Math Toolbox. Τουτα τα toolboxes αντιστοιχούν σε εφαρμογές μαθηματικών και στατιστικής, αντικείμενα που είναι γνωστά είτε από το λύκειο είτε από κάποια ανώτερη σχολή. Για όσους ασχολούνται με οικονομικές επιστήμες ή συναφή αντικείμενα (χρηματοοικονομικά, επενδύσεις, τραπεζικά, χρηματιστηριακά κτλ) τα επόμενα toolboxes θα φάνουν πολύ χρήσιμα 1) Econometrics Toolbox 2) FinancialToolbox 3) Financial Instruments Toolbox 4) Trading Toolbox 5) Risk Management Toolbox. Τελειώνοντας, ένα πολύ καλό εργαλείο που διαθέτει το Matlab είναι το Simulink (Simulation and Model-Base Design), όπου ο ερευνητής έχει την δυνατότητα να αναπτύξει το δικό του μοντέλο ή σύστημα, να το τρέξει, ελέγξει, διορθώσει οποιαδήποτε προβλήματα προκύψουν και έπειτα να το ‘’πακετάρει’’ ως ολοκληρωμένο πρόγραμμα το οποίο θα βγει στην αγορά για χρήση. Πολυεθνικές εταιρίες και ερευνητικά κέντρα (π.χ. Fujitsu, NASA, Huawei) χρησιμοποιούν το Matlab και το Simulink, προτού προωθήσουν το προϊόν ή την υπηρεσία για χρήση.
  • 54. 54 ΒΙΒΛΙΟΓΡΑΦΙΑ- ΑΝΑΦΟΡΕΣ [1] Εισαγωγή στην Ασαφή Λογική. (Θεοδώρου Α. Γιάννης. Εκδόσεις Τζιολα- 2000) [2] Μαθηματική λογική. Θεωρία και πράξη (Τουρλακης Γεώργιος. Πανεπιστημιακές εκδόσεις Κρήτης- 2011) [3] Scientific theories and the computational theory of perceptions-A structuralis view including fuzzy sets (Rudolf Seising-2007) [4] Fuzzy Logic, knowledge and natural language (Gaetano Licata- 2012) [5] Fuzzy sets, fuzzy logic and fuzzy systems (Lotfi A. Zadeh- 1996) [6] Fuzzy sets, fuzzy logic, fuzzy methods with applications. (Hans Bandemer, Siegfried Gottwald- 1995) [7] Advances in the linguistic synthesis of fuzzy controllers (Ebrahim Mamdani- 1976) [8] Structure identification of fuzzy model (Michio Sugeno, Geuntaek Kang- 1988) [9] A fuzzy logic based approach to qualitative modeling (Michio Sugeno and Takahiro Yasukawa- 1993) [10] Twenty years of fuzzy control experiences gained and lessons learnt Ebrahim Mamdani- 1993) [11] Fuzzy sets and fuzzy logic. Theory and applications (George J. Klir, Bo Yuan- 1995) [12] Fuzzy description logics from a mathematical fuzzy logic point of view (Marco Cerami- 2012) [13] Matlab 2013 manual [14] Matlab Fuzzy Logic Toolbox manual