Κεφάλαιο 6 Σχεδιασμός Ασαφών Ελεγκτών Στο Κεφάλαιο αυτό εξετάζουμε τα στάδια σχεδιασμού ενός ασαφούς ελεγκτή χρησιμοποιώντας την εργαλειοθήκη Fuzzy Toolbox του λογισμικού ανάλυσης και σχεδιασμού συστημάτων MATLAB. Επεξηγούμε τα βήματα ανάπτυξης ενός ασαφούς ελεγκτή ενός απλού συστήματος που βρίσκεται στα demos της εργαλειοθήκης και συνιψίζεται παρακάτω. Η επιλογή των εξόδων της διαδικασίας, που αποτελούν τα αίτια του ελεγκτή, είναι συνήθως αυτονόητα και γίνεται με βάση τις απαιτήσεις της ελεγχόμενης διαδικασίας. Αυτές είναι οι μεταβλητές που επηρεάζουν άμεσα το παραγόμενο προϊόν της διαδικασίας. Έτσι, μετρήσιμες ποσότητες, όπως οι ροές πρώτων υλών, θερμοκρασίες, διαφορικές πιέσεις, μετατοπίσεις και ταχύτητες είναι μερικά τυπικά παραδείγματα.
Σχεδιασμός Ασαφών Ελεγκτών Η εισροή του υγρού στο δοχείο ρυθμίζεται με μια ηλεκτροβάνα και είναι προφανές ότι η στάθμη του υγρού στο δοχείο εξαρτάται από τη διαφορά μεταξύ της εισροής και της εκροής. Στόχος του ελεγκτή είναι η τήρηση της στάθμης του υγρού στο δοχείο h(t) παρά τις διακυμάνσεις στις δύο ροές. Θεωρούμε ότι η στάθμη είναι μετρήσιμη με έναν κατάλληλο αισθητήρα.
Παράδειγμα Ο ασαφής ελεγκτής έχει εισόδους τη μετρούμενη στάθμη h(t) καθώς και την επιθυμητή στάθμη hd. Αντίστοιχα, η έξοδος του ελεγκτή είναι ο ρυθμός u(t) με τον οποίο ρυθμίζουμε την ηλεκτροβάνα και συνεπώς τη παροχή στο δοχείο. Το μόνο που γνωρίζουμε για την ελεγχόμενη διαδικασία είναι ότι αν η στάθμη υπερβεί την επιθυμητή, τότε θα πρέπει να αυξήσουμε την παροχή.
Βάση Γνώσης-1 Το στοιχείο ‘FUZZY LOGIC CONTROLLER’ είναι ο ασαφής ελεγκτής που επιδιώκουμε να σχεδιάσουμε. Το παράδειγμα μας επιτρέπει να συγκρί-νουμε τη συμπεριφορά του ασαφούς ελεγκτή με ένα συμβατικό ελεγκτή τριών όρων ‘PID Controller’ επιλέγοντας την τιμή της μεταβλητής Const1 από 1 για τον ασαφή ελεγκτή σε –1 για τον συμβατικό ελεγκτή τριών όρων. Σε πολλές περιπτώσεις στην πράξη δεν έχουμε ακριβές μαθηματικό πρότυπο της ελεγχόμενης διαδικασίας που θα διευκόλυνε το σχεδιασμό ενός συμβατικού ελεγκτή. Παρόλα αυτά, έμπειροι χειριστές ελέγχουν τις διαδικασίες αυτές χωρίς γνώση των ποσοτικών δυναμικών προτύπων. Ο άνθρωπος συνειδητά μετα-χειρίζεται ένα σύνολο λεκτικών κανόνων της μορφής ‘ΑΝ-ΤΟΤΕ’, για να συνάγει τις δράσεις που θα πρέπει να κάνει προκειμένου να αντισταθμίσει την ελεγχόμενη διαδικασία.
Βάση Γνώσης-2 Η απόκτηση της γνώσης σχετικά με τον έλεγχο μιας φυσικής διαδικασίας σε μορφή λεκτικών κανόνων είναι μια επίπονη και χρονοβόρα διαδικασία εφόσον δεν είναι βέβαιο ότι δύο χειριστές θα χρησιμοποιούσουν τους ίδιους κανόνες ή την ίδια πολιτική ελέγχου για όμοιες καταστάσεις. Όλοι οι χειριστές χρησιμοποιούν κάποια στρατηγική ελέγχου που έχουν μάθει προκειμένου να διατηρήσουν την διαδικασία υπό την εποπτεία τους στην επιθυμητή της κατάσταση.
Βάση Γνώσης-2 Ένας χειριστής μπορεί να ακολουθήσει επιθετική στρατηγική με ταυτόχρονες μεταβολές στις επιθυμητές τιμές, στοχεύοντας την ταχεία αποκατάσταση της διαδικασίας μετά από απόκλιση από την επιθυμητή τιμή της κατάσταση. Ένας δεύτερος χειριστής μπορεί να θεωρήσει ότι η απόκλιση της διαδικασίας από την επιθυμητή που παρατήρησε σε κάποια στιγμή δεν είναι αρκετή για να αλλάξει τις επιθυμητές τιμές και προτιμά να παρακολουθεί την εξέλιξη της διαδικασίας για κάποιο χρονικά διάστημα ακόμη, με την ελπίδα ότι η απόκλιση είναι προσωρινό φαινόμενο. Τέλος, ένας τρίτος χειριστής, που δεν έχει μεγάλη εμπειρία, πολύ πιθανόν να ακολουθήσει συντηρητική στρατηγική, χρησιμοποιώντας μικρές διαδοχικές διορθώσεις σε κάθε μια από τις μεταβλητές ελέγχου που απαιτούν μεγάλο χρόνο αποκατάστασης. Υπάρχει, όμως, μεγάλη διαφορά στα αποτελέσματα.
Βάση Γνώσης-3 Έχοντας μόνο στοιχειώδεις πληροφορίες θα μπορούσαμε να την αντισταθμίσουμε με τους εξής τρεις μόνο λεκτικούς κανόνες: 1. ΑΝ το σφάλμα στη στάθμη του νερού e(t) είναι ΜΗΔενικό (δηλαδή η στάθμη είναι ίση με την επιθυμητή) ΤΟΤΕ ο ρυθμός της θέσης της βάνας u(t) θα πρέπει να είναι ΜΗΔενικός (δηλαδή δεν επιδρούμε στη διαδικασία). 2. ΑΝ το σφάλμα στη στάθμη του υγρού e(t) είναι ΧΑΜηλό (δηλαδή η στάθμη είναι κάτω από την επιθυμητή) ΤΟΤΕ ο ρυθμός της θέσης της βάνας u(t) θα πρέπει να είναι ΘετικόςΜΕΓάλος, δηλαδή θα πρέπει να ανοίξουμε τη βάνα για να γεμίσει το δοχείο. 3. ΑΝ το σφάλμα στη στάθμη του υγρού e(t) είναι ΥΨΗλό (δηλαδή η στάθμη είναι πάνω από την επιθυμητή) ΤΟΤΕ ο ρυθμός της θέσης της ηλεκτροβάνας u(t) θα πρέπει να είναι ΑρνητικόςΜΕΓάλος, δηλαδή θα πρέπει να κλείσουμε την ηλεκτροβάνα ώστε να αδειάσει το δοχείο γρήγορα.
Βάση Γνώσης-4 Η ποιότητα ελέγχου (control quality) του ασαφούς ελεγκτής που βασίζεται στους τρεις παραπάνω κανόνες δεν μπορεί είναι μεγάλη και το κλειστό σύστημα θα παρουσιάζει ανεπιθύμητο μόνιμο σφάλμα. Αν προσθέσουμε τους δύο επιπλέον κανόνες παρακάτω θα παρατηρήσουν ότι η ποιότητα ελέγχου αυξάνεται σημαντικά: 4. ΑΝ το σφάλμα στη στάθμη του υγρού είναι ΜΗΔενική ΚΑΙ η παράγωγος της στάθμης είναι Αρνητική ΜΙΚρή ΤΟΤΕ πρέπει να κλείσουμε την ηλεκτροβάνα λίγο, δηλαδή ο ρυθμός της ηλεκτροβάνας θα πρέπει να είναι ΑρνητικόςΜΙΚρός. 5. ΑΝ το σφάλμα στη στάθμη του υγρού είναι ΜΗΔενικό ΚΑΙ η παράγωγος της στάθμης είναι Θετική ΜΙΚρή ΤΟΤΕ θα πρέπει να ανοίξουμε την ηλεκτροβάνα λίγο, δηλαδή ο ρυθμός ανοίγματος της ηλεκτροβάνας θα πρέπει να είναι Θετικός ΜΙΚρός.
Βάση Γνώσης-5 Ο ελεγκτής θα πρέπει να παράγει μια ποσοτική εντολή προς τον ενεργοποιητή (δηλ. την ηλεκτροβάνα), θα πρέπει επίσης να γνωρίζουμε και τα παρακάτω για να σταθμίσουμε τις λεκτικές μεταβλητές: · τη μέγιστη επιτρεπτή μεταβολή σ της στάθμης από την ονομαστική της τιμή και · το μέγιστο ρυθμό μεταβολής της στάθμης ρ (που μπορεί να εκτιμηθεί μετά από δοκιμές στη διαδικασία ή με απλούς υπολογισμούς από τις διαστάσεις του δοχείου και τη μέγιστη εισροή του νερού).
Καθορισμός των Υπερσυνόλων Αναφοράς Ο καθορισμός των υπερσυνόλων αναφοράς των εισόδων και εξόδων του ελεγκτή αποτελεί το δεύτερο βήμα στην υλοποίηση ενός ασαφούς ελεγκτή. Για να διευκολύνουμε το σχεδιασμό, είναι βολικό να κανονικοποιήσουμε τα υπερσύνολα αναφοράς στην περιοχή [-1,1] αν πρόκειται για συμμετρικά σήματα ή [0,1] για ασύμμετρα σήματα. Οι μέγιστες επιτρεπτές τιμές κάθε μεταβλητής της φυσικής διαδικασίας μας καθοδηγούν να υπολογίσουμε την τιμή της εξασθένισης ή κέρδους κάθε σήματος ώστε να κανονικοποιηθούν. Η διαδικασία αυτή πρέπει να γίνει για κάθε είσοδο και κάθε έξοδο του ελεγκτή αλλά ενδέχεται να τροποποιηθούν οι τιμές των κερδών μετά τις αρχικές δοκιμές στην πράξη.
Καθορισμός των Υπερσυνόλων Αναφοράς
Επιλογή των Ασαφών Συνόλων Το επόμενο βήμα στην ανάπτυξη του ασαφούς ελεγκτή είναι ο ορισμός του αριθμού των ασαφών συνόλων για κάθε μεταβλητή εισόδου και εξόδου καθώς και ο ορισμός της μορφής των ασαφών συνόλων. Όπως θα δούμε στη συνέχεια, η μορφή των ασαφών συνόλων παίζει δευτερεύοντα ρόλο και για πρακτικούς λόγους επιλέγουμε την πιο απλή μορφή που μας αποδίδει αποδεκτά απο-τελέσματα. Η τραχύτητα (coarseness) ενός ασαφούς ελεγκτή εξαρτάται από τον αριθμό των ασαφών συνόλων που θα χρησιμοποιήσουμε για να περιγράψουμε τις μεταβλητές εισόδου και εξόδου του ελεγκτή και συνεπώς επηρεάζει άμεσα την ακρίβεια με την οποία μπορούμε να ελέγξουμε μια διαδικασία. Είναι ευνόητο ότι μεγάλη ακρίβεια απαιτεί μεγάλο αριθμό συνόλων και αντίστοιχο χώρο στη μνήμη.
Επιλογή των Ασαφών Συνόλων Στο παράδειγμα αυτό χρησιμοποιούμε τρία σύνολα (NE - Negative, ZΟ - ZerO και PO - Positive) για μεγάλες αποκλίσεις ενώ για μικρές αποκλίσεις κατα-λήγουμε σε πέντε σύνολα. Πρέπει, βέβαια, να υπάρχει κάποιος μηχανισμός που να αποφασίζει πότε θα γίνει η μεταγωγή. Συχνά ο μηχανισμός αυτός είναι ένας ευφυής επόπτης που λειτουργεί και ο ίδιος με ασαφή λογική!
Επιλογή των Ασαφών Συνόλων Ο ασαφής αλγόριθμος θα πρέπει να συμπεραίνει τις δράσεις ελέγχου για κάθε πιθανή κατάσταση της ελεγχόμενης διαδικασίας. Η ιδιότητα αυτή καλείται συμπλήρωση (completeness) και εξαρτάται από το πλήθος των κανόνων, τη μορφή και την επικάλυψη (overlapping) των ασαφών συνόλων. Η ακεραιότητα του ελεγκτή μειώνεται όσο μειώνεται η επικάλυψη και είναι μηδενική όταν η υπερκάλυψη ενός από των ασαφών συνόλων των εισόδων του ελεγκτή είναι μηδέν έστω και σε ένα σημείο μόνο.
Επιλογή του Μηχανισμού Συμπερασμού Ο μηχανισμός συμπερασμού που βασίζεται στη συνεπαγωγή Mamdani κυριαρχεί στην πράξη λόγω της απλότητας του. Ο μηχανισμός αυτός χρησιμοποιεί τον τελεστή max, μια εντολή σε οποιαδήποτε γλώσσα προγραμματισμού που επιλέγει τη μέγιστη τιμή μιας σειράς πραγματικών αριθμών. Η εκτέλεση της εντολής απαιτεί ελάχιστο υπολογιστικό έργο και χρόνο. Σε ελάχιστες περιπτώσεις έχουν χρησιμοποιηθεί μηχανισμοί συμπερασμού που βασίζονται στη συνεπαγωγή Larsen. Εδώ απαιτείται πολλαπλασιασμός μιας σειράς πραγματικών αριθμών, μια διαδικασία που είναι ιδιαίτερα χρονοβόρα.
Επιλογή του Μηχανισμού Απο-Ασαφοποίησης Η επιφάνεια ελέγχου (control surface) απεικονίζει τις απαιτούμενες δράσεις ελέγχου, δηλαδή την έξοδο του ελεγκτή, συναρτήσει των μεταβλητών εισόδου του ελεγκτή. Η μορφή της επιφάνειας ελέγχου εξαρτάται από τη μορφή των ασαφών συνόλων, τις θέσεις που εστιάζονται τα σύνολα, τους κανόνες ελέγχου και η μέθοδος απο-ασαφοποίησης. Η επιφάνεια ελέγχου μας δίνει μια έμμεση ένδειξη πώς να τροποποιήσουμε τους κανόνες ή πού να προσθέσουμε κανόνες ώστε να επιτύχουμε ομαλότερη επιφάνεια. Γενικά η διακριτή μορφή της απο-ασαφοποίησης με τη μέθοδο του κέντρου εμβαδού ή κέντρου βάρους χρησιμοποιούνται στην πράξη.
Συμπεράσματα Παρατηρούμε τις διάφορες Επιφάνειες Ελέγχου και τις Βηματικές Αποκρίσεις των Σχημάτων. Συμπερασματικά, παρατηρούμε ότι παρά τις μεγάλες διαφορές στις μορφές των ασαφών συνόλων των εισόδων και εξόδων, η επιφάνεια ελέγχου παραμένει ουσιαστικά η ίδια. Πιο εκλεπτυσμένος έλεγχος (fine control) γίνεται όταν ο αριθμός των κανόνων όπως και των ασαφών συνόλων αυξηθεί. Ο προσαυξημένος πίνακας κανόνων με 19 κανόνες και 5 λεκτικούς ορισμούς (PB - Positive_Big, PM - Positive_Medium, PS - Positive_Small, ZO-ZerO, NS - Negative_Small, NM - Negative_Medium, NB - Negative_Big) δίνεται.
Ασαφείς Ελεγκτές Τριών Όρων (PID) Οι είσοδοι ενός ελεγκτή τριών όρων είναι το σφάλμα e, η παράγωγος του De=de/dt και το ολοκλήρωμα του σφάλματος edt. Αν τα αντίστοιχα ασαφή σύνολα είναι Ε, ΔΕ και ΙΕ, τότε οι κανόνες ελέγχου θα είναι της μορφής Rr: ΑΝ e είναι Er και De είναι ΔΕr και e είναι ΙΕr τότε Du είναι Ur Όταν οι κανόνες ελέγχου συνδέονται μεταξύ τους με τον τελεστή ένωσης τότε η ασαφής σχέση του ελεγκτή είναι: R=R1R2.....Rn=(ErΔErIErUr) Η συνάρτηση συμμετοχής του ασαφούς ελεγκτή τριών όρων ορίζεται από τη σχέση μU(u)=[μΕ(e) μΔΕ(De) μΙΕ( e) μR(e, De, e,u)]
Ασαφείς Ελεγκτές Τριών Όρων (PID) Η απεικόνιση των κανόνων ενός ελεγκτή τριών όρων είναι δύσκολη γιατί έχουμε τρεις εισόδους. Έτσι συχνά ο ελεγκτής αποσυντίθεται σε δύο ασαφείς υποελεγκτές, ο πρώτος από τους οποίους παράγει το σήμα uPD που αντιστοιχεί στον αναλογικό όρο και στον όρο παραγώγου και το σήμα uI που αντιστοιχεί στον όρο ολοκλήρωσης. Για τον ελεγκτή δύο όρων PD περιέχει 77=49 κανόνες. Σε περίπτωση ενός ελεγκτή τριών όρων απαιτείται ένας τρισδιάστατος πίνακας με 777=343 κανόνες και αντίστοιχο χώρο στη μνήμη.