當我以龜速在python入門的世界中掙扎的時候,遇到了一個熟悉的事物——random walk。所以這篇文章就用來寫關(guān)于random walk(RW)的一些知識和感悟。
1、RW code in python
RW的代碼比較簡單,思路是:設(shè)定起點——用choice函數(shù)設(shè)定每一步橫縱坐標前進的距離——將每一步的距離累積起來——結(jié)束。代碼如下:

2、繪制 RW
繪制圖形主要用到 matplotlib 。思路是根據(jù)RW的的類創(chuàng)建一個實例,然后用散點圖畫出來??梢栽O(shè)置圖形樣式,讓圖形看上去各種fancy。
代碼如下:

圖形如下:


關(guān)于漫步次數(shù):我選擇的次數(shù)是10000次,運行時間大概1s左右。我喜歡這個次數(shù)出來的圖形,顆粒感和氤氳感都剛好。次數(shù)太少顆粒感會比較強,次數(shù)太多則沒有了獨立感變成非常柔順的一片,而且運行時間會延長,當我把次數(shù)設(shè)置在1,000,000時,用了35s鐘才運行完,圖形是云朵樣的一大片。當然,可能有人會喜歡這種柔順的感覺。
關(guān)于圖形樣式:上圖分別選擇了“Blues”和“summer”。圖形樣式的選擇非常多,基礎(chǔ)的是三原色“RGB”,另外也有很多擴展(可以查看pyplot的所有顏色映射 ? ?https://matplotlib.org/gallery/index.html)。我喜歡用單一顏色(比如藍色),疊加顏色漸變之后就已經(jīng)非常富有層次了,如果本身就是多個顏色,再疊加漸變就會比較繁雜混亂。簡潔本身就是美。
3、random walk in life

隨機漫步公式如上,最后一項e是白噪聲,那么可以看出X的均值不隨時間發(fā)生變化。每一步都隨心所欲,就像一個醉漢行走,他的每一步都可以向前向后向左向右。就像我們作為靈長類動物的高級品種,隨機地出現(xiàn)生活在一個很小的星球上,而它隨機地圍繞著千萬億個星系中一個很普通的恒星公轉(zhuǎn)。就像我們隨機地出生在地球的某個年代某個國家,隨機地接受著父母的、大眾媒體的、書籍的影響,隨機地成為一個性格迥異的人。泰戈爾說“生命于你而言,本是一場無意義無目的,充滿隨心所欲的幻想”。
于是兜兜轉(zhuǎn)轉(zhuǎn),百轉(zhuǎn)千回,最終我們可能還是會回到最初的狀態(tài)。心理學家弗蘭克爾說,我們永遠都有選擇,生命的意義在于選擇??墒蔷拖竦潞谔m的死神一樣,最終我們所遭受的種種不幸也許也正是我們的選擇所帶來的。一切似乎都毫無意義。
但是,我們?nèi)匀灰プ龇e極的選擇、嘗試和努力。因為無論終點在哪里(可以在圖形中增強顯示終點,實際上它可以出現(xiàn)在任何位置),這副圖形畫出來都是豐富而美麗的,如果你喜歡,也可以讓它變得絢爛多彩。
以上。
thanks for your time:)
注:文中例子均來自于《Python編程:從入門到實踐》書中。