25 Zufallszahlen: Wie kommt der Zufall in den Rechner?

Größe: px
Ab Seite anzeigen:

Download "25 Zufallszahlen: Wie kommt der Zufall in den Rechner?"

Transkript

1 25 Zufallszahlen: Wie kommt der Zufall in den Rechner? Bruno Müller-Clostermann und Tim Jonischkat Universität Duisburg-Essen Algorithmen sind clevere Verfahren, die Probleme verschiedenster Art effizient lösen. Wir haben in den voranstehenden Kapiteln zahlreiche Beispiele für normale Algorithmen gesehen, wie z. B. Sortieren durch Einfügen, Tiefensuche in Graphen und kürzeste Wege. Danach könnte man vermuten, dass Algorithmen trotz aller Cleverness und Effizienz nur sture und gleich ablaufende Verfahren sind, die immer perfekte und eindeutige Lösungen liefern. Mit Zufall haben Algorithmen scheinbar nichts zu tun. Aber Halt! Bei QuickSort wird vorgeschlagen, das Pivot-Element zufällig zu wählen. Beim Verfahren One-Time- Pad werden die Schlüssel zufällig gewählt. Beim Fingerprinting -Verfahren werden Zahlen zufällig ausgewählt. Auch bei Taktik- und Strategiespielen auf dem PC werden Algorithmen verwendet, bei denen Zufall sehr erwünscht oder sogar notwendig ist. Der Rechner übernimmt hier oft die Rolle eines Gegenspielers, wobei die Aktionen von Algorithmen gesteuert werden, die sinnvolle und intelligente Verhaltensvariationen erzeugen sollen. Wir kennen das von interaktiven Computerspielen wie Siedler, Sims, SimCity, oderwarcraft. Natürlich soll der Rechner bei gleichen Situationen nicht immer auf die gleiche Art reagieren, sondern es sollen unterschiedliche Effekte und Aktionen erzeugt werden. Dadurch kommt mehr Abwechslung und Spannung ins Spiel. Eine Erzeugung von Zufallszahlen oder von zufälligen Ereignissen, z. B. durch Werfen eines Würfels (Zahlen 1, 2,..., 6) oder einer Münze (Kopf oder Zahl) ist zur Verwendung in einem programmierten Algorithmus natürlich nicht geeignet. Kann aber zufälliges Verhalten programmiert werden? Kann Zufall durch einen Algorithmus erzeugt werden? Antwort: Der Zufall wird mit Hilfe von Algorithmen nachgeahmt, die scheinbar zufällige Zahlen erzeugen. Diese Zahlen werden als Zufallszahlen oder genau genommen als Pseudo-Zufallszahlen bezeichnet. Wir betrachten hier bekannte und altbewährte Algorithmen zur Erstellung von Zufallsgeneratoren. Für Zufallszahlen gibt es zahlreiche Anwendungsbereiche; hier werden wir zwei davon kennen lernen: ein Computerspiel und die so genannte Monte-Carlo-Simulation zur Flächenberechnung.

2 256 Bruno Müller-Clostermann und Tim Jonischkat Ein Taktikspiel: Schnick-Schnack-Schnuck Als einfaches Beispiel für ein programmiertes Spiel können wir uns überlegen, wie ein Algorithmus für das bekannte Spiel Papier-Schere-Stein ( Schnick- Schnack-Schnuck ) aussehen könnte. Das Spiel funktioniert so: Bei jeder Spielrunde wählst du eine der drei Möglichkeiten Papier, Schere oder Stein. Dann wird der Algorithmus ausgeführt und liefert als Ergebnis ebenfalls Papier oder Schere oder Stein. Danach wird ausgewertet. Es gewinnt Papier gegen Stein, Stein gegen Schere und Schere gegen Papier. Der Sieger bekommt einen Punkt und es folgt die nächste Spielrunde. Wie soll der Algorithmus arbeiten? Soll z. B. abwechselnd Schere und Stein gewählt werden? Das wird der menschliche Spieler schnell durchschauen! Das Ergebnis des Algorithmus muss also unvorhersehbar sein, so wie das Werfen eines Würfels, das Ziehen der Lottozahlen oder der Lauf einer Roulette-Kugel. Die mechanische Kopplung eines Algorithmus mit einem Würfel oder einem Rouletterad wäre ziemlich umständlich, jedenfalls wäre eine solche Konstruktion nicht effizient und auch nicht clever. Gebraucht wird deswegen ein algorithmisches Verfahren, welches unter den Möglichkeiten Papier, Schere oder Stein eine scheinbar zufällige Wahl trifft. Solch ein Algorithmus heißt Zufallsgenerator oder auch Zufallszahlengenerator. Abb Drei Möglichkeiten: Papier, Schere oder Stein? (Bildnachweis: Tim Jonischkat) Abb Münze: Kopf oder Zahl; Würfel: 1,..., 6; Rouletterad: 0, 1,..., 36 (Bildnachweis: Lukasz Wolejko-Wolejszo, Toni Lozano)

3 Hilfsmittel zur Erzeugung von Zufallszahlen: Modulo-Rechnung 25 Zufallszahlen 257 Bevor wir uns mit der Berechnung von Zufallszahlen näher beschäftigen, benötigen wir das Konzept der Modulo-Rechnung. Die Modulo-Funktion (auch mod-funktion genannt) bestimmt den Rest, der bei der Divison zweier natürlicher Zahlen entsteht. Teilen wir z. B. die Zahl 27 durch 12, so bleibt als Rest die Zahl 3. Betrachten wir zwei beliebige natürliche Zahlen x und m und dividieren x durch m, dann erhalten wir einen (ganzzahligen) Quotienten a und einen Rest r. DieserRestr ist eine natürliche Zahl aus dem Intervall {0, 1,...,m-1}. Einige Beispiele zur Modulo-Rechnung 9mod8=1 16 mod 8 = 0 (9 + 6) mod 12 = 15 mod 12 = 3 ( ) mod 12 = 27 mod 12 = mod 1000 = 143 Bei Division durch 1000 besteht der Rest aus den letzten 3 Stellen Veranschaulichung der Modulo-Rechnung Wir können uns die Modulo-Rechnung wie das Wandern entlang eines Kreises vorstellen, auf dem die Zahlen 0, 1, 2,..., m 1 aufgetragen sind. Um x modulo m, alsodenrestvonx bei der Division durch m zu bestimmen, starten wir bei 0 und gehen dann x Schritte im Uhrzeigersinn. Die Anzahl der Umrundungen des Kreises ist gegeben durch das Ergebnis der ganzzahligen Division a; die Zahl, bei der wir landen, ist der Rest r. Startet man z. B. eine Stundenzählung mit einer Analoguhr am 1. Januar um 0 Uhr, dann sind am 2. Januar um 19 Uhr zwar 43 Stunden vergangen, aber der Stundenzeiger zeigt auf 7 Uhr, das ist der Rest r = 43 mod 12. Eine Analoguhr zeigt die Stunden modulo 12 an, dies ist der Rest, der sich bei der Division der vergangenen Stunden durch 12 ergibt. Eine Addition entspricht einer Bewegung in Uhrzeigerrichtung. Betrachten wir im Folgenden zwei Beispiele (vgl. Abb. 25.3): Starten wir z. B. bei x = 9und addieren 6, dann bewegen wir uns 6 Schritte in Uhrzeigerrichtung und erreichen die 3, d.h., es gilt (9+6) mod 12 = 3 (Abb. 25.3, linkes Bild). Die Multiplikation einer Zahl x mit einem Faktor a kann man sich als eine Folge von Additionsschritten vorstellen; starten wir z. B. bei dem Wert x =2, und multiplizieren mit a =6, dann addieren wir 5-mal den Wert 2, machen

4 258 Bruno Müller-Clostermann und Tim Jonischkat Abb Zwei Beispiele zur Modulo-Rechnung: 9mod6=3und (6 2)mod12 = 0 also 5 Zweierschritte im Uhrzeigersinn und erreichen den Wert 0, d.h., es gilt (6 2) mod 12 = 0 (Abb. 25.3, rechtes Bild). Die Modulo-Arithmetik ist in der Informatik die natürliche Arithmetik, weil Rechner einen begrenzten (d.h. endlichen) Speicher haben und auch die Speicherzellen nur endlich groß sind und daher Zahlen nur bis zu einer bestimmten Größe gespeichert werden können. Ein Algorithmus zur Erzeugung von Pseudo-Zufallszahlen Der folgende Algorithmus erzeugt Zufallszahlen aus dem Intervall {0, 1,..., m 1}, wobei wir die gerade vorgestellte Modulo-Rechnung verwenden. Das Grundprinzip ist einfach: Wir nehmen einen Startwert x, führen eine kleine Rechnung der Form a x + c aus und berechnen den Rest r durch r =(a x + c) modm. Das Ergebnis ist die erste Zufallszahl x 1 = r. Wir verwenden x 1 als neuen Ausgangswert und berechnen die zweite Zufallszahl x 2. Dadurch ergibt sich eine Folge von Zufallszahlen x 1,x 2,x 3,... Diesen Algorithmus für einen Zufallszahlengenerator können wir auch so aufschreiben: x 1 := (a x 0 + c) modm x 2 := (a x 1 + c) modm x 3 := (a x 2 + c) modm x 4 := (a x 3 + c) modm...usw.... In allgemeiner Schreibweise erhalten wir die iterative Rechenvorschrift: x i+1 := (a x i + c) modm, i =0, 1, 2,... Um ein konkretes Beispiel für einen Zufallszahlengenerator zu erhalten, müssen wir die Parameter a, c, m und den Startwert x 0 festlegen. Mit den

5 25 Zufallszahlen 259 Festlegungen a =5, c =1, m =16und dem Startwert x 0 =1ergibt sich folgende Rechnung. x 1 := (5 1 +1) mod 16 = 6 x 2 := (5 6 +1) mod 16 = 15 x 3 := ( ) mod 16 = 12 x 4 := ( ) mod 16 = 13 x 5 := ( ) mod 16 = 2 x 6 := (5 2 +1) mod 16 = 11 x 7 := ( ) mod 16 = 8 x 8 := (5 8 +1) mod 16 = 9...usw.... Natürlich ist diese Zahlenfolge offensichtlich deterministisch, d.h., sie besteht bei einem gegebenen x 0 immer aus den gleichen fest definierten und reproduzierbaren Elementen. Durch die Wahl eines Startwerts x i kann der Einstiegspunkt in solch eine Zahlenfolge für jeden Ablauf des Algorithmus neu festgelegt werden. Periodisches Verhalten Rechnen wir weiter, dann fällt auf, dass wir nach 16 Schritten wieder bei dem Ausgangswert 1 ankommen, und dass jede der 16 möglichen Zahlen 0, 1, 2,...,15 genau einmal vorkommt. Berechnet man die Werte für x 16,x 17,...,x 31, wiederholt sich die Zahlenfolge. Wir sehen also ein periodisches Verhalten, hier mit der Periode 16. Wennwirm sehr groß wählen und außerdem den Faktor a und die Konstante c geschickt festlegen, dann erhalten wir größere Perioden, im Idealfall erhält man wie in diesem Beispiel die volle Periode der Länge m. In Programmiersprachen sind manchmal Zufallszahlengeneratoren fest eingebaut oder über eine Bibliothek von Funktionen verwendbar; es gibt z. B. in der Programmiersprache Java einen vollperiodigen Generator mit den Parametern a = , c =11und m =2 48. Simulation von echten Zufallsgeneratoren Die Erzeugung von Pseudo-Zufallszahlen aus dem Bereich {0, 1,..., m 1} ist die Grundlage für viele Anwendungen. Beispiele sind die Simulation eines Münzwurfs mit den Ergebnissen Kopf oder Zahl, das Werfen eines Würfels mit den Ergebnissen 1, 2, 3, 4, 5 und 6 oder das Drehen eines Rouletterads mit den 37 Möglichkeiten 0, 1,...,36.

6 260 Bruno Müller-Clostermann und Tim Jonischkat Nehmen wir an, dass es bei allen Beispielen fair zugeht, d.h., die Wahrscheinlichkeit für Kopf bzw. Zahl ist jeweils 1 2, beim Würfel haben wir 1 6 und beim Roulette 1 37 als Wahrscheinlichkeiten für jeden der möglichen Werte. Zur Simulation des Münzwurfs benötigen wir also ein Verfahren zur Umwandlung einer Zufallszahl x {0, 1,...,m 1} in eine Zahl z {0, 1}, wobei0 für Kopf und 1 für Zahl stehen soll. Ein einfaches Verfahren wäre eine Rechnung, bei der kleine Zahlen auf 0 und große Zahlen auf 1 abgebildet werden, d.h. rechnerisch: 0 wenn x< m 2, 1 wenn x m 2. Beim Roulette hätten wir eine Transformation z := x mod 37 und beim Würfel z := x mod Der Schnick-Schnack-Schnuck-Algorithmus Jetzt endlich zurück zu unserem Taktikspiel. Wir benötigen einen Algorithmus, der unter den drei Möglichkeiten Papier, Schere oder Stein eine Zufallsauswahl trifft. Zu diesem Zweck verwenden wir einen Zufallszahlengenerator, mit dem wir bei jeder Spielrunde eine Zufallszahl x erzeugen und daraus durch z := x mod 3 eine neue Zahl bestimmen, die nur die drei Werte 0, 1 und 2 annehmen kann. Abhängig vom Wert von z wählt der Algorithmus Papier (0), Schere (1) oder Stein (2). Dieser Algorithmus ist in einem kleinen Programm implementiert, dem Schnick-Schnack-Schnuck-Applet 1. Es stehen vier Zufallszahlengeneratoren zur Auswahl, wobei der erste durch den extremen Spezialfall einer fest vorgegebenen Folge der Zahlen 0, 1 und 2 definiert ist. 1. Deterministisch: Die feste Zahlenfolge 2, 0, 1, 1, 0, 0, 0, 2, 1, 0, 2 2. ZZG-016: a =5, c =1, m =16und Startwert x 0 =1(Periode 16) 3. ZZG-100: a =81, c =1, m = 100, Startwert x 0 =10(Periode 100) 4. Java-Generator: Der in der Programmiersprache Java vorgegebene Generator java.util.random Der Algorithmus naechstezufallszahl rechnet mit der Eingabe x und den Konstanten a, c und m. Dermitreturn zurückgegebene Wert ist die auf die parametrisierte Zahl in der jeweiligen Zahlenreihe folgende Zufallszahl im Intervall {0, 1,...,m 1}. 1 procedure naechstezufallszahl (x) 2 begin 3 return (a x + c) modm 4 end 1 algo38/applet/ (bitte Java aktivieren)

7 25 Zufallszahlen 261 Abb Schere schneidet Papier (links), Stein wird von Papier eingewickelt (rechts) Abb Algorithmus der Maschine In diesem Beispiel wird die Funktion naechstezufallszahl n-mal aufgerufen; der Startwert wird auf den Wert 1 gesetzt. Bei jeder Wiederholung wird die ermittelte Zufallszahl und zusätzlich ihr Wert modulo 3 ausgegeben. 1 procedure zufallszahlenbeispiel (n) 2 begin 3 a := 5; c := 1; m := 16; 4 x := 1; 5 for i := 1 to n do 6 x := naechstezufallszahl(x); 7 print(x); 8 print(x mod 3) 9 endfor 10 end Als Zufallszahlen erhalten wir x i :6, 15, 12, 13, 2, 11, 8, 9, 14, 7,... x i modulo 3:0, 0, 0, 1, 2, 2, 2, 1, 2, 1,... Die Bilder zeigen einen möglichen Spielverlauf. Mensch und Maschine wählen gleichzeitig Schere, Stein oder Papier. Tabelle 25.1 zeigt den Spielstand und den Ablauf des Algorithmus. In Abb kann man die Arbeit des ausgewählten Zufallsgenerators beobachten (ausgewählt ist hier ZZG-016). Der aktuelle Rechenschritt ist her-

8 262 Bruno Müller-Clostermann und Tim Jonischkat Tabelle Spielstand nach drei Runden: Mensch Maschine 2:1 vorgehoben; aber auch die zukünftigen Werte sind bereits sichtbar! Man kann also feststellen, was die Maschine als nächstes tun wird (ein kleiner Cheat!). Monte-Carlo-Simulation: Flächenberechnung mit Zufallsregen Ein wichtiger Anwendungsbereich von Zufallszahlen ist die so genannte Monte-Carlo-Simulation, die nach dem Spielcasino in Monte Carlo benannt ist. Monte-Carlo-Simulation kann z. B. verwendet werden, um eine Flächenbestimmung von unregelmäßigen geometrischen Figuren durch Zufallsregen durchzuführen. Von Zufallsregen spricht man, wenn viele zweidimensionale Zufallspunkte (x, y) auf eine Ebene treffen. Ein Zufallspunkt in der Ebene wird durch ein (x, y)-paar von zufälligen Koordinatenwerten bestimmt, wobei der x-wert und der y-wert jeweils durch eine Zufallszahl aus dem Intervall [0, 1] festgelegt werden. Zu diesem Zweck werden aus dem Intervall {0, 1,...,m 1} gezogene Zufallszahlen so transformiert, dass reellwertige Zufallszahlen zwischen 0 und 1 entstehen. Dies geschieht durch die Transformation x := x/(m 1). Legt man eine beliebige Fläche in ein Quadrat mit Kantenlänge 1 (wie in Abb. 25.6) und wirft Zufallspunkte in dieses Quadrat, dann fällt ein Teil der Punkte auf diese Fläche und der Rest daneben. Eine Schätzung für den Flächeninhalt erhält man durch die Berechnung des Quotienten F = Trefferanzahl/Punkteanzahl. Um eine gute Schätzung zu bekommen, muss man Millionen oder sogar Milliarden von Punkten werfen. Eine Durchführung dieses Algorithmus von Hand wird man deswegen niemandem zumuten, aber für einen programmierten Algorithmus auf einem Rechner ist es natürlich kein Problem, einmal schnell 1 Million Zufallspunkte in ein Quadrat zu werfen!

9 25 Zufallszahlen 263 Abb Zwei Zufallspunkte (x 1,y 1) und (x 2,y 2) (links), Zufallsregen: Zähle die Treffer auf der Fläche (rechts) Als Beispiel zur praktischen Verwendung der Monte-Carlo-Simulation betrachten wir ein Verfahren zur Bestimmung der berühmten Kreiszahl π = 3, Eine näherungsweise Bestimmung der Zahl kann durch das Werfen von zufälligen Punkten (x, y) in den Einheitskreis durchgeführt werden. Wir betrachten ein Quadrat mit Seitenlänge 1 (Fläche = 1),wobeiim1.Qua- dranten ein Viertelkreis eingebettet ist. Da der Kreis den Radius r =1hat, ist seine Fläche F = r 2 π = π und die Fläche des Viertelkreises ist π 4. Sei T die Zahl der Treffer im Viertelkreis und N die Gesamtzahl der Würfe in dem Quadrat, dann können wir π näherungsweise berechnen durch π 4 T N. In dem Bild sind 130 Zufallspunkte dargestellt, davon fallen 102 in den Viertelkreis, d.h., wir rechnen π ,1384. Dasistnochkein Abb Wie viele Zufallspunkte fallen in den Kreis?

10 264 Bruno Müller-Clostermann und Tim Jonischkat sehr guter Wert für π, aber mit oder 1 Million oder sogar 1 Milliarde Punkten sollte das Ergebnis wesentlich genauer werden. Dieses rein mit Worten beschriebene Verfahren ist in folgendem Algorithmus Zufallsregen zusammengefasst. Der Algorithmus Zufallsregen berechnet die Kreiszahl π. Hierbei setzen wir ein Einheitsquadrat (Kantenlänge = 1) voraus, welches den Flächeninhalt 1 besitzt. 1 procedure Zufallsregen (n) 2 begin 3 a := ; c := 12345; m := ; # Parameter 4 z := 1; treffer := 0; # Startwerte 5 for i := 1 to n do 6 z := (a z + c) modm; 7 x := z/(m 1); 8 z := (a z + c) modm; 9 y := z/(m 1); 10 if inflaeche(x,y) then 11 treffer := treffer endif 13 endfor 14 return 4 treffer/n 15 end Anmerkung: Die Funktion inflaeche prüft, ob sich der Punkt mit den als Parameter übergebenen Koordinaten (x, y) in der Fläche befindet. Da es sich um eine Kreisfläche handelt, wird in der Funktion inflaeche die Kreisgleichung x 2 + y 2 = r 2 verwendet. Ein Punkt (x, y) liegt genau dann im Einheitskreis, wenn gilt: x 2 + y 2 1. Es gibt zahlreiche Anwendungen der Monte-Carlo-Simulation in den Ingenieur- und Naturwissenschaften. In der Informatik hat sich aus den Techniken zur Monte-Carlo-Simulation das Gebiet der so genannten zufallsgesteuerten Algorithmen entwickelt, die für manche Aufgabenstellungen wesentlich schneller und auch einfacher sind als konventionelle Algorithmen. Zum Weiterlesen 1. Das hier vorgestellte Verfahren zur Berechnung von Pseudo-Zufallszahlen unter Verwendung der Modulo-Operation ist auch grundlegend für viele andere Bereiche der Informatik, z. B. für die in diesem Buch behandelten Techniken Public-Key-Kryptographie (Kap. 16), Fingerprinting (Kap. 19) und One- Time-Pad (Kap. 15). 2. Mehr zum Thema Zufallszahlen findet man bei Wikipedia unter:

11 25 Zufallszahlen Eine Einführung in Methoden zum Entwurf von zufallsgesteuerten Systemen für Einsteiger findet sich in dem Lehrbuch Randomisierte Algorithmen von J. Hromkovič Pseudo-Zufallszahlen sind auch von großer Bedeutung für die stochastische Simulation von komplexen Informatiksystemen, wie z. B. bei der Planung von Rechner- und Datennetzen im Umfeld von Internet, WorldWideWeb und Mobilkommunikation. 5. Weitere Anwendungsmöglichkeiten für die Verwendung von (Pseudo-)Zufallszahlen finden sich im Bereich der genetischen Algorithmen und evolutionären Systeme. Als Einstieg in diese so genannten naturimitierenden Modellierungsparadigmen empfehlen wir das in diesem Buch beschriebene Verfahren des Simulated Annealing (Kap. 43). 2 J. Hromkovič: Randomisierte Algorithmen Methoden zum Entwurf von zufallsgesteuerten Systemen für Einsteiger. Teubner, StuttgartLeipzig Wiesbaden, 2004.

38. Algorithmus der Woche Zufallszahlen Wie kommt der Zufall in den Rechner?

38. Algorithmus der Woche Zufallszahlen Wie kommt der Zufall in den Rechner? 38. Algorithmus der Woche Zufallszahlen Wie kommt der Zufall in den Rechner? Autor Tim Jonischkat, Universität Duisburg-Essen Bruno Müller-Clostermann, Universität Duisburg-Essen Algorithmen sind clevere

Mehr

Zufallszahlenerzeugung

Zufallszahlenerzeugung Zufallszahlenerzeugung Anwendunsgebiete: z.b.: - Computerspiele - Kryptographie - Monte-Carlo-Methoden - Simulation Melanie Kaspar, Prof. Dr. B. Grabowski 1 Wie erzeuge ich Zufallszahlen, die sich so verhalten,

Mehr

15 Grundlagen der Simulation

15 Grundlagen der Simulation 15 Grundlagen der Simulation 15.1 Einführung Komplexe Problemstellungen, die einer analytischen Behandlung nur sehr schwer oder gar nicht zugänglich sind Lösung von diskreten (oder analytischen) Optimierungsaufgaben,

Mehr

Zufallszahlen erzeugen

Zufallszahlen erzeugen Informationsblatt fÿr die Lehrkraft Zufallszahlen erzeugen Informationsblatt fÿr die Lehrkraft Thema: Schultyp: Vorkenntnisse: Bearbeitungsdauer: Zufallszahlen erzeugen - Methode der linearen Kongruenz

Mehr

Zufallszahlen in AntBrain

Zufallszahlen in AntBrain Zufallszahlen SEP 291 Zufallszahlen in AntBrain Spezifikation, Teil II: Zum Beispiel könnte ein Objekt vom Typ Match die Spielfelder nach jeweils 1000 Spielrunden speichern; bei einer Anfrage nach den

Mehr

Lineare Kongruenzgeneratoren und Quicksort

Lineare Kongruenzgeneratoren und Quicksort Seminar Perlen der theoretischen Informatik Dozenten: Prof. Johannes Köbler und Olaf Beyersdorff Lineare Kongruenzgeneratoren und Quicksort Ausarbeitung zum Vortrag Mia Viktoria Meyer 12. November 2002

Mehr

Wahrscheinlichkeitsrechnung und Statistik

Wahrscheinlichkeitsrechnung und Statistik Babeş-Bolyai Universität Fakultät für Mathematik und Informatik Oktober 2018 Im Alltag... Laut den meteorologischen Vorhersagen wird es morgen regnen. Ob ich riskiere und die Wette verlieren werde? Ich

Mehr

UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1. Übung 8. Zufallszahlen Generatoren Anwendungen

UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1. Übung 8. Zufallszahlen Generatoren Anwendungen UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1 Übung 8 Zufallszahlen Generatoren Anwendungen Institut für Pervasive Computing Johannes Kepler Universität Linz Altenberger Straße 69, A-4040

Mehr

Algorithmen und Datenstrukturen SS Übungsblatt 1: Grundlagen

Algorithmen und Datenstrukturen SS Übungsblatt 1: Grundlagen Ludwig-Maximilians-Universität München München, 16.04.2018 Institut für Informatik Prof. Dr. Thomas Seidl Anna Beer, Florian Richter Algorithmen und Datenstrukturen SS 2018 Übungsblatt 1: Grundlagen Tutorien:

Mehr

7 Zufallszahlen, Simulation

7 Zufallszahlen, Simulation 7 Zufallszahlen, Simulation Es ist nützlich, Folgen von i.i.d. R[0, 1]-verteilten Zufallszahlen auf einem Rechner erzeugen zu können vgl. Simulation, Monte-Carlo-Verfahren). Letztere sind i.a. keine echten

Mehr

Wahrscheinlichkeitsrechnung und Statistik

Wahrscheinlichkeitsrechnung und Statistik 8. Vorlesung Pseudozufallszahlen sind, wie der Name schon sagt, keine echten Zufallszahlen, sondern werden durch Generatoren erzeugt. Als Pseudozufallszahlen bezeichnet man Zahlenfolgen die durch einen

Mehr

7 Die Sätze von Fermat, Euler und Wilson

7 Die Sätze von Fermat, Euler und Wilson 53 7 Die Sätze von Fermat, Euler und Wilson Es gibt einige Sätze aus der elementaren Zahlentheorie, die Spezialfälle von Aussagen über endliche Gruppen sind. Z.B. gilt für ein beliebiges Element x einer

Mehr

Einführung in die Informatik Turing Machines

Einführung in die Informatik Turing Machines Einführung in die Informatik Turing Machines Eine abstrakte Maschine zur Präzisierung des Algorithmenbegriffs Wolfram Burgard Cyrill Stachniss 1/14 Motivation und Einleitung Bisher haben wir verschiedene

Mehr

Probabilistische Algorithmen

Probabilistische Algorithmen Probabilistische Algorithmen Michal Švancar Gerardo Balderas Hochschule Zittau/Görlitz 21. Dezember 2014 Michal Švancar, Gerardo Balderas (HSZG) Probabilistische Algorithmen 21. Dezember 2014 1 / 40 Inhaltsverzeichnis

Mehr

Modellierung- und Simulation Mathis Plewa ( )

Modellierung- und Simulation Mathis Plewa ( ) Inhaltsverzeichnis Abbildungsverzeichnis... 1 Übungsaufgabe: Zufallsgeneratoren und Histogramme... 2 Standard Gleichverteilung... 2 Gaußverteilung... 3 Exponentialverteilung... 4 Übungsaufgabe: Geometrische

Mehr

Einführung in die Informatik Turing Machines

Einführung in die Informatik Turing Machines Einführung in die Informatik Turing Machines Eine abstrakte Maschine zur Präzisierung des Algorithmenbegriffs Wolfram Burgard 1 Motivation und Einleitung Bisher haben wir verschiedene Programmiersprachen

Mehr

Zufallszahlen. Diskrete Simulation. Zufallszahlengeneratoren - Zufallszahlen

Zufallszahlen. Diskrete Simulation. Zufallszahlengeneratoren - Zufallszahlen Zufallszahlen Zufallszahlengeneratoren Transformation von Zufallszahlen Test von Zufallszahlengeneratoren Otto-von-Guericke-Universität Magdeburg Thomas Schulze Zufallszahlengeneratoren - Zufallszahlen

Mehr

Informationssicherheit III

Informationssicherheit III Zufall im Rechner Präsentation im Rahmen der Lehrveranstaltung Informationssicherheit III WS 2001/2002 Jochen Rondorf 17.01.2002 Zufall im Rechner WS 2001/02 1 Agenda Arten von Zufall Anwendungsgebiete

Mehr

Fakultät für Informatik und Automatisierung, Technische Universität Ilmenau. Über Polynome mit Arithmetik modulo m.

Fakultät für Informatik und Automatisierung, Technische Universität Ilmenau. Über Polynome mit Arithmetik modulo m. 19 Fingerprinting Martin Dietzfelbinger Fakultät für Informatik und Automatisierung, Technische Universität Ilmenau Anhang: Über Polynome mit Arithmetik modulo m Dieser Abschnitt ergänzt Kapitel 19 Fingerprinting

Mehr

MINT-Circle-Schülerakademie

MINT-Circle-Schülerakademie 1 Einführung MINT-Circle-Schülerakademie Kurze Einführung, was Maple ist, wozu es dienen kann, wo es verwendet wird. Zur Einführung die folgenden Aufgaben bearbeiten lassen. Aufgabe 1. Gib unter Maple

Mehr

Die Schreibweise x M bedeutet, dass das Objekt x in der Menge M liegt. Ist dies nicht der Fall, dann schreibt man

Die Schreibweise x M bedeutet, dass das Objekt x in der Menge M liegt. Ist dies nicht der Fall, dann schreibt man Die Schreibweise x M bedeutet, dass das Objekt x in der Menge M liegt. Ist dies nicht der Fall, dann schreibt man x / M. Man sagt, M ist Teilmenge von N und schreibt M N, wenn für jedes x M auch x N gilt.

Mehr

4.1 Der Blum-Blum-Shub-Generator

4.1 Der Blum-Blum-Shub-Generator 4.1 Der Blum-Blum-Shub-Generator Der Blum-Blum-Shub-Generator oder BBS-Generator setzt bei der in Kapitel III vorgestellten Quadratrest-Vermutung an und funktioniert so: Als ersten Schritt wählt man eine

Mehr

VI.4 Elgamal. - vorgestellt 1985 von Taher Elgamal. - nach RSA das wichtigste Public-Key Verfahren

VI.4 Elgamal. - vorgestellt 1985 von Taher Elgamal. - nach RSA das wichtigste Public-Key Verfahren VI.4 Elgamal - vorgestellt 1985 von Taher Elgamal - nach RSA das wichtigste Public-Key Verfahren - besitzt viele unterschiedliche Varianten, abhängig von zugrunde liegender zyklischer Gruppe - Elgamal

Mehr

Stochastik-Praktikum

Stochastik-Praktikum Stochastik-Praktikum Zufallszahlen und Monte Carlo Peter Frentrup Humboldt-Universität zu Berlin 17. Oktober 2017 (Humboldt-Universität zu Berlin) Zufallszahlen und Monte Carlo 17. Oktober 2017 1 / 23

Mehr

Über Polynome mit Arithmetik modulo m

Über Polynome mit Arithmetik modulo m Über Polynome mit Arithmetik modulo m Um den Fingerprinting-Satz über die Fingerabdrücke verschiedener Texte aus dem 37. Algorithmus der Woche ( http://www-i1.informatik.rwth-aachen.de/~algorithmus/algo37.php

Mehr

Monte-Carlo-Algorithmen für innermathematische Fragestellungen

Monte-Carlo-Algorithmen für innermathematische Fragestellungen Monte-Carlo-Algorithmen für innermathematische Fragestellungen Katharina Klembalski Humboldt-Universität Berlin 30. August 2012 Warum Monte-Carlo-Algorithmen im Mathematikunterricht? schriftl. Addieren

Mehr

Ideen und Konzepte der Informatik. Programme und Algorithmen Kurt Mehlhorn

Ideen und Konzepte der Informatik. Programme und Algorithmen Kurt Mehlhorn Ideen und Konzepte der Informatik Programme und Algorithmen Kurt Mehlhorn Algorithmen und Programme Algorithmus Schritt-für-Schritt Vorschrift zur Lösung eines Problems. Formuliert man umgangssprachlich,

Mehr

2. Hausübung Algorithmen und Datenstrukturen

2. Hausübung Algorithmen und Datenstrukturen Prof. Dr. Gerd Stumme, Folke Eisterlehner, Dominik Benz Fachgebiet Wissensverarbeitung 7.4.009. Hausübung Algorithmen und Datenstrukturen Sommersemester 009 Abgabetermin: Montag, 04.05.009, 10:00 Uhr 1

Mehr

. Die obige Beschreibung der Laufzeit für ein bestimmtes k können wir also erweitern und erhalten die folgende Gleichung für den mittleren Fall:

. Die obige Beschreibung der Laufzeit für ein bestimmtes k können wir also erweitern und erhalten die folgende Gleichung für den mittleren Fall: Laufzeit von Quicksort im Mittel. Wir wollen die erwartete Effizienz von Quicksort ermitteln. Wir nehmen an, die Wahrscheinlichkeit, dass das gewählte Pivot-Element a j das k-t kleinste Element der Folge

Mehr

Probabilistische Algorithmen Zufallszahlen - Monte Carlo - Genetische Programmierung

Probabilistische Algorithmen Zufallszahlen - Monte Carlo - Genetische Programmierung Probabilistische Algorithmen Zufallszahlen - Monte Carlo - Genetische Programmierung 25. Mai 2009 Inhaltsverzeichnis Pseudozufallszahlen Kongruenzmethode Monte-Carlo-Algorithmen Bsp Primzahltest Genetische

Mehr

schreiben, wobei p und q ganze Zahlen sind.

schreiben, wobei p und q ganze Zahlen sind. Schülerinfotag 1. Man zeige, dass keine rationale Zahl ist. Das heißt lässt sich nicht als p q schreiben, wobei p und q ganze Zahlen sind. Proof. Wir werden das Prinzip Beweis durch Widerspruch verwenden.

Mehr

8 Dezimalzahlen und Fehlerfortpflanzung

8 Dezimalzahlen und Fehlerfortpflanzung 7 Dezimalzahlen und Fehlerfortpflanzung 29 8 Dezimalzahlen und Fehlerfortpflanzung Lernziele: Konzepte: Dezimalzahlen und Runden Methoden: spezielle Umrechungen Kompetenzen: Einschätzen von Fehlerfortpflanzungen

Mehr

Formeln für Formen 4. Flächeninhalt. 301 Berechne die Höhe h von einem Rechteck, einem Parallelogramm und einem Dreieck, die jeweils den Flächeninhalt

Formeln für Formen 4. Flächeninhalt. 301 Berechne die Höhe h von einem Rechteck, einem Parallelogramm und einem Dreieck, die jeweils den Flächeninhalt 1 7 Flächeninhalt 301 Berechne die Höhe h von einem Rechteck, einem Parallelogramm und einem Dreieck, die jeweils den Flächeninhalt A = cm 2 und die Grundlinie a = 4 cm haben. Rechteck: h = 2,5 cm Parallelogramm:

Mehr

Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2015/16

Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2015/16 Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2015/16 21. Januar 2016 Definition 8.1 Eine Menge R zusammen mit zwei binären Operationen

Mehr

6: Diskrete Wahrscheinlichkeit

6: Diskrete Wahrscheinlichkeit Stefan Lucks Diskrete Strukturen (WS 2009/10) 219 6: Diskrete Wahrscheinlichkeit 6: Diskrete Wahrscheinlichkeit Stefan Lucks Diskrete Strukturen (WS 2009/10) 220 Wahrscheinlichkeitsrechnung Eines der wichtigsten

Mehr

Vorlesung: Simulation Mechanischer Verfahrenstechnik Seminar - Zerkleinerung

Vorlesung: Simulation Mechanischer Verfahrenstechnik Seminar - Zerkleinerung Vorlesung: Simulation Mechanischer Verfahrenstechnik Seminar - Zerkleinerung Aufgabe 1: Einführung Monte-Carlo-Methode Kreiszahl Pi Bestimmen Sie durch Implementierung der Monte Carlo Methode in einen

Mehr

Dieses Quiz soll Ihnen helfen, Kapitel besser zu verstehen.

Dieses Quiz soll Ihnen helfen, Kapitel besser zu verstehen. Dieses Quiz soll Ihnen helfen, Kapitel 2.5-2. besser zu verstehen. Frage Wir betrachten ein Würfelspiel. Man wirft einen fairen, sechsseitigen Würfel. Wenn eine oder eine 2 oben liegt, muss man 2 SFr zahlen.

Mehr

Blende die Achsen aus! Dein Resultat sollte in etwa wie in der folgenden Abbildung aussehen.

Blende die Achsen aus! Dein Resultat sollte in etwa wie in der folgenden Abbildung aussehen. Reihen mit GeoGebra 1. Reihe eine Folge von Teilsummen Wir wollen die Folge (a n ) n mit der Termdarstellung a n = 1/n (n N ) sowie die Folge (s n ) n von Teilsummen (a 1,a 1 +a 2,a 1 +a 2 +a 3,...) harmonische

Mehr

Zufälle gibt s, oder gibt s die nicht? Martin Köhler Science Café Hamburg, 25. Juni 2014

Zufälle gibt s, oder gibt s die nicht? Martin Köhler Science Café Hamburg, 25. Juni 2014 Zufälle gibt s, oder gibt s die nicht? Martin Köhler Science Café Hamburg, 25. Juni 2014 Grundfrage und Gliederung Gibt es einen echten Zufall, oder wissen wir einfach nicht genug für eine exakte Vorhersage?

Mehr

4 Diskrete Wahrscheinlichkeitsverteilungen

4 Diskrete Wahrscheinlichkeitsverteilungen 4 Diskrete Wahrscheinlichkeitsverteilungen 4.1 Wahrscheinlichkeitsräume, Ereignisse und Unabhängigkeit Definition: Ein diskreter Wahrscheinlichkeitsraum ist ein Paar (Ω, Pr), wobei Ω eine endliche oder

Mehr

Probabilistische Primzahltests

Probabilistische Primzahltests 23.01.2006 Motivation und Überblick Grundsätzliches Vorgehen Motivation und Überblick Als Primzahltest bezeichnet man ein mathematisches Verfahren, mit dem ermittelt wird, ob eine gegebene Zahl eine Primzahl

Mehr

3.2. Polarkoordinaten

3.2. Polarkoordinaten 3.2. Polarkoordinaten Die geometrische Bedeutung der komplexen Multiplikation versteht man besser durch die Einführung von Polarkoordinaten. Der Betrag einer komplexen Zahl z x + i y ist r: z x 2 + y 2.

Mehr

Zufall oder Absicht?

Zufall oder Absicht? Zufall oder Absicht? Randomisierung und Derandomisierung Prof. Markus Bläser Universität des Saarlandes 4. Januar 2010 1 / 21 Zufall oder Absicht? 1 Randomisierte Algorithmen 2 Polynom-Identitätstests

Mehr

Tandembogen und Irrgarten eine Einführung der irrationalen Zahlen. Irmgard Letzner, Berlin. M 1 Die rationalen Zahlen Brüche würfeln und berechnen

Tandembogen und Irrgarten eine Einführung der irrationalen Zahlen. Irmgard Letzner, Berlin. M 1 Die rationalen Zahlen Brüche würfeln und berechnen S 1 Tandembogen und Irrgarten eine Einführung der irrationalen Zahlen Irmgard Letzner, Berlin M 1 Die rationalen Zahlen Brüche würfeln und berechnen Ein Würfelspiel für 2 Spieler Materialien r 2 Würfel

Mehr

Grundwissen. 5. Jahrgangsstufe. Mathematik

Grundwissen. 5. Jahrgangsstufe. Mathematik Grundwissen 5. Jahrgangsstufe Mathematik Grundwissen Mathematik 5. Jahrgangsstufe Seite 1 1 Natürliche Zahlen 1.1 Große Zahlen und Zehnerpotenzen eine Million = 1 000 000 = 10 6 eine Milliarde = 1 000

Mehr

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen. Themen der Übung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 9.10.01 1 Bedingte Anweisungen Vergleiche und logische Operatoren 3 Fallunterscheidungen 4 Zeichen und Zeichenketten

Mehr

Pollards Rho-Methode zur Faktorisierung

Pollards Rho-Methode zur Faktorisierung C A R L V O N O S S I E T Z K Y Pollards Rho-Methode zur Faktorisierung Abschlusspräsentation Bachelorarbeit Janosch Döcker Carl von Ossietzky Universität Oldenburg Department für Informatik Abteilung

Mehr

Schleifeninvarianten. Dezimal zu Binär

Schleifeninvarianten. Dezimal zu Binär Schleifeninvarianten Mit vollstandiger Induktion lasst sich auch die Korrektheit von Algorithmen nachweisen. Will man die Werte verfolgen, die die Variablen beim Ablauf eines Algorithmus annehmen, dann

Mehr

4 Kryptologie. Übersicht

4 Kryptologie. Übersicht 4 Kryptologie Übersicht 4.1 Der erweiterte euklidische Algorithmus................................ 38 4.2 Rechnen mit Restklassen modulo p................................... 39 4.3 Der kleine Satz von

Mehr

Ideen und Konzepte der Informatik. Programme und Algorithmen Kurt Mehlhorn

Ideen und Konzepte der Informatik. Programme und Algorithmen Kurt Mehlhorn Ideen und Konzepte der Informatik Programme und Algorithmen Kurt Mehlhorn November 2016 Algorithmen und Programme Algorithmus = Schritt-für-Schritt Vorschrift zur Lösung eines Problems. Formuliert man

Mehr

Wahrscheinlichkeitsrechnung und Statistik

Wahrscheinlichkeitsrechnung und Statistik 6. Vorlesung - 2018 Diskrete ZG eine diskrete ZG X wird vollständig durch ihre Wahrscheinlichkeitsverteilung beschrieben ( ) x1 x X 2... x i... = p 1 p 2... p i... P(X (a, b]) = und die Verteilungsfunktion

Mehr

Zufallsvariable und Wahrscheinlichkeiten mit GeoGebra

Zufallsvariable und Wahrscheinlichkeiten mit GeoGebra Zufallsvariable und Wahrscheinlichkeiten mit GeoGebra 1. Münzwurf Wir wollen das 100-malige Werfen einer idealen Münze simulieren. Gehe dazu wie folgt vor: a) Gib in die Zelle A1 des Tabellen-Fensters

Mehr

Vierte Schularbeit Mathematik Klasse 7A G am xx

Vierte Schularbeit Mathematik Klasse 7A G am xx Vierte Schularbeit Mathematik Klasse 7A G am xx.05.2016 SCHÜLERNAME: Punkte im ersten Teil: Punkte im zweiten Teil: Davon Kompensationspunkte: Note: Notenschlüssel: Falls die Summe der erzielten Kompensationspunkte

Mehr

Der Weg eines Betrunkenen

Der Weg eines Betrunkenen Der Weg eines Betrunkenen 2 Hätte es damals schon Computer gegeben, wäre es für unseren Mathematiker um einiges leichter gewesen, den Weg des Betrunkenen zu bestimmen. Er hätte nicht nur eine beliebige

Mehr

Numerisches Programmieren, Übungen

Numerisches Programmieren, Übungen Technische Universität München SS 2012 Institut für Informatik Prof. Dr. Thomas Huckle Dipl.-Inf. Christoph Riesinger Dipl.-Math. Alexander Breuer Dipl.-Math. Dipl.-Inf. Jürgen Bräckle Dr.-Ing. Markus

Mehr

Programmiertechnik II

Programmiertechnik II Zufallszahlen Motivation Simulation Frisörbeispiel Stichprobenauswahl Telefonumfragen Numerische Algorithmen naives Beispiel: Berechnung von Pi Automatisiertes Testen Beispiel aus Übungsaufgabe "Faire"

Mehr

Neun Punkte auf dem Einheitskreis ( ( )). In der

Neun Punkte auf dem Einheitskreis ( ( )). In der Hans Walser, [20100228a] Radlinien als Enveloppen Anregung: J. W., B.-M. 1 Sehnen im Kreisraster Wir wählen eine Modulzahl m! und zeichnen auf dem Einheitskreis m Punkte P n in regelmäßigen Abständen.

Mehr

8.1 Proportionalität. 8.2 Funktionen Proportionale Zuordnungen Funktion. P = x y ist der Vorrat von 6000g.

8.1 Proportionalität. 8.2 Funktionen Proportionale Zuordnungen Funktion. P = x y ist der Vorrat von 6000g. Gmnasium bei St. Anna, Augsburg Seite Grundwissen 8. Klasse 8. Proportionalität 8.. Proportionale Zuordnungen Gehört bei einer Zuordnung zweier Größen zu einem Vielfachen der einen Größe das gleiche Vielfache

Mehr

Ideen und Konzepte der Informatik

Ideen und Konzepte der Informatik Ideen und Konzepte der Informatik Programme und Algorithmen Antonios Antoniadis 23. Oktober 2017 Algorithmen und Programme Algorithmus Schritt-für-Schritt Vorschrift zur Lösung eines Problems. Formuliert

Mehr

3. RAM als Rechnermodell

3. RAM als Rechnermodell 3. RAM als Rechnermodell Motivation Wir möchten Berechnungsvorschriften (Algorithmen) formal beschreiben und deren Eigenschaften wie Korrektheit und Laufzeit analysieren Rechnermodell abstrahiert vom verwendeten

Mehr

Näherung für π durch das Werfen von Münzen

Näherung für π durch das Werfen von Münzen Näherung für durch das Werfen von Münzen Simulation und Herleitung für die Formel mit Exkursen u. a. in die Stochastik und die Integralrechnung Wirft man geradzahlig oft (also n-mal mit n N )eine Münze,

Mehr

6. Klasse. 1. Zahlen 1.1. Brüche und Bruchteile

6. Klasse. 1. Zahlen 1.1. Brüche und Bruchteile 1. Zahlen 1.1. Brüche und Bruchteile 1.2.Die Menge der rationalen Zahlen => Die Menge aller Brüche, wobei die Zähler eine beliebige ganze Zahl und die Nenner eine ganze Zahl außer Null sein dürfen nennt

Mehr

Randomisierte Algorithmen am Beispiel Quicksort

Randomisierte Algorithmen am Beispiel Quicksort Randomisierte Algorithmen am Beispiel Quicksort Mathias Katzer Universität 28. Juli 2003 Mathias Katzer 0 Überblick Motivation: Begriff Randomisierung Quicksort Stochastik-Ausflug Effizienzanalyse Allgemeineres

Mehr

4 Probabilistische Analyse und randomisierte Algorithmen

4 Probabilistische Analyse und randomisierte Algorithmen Algorithmen und Datenstrukturen 96 4 Probabilistische Analyse und randomisierte Algorithmen Bei der Algorithmenanalyse ist es sehr hilfreich, Aspekte berücksichtigen zu können, die vom Zufall abhängen.

Mehr

Pseudozufallsgeneratoren

Pseudozufallsgeneratoren Pseudozufallsgeneratoren In welchen kryptographischen Verfahren werden keine Zufallszahlen benötigt? Wie generiert man Zufallszahlen in einer deterministischen Maschine wie dem Computer? Wenn man eine

Mehr

Klausur. 18. Juli 2008, 10:15-12:15 Uhr. Name:... Matrikelnummer:... Anzahl beschriebener Blätter (ohne Aufgabenblatt):... D(p) : Y = p x X + p y

Klausur. 18. Juli 2008, 10:15-12:15 Uhr. Name:... Matrikelnummer:... Anzahl beschriebener Blätter (ohne Aufgabenblatt):... D(p) : Y = p x X + p y GRUNDZÜGE DER ALGORITHMISCHEN GEOMETRIE Klausur 18. Juli 2008, 10:15-12:15 Uhr Name:................................... Matrikelnummer:................................... Anzahl beschriebener Blätter (ohne

Mehr

In einem mathematischen Modell wird dies beschrieben durch einen funktionalen Zusammenhang: x = f (t).

In einem mathematischen Modell wird dies beschrieben durch einen funktionalen Zusammenhang: x = f (t). Aktueller Überblick 0 Einführende Worte ( ) 1 Geschichtlicher Überblick ( ) 2 Zufall 3 Perfekte Sicherheit und ihre Grenzen 4 Angriffsszenarien 5 Der komplexitätstheoretische Ansatz 6 Pseudozufallsgeneratoren

Mehr

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Algorithmen mit konstantem Platzbedarf: Die Klasse REG Algorithmen mit konstantem Platzbedarf: Die Klasse REG Sommerakademie Rot an der Rot AG 1 Wieviel Platz brauchen Algorithmen wirklich? Daniel Alm Institut für Numerische Simulation Universität Bonn August

Mehr

Grundlagen der Programmierung

Grundlagen der Programmierung Grundlagen der Programmierung Dr. Tom Kamphans 1. Vorlesung 12.10.2016 1 Organisatorisches Vorlesung: Mittwochs 14:00 15:30, Raum F 201 Übung: Mittwochs 15:45 19:00, Raum F 225 Übung: alle zwei Wochen

Mehr

1 Zahlentheorie. 1.1 Kongruenzen

1 Zahlentheorie. 1.1 Kongruenzen 3 Zahlentheorie. Kongruenzen Der letzte Abschnitt zeigte, daß es sinnvoll ist, mit großen Zahlen möglichst einfach rechnen zu können. Oft kommt es nicht darauf, an eine Zahl im Detail zu kennen, sondern

Mehr

Stochastik - Kapitel 2

Stochastik - Kapitel 2 " k " h(a) n = bezeichnet man als die relative Häufigkeit des Ereignisses A bei n Versuchen. n (Anmerkung: für das kleine h wird in der Literatur häufig auch ein r verwendet) k nennt man die absolute Häufigkeit

Mehr

Lösungsvorschläge zur Hauptklausur Datenstrukturen

Lösungsvorschläge zur Hauptklausur Datenstrukturen Lösungsvorschläge zur Hauptklausur 9 9 166211663 Datenstrukturen 9. August 2003 Seite 2 Lösungsvorschlage zur Klausur vom 9.08.2003 Kurs 166211663,,Datenstrukturen" Aufgabe 1 Bei jedem rekursiven Aufruf

Mehr

Selbsteinschätzungstest

Selbsteinschätzungstest D-MATH ETHZ-Semesterbeginn HS 05 Selbsteinschätzungstest Dieser Test bietet Ihnen die Möglichkeit, Ihre mathematischen Schulkenntnisse abzurufen und zu überprüfen. Die Teilnahme ist freiwillig. Bei jeder

Mehr

Aufgabe S 1 (4 Punkte)

Aufgabe S 1 (4 Punkte) Aufgabe S 1 (4 Punkte) Bei einer Folge a 1, a 2, a 3,... ist a 1 = 7 2 = 49. Für das nächste Glied der Folge nimmt man die Quersumme der Zahl, addiert 1 und quadriert diese Zahl, also a 2 = (4 + 9 + 1)

Mehr

Das Problem des Handlungsreisenden

Das Problem des Handlungsreisenden Seite 1 Das Problem des Handlungsreisenden Abbildung 1: Alle möglichen Rundreisen für 4 Städte Das TSP-Problem tritt in der Praxis in vielen Anwendungen als Teilproblem auf. Hierzu gehören z.b. Optimierungsprobleme

Mehr

Ein Seminarbericht von Johann Basnakowski

Ein Seminarbericht von Johann Basnakowski Ein Seminarbericht von Johann Basnakowski Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität Hamburg Name: Johann Basnakowski

Mehr

Zufallszahlen Mathematik zum Nachbilden von Zufälligkeit SommerUni 2013 Bergische Universität Wuppertal Autor: Prof. Dr.

Zufallszahlen Mathematik zum Nachbilden von Zufälligkeit SommerUni 2013 Bergische Universität Wuppertal Autor: Prof. Dr. Zufallszahlen Mathematik zum Nachbilden von Zufälligkeit SommerUni 23 Bergische Universität Wuppertal Autor: Prof. Dr. Roland Pulch Aufgabe: Konstruiere Zufallszahlen aus der Menge {,, 2, 3, 4, 5, 6, 7,

Mehr

Selbsteinschätzungstest

Selbsteinschätzungstest D-MATH ETHZ-Semesterbeginn HS 0 Selbsteinschätzungstest Dieser Test bietet Ihnen die Möglichkeit, Ihre mathematischen Schulkenntnisse abzurufen und zu überprüfen. Die Teilnahme ist freiwillig. Bei jeder

Mehr

6.5 Konstruktion und Zufallserzeugung von Repräsentanten

6.5 Konstruktion und Zufallserzeugung von Repräsentanten 274 6.5 Konstruktion und Zufallserzeugung von Repräsentanten Hat man mit Hilfe einer Bahnenabzählung eine Übersicht über die Anzahl unnumerierter Strukturen, wie z.b. unnumerierter Graphen mit n Punkten,

Mehr

Grundlagen der Theoretischen Informatik: Übung 10

Grundlagen der Theoretischen Informatik: Übung 10 Grundlagen der Theoretischen Informatik: Übung 10 Joachim Selke Fachgebiet Theoretische Informatik Universität Hannover 20. Januar 2005 Turing-Maschinen als Rechenmaschinen gegeben sei eine Funktion f

Mehr

Übersicht. 3.1 Datendarstellung durch Zeichenreihen. 3.2 Syntaxdefinitionen. 3.3 Algorithmen

Übersicht. 3.1 Datendarstellung durch Zeichenreihen. 3.2 Syntaxdefinitionen. 3.3 Algorithmen Übersicht 3.1 Datendarstellung durch Zeichenreihen 3.2 Syntaxdefinitionen Einführung in die Programmierung 3. Daten und Algorithmen 31 Nachdem wir bisher in Kapitel 3 die Eigenschaft eindeutige Datendarstellung

Mehr

1 Algorithmische Grundlagen

1 Algorithmische Grundlagen 1 Algorithmische Grundlagen Klocke/17.03.2003 1.1 1.1 Begriffsklärung Fragen Begriffsklärungen Abstraktionsebenen für Algorithmen und Datenstrukturen Algorithmus Qualität von Algorithmen Klocke/17.03.2003

Mehr

c) Zeigen Sie, dass dieses Parallelogramm AOBC kein Rhombus und auch kein Rechteck ist.

c) Zeigen Sie, dass dieses Parallelogramm AOBC kein Rhombus und auch kein Rechteck ist. Fach Klassen Mathematik alle 5. Klassen Dauer der Prüfung: Erlaubte Hilfsmittel: 4 Std. Fundamentum Mathematik und Physik Taschenrechner TI-83 Plus inkl. Applikation CtlgHelp Vorbemerkungen: 1. Ergebnisse

Mehr

JAHRGANGSSTUFE 5 Prozessbezogene Kompetenzen Inhaltsbezogene Kompetenzen

JAHRGANGSSTUFE 5 Prozessbezogene Kompetenzen Inhaltsbezogene Kompetenzen JAHRGANGSSTUFE 5 Prozessbezogene Kompetenzen Inhaltsbezogene Kompetenzen ELEMENTE DER MATHEMATIK 5 Schroedel Verlag Argumentieren Problemlösen Modellieren Werkzeuge Arithmetik/ Algebra Funktionen Geometrie

Mehr

Vorbemerkungen. Die Programmieroberfläche des ClassPad

Vorbemerkungen. Die Programmieroberfläche des ClassPad Vorbemerkungen Erfahrungen zeigen, dass die Programmiermöglichkeiten des ClassPad im Unterricht kaum genutzt werden. Dabei bieten aus unserer Sicht viele Situationen die Gelegenheit, die Programmieroberfläche

Mehr

Tag der Mathematik 2018

Tag der Mathematik 2018 Tag der Mathematik 08 Gruppenwettbewerb Einzelwettbewerb Mathematische Hürden Aufgaben mit en und Punkteverteilung Tag der Mathematik 08 Hinweise für Korrektoren Generell gilt: Zielführende Zwischenschritte

Mehr

Das Jahr der Mathematik

Das Jahr der Mathematik Das Jahr der Mathematik Eine mathematische Sammlung - kinderleicht Thomas Ferber Forschung und Lehre Sun Microsystems GmbH Die Themen 1 2 Sind die Zahlen universell? π-day 3 Die Eine Million $-Frage 4

Mehr

Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken

Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken Aufgabe 1.60 a) Welchen Wert erhält die boolesche Variable z in folgendem Beispiel? int i = 2, j = 5; boolean

Mehr

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML. JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung

Mehr

Mathe-Camp 2017 Stochastik: Geometrische Wahrscheinlichkeiten

Mathe-Camp 2017 Stochastik: Geometrische Wahrscheinlichkeiten Mathe-Camp 2017 Stochastik: Geometrische Wahrscheinlichkeiten Jo rn Saß, sass@mathematik.uni-kl.de Fachbereich Mathematik, TU Kaiserslautern Arbeitsgruppe Stochastische Steuerung und Finanzmathematik Kaiserslautern

Mehr

P 0 f (0) schneidet die Gerade mit der Gleichung x Ermitteln Sie die Koordinaten von S.

P 0 f (0) schneidet die Gerade mit der Gleichung x Ermitteln Sie die Koordinaten von S. Zentralabitur 015 im Fach Mathematik Analysis 1 Im nebenstehenden Bild sind die Graphen dreier Funktionen f, g und h dargestellt Geben Sie an, bei welcher der drei Funktionen es sich um eine Stammfunktion

Mehr

Kryptographische Protokolle

Kryptographische Protokolle Kryptographische Protokolle Lerneinheit 2: Generierung von Primzahlen Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Wintersemester 2018/2019 15.11.2018 Einleitung Einleitung Diese Lerneinheit

Mehr

Elemente der SchulgeometrieGrundschule. Aufgabenblatt 4 Flächeninhalt

Elemente der SchulgeometrieGrundschule. Aufgabenblatt 4 Flächeninhalt Elemente der SchulgeometrieGrundschule Aufgabenblatt 4 Flächeninhalt Achtung Fehler!! Alle Punkte auf der Kreislinie sind gleichweit von Mittelpunkt des Kreises entfernt. Die Distanz entspricht dem Radius

Mehr

Mathematik II für Studierende der Informatik. Wirtschaftsinformatik (Analysis und lineare Algebra) im Sommersemester 2016

Mathematik II für Studierende der Informatik. Wirtschaftsinformatik (Analysis und lineare Algebra) im Sommersemester 2016 und Wirtschaftsinformatik (Analysis und lineare Algebra) im Sommersemester 2016 5. Juni 2016 Definition 5.21 Ist a R, a > 0 und a 1, so bezeichnet man die Umkehrfunktion der Exponentialfunktion x a x als

Mehr

Simulation eines Quantencomputers

Simulation eines Quantencomputers Simulation eines Quantencomputers J. Metzner, M. Schmittfull Simulation eines Quantencomputers p.1/34 Ziele des Projekts Entwicklung einer leistungsfähigen und effizienten Simulation eines Quantencomputers

Mehr

Vorlesung 3a. Der Erwartungswert. von diskreten reellwertigen Zufallsvariablen

Vorlesung 3a. Der Erwartungswert. von diskreten reellwertigen Zufallsvariablen Vorlesung 3a Der Erwartungswert von diskreten reellwertigen Zufallsvariablen 0. Diskrete reellwertige Zufallsvariable X sei eine Zufallsvariable, deren Zielbereich R (die Menge der reellen Zahlen) oder

Mehr

Nr. 4: Pseudo-Zufallszahlengeneratoren

Nr. 4: Pseudo-Zufallszahlengeneratoren Proseminar: Finanzmathematische Modelle und Simulationen Martin Dieckmann WS 09/0 Nr. 4: Pseudo-Zufallszahlengeneratoren Begriff Pseudo-Zufallszahl Zufallszahlen im Rechner entstehen letztlich immer durch

Mehr