Ja, einen schönen guten Morgen. Ich glaube, das erste zur Technik dieser Vorlesung. Hier sind die ZL,
wo sie sich eintragen können für die mündlichen Prüfungen. Die liegen nachher dann halt hier vorne,
sind ganz viele Termine. Suchen Sie sich dann einen aus, merken Sie sich, wo Sie sich eingetragen haben.
Gut, das kriegen wir dann also hin. Ja, wir hatten beim letzten Mal uns angeschaut,
P2P-Netzwerke als organisches System zu betrachten und wir hatten so mit den Klassikern angefangen,
warum es so ein bisschen hakelte bei Napster und auch was der etwas hakelnde Ansatz bei
Nutella war. Das, was ich Ihnen heute vorstellen möchte, ist das Content Addressable Network,
das sogenannte Kernnetzwerk, das einige der Sachen, die wir beim letzten Mal als Problem
identifiziert haben zu vermeiden mag. Denn was war noch das Problem sowohl bei Napster als auch
bei Nutella? Bei Napster das Problem war, dass diese zentrale Kontrolle, wenn ich den ausschalte,
finde ich da auch nichts mehr. Bzw., wenn ich halt einen Server oder ein paar Server habe und alle
auf diesen Server zugreifen, dass es dann auch an der Stelle sehr eng wird. Das ist natürlich auch
nicht gerade etwas, was man haben will. Wir hatten ja schon auch charakterisiert, was P2P bedeutet.
Die sollen alle gleichwertig sein, eben keinen Server, der irgendwie alles weiß und der sozusagen
den Chef der anderen gibt. Das war dann etwas, was bei Nutella funktioniert hat. Also bei Nutella ist
es so, dass alle Piers gleichwertig sind, aber die Probleme, die wir da identifiziert haben,
waren, dass man immer eine Suche nach einer Datei initiiert, dass man entweder das ganze
Netzwerk durchsuchen muss oder aber auf der anderen Seite eben irgendwann die Reißleine zieht,
die Antwort nein bekommt, obwohl die richtige Antwort ja gewesen wäre, aber man ist halt nur
nicht dahin gekommen, wo die Datei ist. Also das, was wir halt wollen, ist, wir wollen sicher finden
und dieses sicher finden ist bei Nutella halt nicht möglich. Das ist bei Napster möglich,
bei Napster weiß alles, also dieser Server. Wie kriegt man das jetzt gebacken? Wir hatten ja
schon beim letzten Mal uns dann auch angeschaut, als Ansatz die Distributed Hashtables zu nehmen,
dass man halt eine Funktion auf die Daten anwendet und wir haben das sogar nochmal eins weiter
gemacht, nicht nur die Funktion auf die Daten anzuwenden, die irgendwo hin zu haschen, sondern
auch die Piers irgendwo hin zu haschen und dann sagen, dass die Piers für einen Intervall
zuständig sind, für ein Intervall des Adressraums. Das ist nochmal dieses Prinzip, das wir hatten.
Wir haben hier so eine Reihe von Piers, das war jetzt dieser Ansatz, wo man eine feste
Hashtagfunktion hat, wo man sagt, das ist Pier Nummer 1 und dann hatten wir halt eine Funktion
angegeben, wo der Funktionswert von 23 dann eben 1 ist, das heißt, die Datei, die ist dann bei 1
gespeichert. Und wir hatten halt gesehen, die Distributed Hashtables, die mappen halt nicht
nur die Dateien auf diesen Adressraum, sondern selbst die Piers werden auf den Adressraum
aufgeteilt. Das ist das, was wir uns angeschaut haben, dann wird der Adressraum aufgeteilt. Also die
tatsächliche gehashte Adresse dieses Piers ist, was immer hier als Zahl steht, aber zuständig ist
dieser Pier für dieses Intervall der Adressen und wenn diese Datei hierhin gehasht wird, dann heißt
das, dass der Pier dafür zuständig ist, diese Datei zu speichern. Das ist das Prinzip der
Distributed Hashtables und das, was wir uns heute eben anschauen wollen, ist ein Ansatz,
der das mit diesen Distributed Hashtables konsequent umsetzt. Das war der erste derartige Ansatz und das,
was da halt passiert ist, ist, dass da eine Reihe von Leuten, mal die Theoretiker sind, die haben
dann eben nicht nur sich da was schönes ausgedacht, sondern haben dann auch noch Beweise geführt. Wir
werden so ein paar von diesen Beweisen dann auch gleich noch sehen, die dann was zur Auslastung
der einzelnen Piers sagt. Also wenn ich M Dateien habe und ich habe N Piers, dann wäre ja irgendwie
perfekt, wenn M dividiert durch N die Anzahl der Dateien je Pier wäre und wir werden zeigen,
dass wir da ziemlich gut dran kommen. Also in gewisser Weise ist das, was wir da gleich erreichen
werden, schon das Bestmögliche. Wenn man dann noch besser werden will, müsste man massiv wieder mit
zentraler Information arbeiten. Also unsere Dateien sind diese fünf Leute, die Sie da sehen. Das hier
ist einer der ganz großen Theoretiker, das ist Richard Karp. Das ist auch der Miterfinder des
Nicht-Determinismus für die Informatiker. Also er ist auch schon seit ein paar Jahren pensioniert,
ist in der UC Berkeley gewesen und das ist halt so ein Rudel von Leuten, die um ihn auch noch
herum waren. Die sind also auch noch aktiv. Naja, jedenfalls, das was wir jetzt machen wollen,
Presenters
Zugänglich über
Offener Zugang
Dauer
01:03:02 Min
Aufnahmedatum
2013-07-02
Hochgeladen am
2019-04-28 23:29:03
Sprache
de-DE
Unter Organic Computing (OC) versteht man den Entwurf und den Einsatz von selbst-organisierenden Systemen, die sich den jeweiligen Umgebungsbedürfnissen dynamisch anpassen. Diese Systeme zeichnen sich dadurch aus, dass sie die sog. Self-*-Eigenschaft besitzen, d.h. sie sind selbst-konfigurierend, selbst-optimierend, selbst-heilend, selbst-schützend, selbst-erklärend, ...
Als Vorbild für solche technischen Systeme werden Strukturen und Methoden biologischer und anderer natürlicher Systeme gewählt.
Literatur:
- Ch. Müller-Schloer, Ch. von der Malsburg, R. P. Würt. Organic Computing. Informatik-Spektrum, Band 27, Nummer 4, S. 332-336. (LINK)
-
I. C. Trelea. The particle swarm optimization algorithm: convergence analysis and parameter selection. Information Processing Letters 85 (2003) 317-325. (LINK)
-
J. M. Kleinberg. Authoritative sources in a hyperlinked environment. Journal of the ACM 46 (1999) 604-632. (LINK)
-
M. Dorigo. V. Maniezzo. A Colorni. Ant system: an autocatalytic optimizing process. Technical Report 91-016, Politecnico di Milano, 1991. (LINK)
-
A. Badr. A. Fahmy. A proof of convergence for Ant algorithms. Information Sciences 160 (2004) 267-279.
-
M. Clerc. J. Kennedy. The particle swarm - Explosion, stability, and convergence in a multidimensional complex space. IEEE Transactions on Evolutionary Computation 8 (2002) 58-73.