previous next Title Contents

4 Intelligente Agenten


Nach einer Einführung in die Thematik "Intelligente Agenten" und einer Motivation für deren Entwicklung und Einsatz werden verschiedene Ansätze zur Definition der Begriffe "Agent" und "Intelligenz" vorgestellt. Es folgt ein Überblick über einige Bereiche, in denen Agenten heute eingesetzt werden und abschließend eine eigene Agenten-Klassifikation, die auf den verschiedenen Definitionsansätzen aufbaut, sowie einige konkrete Beispiele von Agenten unterschiedlicher Ausprägung.

4.1 Einführung

"The buzzword agent has been used recently to describe everything from a word processor's help system to mobile code that can roam networks to do our bidding. The metaphor has become so pervasive that we're waiting for some enterprising company to advertise its computer power switches as empowerment agents."
Peter Wayner in [Wayner, Joch 1995]

Zwei Jahre später sind diese Befürchtungen zwar nicht wahr geworden, die grundlegende Situation ist jedoch aufgrund der vielfältigen Entwicklungen im Umfeld der Agentenforschung eher noch diffuser geworden: noch immer ist in hohem Maße unklar, was einen Agenten im wesentlichen ausmacht und was ihn beispielsweise von einer Suchmaschinen im WWW oder einem automatisch ablaufenden Prozeß unterscheidet. Wird darüber hinaus gar von einem "Intelligenten Agenten" gesprochen, differieren die Meinungen noch stärker.

Die Tatsache, daß der Begriff "Agent" von vielen unterschiedlichen Leuten auf viele verschiedene Arten gebraucht wird, mag auf der einen Seite zeigen, welche wichtige Rolle diesem Konzept in vielen verschiedenen Wissenschaftsbereichen - von der Informatik über Ingenieurwissenschaften bis zu Soziologie und Psychologie - beigemessen wird. Alleine in der Informatik wird der Begriff gebraucht in solchen Zusammenhängen wie Agentenorientierte Programmierung als Erweiterung der Objektorientierung [Petrie 1996], Agenten als intelligente Hilfesysteme (z.B. die Assistenten in Microsoft Office 97 [Microsoft 1997][4], Agenten, die Arbeit und Informationsflut reduzieren helfen ("Agents that reduce work and inforation overload" [Maes 1994]) oder Mobile Software-Agenten als Teil tragbarer Computer (Laptops, PDA[5]s) [Kearney 1996]. Diese Aufzählung ist bei weitem nicht vollständig.

Auf der anderen Seite jedoch kann diese Diversifikation des Begriffes zu unklaren Vorstellungen darüber führen, was einen Agenten überhaupt ausmacht und welche Eigenschaften ihn gegenüber anderen Ansätzen auszeichnen. Falsche Erwartungen und Hoffnungen können entstehen, die durch die tatsächlichen in der Realität erzielten Ergebnisse oder geplanten Möglichkeiten enttäuscht werden. Damit würden Intelligente Agenten dem Weg folgen, den schon die Künstliche Intelligenz vorgezeigt hat[6] 5.1.1.2 .

Ein Ansatz, die Motivation für den Einsatz von Agenten zu beschreiben, geht vom Paradigma der Direkten Manipulation aus, welches zur Zeit in der Informationstechnik vorherrschend ist. Der Benutzer hantiert direkt mit den Objekten, mit denen er arbeitet. Er wählt ein Dokument aus und öffnet es in einer Textverarbeitung oder startet einen WWW-Browser und "surft" zu bestimmten Adressen.

Durch den immer stärker zunehmenden "Information Overload", dem sich Computerbenutzer ausgesetzt sehen, sowie der immer stärkeren Überfrachtung von Anwendungen mit Funktionen ("Function Overload") wird der Ansatz der Direkten Manipulation zur Kommunikation zwischen Computern und Menschen immer unangemessener. Die Tatsache, daß auch immer mehr Leute mit Computern umgehen wollen oder müssen, die kein umfassendes Verständnis von der zugrunde liegenden Informations- und Kommunikationstechnik haben, verschlimmert diese Diskrepanz zwischen Benutzerschnittstelle und -anspruch noch weiter.

Der Ansatz, Agenten als vorherrschende Benutzerschnittstelle einzusetzen, wird mit einem Paradigmenwechsel hin zur Indirekten Manipulation beschrieben. Der Benutzer arbeitet nicht mehr direkt mit den Objekte, die er verändern möchte, sondern er beauftragt Agenten (oder Assistenten) mit dieser Aufgabe. Diese verfügen entweder über ein elaboriertes Benutzermodell und Wissen über den Aufgabenbereich, in dem sie agieren sollen (Domainwissen), so daß sie selbständig den Auftrag ausführen können, oder sie besitzen Mittel und Werkzeuge, sich dieses Wissen zu beschaffen. Dieser Paradigmenwechsel steht erst ganz am Anfang

4.2 Ansätze zur Definition Intelligenter Agenten

"At this moment, there is every appearance that there are more definitions than there are working examples of systems that could be called agent-based."
Björn Hermans in [Hermans 1996, S. 12]

Es gibt fast so viele Definitionen des Begriffes "Agent", wie es Wissenschaftler, Entwickler und Journalisten gibt, die sich mit dieser Thematik befassen. An dieser Stelle werden einige Definitionen des Begriffes "Agent" vorgestellt, die sich dem Begriff aus jeweils einer andere Sichtweise nähern und unterschiedliche Eigenschaften, die einen Agenten ausmachen sollen, beleuchten. Es soll dabei herausgestellt werden, wodurch sich Agenten von gewöhnlichen Programmen unterscheiden.

Der erste Definitionsansatz soll dabei aus einem "normalen" Lexikon stammen:

"Jeder im Auftrag oder Interesse eines anderen Tätige"

[Meyer 1987]

Als Beispiele werden Handelsvertreter, Versicherungsvertreter und Spione aufgeführt. Es ist offensichtlich, daß diese Definition, obgleich sie im Kern schon das Wesen eines "Agenten" umreißt, nicht geeignet ist, den Begriff für den Kontext dieser Arbeit zu definieren. Wir kommen jedoch ganz am Ende der Arbeit nochmals auf diese Definiton zurück.

4.2.1 Delegation und Autorität

"An agent is a piece of software that does something for you"
[Dragan 1997, S. 5]

"Agents can be considered personal software assistants with authority delegated from their users."

[Cheong 1996]

Es wird schnell klar, daß auch diese Definitionen nicht ausreichen, den Agentenbegriff ausreichend zu definieren. Die Forderung, ein Agent solle eine Aufgabe für den Benutzer erledigen, muß in dieser Form wohl an jede Art von Werkzeug gestellt werden. Der Autor der ersten Definition erweitert diese im folgenden dann auch um die Erwartung, daß Agenten automatisch immer wiederkehrende Aufgaben ausführen. Die zweite Definition fordert eine Art von Autorität oder Befugnis, die einem Agenten von seinem Benutzer übertragen werden soll. Woraus diese Befugnis genau bestehen soll und was der Agent damit anfangen können soll, bleibt unklar.

4.2.2 Kommunikation

"[...] an agent is a computer program whose purpose is to help a user perform some task (or set of tasks). To do this, it contains persistent state and can communicate with its owner, other agents and the environment in general."
[Lingnau, Drobnik, Dömel 1995, S. 2]

Diese Definition fügt einen wichtigen Aspekt zur ersten Definition hinzu: Um sein Ziel zu erreichen, muß ein Agent mit seinem Besitzer, anderen Agenten und seiner Umgebung kommunizieren.

Die Kommunikation mit dem Besitzer führt zu Fragen des Designs einer adäquaten Benutzerschnittstelle: auf welche Art und Weise soll der Besitzer oder besser Auftraggeber eines Agenten diesem seine Wünsche am besten mitteilen? Soll dies über eine spezielle Programmiersprache erfolgen ("SUCHE günstigen Blumenhändler, KAUFE 10 rote Rosen"), oder verfügt der Agent über Mechanismen der Erkennung natürlicher Sprache? ("Ich brauche zehn rote Rosen."). Muß der Agent überhaupt instruiert werden, oder wird er von sich aus aktiv (Beispielsweise könnte er den Rosenkauf automatisch initiieren, wenn er weiß, daß ich heute Abend eine Freundin ins Kino abhole und ich aus diesem Anlaß normalerweise Blumen mitbringe).

Die Frage nach der besten Benutzerschnittstelle ist fast so alt wie Computer selbst; die Kommunikation mit anderen Agenten und der Umgebung wirft jedoch eine Reihe von neuen Fragen auf: In welcher Sprache tauschen Agenten Informationen aus? Wie wird sichergestellt, daß alle an der Kommunikation beteiligten Parteien auch das gleiche meinen?

4.2.3 Wahrnehmungsfähigkeit

"Autonomous agents are computational systems that inhabit some complex dynamic environment, sense and act autonomously in this environment, and by doing so realize a set of goals or tasks for which they are designed."
[Maes 1995, S. 108]

Pattie Maes, Leiterin der Software Agents Group am MIT Media Lab, fordert, daß Agenten in komplexen und dynamischen Umgebungen agieren können sollen. Außerdem müssen Agenten selbständig sein, das bedeutet, daß sie den Großteil ihrer Aufgaben ohne direkte Intervention von Menschen ausführen und Kontrolle über ihren eigenen Zustand haben. Sie sollen sich also beispielsweise selbständig starten und beenden können. Auch in der Wahl der Mittel, mit denen sie ihre Aufgabe ausführen, sollen Agenten autonom handeln.

4.2.4 Ein Katalog von Eigenschaften

In [Woolridge, Jennings 1995, S. 4ff] werden zwei Ausprägungen des Begriffs "Agent" unterschieden nach einer "schwachen" und einer "stärkeren" Bedeutung. Die schwache Bedeutung setzt folgende Eigenschaften eines Agenten voraus:

- Autonomie ("autonomy"): Agenten arbeiten ohne direkte Einflußnahme durch Menschen oder andere Systeme, haben eine Art von Kontrolle über ihren eigenen Zustand und können ihre Aktionen selbst planen.

- Sozialfähigkeit ("social ability"): Agenten kommunizieren mit anderen Agenten (und vielleicht Menschen) über eine Agentensprache ("agent communication language") [Genesereth, Ketchpel 1994, S. 48ff]

- Reaktionsfähigkeit ("reactivity"): Agenten nehmen ihre Umwelt (die reale Welt, einen Benutzer, eine Menge anderer Agenten, das Internet oder alles kombiniert) war und reagieren auf Änderungen, die in dieser eintreten.

- Selbständigkeit ("proactiveness"): Agenten reagieren nicht einfach nur auf Reize, die sie aus ihrer Umwelt empfangen, sie können auch selbständig aktiv werden, um ihre Ziele zu erreichen.

In der Informatik wird diese Bedeutung eines Agenten als selbständige, parallel ablaufende Entität, die ihren eigenen Zustand einkapselt und mit anderen Entitäten kommuniziert, als eine natürliche Erweiterung der Objektorientierung angesehen.

Insbesondere im Feld der Künstlichen Intelligenz wird mit dem Begriff "Agent" jedoch meist eine "stärkere" Bedeutung verknüpft. Zu den oben dargestellten Eigenschaften soll ein Agent stärker menschliche Züge tragen. Er soll Bewußtseinszustände wie Wissen, Überzeugung, Absicht und Verantwortung implementieren oder sogar Gefühle ausdrücken können (Hat ein Agent beispielsweise irgendwann mal keine Lust mehr, immer wieder die gleiche Aufgabe auszuführen? [Bates 1994, S. 122ff]).

Eine andere Art, um Software-Agenten stärker anthropomorphe Züge zu geben (eine Forderung, die schon in [Foner 1993] als Grundvoraussetzung für einen Agenten gestellt wird.) ist es, sie visuell als animierte Personen oder Gesichter darzustellen [Maes 1994, S. 36].

Andere Eigenschaften von Agenten, die in [Woolridge, Jennings 1995, S.6] angeführt werden, sind Mobilität ("mobility"): Die Eigenschaft eines Agenten, sich in Netzwerken zu bewegen, Wahrhaftigkeit ("veracity"): Die Annahme, daß ein Agent nicht absichtlich falsche Informationen übermittelt, Gutmütigkeit ("benevolence"): Der Ausschluß von Zielkonflikten sowie rationales Verhalten ("rationality"): Ein Agent handelt so, daß er seine Ziele erreichen kann und wird wissentlich keine Schritte ausführen, die dieses verhindern.

4.2.5 Intelligenz

Intelligenz ist schwierig zu definieren und daher auch nur schwierig als Forderung an einen Agenten zu stellen. Die Einschätzung eines künstlichen Systems als "intelligent" basiert letztlich oftmals auf dem Eindruck, den ein intelligenter Beobachter oder Benutzer von dem Verhalten des Systems gewonnen hat. Intelligenz ist daher eher als Folge aus dem Verhalten eines Systems aufgrund der Kombination unterschiedlicher Eigenschaften zu sehen und nicht als eine Eigenschaft, die man einem System mit in die Wiege legen könnte [Petrie 1996].

Als Kriterium zur Unterscheidung von Agenten und herkömmlicher Software verliert Intelligenz weiter an Bedeutung. Ein großes, komplexes Expertensystem mag vielleicht intelligente Vorschläge zur Lösung bestimmter Probleme liefern, damit ist es aber nicht automatisch ein Agent. Intelligenz ist kein hinreichendes Kriterium für Agenten.

Intelligenz ist keine Eigenschaft, die für Agenten vorausgesetzt wird, sondern eine subjektive Einsicht über deren Verhalten als Folge der Kombination aller ihrer Eigenschaften.

Abbildung 1 - Klassifikation Intelligenter Agenten nach IBM
aus [IBM 1995]

In einem Thesenpapier von IBM [IBM 1995] wird zur Definition Intelligenter Agenten aus den Eigenschaften "Agency", "Mobility" und "Intelligence" ein Würfel aufgespannt, in den unterschiedliche Anwendungsbeispiele von Agenten anhand der drei Achsen eingeteilt werden können. Eine Grenzlinie trennt dabei den Bereich der Intelligenten Agenten von anderen Programmen ab.

Diese Form der Klassifikation dient als Grundlage der in dieser Arbeit in Abschnitt 4.4 erstellten Klassifikation von Agenteneigenschaften. Die Bezeichnung der Achsen nach IBM korrespondiert grob mit den Ebenen Kommunikationsfähigkeit, Mobilität und Benutzermodell in der Klassifikation dieser Arbeit.

Als Abschluß dieses Abschnittes soll ein Zitat zum Thema Intelligenz von Alan Turing dienen:

"Inwieweit wir das Verhalten eines Objektes als intelligent beurteilen, hängt sowohl von unserer eigenen Intelligenz und unserer Ausbildung als auch von den Eigenschaften des fraglichen Objektes ab. Wenn wir in der Lage sind, sein Verhalten zu erklären und vorherzusagen, oder wenn ihm keine noch so einfachen Regeln zugrunde liegen, so sind wir wenig geneigt, ihm Intelligenz zuzuschreiben. Deshalb ist es möglich, daß ein und dasselbe Objekt von einer Person als intelligent, von einer anderen Person als nicht intelligent beurteilt wird; letztere hat die Regeln für das Verhalten des Objektes herausgefunden."

Alan Turing in [Kurzweil 1993, S.14]

4.2.6 Zusammenfassung

Obwohl [Woolridge, Jennings 1995] keine kurze, prägnante Definition des Begriffes "Agent" geben, so umfaßt ihre Liste von Forderungen an Agenten doch nahezu alle Aspekte aller anderen Definitionen und läßt dabei doch genügend Spielräume für die vielschichtigen Bedeutungen, in denen der Begriff "Agent" gebraucht wird.

In den Definitionen ist von "Agenten" ("agents"), "autonomen Agenten" ("autonomous agents") und "Software Agenten" ("software agents") die Rede. Im Rahmen dieser Arbeit werden alle diese unterschiedlichen Bezeichnungen als verschiedene Ausprägungen eines Agenten verstanden und nicht weiter differenziert. Hier geht es schließlich nur um Software-Agenten im Gegensatz zu physischen Agenten (Robotern). Und ein Grad an Autonomie ist, folgt man der Liste von Anforderungen in [Woolridge, Jennings 1995], ja sogar Voraussetzung für einen Agenten.

In Abschnitt 4.4 wird zum Abschluß dieses Kapitels über Intelligente Agenten eine Klassifikation erstellt, die sich an [Woolridge, Jennings 1995] anlehnt.

4.3 Anwendungsgebiete Intelligenter Agenten

Der Einsatz von Intelligenten Agenten wird in vielen Anwendungsbereichen als nützlich erachtet. In jedem Bereich kann der Begriff, wie schon die vielen unterschiedlichen Definitionsansätze in Abschnitt 4.2 gezeigt haben, unter etwas andere Gesichtspunkten gesehen werden. Die Aufzählung der Anwendungsgebiete folgt dabei frei [IBM 1995] und [Nwana 1996].

4.3.1 System- und Netzmanagement

Im Bereich des System- und Netzmanagements tauchte der Begriff eines Agenten schon früh auf. In dem Maße, in dem die zugrunde liegenden Informations- und Kommunikationstechnologie komplexer wird, nimmt auch der Aufwand zur Sicherstellung der Verfügbarkeit der Systeme immer weiter zu. Hier sollen intelligente Agenten den Systemoperatoren und -administratoren dabei helfen, Fehlersituationen zu erkennen, aufzuspüren und zu beheben.

In einem komplexen System gibt es nach diesem Modell Agenten, die jeweils ein oder mehrere Elemente des Systems überwachen, einfache Fehler selbst beheben oder gemäß einer Eskalationsstrategie übergeordnete Instanzen bis schließlich hin zu einer zentralen Managementstation benachrichtigen, sofern Situationen eintreten, die der Agent nicht selbst lösen kann. Die Agenten sollen auch aus früheren Fehlern lernen und automatisch Schlüsse ziehen können, wenn ähnliche Situationen erneut auftreten [Gürer et al. 1996].

4.3.2 Mobile Computer

Computer werden immer kleiner und damit auch mobiler. "Personal Digital Assistants" (PDA) nehmen an Verbreitung zu. Intelligente Agenten, die innerhalb eines Netzwerkes arbeiten, können für den Benutzer selbständig Aufgaben ausführen, ohne daß dieser ständig - eventuell sogar über eine teure Telefonleitung - mit dem Netz verbunden sein muß. Sie können beispielsweise eMails entgegennehmen und sortieren, nach Informationen suchen oder sich mit anderen Agenten koordinieren.

4.3.3 Informationsmanagement

Die intelligente Organisation eingehender Nachrichten ist schon länger ein aktives Forschungsgebiet. Agenten könnten dabei helfen, indem sie Nachrichten sortieren, durch das Benutzerverhalten lernen oder aber über eine Art "social filtering", das bedeutet gemäß der Präferenzen anderer Benutzer mit potentiell gleichen Interessen, durch Kooperation mit Agenten die Relevanz bestimmter Nachrichten ermitteln.

Agenten können sich über die Zeit hinweg den Bedürfnissen und Aufgaben eines bestimmten Benutzers anpassen, indem sie seine Interessen, Vorlieben und Gewohnheiten Schritt für Schritt kennenlernen und ihm so - ganz wie ein menschlicher Assistent - immer mehr Aufgaben abnehmen und autonom Entscheidungen im Sinne des Benutzers treffen können.

Auch die aktive Suche nach Information läßt sich durch den Einsatz von Agenten vereinfachen. Durch den Zugriff auf immer mehr Informationsquellen und die zunehmende Bedeutung des WWW, werden Agenten benötigt, um relevante Informationen zu finden, sie zu sortieren und anderen, beispielsweise innerhalb einer Arbeitsgruppe, zugänglich zu machen.

4.3.4 Arbeitsgruppen

In Arbeitsgruppen ("Workgroups") können Agenten, welche für die jeweiligen Mitglieder der Gruppe tätig sind, durch Kooperation Probleme ohne Zutun ihrer menschlichen Auftraggeber lösen. Beispielsweise könnten Intelligente Agenten einen Abteilungskalender pflegen und selbständig auf Änderungen reagieren, indem sie andere Agenten benachrichtigen und Termine verschieben. Mehrere Agenten müssen nicht ausschließlich kooperativ handeln, sie können durchaus auch konkurrieren, wenn es beispielsweise um die Vergabe von beschränkten Ressourcen wie Firmenwagen oder Besprechungsräume geht.

4.3.5 Electronic Commerce

Die Rolle, die Agenten im elektronischen Handel ("Electronic Commerce"), also der Geschäftsabwicklung über elektronische Medien - insbesondere das Internet - spielen, wird gerade in dieser Arbeit untersucht. Agenten können in allen Bereichen der Geschäftsabwicklung die Geschäftspartner unterstützen. Sie können dabei helfen, ein bestimmtes Produkt oder einen Anbieter zu finden, Preisvergleiche anstellen oder über den Preis verhandeln. Schließlich könnten Agenten sogar im Auftrag des Benutzers Geschäfte tätigen, Waren oder Dienstleistungen bestellen und in Anspruch nehmen.

4.3.6 Benutzerschnittstellen

Trotz grafischer Benutzerschnittstellen ist der Umgang mit Computern noch immer nicht für jeden Benutzer intuitiv zu erlernen. Auf der einen Seite bieten moderne Anwendungen ein immer umfangreichere und schwieriger zu durchschauende Angebote an Funktionalität. Auf der anderen Seite nutzen immer mehr Menschen moderne Informationstechnologie. Intelligente Agenten können den Anwender bei der Benutzung komplexer Programme unterstützen, oder selbst zur Benutzerschnittstelle werden. Damit ist der Übergang vom Ansatz der direkten Manipulation an Objekten zur Erreichung eines Zieles hin zur Delegation von Aufgaben an Agenten verbunden, welcher einen radikalen Umschwung in der Gestaltung von Mensch-Maschine Schnittstellen bedeutet. Computer sind nicht mehr passive Werkzeuge des Benutzers (Direkte Manipulation), sondern lösen in Kooperation und im Auftrag des Benutzers selbständig Aufgaben (Indirekte Manipulation).

4.3.7 Management von Geschäftsprozessen

Die Durchführung von Geschäftsprozessen wird schon lange durch Informations- und Kommunikationstechnologie unterstützt. Problematisch an existierenden Systemen ist jedoch nach [O'Brien, Wiegand 1997, S. 133] die Abbildung nicht formalisierbarer und standardisierter Abläufe. Agenten bieten hier eine Alternative, indem autonome Softwareagenten die Überwachung von Geschäftsprozessen übernehmen (b), anstelle diese von einer zentralen Instanz (a) verwalten zu lassen. Autonome Agenten können sich schneller auf neue Situationen einstellen und entsprechend handeln.

Abbildung 2 - Management von Geschäftsprozessen
aus [O'Brien, Wiegand 1997, S. 134]

Der Einsatz von Agenten erlaubt eine genauere Modellierung der Realität, da die organisationelle Struktur der Unternehmen genauer abgebildet werden kann. Stark verteilte Unternehmen - im Extrem vollständig virtuelle Unternehmen - profitieren ebenfalls vom Einsatz von Agenten zur Unterstützung von Geschäftsprozessen. Durchzuführende Geschäftsprozesse werden einem Agenten übergeben, der die nötigen Schritte zur Erledigung des Auftrages kennt und andere Agenten, beispielsweise von Fachabteilungen, kontaktiert, die wiederum Unteraufgaben für ihn wahrnehmen.

Nach [Jennings, Woolridge 1996] ist der Einsatz von Agenten ein natürlicher Weg, die Verteilung von Daten, Steuerung und Ressourcen abzubilden.

4.4 Klassifikationen Intelligenter Agenten

Der Versuch, eine allgemeine Klassifikation für intelligente Agenten zu erstellen, muß aufgrund der Vielschichtigkeit des Begriffes scheitern. Dem Begriff kann sich nur in einem mehrdimensionalen System genähert werden, in dem die Kombination verschiedener Ausprägungen von Eigenschaften unterschiedliche Aspekte eines Agenten widerspiegelt.

4.4.1 Klassifikationsebenen

- Eine erste Dimension ist die Unterteilung nach dem Grad der Selbständigkeit von Agenten. Am unteren Ende der Selbständigkeit rangieren Skripte, die durch den Benutzer explizit aufgerufen werden müssen. Asynchron gestartete Programme weisen einen höheren Grad an Selbständigkeit auf. Asynchron gestartet kann entweder bedeuten in regelmäßigen Zeitabständen oder aber durch bestimmte Ereignisse explizit ausgelöst. Am oberen Ende der Skala an Selbständigkeit sind Programme anzusiedeln, die quasi ständig aktiv sind und durch Beobachtung ihrer Umwelt wirklich selbständig aktiv werden können, wenn ein Ereignis oder Zustand eintritt, worauf sie reagieren wollen.

- Eine weitere Dimension zur Klassifizierung von Agenten ist die Frage, in wie weit sie den Benutzer repräsentieren und unter welchem Grad an Autonomie in seinem Auftrag handeln können. Angefangen von Programmen, die ohne jede Art von Autonomie handeln, indem sie den Benutzer bei jeden Schritt ihrer Tätigkeit explizit einbeziehen, sind mannigfaltige Grade von Autonomie denkbar. Beispielsweise ein Agent, der zwar selbständig aufgrund eines Benutzerprofils Dokumente sucht, diese aber nicht automatisch anfordert (was vielleicht mit Kosten verbunden wäre), sondern diese Entscheidung dem Benutzer überläßt. Ein anderes Beispiel ist ein Agent, der eingehende eMails überprüft, ungewollte eMails automatisch löscht und auf bestimmte Anfragen automatisch antworten kann. Ein Agent mit dem höchsten Grad an Autonomie könnte seinen Benutzer überraschen, indem er für Freitag Abend selbständig Kinokarten reserviert, zwei Termine deswegen verlegt und nach dem Kino einen Tisch beim Italiener reserviert, weil die Freundin per eMail ein Treffen für Freitag Abend vorgeschlagen hat. Das Vertrauen, das der Benutzer einem Agenten entgegenbringt, ist als andere Seite der gleichen Medaille zu sehen: Der Benutzer wird nur bereit sein, einem Agenten so viel Autonomie zuzugestehen, wie weit er ihm Vertrauen schenkt.

- Damit Agenten für den Benutzer sinnvolle Aufgaben wahrnehmen können, müssen sie wissen, was sie für ihn erledigen sollen. Am unteren Ende der Skala, die Benutzermodell genannt werden soll, befinden sich prozedurale Ansätze, eine direkte Benutzerschnittstelle, bei der der Benutzer genau die Tätigkeiten spezifiziert, die für ihn erledigt werden sollen. Nur wenig elaborierter ist der Ansatz, den Benutzer selbst ein Profil erstellen zu lassen, beispielsweise in der Form von Regeln, aus denen das System dann Schlüsse zieht. Höher entwickelte Ansätze erlauben es dem System selbständig ein Benutzermodell zu erstellen und zu verstehen, was der Benutzer erreichen will. Weiterführende Entwicklungen erlauben ein selbständiges Planen von Aktionen, um ein bestimmtes Ziel zu erreichen, und ein Lernen sowohl in Bezug auf das Verhaltens von Benutzern als auch in Bezug zur Umgebung des Agenten, den Ressourcen auf denen er agiert. Solch ein System kann selbständig neue Zusammenhänge und Verbindungen entdecken und diese anwenden, um Benutzerwünsche besser erfüllen zu können.

- Am unteren Ende der Einteilung nach Kommunikationsfähigkeit eines Agenten befinden sich Agenten, die ausschließlich mit dem Benutzer kommunizieren und keinerlei Interaktion mit anderen Agenten oder Systemelementen aufweisen. Obwohl solche Systeme schwer vorstellbar sind, gibt es doch mit sogenannten "Chatterbots" als eine Art "Believable Agents"[7] 4.4.2.1 eine große Menge von Programmen, die in diese Kategorie fallen und "mehr" sind, als beispielsweise ein Taschenrechner. Des weiteren gibt es Systeme, die mit dem Benutzer und einer oder mehreren bestimmten Systemelementen oder Anwendungen kommunizieren können. "Interface Agents"[8] 4.4.2.3 als neue Form der Benutzerschnittstelle oder Hilfesysteme fallen in diese Kategorie. Die Möglichkeit einer zusätzlichen Kommunikation mit anderen Agenten ist eine grundlegende Eigenschaft von Multi Agenten Systemen.

- In vernetzten Umgebungen können Agenten ihre Aufgabe lokal auf einem Netzknoten ausführen, oder sich selbst durch das Netzwerk bewegen. Diese mit Mobilität bezeichnete Eigenschaft eines Agenten kann die beiden Ausprägungen statisch oder mobil annehmen. Auch lokale Agenten können netzweite Ressourcen benutzen.

- stationär und lokal: Der Agent residiert auf der Benutzerseite des Netzwerkes, d.h. auf dem lokalen Computer (Client). Er mag zwar seine Umwelt auf dem lokalen und entfernten Systemen über eine Art von Sensoren wahrnehmen, bewegt sich jedoch nicht selbst durch das Netz. Auch Multi Agenten Systeme, die lokal und stationär arbeiten, sind denkbar.

- stationär und entfernt: Der oder die Agenten residieren an einer festen Stelle außerhalb des lokalen Computersystems (Server). Der Benutzer kommuniziert über das Netzwerk mit ihnen und sie erledigen von ihrer Position aus Aufgaben für ihn.

- mobil: Mobile Agentensysteme[9] 4.4.2.5 zeichnen sich dadurch aus, daß der oder die Agenten (bei mobilen Agentensystemen handelt es sich in der Regel um Multi Agenten Systeme), sich durch das Netzwerk bewegen (das bedeutet, mitsamt ihren Programmcode und allen Daten) und auf verschiedenen Systemen zur Ausführung gelangen, um ihre Aufgabe zu erfüllen.

- Die Architektur des Agenten (deliberativ, reaktiv, hybrid, heterogen (siehe Kapitel 5.1.6)) kann ebenfalls als Klassifikationsebene herangezogen werden.

Während Selbständigkeit, Autonomie, Benutzermodell und Kommunikationsfähigkeit sicherlich Schlüsselaspekte eines intelligenten Agenten darstellen, sind Eigenschaften wie Mobilität oder Architektur als neutrale Eigenschaften zu sehen. Wie in Kapitel 4.2.5 und Kapitel 5.1.1.4 beschrieben, soll "Intelligenz" nicht als eine diskret modellierte und zu messende Eigenschaft von Agenten angesehen werden, sondern sich aus der Benutzerwahrnehmung der Kombination insbesondere aus den Schlüsseleigenschaften ergeben.

Abbildung 3 - Klassifikation Intelligenter Agenten

In Abbildung 3 spannen die Schlüsseleigenschaften einen Kreis auf, dessen Flächeninhalt gleichgesetzt werden kann mit dem Grad, zu dem ein Programm die Anforderungen an einen Intelligenten Agenten erfüllt.

Die Bedeutung der einzelnen Eigenschaften muß auch in Abhängigkeit der jeweiligen Anwendung unterschiedlich gewichtet werden. Für einen "Interface Agent" beispielsweise kann ein elaboriertes Benutzermodell wichtiger sein als die Kommunikationsfähigkeit mit anderen Agenten

4.4.2 Einige Beispiele

Im folgenden werden einige Arten von Agenten, wie sie in der Literatur häufig aufkommen vorgestellt und in das Klassifikationsschema eingeordnet. Die angeführten Arten entsprechen einer stärker funktionalen Klassifikation von Agenten.

4.4.2.1 Believable Agents

Als "Believable Agents" (Glaubwürdige Agenten) wird eine Klasse von Agenten bezeichnet, die so natürlich wie möglich agieren sollen. Eliza, ein einfaches Programm, das menschliche Sprechgewohnheiten imitiert und mit dem man sich über Texteingabe "unterhalten" kann, ist eines der frühesten Beispiele für einen Believable Agent [Weizenbaum 1966].

Abbildung 4 - Spence's Bar (Extempo Systems)
aus [Extempo 1997][10]

Treibende Kraft für diese Art von Agenten ist heute die Unterhaltungsindustrie. Wie in [Markoff 1997] beschrieben wird, sind beispielsweise einige Figuren des Walt Disney Filmes "Der Glöckner von Notre Dame" durch Software gesteuert worden, um natürlicher zu wirken. Aber auch Anwendungen im betrieblichen Umfeld sind denkbar, beispielsweise im Umfeld virtueller Büros [Mauth 1996] oder virtueller Geschäfte.

In [Bates 1994] wird die Bedeutung der Modellierung von Gefühlen für die Glaubwürdigkeit eines Agenten-Charakters herausgestellt. Im Rahmen des Oz-Projektes an der Carnegie Mellon Universität [Oz 1997] werden durch Computer animierte Figuren, die sogenannten Woggles, entwickelt, die in künstlichen Welten selbständig agieren können.

Extempo Systems [Extempo 1997] entwickeln anthropomorphe Agenten, die mit Menschen kommunizieren sollen. Als Anwendungsbeispiel wird eine Bar mit einer virtuellen Barmixerin vorgestellt, mit der man sich online "unterhalten" kann.

"Extempo's software provides the "minds" for characters that can be integrated with a variety of dialog, animation, and robotic systems to create life-like, intelligent and surprising improvisational behavior."

[Extepmo 1997]

Eine Möglichkeit zum Einsatz derartiger Agenten sieht Extempo Systems auch in der Onlinepräsentationen von Unternehmen im WWW.

Als letztes, am weitestgehende Beispiel für Believable Agents dienen komplette, virtuelle Welten, wie sie beispielsweise Black Sun Interactive [Blacksun 1997] entwickelt. In diesen dreidimensionalen VRML[11]-Welten bewegen sich durch Menschen gesteuerte, anthropomorphe Agenten, Avatare genannt, interagieren miteinander und können Dienste in Anspruch nehmen, die ihnen von computergesteuerten Avataren angeboten werden. Solche Welten gibt es für Firmen und Organisationen, zur Unterhaltung aber auch als virtuelle Messen. Beispielsweise wurde die Networld-Interop 1996 in Frankfurt/Main auch als virtuelle Messe angeboten [Blacksun 1997][12].

Ein hoher Grad an Selbständigkeit und Autonomie sind wichtige Aspekte dieses Agententyps. Die Architektur des Agentensystems ist letztlich unwichtig, die verlangte Kommunikationsfähigkeit hängt von der jeweiligen Aufgabe ab. Die vorgestellten Beispiele sind nicht mobil. Ein elaboriertes Benutzermodell ist jedoch der Schlüsselfaktor für Believable Agents.

4.4.2.2 Collaborative Agents

Agenten, die gemeinsam an der Lösung einer Aufgabe arbeiten, resultieren direkt aus den Beweggründen für Forschungen auf dem Gebiet der Verteilten Künstlichen Intelligenz[13] 5.1.2 : Sie sollen gemeinsam Probleme lösen, die für einen Einzelagenten zu komplex wären oder die verteilte Kompetenz erfordern.

Das "Pleiades project" [Pleiades 1996] der School of Computer Science an der Carnegie Mellon University soll als Beispiel für die Architektur derartiger Systeme angeführt werden.

Zwei Abstraktionsstufen von Agenten interagieren miteinander. Die "Task Assistants" erledigen eine bestimme Aufgabe für den Benutzer, beispielsweise vereinbaren sie Termine oder sammeln interessanten Newsartikel. Diese Agenten arbeiten mit andere Agenten der gleichen Abstraktionsebene zusammen, um zum Beispiel Termine zu koordinieren. Die Informationen, die sie für ihre Arbeit benötigen, liefern ihnen Agenten einer zweiten Abstraktionsebene, die "Information Assistants". Diese werten unterschiedliche Informationsquellen aus und können ebenfalls mit anderen Agenten der gleichen Abstraktionsebene zusammenarbeiten.

Abbildung 5 - Systemdiagramm des Pleiaden-Projekts
nach [Pleiades 1996][14]

Task Assistants, die im Rahmen des Pleiades project entwickelt wurden, sind ein Kalenderagent ("calendar apprentice"), der nicht nur Termine mit anderen Kalenderagenten abstimmen kann, sondern auch die besonderen Terminpräferenzen seines Benutzer lernen kann, um automatisch Terminvorschläge zu unterbreiten [Mitchel et al. 1994], ein Personenfinder ("Personnel"), der unterschiedliche Informationsquellen auswertet, um die Adressen von Personen zu finden, ein Newsreader ("NewsWeeder") und ein Webbrowser ("WebWatcher"), die das Benutzerverhalten lernen und sich mit andere Agenten austauschen sowie einen Agenten, der Besuchsprogramme organisiert ("Visitor Host").

Der Visitor Host ermittelt zuerst den Namen, Interessen, aktuelle Projekte sowie die Organisation des Besuchers. Danach sucht er Personen, die ihn vermutlich treffen möchten und vereinbart über die Kalenderagenten dieser Personen Termine für diese Treffen [Nwana 1996, S.207].

Collaborative Agents sind selbständig und handeln autonom. Sie können ihr Benutzermodell auf unterschiedliche Art und Weise aufbauen. Kommunikation findet zwischen Agenten, Benutzern und Anwendungen statt, Collaborative Agents müssen nicht mobil sein.

4.4.2.3 Interface Agents

Die Metapher, die der Klasse von Interface Agents zugrunde liegt, ist die eines persönlichen Assistenten, der mit dem Benutzer in dessen Arbeitsumgebung zusammenarbeitet. Diese Arbeitsumgebung kann ein einfaches Programm sein, aber auch ein komplettes Betriebssystem. Der Agent beobachtet die Aktionen des Benutzers und macht ihm Vorschläge, wie er die Aufgaben besser lösen könnte, bzw. führen die Aufgaben automatisch selbständig durch. Neben der direkten Beobachtung des Benutzerverhaltens, können Interface Agents auch Aufgaben wahrnehmen, die ihnen direkt vom Benutzer aufgetragen werden. Sie lernen durch positives oder negatives Feedback des Benutzers auf die von ihnen vorgeschlagenen Aktionen und können eventuell auch andere Agenten um Rat fragen, wenn sie in einer bestimmten Situation nicht weiterwissen.

Durch den Einsatz von Interface Agents soll nach [Maes 1994] eine neue Art von Benutzerschnittstelle zu Computern entstehen, in der nicht mehr direkte Manipulation sondern Delegation und Kooperation das Verhältnis zwischen Mensch und Maschine bestimmen. Maes stellt zwei Kernprobleme von Interface Agents heraus:

Das erste Problem ist die Frage nach der Kompetenz des Agenten: Wie erlangt er das Wissen, um dem Benutzer helfen zu können? Das zweite Problem besteht aus der Frage, wie man es erreichen kann, daß der Benutzer dem Agenten vertraut, wenn dieser ihm Ratschläge erteilt oder Aufgaben für ihn wahrnimmt.

Der Ansatz einer selbständig lernenden Architektur, wie sie im letzten Abschnitt beschrieben ist, stellt für Maes die Lösung des Problems dar. Kompetent erlangt der Agent durch Beobachten des Benutzers und Vertrauen dadurch, daß er dem Benutzer nur nach und nach immer mehr Aufgaben abnimmt. Dieses langsame Übernehmen von Aufgaben geschieht für den Benutzer transparent; das bedeutet, er kann immer genaue Erklärungen verlangen, wieso der Agent nun gerade etwas tut, und kann ihn auf einfache Art und Weise dazu bringen, dies in Zukunft nicht mehr zu tun.

In [Pearson 1996] werden verschiedene Funktionen von Interface Agents unterschieden: sie können beratend oder anleitend tätig sein, dem Benutzer bei der Ausführung von Aufgaben helfen, als Stellvertreter fungieren oder bei der Suche nach und dem Filtern von Information unterstützen.

Abbildung 6 - Interface Agents
nach [Maes 1994, S.33]

Die Assistenten, die Microsoft in der aktuellen Version seines Office 97 dem Benutzer zur Seite stellt, sind ein erstes Beispiel für den Einsatz von Interface Agents in einem verbreiteten kommerziellen Produkt. Auch wenn die Assistenten bislang noch nicht sehr intelligent agieren, wird die Entwicklung weiter vorangetrieben. Eric Horvitz, einer der Entwickler des Assistenten:

"This is only "Version 1.0". Future revs of the Assistant will be monitoring our every keystroke, tracking how long we "dwell" on a particular menu oder toolbar icon, poderung what kind of question we have asked in he past, and guessing what we might be trying in the future".

Eric Horvitz in [Leonard 1997a]

Die technischen Voraussetzungen für einen Erfolg der Assistenten scheinen gegeben zu sein, jedoch führen Vorstellungen von einem den Benutzer beobachtenden Computerprogramm schnell, wie Maes das vorhergesehen hat, zu Assoziationen von einer Überwachung durch die Maschine, die sich in Überschriften niederschlagen wie

"Office 97 - or Office 1984. Move into Microsoft's suite and Big Brother Paper Clip will be watching you."

[Leonard 1997b]

Ob die Assistenten jemals das Vertrauen ihrer menschlichen Benutzer erlange werden, bleibt eine spannende Frage.

Die wesentlichen Aspekte von Interface Agents sind das Benutzermodell, das im Laufe der Zeit aufgebaut werden muß, und die Selbständigkeit und insbesondere Autonomie, die sie im Laufe der Zeit gewinnen müssen. Kommunikation mit anderen Agenten kann wichtig sein, ist aber kein Schlüsselfaktor. Interface Agents sind in der Regel Einzelagenten.

4.4.2.4 Information Agents

Primäre Aufgabe von Information Agents ist das Sammeln, Anpassen und Verwalten von Information aus unterschiedlichen Quellen. Diese Funktion ist eine Kernfunktion von Agenten jeder Art und so läßt sich auch das Pleiades-Beispiel aus Abschnitt 4.4.2.2 unter diesem Gesichtspunkt betrachten. Durch die stark wachsende Bedeutung des WWW als Informationsquelle können auch alle Agenten, die im Rahmen des Abrisses der Agentenentwicklung im WWW in Kapitel 5.2 aufgeführt sind, unter der Bezeichnung Information Agents subsummiert werden.

Die Selbständigkeit und Autonomie von Information Agents ist weniger wichtig als ein zutreffendes Benutzermodell. Information Agents müssen in erster Linie mit den Informationslieferanten kommunizieren können. Sie können lokal, entfernt oder mobil arbeiten.

4.4.2.5 Mobile Agenten

Eine letzte Klasse von Agenten, die an dieser Stelle vorgestellt werden soll, sind mobile Agenten, die sich durch ein Computernetz bewegen. Sie kommunizieren mit Servern und eventuell auch anderen Agenten und erledigen auf diese Weise Aufgaben für den Benutzer. Gründe für den Einsatz mobiler Agenten können nach [Nwana 1996] sein:

- Geringere Kommunikationskosten: Anstatt eine große Menge von Informationen von einem entfernten Server zu übertragen, um sie lokal zu verdichten oder die relevanten Teile zu filtern, kann ein mobiler Agent die Daten im Auftrag des Benutzers auf Serverseite bearbeiten und dann nur mit der relevanten Information zurückkommen. Dazu kommt, daß der Benutzer nicht ständig mit dem Netz in Verbindung stehen muß, während sein Agent Aufgaben für ihn erledigt.

- Beschränkte lokale Ressourcen: Auf Seiten des Benutzers können die Ressourcen zur Durchführung und Speicherung großer Datenbankabfragen nicht ausreichen. Ein kleiner mobiler Agent jedoch kann mit den nötigen Informationen versehen diese Aufgaben auf einem Server durchführen und nur mit dem Ergebnis zum lokalen Computer zurückkehren.

- Ein flexibler Ansatz für verteilte Systeme; neue Agenten, sowohl als Dienstanbieter als auch als Nachfrager, können einfach hinzugefügt werden, ohne das Gesamtsystem zu beeinträchtigen.

Den grundlegenden Unterschied zwischen dem bekannten Client-Server Paradigma verteilter Anwendungen und dem Ansatz über Mobile Agenten zeigt Abbildung 7.

Mobilen Agenten sind Objekte mit einem Verhalten, Zustand und Ort [Sommers 1997].

Die Aufgabe des Mobilen Agenten bestimmt sein Verhalten. Ein speziell für Mobile Agenten nötiges Verhalten ist die Bewegung von Ort zu Ort. Außerdem sind Nachrichten zwischen Agenten ebenfalls ein wesentlicher Bestandteil des Verhaltens Mobiler Agenten.

Der Zustand eines Mobilen Agenten, also sein Programmcode und alle seine Daten, müssen derart gekapselt (von der Umwelt abgeschirmt und eigenständig) sein, daß sie auf einfache Weise zu einem neuen Ort geschickt werden können, um dort wieder zur Ausführung zu gelangen. Die wesentlichen Ereignisse im Lebenszyklus eines Mobilen Agenten, durch die dessen Zustand geändert wird, sind seine Erzeugung ("creation"), das Ende ("disposal"), der Aufbruch zu einem neuen Ort ("dispatch"), die Ankunft an einem neuen Ort ("arrival") und die Kommunikation mit andere Agenten ("comunication").

Abbildung 7 - Client-Server und Mobile Agenten
nach [White 1996]

Orte sind das wesentliche Konzept Mobiler Agenten. Als Ort wird eine Umgebung definiert, in der ein Agent zur Ausführung gelangen kann. An einem physischen Ort, also beispielsweise einem Netzwerkserver, können sich mehrere logische Orte, beispielsweise mehrere Anbieter von Waren, befinden. Orte haben eine ähnliche Funktion wie die virtuelle Maschine der Programmiersprache Java: Sie stellen alle Dienste zur Verfügung, die der Agent zur Ausführung benötigt, koordinieren den Ablauf mehrerer Agenten und deren Kommunikation sowohl untereinander als auch mit dem zugrunde liegenden System und schützen das System vor unerlaubten Zugriffen der Agenten

Ein weiterer wesentlicher Aspekt Mobiler Agenten ist die Sicherheit. Die Sicherheit der zugrunde liegenden Systemumgebungen soll durch das Konzept der Orte gewährleistet werden. Jedoch muß auch den Agenten ein gewisses Maß an Schutz vor den Systemumgebungen gewährleistet werden, die ein Interesse daran haben könnten, an die Informationen der Agenten zu gelangen oder diese zu verändern [Green et al. 1997, S. 29].

Als ein Beispiel für den Einsatz Mobiler Agenten sei das Stormcast-Projekt an der Universität Tromso, Norwegen angeführt [Johansen 1997b]. Im Rahmen dieses Projektes, welches schon seit einigen Jahren läuft, werden Wetterinformationen (insbesondere Satellitenbilder) der See um Norwegen gesammelt und zur Verfügung gestellt. Auf Basis von TACOMA [Johansen 1997a] wird das System nun dahingehend weiterentwickelt, daß die Benutzer über ihren WWW-Browser einen Agenten erzeugen, und diesen dann zum Stormcast-Server schicken. Dort soll er aus der Menge von Daten und insbesondere Bildern die benötigten Informationen auswählen und schließlich nur mit diesen zum Benutzer zurückkehren. Durch den Einsatz von Agenten soll die zu übertragende Datenmenge reduziert werden.

Abbildung 8 - Orte für Mobile Agenten
nach [MAF 1997, S. 5]

Mobilität und Kommunikation sind die wesentlichen Charakteristika, die einen Mobilen Agenten ausmachen. Andere Eigenschaften, wie Selbständigkeit und Autonomie spielen jedoch ebenfalls eine wichtig Rolle bei dieser Art von Agenten.

4.5 Mehrwerteffekte Intelligenter Agenten

Die folgende Tabelle zeigt einige Mehrwerteffekte auf, die der Einsatz von Intelligenten Agenten gegenüber herkömmlichen Programmen bieten kann. Natürlich kann bei der Breite der möglichen Anwendungsfelder diese Übersicht nur sehr oberflächlich und grob sein.

Eigenschaft

Vorteil
Mehrwert
Automation
Ausführen sich wiederholender Aufgaben
Erhöhte Produktivität
Anpassung
Anpassung an Informationsverhalten
Reduzierter Information-Overload
Benachrichtigung
Asynchrone Mitteilungen
Verringerter Aufwand
Lernen
Benutzerverhalten erlernen
Vorausschauende Unterstützung
Schulen
Benutzer im gleichen Umfeld schulen
Geringerer Schulungsaufwand
Mobilität
Entferntes Ausführen von Tätigkeiten
Geringerer Zeitaufwand
Tabelle 1 - Mehrwerte Intelligenter Agenten

nach [Harrison, Caglayan 1997]

4.6 Zusammenfassung

Die Einsatzgebiete Intelligenter Agenten sind genauso vielfältig wie die Ansätze zur Definition des Begriffes vielschichtig sind. Die Schlüsseleigenschaften von Agenten sind Autonomie, Selbständigkeit, Kommunikation und ein Benutzermodell. Weitere Eigenschaften sind die Architektur des Agentensystems sowie der Grad der Mobilität. Intelligenz wird nicht als einzelne zu modellierende Eigenschaft aufgefaßt sondern als vom Benutzer resultierend aus dem Zusammenspiel aller anderen Eigenschaften wahrgenommene Eigenschaft.

[4]: <http://www.microsoft.com/officefreestuff/office/assistants.htm>

[5]: Ein PDA ("Personal Digital Assistant") ist ein tragbare Kleinstcomputer.

[6] : siehe Abschnitt

[7]: siehe Abschnitt

[8]: siehe Abschnitt

[9]: siehe Abschnitt

[10]: <http://www.extempo.com/webBar/>

[11]: VRML ("Virtual Reality Markup Language") ist eine standardisierte Programmiersprache zur Erzeugung virtueller Räume.

[12]: <http://www.blacksun.de/cool/guide/trade.html>

[13]: siehe Abschnitt

[14]: <http://www.cs.cmu.edu/afs/cs.cmu.edu/project/theo-5/www/pleiades.ps.Z>


previous next Title Contents