999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Mesa的ABM仿真

2021-10-15 01:13:12劉艷玲姚建盛
電腦與電信 2021年7期
關(guān)鍵詞:可視化功能模型

劉艷玲 姚建盛*

(1.桂林理工大學(xué)旅游與風(fēng)景園林學(xué)院,廣西 桂林 541004;2.廣西旅游產(chǎn)業(yè)研究院,廣西 桂林 541004)

1 引言

在許多實(shí)際的大型系統(tǒng)中,如社會系統(tǒng)、經(jīng)濟(jì)系統(tǒng)和生物系統(tǒng)等,各個要素之間的相互作用錯綜復(fù)雜,系統(tǒng)演化的方式很難通過數(shù)理模型描述,因此仿真是研究這類復(fù)雜系統(tǒng)的重要手段之一[1]。另外,仿真相對于實(shí)物模擬,具有降低風(fēng)險和節(jié)約成本的優(yōu)點(diǎn),而且可用于預(yù)測和論證方案可行性[2]。

智能體模型(ABM,Agent-based Modeling)是一種流行的建模和仿真技術(shù),將人、組織、企業(yè)、動物等個體建模為智能體Agent,Agent具有自身狀態(tài)和行為規(guī)則,通過微觀個體(Agent)行為和交互活動,可以再現(xiàn)突發(fā)現(xiàn)象、動態(tài)均衡和非線性結(jié)果等,從而推演系統(tǒng)的宏觀現(xiàn)象和運(yùn)行結(jié)果,是當(dāng)前復(fù)雜系統(tǒng)研究的重要方法之一,已經(jīng)廣泛應(yīng)用于社會科學(xué)、生物學(xué)、化學(xué)、地球科學(xué)和計(jì)算機(jī)科學(xué)等多個領(lǐng)域[3]。

ABM通過計(jì)算機(jī)程序模擬系統(tǒng)的動態(tài)運(yùn)行,迄今為止已有眾多ABM仿真工具軟件,如Swarm、NetLogo、Repast等等,其中在社會生態(tài)領(lǐng)域應(yīng)用最廣泛的是NetLogo[4]。NetLogo是基于ABM模型對自然和社會現(xiàn)象進(jìn)行仿真的可編程建模環(huán)境,特別適合對隨時間演化的復(fù)雜系統(tǒng)進(jìn)行建模。但是,NetLogo的建模語言Lisp屬于一個古老而奇異的編程語言家族,看似簡單,實(shí)則龐大精深,想精通難度很大。尤其在設(shè)計(jì)復(fù)雜系統(tǒng)調(diào)參時,NetLogo無法像腳本語言一樣方便配置參數(shù)和對比分析不同參數(shù)環(huán)境下系統(tǒng)輸出結(jié)果[5]。

鑒于Python語言在數(shù)據(jù)統(tǒng)計(jì)分析、挖掘和可視化上的強(qiáng)大功能,有項(xiàng)目基于Python開發(fā)控制NetLogo的平臺,如PyNetLogo[4]和NL4Py[5]等,但是同時使用多種語言對于社會科學(xué)研究人員來說還是有難度。另外一個項(xiàng)目Mesa基于Python3開發(fā)一個ABM框架[6],既可以利用Python語言建立ABM模型,又可以充分利用Python語言的強(qiáng)大功能,進(jìn)行數(shù)據(jù)分析和可視化,方便學(xué)術(shù)研究。論文通過示例介紹Mesa,為ABM仿真研究者提供一個新的選擇工具和快速入門途徑。

2 Mesa——ABM仿真框架

Mesa是基于Python3開發(fā)的、模塊化的開源ABM仿真框架,可用于構(gòu)建、分析和可視化ABM模型。Mesa從頭開始構(gòu)建,能夠借鑒當(dāng)前主流ABM仿真工具的優(yōu)勢和彌補(bǔ)不足,借助Python語言的優(yōu)勢,Mesa目標(biāo)是成為一個可以替代基于其他語言的ABM流行框架,比如NetLogo、Repast或MASON。目前Mesa在Github上擁有2.4k個star和588個fork,并且一直處于活躍更新狀態(tài)。

Mesa的體系架構(gòu)如圖1所示,框架整體由三部分組成,分別是模型(Modeling)、分析(Analysis)和可視化(Visualization)。其中模型(Modeling)包括三部分,即仿真空間(Space)、智能體(Agent)和調(diào)度器(Scheduler),Space是Agent的活動場景,Scheduler決定Agent在Space上的活動順序,Modeling負(fù)責(zé)配置三個組件。分析(Analysis)模塊主要是數(shù)據(jù)收集器和批處理運(yùn)行器。可視化包括模型參數(shù)設(shè)置可視化、仿真場景可視化和仿真結(jié)果可視化三部分。

圖1 Mesa體行架構(gòu)

Mesa框架系統(tǒng)文件及其相關(guān)功能如下:

agent.py、model.py分別是Agent和Model的基類,由用戶依據(jù)實(shí)際仿真任務(wù)進(jìn)行繼承和擴(kuò)展;space.py是Space空間類,實(shí)現(xiàn)了包括Grid、ContinuousSpace、NetworkGrid等仿真空間;time.py實(shí)現(xiàn)了調(diào)度器功能,包括BaseScheduler、RandomActiation、SimultaneousActivation、StagedActivation等調(diào)度策略;datacollection.py和batchrunner.py實(shí)現(xiàn)數(shù)據(jù)收集和批處理不同參數(shù)等功能;目錄Visualization中的文件Modular-Visualization.py、TextVisualization.py、UserParam.py實(shí)現(xiàn)模型可視化、文本可視化和參數(shù)可視化功能。

3 仿真示例

通過示例演示Mesa的使用和仿真效果,選擇典型的病毒傳播模型SIR作為仿真案例。在SIR中,種群(Population)內(nèi)個體的狀態(tài)可分三類:

(1)S:易染狀態(tài)(Susceptible),即健康狀態(tài);

(2)I:感染狀態(tài)(Infected),處于感染狀態(tài)的個體,可以感染其他健康狀態(tài)個體;

(3)R:移除狀態(tài)或者恢復(fù)狀態(tài)(Removed or Recovered),也稱為免疫狀態(tài),即個體被感染后恢復(fù),不再被感染,也不感染其他個體。

設(shè)S(t)是t時刻“S”狀態(tài)的個體數(shù),I(t)是t時刻“I”狀態(tài)的個體數(shù),R(t)是t時刻“R”狀態(tài)的個體數(shù),N(t)是t時刻整個種群的個體數(shù)量,個體接觸率為λ,治愈率為μ,則agent狀態(tài)遷移圖如圖2所示。

圖2 SIR模型狀態(tài)遷移圖

設(shè)種群總數(shù)為固定值N,則有式(1)的微分方程組:

在傳統(tǒng)的仿真中,基于公式(1)計(jì)算仿真結(jié)果,能看到標(biāo)準(zhǔn)的圖形,但與現(xiàn)實(shí)不符?;贏BM的仿真,每個個體隨機(jī)移動,接觸率與種群密度和移動模型相關(guān)。設(shè)個體間傳染概率為β,恢復(fù)概率為γ,當(dāng)易感染agent同時接觸n個感染agent時,感染概率是n*β。

依據(jù)Mesa框架編寫3個代碼文件:

(1)agent.py實(shí)現(xiàn)People類,繼承Mesa的智能體基類Agent,設(shè)置agent具有三種狀態(tài)及其狀態(tài)改變規(guī)則,通過代碼:

實(shí)現(xiàn)agent的簡單隨機(jī)游走功能。

(2)model.py實(shí)現(xiàn)SIR類,繼承Mesa的智能體基類Model,主要是配置仿真空間、調(diào)度器、數(shù)據(jù)收集器、生成agent等,關(guān)鍵代碼如下:

(3)server.py實(shí)現(xiàn)可視化web服務(wù)器:

定義自定義函數(shù)sir_portrayal(agent),設(shè)計(jì)agent在仿真空間的形狀、顏色等信息;

設(shè)置畫布、大小,并將函數(shù)sir_portrayal(agent)傳遞給畫布:

設(shè)計(jì)收集數(shù)據(jù)的可視化圖表:

設(shè)置四個仿真模型參數(shù),用滑塊設(shè)置默認(rèn)值、最小值、最大值和step步長:

配置可視化文本服務(wù)器,包括模型、畫布、圖表、參數(shù)等信息:

仿真運(yùn)行界面如圖3所示:

圖3 仿真可視化界面

4 結(jié)語

本文介紹了ABM模型仿真在復(fù)雜系統(tǒng)研究中的重要作用,重點(diǎn)闡述基于Python的ABM仿真框架Mesa的優(yōu)勢、結(jié)構(gòu),并通過SIR模型仿真案例描述Mesa的使用方法,為Python用戶實(shí)現(xiàn)ABM仿真探索一個新方法。

猜你喜歡
可視化功能模型
一半模型
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運(yùn)行動態(tài)分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
重要模型『一線三等角』
基于CGAL和OpenGL的海底地形三維可視化
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
“融評”:黨媒評論的可視化創(chuàng)新
傳媒評論(2019年4期)2019-07-13 05:49:14
關(guān)于非首都功能疏解的幾點(diǎn)思考
3D打印中的模型分割與打包
主站蜘蛛池模板: 在线观看国产一区二区三区99| 伊人久久青草青青综合| 在线观看精品自拍视频| 亚卅精品无码久久毛片乌克兰| 久久精品国产国语对白| www.国产福利| 亚洲精品国产首次亮相| 天天操天天噜| 国产成人亚洲精品色欲AV| 国产小视频网站| 国产色网站| 国产成人免费高清AⅤ| 欧美激情综合| 国产女同自拍视频| 538精品在线观看| 青青草原国产| 黄色网在线| 波多野结衣一区二区三区88| 国产新AV天堂| 天堂亚洲网| 国产精品区网红主播在线观看| 呦视频在线一区二区三区| 国内黄色精品| 久久无码av三级| 免费黄色国产视频| 野花国产精品入口| 99在线观看免费视频| 日韩天堂网| 99re热精品视频国产免费| 婷婷色狠狠干| 国产精品人人做人人爽人人添| 精品一区二区三区波多野结衣| 国产午夜精品一区二区三区软件| 一级香蕉人体视频| 亚洲精品无码抽插日韩| 成人午夜网址| 国产在线拍偷自揄拍精品| 污网站在线观看视频| 69视频国产| 98超碰在线观看| 波多野结衣久久高清免费| 中文国产成人久久精品小说| 激情無極限的亚洲一区免费| 999在线免费视频| 国产精品亚洲一区二区三区z| 中国精品自拍| 久久人人97超碰人人澡爱香蕉| 青青热久免费精品视频6| 99久久精品免费看国产免费软件| 九色综合伊人久久富二代| 日韩国产一区二区三区无码| 免费在线一区| 日韩少妇激情一区二区| 亚洲精品亚洲人成在线| 国产成人精品高清在线| 国产福利大秀91| 911亚洲精品| 色婷婷色丁香| 大乳丰满人妻中文字幕日本| 无码啪啪精品天堂浪潮av| 亚洲AV免费一区二区三区| 婷婷六月综合| 在线国产资源| 91亚洲精选| 福利视频久久| 久久久久亚洲AV成人网站软件| 国产特级毛片| 制服丝袜 91视频| 九九香蕉视频| 波多野结衣视频一区二区| 黄色网在线免费观看| 国产成人免费视频精品一区二区| 久久成人18免费| 亚洲成aⅴ人在线观看| 日本黄色a视频| 97国产在线观看| 99久久精彩视频| 91黄色在线观看| 欧美性色综合网| 91小视频在线播放| 亚洲精品欧美重口| 国产 在线视频无码|