藏刊網,職稱文章發表、期刊投稿權威機構

投稿咨詢

投稿在線咨詢

專著咨詢

合著&獨著&編委

編輯在線咨詢

專利咨詢

專利申請&轉讓

編輯在線咨詢

軟著版權

軟著版權

編輯在線咨詢

在線溝通

論文&專著&專利

編輯在線咨詢

微信聊

微信掃一掃

首頁 > 計算機論文 > > 運用Hadoop并行技術解決多個經濟市場并行模擬問題
運用Hadoop并行技術解決多個經濟市場并行模擬問題
>2024-06-01 09:00:00


0 引言

經濟周期,又稱商業周期( business cycles) 是國家總體經濟活動中反映出的起伏波動,其表現為很多經濟活動同時發生,包括擴張、全面衰退和收縮,以及作為下一個經濟擴張周期循環開始的復興過程[1].對國家經濟形勢周期性變化進行分析和預測一直以來都是各國政府制定金融策略和應對金融危機的重要依據,對國家政治經濟系統的安全和穩定運行具有重要意義。

對于經濟周期的模擬自 20 世紀 80 年代在全世界范圍內已經開始,學者們開展了大量的研究,取得了巨大的成績。傳統模擬方法中,以 Swarm 模型作為系統的整體模型,利用多主體 Agent 進行模擬仿真[2-3],但不能處理大規模數據,如果多次模擬會耗費大量的時間,并且占用資源過多。將并行技術用到經濟模擬系統中,可以達到提高模擬系統效率的目的,在一定程度上降低硬件成本。

并行計算技術至今為止已經經歷了 3 代模型,第 1 代主要是以處理器計算為中心的 PRAM[4-5]和APRAM[6]等模型; 第 2 代主要是以網絡通信為中心的 BSP[7],NHBL[8]等模型; 第 3 代主要以存儲訪問為中心的 UMH[9]和 HPM[10]等模型。模型更新主要以減少運算過程中的通信開銷,避免讀寫及調度時的沖突為主線,在整體方面提高計算速度和人機交互的速度[11].通過模型的對比分析,在分布式環境中,第 3 代模型雖然能協調各進程的執行和節點之間的數據的傳輸,但無法解決系統中進程失效以及合并進程的中間結果等問題。使用 Hadoop 并行技術能有效解決上述問題。

由 Apache 基金會開發的 Hadoop 是一個分布式系統的基礎架構,實現了分布式文件系統( HadoopDistributed File System,HDFS) ,能運行 MapReduce.MapReduce 是 Google 開發的一種簡潔抽象的分布式計算模型[12],因其高易用性和可擴展性而得到了廣泛應用?;诘?3 代并行計算模型的 MapReduce能夠解決系統中部分進程失效的問題,能自動檢測到失敗的 map 和 reduce 任務,并讓正常的處理機處理這些失敗的任務。以上功能都基于其無共享框架實現[13].

本文在研究仿真模擬和并行計算技術的基礎上提出了運用 Hadoop 并行技術解決多個經濟市場并行模擬問題,實現了多市場同時模擬,實時顯示模擬結果,提高了系統資源的利用率,縮短了仿真模擬的時間。

1 并行計算在系統模擬中的應用

并行計算在系統模擬中的應用,主要針對多處理器的并行進行算法的改進,將 CPU 的利用率問題作為考慮的最主要方面,每個線程對應一個 CPU,多 個 CPU 在 處 理 時 的 加 速 比 為 S( n) =單 CPU 串行處理的最優時間/多 CPU 的并行處理時間, CPU 的 效 率 =S( n)/CPU 數量,如 何 提 高 CPU 的 效 率 成 為 重 中 之重[14].運用多線程同步機制、調度算法和通信機制,進行并行計算程序的設計,構造一個多線程的應用,主要是對線程的調用和線程狀態的轉換進行研究,在線程同步的過程中對線程進行監視和加鎖,以達到對線程的同步控制并增加系統的安全性和整體利用率。多個線程之間的通信機制也對系統整體狀況起到非常關鍵的作用[15].圖 1 為 Hadoop 并行計算體系結構,集群系統首先將求解問題分解到多個節點中,每個節點都有自己 的 處 理 模 塊 ( MapReduce ) 和 存 儲 模 塊( DataNode) ,完成本節點的計算和存儲任務,然后通過各個節點之間的通信( RPC) ,最終完成問題的求解過程,得到結果。

節點間的通信機制是處理過程中一個重要的任務,通信量的大小直接影響系統的性能,為權衡通信機制占用的開銷,為通信機制設置一個閾值,表示通信次數和通信量的大小。閾值的設定要符合系統的現狀,閾值偏高會增加節點間的通信,降低系統的效率,閾值偏低,造成節點間不能很好地通信。對于一個系統來說,首先保證的是在不影響節點通信的同時盡可能提高系統的效率,而不是為了提高系統的效率而影響節點間的通信。

2 仿真模擬方法設計與實現

在 Swarm 環境的支持下,首先模擬一個市場。市場中有多類智能體( Agent) ,包括消費者、生產者、政府和銀行等,通過為每個個體設置初始值( 此值可以是確定的,也可以在一定范圍內隨機選?。?來設定個體的初始狀態和初始資本。Agent 有一定的自主能力,來決定自己的行為,也可以根據周圍環境和自身現在的狀態進行決策,最終通過個體與個體之間的交互影響市場的總體趨勢。由此產生了一個問題: 如何定義市場的大??? 對于較大市場的模擬,能夠得到較好的模擬結果,但數據量的增長和個體復雜度的提升會對系統造成一定影響; 對于較小市場的模擬,得出的結果和實際相差較大?,F實社會中有多個市場,市場之間有一定聯系。用傳統的模擬方法對所有市場在單機中進行模擬,然后再匯總計算模擬的結果,并且每臺計算機只能處理本地的數據。這樣的模擬不僅浪費大量的時間,而且得出的模擬結果并不一定準確。如果使用多臺處理器進行模擬,這樣雖然能節省時間,但是耗費了大量的資源,工作量也比較大。

本文提出使用 Hadoop 并行計算技術解決經濟周期模擬的方法,將多個市場看作是一個完整系統進行模擬。在 Hadoop 集群環境中,每個市場都分配在一個節點中。實際上市場之間是存在交互的,本研究主要是為了體現并行方法對模擬性能的提高,因此不考慮模擬時市場之間的交互,只將各市場的模擬結果進行實時整合,將整合結果展現,得出最終的模擬結果。

在使用 Hadoop 并行計算技術解決經濟周期模擬問題時,文件系統 HDFS 將需要模擬的市場環境和個體屬性存儲到 DataNode 節點,模擬結果以塊的形式存儲到節點中。Hadoop 中節點間數據塊是內容共享的,節點的數據傳遞到服務器端進行整合,計算出結果。如圖 2 所示,HDFS 通過客戶端對整個系統進行控制,在每個 DataNode 節點中進行模擬,存儲在數據塊中,以便對 GDP 和 Gini 系數進行整合,GDP 系數可以用多個市場總和來計算,Gini 系數代表收入差距,用多個市場的的平均值計算。本次模擬的經濟市場沒有貨品交換,但對 GDP 和 Gini系數進行了匯總計算。

MapReduce 中分為 Mapper 法和 Reducer 方法,使用 MapReduce 處理經濟模擬仿真數據問題時,Map 和 Reduce 的操作并不困難,關鍵是對于數據的組織和傳輸[16].Map 是數據本地化、并行化的關鍵,對于包含大量 GDP 和 Gini 系數的大文件來說,如何確定仿真數據的起點和終點、如何將 Map 階段的數據劃分成多個子文件、如何協調子文件節點內部數據分發和 Task 調度的配合成為并行化的難點。

通過 MapReduce 模型與 HDFS 的配合與協作,HDFS 按照數據塊存儲大文件,分解成多個子文件,每個子文件中存儲一個經濟市場的 GDP 或 Gini 系數。首先獲取系統中每個文件的位置,可以是本地數據、也可以是文件系統中其他節點的公共數據,再對數據進行處理[17].

并行計算中數據切分傳遞的工作流程如圖 3 所示,系統需要將各個市場的模擬結果進行實時整合,持續性的將數據傳輸到服務器??紤]到計算機的運行效率,如果數據逐條傳輸,將會大大降低系統的運行效率,為此系統為數據傳輸設置一個閾值,因為數據是實時寫入到文本文檔中的,當文檔中數據到達閾值時,將數據一次性通過 mmap 映射到內存,然后計算 MapTask 的個數,并且按照 mapTask 的個數切分 mmap 映射的內存,分別交給 pthread 線程處理,得出計算結果。

多主體系統 MAS( Mutil-Agent-System) 是由多類主體共同完成經濟問題的模擬。根據抽象出的Agent 模型,利用 Swarm 類庫,為每類主體設定特有的屬性。在二維的市場網絡中,每個個體周圍有 8個鄰居,當鄰居的利潤大于自己的收益時,主體便會圖 3 數據切分傳遞流程根據周圍的鄰居的營銷策略進行學習,通過改變自身的消費預期值、生產預期值和變異的概率等( 每個生產者可以有一定的概率變異成高效企業或者破產) 來改變自身的狀態。

圖 4 為個體之間的邏輯展示圖。暫時只考慮在二維空間內個體之間的關系,每個個體與周圍 8 個相鄰的個體進行交互學習。設自身的坐標為( 0,0) ,相鄰個體的坐標從( -1,-1) 到( 1,1) ,按照式( 1) 進行學習:


式中,P ( 0,0) 為學習者的消費預期或生產預期值;P( i,j) 為周圍相應鄰居中大于自身消費預期或生產預期值的個體; P( m,n) 為周圍鄰居小于自身值的個體,按照一定的權重將高和低的消費額相結合。

通過實驗得出,如果高消費和低消費占相同比重,得出的結果不能保證經濟的穩定增長,如果高消費比重過高,經濟周期的規律性受到影響,此處將高消費的比重設置為 0. 6,低消費的比重設置為 0. 4,既避免了自身值不斷增加而使模擬結果與現實差距較大,也使市場的 GDP 緩慢增長,并呈現周期性。

圖 5 為經濟模擬中 MapReduce 的工作流程,在pthread 線程中首先取得內存中的數據,標記數據塊來自的市場。對本地的模擬數據進行保存時,為每個保存的數據添加一個時間戳,Mapper 方法處理格式的數據,key 是 value 數據的時間戳,value 是模擬得出的數據,為 GDP 或 Gini 系數。通過 Mapper 處理后,輸出以 GDP 或 Gini 系數為組的數據,在同一時刻有幾組來自不同市場的數據,他們的 key 值相同,即是在同一時刻得出的模擬數據。

Reducer 方法處理以時間戳為 Key,以 GDP 或 Gini為 value 值的數據,在接收 Mapper 方法處理的數據時,判斷如果是 GDP 值,則整合策略是將 key 值相同的 value 作和,如果是 Gini 系數則取平均數,經過Reduce 處理后,便將幾個市場的數據進行整合,得出最終結果。

3 并行方法與傳統方法的對比

將 Hadoop 技術應用到經濟模擬中,無論是資源利用率還是系統的整體效率都有很大的提高。在傳輸數據時,傳統的數據處理方法是將所有數據逐條輸入,依次經過 Mapper 和 Reducer 進行處理,最后輸出結果。使用將數據映射到內存的方法,能夠有效避免 map 到 reduce 階段的網絡 IO 和磁盤 IO 的開銷。圖 6 為在單個處理器上模擬單個市場,當模擬出現第 1 個波谷時所需要的時間為 1070 s; 圖 7為使用 Hadoop 在 3 個處理器上并行整合 3 個模擬市場,所用的時間為 1180 s.如果只用 1 臺處理器模擬多個市場,所需要的時間是所有模擬時間之和,并且不能整合3 個市場的 GDP 和 Gini 系數,如果只是單純使用多個處理器進行模擬,只能得出每個市場的模擬結果,并不能將結果進行整合。使用Hadoop 并行技術進行模擬雖然模擬時間多出 110s,但由于是 3 個市場同時進行模擬,比非并行模擬節省了大量的時間,提高了系統的效率和資源利用率。

4 結束語

Hadoop 作為一種新的并行計算技術,應用到經圖 6 單處理器中單個經濟市場模擬圖 7 并行計算中 3 個經濟市場并行模擬濟仿真模擬領域,拓寬了并行技術的應用領域,不僅能有效提高模擬的效率,增加系統的利用率,并且為拓寬經濟模擬的深度和廣度提供了一定的基礎。如果要增加模擬市場的個數,只需要在之前配置好的并行環境中增加計算節點,將經濟市場分別放置到不同的節點進行運算,最后將得出的模擬結果進行整合,得出最終的模擬結果。本文提出的方法未涉及市場間個體的交互,也沒有考慮到市場的大小對經濟模擬結果造成的影響。下一步工作中,可以通過改進數據整合方法,或改進主體的學習策略,以得到更好的并行模擬結果。

參考文獻:
[1]Diebold F X,RudebuschG D. Measuring businesscycles: a modern perspective[R]. MassachusettsCambridge City: National Bureau of Economic Re-search,1994
[2]郝水俠,李凡長。 構建一種多 Agent 并行計算模型[J]. 計算機技術與發展,2006,16( 5) :71-73
[3]曹慕昆,馮玉強。 基于多 Agent 計算機仿真實驗平臺 Swarm 的綜述[J]. 計算機應用研究,2005,28( 9) : 1-3
[4]Fortune S, Wyllie J. Parallelism in randomaccess machines[C]∥ Proceedings of the tenthannual ACM symposium on Theory ofcomputing.ACM,1978: 114-118
[5]Goldschlager L M. A universal interconnectionpattern for parallel computers[J]. Journal of theACM ( JACM) ,1982,29( 4) : 1073-1086
[6]Cole R,Zajicek O. The APRAM: Incorporatingasynchrony into the PRAM model

綜合排序
投稿量
錄用量
發行量
教育界

主管:廣西壯族自治區新聞出版局

主辦:廣西出版雜志社

國際:ISSN 1674-9510

國內:CN 45-1376/G4

級別:省級期刊

中國報業

主管:中國報業協會

主辦:中國報業協會

國際:ISSN 1671-0029

國內:CN 11-4629/G2

級別:國家級期刊

中國房地產業

主管:中華人民共和國住房部和...

主辦:中國房地產業協會

國際:ISSN 1002-8536

國內:CN 11-5936/F

級別:國家級期刊

建筑與裝飾

主管:天津出版傳媒集團有限公司

主辦:天津科學技術出版社有限...

國際:ISSN 1009-699X

國內:CN 12-1450/TS

級別:省級期刊

財經界

主管:國家發展和改革委員會

主辦:國家信息中心

國際:ISSN 1009-2781

國內:CN 11-4098/F

級別:國家級期刊

文化月刊

主管:中華人民共和國文化部

主辦:中國文化傳媒集團有限公司

國際:ISSN 1004-6631

國內:CN 11-3120/G2

級別:國家級期刊

期刊在線投稿系統
上傳文件
支持上傳.doc、.docx、.pdf文件
18年國內外學術服務,發表國際文獻請認準藏刊網官網

資深編輯團隊

專業設計投入方案

投稿成功率極高

企業信譽保障

對公交易更安全

人民群眾口碑好

高效投稿流程

審稿快!出刊快!檢索快!

正規刊物承諾

無假刊!無套刊!

投稿成功!

藏刊網提醒您

1.稿件將進入人工審稿階段,審稿后會有編輯聯系您,請保持手機暢通。

2.為避免一稿多投、重刊等現象影響您的發表,請勿再投他刊。

確定

投稿失??!

藏刊網提醒您

由于網絡問題,提交數據出現錯誤,請返回免費投稿頁面重新投稿,謝謝!

確定

藏刊網收錄400余種期刊,15年誠信發表服務。

發表職稱文章,覆蓋教育期刊、醫學期刊、經濟期刊、管理期刊、文學期刊等主流學術期刊。

  投稿郵箱:cangkan@163.com

本站少量資源屬于網絡共享如有侵權請您聯系我們,將在第一時間刪除。

版權 2009-2022 版權所有:河北藏刊文化發展有限公司 工信部備案:ICP備20016223號 冀公網安備13010502002858號

91精品手机国产在线播放|欧洲亚洲精品免费二区|亚洲av日韩综合一区二区三区|精品综合久久久久久88