複製鏈接
請複製以下鏈接發送給好友

平方取中法

鎖定
平方取中法(midsquare method)是產生[0,1]均勻分佈隨機數的方法之一,亦稱馮·諾伊曼取中法,最早由馮·諾伊曼(John von Neumann,1903-1957)提出的一種產生均勻偽隨機數的方法。此法將一個2s位十進制隨機數平方後得到的一個4s位數,去頭截尾取中間2s位數作為一個新的隨機數,重複上述過程可得到一個偽隨機數列 [1] 
中文名
平方取中法
外文名
Mid—square Method、Middle-square method
別    名
馮·諾伊曼取中法
應    用
一種產生均勻偽隨機數的方法
提出者
馮·諾伊曼

平方取中法基本介紹

平方取中法是馮·諾依曼提出的。此法開始取一個2s位的整數,稱為種子,將其平方,得4s位整數(不足4s位時高位補0),然後取此4s位的中間2s位作為下一個種子數,並對此數規範化(即化成小於1的2s位的實數值),即為第一個(0,1)上的隨機數。以此類推,即可得到一系列隨機數。
式中,
是2s位的十進制數,
表示將
除以
後取整,
表示以
為模。
此法優點是計算簡單,在歷史上曾令人很感興趣,但它有許多缺點:首先很難説明取什麼樣的種子值可保證有足夠長的週期;其次容易退化為一常數,甚至退化為零,因為一旦有一個數為零,以後的數都將為零 [2] 

平方取中法平方取中法的兩種推廣形式

平方取中法有兩種推廣形式:
(1)乘法取中法(mid-product method)
(2)常數乘子法(constant multiplier method)
以上兩式中
意義如式(1),k為2s位十進制常數。
平方取中法及其兩種推廣的成功與否與種子及常數的選取關係很大。一般説來,s值很大時,種子取值也很大,可使退化推遲,週期加長 [2] 

平方取中法例題解析

【例1】取
,模為10 000,則有
【例2】取
,則有
可見,若取種子為6 500,則週期為1。若在某一隨機數列中出現6 500,則以後的數都是2 500,即進入退化狀態 [2] 
參考資料
  • 1.    陸雄文.管理學大辭典:上海辭書出版社,2013
  • 2.    李向文,林國順.集裝箱堆場物流系統模擬:大連海事大學出版社,2014.06