Wissen > 3. nicht klassische Datenbanken > Fuzzy Datenbanken

3.1 Fuzzy Datenbanken

Entstehungskontext

Ursprüngliche Problemstellung

Als Ted Codd [8] 1970 sein Modell von relationalen Datenbank Systemen vorstellte (wie auch in [7] erläutert) wurde ein Problem dieses neuen Modells bald erkannt: relationale Datenbank Systeme (zuvor gab es wie auf [10] beschrieben z.B. Textfiles) sollten einen Teil der realen Welt in eine Datenbank abbilden. Jedoch liegen uns häufig nur unvollständige Informationen zu den abzubildenden Themen vor, sodass ein exaktes Abbild nicht möglich ist.

Um dieses Problem zu umgehen wurden sogenannte NULL-Werte eingeführt, die besagen, dass zu einer bestimmten Eigenschaft keine Informationen verfügbar sind. Wenn man beispielsweise das Alter einer Person nicht genau kennt, aber weiss, dass diese Person zwischen 30 und 40 Jahren ist, so muss man für das Attribut Alter einen NULL-Wert verwenden und verliert auf diese Weise auch die Information über das ungefähre Alter.

Um diese Problem zu lösen musste es möglich sein unscharfe Werte in eine Datenbank zu speichern. Es stellte sich heraus, dass die Fuzzy-Theorie hier sehr hilfreich sein sollte.

Amihai Motro fomulierte dieses Problem in [2] wie folgt:

There are two solutions for upholding the integrity of a database in situations where knowledge of the real world is imperfect.
The first solution
is to restrict the model to that portion of the real world about which perfect information is available. In the relational data model this implies that a tuple that describes a particular employee will be excluded altogether from the database, if any of its attributes are missing or are suspect of imprecision. The resulting database will only model those employees for whom perfect information is available.
The second solution
is to develop data models that are allow the representation of imperfect information. Assume that the available infomation about the age of a particualr employee is imperfect; for example, the age is only known to be within a specific range. If the data model had features for specifying and manipulationg ranges, then this imperfect information could be captured in a database that maintains its integrity.

Vorgeschichte

[foto: lotfi zadeh] Professor Lotfi Zadeh (Bild entnommen von hier) stellte seine Theorie von der Fuzzy-Logik im Jahr 1965 vor. Er hatte erkannt, dass die reale Welt um uns herum nicht nur aus binären Elementen (0 und 1, wahr und falsch) bestand, sondern dass viele Dinge Eigenschaften haben, deren Werte irgendwo dazwischen liegen ([1]). Auch unser Gehirn arbeitet nicht binär sondern basiert auch einer Technik ähnlich den Neuronalen Netzen, die mit der Fuzzy-Theorie eng in Verbindung stehen.

Beispiele für Unschärfe in unserer Welt sind in etwa:

Durch die Fuzzy-Theorie verschwinden nun diese 0-1-Grenzen und die Abbildung der Welt in ein Modell wird unschärfer (fuzzy = unscharf) und somit auch realistischer. Fuzzy-Sets sind ein wichtiger Bestandteil der Fuzzy-Theorie und bestehen aus einer Menge von Elementen die jeweils einen Wert im Bereich 0 bis 1 annehmen können, wobei 0 besagt, dass ein Element nicht zu einem Fuzzy-Set gehört und 1 die volle Zugehörigkeit zu diesem Set angibt.

Bezogen auf das Beispiel des Alters des Freundes könnte ein Fuzzy-Set in etwa wie folgt aussehen: { 32/0.5, 33/0.8, 34/1.0, 35/1.0, 36/1.0, 37/0.7, 38/0.5 }.

Weltbild der Entwickler

Der Erfinder der Fuzzy-Theorie, Dr. Lotfi Zadeh, wurde 1921 in Baku, der Hauptstadt von Azerbaijan geboren. Für ihn spielt allerdings seine Herkunft eine Untergeordnete Rolle, wie er in [5] beschreibt:

The question really isn't whether I'm American, Russian, Iranian, Azerbaijani, or anything else, I've been shaped by all these people and cultures and I feel quite comfortable among all of them.

Zadeh's Vater war ein azerbaijanischer Journalist der vom Iran abstammte, seine Mutter eine russische Ärztin. Auf Grund der guten Jobs seiner Eltern verbrachte er eine angenehme Kindheit in Baku. Als jedoch Stalin an die Macht kam verschlechterte sich Zadeh's Lage und es gab Hungersnöte woraufhin seine Familie in das Heimatland seines Vaters, den Iran, auswanderte. Dort setzte Lotfi seine Ausbildung an einer Privatschule fort.

Während des zweiten Weltkriegs ging Lotfi Zadeh nach Amerika und machte 1946 seinen Master-Titel am Massachusetts Institute of Technology (MIT).

Ab 1959 arbeitete er, an der University of California, Berkeley wo er im Department of Electrical Engineering tätig war. 1963-68 war er Vorsitzender dieses Instituts und entwickelte auch seine Theorie zu der Fuzzy-Logik. Er war zwischenzeitlich auch an einigen anderen Universitäten wie Columbia University, Princeton oder MIT tätig und auch mit dem IBM Research Laboratory in San Jose hatte er zu tun.

Bis 1965 konzentrierte sich Dr. Zadeh's Arbeit auf System Theory und Entscheidungs Analyse. Erst allmählich verlagerten sich seine Interessen zur Fuzzy-Theorie und ihren Anwendungen in der künstliche Intelligenz sowie Neuronalen Netzen.

Seit dem Jahr 1991 ist Prof. Zadeh nun offiziell in Ruhestand, beschäftigt sich aber nach wie vor mit seinen Forschungsgebieten. Er besucht noch immer viele Konferenzen und hat im Laufe seiner langen Kariere auch eine Menge an Preisen und Auszeichnungen erhalten, die unter [4] aufgelistet sind.

Umfeld und Einflüsse

Wie Nachforschungen ergaben, fand die Fuzzy-Technologie ihren Einsatz lange Zeit vor allem an Universitäten und anderen Forschungseinrichtungen. Weder Militär noch große Firmen zeigten besonderes Interesse an der neuen Technologie. Dies wird sehr wahrscheinlich ein Grund dafür sein, dass die Entwicklung nur langsam Fortschritte machte und die Verbreitung von Fuzzy-Technologien auch in der heutigen Zeit sehr gering ist.

Wie auf [3] beschrieben durchlebte die Fuzzy-Theorie (wie auch viele andere neue Technologien) einige Hochs und Tiefs. Die folgende Grafik veranschaulicht den zeitlichen Verlauf der Einschätzung der Benutzer der neuen Fuzzy-Technologie.

[Einschätzung der Nutzer der Fuzzy-Technologie]
(Abbildung von hier)

Konzepte und Techniken

Um die Unschärfe der Fuzzy-Logik nun in die Konzepte von relationalen Datenbanken zu bringen, muss man vorerst einmal unterscheiden, wo diese Unschärfe auftritt. Es sind hier folgende Fälle zu unterscheiden:

Unschärfe der Daten

Die Unschärfe der Daten ist so zu verstehen, dass keine exakten Daten für ein Attribut möglich oder zumindest nicht bekannt sind. Um bei dem bereits weiter oben genannten Beispiel bezüglich des Alters eines Freundes zu bleiben, wäre es zwar möglich ein exaktes Alter anzugeben, es kann aber unter Umständen nicht bekannt sein. Aus diesem Grund kann ein Fuzzy-Set verwendet werden, das z.B. folgendes Aussehen hat:

[Fuzzy-Set]
Wenn der genannte Freund nun Mitte 30 ist, würde das Alter 33 Jahre mit einer Zugehörigkeit von 0.8 zu Mitte 30 passen.

Mehr Infos zu Fuzzy-Sets findet man z.B. unter [6]

Unschärfe der Abfragen

Im Unterschied zur Unschärfe bei Daten, können Abfragesprachen [9], die Unschärfe in der Formulierung zulassen auch auf klassiche Datenbanken angewandt werden. Wie in [2] beschrieben, kann hier noch weiter unterschieden werden. Bei der Abfrage von Informationen kann das vorhandene Wissen in folgenden Bereichen unvollständiges bzw. unscharfes sein:

Um diese Unschärfe in den Griff zu bekommen werden vor allem fehlertolerante Hilfsprogramme bzw. Abfragesprachen entwickelt.

Die Reale Praxis

Man findet heute so gut wie keine Fuzzy-Datenbank-Systeme, die in der realen Praxis zum Einsatz kommen. Es gibt zwar eine Menge Ideen und auch einige Projekte, die aber zum größten Teil heute noch nicht erfolgreich umgesetzt wurden.

Vor allem im Bereich Internet-Suchmaschinen findet man des öfteren Informationen über geplante Projekte oder Versuche. Diese sollen noch bessere Resultate liefern als die bisher üblichen Suchmaschinen. Leider existiert auch hier noch keine fertige Lösung.

Bewertung

Die Idee der Fuzzy-Theorie ist bereits älter als das Modell der Relationalen Datenbanken, dennoch gibt es bis heute praktisch keine fertigen Produkte, welche diese beiden Ideen miteinander zu den sogenannten Fuzzy Relational Database System verbindet. Alle Projekte auf die ich bei meinen Recherchen gestoßen bin, kommen von diversen Universitäten und sind oft nur theoretischer Natur.

Quellennachweis

  1. Li Deyi und Liu Dongbo: A fuzzy prolog database system, 1990
  2. P. Bosc und J. Kacprzyk: Fuzziness in Database Management Systems, 1995
  3. http://www.ib.hu-berlin.de/~wumsta/ubach/
  4. http://www.cs.berkeley.edu/People/Faculty/Homepages/zadeh.html#awa
  5. http://www.azer.com/aiweb/categories/magazine/24_folder/24_articles/24_zadeh.html
  6. http://www.mathworks.com/access/helpdesk/help/toolbox/fuzzy/fuzzytu2.shtml
  7. http://cartoon.iguw.tuwien.ac.at/fit/fit08/team1/Historie.html
  8. http://cartoon.iguw.tuwien.ac.at/fit/fit08/team1/TedCodd.html
  9. http://cartoon.iguw.tuwien.ac.at/fit/fit08/team1/Abfragesprachen.html
  10. http://cartoon.iguw.tuwien.ac.at/fit/fit07/entstehung.html