lesson2_random_numbers.ppt

24
Random Numbers

Transcript of lesson2_random_numbers.ppt

Random NumbersTopic OutlineINTRODUCTIONOBJECTIVES HOW TO ENER!TE R!NDO" NU"BERS# $seudorandom Number eneration% Random Numbers in Computer& Usin' t(e RND )unction in B!SIC* Simulatin' Randomness+ $roperties o, a ood Random Number eneratorCONC-USIONSU""!R.IntroductionT(euseo,Randomnumbersliesatt(e,oundationo, modellin' and simulations/Computerapplicationssuc(assimulations0'ames0 'rap(ics0 etc/0 o,ten need t(e abilit1 to 'enerate random numbers ,or suc( application/T(e2ualit1o,arandomnumber'eneratoris proportionaltoitsperiod0ort(enumbero,random numbersitcanproducebe,orearepeatin'patternsets in/ In lar'e3scalesimulations0di4erental'orit(ms5calleds(i,t3re'ister and la''ed3)ibonacci6 can be used0 alt(ou'( t(ese also(a7esomedra8bac9s0combinin't8odi4erent t1pes o, 'eneratorsma1 produce t(e best results/Ob:ecti7esB1t(eendt(elesson0studentss(ouldbe able to;plain properties o, 'ood random number 'eneratorHOW TO ENER!TE R!NDO" NU"BERSRandomNumbercanbede?nedas numberst(ats(o8noconsistent pattern08it(eac(numberinaseries andareneit(era4ectedinan18a1b1 t(eprecedin'number0norpredictable ,rom it/HOW TO ENER!TE R!NDO" NU"BERSOne8a1to'etrandomdi'itsisto simpl1start8it(anarbitrar1number 8it(aspeci?ednumbero,di'its0,or e>ample * di'its/T(e?rst number is called t(eseed/ T(e seed is multiplied b1 a constant number o,t(esamenumbero,di'its5len't(60 and t(e desired number o, di'its is ta9en o4 t(e ri'(t end o, t(e product/HOW TO ENER!TE R!NDO" NU"BERST(eresultbecomest(ene8seed/Itis a'ainmultipliedb1t(eori'inalconstant to'enerateane8product0andt(e process is repeated as o,ten as desired/ T(e result is a series o, di'its t(at appear randoml1distributedast(ou'( 'eneratedb1t(ro8in'adieorspinnin' a 8(eel/ T(is t1pe o, al'orit(m is called a congruential generator/HOW TO ENER!TE R!NDO" NU"BERSeneratin'arandomnumberseries,roma sin'le seed 8or9s ?ne 8it( most simulationst(at rel1 upon 'eneratin' random e7entsundert(econtrolo,probabilities 5"onteCarlo simulations6/Ho8e7er0alt(ou'(t(ese2uenceo,numbers 'enerated,roma'i7enseedisrandoml1 distributed0itisal8a1st(esameserieso, numbers ,or t(e same seed/ T(us0 a computer po9er'amet(atsimpl1useda'i7enseed 8ouldal8a1s'eneratet(esame(ands,or eac( pla1er/HOW TO ENER!TE R!NDO" NU"BERSW(atisneededisalar'ecollectiono, potentialseeds,rom8(ic(onecanbe more or less randoml1 c(osen/ I, t(ere are enou'(possibleseeds0t(eoddso,e7er 'ettin't(esameserieso,numbers become diminis(in'l1small$seudorandom Number enerationrandomnumbersma1be'eneratedb1 (umanbein's,oruseinsimulatin'a s1stemorb1computer,oruse8(ile simulatin' an e7ent/$seudorandom Number eneration8e usuall1 do is to ta9e ,or instance ten pieceso,papersandnumbert(em @0#0%0&0*0+0A0B0C0andD0,oldandplace t(em in a bo>/S(a9et(ebo>andt(orou'(l1mi>t(e slips o, paper/SelectaslipEt(enrecordt(enumber t(at is on it/ Replace t(e slip and repeat t(is procedure o7er and o7er/$seudorandom Number enerationT(eresultantrecordo,di'itsisa realiFed se2uence o, random numbers/!ssumin'1out(orou'(l1mi>t(eslips be,oree7er1dra80t(ent(di'ito,t(e se2uence(asane2ualoruni,orm c(ance o, bein' an1 o, t(e di'its @0 #0%0&0*0+0A0B0C0Dirrespecti7eo,allt(e precedin'di'itsint(erecorded se2uence$seudorandom Number enerationInsomesimulations08euserandom numberst(atarebet8een@and#/)or e>ample0i,1ouneedsuc(numbers8it( ,ourdecimaldi'its0t(en1oucanta9e,our atatime,romt(erecordedse2uenceo, randomdi'its0andplaceadecimalpointin ,ront o, eac( 'roup o, ## ,our/ To illustrate0 i, t(ese2uenceo,di'itsis&+C@C&*%D%A#G t(en t(e ,our decimalplaced random numbers are /&+C@0 /C&*%0 and /D%A#Random Numbers in ComputerHow does computer generate a sequence of random numbers?Random Numbers in ComputerOne8a1istoper,ormt(eabo7eHslip3in3a3bo>I e>periment and t(en store t(e recordedse2uenceinacomputer3bac9in' storePseudo-random number generator/E>pertsincomputerscience(a7ede7ised mat(ematical processes ,or 'eneratin' di'its t(at 1ieldse2uences satis,1in'man1o, t(e statistical properties o, a trul1 random process/ To illustrate0 i,1oue>aminealon'se2uenceo,di'its producedb1deterministic,ormulas0eac(di'it 8illoccur8it(nearl1t(esame,re2uenc10odd numbers 8ill be ,ollo8ed b1 e7en numbers about aso,tenasb1oddnumbers0di4erentpairso, numbersoccur8it(nearl1t(esame,re2uenc10 etc/Sincesuc(aprocessisnotreall1random0it is called pseudo-random number generator/Wa1s o, 'eneratin' pseudo3random numbers are;Computersimulationlan'ua'esand indeedsomepro'rammin'lan'ua'es suc(asB!SIC(a7ebuilt3inpseudo3randomnumber'enerators/In computersimulationsituations8(ere t(is,acilit1isnota7ailableint(e lan'ua'e 1ou are usin'0 1ou 8ill (a7e to 8rite1ouo8npseudo3randomnumber 'eneratorWa1s o, 'eneratin' pseudo3random numbers are;T(e results o, e>periments suc( as t(e one pre7iousl1 describe abo7e are publis(ed in boo9s o, statistical tables/ In (and simulation0 it ma1 be appropriate to use a publis(ed table o, random numbers/Wa1s o, 'eneratin' pseudo3random numbers are;T(e con7entional si>3sided unbiased die ma1 also be used to 'enerate a se2uence o, random di'its in t(e set 5#0 %0 &0 *0 +0 A6 8(ere eac( di'it (as aprobabilit1 #JA o, occurrence/Simulatin' RandomnessSuppose8e8anttosimulatet(e t(ro8in' o, a ,air die/ ! random number bet8een@and#8illnotal8a1ssatis,1 ourneeds/I,t(edieis,air0t(ro8in'it se7eraltimes8ill1ieldaserieso, uni,orml1distributedinte'ers#0%0&0*0+ andA/Conse2uentl18eneedtobe ableto'eneratearandominte'er8it( 7alues in t(e ran'e # and A inclusi7e/$roperties o, a ood Random Number eneratorT(e random numbers 'enerated s(ouldEa/(a7easnearl1aspossibleauni,orm distribution/b/ s(ould be ,ast/c/ not re2uire lar'e amounts o, memor1/d/ (a7e a lon' period/e/ be able to 'enerate a di4erent set o, random numbers or a series o, numbers/,/ not de'enerate/E>erciseCreate a :a7a pro'ram t(at 8ill simulate a roll o, dice to 'enerate a random numbers/CONC-USIONIn t(is unit0 1ou (a7e been introduced to Random Numbers 'enerationSU""!R.W(at 1ou (a7e learnt in t(is unit concern;T(e di4erent 8a1s o, 'eneratin' pseudorandom numbers0T(e properties o, 'ood random number 'eneratorT(e ot(er Random number 'eneratin' met(ods