© matthias drobny 2006friedrich-schiller-universität jena aspekte und werkzeuge der...
Post on 06-Apr-2016
212 Views
Preview:
TRANSCRIPT
© Matthias Drobny 2006 Friedrich-Schiller-Universität Jena
Aspekte und Werkzeuge derAspekte und Werkzeuge derDatenbankadministration und Datenbankadministration und deren Automatisierungderen Automatisierung
Agent Building and Learning Environment (ABLE) & AutoTune agents
26.04.23 15:05 © Matthias Drobny 2006 2
Gliederung
1. ABLE Was bisher geschah... Warum Able? Was ist Able? Welche Struktur hat Able?
2. AutoTune Einleitung Arbeitsweise Probleme
26.04.23 15:05 © Matthias Drobny 2006 3
ABLEWas bisher geschah...
Entwicklungen bis hin zu ABLE roll-your-own-Ansätze bei nahezu jeder Umgebung
allgemeine Probleme Workloads, Heterogenität, Technik-Wandel
26.04.23 15:05 © Matthias Drobny 2006 4
ABLEWARUM überhaupt ABLE?
Probleme nicht durch "monolithische Software" zu lösen
inkrementelle Verbesserungen als Lösungsvorschlag schnell erlernbar, schnell erweiterbar gute
Wiederverwertbarkeit selbstüberwachend/selbstbewusst es ist von IBM, und daher potenziell ein Top-Produkt (zumindest laut der Autoren)
26.04.23 15:05 © Matthias Drobny 2006 5
ABLEWIE wurde ABLE umgesetzt?
Java/Java Beans leichte Portierbarkeit Objektorientierung Multithreading
Hard-/Software (Zielobjekt)
Sensoren Effektoren
ABLE Bean1
ABLE Bean2
ABLE Bean3
26.04.23 15:05 © Matthias Drobny 2006 6
ABLEWAS heißt ABLE?
A toolkit for building multiagent autonomic systems
A gent agentenbasiert, autonome Programme
B uilding and Entwicklungstools, Komponentenbibliothek
L earning selbstlernend, selbstbewusst
E nvironment Bereitstellung von fertigen Funktionen, einheitlicher Syntax,
Oberfläche
26.04.23 15:05 © Matthias Drobny 2006 7
ABLEArchitektur / Übersicht
ABLE agent framework AbleBeans sind JavaBeans
mit standardisierten Methoden • init(), reset(), ...
mit standardisierten Attributen• Name, Status, ...
AbleAgents sind AbleBeans, verbunden durch Datenflüsse (Data-flow connection)
Ereigniskopplungen (Event connection)
Eigenschaftskopplungen (Property connection)
Component Library vorgefertigte Algorithmen (natürlich als Beans)
GUI Erstellung und Konfiguration weiterer AbleBeans Erstellung und Test daraus erstellter AbleAgents
26.04.23 15:05 © Matthias Drobny 2006 8
ABLEABLE agent framework
AbleBean erledigen Kleinstaufgaben keine selbstständigen Agenten an die jeweilige Teilaufgabe angepasst
hoher Re-Use-Nutzen Beispiel: „Lies eine XML-Datei“
AbleAgent erfüllen „umfassende“ Aufgaben arbeiten selbstständig an die jeweilige Gesamtaufgabe
angepasst (durch Kombination angepasster Beans) sehr flexibles Modell
Beispiel: „erstelle ein Vorhersage-Modell für das Zielsystem“
AbleBean AbleAgent
AbleAgent
AbleAgents sind miteinander verbundene
AbleBeans/AbleAgents
26.04.23 15:05 © Matthias Drobny 2006 9
ABLEABLE agent framework
Eigenschaftskopplungen (Property connection)
Synchronisation zweier Beans Änderungen werden durchgereicht
Bean 1
Bean 2
Bean 3
Bean 1
Bean 2
gemeinsameEigenschaften
Bean 1[Ereignis]
Bean 2[Lauscher]
Ereigniskopplungen (Event connection)
großer Lauschangriff Beans werden von anderen überwacht, wenn ein Event
eintritt, reagiert der Lauscher (synchron oder asynchron)
3 Arten der Kommunikation der Beans untereinander Datenflüsse (Data-flow connection)
Output-Buffer1 = Input-Buffer2 Baumstruktur
26.04.23 15:05 © Matthias Drobny 2006 10
ABLEComponent Library: Data & Learning Beans
Data beans Datenimport/Datenexport Filterung
Learning beans Back propagation Self-Organizing Map Decision Tree Naïve Bayes
26.04.23 15:05 © Matthias Drobny 2006 11
ABLEComponent Library: Rule beans
eigene Sprache ABLE Rule Language (ARL) verschiedene Inferenzmaschinen problemlos
koppelbar, da alle die gleiche Sprache (und Regelbasis) verwenden
Boolean forward chaining Fuzzy forward chaining Pattern matching
26.04.23 15:05 © Matthias Drobny 2006 12
ABLEComponent Library: Funktionsspezifische AbleAgents
genetic search agent neural classifier agent neural clustering agent neural prediction agent
© Matthias Drobny 2006 Friedrich-Schiller-Universität Jena
AutoTuneAutoTuneA Generic Agent for Automated Performance Tuning
26.04.23 15:05 © Matthias Drobny 2006 14
AutoTuneGliederung
1. Einleitung2. Problemstellungen3. Arbeitsweise4. Beispiele
26.04.23 15:05 © Matthias Drobny 2006 15
AutoTuneDie Vorgeschichte
praktischer Einsatz des ABLE frameworks Erstellung einer Serverüberwachung Informationsproblem
Beschaffung woher kommen die Daten
Verwendbarkeit sinnvolle Größen problemabbildend
26.04.23 15:05 © Matthias Drobny 2006 16
AutoTuneProblemstellungen
„Was soll erreicht werden?“ 3 P‘s der Informatik (Performance, Performance, Performance)
Was ist messbar? Was ist beeinflussbar?“ Anzahl verbundener Nutzer (externe Größe) vs. Anzahl max.
Sessions (dynamisch änderbar) Session-Dauer vs. Max. Session-Dauer (Keep-alive)
„Wie lernt der AutoTune-Controller die optimalen Reaktionen“ Neuronales Netz mit „ausreichenden“ Inputdaten (ausreichende
Bandbreite, Variationen) oder Simulation der Inputs (Sinusschwankungen) und Tests
26.04.23 15:05 © Matthias Drobny 2006 17
AutoTuneArbeitsweise
AutoTune Agent
Controlled Target
Administrator
Workload metrics
Service level metrics
Tuning Control settings
Workload
Service objectives
End Users
ServiceIndicators of effectiveness of controller
Configuration metrics
26.04.23 15:05 © Matthias Drobny 2006 18
AutoTuneBeispiel-Architektur: Lotus Notes Server ®
AutoTune besteht aus 3 AbleAgents1. dem „Lauscher“
überwacht den Server liefert Performance-Daten setzt die neuen Konfigurationsparameter
2. dem „Lerner“ erlernt das Systemmodell (wird bei konstantem System nur einmal
genutzt) optimal: mathematisches Modell des Zielsystems... normal: grobe Annäherung, Fehlerverringerung, Schätzung
3. dem „Vorhersager“ verarbeitet die Inputdaten zu neuen Konfigurationsparametern
26.04.23 15:05 © Matthias Drobny 2006 19
AutoTuneBeispiel-Architektur: Lotus Notes Server ®
Administrator
get Notes perf data
set Notesparameters
workload/controls and actual perf
controls
Neural System Model
Neural Controller
controls workload
desired perf
controlsworkload
predicted perf
controls (for training)backprop
NotesAdaptorBean
NotesServer
26.04.23 15:05 © Matthias Drobny 2006 20
AutoTuneBeispiel-Architektur: Apache Web Server ®
erneut dreiteilig Controller Design Agent
berechnet die neuen Parameter
Modeling Agent math. Modell oder
Näherung durch Simulation Run-Time Control Agent
verarbeitet die Parameter und die Wunschvorstellung des Systemadministrators
26.04.23 15:05 © Matthias Drobny 2006 21
AutoTuneLaufzeitbeispiel/Diagramme mit Controller ohne Controller
26.04.23 15:05 © Matthias Drobny 2006 22
The End
Sach-, Geldspenden und Jobangebote bitte direkt bei mir einreichen
26.04.23 15:05 © Matthias Drobny 2006 23
Input-Schich
t
Output-Schicht
verdeckte Schicht
ABLE: (Zusatzfolien)Back propagation
Anlegen eines Eingabemusters Vorwärtspropagierung (normale
Berechnung) Vergleich von Zieloutput und
berechnetem Wert Differenz ist „Fehler des Netzes“
Anpassung der Neuronengewichte abhängig vom Einfluss auf Fehler
G: 1
F: 0.8
G: 0.5
F: 0.2
26.04.23 15:05 © Matthias Drobny 2006 24
ABLE: (Zusatzfolien)Self-organizing maps/SOM/Kohonenkarte
Teilart der Neuronalen Netze
unüberwachtes Lernverfahren (Clustering)
Projektion von multidimensionalen Einflüssen auf Ebene (für besseres menschliches Verständnis)
26.04.23 15:05 © Matthias Drobny 2006 25
ABLE: (Zusatzfolien)Decision Trees
spezielle Darstellungsformen von Entscheidungsregeln
aufeinanderfolgende, hierarchische Entscheidungen
schwieriger Überblick bei großen Bäumen Pruning
Kombination mit Neuronalen Netzen möglichTBNN (Tree-Based Neural Network)
26.04.23 15:05 © Matthias Drobny 2006 26
ABLE: (Zusatzfolien)Naïve Bayes
Entscheidung anhand anderer Fakten Berechnung einer Wahrscheinlichkeit aus anderen
Wahrscheinlichkeiten Unabhängigkeitsannahme zwischen den
Ereignissen
26.04.23 15:05 © Matthias Drobny 2006 27
ABLE: (Zusatzfolien)Forward chaining
Boolean forward chaining Standardfall entweder A oder B (oder C) „crispe“ Menge
Fuzzy forward chaining wenn A, dann fuzzy B keine klare Aussage, sondern
„sprechende Variable“ unscharfe Menge
sehr einfache Regelbasis Fakt + Regel neuer Fakt (+ Regel neuer Fakt...)
26.04.23 15:05 © Matthias Drobny 2006 28
ABLE: (Zusatzfolien)Pattern matching
Mustervergleich, keine Mustererkennung typischerweise (bei Textverarbeitungsprogrammen) durch
reguläre Ausdrücke (Me_er) Formbasiertes Matching (Shape-based)
Suche nach Kanten echtzeit-tauglich robust
Komponentenbasierte Matching (Component-based) zusammengehörige Teile werden erkannt
26.04.23 15:05 © Matthias Drobny 2006 29
ABLE: (Zusatzfolien) neural prediction agent - Beispiel
Beispiel (Bild) Figure 8 Nutzer legt fest:
Datenquelle Trainingsdauer, ...
einmaliges Training, danach synchrone Berechnungen
bei Überwachung von Systemänderungen automatische Rekonfiguration
top related