Goethe-Universität Frankfurt am Main
Fachbereich Informatik und Mathematik
Institut für Informatik
Information Systems and Simulation
Robert-Mayer-Str. 10
60325 Frankfurt am Main
E-Mail: reschu[AT]informatik.uni-frankfurt.de

Engineering coordination : eine Methodologie für die Koordination von Planungssystemen

Reale Planungsprobleme, wie etwa die Produktionsplanung in einer Supply Chain, sind komplex Planungsprobleme. Eine übliche Strategie derart komplexen Problemen zu lösen, ist es diese Probleme in einfachere Teilprobleme zu zerlegen und diese dann separat, meist sequentiell, zu lösen (divide-and-conquer Strategie). Dieser Ansatz erlaubt die Erstellung von (suboptimalen) Plänen für eine Reihe von realen Anwendungen, und ist heute in den Organisationsstrukturen von größeren Unternehmen institutionalisiert worden. Allerdings werden Abhängigkeiten zwischen den Teilproblemen nicht ausreichend berücksichtigt, da die Partialprobleme sequentiell ohne Feedback gelöst werden. Die erstellten Teillösungen müssen deswegen oft nachträglich koordiniert werden. Das Gebiet der Koordination wird in verschiedenen Forschungsgebieten, wie etwa der verteilten Künstlichen Intelligenz, den Wirtschaftswissenschaften oder der Spieltheorie untersucht. Ein zentrales Ergebnis dieser Forschung ist, dass es keinen für alle Situationen geeigneten Koordinationsmechanismus gibt. Es stellt sich also die Aufgabe aus den zahlreichen vorgeschlagenen Koordinationsmechanismen eine Auswahl zu treffen, die für die aktuelle Situation den geeigneten Mechanismus identifiziert. Für die Auswahl eines solchen Mechanismus existiert bisher jedoch kein strukturiertes Verfahren für die Entwicklung von verteilten Systems und insbesondere im Bereich der Agenten orientierter Softwareentwicklung. Im Rahmen dieser Arbeit wird genau hierfür ein Verfahren vorgestellt, der ECo-Prozess. Mit Hilfe dieses Prozesses wird der Auswahlprozess in die folgenden Schritte eingeteilt: • Modellierung der Problemstellung und des relevante Kontextes • Formulierung von Anforderungen an einen Koordinationsmechanismus (coordination requirements) • Auswahl/Entwurf eines Koordinationsmechanismuses • Implementierung des Koordinationsverfahrens • Evaluation des Koordinationsverfahrens Diese Schritte werden im Rahmen der vorliegenden Arbeit detailliert beschrieben. Die Modellierung der Problemstellung stellt dabei den ersten Schritt dar, um die Problemstellung analytisch zugänglich zu machen. Koordinationsverfahren müssen die Gegebenheiten, den Kontext und die Domäne, in der sie angewendet werden sollen hinreichend berücksichtigen um anwendbar zu sein. Dieses kann über Anforderungen an den Koordinationsprozess formalisiert werden. Der von den Anforderungen getrieben Auswahlprozess ist ein Kernstück der hier vorgestellten Arbeit. Durch die Formulierung der Anforderungen und der Annotation eines Koordinationsmechanismus bezüglich der erfüllten und nicht erfüllten Anforderungen werden die Motive für Designentscheidungen dieses Verfahren expliziert. Wenn Koordinationsverfahren anhand dieser Anforderungen klassifiziert werden können, ist es weiterhin möglich den Auswahlprozess (unabhängig vom ECo-Ansatz) zu vereinfachen und zu beschleunigen. Im Rahmen dieser Arbeit wird eine Klassifikation von Koordinationsansätzen anhand von allgemeinen Kriterien vorgestellt, die die Identifikation von geeigneten Kandidaten erleichtern. Diese Kandidaten können dann detaillierter untersucht werden. Dies wurde in den vorgestellten Fallstudien erfolgreich demonstriert. Für die Unterstützung der Implementierung eines Koordinationsansatzes wird in dieser Arbeit zusätzlich der CoPS Prozess vorgeschlagen. Der CoPS Prozess erlaubt einen ganzheitlichen systematischen Ansatz für den Entwurf und die Implementierung eines Koordinationsverfahrens. Unterstürzt wird der CoPS Prozess durch das CoPS Framework, das die Implementierung erleichtert, indem es als eine Plattform mit Basisfunktionalität eines Agenten bereitstellt, der für die Koordination von Planungssystemen verantwortlich ist. Im Rahmen des CoPS Verfahrens werden Techniken für den Entwurf und die Implementierung von Konversation im Kontext des agenten-orientiertem Software Engineerings ausführlich behandelt. Der Entwurf von Konversationen geht dabei weit über Fragestellung der Formatierung von Nachrichten hinaus, wie dies etwa in den FIPA Standards geregelt ist, und ist für die Implementierung von agentenbasierten Systemen im Allgemeinen von Bedeutung. Die Funktionsweise des ECo-CoPS Ansatzes wird anhand von zweierfolgreich durchgeführten Fallstudien aus dem betriebswirtschaftlichen Kontext vorgestellt.

Tags

Multiagenten Systeme, Koordination, Agent-orientiertes Software Engineering