mobile agents
TRANSCRIPT
www.fhsg.ch/praxisprojekte
Mobile AgentsSWAT - Gruppe 1
Pascal Eigenmann
Gabriela Caduff
Surasak Liewvanich
Christian Näf
2013
1
Inhalt
• Modelle der elektronischen Datenverarbeitung• Software-Agent Definition• Eigenschaften von Software-Agenten• Unterschied Mobile Agents zu Software Agents• Abgrenzung• Aufbau von Agentensystemen• Standards• Sicherheitsrelevante Aspekte• Potenzial, Machbarkeit, Grenzen
2
Mainframe - Terminals
3
Client - Server
4
Distributed Computing
5
Mobile Agents
6
Software-Agent Definition
Als Software-Agent bezeichnet man ein Computerprogramm, das zu gewissem eigenständigem und eigendynamischem Verhalten fähig ist. Das bedeutet, dass abhängig von verschiedenen Zuständen (Status) ein bestimmter Verarbeitungsvorgang abläuft, ohne dass von außen ein weiteres Startsignal gegeben wird oder während des Vorgangs ein äußerer Steuerungseingriff erfolgt.
7
Eigenschaften von Software-Agenten
• autonom: unabhängig von Benutzereingriffen• kognitiv: lernfähig aufgrund vergangener Entscheidungen• kommunikativ: Ist fähig seine Zustände seiner Umgebung
mitzuteilen• modal adaptiv: Ändert die eigenen Einstellungen
(Parameter/Struktur) aufgrund eigener veränderter Zustände oder veränderter Zustände der Umgebung
• proaktiv: kann Aktionen selber ausführen• reaktiv: reagiert auf Änderungen• robust: kann innere und/oder äussere Störungen kompensieren• sozial: kommuniziert mit anderen Agenten
8
Unterschied Mobile Agents zu Software Agents
• Mobile Agent hat die Fähigkeit, den Ausführungsort selbsttätig zu wechseln/ändern
9
Abgrenzung
• Entspricht nicht dem klassischen Client-Server-Modell• Verbindung muss nur bei Übertragungsphase stehen• Rohdaten werden lokal auf dem Server zwischen
Agenten und Diensten verarbeitet
Netzbelastung wird reduziert, Reaktionszeiten verkürzt, Kosten werden gespart
10
Aufbau von Agentensystemen
• Agentensystem besteht aus mehreren in einem heterogenen Netzwerk verteilten Agentenplattformen/Agentenorte
• Agentenorte sind Ausführungsumgebungen für mobile und stationäre Agenten
• Ein Hostcomputer kann mehrere Agentenorte ausführen
11
Aufbau von Agentensystemen
• Agenten interagieren flexibel miteinander, sind autonom, handeln reaktiv und verfolgen dabei ihre Ziele proaktiv
• Ausführungsumgebung gewährleistet folgende Punkte den einzelnen Agenten: • Ausführungszeit• Speicher• Kommunikation
• Agent-Agentenplattform• Agent-Agent• Agentenplattform-Agentenplattform
• Unversehrtheit• Fehlertoleranz
12
Standards – Architektur für Systeme
• Foundation for Intelligent Physical Agents (FIPA)• http://www.fipa.org/
• Object Management Group - Mobile Agent System Interoperability Facilities (OMG – MASIF)• http://www.omg.org/
13
Standard FIPA
14
Standard OMG-MASIF
15
Standards - Sprache
• Tool Command Language (TCL)• 1988 an der Universität of California• Version 8.6.0• Unix, Windows, Mac OS, Solaris
• Java• 1995 Sun Microsystems (seit 2012 Oracle)• Version 7.0• Plattformunabhängig• Java Agent Development Framework (JADE)
16
Standards - Kommunikation
• Knowledge Query and Manipulation Language (KQML)• 1990 als Teil von DARPA knowledge Sharing Effort• Programmiersprache und Protokoll• Wissensaustausch• Anwendung in wissenbasierte Systeme und intelligente Agenten
• Agent Communication Language (ACL)• FIPA – ACL• Ähnlich KQML
17
Sicherheitsrelevante Aspekte
18
• Agent Execution• Host schützen (Autorisierung, DDoS)
• Situiertheit• Umgebung des Agenten (Host, Internet)
• Autonomie• Bsp.: Kauf/Verkauf
• Kommunikation• Einsicht/Manipulation• Absender• Rechtzeitig
Sicherheitsrelevante Aspekte
19
• Mobilität• Schutz vor Agenten/Hosts
• Rationalität, Wahrhaftigkeit, Güte• Quellen, Verantwortlichkeit, Logs
• Identifikation & Delegation• Autorisierung & Delegation
• Rechte
• Rechtliches• Vertragsabschluss
Potenzial
Potenzial von mobilen Agenten lässt sich am einfachsten mit möglichen Anwendungs-Szenarien darstellen:
1. Electronic Commerce: Agenten treten als Käufer, Anbieter, Verkäufer und Vermittler auf. So durchsucht zum Beispiel ein mobiler Agent im Auftrag des Users das Netz nach Angeboten und ermittelt das billigste. Idealerweise erfolgt sogleich der Kauf des Produkts zwischen den zwei Agenten. (Friedmann, ohne Datum)
2. Informationsbeschaffung: Mobile Agenten suchen in im Internet verteilten Datenquellen (DB-Server, Webpages, …) nach Informationen. Sie kommunizieren dabei mit Informationsvermittlern und Meta-Indizes und tauschen nach Bedarf Informationen mit anderen Suchagenten welche einen ähnlichen Auftrag haben. (Friedmann, ohne Datum)
20
Potenzial
3. Unterstützung von Gruppenarbeit: Neben Aspekten wie Terminvereinbarung und Projektplanung, in denen mobile Agenten unterstützten können, stellen mobile Agenten zur Bearbeitung notwendige Funktionalitäten und Kontextwissen zur Verfügung. (Friedmann, ohne Datum)
4. Personalisierte Dienste: Mobile Agenten können von Serviceanbieter zu Kunden gesendet werden, um vor Ort einen Dienst zu erweitern. Beispielsweise könnte ein Agent Softwarekomponenten ergänzen oder Plug-ins für Browser installieren. (Friedmann, ohne Datum)
5. Fernwartung: Mobile Agenten können Systemkomponenten wie Vermittlungsinstanzen in Kommunikationsnetzen überwachen und bei Bedarf Reparaturmassnahmen und Diagnosen durchführen. (Friedmann, ohne Datum)
21
Machbarkeit
Es werden technische und rechtliche Anforderungen an mobile Agenten gestellt:
- Agenten und User müssen lokal identifizierbar sein- Agenten und User Identitätsinformationen müssen verwaltet werden- Schutz und Aufspürungsmassnahmen werden benötigt um die Integrität des
Agenten und seiner Plattform zu sichern- Schutz und Aufspürungsmassnahmen werden benötigt um die Agentendaten
zu sichern- Schutz und Aufspürungsmassnahmen werden benötigt um die Daten der
Agentenplattform zu sichern- Schutz und Aufspürungsmassnahmen werden benötigt um die Integrität der
Übertragungen zu sichern
22
Machbarkeit
- Kommunikation und Handlungen von Entities müssen geloggt werden- Agenten müssen einzigartig identifizierbar sein- Logs müssen robust sein und dürfen aufgrund von versagenden Nodes nicht
verschwinden- User Privatsphäre muss respektiert werden- Nicht autorisierter Zugriff zu Logs und administrativen Daten muss verhindert
werden.- Klare und rechtlich zulässige Abkommen werden benötigt
23
Grenzen
Software Agenten stossen vor allem im Zusammenhang mit der Konzeptionierung und Entwicklung als auch bei der Nutzung und Anwendung an Grenzen.
- technische Machbarkeitsprobleme
- Probleme aufgrund mangelnder Akzeptanz
24
Grenzen
Technische Machbarkeitsprobleme
Besonders relevant ist der Rahmen des Aufwandes. Selbst wenn etwas realisierbar wäre, kann das Kosten-Nutzen-Verhältnis dieses verunmöglichen. (Wendt, 2007)
Gewünscht wird oft ein möglichst intelligenter Agent. Dieser soll nicht nur Wissen haben und anwenden sondern auch Neues lernen können. Lernen ist jedoch ein komplizierter Prozess und lässt sich ab einem gewissen Rahmen nur schwer in Software umsetzen. Deshalb wird in der Forschung aktuell weiter in Richtung Künstliche Intelligenz geforscht. (Wendt, 2007)
Ein simpleres Problem kann in der Mobilität selbst liegen. So sollen Agenten sich über diverse Systeme bewegen können und Ihre Aufträge ausführen. Unterschiedliche Plattformstrukturen können die Kompatibilität der Agenten hierbei äusserst erschweren. (Wendt, 2007)
25
Grenzen
Probleme aufgrund mangelnder Akzeptanz
Bekannte Probleme sind übertriebene Erwartungshaltungen und schlechte Erfahrungen von Usern. Speziell in der Erwartungshaltung können Machbarkeitsprobleme schnell zur einer allgemeinen Ablehnungshaltung gegen die Technologie führen. Ein zusätzliches Hindernis in Sachen Akzeptanz ist die neue Interaktionsform zwischen Mensch und Maschine, die für etwaige User einer Umgewöhnung bedarf. (Wendt, 2007)
26