Ein Fuzzy Associative Memory (kurz FAM) ist ein unscharfes Logik -Tool für die Entscheidungsfindung. Fuzzy Logic FAMs haben eine breite Palette praktischer Anwendungen:
Ein Fuzzy Associative Memory verwendet Fuzzy -Mengen, um eine Reihe von Regeln festzulegen, die von Natur aus sprachlich sind. Beispiele können umfassen:
Die sprachlichen Regeln und die Fuzzy -Sets, die sie enthalten, werden von einem menschlichen "Experten" (vermutlich Sie) definiert. Das heißt, die Regeln kodifizieren Intelligenz und kartieren dieses Wissen von der menschlichen Domäne in die Digitale.
Nachdem die Regeln definiert sind, wird eine FAM konsultiert, um Ihrer KI zu helfen, eine Descision zu machen:
Wie Sie sehen können, sind die verschwommenen Regeln absichtlich vage und verwenden Qualifikatoren wie "ein wenig" und "viel". Darüber hinaus sind die Grenzen zwischen Fuzzy -Sätzen absichtlich verschwommen. Dies ist die Natur von unscharfen Sätzen; Sie erfassen eine solche menschliche Unschärfe so, dass sie ein hohes natürliches Verhalten aus den unscharfen Regeln entzieht. Bei der Definition dieser Regeln hilft es sich vorzustellen, einen echten Experten in der Domäne zu interviewen und die Fähigkeiten aufzuschreiben, die erforderlich sind, um im Bereich erfolgreich zu sein.
Fuzzy sprachliche Variablen können schwer zu visualisieren sein, insbesondere wenn sie komplex werden und Dreiecke und Trapezoide in Kombination einbeziehen. Um das zu beantworten, kann diese Software (optional) jetzt (optional) an Ihren installierten GnuPlot verhandeln und PNG- oder SVG -Renderings Ihrer FLVs erstellen. Hier ist ein Beispiel:
Dies ist funktionsfähig, funktionale Software, die für die Verwendung in Ihrem eigenen Spiel oder Ihrer eigenen Anwendung geeignet ist. Es unterstützt derzeit:
if A then Z
)if A or B, then Z
/ if A and B, then Z
)Zu tun (in absteigender Bedeutung, ungefähr):
Sehen Sie sich den ChangeLog für Nachrichten an.
Ich empfehle Ihnen, das Git -Repository zu klonen und die Beispiele und den Quellcode zu durchsuchen, um zu verstehen, wie FAMS funktioniert.
Wenn Sie dies jedoch in Ihrem eigenen Projekt verwenden möchten, ist der einfachste Weg, dies zu tun, über das Edelstein:
gem install fuzzy_associative_memory
Dann in Ihrem Code:
require 'fuzzy_associative_memory'
Das Edelstein wird vollständig genannt, um Kollisionen zu verhindern. In den Beispielen finden Sie die Nutzungsdetails.
Das bin
-Verzeichnis enthält die folgenden Beispiele:
hvac_system_example
veranschaulicht, wie eine FAM eine HLK -Lüftereinheit regieren könnte, um eine konstante, komfortable Temperatur aufrechtzuerhaltenweapon_choice_example
veranschaulicht, wie eine Familie ein Spiel intelligent entscheiden lassen kann, welche Waffe verwendet werden sollDiagramme der fuzzy sprachlichen Variablen der Beispiele wurden vorgefertigt und befinden sich im Bin-Verzeichnis. Diese helfen Ihnen dabei, die FLVs zu visualisieren.