萬曉龍 楊倬 蘇建華 魏紅芳 王瑞河 黃瑞,3 張木森
1. 中國石油長慶油田分公司勘探開發研究院;2. 北京思達威云石油工程技術研究院;3. 深圳清華大學研究院;4. 昆侖數智科技有限責任公司
四維地震技術[1]因其具有時效性、可繼承性等特點,也被稱為時延地震,利用四維地震數據體和地質工程、油藏工程等多學科數據,對儲層進行動態評價,受到了越來越多的關注,國內外學者也進行了大量研究,2015年陳志海等[2]基于四維地震振幅差異與有色反演技術,進行了油藏水驅前緣與剩余油分布研究,對剩余油挖潛方案的制定提供了技術支撐;2016年Yin Z等[3]建立了井間波動方程,利用四維地震數據,進行了井間連通性評價研究;2017年Gustavo A等[4]基于油藏模擬模型,利用四維地震信息與測井解釋成果,進行了注水和注氣生產效果評價;2018年Harris K等[5]構建了四維地震剖面模型,對二氧化碳驅替現場的生產效果進行了評價;2019年辛坤烈[6]利用時移地震的屬性差異分析方法,進行了SAGD蒸汽腔監測技術研究;2019年Feder等[7]闡述了四維地震技術與油藏模擬技術協同應用對于油藏動態預測的重要性,并指出了其發展趨勢;2020年Almeida等[8]利用四維地震信息與歷史井數據協同建模,解決了油藏模擬過程的不收斂與低擬合率等問題。由此可見,大量學者已將四維地震數據逐漸應用于油氣田生產中,而在油藏精細描述過程中利用時效生產數據構建動態數值模擬系統的研究較少。由于油藏模型動態模擬所需的時效性數據采集、處理與同步計算等方面技術不完善,建模或數模等專業軟件[9-11]的使用方式仍主要為單人單機模式,模型資源管理系統與應用軟件系統相互獨立,不利于開發具備時效性的油藏模型動態模擬計算技術,也制約著油田數字化與智能化建設。
精細油藏描述作為可以更加細致地刻畫油氣藏地下展布與形態的手段,使油藏研究由定性和半定量走向定量化,由傳統的油藏地質研究轉入多學科一體化的系統研究[12]。油藏模擬技術作為精細油藏描述以及開發方案制定的核心技術之一,由于缺乏針對油藏模擬運算過程數據需求特點專項應用的模型資源管控系統,仍主要依托國外油藏建模或數模商業化軟件[13-14],很難對所涉及成果進行及時共享、數據管控、歷史模型動態更新,且逐年累積的成果數據易形成資源孤島且缺乏實時生產數據應用場景,不利于實現具備時效性特征的油田生產過程中的應用技術支撐系統,甚至出現因存儲不規范造成的數據遺失、研究成果應用率低等問題。此外,油藏模擬模型體作為精細油藏描述過程的核心成果,通過大量不同類型的商業化專業軟件進行可視化和應用,不僅成本高、許可有限、操作流程復雜、培訓難度大,還對不熟悉各種軟件的研究人員造成不便,無法對每年構建的油藏模型與研究成果進行有效合理的再應用,導致了模型資源利用率低,以及大量的數據整理、模型構建與數模計算等重復性工作等現象的出現。
因此,本文主要針對長慶油田數字化與智能化建設需求,面向精細油藏描述應用流程,結合油藏模擬過程模型資源特點,脫離國外商業化專業軟件的可視化應用技術與數據管理系統應用技術的支持,進行項目資源的標準化管控、模型數據可循環應用等方面的技術研究,并基于油藏數值模擬過程的數據集整合需求,以實現可支持實時生產動態數據采集、業務數據供給、歷史模型管控與計算等一體化技術支撐為目的,開發了一種具備時效性、可繼承性特點的油藏精描動態模擬模型資源管控系統,系統可大幅度降低模型數據處理與構建時間,避免大量重復性工作,為精描項目資源共享和油藏模擬動態計算提供重要的技術支持。
B/S與C/S混合架構模式與軟件開發編程語言[15-16]為油藏動態模擬過程中時效生產數據采集、數據管控與標準化處理、可視化輸出與編輯、模型計算等功能的實現提供了技術支撐,系統采用的開發環境概況如下。
系統運行環境:Winows7 64位或以上版本;系統開發平臺:Visual Studio 2017;前后端開發語言:C#、C++;目標框架環境:.NET Framework 4.5;用戶界面框架:WPF;圖像可視化模塊:OpenGL 3.3函數庫;數據庫環境:MySQL;數據通信:TCP/IP協議。
系統構建采用點、線、面、體一體化數據模型體的技術路線,基于系統用戶較多、分散且應用功能需求較多的特點,根據油氣藏動態與靜態數據類型的劃分規則,系統用戶登錄和權限管理、生產與測井數據傳輸和管理等功能采用B/S架構,系統前端可視化應用與模型體項目資源的管理等功能采用C/S架構。形成在統一數據環境下功能應用,進行數據處理與模型體可視化再現。支持數據共享、調度與管理等應用功能,并針對油藏模擬器計算資源類型的需求,進行計算數據的傳輸與成果的應用。本文所述動態模擬資源管控系統應用架構見圖1。

圖1 油藏動態模擬模型資源管控系統應用架構Fig. 1 Application architecture of reservoir performance simulation model resource control system
系統可視化功能界面采用VS2017 C#環境下的WPF框架與圖像引擎技術開發,并基于面向C++語言開發環境的OpenGL3.3版本函數庫,實現了三維模型圖像的可視化技術。系統功能框架主要應用流程:(1)用戶通過WEB網頁端進行登錄與權限驗證;(2)驗證通過,激活數據處理與管控模塊;(3)進行數據標準化處理、數據特征可視化分析、資源錄入與傳輸、模型可視化等功能應用;(4)目標模型數據集傳輸,并進行油藏模型動態計算模擬器的調用,完成模擬計算過程;(5)成果的可視化輸出與入庫歸檔功能模塊應用。
(1)數據通信功能。基于本地項目庫與網絡數據庫,依據油藏動態建模與數模應用所需數據集,建立實時生產數據、歷史基礎數據、歷史油藏模型數據等資源的標準化傳輸接口,進行客戶端、服務器端的數據動態采集與數據庫同步更新。
(2)資源管理功能。面向實時采集生產數據庫和歷史數據資源庫,劃分服務器端的項目數據存儲區域和占用存儲空間大小,標定數據存儲類型,設計數據管理方式,并提供入庫、檢索、上傳、提取、分級分類、操作權限設定、綜合研究支持等應用功能。
(3)用戶管理功能。針對不同單位用戶、不同崗位角色、跨部門與業務領域的應用技術需求等,支持指定的用戶進行角色分類、資源共享設置、資源訪問設置、管理以及授予相應的資源庫訪問權限等。
(4)數據與模型體標準化處理功能。針對油藏原始數據與成果模型,結合地質建模與數模過程的數據應用流程,進行項目數據類型劃分、存儲模式與類型規整,實現項目中的構造、沉積相、孔隙度、滲透率、油水飽和度與地層壓力等模型粗化前后的地質和油藏等模型體數據處理,以及動態模擬計算所需測井解釋曲線、井網井位空間分布、地質分層、產量、生產措施等基礎數據標準化整合與處理。
(5)數據可視化分析功能。通過井位、測井、生產等基礎數據分別以井平面圖、剖面圖、測井曲線和生產指標曲線等形式進行展示,并進行油氣藏模型的三維仿真展示與交互應用。
系統采用了B/S與C/S混合架構模式,主要由面向WEB版信息平臺的遠程數據庫服務器、本地化數據庫服務器及配套應用功能模塊組成[17]。系統數據庫應用功能架構如圖2所示。作為一種廣泛應用的數據庫系統MySQL Community Server 64位版本,不僅支持B/S架構系統平臺的數據通信應用,也具有強大的數據存儲和管理能力,可快速地實現B/S與C/S混合架構環境下的數據管理功能模塊的開發。

圖2 油藏模型資源數據庫應用功能架構Fig. 2 Application function architecture of reservoir model resource database
系統數據庫主要由用戶信息表與項目信息表組成。其中,用戶信息表字段主要包括:用戶識別碼、系統登錄用戶、系統登錄密碼、用戶創建時間、用戶啟用狀態、用戶網絡通信權限、管控系統應用權限、登錄狀態、用戶類型、用戶單位等信息。項目信息表字段包括:項目識別ID號、項目簡稱、項目全稱、項目所屬單位、項目所屬區塊、項目油氣藏類型、項目創建人ID、項目創建時間、項目存儲路徑等信息。
系統數據庫存儲數據類型包含結構化與非結構化數據,其中結構化數據包含用戶數據、地質基礎數據、井基礎數據、產量數據、生產措施數據、巖石與流體實驗數據等。非結構化數據包含三維地質與油藏模型數據文件、圖像文件、測井解釋數據文件等。通過構建結構與非結構化數據的索引關聯表單實現數據的匹配與聯動調度。
系統采用數據層、服務層、應用層3層架構。(1)數據層由基礎數據、成果數據、長慶油田數字化油氣藏研究與決策支持系統(簡稱RDMS)網絡通信數據3部分組成。基礎數據包含鉆井、錄井、測井、試井等數據。成果數據包含地質與油藏模型體等成果數據。網絡通信數據包括依據系統網絡通信協議接口所實時獲取的井位、測井、生產等數據,為油藏動態模擬應用提供數據基礎。(2)服務層包括用戶權限合理劃分、項目資源調度以及長慶四維油藏模擬功能模塊應用流程規劃等服務。(3)應用層包括資源分級分類管理、檢索、預覽、上傳、下載、異常數據檢測與處理等應用,以及井數據與三維模型體的可視化分析等功能。用戶層級架構實現見圖3。

圖3 用戶層級架構設計Fig. 3 Architecture design of user level
依據油藏精細描述過程中的數據通信、文件傳輸、權限控制指令響應、應用程序執行指令響應等功能的技術需求,基于socket通信技術,采用TCP/IP協議完成B/S與C/S混合框架技術的開發。在數據層可支持數據錄入與管控,在服務層按照用戶角色進行資源調度與管理,在應用層支持資源分類分級管理、用戶權限控制、資源傳輸、數據與模型可視化分析、模擬器調用、成果分析等應用,從而實現不同權限用戶數據錄入與傳輸、資源調用、可視化分析、計算模塊調用等功能。
針對油藏精細描述過程中模型體數據格式繁雜、無法快速處理等問題,開發了地質與油藏模型解析與處理功能。以Petrel RE的歷史模型體數據格式轉換為例,通過分析不同文件的物理意義,并針對文件中關鍵字所對應的數據進行解析和處理,并綜合考慮默認數據項信息、數據單位變換、數據的排列規則、數據的重組等復雜因素的影響。其主要實現流程:(1)構建模型數據文件中有效關鍵字解碼過程所需的映射對照字典表;(2)讀取模型頭文件,獲取關聯文件與模型體概況;(3)按文件逐行解析數據,考慮空行、無效行以及注釋行等情況,進行換行識別與解析,考慮結尾關鍵符號或關鍵字的讀取與處理;(4)對照關鍵字字典,針對有效關鍵字進行提取與處理,無效關鍵字記入日志備份,并輸出解析與處理后指定格式模型。其主要解析與處理函數作用說明如下:
GetPetrelREM1Ex()為解析與處理Petrel RE軟件的模型數據函數,包含解析模型對象、Petrel RE模型解析路徑、生成模型輸出路徑、是否輸出模型等信息。
GetPerfData()為解析與處理射孔數據函數,包含解析模型對象、射孔數據、數組長度等信息。
WriteSCH()為解析與處理生產數據,包含解析模型對象、生成數據文件路徑、需保存文件擴展名等信息。
最終,利用解析的歷史油藏模型,依據常用油藏數值模擬器所需數據集格式要求,進行模型數據標準化輸出、模擬器激活與可視化應用,輔助油藏模型資源的循環應用。
OpenGL作為應用最為廣泛的三維可視化與圖像處理標準函數庫,其可通過API調用的核心庫中就有上百個標準函數,用于3D圖像的建模與處理操作,包括了對象外形的建立、處理、著色等事件[18]。本系統在VS2017與OpenGL開發環境[19]下,利用C++編程語言,結合GLFW與GLAD函數庫,開發了三維模型可視化技術應用模塊,實現了油藏模型體可視化的應用。主要技術流程如圖4所示。

圖4 三維油藏模型可視化流程圖Fig. 4 Visualization process of 3D reservoir model
油藏模型的可視化與重構等關鍵技術需求可采用OpenGL VBO技術。VBO即為頂點緩沖對象[20]的三維場景重構,允許大量的油藏網格模型單元頂點與顏色數據儲存在高性能顯卡上,快速進行可視化應用,解決了逐點發送、屬性重復性管理與模型重復渲染等問題,具有高效的模型渲染重構與可視化能力。其油藏空間模型包含點元模型、線元模型、面元模型、體元模型以及混合模型等。油藏模型各單元頂點數據主要包含三維的點坐標信息與表征RGB屬性信息。VBO技術進行油藏模型三維可視化應用功能實現的關鍵步驟:(1)進行油藏空間模型繪制前的各模型頂點數據處理;(2)在顯卡內存空間開辟儲存頂點顯存位置;(3)將處理好的頂點數據集傳輸到顯存位置,并指定傳輸模式;(4)模型可視化所需著色器代碼轉化為著色器模塊,響應當前三維場景執行程序命令;(5)構建顯卡中著色器的數據處理模式,進行模型的渲染繪制。技術實現的關鍵API函數如下:
glGenBuffers(),創建VBO,開辟GPU顯存的空間位置并分配ID。
glBindBuffer(),將模型同一類型的頂點數據集進行VBO綁定。
glBufferData(),對定義的數據集傳輸到綁定的VBO顯存緩沖區。
glVertexAttribPointer(),在顯卡中進行頂點數據集的解釋,配合glBufferData()應用。
glEnableVertexAttribArray(),激活與指定模型頂點著色器屬性變量。
在VS2017集成開發環境下,采用OpenGL函數庫以及MYSQL數據庫技術,針對長慶油田精細油藏描述過程中油藏動態模擬計算業務的流程應用需要,開發了具備B/S與C/S混合架構特點的模型資源管控系統。中文界面模式下的系統登錄應用效果如圖5所示。

圖5 油藏模型資源管控系統登錄界面Fig. 5 Login interface of reservoir model resource control system
長慶油田將油藏精細描述動態模擬模型資源管控系統應用在生產實踐中,已累計完成200多套油藏精細描述項目基礎數據、成果數據、模型體等資源的入庫與處理,總資源量達到約500 TB,實現了長慶油田自2012年以來的大部分油藏區塊精細描述項目資源的管控,支撐了大部分歷史項目油藏模型的動態更新計算應用,提高了油藏精細描述的工作效率,大幅度降低了油藏數據管理分析、建模與數模等專業應用類軟件的外部采購數量與成本。圖6、圖7分別為長慶油田入庫的資源管控與三維模型體可視化再應用效果。

圖6 油藏模型資源管控系統應用界面Fig. 6 Application interface of reservoir model resource control system

圖7 三維模型可視化應用界面Fig. 7 Visual application interface of 3D model
(1)結合油田生產實際應用數據采集場景,設計與開發了油藏模型資源采集與管理模塊,建立了基礎數據與模型體的專業應用庫,支持生產動態數據的采集、資源類型的劃分、存儲模式與數據類型的規整,實現了項目資源中基礎數據、歷史油藏模型標準化整合與管理,可減少繁瑣的數據二次采集步驟。
(2)利用B/S與C/S混合架構模式,開發支持多用戶在線進行模型資源的共享功能,在長慶油田精細油藏描述過程中進行了大量的油藏模擬模型資源入庫與應用測試,避免油藏模擬過程中資源孤島情況的形成,降低了針對歷史模型模擬計算的模型處理工作量,提高了歷史項目模型資源利用率。
(3)針對油田工作人員在油藏模擬過程中模型體處理與可視化應用技術需求,利用C++與OpenGL底層開發技術,開發了可用于模型體數據處理與三維可視化分析的應用技術模塊,可為數字化與智能化油田應用技術的自主研發提供技術支持。