Einführung in die Informationsverarbeitung Stunde X: Simulationen von Verhalten und Systemen Manfred Thaller, Universität zu Köln Köln 17. Dezember 2007.

Slides:



Advertisements
Ähnliche Präsentationen
Developing your Business to Success We are looking for business partners. Enterprise Content Management with OS|ECM Version 6.
Advertisements

Anzahl der ausgefüllten und eingesandten Fragebögen: 211
Mathematik hat Geschichte
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil3.
Einführung in die Informatik: Programmierung und Software-Entwicklung
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Telefonnummer.
CPCP Institute of Clinical Pharmacology AGAH Annual Meeting, 29. Februar 2004, Berlin, Praktischer Umgang mit den Genehmigungsanträgen gemäß 12. AMG Novelle.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Softwaretechnologie für Fortgeschrittene Teil Thaller Stunde I: Bildverarbeitung I Köln 19. November 2009.
1 JIM-Studie 2010 Jugend, Information, (Multi-)Media Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
= = = = 47 = 47 = 48 = =
Der Einstieg in das Programmieren
Scratch Der Einstieg in das Programmieren. Scatch: Entwicklungsumgebung Prof. Dr. Haftendorn, Leuphana Universität Lüneburg,
Die Befragten 7. bis 10. Klassen N % Mädchen ,8 Jungen ,2
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
Genetische Algorithmen
Content specific Languages XSLT, C++, Java, PHP... VRML, X3D, AutoCAD, 3DS, Maya, SoftImage...
© 2006 W. Oberschelp, G. Vossen Rechneraufbau & Rechnerstrukturen, Folie 2.1.
Grundkurs Theoretische Informatik, Folie 2.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 2 Gottfried Vossen Kurt-Ulrich Witt.
Internet facts 2006-III Graphiken zum Berichtsband AGOF e.V. März 2007.
Internet facts 2008-II Graphiken zu dem Berichtsband AGOF e.V. September 2008.
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
Vererbung Spezialisierung von Klassen in JAVA möglich durch
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Vorwoche Methoden sind mit einem Namen versehene Programmabschnitte besitzen Rückgabetyp, Namen, Parameterliste.
PG 520 Intelligence Service – gezielte Informationen aus dem Internet
Schieferdeckarten Dach.ppt
Rechneraufbau & Rechnerstrukturen, Folie 12.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 12.
Distanzbasierte Sprachkommunikation für Peer-to-Peer-Spiele
1. 2 Schreibprojekt Zeitung 3 Überblick 1. Vorstellung ComputerLernWerkstatt 2. Schreibprojekt: Zeitung 2.1 Konzeption des Kurses 2.2 Projektverlauf.
Bild 1.1 Copyright © Alfred Mertins | Signaltheorie, 2. Auflage Vieweg+Teubner PLUS Zusatzmaterialien Vieweg+Teubner Verlag | Wiesbaden.
20:00.
Virtueller Rundgang Casa Mariposa in Playa del Coco.
Leistungsbeschreibung Brückenplanung RVS RVS
Sortieralgorithmen Sortieren von Arrays.
Wir üben die Malsätzchen
NEU! 1 2. Wo kommt diese Art von Rezeptor im Körper vor?
1. Welcher Nerv innerviert diesen Muskel? NEU!
Analyse von Ablaufdiagrammen
PROCAM Score Alter (Jahre)
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
Geometrische Aufgaben
Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms II
Symmetrische Blockchiffren DES – der Data Encryption Standard
Großer Altersunterschied bei Paaren fällt nicht auf!
Zahlentheorie und Zahlenspiele Hartmut Menzer, Ingo Althöfer ISBN: © 2014 Oldenbourg Wissenschaftsverlag GmbH Abbildungsübersicht / List.
MINDREADER Ein magisch - interaktives Erlebnis mit ENZO PAOLO
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Pigmentierte Läsionen der Haut
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Vortrag von Rechtsanwältin Verena Nedden, Fachanwältin für Steuerrecht zur Veranstaltung Wege zum bedingungslosen Grundeinkommen der Piratenpartei Rhein-Hessen.
1 Mathematical Programming Nichtlineare Programmierung.
Imperfekt Wie sagt man das mit Imperfekt
Technische Frage Technische Frage Bitte löse die folgende Gleichung:
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
1 IdeenSet Sonnensystem Ideenset Wann können Sonnenfinsternisse stattfinden? Erich Laager / 2014.
Bildergalerie PRESEASON CAMP Juni 2014 Romanshorn Get ready for the Season!
Tutorium Statistik II Übung IV Philipp Schäpers Mi – 11.45
Es war einmal ein Haus
Numbers Greetings and Good-byes All about Me Verbs and Pronouns
J-Team: Gymnasium Ulricianum Aurich und MTV Aurich Ein Projekt im Rahmen von UlricianumBewegt.de Euro haben wir schon…  8000 mal habt ihr bereits.
Datum:17. Dezember 2014 Thema:IFRS Update zum Jahresende – die Neuerungen im Überblick Referent:Eberhard Grötzner, EMA ® Anlass:12. Arbeitskreis Internationale.
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Wie.
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
Monatsbericht Ausgleichsenergiemarkt Gas – November
Einführung in die Informationsverarbeitung Teil Eide (auf Basis von Thaller 2014–15) Stunde III: Algorithmen, Visualisierung Köln 19. November 2015.
Einführung in die Informationsverarbeitung Teil Eide (auf Basis von Thaller 2014–15) Stunde IV: Simulationen von Verhalten und Systemen Köln 7. Januar.
 Präsentation transkript:

Einführung in die Informationsverarbeitung Stunde X: Simulationen von Verhalten und Systemen Manfred Thaller, Universität zu Köln Köln 17. Dezember 2007

I. Grundgedanke 2 (1)Ein Satz von Variablen gibt einen bestimmten Zustand wieder. (2)Dieser Zustand wird regelbasiert verändert, wobei eine bestimmte Anzahl von Veränderungen einen Schritt, also ein Stadium in der Entwicklung eines Systems wiedergibt. (3) Dieser Zustand kann in regelmäßigen Abständen visualisiert werden.

Beispiel: Towers of Hanoi stack turm1, turm2, turm3; Ausgangszustand: Alle 3 Scheiben auf turm1; Dann: transport(3, turm1, turm2, turm3); function transport( int n, stack spindel1, stack spindel2, stack spindel3) { if (n >1) transport(n-1,spindel1,spindel3,spindel2); schritt(spindel1,spindel); visualisiere(); if (n>1) transport(n-1,spindel3,turm2,spindel1); } function schritt( stack spindel1, stack spindel2) { spindel2.push(spindel1.pop()); } 3

Turm1: Turm2: Turm3: Ausgangszustand der Variablen Spindel1Spindel2Spindel3 4

Visualisierung 5

Turm1: Turm2: Turm3: schritt(turm1,turm2); Spindel1Spindel2Spindel3 6

visualisiere(); 7

Bewegung und Wachstum Ausgangszustand: Position =2; Durchmesser=1; Schritt: Position=Position+1: Durchmesser=Durchmesser+Durchmesser *0.20;

Bewegung und Wachstum Position =2; Durchmesser=1;

Bewegung und Wachstum Position =3; Durchmesser=1.20;

Bewegung und Wachstum Position =4; Durchmesser=1.44;

Bewegung und Wachstum Position =5; Durchmesser=1.728;

Beispiel Second Life: Body I 13

Beispiel Second Life: Body II 14

Beispiel Second Life: II 15

Exkurs: Logik der Computergraphik Trennung zwischen Graphic Primitives und Graphic Context. Graphic Primitives: Draw line. Draw circle. Draw text. Fill area. [ 3D equivalents. ] 16

Exkurs: Logik der Computergraphik Trennung zwischen Graphic Primitives und Graphic Context. Graphic Context: Set line thickness. Set line type. Set line color. Set fill color. Set text font. ……… 17

Exkurs: Logik der Computergraphik Trennung zwischen Graphic Primitives und Graphic Context. Die Ausführung identischer Zeicheninstruktionen in geändertem Kontext führt zu unterschiedlichem Aussehen. Aufrufen derselben Primitives mit unterschiedlichen Parametern wie Position und Durchmesser führt zu unterschiedlicher Zeichnung. 18

Beispiel Second Life: Nose 19

Abbildung von Inhalten Vicky A. Walsh: Computer Simulation for Archaeology, In: R.W.Bailey, Computing in the Humanities, North- Holland, 1982, pp Idee: Simulation des Wachstums eines neolithischen Dorfes. Fragestellung: Liegen die ausgegrabenen Häuser dort, wo sie vorhergesagt werden? 20

Abbildung von Inhalten Gelände: Eine Matrix. Feldeigenschaften Bevölkerung im Haus: n Gelände Wasser Holz Felsen Haus 21

Generationen Errechne pro Generation für jedes Haus Bevölkerungszuwachs zufällig in vorgegebenem Grenzbereich. Wenn Bevölkerung eines Hauses größer als m wird, baue neues Haus. So, dass: -Abstand zu Wasser gering, -Abstand zu Holz gering, -Abstand zu ursprünglichem Haus nahe an zufälligem Zielwert. 22

Abbildung von Inhalten Gelände: Eine Matrix. Feldeigenschaften Bevölkerung im Haus: n Gelände Wasser Holz Felsen Haus 23

Sinn Wenn Befund im Gelände dem Ergebnis der Simulation entspricht, wurde der Prozess, der zur Wahl der Siedlungsplätze führte, richtig verstanden. 24

… 20 Jahre später 25

Zufall Algorithmen sind deterministisch. Das macht Spiele vorhersehbar und langweilig; Simulationen zu mechanistisch. Lösung: Zufallsgenerator. 26

Zufall Definition: Ein mathematisches Verfahren, dass bei n hintereinander erfolgenden Aufrufen n Zahlen in einem Bereich (Min, Max) so errechnet, dass sie zwischen Max und Min mit der Häufigkeit einer bestimmten statistischen Verteilung auftreten. Oft: Minimum = 0; Maximum = Verteilung: Gleichverteilung 27

Zufall Paradoxon: Der die Zufallszahlen generierende Algorithmus ist selbst deterministisch. Lösung: Variabler Startwert, der von einer mit dem Zweck des Programms unabhängigen und nicht vorhersehbaren Umweltbedingung abhängt. 28

Beispiel Ein Bogenschütze soll mit 33 % seiner Schüsse treffen. Vor jedem Schuss wird eine Zufallszahl von 1 bis 100 gewählt. Ist sie 33 oder kleiner, trifft der Bogenschütze; sonst geht der Schuss vorbei. 29

Zweck von Simulationen Simulationen müssen nicht unmittelbar mit Visualisierungen verbunden werden. Sie können auch dazu dienen, die Performanz von Systemen mit bestimmten Eigenschaften zu testen. 30

Beispiel: Aufzucht von Trollen Annahme: Ein Troll lebt in einer n x n Welt. 31

Beispiel: Aufzucht von Trollen Diese enthält: Schafe. Schmackhaft und für das Überleben des Trolls notwendig. 32

Beispiel: Aufzucht von Trollen Diese enthält: Ritter. Aggressiv, gefährlich, aber sterblich. 33

Beispiel: Aufzucht von Trollen Diese enthält: Türme. Stationär, gefährlich, nicht bekämpfbar. 34

Beispiel: Aufzucht von Trollen Diese enthält: Refugien. Sicherer Aufenthalt. Trolle heilen. 35

Beispiel: Aufzucht von Trollen Diese enthält: Fallen. Sehen aus wie Refugien. Fesseln den Troll für eine gewisse Zeit. Machen ihn verwundbarer. 36

Test eines Trolls: Einzelner Troll wird in Welt geboren. Er muss 500 Züge überleben. Bei jedem Zug wird seine Reaktion durch seine Gene gesteuert. Am Ende wird der Erfolg seines Lebens bewertet: double Troll::GetEvaluation() { double score = 8.0 * KnightsKilled * SheepEaten * TurnsSurvived – 1.0 * TurnsCaptive – 2.5 * DamageTaken; return score; } 37

Test eines Trolls: Gene. Beispiel: Ein Troll steht genau zwischen einem Ritter, einem Schaf und einem Refugium. Er habe drei Gene: {Sicherheitsstreben, Hunger, Aggressivität} Der Troll { 1.0, 0.5, 0.5} läuft ins Refugium. Der Troll { 0.5, 1.0, 0.5 } frisst das Schaf. Der Troll { 0.5, 0.5, 1.0 } attackiert den Ritter. 38

Tatsächliche Gene 1."Hunger oder: Zuneigung zu Schafen. 2."Aggressivität oder: Abneigung gegen Ritter. 3."Gesundheit oder: Geschwindigkeit der Heilung. 4."Fluchtbereitschaft oder: Misstrauen gegen potentielle Gefahren. 5."Neugier oder: Bereitschaft, in neue Teile des Spielfeldes zu ziehen, auch wenn kein unmittelbarer Anreiz in unmittelbarer Umgebung ist. 39

Testanordnung 1.Am Anfang werden 100 Trolle, anfänglich mit vorgegebenen Genen, in 100 unterschiedlichen Welten ausgesetzt. 2.Diese Welten repräsentieren unterschiedliche Umwelttypen: schafreich, ritterreich, bevölkerungsarm. 3.Am Ende wird der Lebenserfolg jedes Trolls gemessen. 4.Und die überlebenden Trolle zeugen eine neue Generation von 100 weiteren Trollen … 5.… die bei Schritt 1 fortsetzen. 40

Die Partnerwahl des Trolls Top 20 Clonen. (= 20 junge Trolle) Das erfolgreichste Drittel paart sich. Je erfolgreicher ein Troll, desto öfter paart er sich. (= 70 junge Trolle) Einige wenige neu (mit Zufallsgenen) erzeugen. (= 10 junge Trolle) 41

Wie paaren sich Trolle? Troll-Elter 1: { 1.0, 0.8, 0.8, 0.2, 1.0 } Troll-Elter 2: { 0.8, 0.6, 0.8, 0.4, 0.9 } Troll- Kind: { 0.9, 0.7, 0.8, 0.3, 0.95 } 42

… oder auch so: Troll-Elter 1: { 1.0, 0.8, 0.8, 0.2, 1.0 } Troll-Elter 2: { 0.8, 0.6, 0.8, 0.4, 0.9 } Troll- Kind: { 1.0, 0.6, 0.8, 0.4, 1.0 } 43

Wozu macht man sowas? Es ist auf andere Weise kaum feststellbar, welche Eigenschaften einen Troll in einem Spiel zu einem Gegner mit wechselnden, aber in etwa vorhersehbaren Eigenschaften machen. (Spielgrad für einen Ritter leicht, mittel, schwierig). Das Prinzip hat zahlreiche Anwendungen außerhalb der Spieleentwicklung. 44

Wozu macht man sowas? Ingenieurwissenschaften: Testen des Verhaltens von komplexen technischen Komponenten. Biowissenschaften: Testen von Annahmen über genetische Gesetzmäßigkeiten / Interaktionen zwischen vererbten Eigenschaften und der Umwelt / Reaktion auf Umweltveränderungen. Geistes- / Kulturwissenschaften: Sind wir in der Lage Entwicklungsprozesse zu modellieren, haben wir sie verstanden. 45

Wozu macht man sowas? Interaktive Medien: Schaffung künstlicher Umwelten mit künstlichen Individuen vorhersagbarer Eigenschaften. 46

Back to reality Genetische Algorithmen haben gezeigt dass die Rolle von Mutationen in der Evolution erheblich überschätzt wurde; crossover, i.e., die Neukombination von Genen, wahrscheinlich wesentlich einflussreicher. 47

Literatur Francois Dominic Laramee: "Genetic Algorithms: Evolving the Perfect Troll", in: Steve Rabin (Ed.): AI Game Programming Wisdom,Charles River Media: 2002, p Eberhard Schöneburg et al: Genetische Algorithmen und Evolutionsstrategien, Addison Wesley, Randy L. Haupt und Sue E. Haupt: Practical Genetic Algorithms, Wiley & Sons,