{"id":695,"date":"2009-05-26T12:36:48","date_gmt":"2009-05-26T16:36:48","guid":{"rendered":"http:\/\/mat.tepper.cmu.edu\/blog\/?p=695"},"modified":"2009-05-26T12:36:48","modified_gmt":"2009-05-26T16:36:48","slug":"a-better-random-number-generator","status":"publish","type":"post","link":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/2009\/05\/26\/a-better-random-number-generator\/","title":{"rendered":"A Better Random Number Generator?"},"content":{"rendered":"<p>In operations research, we often use &#8220;random&#8221; numbers.\u00a0 Whether we are doing a simulation of a manufacturing facility, generating future economic scenarios in financial optimization, or creating &#8220;random&#8221; instances to test our algorithms, we use up lots of random numbers.\u00a0 <a href=\"http:\/\/www.terrypratchettbooks.com\/\">Terry Pratchett<\/a> might wonder whether we are using up all the randomness in our need for these values!<\/p>\n<p>For the most part, our &#8220;random&#8221; numbers are not that at all:\u00a0 they are numbers generated by a particular formula, the results of which pass certain tests for randomness.\u00a0\u00a0\u00a0 But any random number generator has flaws and patterns.\u00a0\u00a0\u00a0 A &#8220;weak&#8221; random number generator (think of the &#8220;middle square approach&#8221; where a number is squared and the middle part is used as the random number, and seed for the next squaring) will quickly show its flaws, while a strong one will hide its patterns longer.<\/p>\n<p>But what if you want true randomness?\u00a0 Or, to avoid philsophical and physical discussions, as random as rolling a die?\u00a0 The <a href=\"http:\/\/gamesbyemail.com\/News\/DiceOMatic\">Dice-O-Matic<\/a> can come to your rescue!\u00a0 Able to generate more than a million die rolls per day, the Dice-O-Matic is a great addition to the offices of anyone doing work in simulation.\u00a0 With a footprint of a mere 18&#8243; by 18&#8243; (albeit 7 feet tall), this certainly looks to be about as random as one could hope.\u00a0 And with the periodic melting and squashing of dice (due to the ire of gamers annoyed at an outcome), any biases will quickly be eliminated.<\/p>\n<p><object width=\"425\" height=\"344\"><param name=\"movie\" value=\"http:\/\/www.youtube.com\/v\/7n8LNxGbZbs&#038;hl=en&#038;fs=1\"><\/param><param name=\"allowFullScreen\" value=\"true\"><\/param><param name=\"allowscriptaccess\" value=\"always\"><\/param><\/object><\/p>\n<p>I think we should all include this on our next NSF grant proposals.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In operations research, we often use &#8220;random&#8221; numbers.\u00a0 Whether we are doing a simulation of a manufacturing facility, generating future economic scenarios in financial optimization, or creating &#8220;random&#8221; instances to test our algorithms, we use up lots of random numbers.\u00a0 Terry Pratchett might wonder whether we are using up all the randomness in our need &hellip; <a href=\"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/2009\/05\/26\/a-better-random-number-generator\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;A Better Random Number Generator?&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[],"class_list":["post-695","post","type-post","status-publish","format-standard","hentry","category-computing"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/posts\/695","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=695"}],"version-history":[{"count":0,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/posts\/695\/revisions"}],"wp:attachment":[{"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=695"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=695"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=695"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}