Slumpmässiga tal i datorer Johan Hjerling Institutionen för informationsbehandling 2004 4.

Slides:



Advertisements
Liknande presentationer
Talföljder formler och summor
Advertisements

Andragradsfunktioner & Andragradsekvationer
Föreläsning 6 Slumptal Testa slumptal Slumptal för olika fördelningar
Dator.
Att skapa förutsättningar för ny teknik Anna Johnson Industriell dynamik, Chalmers
Kräkseminarium Bo Ahrenfeldt
hej och välkomna EKVATIONER Ta reda på det okända talet.
FL4 732G70 Statistik A Detta är en generell mall för att göra PowerPoint presentationer enligt LiUs grafiska profil. Du skriver in din rubrik,
Ruttplanering Vad är det??.
Funktioner och programorganisation
Debattartiklar.
Leif Håkansson’s Square Dancer Rotation
Som man frågar får man svar. Vad är intressant? Varför?
Föreläsning 7 Analys av algoritmer T(n) och ordo
Predicting protein folding pathways.  Mohammed J. Zaki, Vinay Nadimpally, Deb Bardhan and Chris Bystroff  Artikel i Bioinformatics 2004.
Familj, föräldrar och barn
Arrays Indicerade variabler.
Programmeringsteknik K och Media
Växjö 21 april -04Språk & logik: Kontextfria grammatiker1 DAB760: Språk och logik 21/4: Kontextfria 10-12grammatiker Leif Grönqvist
Grundläggande programmering
Distribuerade filsystem
© Patrick Blackburn, Johan Bos & Kristina Striegnitz FL 5: Aritmetik Teori –Introducerar Prologs inbyggda operationer för aritmetik –Tillämpar dessa på.
MaB: Andragradsekvationer
STOCKHOLMS UNIVERSITETSBIBLIOTEK Te l e f o n v x l: F ax: w w w.s u b.s u.se Källkritik Värdera sanningshalt Bedöma trovärdighet.
Handel i världen - varför då?
Algebraiska uttryck Matematik 1.
Effektstyrning® av IT Vad är det? Varför då? Hur gör man?
OOP F4:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 4 Metoder klass-metoder instans-metoder.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 6 ( ) INNEHÅLL: -Mera om tabeller.
Föreläsning 4 Kö Implementerad med array Implementerad med länkad lista Djup kontra bredd Bredden först mha kö.
1. Vik ett papper så att du får 9 lika stora bitar
Olika test Andrea Watson Athley Sverige ska ha löst miljöproblemen till 2020 Miljömål 40% mindre energibehov ?
Positiv Livskraft © Att komma dit du vill
Felkalkyl Ofta mäter man inte direkt den storhet som är den intressanta, utan en grundläggande variabel som sedan används för att beräkna det som man är.
Dagens ämnen Vektorrum Underrum Linjärt hölje
Beräkningsmallen för gemensamma kostnader integreras i Raindance Budget & Prognos EA
Sociala och kulturella fenomen Livsstilar och kroppsideal
Problemlösning Veckodagsproblemet Gissa talet Siffersumman.
Ekvationssystem - Exempel
Det finns i V en operation kallad addition, betecknad + sådan att
Lektion 4 Mahmud Al Hakim
1 Strategier för minskad klimatpåverkan - framtidsbilder för markanvändning på landsbygden Rebecka Milestad, Åsa Svenfelt & Kalle Dreborg.
JORDENS INRE OCH YTTRE KRAFTER
Institutionen för datavetenskap vid Helsingfors universitet PB 68 Gustaf Hällströms gata 2b Helsingfors universitet
Skoluniform – en punkares mardröm? Jon Franzén Umeå Universitet VT 2006.
Simulering Introduktion Exempel: Antag att någon kastar tärning
Kombinerade serie- och parallellnät
Kort om Projektplanering
Varför läsa ett språk till i åk 8 och 9?
Fysikexperiment, 5p1 Random Walk 36 försök med Random walk med 1000 steg. Beräknad genomsnittlig räckvidd är  1000  32. Visualisering av utfallsrum.
1 Ingenjörsmetodik IT & ME 2007 Föreläsare Dr. Gunnar Malm.
Föreläsning 16 Logik med tillämpningar Innehåll u Information kring kursvärdering och tentagenomgång u Genomgång av övningstenta 2.
Matematiska institutionen Linköpings universitetet
Föreläsning 14 Logik med tillämpningar Innehåll u Cuts och negation u Input/output u Extralogiska predikat u Interaktiva program, failure-drivna.
Föreläsning2 Operativsystem.
Malmö högskola Rolf Axelsson 2003/2004 DA7231, 4 poäng while-loop do-loop continue, break PROJEKT Föreläsning 5.
IE1206 Inbyggd Elektronik F1 F2
7/14/2015 HS-1 Händelsestyrd Simulering – Inledning ”Simulering med modeller av händelsetyp” Händelsemodeller är lämpliga för vissa problemtyper (system).
Algoritmer och loopar Algoritmer, beräkningsbarhet
Lärande, enligt PUH om hur du kan bli ägare av ditt eget lärande
Musikkompendium Test. Musikkompendium Test 2 Musikkompendium Test 3.
Lars Madej  Talmönster och talföljder  Funktioner.
Manada.se Algebra och funktioner. 1.1 Algebra och polynom Förkunskaper: Grundläggande algebra Konjugatregeln och kvadreringsreglerna Andragradsekvationer.
Manada.se Kapitel 4 Ekvationer och formler. 4.1 Ekvationer och uttryck.
Kreativa verktyg och metoder
Det finns i V en operation kallad addition, betecknad + sådan att
Diagram, kombinatorik & sannolikhet
ÄMNESHJUL MATEMATIK ÅK 3
Kap 1 - Algebra och funktioner
Algoritmer.
Presentationens avskrift:

Slumpmässiga tal i datorer Johan Hjerling Institutionen för informationsbehandling

Var ligger problemet? Vad är ett slumpmässigt valt tal? Vad används slumptal till i datorer? Varför är det svårt för datorer att generera slumptal? Slumpmässiga tal i datorer, Johan Hjerling 12

Slumptalsgeneratorer Mitten-kvadrerad metoden Linjärt kongruerande metoden RANROT Slumpmässiga tal i datorer, Johan Hjerling 6

Mitten-kvadrerad metoden r 1 = 8269 r 2 = 3763 ((r 1 ) 2 = ) r 3 = 1601 ((r 2 ) 2 = ) Degenerering 1, 0 2 = 0 Degenerering 2, 6100, 2100, 4100, 8100, Relativt svåra beräkningar Ej likformigt fördelad Slumpmässiga tal i datorer, Johan Hjerling 2

Linjärt kongruerande metoden X n+1 = (aX n + c) mod m (n ≥ 0) m (modulus): 0 < m a (multiplikand): 0 ≤ a < m c (inkrementeringsvärde):0 ≤ c < m X 0 (startvärde, frö):0 ≤ X 0 < m D.H. Lehmer, Som grund för de flesta standard slumptalsgeneratorer. Val av variabelvärden viktigt för periodens längd. Slumpmässiga tal i datorer, Johan Hjerling 9

14

Modulus (m) X n+1 = (aX n + c) mod m Bestämmer den maximala längden av perioden. För att förenkla beräkningar, gärna 2 b. Om m väljs till datorns arkitekturs fördel kan modulo-operationen lämnas bort. Slumpmässiga tal i datorer, Johan Hjerling m = 12 a = 56, 11, 0, 5, 6, 11, 0, 5, 6,... c = 5 X 0 = 5 5

Multiplikand (a) X n+1 = (aX n + c) mod m Väljs a = 1 får formeln formen X n = (X 0 + nc) mod m. Väljs a = 0 genereras c varje gång. a ≥ 2 och gärna 0,01m < a < 0,99m. Slumpmässiga tal i datorer, Johan Hjerling m = 2 32 = a = 1 c = 1134, 135, 136, 137,… X 0 = 133 3

Inkrementeringsvärde (c) X n+1 = (aX n + c) mod m Lämnas ofta bort men minskar då på perioden. Gärna lite gemensamt med m. ( aX n + c > m ) Slumpmässiga tal i datorer, Johan Hjerling Startvärde, frö (X 0 ) X n+1 = (aX n + c) mod m Samma frö upprepar slumptalsserien. Ofta används datorns klockan som frö. 10

Problem med L-K-M Hyperplan i k-dimensionen. Lösning: Shuffle procedure Slumpmässiga tal i datorer, Johan Hjerling 7

RANROT(-A) X n = ((X n-j + X n-k ) mod 2 b ) rotr r 1 < j < n 1 < k < n 2 b = 2-exponentiellt tal rotr 3 betyder rotera 3 steg. ( rotr 3 = ) Varianterna B, B3 och W roterar vid annat skede av beräkningen eller använder annat antal grundsiffror. Slumpmässiga tal i datorer, Johan Hjerling RANROT-A = 25 = rotr 3 = = 7 RANROT-B = ( rotr 3) + ( rotr 3) = = = 38 13

Testa slumptalsgeneratorer Frekvenstest – är slumptalen likformigt fördelade? Serietest – är par (tretal, fyrtal, etc.) av efter varandra följande tal likformigt fördelade? Lucktest – är luckorna eller avståndet mellan talen likformigt fördelade? Kollisionstest – om talen kategoriseras med hjälp av en hashfunktion, hur många kollisioner uppstår? Slumpmässiga tal i datorer, Johan Hjerling 8

Användning av slumptal Monte Carlo-metoden  Egentligen inte likformigt fördelad Slumpmässiga tal i datorer, Johan Hjerling 11 Slumptalet mod w

Användning av slumptal Las Vegas-metoden  Likformigt fördelad Slumpmässiga tal i datorer, Johan Hjerling 1 Slumptalet * m / w * heltalsdivision