Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSC 110 – Fluency in Information Technology Chapter 20: The random function and Chaos Dr. Curry Guinn.

Similar presentations


Presentation on theme: "CSC 110 – Fluency in Information Technology Chapter 20: The random function and Chaos Dr. Curry Guinn."— Presentation transcript:

1 CSC 110 – Fluency in Information Technology Chapter 20: The random function and Chaos
Dr. Curry Guinn

2 Today’s Class Random Number Generation Randomness and Chaos Theory

3 Math.random() A common operation we want to perform with computers is to generate a random number We use this for Games (random shuffle, random throw of dice) Running simulations Having our programs (like games) behave in ways we haven’t seen before HiLo.java

4 How can a deterministic machine generate a random number?
Remember: Computers are deterministic Given the same instructions, they perform the same thing every time So what’s random? Random numbers are generated using a pseudo-random number generator (PNG). The numbers aren’t really random but the sequence is so complex, humans can’t see the patterns. random_seed = random_seed * ; random_number = (random_seed / 65536) % 32768 Random.htm

5 Seeding a pseudo-random number generator
The PNGs that computers use will generate the exact same “random” series of numbers given the same initial input (called the seed) Some common seeds that computers use Number of seconds since 1900 Number of milliseconds since the machine was booted Scientist often control the seed so they can run exactly the same “random” experiment again

6 Case Study: Online Poker Room
The Link: The Setting 1999 PlanetPoker internet card room Texas Hold’Em PlanetPoker published their random shuffling algorithm to demonstrate their integrity Common practice among internet card rooms

7 How many possible shuffles in Poker?
There are 52 cards so … 52 possibilities for the top card 51 possibilities for the 2nd card 50 possibilities for the 3rd card 52*51*50*…*2*1 = 52! 2^ … a really, really big number Approximately 10^68

8 PlanetPoker’s PNG Randomize() uses the number of milliseconds since midnight There are only 86,400,000 milliseconds in a day Therefore, they can only generate 86,400,000 possible shuffles (much less than 10^68) Further, by synchronizing with their clock, you can get very close to guessing their time

9 Texas Hold’Em In Texas Hold’Em, each player gets two down cards and then all the players will share five up cards After an initial round of betting, where the players only see their hole cards, the first 3 shared cards are turned face up (called the flop)

10 At the time of the flop At the flop, a player knows a sequence of 5 cards in the shuffle. What is the likelihood of seeing those 5 cards in a shuffle? 52*51*50*49*48 1 in 311,875,200 These odds are such that we can find the “random” shuffle out of the set of 86,000,000 possible decks Once we find it, we know the all the cards dealt (and to be dealt) (Further, we also know what seed they used for that shuffle making it easier to synchronize our clocks)

11 What Poker Rooms Do Now Seed is modified by PokerStars
User input: mouse movements, timing events True hardware random number generators (Intel’s for instance uses thermal “noise”) Other hardware solutions: quantum mechanics PokerStars

12 What is Chaos Theory? Traditional notion of chaos – unorganized, disorderly, random etc. But Chaos Theory has little to do with that traditional notion On the contrary, it actually tells you that not all that ‘chaos’ you see is due to chance, or random or caused by unknown factors Oxymoron term coined “Deterministic Randomness” Chaos Theory – It’s about the deterministic factors (non-linear relationships) that cause things to look random

13 A Simple Equation Xt = Xt-12 + c Chaos.zip If c = -1.1

14

15

16

17 C = -1.9

18 Chaotic Systems are Extremely Vulnerable to Initial Conditions
The Butterfly Effect

19

20 Initial Conditions X(t0), Y(t0), Z(t0)...
Clockwork Universe determimistic non-chaotic Initial Conditions X(t0), Y(t0), Z(t0)... Can compute all future X(t), Y(t), Z(t)... Equations

21 Initial Conditions X(t0), Y(t0), Z(t0)...
Chaotic Universe determimistic chaotic Initial Conditions X(t0), Y(t0), Z(t0)... sensitivity to initial conditions Can not compute all future X(t), Y(t), Z(t)... Equations

22 Why Should You Care? Any complex process is vulnerable to chaotic behavior Weather Financial systems Economic theory Stock market Population models Physics Biology Chemistry


Download ppt "CSC 110 – Fluency in Information Technology Chapter 20: The random function and Chaos Dr. Curry Guinn."

Similar presentations


Ads by Google