Fuzzy Logic Controller: Auswahl der Mitgliedschaftsfunktion

7

In der klassischen Mengenlehre gibt es zwei Möglichkeiten für ein Element. Es ist entweder Mitglied eines Sets oder nicht. In der Fuzzy-Mengen-Theorie gibt es jedoch Zugehörigkeitsfunktionen , um die "Rate" eines Elements zu definieren, das Mitglied einer Menge ist. Mit anderen Worten, die klassische Logik sagt, dass alles schwarz oder weiß ist, aber die Fuzzy-Logik bietet, dass es auch Grau gibt, das Schattierungen zwischen Weiß und Schwarz aufweist.

Die Matlab Simulink Library ist sehr einfach zu gestalten und in der Praxis hilfreich. Und es gibt gute Beispiele für sich, wie die Entscheidung über ein Trinkgeld für ein Abendessen, bei dem Service und Qualität des Essens im Vordergrund stehen. In der folgenden Abbildung sind einige verschiedene Zugehörigkeitsfunktionen aus der Matlab-Bibliothek dargestellt:

Geben Sie hier die Bildbeschreibung ein

Meine Frage: Wie entscheiden wir uns für die Auswahl der Zugehörigkeitsfunktionen beim Entwurf eines Fuzzy-Controller-Systems? Ich meine im Allgemeinen nicht nur in Matlab Simulink. Ich habe gesehen, dass Dreiecks- und Gauß- Funktionen hauptsächlich in der Praxis verwendet werden, aber wie können wir entscheiden, welche Funktion ein besseres Ergebnis für die Entscheidungsfindung liefert? Müssen wir ein neuronales Netzwerk trainieren, um zu entscheiden, welche Funktion je nach Problem und Regeln besser ist? Was sind andere Lösungen?

Summer
quelle
2
Haben Sie zunächst Daten? Ich würde die Elementfunktionen so auswählen, dass sie ungefähr mit den Daten übereinstimmen, die Sie modellieren möchten. Die Funktion hängt von dem Problem ab, das Sie lösen möchten. Am einfachsten wäre es, Ihre Daten zu zeichnen und die beste Übereinstimmung auszuwählen. Dies funktioniert jedoch nicht mit komplexem Datenraum. Wie komplex ist Ihr Problem? Was ist die Dimensionalität Ihres Problemraums?
zlobi.wan.kenobi
Ich stimme dafür, diese Frage als nicht zum Thema gehörend zu schließen (siehe in der Hilfe definierter Bereich). Derzeit wird lieber auf Signalverarbeitung (?) Migriert, um eine Antwort zu erhalten.
Eric Platon
@ zlobi.wan.kenobi Vielen Dank für den freundlichen Kommentar und die Entschuldigung für die verspätete Antwort. Ich habe zunächst keinen Datensatz. Meine Frage war allgemein. Ich war verwirrt darüber, wie man Mitgliedschaftsfunktionen nach verschiedenen Problemen auswählt. Zum Beispiel kann es sich um eine "Krankheitsentscheidung" aus der Blutuntersuchung handeln, bei der ein sich selbst ergebendes System aufgebaut wird, das unterschiedliche Werte betrachtet. Dieses Problem ist eine reine Unschärfe, da die Untersuchungswerte einen großen Maßstab haben. Ich habe das Erstellen von Regeln verstanden und mich nur gefragt, ob es bei der Auswahl der am besten geeigneten Mitgliedschaftsfunktion neben der Verwendung neuronaler Netze noch einen anderen Weg gibt.
Summer
1
Sie können das adaptive Neuro-Fuzzy-Inferenzsystem erforschen !
kiner_shah
1
@EricPlaton, Fuzzy-Systeme und neuronale Netze sind in der Tat eine Teilmenge der KI. Wie in der Hilfe erwähnt, können wir hier über Konzepte der KI diskutieren . Also stimme ich @buzzer zu!
kiner_shah

Antworten:

2

Zuerst muss ich beachten, dass es keinen vorgeschriebenen / besten Weg gibt, die Form der Zugehörigkeitsfunktion in Fuzzy-Systemen zu wählen, das ist die Unschärfe darin. Man könnte argumentieren, dass der beste Weg ist, einen Experten auf dem Gebiet zu fragen, wo Sie Ihre Fuzzy-Lösung anwenden werden, aber diese sind nicht immer verfügbar.

Vor diesem Hintergrund werden Fuzzy-Zugehörigkeitsfunktionen verwendet, um die Verteilung der Wahrscheinlichkeiten in der realen Welt für die Variable zu beschreiben, die Sie in Ihrem Fuzzy-Controller verwenden möchten. Das heißt, Sie gehen in die reale Welt, schauen sich das System an, das Sie steuern möchten, versuchen Ihr Bestes, um zu verstehen, wie es funktioniert, und reagieren auf verschiedene äußere Veränderungen. Basierend auf Ihren Erkenntnissen wählen Sie die Form, die am besten passt. Oder wenn Sie möchten, können Sie diesen Prozess als heuristische Wahl bezeichnen (so etwas mag ich Theorie nicht sehr).

Darüber hinaus müssen Sie eine wichtige Sache erkennen: Die Form der Zugehörigkeitsfunktion hat keinen großen Einfluss auf das resultierende Controller-Verhalten. Die einflussreichsten Teile sind die Fuzzy-Regeln und ihre Inferenzmethoden, die Sie in Ihrem Controller verwenden, aber das ist ein anderes Thema. Egal für was Sie sich entscheiden, es wird keinen großen Unterschied machen.

Gaußsche Funktionen werden am häufigsten aufgrund des Charakters der Welt verwendet, in der wir leben. Viele Menschen argumentieren, dass alles auf der Welt eine Gaußsche Verteilung hat (jeder hat ein Recht auf seine Meinung). Und die Dreiecksfunktionen werden verwendet, weil sie die einfachste Alternative sind, die der Gaußschen Funktion etwas ähnlich ist.

Aber wenn Sie unbedingt die beste für Ihr spezielles Problem auswählen müssen. Es gibt immer Simulationswerkzeuge, die genau für diesen Zweck existieren. Einer von ihnen ist Matlab Simulink, wie Sie erwähnt haben, aber es gibt andere, wenn Sie den Preis des Matlab nicht mögen.

Mein Vorschlag ist, gehen Sie mit Ihrem Darm, testen Sie es in einer sicheren Umgebung und wenn es funktioniert, stellen Sie es in der realen Welt bereit.

Dominik
quelle