Künstliche Agenten - Eine Technologie mit großem Zukunftspotenzial

Tekst
Loe katkendit
Märgi loetuks
Kuidas lugeda raamatut pärast ostmist
Künstliche Agenten - Eine Technologie mit großem Zukunftspotenzial
Šrift:Väiksem АаSuurem Aa

Wolfgang Weller

Künstliche Agenten

Grundlagen und Anwendungsmöglichkeiten

Impressum:

Copyright: © 2013 Wolfgang Weller

Druck und Verlag: epubli GmbH, Berlin

www.epubli.de

ISBN 978 – 3 – – –

Prolog

In unser Dasein treten immer mehr künstliche Wesen. Nicht dass dies besonders auffällig wäre, diese Wesen wirken vielmehr oftmals im Hintergrund, wenn sie uns unangenehme, beschwerliche und auch gefährliche Arbeiten abnehmen und uns somit entlasten. Dazu gehören auch die sog. Künstlichen Agenten.

Zu den Merkmalen solcher Tätigkeiten zählen eine Beauftragung zur Durchführung von Tätigkeiten durch einen Auftraggeber, die eigenständige Ausführung solcher Aufträge durch den Auftragnehmer unter Einsatz eines sehr umsichtigen, durchaus klugen und den angetroffenen Situationen angemessenen Verhaltens sowie die Rückmeldung des Ergebnisses solcher Tätigkeit an den Auftraggeber.

Der Begriff „Agent“ rührt von vergleichbaren Tätigkeiten menschlicher Agenten her. Dabei erinnert diese Bezeichnung zunächst an Spione und ist somit geheimnisumwittert. Tatsache aber ist, dass diese Art von Beziehungen Besonderheiten aufweist, die durchaus auch für andere Anwendungen zutreffend sind. Wir nehmen bekanntlich die Dienste von Agenten in Anspruch bei Aufgaben, von denen wir uns entlasten möchten oder wo eine spezielle Sachkompetenz gefragt ist. So delegieren wir beispielsweise Aufgaben mit Rechtscharakter an Rechtsanwälte, den Kauf oder Verkauf von Immobilien an Makler, die Buchung von Reisen an Reisebüros, die Suche nach neuen Jobs an Jobcenter u. v. a. m. Es liegt also nahe, künstliche Wesen, die dem Charakter nach Dienstleistungsaufgaben verrichten, ebenfalls Agenten zu nennen. Kein Wunder also, dass Einrichtungen solcher Branchen oft als „Agenturen“ bezeichnet werden.

Wer sich mit Künstlichen Agenten befasst, sieht sich einem außerordentlich fasettenreichen Fachgebiet gegenüber. Dementsprechend wird der Autor in den nachfolgenden Darlegungen um eine möglichst geordnete und transparente Darlegung des zu behandelnden Stoffs bemüht sein.

1. Grundlagen des Agentenkonzepts

1.1 Begriffsbestimmung

Mit den Künstlichen Agenten sind neuartige Systeme in unsere Welt gelangt, die uns bei der Lösung anspruchsvoller Aufgaben verschiedenster Art unterstützen. Diese Systeme bieten eine Fülle neuartiger Möglichkeiten sodass sie sich angesichts ihres breitgefächerten Einsatzpotentials rasch ausbreiten und in immer neue Bereiche vordringen. Der Umgang mit diesen Systemen stellt allerdings höhere Anforderungen auf bisher weniger bekannten Gebieten. Somit ist es angesagt, sich mit diesen Systemen eingehender zu befassen.

Zunächst versuchen wir einen Eindruck vom Wesen dieser neuartigen Systeme zu gewinnen. Dazu stellen wir zunächst die Auffassungen verschiedener Interessenten wie folgt vor:

- Standpunkt der Systemwissenschaft

Agenten sind autonom agierende Einheiten in komplexen Systemen

- Standpunkt der Robotik

Agenten sind Roboter, die Handhabungs- und/oder Arbeitsaufgaben autonom lösen [1]

- Standpunkt der Informatik

Agenten sind Intelligente Programme, die in einer vernetzten Welt ein effektives und kooperatives Arbeiten mit Computern ermöglichen [2]

- Standpunkt der Künstlichen Intelligenz KI (Artifical Intelligence AI)

Agenten sind verteilte künstliche Intelligenzen, die sich aus ihrem Wissen heraus definieren.

- Standpunkt des Künstlichen Lebens KL (Artifical Life AL)

Agenten sind künstliche Lebewesen, die in einer künstlichen Welt Eigenschaften von Lebewesen zeigen.

Wie hier deutlich wurde, werden bei der Charakterisierung Künstlicher Agenten je nach Sichtweise unterschiedliche Aspekte in den Vordergrund gerückt, Wir werden uns indessen mit solch einseitiger Sichtweise nicht begnügen sondern uns um eine umfassendere Begriffsdefinition bemühen. Dabei knüpfen wir an einen bereits vorliegenden Definitionsvorschlag an, den wir wie folgt modifizieren [3]:

Ein Agent ist ein Wesen (eine Person oder auch ein künstliches Gebilde) mit Verhaltensmerkmalen kognitiver Art, das ermächtigt werden kann und in der Lage ist, im Auftrag Dritter weitgehend autonom zielgerichtet zu handeln.

Künstliche Agenten sind dann vom Menschen geschaffene Objekte bzw. Systeme, die ihnen dienen, indem sie Aufgaben abnehmen, die sie belasten bzw. ihnen auf andere Art nützlich sind. Sie sind jedoch nicht zu verwechseln mit anderen künstlichen Gebilden, die zwar ebenfalls den Menschen dienen, jedoch nur eingeschränkt handlungsfähig sind. Als Beispiele seien hier Waschmaschinen oder Geschirrspüler genannt. Diese funktionieren zwar selbsttätig, jedoch nur in dem Sinne, dass sie akkurat Programme ausführen, die ihnen vom Menschen vorher eingegeben wurden. Zu solchen konkrete Arbeitsleistungen vollbringenden Objekten gehören auch solche, die dem Menschen ebenfalls Tätigkeiten formal-geistiger Art abnehmen. Dazu zählen vor allem Aufgaben im Zusammenhang mit der Überwachung und Steuerung von Prozessen. Systeme dieser Art werden Automaten genannt. Der Hauptunterschied zwischen Automaten und Künstlichen Agenten besteht somit darin, dass die einen Vorgaben selbsttätig umsetzen, während die anderen autonom, also selbstständig agieren. Dies verlangt im zuletzt genannten Fall das Vorhandensein kognitiver Fähigkeiten. Sie repräsentieren somit eine funktionell höherwertige Systemklasse.

1.2 Dienstleistungsbeziehungen

Wie bereits angedeutet, sind Agenten in der Lage, für ihre Benutzer Dienstleistungen zu erbringen. Die Art dieser Dienste kann sehr unterschiedlich sein. Somit handelt es sich um Systeme, in denen einerseits Dienstgeber (DG) vorhanden sind, die Aufträge gewisser Art an Dienstnehmer (DN) erteilen. Die Agenten sind folglich Dienstnehmer, welche die delegierten Aufträge autonom ausführen und sich dabei den Einflüssen einer i. Allg. unbekannten Umgebung aussetzen, die sie bewältigen müssen. Bei den dienstnehmenden Agenten kann es sich dabei um Personen, technische Gebilde oder auch andere Agenten handeln.

Zwischen den Auftraggebern und -nehmern besteht eine Dienstleistungsrelation. Ihre Grundform ist durch die aufeinander folgende Beauftragung und Ergebnisrückmeldung, also eine wechselseitige Beziehung, gekennzeichnet (Bild 1-1).


Bild 1-1 Wirkstruktur der Dienstleistungsbeziehung

DG Dienstgeber DN Dienstnehmer

Der jeweilige Auftrag enthält eine Beschreibung der gestellten Aufgabe sowie ggf. auch Angaben über die Umstände und die Art und Weise seiner Ausführung. Diese Angaben können bestimmte Bedarfssituationen, Zeitpunkte der Ausführung des Auftrags oder auch Mitteilungen anderer Art beinhalten. Ebenso können in der übermittelten Ergebnisnachricht auch weitere Angaben, etwa über aufgefundene zweckmäßige Informationen, die Qualität der gefundenen Lösung oder das Erreichen einer bestimmten Position, enthalten sein.


Es kommen durchaus auch eingeschränkte Formen von Dienstleistungsbeziehungen vor [4]. Hierbei stehen Dienstnehmer und Dienstgeber in einer einseitigen Relation. Eine dieser reduzierten Formen ist die Dienstbeauftragung ohne Ergebnisrückmeldung. Sie findet Anwendung, wenn eine ordnungsgemäße Ausführung der erteilten Dienstaufträge grundsätzlich erwartet werden kann. Rückmeldungen an den Dienstnehmer gibt es höchstens, wenn der Dienstgeber selbst einen Fehler oder Störungen bei der Aufgabenlösung festgestellt hat.


Umgekehrt kann auch der Fall vorliegen, dass der Dienstnehmer nur dann mit dem Dienstgeber in Kontakt tritt, wenn er einen selbstgewählten Auftrag ausgeführt hat. Es fehlt also eine besondere Dienstbeauftragung. Der Dienstgeber muss sich folglich selbst beauftragen. Er bestimmt also selbst, ob und unter welchen Umständen eine Dienstleistung durchzuführen ist. Somit wird er von sich aus unbeauftragt aktiv (proaktiv). Um festzustellen, wann der Dienstgeber aktiv werden muss, hat er seine Umgebung fortlaufend zu überwachen. Das bedeutet, er muss die Umgebung beständig beobachten, die erlangten Beobachtungen analysieren und daraus Schlussfolgerungen ableiten. Dazu bedarf es gewisser Kriterien, die ihm vom Dienstgeber vor Arbeitsaufnahme übermittelt worden sein müssen.


Die hier beschriebenen Formen der Dienstgeber-Dienstnehmer- Relation gibt es in verschiedenen Spielarten. So können bestimmte Dienste mehreren Dienstnehmern zugänglich gemacht werden. Eine solche Lösung bietet sich an, wenn der Dienstgeber eine Leistung verspricht, die von breiterem oder sogar allgemeinem Interesse ist. Dieser Fall ist beispielsweise für Informationsdienstleister des Internets typisch. Umgekehrt können auch ganze Teams von Dienstgebern von einem Dienstnehmer in Anspruch genommen werden, wenn eine verteilte Aufgabe zu lösen ist. Die Mitglieder solcher Teams sind dann möglicherweise Spezialisten, die den Dienstnehmer durch die autonome Lösung bestimmter Teilaufgaben unterstützen. Denkbar ist aber auch, dass die verschiedenen Dienstgeber vom Dienstnehmer in wechselnder Folge in Anspruch genommen werden. Die Auswahl der Dienstgeber bzw. Reihenfolge ihrer Benutzung wird dann von der Spezifik der Aufgabe oder auch vom Ergebnis des zuletzt aktiven Dienstgebers bestimmt. Dem Dienstnehmer obliegt dann die anspruchsvollere Aufgabe der Analyse der Ergebnisse und Entscheidung zugunsten eines der Kandidaten.

 

1.3 Das Client-Server-Modell

Für die Beschreibung des Zusammenwirkens von Dienstnehmern und Dienstgebern ist das Client-Server-Modell bestens geeignet, Der Dienstnutzer (benutzende Person oder Agent) wird hier Client genannt. Dieser nimmt die Leistungen eines Dienstgebers in Anspruch, welcher wiederum als Server bezeichnet wird. Dieses Bild passt besonders auf Rechner, die in einer Client-Server-Relation stehen. Die Übernahme dieses Modells ist hier dadurch gerechtfertigt, als die Agentenfunktionalitäten auf Rechnerplattformen implementiert sind. Die Interaktion zwischen den Client- und Serverrechnern erfolgt auf informationeller Ebene. Dazu bedarf es einer geeigneten Kommunikations-Infrastruktur, die vielfach die Form eines Kommunikationsnetzwerks besitzt. Client-Server-Systeme sind somit durch die in Bild 1-2 dargestellte Architektur gekennzeichnet.


Bild 1-2 Architektur einer Client-Server-Beziehung

1.4 Eigenschaften künstlicher Agenten

Für das Verhalten Künstlicher Agenten sind bestimmte Schlüsselattribute maßgebend, die wie folgt kommentiert werden:

 Delegation


Anstehende Aufgaben, die durchaus wechselnder Art sein können, werden in geeigneter Weise vom Nutzer auf den Künstlichen Agenten übertragen, also deren Ausführung delegiert. Damit besteht eine Auftraggeber-Auftragnehmer-Relation.


 Autonomie


Der Begriff Autonomie bedeutet Eigenständigkeit und ist eine herausragende Eigenschaft von Agenten. Alles, was von Künstlichen Agenten zur Erbringung der übernommenen Dienstleistung erforderlich ist, muss folglich völlig selbstständig, d. h. aus eigenem Aufkommen, erbracht werden.

Dazu zählt auch, dass sie in der Lage sein müssen, die Wirkungen ihrer Handlungen selbst zu kontrollieren, um daraus Schlussfolgerungen für weitere zielgerichtete Aktivitäten zu ziehen. Nach Erreichung des gestellten Zieles sind die erlangten Ergebnisse dem Auftraggeber in geeigneter Form zu präsentieren [3], [4], [2].


 Eigenaktivität


Autonomie bedeutet einerseits, dass bestimmte Befugnisse des Auftraggebers auf den beauftragten Agenten übertragen werden. Der Dienstgeber kann sich aber auch bestimmte Befugnisse selbst vorbehalten, etwa wenn damit rechtliche oder finanzielle Konsequenzen verbunden sind. Um den jeweils übertragenen Auftrag erfüllen zu können, muss der Agent jedoch eigene Aktivitäten entfalten und deren Wirkungen kontrollieren.


 Interaktion


Die Tätigkeit von Agenten in ihrer Umwelt vollzieht sich durch Interaktion. Diese Beziehungen bestehen zur Umwelt sowie ggfs. auch zu anderen Agenten. Dabei werden Informationen und/oder auch Material und Energie ausgetauscht. Bei diesem Wechselspiel werden die ausgegebenen Handlungen durch Reaktionen der Umgebung oder anderen Prozessteilnehmern beantwortet. Dementsprechend unterschiedlich sind die Erscheinungsformen der Interaktion. Typische Fälle sind die informationelle, die physikalische und die Prozessinteraktion.

Reaktivität

Der Begriff Reaktivität bezieht sich auf die Fähigkeit von Agenten, auf Einflüsse oder Informationen der Umwelt angemessen zu reagieren. Die Art und Weise wie ein Agent auf seine Umgebung reagiert, wird dabei wesentlich davon bestimmt, ob er über ein Wissen über seine Umwelt verfügt oder nicht. Existiert kein Wissen, so wird das Handeln des Agenten wesentlich durch Suchprozesse bestimmt sein. Suche bedeutet hier die mehr oder weniger zufällige Auswahl von Handlungsalternativen, deren Auswirkungen dann sensorisch überwacht werden. In diesem Fall spricht man von echt reaktiven Agenten.


Agenten, die auf Wissen zurückgreifen können, verwahren dieses oftmals intern in irgendeiner Art von Umweltmodell. In solchen Modellen werden bestimmte von den Agenten benötigte Einzelaspekte der Umwelt abgebildet. Diese Modelle werden in einer von Maschinen auswertbaren Form, bspw. einer digitalen Karte, abgelegt. Systeme, die über derartige Modelle verfügen, werden als deliberative Agenten bezeichnet [5]. Bei Feststellung einer aktuellen Situation kann dann durch Befragung des internen Modells eine im Sinne der Zielstellung günstige oder womöglich gar optimale Reaktion bestimmt und an die Außenwelt ausgegeben werden. Deliberative Agenten besitzen somit ein wesentlich effektiveres Verhalten als rein reaktive.

Proaktivität

Unter dem Begriff Proaktivität versteht man die Fähigkeit, auch selbstständig Initiativen zu ergreifen, wenn ein Handlungsbedarf erkannt wird. Damit wird nicht nur auf die Umwelt reagiert, sondern auch aktiv auf deren Gestaltung eingewirkt. Diese Einflussnahme erfolgt in dem Sinn, eigene Ziele zu verwirklichen. Proaktivität und Zielorientierung sind daher gleichgerichtete Fähigkeiten.


Proaktives Verhalten von Agenten wird wesentlich von deren Intelligenz bestimmt. In einfachen Fällen beschränkt sich das proaktive Verhalten auf die Überwachung bestimmter Informationsquellen und Aktivwerden bei Feststellung von Änderungen. Echt proaktive Agenten mit höherer Intelligenz beherrschen ein komplexes Zielsystem mit einer Vielzahl von Teilzielen. Die Teilziele werden je nach festgestellter Situation einzeln verfolgt, um die Lösung der Gesamtzielstellung näher zu bringen.


 Kommunikation


Zwischen dem Auftraggeber und dem Agenten muss eine Kommunikationsbeziehung bestehen, um einerseits die zu übertragende Aufgabe mitzuteilen und am Ende das Ergebnis ihrer Erledigung zu empfangen. Während der Aufgabenerledigung ist im Regelfall keine Kommunikation vorgesehen.

Informationelle Interaktion

Agenten treten intern sowie mit ihrer Umgebung in verschiedene Wechselbeziehungen, die häufig nur schwer durchschaubar sind. Hierbei lässt sich zwischen zwei wesentlichen Formen der Interaktion unterscheiden – der informationellen und der physikalischen Interaktion


Betrachten wir zunächst die informationelle Interaktion, so bezieht sich diese auf den Austausch, also die Übertragung informationeller Größen zwischen verschiedenen Instanzen. Diese Art der Interaktion wird Kommunikation genannt. Bei der Agentenfunktionalität werden erweiterte Kommunikationsformen benötigt. Dazu gehört, dass neben einzelnen Signalen auch komplette Nachrichten (Botschaften) sowie auch Wissen ausgetauscht werden können.


Damit sich die Kommunikationspartner verstehen können, müssen gewisse Vereinbarungen getroffen werden, die ihren Ausdruck in Protokollen finden. Der Inhalt der Kommunikation kann sich auf unterschiedliche informationelle Sachverhalte beziehen. Dazu zählen Daten, Steuersignale, Nachrichten (Botschaften) und sogar Programme.


Agenten sind zur Erfüllung ihrer Aufgaben auf die Existenz einer funktionsfähigen Kommunikationsinfrastruktur angewiesen. Darüber verschaffen sie sich den Zugriff auf fremde Informationsressourcen und damit auf Informationen, über die sie nicht selbst verfügen. Die Kommunikation zwischen den Instanzen erfolgt entweder durch den unmittelbaren Austausch von Nachrichten oder durch die Zwischenschaltung sog. Blackboards. Im letztgenannten Fall können die Kommunikanten unabhängig voneinander zugreifen und müssen nicht miteinander synchronisiert werden. Das möglichst leistungsfähige Kommunikationsnetzwerk wird nicht – wie in den klassischen Anwendungen – passiv genutzt. Vielmehr wird sein Zustand aktiv verfolgt, um auf Änderungen selbständig reagieren zu können. In diesem Zusammenhang wird von einem netzwerkbewussten Verhalten (network aware system) gesprochen.


Innerhalb solcher Netzwerke fungieren verschiedene Instanzen als Quelle und Senke von Informationen. Die Informationsübertragung zwischen den Instanzen erfolgt entweder bei Bedarf oder beständig.


Der Aufbau eines Kommunikationsnetzwerks erfordert die Verwendung eines Übertragungs-Mediums sowie das Vorhandensein medienspezifischer Sender und Empfänger auf Seiten der Kommunikationsteilnehmer. Das Kommunikationsmedium stellt ggf. mehrere Übertragungswege, sog. Kanäle, bereit. Für die Realisierung dieser Kommunikationskanäle kommen sowohl leitungsbehaftete (Draht-, Koaxial- Lichtwellenleiter) als auch leitungsfreie Medien (Infrarot-, Funk-, Richtfunk-, Laserstrecke) in Betracht. Leitungsfreie Übertragungsmedien werden vor allem für die Kommunikation mobiler Agenten benötigt.


Auch beim Transport von Waren sind die Beziehungen denen der Übertragung von Informationen dem Prinzip nach ähnlich, da diese den gleichen Anforderungen unterliegen. Jedoch ist in diesem Bereich die Verwendung des Kommunikationsbegriffs nicht üblich.


Einige Besonderheiten bietet der Informationsaustausch beim Gebrauch von Agenten in einer prozesstechnischen Umgebung. Hierbei handelt es sich um Interaktionen von Systemen aus unterschiedlichen Welten, nämlich einer technischen Anlage und einem Rechner. Dafür werden Zwischenglieder in Form von Sensoren und Aktuatoren benötigt, welche zur Erfassung des Prozesszustandes dienen bzw. welche zur zielgerichteten Beeinflussung des Prozessverlaufs benötigt werden. Die Kompatibilität der Sensoren und Aktoren mit dem Steuerungscomputer verlangt die Verwendung von Prozessschnittstellen (Interface-Karten), welche physisch in den Rechner integriert sind. Die darüber geführte Kommunikation erfolgt i. a. leitungsgebunden in Form von Zweidrahtleitungen. Komplexere Systeme können auch über elektronische Netzwerke kommunizieren, die zumeist den Charakter von Bussystemen haben.


 Intelligenz

Intelligenz bezeichnet eine spezielle Art und Weise, wie künstliche Agenten ihre Aufgaben selbständig und zielgerichtet lösen. Dieser Begriff umfasst Fähigkeiten kognitiver Art, wie Beobachten, Erkennen, Entscheiden, Planen, Problemlösen und ggfs. auch Lernen 6. Leistungen dieses Typs sind erforderlich, die jeweilige Situation aufzunehmen, richtig einzuschätzen und daraus die richtigen Schlussfolgerungen für das eigene Handeln zu ziehen. Hierbei handelt es sich im Grunde um den Erwerb, die Verarbeitung und Nutzung von Wissen.

Intelligentes Verhalten gründet sich auf das Vorhandensein aufgabenbezogenen Wissens, welches eine höhere Form von Information darstellt. Wissensbasierte Systeme im Sinne der Künstlichen Intelligenz (KI) bzw. Artifical Intelligence (AI) benutzen dafür eine Metapher, die durch das Vorhandensein einer Wissensbasis und einer Schlussfolgerungskomponente (inference mechanism) gekennzeichnet ist. Das vorhandene Systemwissen kann in der Wissensbasis in verschiedener Form (bspw. Produktionsregeln, Frames, Constraints) hinterlegt sein.


Im Falle der regelbasierten Systeme wird Wissen in Form von Fakten und (Produktions-) Regeln repräsentiert, die in einer Wissensbasis niedergelegt sind. Dieses Wissen kann dem intelligenten System von außen (bspw. durch Befragen von Experten) über eine Wissenserwerbskomponente eingegeben werden oder wird durch Lernen erworben, verändert oder erweitert. Die Schlussfolgerungskomponente bearbeitet Anfragen an die Wissensbasis und erzeugt durch logische Deduktion angemessene Antworten, welche wiederum von der Wissens-verarbeitenden Komponente ermittelt werden. Diese Ausgaben beziehen sich im vorliegenden Fall auf die vorzunehmenden Handlungen.

 

Die Intelligenz von Agenten kann je nach Aufgabenstellung und funktionellem Vermögen in weiten Grenzen variieren. Dementsprechend besteht eine große Spannbreite bezüglich des Leistungsvermögens von Agenten [4], [7].