Softwareagenten in der Produktion


Projektarbeit, 2007

21 Seiten


Leseprobe


Inhaltsverzeichnis

1 Einführung

2 Softwareagenten allgemein
2.1 Grundkonzepte der Agentenorientierung
2.2 Architektur von Agentensystemen

3 Anwendungsbeispiel
3.1 Fachliche Beschreibung
3.2 Technische Beschreibung
3.3 Szenarios
3.4 Umsetzung der Konzepte im Anwendungsbeispiel

4 Einsatzmöglichkeiten von Softwareagenten in der Produktion

Literaturverzeichnis

Abbildungsverzeichnis

Tabellenverzeichnis

1 Einführung

Moderne Softwaresysteme zeichnen sich durch eine zunehmende Vernetzung heterogener Anwendungen aus, die miteinander kommunizieren, um ein gemeinsames Ziel zu erreichen. Die durch diese Verteilung und Interaktivität hervorgerufene hohe Komplexität von Programmen stellt die Softwareentwicklung vor neue Herausforderungen. Das gilt für Internetund Office- Anwendungen gleichermaßen wie für Softwaresysteme im Produktionsumfeld. Bei Letzteren ist im Besonderen hervorzuheben, dass die bereits bestehenden Altsysteme nicht nur ständigen Veränderungen und Anpassungen unterworfen sind, sondern darüber hinaus immer wieder um neue Systeme und Komponenten erweitert werden. Eine flexible Integration einer solchen Vielzahl von Systemen ist mit den im Betrieb eingesetzten, herkömmlichen Methoden über große Datenbanken und ein gemeinsames Datenmodell kaum noch machbar. Spätestens wenn eine neue Anwendung eingesetzt werden soll, stößt eine solche Lösung an ihre Grenzen. Derzeit existiert auch kein Systemhaus, welches eine integrierte Lösung zur durchgängigen Datenverarbeitung aller Komponenten einer Produktion anbietet. Es müssen also neue technische Lösungen gefunden werden (vgl. [Saue05]). Eine zukunftsweisende Form der Integration verteilter Softwareanwendungen mit komplexen Gesamtverhalten ist die agentenorientierte Softwareentwicklung. „Auf Basis eines agentenorientierten Lösungsansatzes können flexible, anpassungsfähige Softwaresysteme entwickelt werden, welche die Verteilung von Aufgaben, Ressourcen oder Leistungen sowie verschiedene Sichtweisen oder gegensätzliche Interessen der realen Problemstellung im Softwaresystem widerspiegeln“ [UrWG03]. Die Agentenorientierung ermöglicht also nicht nur die Integration einer umfangreichen heterogenen Systemwelt, sondern zielt auch darauf ab, sich innerhalb dieser Systemwelt selbst zu organisieren. Im weiteren Verlauf der vorliegenden Ausarbeitung wird genauer auf das Thema Agentenorientierung eingegangen. Zunächst werden die Grundkonzepte der Agentenorientierung erläutert, anschließend wird die Struktur von Softwareagenten vorgestellt und schließlich werden die dargestellten Konzepte anhand eines einfachen Anwendungsbeispiels in der Fertigungssteuerung beschrieben.

2 Softwareagenten allgemein

Softwareagenten sind komplex interagierende, autonome Softwareeinheiten:

„Im Kontext der agentenorientierten Softwareentwicklung versteht man unter einem Agenten eine abgrenzbare Softwareeinheit mit einem definierten Ziel. Ein Agent versucht, dieses Ziel durch autonomes Verhalten zu erreichen und interagiert dabei kontinuierlich mit seiner Umgebung und anderen Agenten.“ [WaGU03]

Ein agentenorientiertes Softwaresystem wird als eine Menge von autonomen Agenten betrachtet. Diese Agenten versuchen durch Kommunikation und Verhandlung innerhalb ihres Entscheidungsrahmens ihre individuell vorgegebenen Ziele zu erreichen. Diese Modularisierung ermöglicht eine dynamische Bildung von Strukturen zur Laufzeit, wodurch auf unvorhergesehene Ereignisse im Ablauf reagiert werden kann.

Agentenorientierte Softwareentwicklung ist insbesondere für Systeme geeignet, die von Natur aus eine logische Verteilung aufweisen, strukturellen Änderungen zur Laufzeit unterworfen sind, komplexe Abläufe bzw. Verhalten aufweisen, eine flexible Struktur benötigen oder umfangreiche Kommunikationsund Koordinationsprozesse erfordern. (vgl. [WaGU03])

2.1 Grundkonzepte der Agentenorientierung

Für die Entwicklung von Softwareagenten ist das Paradigma der Agentenorientierung zu betrachten. Man unterscheidet hauptsächlich sechs Konzepte, welche im Folgenden vorgestellt werden.

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 1: Grundkonzepte der Agentenorientierung

Es handelt sich hierbei um Kapselung, Zielorientierung, Reaktivität und Proaktivität sowie Autonomie, Interaktion und Persistenz.

Kapselung

Durch das Prinzip der Kapselung wird im Wesentlichen der Zustand des Agenten durch seine Funktionen bzw. Methoden geschützt. Der Agent kontrolliert somit selbst, dass er sich stets in einem konsistenten Zustand befindet, indem er eine direkte Manipulation seines Zustands von außerhalb nicht zulässt. Dieses Konzept ist bereits aus der Objektorientierten Programmierung bekannt. In diesem Zusammenhang kontrollieren die Methoden einer Klasse den Zugriff auf ihre Attribute.

Zielorientierung

Agenten versuchen ein Ziel zu erreichen. Dieses Ziel wird entweder schon bei der Implementierung fixiert oder kann zur Laufzeit sich ändern. Der Agent orientiert sein Verhalten an der Erreichung des Ziels. Somit bilden die Ziele die Vorgaben für Handlungen des Agenten. Beispielsweise könnte ein Ziel eines Agenten die Sicherstellung der Produktion durch eine Menge gleichartiger Produktionslinien sein (siehe Beispiel in Kapitel 3).

Reaktivität / Proaktivität

Reaktivität (Reaktionsfähigkeit) ist die Fähigkeit, die Umgebung wahrzunehmen und darauf angemessen zu reagieren. Aktiviert wird der Agent dabei durch Nachrichten anderer Agenten oder sonstiger Informationsquellen (z.B. Sensoren). Ein Agent ist zudem proaktiv. Er agiert eigenständig, um seine Ziele (siehe Zielorientierung) zu erreichen. Diese Eigenschaft grenzt Agenten deutlich von Services ab.

Autonomie

Autonomie bedeutet bei Softwareagenten, dass das Verhalten mit dem der Agent auf externe Stimuli reagiert, im Wesentlichen durch den Agenten selbst bestimmt ist und nicht unmittelbar durch äußere Einflüsse (vgl. [WaGU03]). Um dies zu erreichen ist eine Trennung des Nachrichtenaustausches zwischen Agenten und der Nachrichtenbearbeitung in den Agenten erforderlich. Agenten müssen asynchron kommunizieren, um eine Blockade durch das Warten auf die Abarbeitung einer Nachricht zu verhindern (vgl. [GöWU04]). Eingehende Nachrichten sind demnach in einer Eingangswarteschlange zu puffern.

Interaktion

Agenten interagieren miteinander um Informationen auszutauschen, Ressourcen und Aufgaben zu verteilen und um zu verhandeln (vgl. [GöWU04]). Dabei steht wieder das Erreichen ihrer Ziele im Vordergrund. Die Basis für die Interaktion zwischen Agenten ist ein zugrunde liegender Kontext (vgl. [Jenn01]). Dies bedeutet, dass ein Agent Kenntnis von Agenten in seiner Umgebung haben muss, um mit ihnen in Interaktion zu treten und Nachrichten bzw. Protokolle für das Verständnis der Nachrichten definiert werden müssen.

Persistenz

Die Persistenz wird in Zusammenhang mit Agenten als Fähigkeit verstanden, den inneren Zustand während des Lebenszyklus konstant zu halten (vgl. [WaGU03]). Dies bedeutet konkret: Zur Sicherstellung eines fortlaufenden Kontrollflusses muss ein Agent seinen inneren Zustand speichern können. Mechanismen, die hierfür notwendig sind, müssen von einer Infrastruktur bereitgestellt werden.

2.2 Architektur von Agentensystemen

Einzelne Agenten weisen nachfolgende Struktur auf (vgl. [GöWU04]):

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 2: Grundlegende Struktur eines Agenten

Agenten verfügen über ein Kommunikationsmedium, um ihre Umgebung wahrzunehmen und um sie beeinflussen zu können. In der Regel bestehen agentenorientierte Systeme aus mehreren Agenten, die miteinander kooperieren.

Die Sicht eines Agenten auf seine Umgebung spiegelt sein Umgebungsmodell wider. Üblicherweise unterscheiden sich Umgebungsmodell und Umgebung. Gründe dafür sind, dass bestimmte Aspekte der Umgebung für den Agenten nicht von Interesse sind und/oder dass der relevante Teil der Umgebung bislang (noch) nicht vollständig wahrgenommen wurde. Das Umgebungsmodell kann statische Komponenten beinhalten, wird aber oft hauptsächlich dynamisch durch äußere Einflüsse, insbesondere bei Änderungen in der Umgebung gebildet.

Das Verhalten eines Agenten ist definiert durch Dreierlei: Durch das Umgebungsmodell, durch die Ziele, die der Agent verfolgt, und durch seine eigenen Fähigkeiten, also den Diensten die er zur Verfügung stellt. Agenten agieren sowohl aufgrund von Wahrnehmungen aus der Umgebung (reaktiv), als auch aus Eigeninitiative heraus (proaktiv). Durch die Aktivitäten eines Agenten beeinflusst er wiederum seine Umgebung.

Für Interaktionen zwischen Agenten müssen ihre Fähigkeiten gegenseitig bekannt sein. Sie benötigen also eine explizite Schnittstelle und sind in dieser Hinsicht mit Services vergleichbar.

3 Anwendungsbeispiel

Zur Veranschaulichung der Konzepte der Agentenorientierung wird nun deren Realisierung an einem einfachen Anwendungsbeispiel veranschaulicht. Das Beispiel zeigt ein Produktionssystem bei dem Agenten dezentral für die Zuteilung von Aufträgen auf gleichartige Produktionslinien sorgen, mit dem Ziel, die Produktion stets sicherzustellen und dies zudem in einer möglichst Ressourcensparenden Art und Weise zu tun.

3.1 Fachliche Beschreibung

Die Hauptkomponenten des Systems sind die Agenten, welche unterschiedliche Rollen übernehmen können und mit Hilfe von Nachrichten miteinander kommunizieren. In unserem Beispiel gibt es zwei verschiedene Arten von Agenten, das Produktionssystem und die Produktionslinie. Die Produktionslinie besitzt eine konstante Produktionskapazität und ist einem Produktionssystem zugeordnet. Dadurch kennt sie die benachbarten Produktionslinien und kann mit diesen kommunizieren. Das Produktionssystem überwacht die bei ihm angemeldeten Produktionslinien und macht diese miteinander bekannt. Die Produktionslinien teilen sich ein – der Einfachheit halber – statisches Auftragsvolumen pro Periode eigenständig zu.

Die Agenten können verschiedene Rollen übernehmen, welche ihren aktuellen Zustand reprä- sentieren. Die möglichen Rollen einer Produktionslinie sind:

Abbildung in dieser Leseprobe nicht enthalten

[...]

Ende der Leseprobe aus 21 Seiten

Details

Titel
Softwareagenten in der Produktion
Hochschule
Fachhochschule Regensburg  (Fakultät Informatik/Mathematik)
Veranstaltung
Standardsoftware
Autoren
Jahr
2007
Seiten
21
Katalognummer
V118736
ISBN (eBook)
9783640219575
Dateigröße
606 KB
Sprache
Deutsch
Schlagworte
Softwareagenten, Produktion, Standardsoftware
Arbeit zitieren
Dipl. Wirt.-Inf. (FH) Christian Silberbauer (Autor:in)Christian Deyerl (Autor:in)Martin Gallus (Autor:in)Kai Hammelrath (Autor:in)Christof Heinbach (Autor:in)Florian Rother (Autor:in), 2007, Softwareagenten in der Produktion, München, GRIN Verlag, https://www.grin.com/document/118736

Kommentare

  • Noch keine Kommentare.
Blick ins Buch
Titel: Softwareagenten in der Produktion



Ihre Arbeit hochladen

Ihre Hausarbeit / Abschlussarbeit:

- Publikation als eBook und Buch
- Hohes Honorar auf die Verkäufe
- Für Sie komplett kostenlos – mit ISBN
- Es dauert nur 5 Minuten
- Jede Arbeit findet Leser

Kostenlos Autor werden