Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Agentenbasierte Softwareentwicklung 1 Referent: Theodor Foerster.

Ähnliche Präsentationen


Präsentation zum Thema: "Agentenbasierte Softwareentwicklung 1 Referent: Theodor Foerster."—  Präsentation transkript:

1 Agentenbasierte Softwareentwicklung 1 Referent: Theodor Foerster

2 Agentenbasierte Softwareentwicklung 2 Gliederung Einführung Motivation Beispiel Konzepte Methodik Ausblick & Fazit

3 Agentenbasierte Softwareentwicklung 3 Einführung Bestimmte Anforderungen –Inhärente Verteilung –Eingeschränkte Umgebungssicht => System von Agenten

4 Agentenbasierte Softwareentwicklung 4 Motivation Einheitliche Entwicklungsmethodik Synergien nutzen => Vorteile von Frameworks

5 Agentenbasierte Softwareentwicklung 5 Gliederung Einführung Motivation Beispiel Konzepte Methodik Ausblick & Fazit

6 Agentenbasierte Softwareentwicklung 6 Virtueller Fußball Server als Simulator Agenten als Spieler Simulator kümmert sich um reale Spielverhältnisse Agenten können sich absprechen Vizeweltmeister RoboCup 98 (Simulation)

7 Agentenbasierte Softwareentwicklung 7 Weitere Beispiele Assistent zur Nutzung verteilten Know-hows Schwindelmex Dezentralisiertes, flexibles Job-Shop- Scheduling

8 Agentenbasierte Softwareentwicklung 8 Gliederung Einführung Motivation Beispiel Konzepte Methodik Ausblick & Fazit

9 Agentenbasierte Softwareentwicklung 9 Gemeinsamkeiten Nachrichtenaustausch Ähnliche Gliederung der Komponenten Konzepte für –Analyse –Entwurf –Implementierung

10 Agentenbasierte Softwareentwicklung 10 Analyse - Bestandteile Steuerungsmodul Wissensbasis Interaktionmodul Ausführungsmodul Managementschnittstelle

11 Agentenbasierte Softwareentwicklung 11 Bestandteile - Steuerungsmodul Regelt Kommunikation Konfiguriert den Agenten Enthält Entscheidungsalgorithmus Vorteil: Komponenten müssen nicht alle anderen kennen Nachteil: Eingeschränkter Informations- und Steuerungsfluss

12 Agentenbasierte Softwareentwicklung 12 Bestandteile - Wissensbasis Dreigeteilt in –Fähigkeiten und Handlungsvarianten –Aktuelle Umgebungsinformationen –Ziele Spezialinformationen Wissensbasis beeinflusst Entscheidungen

13 Agentenbasierte Softwareentwicklung 13 Bestandteile - Interaktionsmodul Sendet/empfängt Umgebungsinformationen anwendungsspezifische Aufgaben

14 Agentenbasierte Softwareentwicklung 14 Bestandteile - Ausführungsmodul Führt verpflichtende Aktionen aus Kapselt Aktionsausführung von Aktionsauswahl Enthält Parallelisierungstrategie

15 Agentenbasierte Softwareentwicklung 15 Bestandteile - Managementmodul Enthalten wenn kein klarer Ablauf erkennbar Für geordneten Ablauf zuständig Einstellungen

16 Agentenbasierte Softwareentwicklung 16 Analyse - Datenstrukturen Umgebungsinformation Handlungsaufforderung Situation Aktion Plan Fähigkeit Handlungsvariante Ziel Verpflichtung Aktivität

17 Agentenbasierte Softwareentwicklung 17 Übersicht Datenstrukturen

18 Agentenbasierte Softwareentwicklung 18 Analyse - Algorithmen Aktualisierung der Umgebungsinformation Auswahl der nächsten Aktion Ablaufsteuerung

19 Agentenbasierte Softwareentwicklung 19 Übersicht Algorithmen

20 Agentenbasierte Softwareentwicklung 20 Analyse - Systemsicht Adresse –Identifikation Nachricht –Umgebungsinformation & Handlungsaufforderung Protokoll –Kommunikationsregeln

21 Agentenbasierte Softwareentwicklung 21 Entwurf - Bestandteile Steuerungsmodul Wissensbasis Interaktionsmodul Ausführungsmodul Managementschnittstelle

22 Agentenbasierte Softwareentwicklung 22 Beispiel - Wissensbasis

23 Agentenbasierte Softwareentwicklung 23 Entwurf - Datenstrukturen Umgebungsinformation –Liste aus Attribut-Werte-Paaren Request –Parameter, Priorität, Endtermin Capabilities –Namen, Parametername, Wertebereich, Bearbeitungsdauer, uvm....

24 Agentenbasierte Softwareentwicklung 24 Entwurf - Algorithmen Aktualisierung der Umgebungsinformation –Entsprechender Parameter in die Wissensbasis Auswahl der nächsten Aktion Ablaufsteuerung –Managt einzelne Tasks (stop, run,...)

25 Agentenbasierte Softwareentwicklung 25 Entwurf - Systemsicht Adresse –Host, port, ID Nachricht –Sender, Empfänger, Typ, Inhalt Protokoll –z.B. Beziehung von Nachrichtentyp und Rolle

26 Agentenbasierte Softwareentwicklung 26 Implementierung Verschiedene Kommunikationstechniken Datenschutz und –sicherheit Parallelität Frage der Programmiersprache –Java (OOP) vs. Prolog (logisch)

27 Agentenbasierte Softwareentwicklung 27 Aspekte Konzepte variieren nach Fragestellung Speziell zu beachtende Gebiete –Wissensrepräsentation –OOP –Agententechnik generell

28 Agentenbasierte Softwareentwicklung 28 Gliederung Einführung Motivation Beispiel Konzepte Methodik Ausblick & Fazit

29 Agentenbasierte Softwareentwicklung 29 Methodik - Begriffe Agent Verteilte Softwaresysteme Software-Entwicklung Analyse und Entwurfsmuster Frameworks

30 Agentenbasierte Softwareentwicklung 30 Begriffe - Framework Anpassbare Menge an abhängigen Klassen Wiederverwendbare Abstraktion Framework enthält –Konzepte –Schnittstellen –Invarianten der Interaktion –Ablaufsteuerung –Basis-Implementierung

31 Agentenbasierte Softwareentwicklung 31 Begriffe - Framework Makro Architektur Erst lose, dann starr

32 Agentenbasierte Softwareentwicklung 32 Strukturierung des Framework Abhängig von der Programmiersprache In Schichten gegliedert –Konzeptschicht –Standardschicht –Variantenschicht Implementierung kann in jeder Schicht ansetzen

33 Agentenbasierte Softwareentwicklung 33 Framework - Bestandteile Standardschicht: abstrakte Klassen der Komponenten Variantenschicht: Kommunikation & Wissensmanagement

34 Agentenbasierte Softwareentwicklung 34 Framework - Datenstrukturen Standardschicht: z.B. Aktionsauswahl & Speicherung der Umgebung Variantenschicht: Aktion & Handlungsvarianten

35 Agentenbasierte Softwareentwicklung 35 Framework - Algorithmen Standardschicht: abstrakte Ablaufsteuerung Variantenschicht: z.B. Planauswahl

36 Agentenbasierte Softwareentwicklung 36 Framework - System Unterstützt Zusammenspiel mehrerer Agenten Enthält Analysefunktionen Kann Kooperationspläne abspeichern

37 Agentenbasierte Softwareentwicklung 37 Entwicklungsmethoden Agentenorientierte Analyse Theoriebasierte Konstruktion Entwickeln mit Mitteln der Logik BDI-Agenten Modellierung durch Skripts uvm.

38 Agentenbasierte Softwareentwicklung 38 Entwicklungsmethoden Unterscheidung: –Herangehensweise –Ausgangspunkt –Eingesetzte Mittel –Phasen (Analyse, Entwurf,…) –Sichtweise

39 Agentenbasierte Softwareentwicklung 39 Agenten & Java Agenten benötigen keine Vererbung Als Implementierungssprache geeignet Es existiert noch kein auf Java abgestimmtes Framework

40 Agentenbasierte Softwareentwicklung 40 Bestehende Frameworks in Java AgentBuilder (www.agentbuilder.com) ABE Intelligent Agent Factory JACK

41 Agentenbasierte Softwareentwicklung 41 Gliederung Einführung Motivation Beispiel Konzepte Methodik Ausblick & Fazit

42 Agentenbasierte Softwareentwicklung 42 Ausblick Framework muss in konkreten Projekten bestehen Zusammenspiel von Agenten & Java ausführlicher evaluieren => Praktikum: Verteiltes Programmieren von Agentensystemen

43 Agentenbasierte Softwareentwicklung 43 Fazit Entwicklungsmethode für Agentensysteme Eignung in Projekten?

44 Agentenbasierte Softwareentwicklung 44 Ende Fragen?!? Literatur: Kühnel, Ralf; Agentenbasierte Softwareentwicklung, Addison Wesley


Herunterladen ppt "Agentenbasierte Softwareentwicklung 1 Referent: Theodor Foerster."

Ähnliche Präsentationen


Google-Anzeigen