Vienna! See! See!     [www.vienna.cc]   [English / Deutsch / Po-Russky]   [Search/Suchen]

www.vienna.cc - Company Logo

Hotel ONLINE
English / Italiano / Deutsch
Español / Français
日本語 / 中文
Online Travel Agency - Click here

ViennaCC-Music online
 

Google


Deutsch
Suchen in:

Suchbegriffe:

AMAZON.DE
Unsere Empfehlungen

English

Search:

Keywords:

AMAZON.COM
Our Recommendations
Shopping:
Deutsch
English
Po-Russky

Agenten im Computer

Intelligent Agents, künstliche Intelligenz

Begriffsdefinition

Intelligenz

Darunter versteht man die Fähigkeit der Bewältigung einer neuartigen Situation in Bezug auf deren Erfassung, Bewertung, Anwendung und Zusammenhängen. Für Software kann nur bedingt von Intelligenz gesprochen werden, da Software keine Schlußfolgerungen erarbeiten kann, wohl aber Befehle des Benutzers entgegennehmen und in seinem Sinne(?) ausführen kann, wobei Ziele und Regeln definiert sein müssen. Je besser die Vorgaben erfüllt werden, desto „intelligenter“ ist eine Software. (vgl. Gilbert u. Aparicio: Intelligence is the degree of reasoning and learned behaviour: the agent´s ability to accept the user´s statement of goals and carry out the task delegated to it)

Agent

Ein Software-Agent ist ein „Beauftragter mit Handlungsvollmacht“ (erinnert an Geheimagent 007 mit der Lizenz zum Töten). Der Agent erfüllt also Aufgaben selbstständig, trifft Entscheidungen und reagiert auf Umfeldbedingungen im Interesse der Auftragserfüllung. Unter Agency versteht man den Grad der Selbständigkeit bzw. Unabhängigkeit.

Hohe Anforderungen an Agenten

Ein Agent sollte dem Benutzer Arbeit abnehmen, ihn unterstützen. Welche Anforderungen sollte eigentlich so ein Helferlein erfüllen um ihn als Intelligent Agent bezeichnen zu können? Ein für Spezialaufgaben programmierter Roboter ist noch zu wenig, er sollte doch über ein wenig „Intelligenz“ verfügen. Wann spricht man also von einem Intelligent Agent? Ein Intelligent Agent sollte über folgende Eigenschaften verfügen:

  • Autonomie: Agents erfüllen Aufgaben auch ohne Anweisung des Benutzers und kontrollieren die eigenen Aktionen und Reaktionen des Umfelds. Sie funktionieren wie Roboter in einem Regelkreis.
  • Initiative: Agents werden für die Lösung einer Aufgabe selbstständig aktiv. Sie stehen standby zur Verfügung und lauern auf den Einsatzbefehl, ausgelöst z.B. durch Erreichen eines Zustandes.
  • Kollaboration: Agents sollen andere Agents „beauftragen“ können, also andere Prozesse starten, überwachen und auf deren Ergebnisse reagieren können.
  • Kontinuität: Agents sind praktisch immer aktiv und auf Abruf bereit.
  • Mobilität: Agents sollen die Positionierung in einem Netzwerk selbstständig ändern können.
  • Reaktionsfähigkeit: Agents stehen in einem Standby-Zustand zur Verfügung und reagieren auf Ereignisse (Trigger) des Umfelds.
  • Resourcenschonung: Agents sollen rationell vorgehen können.
  • Soziale Fähigkeiten: Agents interagieren mit dem Benutzer, auch ohne Aufforderung, und kommunizieren auch mit anderen Agenten. Für letzteres wurde die sogenannte "agent communication language" (ACL) entwickelt, eine gemeinsame Sprache für Agents. Hier unterscheidet man 2 Schichten: Die „outer language“ enthält Ausdrücke für Anfragen und Antworten (z.B. ask, tell), Routing-Statements (z.B. forward, broadcast) und Befehle zur Informationsaquirierung (information brokering requests) (z.B. advertise, recommend, recruit); die „inner language“ beinhaltet komplizierte Ausdrücke (Terme), Operatoren, Informationen zu Prozeduren und Metainformationen und bezieht sich auf Inhalte der Nachricht.
  • Veränderbarkeit: Agents sollen Eigenheiten des Benutzers in die Zielverfolgung einbeziehen.
  • Widerspruchsfreiheit: Agents verfolgen ein definiertes Ziel.
  • Zielorientierung: Agents suchen selbstständig einen Lösungsweg.

Wesentlich ist also künstliche Intelligenz (Artificial intelligence – AI), um eine Software als Intelligent Agent bezeichnen zu können. Kritiker meinen, der Begriff „künstliche Intelligenz“ ist schon ein Widerspruch. Aber andere Begriffe, etwa „künstliche Cleverness“, sind ebenso unglücklich. Auch der Grad der Komplexität einer Software ist kein Maßstab. Bleiben wir also bei dem Begriff AI. Für die Erstellung einer Software für künstliche Intelligenz gibt es verschiedene Ansätze:

Synthetische Vorgangsweise

Diese beruht auf der Beobachtung von Ursache und Wirkung unter Einbeziehung von Hintergrundwissen und Erstellen einer Hypothese nach folgenden Wegen:

  • empirische Induktion: Beobachtungen ohne Einbeziehung von Hintergrundwissen führen zur Erstellung einer Hypothese.
  • Abduktion: Eine Hypothese wird auf Basis von Hintergrundwissen aufgestellt.
  • konstruktive Induktion: eine Kombination der beiden.

Analytische Vorgangsweise

Vorhandenes Wissen, außer Streit stehende Regeln, werden zur Generierung von neuem Wissen herangezogen. Hier gibt es zwei Ansätze. Bei axiomatischer Deduktion werden unwidersprochene (außer Streit stehenden) Regeln aus dem vorhanden Wissen zur Erstellung eines Algorithmus herangezogen. Wird vorhandenes Wissen auf kleine Einheiten reduziert, spricht man von konstruktive Deduktion

Neuronale Netze

Neuronale Netze sind ein Versuch, das menschliche Gehirn nachzubilden. Für Intelligent Agents ist besonders die Lernfähigkeit und das vernetzte „Denken“ von Bedeutung.

Genetische Algorithmen

Die Vorgänge der Evolution wie Kreuzung, Mutation und Spezialisierung werden hier als Vorbild herangezogen. Aus einer zufälligen Ausgangspopulation werden nach einer Zahl von Generationen Lösungsmengen entwickelt, wobei bei jedem Schritt schlechte Lösungen ausgeschieden und gute Lösungen weiterverfolgt werden.

Agenten in der Praxis

Den Wunder-Agenten gibt es nicht, vielmehr werden Intelligent Agents für Spezialaufgaben erstellt. Hier eine kurze Typologie. Ein Software-Agent ist letztendlich nur ein Stück Programmcode – klingt simpel....

  • Collaborative Agents: Diese interagieren mit anderen Agenten für die Erreichung des eigenen Ziels.
  • Interface Agents: Diese kommunizieren (über Interface) mit dem Benutzer und lernen so Verhaltensweisen vom Benutzer. Der Benutzer wiederum steuert die Aktivitäten seines Gehilfen (agents).
  • Mobile Agents: Diese bewegen sich selbstständig im Netzwerk und finden selbst Wege zum Ziel.
  • Information/Internet Agents: Diese Helfer versuchen aus einer Informationsflut die relevanten Informationen zu filtern und somit die für den Benutzer interessanten Inhalte bereitzustellen und ggf. aufzubereiten. Eine besondere Bedeutung haben diese Agents im Internet, wo – salopp ausgedrückt – alles vorhanden aber einfach nicht zu finden ist. Hier sind die Helfer schon unersetzlich, wobei der Internet-Surfer eine gute Performace (schnelle Antwortzeiten), Aktualität, Authentizität (die Information soll richtig sein) und Datenschutz (Schutz der Privatsphäre) erwartet.
  • Reactive Agents: Diese reagieren auf Umfeldbedingungen. Ein Einsatzgebiet ist bei Simulationsprogrammen mit Echtzeit-Abläufen zu sehen.
  • Hybrid Agents: Das sind die Zwitter, die mehrere oben genannte Eigenschaften vereinen.

Weiterführender Link:

Österreichische Gesellschaft für Artificial Intelligence (OeGAI): http://www.ifs.tuwien.ac.at/oegai/


Zurück zur Übersicht