欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)隨機(jī)游走的示例代碼

 更新時(shí)間:2023年12月19日 09:58:10   作者:python收藏家  
隨機(jī)游走是一個(gè)數(shù)學(xué)對(duì)象,稱為隨機(jī)或隨機(jī)過程,它描述了一條路徑,該路徑由一些數(shù)學(xué)空間上的一系列隨機(jī)步驟組成,下面我們就來(lái)學(xué)習(xí)一下Python如何實(shí)現(xiàn)隨機(jī)游走的吧

隨機(jī)游走是一個(gè)數(shù)學(xué)對(duì)象,稱為隨機(jī)或隨機(jī)過程,它描述了一條路徑,該路徑由一些數(shù)學(xué)空間(如整數(shù))上的一系列隨機(jī)步驟組成。隨機(jī)游走的一個(gè)基本例子是整數(shù)線上的隨機(jī)游走,它從0開始,每一步以相等的概率移動(dòng)+1或-1。其他例子包括分子在液體或氣體中行進(jìn)時(shí)的路徑,覓食動(dòng)物的搜索路徑,波動(dòng)股票的價(jià)格和賭徒的財(cái)務(wù)狀況都可以通過隨機(jī)行走模型來(lái)近似,即使它們?cè)诂F(xiàn)實(shí)中可能不是真正的隨機(jī)。

如這些例子所示,隨機(jī)游走在許多科學(xué)領(lǐng)域都有應(yīng)用,包括生態(tài)學(xué)、心理學(xué)、計(jì)算機(jī)科學(xué)、物理學(xué)、化學(xué)、生物學(xué)以及經(jīng)濟(jì)學(xué)。隨機(jī)游走解釋了在這些領(lǐng)域中觀察到的許多過程的行為,因此可以作為記錄隨機(jī)活動(dòng)的基本模型。作為更數(shù)學(xué)的應(yīng)用,pi的值可以通過在基于代理的建模環(huán)境中使用隨機(jī)游走來(lái)近似。

別再說無(wú)聊的理論了。讓我們休息一下,同時(shí)了解一些代碼知識(shí)。所以,為了編碼隨機(jī)游走,我們基本上需要一些Python庫(kù),一些用來(lái)做數(shù)學(xué),另一些用來(lái)繪制曲線。

所需庫(kù)

random

numpy

matplotlib

一維隨機(jī)游走

一維隨機(jī)游走的一個(gè)基本例子是整數(shù)線上的隨機(jī)游動(dòng),它從0開始,每一步移動(dòng)+1或-1、概率相等。

# Python code for 1-D random walk.
import random
import numpy as np
import matplotlib.pyplot as plt

# Probability to move up or down
prob = [0.05, 0.95]

# statically defining the starting position
start = 2
positions = [start]

# creating the random points
rr = np.random.random(1000)
downp = rr < prob[0]
upp = rr > prob[1]


for idownp, iupp in zip(downp, upp):
	down = idownp and positions[-1] > 1
	up = iupp and positions[-1] < 4
	positions.append(positions[-1] - down + up)

# plotting down the graph of the random walk in 1D
plt.plot(positions)
plt.show()

輸出

二維隨機(jī)游走

在高維數(shù)中,隨機(jī)游走點(diǎn)的集合具有有趣的幾何性質(zhì)。事實(shí)上,人們得到了一個(gè)離散的分形,即在大尺度上表現(xiàn)出隨機(jī)自相似性的集合。在小尺度上,可以觀察到由執(zhí)行行走的網(wǎng)格產(chǎn)生的“鋸齒狀”。隨機(jī)游走的軌跡是所訪問的點(diǎn)的集合,被認(rèn)為是一個(gè)集合,而不考慮游走何時(shí)到達(dá)該點(diǎn)。在一個(gè)維度中,軌跡只是行走所達(dá)到的最小高度和最大高度之間的所有點(diǎn)。

# Python code for 2D random walk.
import numpy
import pylab
import random

# defining the number of steps
n = 100000

#creating two array for containing x and y coordinate
#of size equals to the number of size and filled up with 0's
x = numpy.zeros(n)
y = numpy.zeros(n)

# filling the coordinates with random variables
for i in range(1, n):
	val = random.randint(1, 4)
	if val == 1:
		x[i] = x[i - 1] + 1
		y[i] = y[i - 1]
	elif val == 2:
		x[i] = x[i - 1] - 1
		y[i] = y[i - 1]
	elif val == 3:
		x[i] = x[i - 1]
		y[i] = y[i - 1] + 1
	else:
		x[i] = x[i - 1]
		y[i] = y[i - 1] - 1
	

# plotting stuff:
pylab.title("Random Walk ($n = " + str(n) + "$ steps)")
pylab.plot(x, y)
pylab.savefig("rand_walk"+str(n)+".png",bbox_inches="tight",dpi=600)
pylab.show()

輸出

應(yīng)用領(lǐng)域

在計(jì)算機(jī)網(wǎng)絡(luò)中,隨機(jī)游走可以對(duì)在服務(wù)器處緩沖的傳輸分組的數(shù)量進(jìn)行建模。

在群體遺傳學(xué)中,隨機(jī)游走描述了遺傳漂變的統(tǒng)計(jì)特性。

在圖像分割中,隨機(jī)游走被用于確定標(biāo)簽(即,“對(duì)象”或“背景”)以與每個(gè)像素相關(guān)聯(lián)。

在大腦研究中,隨機(jī)游走和強(qiáng)化隨機(jī)游走被用來(lái)模擬大腦中神經(jīng)元放電的級(jí)聯(lián)。

隨機(jī)游走也被用于對(duì)諸如在線社交網(wǎng)絡(luò)之類的大規(guī)模在線圖進(jìn)行采樣。

到此這篇關(guān)于Python實(shí)現(xiàn)隨機(jī)游走的示例代碼的文章就介紹到這了,更多相關(guān)Python隨機(jī)游走內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python微信跳一跳游戲輔助代碼解析

    python微信跳一跳游戲輔助代碼解析

    本篇文章給大家詳細(xì)講解了用python寫的一個(gè)微信跳一跳輔助腳本的源碼,對(duì)此有興趣的朋友參考下吧。
    2018-01-01
  • Python的Tornado框架的異步任務(wù)與AsyncHTTPClient

    Python的Tornado框架的異步任務(wù)與AsyncHTTPClient

    Tornado的奧義就在于異步處理來(lái)提高單線程的Python程序執(zhí)行性能,這里我們就來(lái)詳解Python的Tornado框架的異步任務(wù)與AsyncHTTPClient,需要的朋友可以參考下
    2016-06-06
  • python修改注冊(cè)表終止360進(jìn)程實(shí)例

    python修改注冊(cè)表終止360進(jìn)程實(shí)例

    這篇文章主要介紹了python修改注冊(cè)表終止360進(jìn)程實(shí)例,是非常實(shí)用的進(jìn)程操作技巧,需要的朋友可以參考下
    2014-10-10
  • 簡(jiǎn)單談?wù)凱ython中函數(shù)的可變參數(shù)

    簡(jiǎn)單談?wù)凱ython中函數(shù)的可變參數(shù)

    和C語(yǔ)言一樣,Python中也有可變參數(shù)函數(shù),即一個(gè)函數(shù)可以接收多個(gè)參數(shù),而這些參數(shù)的個(gè)數(shù)在函數(shù)調(diào)用之前事先是不知道的。下面這篇文章我們來(lái)介紹下python中的可變參數(shù)
    2016-09-09
  • Tornado協(xié)程在python2.7如何返回值(實(shí)現(xiàn)方法)

    Tornado協(xié)程在python2.7如何返回值(實(shí)現(xiàn)方法)

    下面小編就為大家?guī)?lái)一篇Tornado協(xié)程在python2.7如何返回值(實(shí)現(xiàn)方法)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2017-06-06
  • Python使用裝飾器模擬用戶登陸驗(yàn)證功能示例

    Python使用裝飾器模擬用戶登陸驗(yàn)證功能示例

    這篇文章主要介紹了Python使用裝飾器模擬用戶登陸驗(yàn)證功能,結(jié)合登錄驗(yàn)證實(shí)例形式分析了裝飾器的簡(jiǎn)單使用技巧,需要的朋友可以參考下
    2018-08-08
  • python實(shí)現(xiàn)網(wǎng)頁(yè)錄音效果

    python實(shí)現(xiàn)網(wǎng)頁(yè)錄音效果

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)網(wǎng)頁(yè)錄音效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • PyQt5根據(jù)控件Id獲取控件對(duì)象的方法

    PyQt5根據(jù)控件Id獲取控件對(duì)象的方法

    今天小編就為大家分享一篇PyQt5根據(jù)控件Id獲取控件對(duì)象的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2019-06-06
  • python中upper是做什么用的

    python中upper是做什么用的

    在本篇文章里小編給大家整理的是一篇關(guān)于python中upper的作用的相關(guān)文章,有需要的朋友們可以參考下。
    2020-07-07
  • Python+Appium實(shí)現(xiàn)自動(dòng)化清理微信僵尸好友的方法

    Python+Appium實(shí)現(xiàn)自動(dòng)化清理微信僵尸好友的方法

    這篇文章主要介紹了Python+Appium實(shí)現(xiàn)自動(dòng)化清理微信僵尸好友的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02

最新評(píng)論