Softwareagent

Softwareagent

Als Software-Agent oder auch Agent bezeichnet man ein Computerprogramm, das zu gewissem eigenständigem Verhalten fähig ist.

Inhaltsverzeichnis

Definition und Grundlagen

Die Forschung über Künstliche Intelligenz definiert eine Software als Agenten, wenn sie folgende Eigenschaften besitzt:

  • autonom – das Programm arbeitet weitgehend unabhängig von Benutzereingriffen
  • proaktiv – das Programm löst Aktionen aufgrund eigener Initiative aus
  • reaktiv – das Programm reagiert auf Änderung der Umgebung
  • sozial – das Programm kommuniziert mit anderen Agenten
  • lernfähig/anpassungsfähig – das Programm lernt aufgrund zuvor getätigter Entscheidungen bzw. Beobachtungen.

Kommt zu den genannten Eigenschaften die Fähigkeit hinzu, selbsttätig den Ausführungsort zu wechseln (zu migrieren), so spricht man von einem mobilen Agenten. Dazu braucht er Fähigkeiten, die ihn zu einer gewissen Anpassung an andere Infrastruktur befähigen. Siehe hierzu Migration (Informationstechnik), das solche Mechanismen seitens eines Menschen beschreibt.
Intelligente Agenten zeichnen sich durch Wissen, Lernfähigkeit, Schlussfolgerungen und die Möglichkeit zu Verhaltensänderungen aus.

Ein Netz aus einer Teilmenge von autonomen Agenten, die miteinander kommunizieren können, nennt man eine Population. Diese Kommunikation wird durch die Dichte und die Verteilung der Agenten sowie deren Gruppierung und die zeitliche Varianz dieser Parameter beeinflusst.

Einsatz

Agenten werden große Einsatzmöglichkeiten in den Bereichen E-Commerce, Informationsrecherche, Simulation, Erledigen von Routineaufgaben und in autonomen Systemen eingeräumt. Im Bereich Simulation gibt es dabei das Spezialgebiet der Multi-Agenten-Simulation bzw. Gruppensimulation mit eigenen Softwareprodukten. Letzteres wird gerne im Spielebereich eingesetzt.

Implementierungen

Es gibt zahlreiche Implementierungen von Agentenplattformen im wissenschaftlichen Umfeld. Diese haben meist einen speziellen Fokus, zum Beispiel intelligentes Verhalten, Sicherheit, effiziente Migration.

Eine ausführliche Übersicht über aktuelle Systeme, welches als Projekt (Co-ordination Action) im Rahmen des sechsten Forschungsrahmenprogramms der Europäischen Kommission gefördert wird, ist AgentLink.org[1]

Agententypen

Agententypen unterscheiden sich in der Agentenarchitektur (nicht zu verwechseln mit der Architektur, auf der das Umgebungsprogramm läuft). Unter einer Agentenarchitektur versteht man die Art und Weise, wie die Definition und Verwaltung des Agentenverhaltens erfolgt. Prinzipiell herrscht dabei eine große Begriffsvielfalt, aber die Einteilung in zwei weitgehend anerkannte Bereiche ist möglich:

Reaktive Agenten

Reaktive (bzw. subkognitive) Agenten verfügen prinzipiell nicht über eigenes Wissen, sondern agieren nur aufgrund ihrer Wahrnehmungen direkt und ohne Entscheidungsprozess.

Folgende Agententypen treten in diesem Zusammenhang öfter auf:

  • Einfach Reaktiver Agent: Ist der einfachste Typ. Der Agent erhält Sensorinformationen und wählt aufgrund von Bedingungs-Aktions-Regeln eine Aktion aus.
  • Beobachtender Agent: Stellt eine Erweiterung des Einfachen Reaktiven Agenten dar. Dieser Agententyp besitzt bereits ein Gedächtnis und sammelt Informationen über die Umwelt und was die eigenen Aktionen bewirken würden. Die Bedingungs-Aktions-Regeln werden dann auf dieses Gesamtbild angewandt und nicht mehr nur auf die reinen Sensorinformationen.

Kognitive Agenten

Kognitive Agenten verwalten ein Modell ihrer Umwelt in einer eigenen Datenstruktur. Dadurch wird Planung der Aktionen und schließlich auch zielgerichtetes Handeln möglich. Eine bekannte Unterklasse ist die Agentendefinition in den BDI Agenten durch Angabe der Beliefs, Desires und Intentions.

Folgende Agententypen treten in diesem Zusammenhang öfter auf:

  • Zielbasierter Agent: Der Agent besitzt eine Zielvorgabe, die er zu erreichen versucht und entscheidet aufgrund der Sensorinformation und seines Wissens über die Folgen seiner Aktionen, welche Aktion ihn seinem Ziel am nächsten bringt. Da das Ziel nicht immer in einem Schritt erreicht werden kann, ist der Agent in der Lage zu planen.
  • Nutzenbasierter Agent: Als Weiterentwicklung des zielbasierten Agenten besitzt der nutzenbasierte Agent ebenfalls eine Zielvorgabe. Es werden dabei alle möglichen und unmöglichen Zustände auf eine reelle Zahl abgebildet, welche den Nutzen für den Agenten repräsentiert. Er selbst hat hierbei den Wert -∞. Dadurch ist er in der Lage, in Situationen, in denen mehrere Ziele erreichbar sind, zu entscheiden, welche Aktionen den größeren Nutzen haben, bzw. welche Ziele erstrebenswerter sind. Dies ist vor allem dann interessant, wenn nicht mit Sicherheit gesagt werden kann, ob ein Ziel erreicht werden kann. Der Agent kann damit eine Risikoeinschätzung durchführen und wird nicht nur seinem Hauptziel folgen.

Siehe auch

Literatur

Weblinks

  1. http://www.agentlink.org/ AgentLink.org

Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Agententechnologie — Als Software Agent oder auch Agent bezeichnet man ein Computerprogramm, das zu gewissem eigenständigem Verhalten fähig ist. Inhaltsverzeichnis 1 Definition und Grundlagen 2 Einsatz 3 Implementierungen 4 Agententypen 4.1 R …   Deutsch Wikipedia

  • Software-Agenten — Als Software Agent oder auch Agent bezeichnet man ein Computerprogramm, das zu gewissem eigenständigem Verhalten fähig ist. Inhaltsverzeichnis 1 Definition und Grundlagen 2 Einsatz 3 Implementierungen 4 Agententypen 4.1 R …   Deutsch Wikipedia

  • Software Agent — Als Software Agent oder auch Agent bezeichnet man ein Computerprogramm, das zu gewissem eigenständigem Verhalten fähig ist. Inhaltsverzeichnis 1 Definition und Grundlagen 2 Einsatz 3 Implementierungen 4 Agententypen 4.1 R …   Deutsch Wikipedia

  • Softwareagenten — Als Software Agent oder auch Agent bezeichnet man ein Computerprogramm, das zu gewissem eigenständigem Verhalten fähig ist. Inhaltsverzeichnis 1 Definition und Grundlagen 2 Einsatz 3 Implementierungen 4 Agententypen 4.1 R …   Deutsch Wikipedia

  • Agenten-Programmiersprache — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Agentenorientierte Programmierung ist eine Art der Programmierung,… …   Deutsch Wikipedia

  • Software-Agent — Als Software Agent (auch Agent oder Softbot) bezeichnet man ein Computerprogramm, das zu gewissem eigenständigem (autonomem) Verhalten fähig ist. Das bedeutet, dass abhängig von verschiedenen Zuständen (Status) ein bestimmter Verarbeitungsvorgang …   Deutsch Wikipedia

  • intelligenter Agent — intelligẹnter Agẹnt,   Informatik: im weiteren Sinn ein Dienst, der für seinen Nutzer Aufgaben, für die ein spezielles Fachwissen notwendig ist oder die aus vielen zeitaufwendigen Einzelschritten bestehen, größtenteils selbstständig erledigt.… …   Universal-Lexikon

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”