Download as pdf or txt
Download as pdf or txt
You are on page 1of 19

‫ﺑﺨﺶ دوم‪ :‬آﻣﺎر‬

‫دﯾﺪﯾﻢ ﮐﻪ ﺗﺌﻮری اﺣﺘﻤﺎل ﯾﮏ ﺗﺌﻮری ﮐﺎﻣﻼً رﯾﺎﺿﯽ ﺑﻮد ﮐﻪ ﺑﺮ اﺳﺎس ﯾﮏ اﺻﻮل اوﻟﯿﻪ و اﺳﺘﻨﺘﺎﺟﺎت رﯾﺎﺿﯽ از ﯾﮏ ﻣﺪل ﻣﻔﺮوض )اﺣﺘﻤﺎل‬
‫ﯾﮏ ﺳﺮی وﻗﺎﯾﻊ(‪ ،‬اﺣﺘﻤﺎل وﻗﺎﯾﻊ دﯾﮕﺮی را ﺑﻪ دﺳﺖ ﻣﯽآوردﯾﻢ‪ .‬ﻣﺪﻟﻬﺎ ﻓﺮض ﺷﺪهاﻧﺪ و ﮐﺎری ﺑﻪ اﯾﻨﮑﻪ ﺑﺎ واﻗﻌﯿﺖ ﺗﻄﺎﺑﻖ داﺷﺘﻪ ﺑﺎﺷﻨﺪ ﯾﺎ ﻧﻪ‪،‬‬
‫ﻧﺪارﯾﻢ‪ .‬آﻣﺎر در ﻣﻮرد ﮐﺎرﺑﺮد ﺗﺌﻮری اﺣﺘﻤﺎل در ﻣﺴﺎﺋﻞ واﻗﻌﯽ ﺑﺤﺚ ﻣﯽﮐﻨﺪ و ﮐﻤﮏ ﻣﯽﮐﻨﺪ ﮐﻪ ﺑﻪ وﺳﯿﻠﮥ ﻧﺘﺎﯾﺞ ﻣﺸﺎﻫﺪات واﻗﻌﯽ‬
‫)ﻧﻤﻮﻧﻪﻫﺎﯾﯽ از ﺟﺎﻣﻌﻪ( ﺑﺘﻮاﻧﯿﻢ اﺳﺘﻨﺘﺎﺟﺎﺗﯽ )ﮐﻪ ﺑﻪ اﺣﺘﻤﺎل ﻧﺰدﯾﮏ ﯾﮏ درﺳﺖ ﻫﺴﺘﻨﺪ( اﻧﺠﺎم دﻫﯿﻢ‪ .‬اﻟﺒﺘﻪ اﯾﻦ آﻣﺎر اﺳﺘﻨﺘﺎﺟﯽ اﺳﺖ ﮐﻪ‬
‫ﺑﺤﺚ ﻣﺎ در ﻣﻮرد آن ﺧﻮاﻫﺪ ﺑﻮد‪ .‬ﺷﺎﺧﮥ دﯾﮕﺮ آﻣﺎر‪ ،‬آﻣﺎر ﺗﻮﺻﯿﻔﯽ اﺳﺖ ﮐﻪ در ﻣﻮرد ﻧﺤﻮۀ دﺳﺘﻪﺑﻨﺪی و اراﺋﮥ اﻃﻼﻋﺎت آﻣﺎری ﺑﺤﺚ ﻣﯽﮐﻨﺪ‬
‫)رﺟﻮع ﮐﻨﯿﺪ ﺑﻪ ﮐﺘﺎب ‪ ،Kreyszig‬ﺻﻔﺤﺎت ‪ 838‬ﺗﺎ ‪.(849‬‬

‫ﻣﺒﺤﺚ ﻋﻤﺪۀ آﻣﺎر اﺳﺘﻨﺘﺎﺟﯽ‪ ،‬ﺗﺨﻤﯿﻦ و آزﻣﻮن ﻓﺮﺿﯿﻪ اﺳﺖ ﮐﻪ ﻫﺮ دو ﮐﺎرﺑﺮد زﯾﺎدی در ﻣﻬﻨﺪﺳﯽ ﺑﺮق دارﻧﺪ‪ .‬ﻣﺎﻧﻨﺪ ﺳﯿﺴﺘﻢ ﻫﺪاﯾﺖ و‬
‫ﮐﻨﺘﺮل ﻣﻮﺷﮏ‪ ،‬آﺷﮑﺎرﺳﺎزی ﻫﺪف در رادار‪ ،‬ﺗﻌﻘﯿﺐ اﻫﺪاف راداری و ‪...‬‬

‫ﺗﻮﺻﯿﻔﯽ‬ ‫‪‬‬
‫ﺗﺨﻤﯿﻦ‬ ‫‪‬‬ ‫‪‬‬ ‫آﻣﺎر‬
‫‪‬‬ ‫اﺳﺘﻨﺘﺎﺟﯽ‬ ‫‪‬‬
‫آزﻣﻮن ﻓﺮﺿﯿﻪ‬ ‫‪‬‬
‫ﻓﺼﻞ ‪:8‬‬
‫ﺗﻮﻟﯿﺪ اﻋﺪاد ﺗﺼﺎدﻓﯽ و ﺷﺒﯿﻪﺳﺎزی ﮐﺎﻣﭙﯿﻮﺗﺮی‬

‫‪ .1‬ﺗﻌﺮﯾﻒ دﻧﺒﺎﻟﮥ اﻋﺪاد ﺗﺼﺎدﻓﯽ‬

‫‪ .2‬ﺗﻮﻟﯿﺪ دﻧﺒﺎﻟﮥ اﻋﺪاد ﺗﺼﺎدﻓﯽ ﺑﺎ ﺗﻮزﯾﻊ ﯾﮑﻨﻮاﺧﺖ‬

‫‪ .3‬ﺗﻮﻟﯿﺪ دﻧﺒﺎﻟﮥ اﻋﺪاد ﺗﺼﺎدﻓﯽ ﺑﺎ ﺗﻮزﯾﻊ دﻟﺨﻮاه‬

‫‪ .4‬ﺷﺒﯿﻪﺳﺎزی ﻣﻮﻧﺖﮐﺎرﻟﻮ‬

‫‪1‬‬
‫ﺗﻌﺮﯾﻒ دﻧﺒﺎﻟﮥ اﻋﺪاد ﺗﺼﺎدﻓﯽ‪:‬‬
‫ﺑﻪ ﺟﺎی اﯾﻨﮑﻪ ﺳﯿﺴﺘﻢ ﻓﯿﺰﯾﮑﯽ را ﮐﻪ دارای ورودیﻫﺎی ﺗﺼﺎدﻓﯽ ﯾﺎ رﻓﺘﺎر ﺗﺼﺎدﻓﯽ اﺳﺖ ﻋﯿﻨﺎً ﻣﺸﺎﻫﺪه ﮐﻨﯿﻢ و اﺛﺮات ﭘﺎراﻣﺘﺮﻫﺎی ﻣﺨﺘﻠﻒ را‬
‫ﺑﺒﯿﻨﯿﻢ ﯾﺎ ﺑﺎ ﺗﺤﻤﻞ ﻫﺰﯾﻨﮥ ﻓﺮاوان ﺑﺴﺎزﯾﻢ )و ﺑﻌﺪ ﺑﻔﻬﻤﯿﻢ آن ﻃﻮر ﮐﻪ ﻣﻄﻠﻮب اﺳﺖ ﮐﺎر ﻧﻤﯽﮐﻨﺪ!(‪ ،‬ﻣﯽﺗﻮاﻧﯿﻢ از ﺷﺒﯿﻪﺳﺎزی ﮐﺎﻣﭙﯿﻮﺗﺮی‬
‫اﺳﺘﻔﺎده ﮐﻨﯿﻢ )ﻣﺎﻧﻨﺪ ﻣﺮاﺣﻞ ﮔﯿﺮﻧﺪۀ ﻣﺨﺎﺑﺮاﺗﯽ‪ ،‬آﺷﮑﺎرﺳﺎز رادار و ‪ .(...‬اﻣﺮوزه ﺷﺒﯿﻪﺳﺎزی در ﺳﺮاﺳﺮ دﻧﯿﺎ و در رﺷﺘﻪﻫﺎی ﻣﺨﺘﻠﻒ ﻣﻬﻨﺪﺳﯽ‬
‫ﮐﺎرﺑﺮد ﻓﺮاوان دارد‪ .‬ﻣﺜﻼً ﻃﺮح اﺗﻮﻣﺒﯿﻞ اﺑﺘﺪا در ﮐﺎﻣﭙﯿﻮﺗﺮ‪ ،‬ﺗﻌﯿﯿﻦ ﻣﺤﻞ ﻗﺮاردادن دﮐﻠﻬﺎی ﻣﺨﺎﺑﺮات ﺳﯿﺎر ﺑﺎ ﺷﺒﯿﻪﺳﺎزی اﻣﻮاج و ‪. ...‬‬
‫ﺧﺼﻮﺻ ًﺎ در ﻣﻮاردی ﮐﻪ ﻣﺤﺎﺳﺒﮥ ﻣﺴﺘﻘﯿﻢ ﻣﺸﮑﻞ اﺳﺖ ﯾﺎ ﭘﺎراﻣﺘﺮﻫﺎی ﻣﺘﻌﺪدی در ﻣﺴﺄﻟﻪ دﺧﯿﻞ ﻫﺴﺘﻨﺪ ﯾﺎ ﺑﻪ ﻋﻨﻮان ﻣﺆﯾﺪی ﺑﺮای‬
‫ﻣﺤﺎﺳﺒﺎت‪.‬‬
‫ﺑﻪ ﻣﻨﻈﻮر ﺷﺒﯿﻪﺳﺎزی اﺣﺘﯿﺎج ﺑﻪ ﻣﻮﻟﺪ اﻋﺪاد ﺗﺼﺎدﻓﯽ دارﯾﻢ‪ .‬ﻫﻤﭽﻨﯿﻦ ﺑﺮای ﻧﻤﻮﻧﻪﺑﺮداری ﺗﺼﺎدﻓﯽ از ﯾﮏ ﺟﺎﻣﻌﻪ از اﻋﺪاد ﺗﺼﺎدﻓﯽ اﺳﺘﻔﺎده‬
‫ﻣﯽﺷﻮد‪ .‬ﺑﻌﻀﺎً ﺑﺮای ﺣﻞ ﻣﺴﺎﺋﻞ ﻋﺪدی ﻣﺸﮑﻞ از اﻋﺪاد ﺗﺼﺎدﻓﯽ )ﺷﺒﯿﻪﺳﺎزی ﻣﻮﻧﺖﮐﺎرﻟﻮ( اﺳﺘﻔﺎده ﻣﯽﺷﻮد‪ .‬ﺗﻮﻟﯿﺪ اﻋﺪاد ﺗﺼﺎدﻓﯽ ﮐﺎرﺑﺮد‬
‫ﺑﺴﯿﺎر ﻣﻬﻤﯽ در اﯾﻤﻦ ﺳﺎﺧﺘﻦ ﻣﺨﺎﺑﺮات )رﻣﺰﻧﮕﺎری( دارد‪.‬‬

‫دﻧﺒﺎﻟﮥ اﻋﺪاد ﺗﺼﺎدﻓﯽ‪:‬‬


‫دﻧﺒﺎﻟﻪای از ﻧﻤﻮﻧﻪﻫﺎی ﻣﺘﻐﯿﺮﻫﺎی ﺗﺼﺎدﻓﯽ ‪ i.i.d.‬را دﻧﺒﺎﻟﮥ اﻋﺪاد ﺗﺼﺎدﻓﯽ ﮔﻮﯾﻨﺪ‪) x1 , x 2 , x 3 ,… , x n ,… :‬ﻫﺮ دﻧﺒﺎﻟﮥ ﻧﻤﻮﻧﮥ ﻓﺮآﯾﻨﺪ‬
‫)‪ x n (ω‬ﻣﺸﺮوط ﺑﺮ ‪ i.i.d.‬ﺑﻮدن ‪ x i‬ﻫﺎ(‪.‬‬

‫‪2‬‬
‫ﻃﺒﯿﻌﺘﺎً ﺗﻮﻟﯿﺪ اﻋﺪاد ﺗﺼﺎدﻓﯽ ﻓﻘﻂ ﺗﻮﺳﻂ ﯾﮏ ﭘﺪﯾﺪۀ ﻓﯿﺰﯾﮑﯽ ﺗﺼﺎدﻓﯽ اﻣﮑﺎنﭘﺬﯾﺮ اﺳﺖ‪ .‬آﻧﭽﻪ ﺑﻪ وﺳﯿﻠﮥ ﮐﺎﻣﭙﯿﻮﺗﺮ ﻣﯽﺗﻮان ﺗﻮﻟﯿﺪ ﮐﺮد‪،‬‬
‫دﻧﺒﺎﻟﮥ اﻋﺪاد ﺷﺒﻪ ﺗﺼﺎدﻓﯽ )‪ (Pseudo Random‬اﺳﺖ‪ ،‬ﯾﻌﻨﯽ ﺗﻮﺳﻂ اﻟﮕﻮرﯾﺘﻤﯽ ﺑﻪ ﻃﻮر ‪ Deterministic‬ﺗﻮﻟﯿﺪ ﻣﯽﺷﻮﻧﺪ‪ ،‬وﻟﯽ‬
‫ﺧﻮاص دﻧﺒﺎﻟﮥ اﻋﺪاد ﺗﺼﺎدﻓﯽ را دارا ﻫﺴﺘﻨﺪ و ﻟﺬا ﺗﺼﺎدﻓﯽ ﺑﻪ ﻧﻈﺮ ﻣﯽرﺳﻨﺪ‪ .‬آزﻣﻮﻧﻬﺎﯾﯽ وﺟﻮد دارد ﮐﻪ ﺗﺼﺎدﻓﯽ ﺑﻮدن دﻧﺒﺎﻟﻪ را ﺑﺮرﺳﯽ‬
‫ﻣﯽﮐﻨﻨﺪ و در ﻓﺼﻞ ‪ 8‬ﮐﺘﺎب آﻣﺪهاﻧﺪ‪.‬‬

‫ﺑﺮای اﯾﻨﮑﻪ دﻧﺒﺎﻟﮥ اﻋﺪاد ﺷﺒﻪ ﺗﺼﺎدﻓﯽ )از اﯾﻦ ﺑﻪ ﺑﻌﺪ ﺗﺴﺎﻣﺤﺎً ﻣﯽﮔﻮﯾﯿﻢ ﺗﺼﺎدﻓﯽ( ﺑﺎ ﺗﻮزﯾﻊ ‪ fx‬داده ﺷﺪه را ﺗﻮﻟﯿﺪ ﮐﻨﯿﻢ‪ ،‬اﺑﺘﺪا ﺗﻮﻟﯿﺪ دﻧﺒﺎﻟﮥ‬
‫اﻋﺪاد ﺗﺼﺎدﻓﯽ ﺑﺎ ﺗﻮزﯾﻊ ﯾﮑﻨﻮاﺧﺖ را ﺑﺮرﺳﯽ ﻣﯽﮐﻨﯿﻢ‪.‬‬

‫‪3‬‬
‫ﺗﻮﻟﯿﺪ دﻧﺒﺎﻟﮥ اﻋﺪاد ﺗﺼﺎدﻓﯽ ﺑﺎ ﺗﻮزﯾﻊ ﯾﮑﻨﻮاﺧﺖ‪:‬‬
‫ﺗﻮﻟﯿﺪ دﻧﺒﺎﻟﮥ اﻋﺪاد ﺗﺼﺎدﻓﯽ ﺑﺎ ﺗﻮزﯾﻊ ﯾﮑﻨﻮاﺧﺖ روﺷﻬﺎی ﮔﻮﻧﺎﮔﻮﻧﯽ دارد و در اﯾﻦ زﻣﯿﻨﻪ ﺑﺴﯿﺎر ﮐﺎر ﺷﺪه اﺳﺖ‪ .‬ﯾﮏ روش ﮐﻪ در ﻋﯿﻦ‬
‫ﺳﺎده ﺑﻮدن‪ ،‬دﻧﺒﺎﻟﮥ ﺣﺎﺻﻞ از آن از ﻧﻈﺮ ﺗﺼﺎدﻓﯽ ﺑﻮدن ﺧﯿﻠﯽ ﻣﻄﻠﻮب اﺳﺖ‪ ،‬اﻟﮕﻮرﯾﺘﻢ ‪ Lehmer‬ﻣﯽﺑﺎﺷﺪ‪.‬‬

‫ﯾﺎدآوری‪ :‬ﮔﻮﯾﯿﻢ ‪ a‬ﻫﻤﻨﻬﺸﺖ )‪ b (Conquence‬اﺳﺖ در ﻫﻨﮓ ‪ ،n‬ﻫﺮﮔﺎه ‪ a − b = kn‬ﺑﺎﺷﺪ‪ .‬در اﯾﻦ ﺻﻮرت ﻣﯽﻧﻮﯾﺴﯿﻢ‪:‬‬

‫‪a = b mod n‬‬


‫ﻣﺜﻼً دارﯾﻢ‪:‬‬
‫‪17 = 1 mod 4‬‬
‫‪19 = 3 mod 16‬‬

‫‪4‬‬
‫اﻟﮕﻮرﯾﺘﻢ ‪:Lehmer‬‬
‫‪z n = az n −1 mod m‬‬
‫ﯾﻌﻨﯽ‪:‬‬
‫‪z n = a n z0 mod m‬‬
‫ﻓﺮض ﻣﯽﮐﻨﯿﻢ ‪ m‬ﯾﮏ ﻋﺪد اول ﺑﺴﯿﺎر ﺑﺰرگ ﺑﻮده و ‪ z0‬ﻋﺪدی دﻟﺨﻮاه و ﮐﻮﭼﮑﺘﺮ از ‪ m‬ﺑﺎﺷﺪ‪ .‬ﻋﺪد ‪ a < m‬ﻃﻮری اﻧﺘﺨﺎب ﻣﯽﺷﻮد‬
‫ﮐﻪ‪) ∀n < m − 1 : a n ≠ 1 mod m :‬در اﯾﻦ ﺻﻮرت‪ am −1 = 1 mod m :‬ﺧﻮاﻫﺪ ﺑﻮد(‪ .‬ﺑﻪ اﯾﻦ ﺗﺮﺗﯿﺐ ﭘﺮﯾﻮد ﺗﮑﺮار دﻧﺒﺎﻟﻪ ﻣﺎﮐﺰﯾﻤﻢ‬
‫ﻣﯽﺷﻮد )‪) (m − 1‬و ﮐﻠﯿﮥ اﻋﺪاد ‪ 1‬ﺗﺎ ‪ m − 1‬ﯾﮏ و ﻓﻘﻂ ﯾﮏ ﺑﺎر ﻇﺎﻫﺮ ﻣﯽﺷﻮﻧﺪ(‪.‬‬
‫ﻣﺜﻼً ﻣﯽﺗﻮان ‪ m = 2 31 − 1‬و ‪ a = 27 − 1‬را در ﻧﻈﺮ ﮔﺮﻓﺖ‪.‬‬

‫‪zi‬‬
‫= ‪ ، u i‬ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ ﺑﺰرﮔﯽ ‪ ui ،m‬دﻧﺒﺎﻟﻪای ﭘﯿﻮﺳﺘﻪ ﺑﺎ ﺗﻮزﯾﻊ ﯾﮑﻨﻮاﺧﺖ )‪ u(0,1‬ﺑﻪ ﻧﻈﺮ ﻣﯽرﺳﺪ‪ .‬ﯾﻌﻨﯽ ﻣﯽﺗﻮان ﻓﺮض‬ ‫اﮔﺮ ﺑﮕﯿﺮﯾﻢ‪:‬‬
‫‪m‬‬
‫ﮐﺰد ﮐﻪ‪. u ∼ u(0,1) :‬‬

‫ﻧﺮماﻓﺰار ‪ MATLAB‬دﻧﺒﺎﻟﮥ ﺗﺼﺎدﻓﯽ ﯾﮑﻨﻮاﺧﺖ ﺑﺮای ﺷﻤﺎ ﺗﻮﻟﯿﺪ ﻣﯽﮐﻨﺪ‪.‬‬

‫‪5‬‬
‫ﺗﻮﻟﯿﺪ دﻧﺒﺎﻟﮥ اﻋﺪاد ﺗﺼﺎدﻓﯽ ﺑﺎ ﺗﻮزﯾﻊ دﻟﺨﻮاه‪:‬‬
‫‪ .1‬روش ﺗﺒﺪﯾﻞ ﻣﻌﮑﻮس‬
‫‪ .2‬روش رد ﮐﺮدن‬
‫‪ .3‬روشﻫﺎی ﺧﺎص‬

‫‪ .1‬روش ﺗﺒﺪﯾﻞ ﻣﻌﮑﻮس )‪:(Inverse Transform Method‬‬


‫در ﻓﺼﻞ ‪ 4‬و ﺗﻤﺮﯾﻨﻬﺎی آن دﯾﺪﯾﻢ ﮐﻪ اﮔﺮ ﻣﺘﻐﯿﺮ ﺗﺼﺎدﻓﯽ ‪ x‬دارای ﺗﻮزﯾﻊ اﻧﺒﺎﺷﺘﮥ ‪ F‬ﺑﺎﺷﺪ‪ ،‬در اﯾﻦ ﺻﻮرت ) ‪ u = F( x‬دارای ﺗﻮزﯾﻊ‬
‫ﯾﮑﻨﻮاﺧﺖ )‪ u(0,1‬ﺧﻮاﻫﺪ ﺑﻮد و ﺑﻪ ﻋﮑﺲ اﮔﺮ )‪ u ∼ u(0,1‬ﺑﺎﺷﺪ‪ ،‬در اﯾﻦ ﺻﻮرت ) ‪ x = F −1 ( u‬دارای ﺗﺎﺑﻊ ﺗﻮزﯾﻊ اﻧﺒﺎﺷﺘﮥ ‪ F‬ﺧﻮاﻫﺪ‬
‫ﺑﻮد‪.‬‬
‫و ﻧﯿﺰ اﮔﺮ ‪ x‬دارای ﺗﻮزﯾﻊ ‪ F‬ﺑﺎﺷﺪ و ﺑﺨﻮاﻫﯿﻢ از روی آن ﻣﺘﻐﯿﺮ ﺗﺼﺎدﻓﯽ ‪ y‬ﺑﺎ ﺗﺎﺑﻊ ﺗﻮزﯾﻊ داده ﺷﺪۀ ‪ G‬را ﺑﺴﺎزﯾﻢ‪ ،‬ﮐﺎﻓﯽ اﺳﺖ ﺑﮕﯿﺮﯾﻢ‪:‬‬

‫ﯾﮑﻨﻮاﺧﺖ‬
‫)) ‪y = G −1 (F( x‬‬
‫دارای ﺗﻮزﯾﻊ اﻧﺒﺎﺷﺘﮥ ‪G‬‬

‫‪6‬‬
‫ﻣﺜﺎل ‪ :1‬ﺗﻮﻟﯿﺪ ﻣﺘﻐﯿﺮ ﺗﺼﺎدﻓﯽ ﻧﻤﺎﯾﯽ )از روی ﯾﮑﻨﻮاﺧﺖ(‪:‬‬
‫‪F(x) = 1 − e −λx‬‬

‫) ‪x = F −1 ( u‬‬
‫‪1‬‬
‫) ‪u = F( x ) = 1 − e −λx ⇒ −λx = ln(1 − u ) ⇒ x = − ln(1 − u‬‬
‫‪λ‬‬
‫)‪u ∼ u(0,1) ⇒ 1 − u ∼ u(0,1‬‬
‫ﭘﺲ‪:‬‬
‫‪1‬‬
‫‪xi = − ln u i‬‬
‫‪λ‬‬

‫‪7‬‬
‫ﻣﺜﺎل ‪ :2‬ﺗﻮﻟﯿﺪ ﻣﺘﻐﯿﺮ ﺗﺼﺎدﻓﯽ راﯾﻠﯽ‪:‬‬
‫‪y2‬‬ ‫‪y2‬‬
‫‪y‬‬ ‫‪− 2‬‬ ‫‪− 2‬‬
‫= )‪f(y‬‬ ‫‪2‬‬
‫‪e 2σ‬‬ ‫‪,‬‬ ‫‪F(y) = 1 − e 2σ‬‬
‫‪σ‬‬

‫‪y2‬‬
‫‪− 2‬‬
‫‪u‬‬ ‫‪= F( y ) = 1 − e 2σ‬‬ ‫) ‪⇒ y 2 = −2σ 2 ln(1 − u‬‬
‫ﭘﺲ‪:‬‬

‫‪y i = −2σ 2 ln u i‬‬

‫‪1‬‬
‫= ‪ σ 2‬ﺧﻮاﻫﺪ ﺑﻮد‪.‬‬ ‫ﺿﻤﻨﺎً اﮔﺮ ‪ xi‬دارای ﺗﻮزﯾﻊ ﻧﻤﺎﯾﯽ ﺑﺎ ﭘﺎراﻣﺘﺮ ‪ λ‬ﺑﺎﺷﺪ‪ y i = xi ،‬دارای ﺗﻮزﯾﻊ راﯾﻠﯽ ﺑﺎ ﭘﺎراﻣﺘﺮ‬
‫‪2λ‬‬

‫‪8‬‬
‫‪ .2‬روش رد ﮐﺮدن )‪:(Rejection Method‬‬
‫اﮐﻨﻮن ﻣﯽﺧﻮاﻫﯿﻢ دﻧﺒﺎﻟﮥ ﺗﺼﺎدﻓﯽ ‪ y i‬ﺑﺎ ﺗﺎﺑﻊ ﭼﮕﺎﻟﯽ ‪) g‬ﺗﻮزﯾﻊ اﻧﺒﺎﺷﺘﮥ ‪ (G‬را ﺗﻮﻟﯿﺪ ﮐﻨﯿﻢ‪.‬‬
‫ﻓﺮض‪ :‬دﻧﺒﺎﻟﮥ ‪ xi‬ﺑﺎ ﺗﺎﺑﻊ ﭼﮕﺎﻟﯽ ‪) f‬ﺗﻮزﯾﻊ اﻧﺒﺎﺷﺘﮥ ‪ (F‬ﻗﺎﺑﻞ ﺗﻮﻟﯿﺪ اﺳﺖ و ‪:‬‬
‫)‪g(x‬‬
‫‪∀x :‬‬ ‫‪≤ α , f(x) = 0 ⇒ g(x) = 0‬‬
‫)‪f(x‬‬
‫)ﭼﻮن ‪ x‬در ﻣﻨﻄﻘﮥ ‪ f(x) = 0‬ﻇﺎﻫﺮ ﻧﻤﯽﺷﻮد‪ y ،‬ﻧﯿﺰ در آن ﻣﻨﻄﻘﻪ ﻇﺎﻫﺮ ﻧﺨﻮاﻫﺪ ﺷﺪ‪(.‬‬

‫روش‪ :‬اﺑﺘﺪا دارﯾﻢ‪ i = j = 1 :‬؛‬


‫‪ xi .1‬را )ﺑﺎ ﺗﻮزﯾﻊ ‪ (f‬ﺗﻮﻟﯿﺪ ﻣﯽﮐﻨﯿﻢ‪:‬‬
‫)‪fx (x) = f(x‬‬
‫‪ ui .2‬را ﺑﺎ ﺗﻮزﯾﻊ ﯾﮑﻨﻮاﺧﺖ ) )‪ ( u(0,1‬ﺗﻮﻟﯿﺪ ﻣﯽﮐﻨﯿﻢ )‪ u‬ﻣﺴﺘﻘﻞ از ‪ x‬اﺳﺖ(‪:‬‬
‫‪1 0 < u < 1‬‬
‫‪fu (u) = ‬‬
‫‪0 otherwise‬‬
‫) ‪g(xi‬‬
‫≤ ‪ u i‬ﺑﺎﺷﺪ‪ y j = xi ،‬ﻗﺮار ﻣﯽدﻫﯿﻢ ) ‪ i = i + 1‬و ‪ ، j = j + 1‬ﺑﺎزﮔﺸﺖ ﺑﻪ ﻗﺪم اول(‪ .‬در ﻏﯿﺮ اﯾﻦ ﺻﻮرت اﯾﻦ ‪xi‬‬ ‫‪ .3‬اﮔﺮ‬
‫) ‪α f(xi‬‬
‫را رد ﻣﯽﮐﻨﯿﻢ ) ‪ ، i = i + 1‬ﺑﺎزﮔﺸﺖ ﺑﻪ ﻗﺪم اول(‪.‬‬

‫‪9‬‬
? ?
‫ ؛‬Fy (y) = G(y) ⇔ fy (y) = g(y) :‫اﺛﺒﺎت‬
:‫دارﯾﻢ‬
g( x )
P{ x ≤ y, u ≤ }
g( x ) α f( x )
Fy (y) = P{ y ≤ y} = P{ x ≤ y|u ≤ }=
α f( x ) g( x )
P{ u ≤ }
α f( x )
f(x) 0 < u < 1
→ fxu (x, u) = fx (x)fu (u) = 
0 otherwise
g( x)
g( x ) y
∫−∞ ∫0
α f( x )
⇒ P{ x ≤ y, u ≤ }= fxu (x, u)dudx
α f( x )
0 < u < 1 ‫ ﺑﺮای‬f(x)
g(x)
:‫اﺳﺖ‬ ≤ 1 ‫ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ اﯾﻨﮑﻪ‬
α f(x)
y g(x) G(y)
= ∫−∞ f(x)
α f(x)
dx =
α

G(y) :‫ﻟﺬا‬
g( x ) g( x ) G( +∞ ) 1
P{ u ≤ } = P{ x ≤ +∞ , u ≤ }= = ⇒ Fy (y) = α = G(y)
α f( x ) α f( x ) α α 1
α
10
‫ﺗﻌﺪاد ﺗﮑﺮار ﺣﻠﻘﻪ ﺑﺮای ﯾﮏ ﺑﺎر ﺗﻮﻟﯿﺪ اﻋﺪاد ﺗﺼﺎدﻓﯽ ‪ y‬ﺗﻮزﯾﻊ ﻫﻨﺪﺳﯽ ﺑﺎ ﭘﺎراﻣﺘﺮ ‪1‬‬
‫‪ p = α‬اﺳﺖ‪ ،‬ﻟﺬا‪:‬‬ ‫‪j‬‬

‫‪q 1− α‬‬‫‪1‬‬
‫=‬ ‫ﻣﺘﻮﺳﻂ ﺗﻌﺪاد ﺷﮑﺴﺘﻬﺎ )ﺑﺮای ﯾﮏ ﺑﺎر ﭘﯿﺮوزی( = ‪= α − 1‬‬
‫‪p‬‬ ‫‪1‬‬
‫‪α‬‬
‫ﻣﺘﻮﺳﻂ ﺗﻌﺪاد ﮐﻞ )ﺑﺮای ﯾﮏ ﺑﺎر ﭘﯿﺮوزی( = ‪⇒ α‬‬

‫ﻣﺜﺎل‪ :‬ﺗﻮﻟﯿﺪ دﻧﺒﺎﻟﮥ ﺗﺼﺎدﻓﯽ ﻧﺮﻣﺎل )از روی ﻧﻤﺎﯾﯽ( ﺑﻪ روش رد ﮐﺮدن و ﻣﺨﻠﻮط ﮐﺮدن‪:‬‬
‫‪x2‬‬
‫‪1‬‬ ‫‪−‬‬
‫= )‪f(x) = e − x : x > 0 → h(x‬‬ ‫‪e‬‬ ‫‪2‬‬
‫‪2π‬‬
‫وﻟﯽ‪:‬‬
‫⇒ ‪f(x) = 0‬‬
‫‪/ h(x) = 0‬‬
‫ﭘﺲ اﺑﺘﺪا دﻧﺒﺎﻟﻪ ﺑﺎ ﺗﻮزﯾﻊ ‪) g‬ﻧﺮﻣﺎل ﯾﮑﻄﺮﻓﻪ( را ﺗﻮﻟﯿﺪ ﻣﯽﮐﻨﯿﻢ‪:‬‬
‫‪x2‬‬
‫‪2‬‬ ‫‪−‬‬
‫= )‪g(x‬‬ ‫‪e 2‬‬ ‫‪:x>0‬‬
‫‪2π‬‬

‫‪11‬‬
‫‪x2‬‬
‫‪2‬‬ ‫‪−‬‬
‫‪e 2‬‬ ‫‪−‬‬
‫‪x 2 −2x‬‬ ‫‪1‬‬
‫‪−‬‬
‫‪x 2 − 2x + 1‬‬
‫‪−‬‬
‫‪(x −1)2‬‬
‫)‪g(x‬‬ ‫‪2π‬‬ ‫‪2‬‬ ‫‪2‬‬ ‫‪2e‬‬
‫=‬ ‫=‬ ‫‪e 2‬‬ ‫=‬ ‫‪e2 e‬‬ ‫‪2‬‬ ‫=‬ ‫‪e 2‬‬
‫)‪f(x‬‬ ‫‪e−x‬‬ ‫‪2π‬‬ ‫‪π‬‬ ‫‪π‬‬
‫)‪g(x‬‬ ‫‪2e‬‬ ‫‪4‬‬
‫⇒‬ ‫≤‬ ‫‪= α = 1.32‬‬
‫)‪f(x‬‬ ‫‪π‬‬ ‫‪3‬‬
‫ﯾﻌﻨﯽ ﺗﻘﺮﯾﺒﺎً در ﻫﺮ ‪ 4‬ﺑﺎر‪ 3 ،‬ﺑﺎر ﻣﻮﻓﻘﯿﺖ‪.‬‬

‫ﭘﺲ اﺑﺘﺪا ‪ xi‬ﻧﻤﺎﯾﯽ ﺗﻮﻟﯿﺪ ﻣﯽﮐﻨﯿﻢ )ﮐﻪ ﭼﮕﻮﻧﮕﯽ آن را ﻗﺒﻼً دﯾﺪﯾﻢ(‪:‬‬


‫)‪x ∼ exp(1‬‬
‫ﺳﭙﺲ ‪ u i‬ﯾﮑﻨﻮاﺧﺖ ﺗﻮﻟﯿﺪ ﻣﯽﮐﻨﯿﻢ )‪ u‬ﻣﺴﺘﻘﻞ از ‪ x‬اﺳﺖ(‪:‬‬
‫)‪u ∼ u(0,1‬‬
‫‪(xi −1)2‬‬
‫‪−‬‬
‫‪ u i ≤ e‬ﺑﺎﺷﺪ‪ y j = xi ،‬ﻗﺮار ﻣﯽدﻫﯿﻢ‪ .‬در ﻏﯿﺮ اﯾﻦ ﺻﻮرت ‪ xi‬را رد ﻣﯽﮐﻨﯿﻢ‪.‬‬ ‫‪2‬‬ ‫اﮔﺮ‬

‫‪12‬‬
‫ﺣﺎل ﺑﺮای اﯾﻨﮑﻪ از روی ‪ y‬ﮐﻪ ﻧﺮﻣﺎل ﯾﮑﻄﺮﻓﻪ اﺳﺖ‪ ،‬ﻣﺘﻐﯿﺮ ﺗﺼﺎدﻓﯽ ‪ z‬ﻧﺮﻣﺎل )اﺳﺘﺎﻧﺪارد( ﺑﺴﺎزﯾﻢ‪ ،‬ﺗﻮﺟﻪ ﻣﯽﮐﻨﯿﻢ ﮐﻪ‪:‬‬
‫‪1‬‬ ‫‪1‬‬
‫)‪h(z) = g(z) + g( −z‬‬
‫‪2‬‬ ‫‪2‬‬

‫ﭘﺲ ‪ vi‬ﯾﮑﻨﻮاﺧﺖ ﺗﻮﻟﯿﺪ ﻣﯽﮐﻨﯿﻢ )‪ v‬ﻣﺴﺘﻘﻞ از ‪ x‬و ‪ u‬اﺳﺖ(‪:‬‬


‫)‪v ∼ u(0,1‬‬
‫‪1‬‬ ‫‪1‬‬
‫ﺑﻮد‪ zi = − y i ،‬ﻗﺮار ﻣﯽدﻫﯿﻢ‪.‬‬ ‫اﮔﺮ < ‪ 0 < vi‬ﺑﻮد‪ zi = y i ،‬ﻗﺮار داده و اﮔﺮ ‪< vi < 1‬‬
‫‪2‬‬ ‫‪2‬‬
‫= )‪( f(x‬‬ ‫∑‬ ‫)ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ اﯾﻨﮑﻪ‪f(x|A k )P(A k ) :‬‬
‫‪k‬‬

‫ﻧﺮماﻓﺰار ‪ MATLAB‬ﻣﯽﺗﻮاﻧﺪ دﻧﺒﺎﻟﮥ ﺗﺼﺎدﻓﯽ ﻧﺮﻣﺎل ﻧﯿﺰ ﺗﻮﻟﯿﺪ ﮐﻨﺪ‪.‬‬

‫‪13‬‬
‫‪ .3‬روشﻫﺎی ﺧﺎص‪:‬‬
‫ﻣﺘﻐﯿﺮﻫﺎی ﺗﺼﺎدﻓﯽ ﻣﺨﺘﻠﻒ را ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ ﺧﻮاص وﯾﮋۀ ﻫﺮ ﯾﮏ ﺑﻪ روﺷﻬﺎﯾﯽ ﺧﺎص ﻣﯽﺗﻮان ﺗﻮﻟﯿﺪ ﮐﺮد‪.‬‬

‫ﻣﺜﺎل ‪ :1‬ﺗﻮﻟﯿﺪ دﻧﺒﺎﻟﮥ ﻧﺮﻣﺎل‪ :‬ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ ﻗﻀﯿﮥ ﺣﺪ ﻣﺮﮐﺰی‪ ،‬ﻣﺠﻤﻮع ﺗﻌﺪاد زﯾﺎدی ﻣﺘﻐﯿﺮ ﺗﺼﺎدﻓﯽ ﯾﮑﻨﻮاﺧﺖ‪ ،‬ﻧﺮﻣﺎل ﻣﯽﺷﻮد‪ .‬ﭘﺲ‪:‬‬
‫‪z1 = u1 +‬‬ ‫‪+ un‬‬ ‫‪, z 2 = u n +1 +‬‬ ‫‪+ u 2n‬‬ ‫‪,‬‬
‫ﯾﻌﻨﯽ‪:‬‬
‫‪n‬‬
‫= ‪zi‬‬ ‫‪∑ u(n−1)i+ j‬‬
‫‪j =1‬‬
‫ﻣﻘﺪار ‪ 10‬ﺗﺎ ‪ 15‬ﺑﺮای ‪ n‬ﮐﺎﻓﯽ اﺳﺖ‪.‬‬

‫‪14‬‬
‫ﻣﺜﺎل ‪ :2‬روش دﯾﮕﺮی ﺑﺮای ﺗﻮﻟﯿﺪ دﻧﺒﺎﻟﮥ ﻧﺮﻣﺎل؛ ﺗﻮﻟﯿﺪ دو دﻧﺒﺎﻟﮥ ﻧﺮﻣﺎل اﺳﺘﺎﻧﺪارد و ﻣﺴﺘﻘﻞ از ﻫﻢ‪:‬‬
‫ﯾﺎدآوری‪ :‬اﮔﺮ ﻣﺘﻐﯿﺮﻫﺎی ﺗﺼﺎدﻓﯽ ‪ x‬و ‪ y‬ﻣﺴﺘﻘﻞ ﺑﺎﺷﻨﺪ‪ ،‬دارﯾﻢ‪:‬‬
‫)‪R = x 2 + y 2 ∼ Rayleigh(1‬‬
‫‪‬‬ ‫‪x‬‬ ‫∼‬ ‫)‪N(0,1‬‬ ‫‪‬‬
‫‪‬‬ ‫⇔‬ ‫‪‬‬
‫‪y‬‬ ‫∼‬ ‫)‪N(0,1‬‬ ‫‪−1 y‬‬
‫‪‬‬ ‫‪Φ = tan‬‬ ‫)‪∼ u(0, 2 π‬‬
‫‪‬‬ ‫‪x‬‬

‫اﮔﺮ ‪ ui‬و ‪ vi‬دﻧﺒﺎﻟﻪﻫﺎی ﺗﺼﺎدﻓﯽ ﯾﮑﻨﻮاﺧﺖ و ﻣﺴﺘﻘﻞ ﺑﺎﺷﻨﺪ‪ ،‬آﻧﮕﺎه ‪ ri = −2 ln u i‬دارای ﺗﻮزﯾﻊ راﯾﻠﯽ و ‪ 2 π vi‬دارای ﺗﻮزﯾﻊ‬
‫ﯾﮑﻨﻮاﺧﺖ )‪ (0, 2 π‬اﺳﺖ‪ .‬ﭘﺲ دﻧﺒﺎﻟﻪﻫﺎی زﯾﺮ‪:‬‬
‫) ‪xi = −2 ln u i cos(2 π vi‬‬
‫) ‪y i = −2 ln u i sin(2 π vi‬‬
‫ﻧﺮﻣﺎل و ﻣﺴﺘﻘﻞ ﻫﺴﺘﻨﺪ‪.‬‬

‫اﯾﻦ ﻫﻢ ﺗﻮﺳﻂ ﻧﺮماﻓﺰار ‪ MATLAB‬ﻣﺴﺘﻘﯿﻤﺎً ﻗﺎﺑﻞ ﺗﻮﻟﯿﺪ اﺳﺖ‪.‬‬

‫‪15‬‬
‫ﻣﺜﺎل ‪ :3‬ﺗﻮﻟﯿﺪ دﻧﺒﺎﻟﮥ ﺗﺼﺎدﻓﯽ ارﻻﻧﮓ‪:‬‬
‫ﻣﯽداﻧﯿﻢ ﮐﻪ ﻣﺠﻤﻮع ‪ n‬ﺗﺎ ﻣﺘﻐﯿﺮ ﺗﺼﺎدﻓﯽ ﻧﻤﺎﯾﯽ ﻣﺴﺘﻘﻞ ﺑﺎ ﭘﺎراﻣﺘﺮ ‪ λ‬دارای ﺗﻮزﯾﻊ ارﻻﻧﮓ ﺑﺎ ﭘﺎراﻣﺘﺮ ‪ n‬و ‪ λ‬اﺳﺖ‪ .‬ﭘﺲ ‪ xi‬ﻧﻤﺎﯾﯽ ﺑﺎ‬
‫ﭘﺎراﻣﺘﺮ ‪ λ‬ﺗﻮﻟﯿﺪ ﻣﯽﮐﻨﯿﻢ و ﺳﭙﺲ ﻗﺮار ﻣﯽدﻫﯿﻢ‪:‬‬
‫‪n‬‬
‫= ‪yi‬‬ ‫‪∑ x(n−1)i+ j‬‬
‫‪j =1‬‬
‫) ‪x ∼ exp(λ ) ⇒ y ∼ Erlang(n, λ‬‬

‫‪16‬‬
‫ﺷﺒﯿﻪﺳﺎزی ﻣﻮﻧﺖﮐﺎرﻟﻮ )‪:(Monte Carlo Simulation‬‬
‫ﺑﻪ دﺳﺖ آوردن ﯾﮏ ﮐﻤﯿﺖ ﻏﯿﺮﺗﺼﺎدﻓﯽ ﺗﻮﺳﻂ روش آﻣﺎری )ﺑﺎ ﺗﻮﻟﯿﺪ دﻧﺒﺎﻟﮥ ﺗﺼﺎدﻓﯽ( را ﺷﺒﯿﻪﺳﺎزی ﻣﻮﻧﺖﮐﺎرﻟﻮ ﮔﻮﯾﻨﺪ‪.‬‬

‫ﻣﺜﺎل ‪ :1‬ﻓﺮض ﮐﻨﯿﺪ ﻣﯽﺧﻮاﻫﯿﻢ اﻧﺘﮕﺮال زﯾﺮ را ﺣﺴﺎب ﮐﻨﯿﻢ‪:‬‬


‫‪1‬‬
‫=‪I‬‬ ‫‪∫0 g(u)du‬‬
‫)اﮔﺮ اﻧﺘﮕﺮال در ﻣﺤﺪودۀ دﯾﮕﺮی را ﺑﺨﻮاﻫﯿﻢ ﺑﺎ ﺗﻐﯿﯿﺮ ﻣﺘﻐﯿﺮ ﻣﯽﺗﻮاﻧﯿﻢ ﺑﻪ اﯾﻦ ﻣﺤﺪوده ﺑﺒﺮﯾﻢ‪(.‬‬

‫اﮔﺮ ﻣﺘﻐﯿﺮ ﺗﺼﺎدﻓﯽ ‪ u‬را در ﻧﻈﺮ ﺑﮕﯿﺮﯾﻢ ﮐﻪ‪ u ∼ u(0,1) :‬و ﻓﺮض ﮐﻨﯿﻢ‪ x = g( u ) :‬ﺑﺎﺷﺪ‪ ،‬آﻧﮕﺎه‪:‬‬
‫∞‪+‬‬ ‫‪1‬‬
‫∫ = )) ‪ηx = E(g( u‬‬ ‫= ‪g(u)f(u)du‬‬ ‫‪∫0 g(u)du = I‬‬
‫∞‪−‬‬

‫در ﺷﺒﯿﻪﺳﺎزی ﻣﻮﻧﺖﮐﺎرﻟﻮ‪ ،‬دﻧﺒﺎﻟﮥ ﺗﺼﺎدﻓﯽ ﯾﮑﻨﻮاﺧﺖ ‪ ui‬را ﺗﻮﻟﯿﺪ ﮐﺮده و ﺳﭙﺲ ) ‪ xi = g(u i‬را ﺗﻮﻟﯿﺪ ﻣﯽﮐﻨﯿﻢ‪ .‬آﻧﮕﺎه ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ‬
‫‪n‬‬
‫‪1‬‬
‫‪n‬‬
‫‪ ،ηx‬دارﯾﻢ‪:‬‬ ‫∑‬
‫‪n i =1‬‬
‫اﯾﻨﮑﻪ‪xi :‬‬
‫‪1‬‬
‫‪I‬‬ ‫∑‬
‫‪n i =1‬‬
‫) ‪g(u i‬‬

‫‪17‬‬
‫ﻣﺜﺎل ‪ :2‬ﻣﯽﺧﻮاﻫﯿﻢ }‪) F(y) = P{ y ≤ y‬ﮐﻤﯿﺘﯽ ﻏﯿﺮﺗﺼﺎدﻓﯽ( را ﺗﺨﻤﯿﻦ ﺑﺰﻧﯿﻢ‪ .‬ﻣﺜﻼً‪:‬‬

‫ﻧﻮﯾﺰ ﮔﻮﺳﯽ‬ ‫ﺗﻮزﯾﻊ ؟‬


‫‪x‬‬ ‫ﯾﮑﺴﻮﺳﺎز ﺗﻤﺎم ﻣﻮج‬ ‫ﺗﻘﻮﯾﺖﮐﻨﻨﺪۀ ﻟﮕﺎرﯾﺘﻤﯽ‬ ‫‪y‬‬

‫اﺻﻮﻻً روش ﺗﺤﻠﯿﻠﯽ ﻣﯽﺗﻮاﻧﺪ دﺷﻮار ﯾﺎ ﺑﻌﻀﺎً ﺑﺪون ﺟﻮاب ﺑﺴﺘﻪ ﺑﺎﺷﺪ‪.‬‬

‫دﻧﺒﺎﻟﮥ ‪ y i‬را ﺗﻮﻟﯿﺪ ﻣﯽﮐﻨﯿﻢ )ﺑﺎ ﺗﻮﻟﯿﺪ ‪ xi‬و ﻃﯽ ﻣﺮاﺣﻞ ﺳﯿﺴﺘﻢ(‪ .‬اﮔﺮ ﺗﻌﺪاد ‪ y i‬ﻫﺎﯾﯽ ﮐﻪ ﮐﻮﭼﮑﺘﺮ از ‪ y‬ﻫﺴﺘﻨﺪ را ‪ n y‬ﺑﻨﺎﻣﯿﻢ و ﺗﻌﺪاد‬
‫ﮐﻞ ‪ y i‬ﻫﺎی ﺗﻮﻟﯿﺪ ﺷﺪه ﺑﺮاﺑﺮ ‪ n‬ﺑﺎﺷﺪ‪ ،‬دارﯾﻢ‪:‬‬
‫‪ny‬‬
‫)‪F(y‬‬
‫‪n‬‬

‫‪18‬‬

You might also like