Fuzzylogik/Umsetzung in R
Einleitung
[Bearbeiten]Diese Seite zum Thema Fuzzylogik/Umsetzung in R kann als Wiki2Reveal Folien angezeigt werden. Einzelne Abschnitte werden als Folien betrachtet und Änderungen an den Folien wirken sich sofort auf den Inhalt der Folien aus. Dabei werden die folgenden Teilaspekte im Detail behandelt:
- (1) Zugehörigkeitsfunktionen plotten
- (2) Fuzzy-Operationen als Funktionen in R
- (3) Räumliche Implikationen und Entscheidungsunterstützung
Zielsetzung
[Bearbeiten]Diese Lernressource hat das Ziel, die fuzzylogischen Operationen und Berechnung in R umzusetzen und damit die Anwendung für konkrete Daten vorzubereiten.
Zielgruppe
[Bearbeiten]Die Zielgruppe der Lernressource zum Thema Fuzzylogik und dessen Umsetzung in R sind Studierende, die die theoretischen Konzepte der Fuzzylogik auf konkrete Daten anwenden möchten (z.B. datengetriebene Entscheidungsunterstützungssysteme mit eine fuzzylogischen Werkzeugen zu nutzen.
Lernvoraussetzungen
[Bearbeiten]Die Lernressource zum Thema Fuzzylogik und Umsetzung in R hat die folgenden Lernvoraussetzungen, die zum Verständnis der nachfolgenden Ausführungen hilfreich bzw. notwendig sind.
- (Grundlagen in R) Grundkenntnis in R sind hilfreich, um die Implementierung auf die eigenen Daten und Datenstrukturen anpassen zu können.
- (Dichten aus Daten erzeugen) In der Regel werden in diesem Beispiel Dichten aus Daten generiert, damit man aus den Dichtefunktionen dann Zugehörigkeitsfunktionen erzeugen kann.
Fuzzylogische Operatoren
[Bearbeiten]Fuzzylogische Operatoren werden im Folgenden als Funktionen implementiert, die dann auf Vektoren angewendet werden kann. Im Folgenden werden das Fuzzy-UND und Fuzzy-ODER mit Minimum und Maximum realisiert.
Fuzzy-NICHT - Negation
[Bearbeiten]fuzzy_not <- function (pf1) {
return <- rep(0,length(pf1))
for (i in 1:length(pf1)) {
return[i] <- 1 - pf1[i]
}
### Rückgabewert ist das komponentenweise Minimum der beiden Vektoren pf1 und pf2
return
}
Fuzzy-UND - Minimum
[Bearbeiten]fuzzy_and <- function (pf1,pf2) {
return <- rep(0,length(pf1))
for (i in 1:length(pf1)) {
return[i] <- min(pf1[i],pf2[i])
}
### Rückgabewert ist das komponentenweise Maximum der beiden Vektoren pf1 und pf2
return
}
Fuzzy-ODER - Maximum
[Bearbeiten]fuzzy_or <- function (pf1,pf2) {
return <- rep(0,length(pf1))
for (i in 1:length(pf1)) {
return[i] <- max(pf1[i],pf2[i])
}
### Rückgabewert ist das komponentenweise Maximum der beiden Vektoren pf1 und pf2
return
}
Bemerkung - Differenzierbarkeit
[Bearbeiten]Die Differenzierbarkeit von Zugehörigkeitsfunktionen hat bei Optimierungsproblemen eine besondere Bedeutung, wenn man so verändert möchte, dass die Zugehörigkeits maximiert bzw. minimiert werden soll. Sind zwei Zugehörigkeitsfunktionen differenzierbar, so erzeugt das durch Minimum, bzw. Maximum definierte Fuzzy-ODER bzw.Fuzzy-UND allerdings nicht differzierbare Zugehörigkeitsfunktionen.
Differenzierbare Fuzzy-Operatoren
[Bearbeiten]Ist und und , so erzeugen die folgenden Definitionen für Fuzzy-UND und Fuzzy-ODER partiell differzierbare Zugehörigkeitsfunktion nach Anwendung der Operationen.
Fuzzy-UND - Multiplikation
[Bearbeiten]fuzzy_mult_and <- function (pf1,pf2) {
return <- rep(0,length(pf1))
for (i in 1:length(pf1)) {
return[i] <- pf1[i] * pf2[i]
}
### Rückgabewert komponentenweises Fuzzy-UND der Vektoren pf1 und pf2
return
}
Fuzzy-ODER - über De Morgan
[Bearbeiten]fuzzy_mult_or <- function (pf1,pf2) {
return <- rep(0,length(pf1))
for (i in 1:length(pf1)) {
return[i] <- 1- (1-pf1[i]) * (1-pf2[i])
}
### Rückgabewert komponentenweises Fuzzy-ODER der Vektoren pf1 und pf2
return
}
Aufgaben für Lernende / Studierende
[Bearbeiten]Mit den folgenden Aufgaben zum Thema Fuzzylogik/Umsetzung in R werden
Beispiel
[Bearbeiten]Als einführendes Beispiel zum Thema Fuzzylogik/Umsetzung in R dient dabei
Literatur/Quellennachweise
[Bearbeiten]
Siehe auch
[Bearbeiten]Seiteninformation
[Bearbeiten]Diese Lernresource können Sie als Wiki2Reveal-Foliensatz darstellen.
Wiki2Reveal
[Bearbeiten]Dieser Wiki2Reveal Foliensatz wurde für den Lerneinheit Fuzzylogik' erstellt der Link für die Wiki2Reveal-Folien wurde mit dem Wiki2Reveal-Linkgenerator erstellt.
- Die Seite wurde als Dokumententyp PanDocElectron-SLIDE erstellt.
- Link zur Quelle in Wikiversity: https://de.wikiversity.org/wiki/Fuzzylogik/Umsetzung%20in%20R
- siehe auch weitere Informationen zu Wiki2Reveal und unter Wiki2Reveal-Linkgenerator.