无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

附錄 | Bug踩坑----隨機數(shù)引擎

2020-03-19 19:53 作者:有木乘舟  | 我要投稿

? 在計算隨機運動軌跡的時候,需要用到c++11的隨機數(shù)引擎類(random_number_engines)來產(chǎn)生隨機數(shù)序列,并通過隨機數(shù)分布類(random-number distribution)使用隨機數(shù)引擎生成服從特定概率分布的隨機數(shù)。

? 正常情況下,只需要這樣就可以生成一個服從分布的隨機數(shù):

? 但是,這個隨機數(shù)引擎類有個巨大的坑,即:

  • default_random_engine類下一次運算結(jié)果依賴于上一次,初次實例化該類的時候,它的值只和time(0)有關(guān)。因此,在同一個實例中,多次使用該類去生成隨機數(shù),每一次的計算結(jié)果依賴于上一次的計算結(jié)果,因此能生成數(shù)值分布較大的隨機數(shù)。

  • 但是,由于它每次實例化只和time(0)有關(guān),所以如果我們在較短時間內(nèi)多次實例化該類,每次都會調(diào)用time(0)重新初始化,且由于time(0)的數(shù)值差別不大,因此 e(time(0)) 的計算結(jié)果是基本相同的,就導(dǎo)致了 m(e) 的值也基本相同。

? 這個特性在需要在一個類中多次調(diào)用另一個類來生成一個隨機數(shù)的時候,會發(fā)生意想不到的BUG:

? 上面這樣使用隨機數(shù)引擎類的結(jié)果是每次的 t 都是差不多的,相差很小,就達不到生成隨機數(shù)的效果了。

? 可以使用 rand()函數(shù)來避免這個BUG,但是注意也是同樣不能設(shè)置隨機種子,不然還是會跟隨機數(shù)引擎類一樣。

附錄 | Bug踩坑----隨機數(shù)引擎的評論 (共 條)

分享到微博請遵守國家法律
高淳县| 平度市| 罗平县| 鹿泉市| 察哈| 兴仁县| 永州市| 安庆市| 永定县| 容城县| 楚雄市| 宜昌市| 廊坊市| 德阳市| 六安市| 轮台县| 浦北县| 交城县| 玉林市| 兴仁县| 咸宁市| 射阳县| 桐梓县| 衡阳县| 合江县| 无棣县| 韶关市| 晋州市| 板桥市| 丰原市| 德庆县| 赤壁市| 林州市| 安泽县| 灌阳县| 陕西省| 高清| 巴彦淖尔市| 丰城市| 扶绥县| 双柏县|