, , , , 宗堡
(1.東北石油大學 計算機與信息技術學院,黑龍江 大慶 163318; 2.中國移動通信集團黑龍江有限公司雞西分公司,黑龍江 雞西 158100; 3.中國石油技術開發公司,北京 100028; 4.大慶油田第一采油廠信息中心,黑龍江 大慶 163318; 5.東北石油大學 地球科學學院,黑龍江 大慶 163318)
近年來,石油產業的勘探開采技術得到了很大的提高,也促進了計算機技術在油田領域中的應用。石油技術開放標準協會(POSC)的Epicentre 數據模型[1-2]通過對油田勘探開發數據的整理及分析,采用面向對象的分析方法對油田數據進行抽象及歸類。
Epicentre數據模型基本能滿足石油勘探與開發工業活動中對各種數據的需求[3]。通過對該模型進行擴展,給出實體可視化的描述,實現業務模型的可視化。業務模型被可視化后,不但展現了業務與其他業務活動之間的關系,還展現了業務活動所包含的相關業務活動以及該業務活動的流程。通過這些流程信息,相關技術人員可以快速理解一些業務流程。可視化能夠展示業務活動的相關場景以及施工活動所涉及的設備等元素,可使相關技術人員更好地了解施工場景及施工設備。
Epicentre數據模型采用面向對象技術定義的網狀層次結構。該模型主要是為了定義勘探開發數據模型而提出的,在邏輯上完全與底層的物理存儲分離并相互獨立[4-6]。Epicentre的格式包括實體名稱、實體描述、實體屬性的定義、實體規則的描述、實體超類路徑的描述以及實體圖表相關引用的描述。
Epicentre數據模型采用面向對象的方法對模型中的實體進行描述[3]。根據面向對象的思想,它首先定義了一個根基類實體e_and_p_data。e_and_p_data包含過程數據(process_data)、地質過程(geologic_process)、關注對象(object_of_interest)、參考數據(ref_data)、關系(association)、活動(activity)等6個高層子實體。每個子實體又包含相應的子實體,如此便構成了一個高層模型。這個高層模型主要描述實體的分類以及實體間的相互關系。
Epicentre數據模型和傳統數據模型的理念不同,它不是以對象為中心,而是以活動為中心。在油田勘探開發的整個生命周期中,通過對象、活動、特性以及它們三者之間的關系合理地構建具有特定結構的數據體系,可有效再現勘探開發領域中涉及到的業務活動及其所產生的相關數據。活動、對象以及特性三者間的關系如圖1所示。

圖1 活動、對象及特性三者之間的關系Fig.1 Relationship among activities,objects and features
活動是指為了共同的目的而聯合起來完成一項工作的一些動作的集合。在油田勘探開發過程中,涉及到許多項業務,每一項業務由一個或多個活動構成,因此活動是建立油田勘探開發業務模型及數據模型的一個非常重要的因素。
業務模型所體現的是一組有序的活動及其之間的關系,而業務單元是對某一業務活動的具體描述,說明了業務活動所涉及的對象及產生的結果等。
由于企業業務模型的多樣性,因此活動的定義采用元數據法,即每一個活動都由一個元數據結構來描述。元數據法在可擴展性方面表現尤為突出,能夠在模型結構不變的情況下對實體進行擴展,從而保持了模型結構的穩定性。
勘探開發業務的劃分是建立在對油田詳細業務流程進行整理及分析的基礎上,并按照POSC業務參考模型進行劃分[3-7]。本文根據實際需求把油田勘探開發生產周期劃分方法作為主要劃分方法,并盡量符合油田勘探開發生產過程中一直沿用的一些習慣,最終把油田勘探開發業務劃分為井筒工程、綜合研究、分析化驗、物化探、開發生產、地面工程、公共等7大業務領域。
業務劃分后還要對每個業務領域進行更詳細劃分,即形成細化業務領域的業務單元。對于業務活動的劃分,應該充分保證所劃分業務活動涵蓋了勘探開發涉及的所有業務,沒有業務疏漏。同時,還要保證不同業務領域之間的業務活動不能重復,對于業務的描述要清晰,符合油田業務命名規定。
業務劃分后對業務模型進行構建。構建過程中最重要的就是對業務單元下數據項的提取,確定數據項時要完全體現出該業務活動所涉及的所有數據,并且不能出現重復的數據項。同一數據項可以出現在不同的業務單元中。勘探開發業務模型如圖2所示。unit標識業務,業務的屬性含義如下所示:id為業務的唯一標識,name為業務的名字,detail為業務的描述。dataItem標識數據項,數據項的屬性含義如下所示:id為數據項的唯一標識;name為數據項的名字,de為數據項所對應的數據元標識,op為數據項的操作。

圖2 勘探開發業務模型Fig.2 Exploration and development business model
Epicentre數據模型標準是一種規范,適用于大多數油田勘探開發領域。勘探開發數據模型完全以Epicentre為參考模型,但Epicentre數據模型中不存在與可視化相對應的實體。本文實現了基于Epicentre數據模型的勘探開發數據模型可視化實體添加以及可視化屬性擴展。
在不影響現有模型穩定性的基礎上,新增實體SPR_VISUAL_TYPE和SPE_VISUAL。實體SPR_VISUAL_TYPE為參考實體,定義并添加了2個描述屬性,分別為visual_type_name和path。其中,visual_type_name表示SPR_VISUAL_TYPE的名稱,path描述可視化實體的保存路徑。SPE_VISUAL 實體的基本定義如下所示:
visual _name ( M,K∶ndt_identifier )
description( O,I∶ndt_comment )
visual _type( M,K∶spr_visual_type(spe_visual ) )
visual_source ( O,K∶spe_object_of_interest(involved_visual ) )
part_of_visual( O,V∶spe_visual(part_of_visual ) )
involving_object( V,set[0∶?]∶spe_object_of_interest(involved_visual ) )
增加SPE_VISUAL實體后,相關實體的屬性也要做相應變化。其中,根基類實體e_and_p_data添加屬性visual_description( V∶set[0 ∶ ?]spe_visual( visual_description ) ),這樣根基類下所有繼承子類也相應增加了擴展屬性visual_description( V,I∶set[0 ∶ ?]spe_visual( visual_description ))。此處添加的引用屬性為集合類型,即該屬性所描述的實體可以沒有可視化屬性,也可以有多個可視化屬性。
本文主要分析數據項所對應數據元的核心實體、約束實體以及源實體。核心實體是對數據元最主要的描述,而約束實體是對數據元最主要的限制,源實體則表示業務單元中數據項的來源。按照核心實體是否能夠可視化的原則對數據項進行一次劃分,可分為可視化和非可視化2類。結合核心實體、約束實體以及源實體對一次劃分后的數據項進行分析,進一步進行可視化劃分并抽取出可視化對象。
以數據項“循環攜砂液泵壓”為例進行分析,它的核心實體為SPE_ACTIVITY,源實體為SPP_TRANSIENT_PRESSURE,約束實體如下所示:
SPP_TRANSIENT_PRESSURE.ACTIVITY=SPE_ACTIVITY
SPP_TRANSIENT_PRESSURE.TYPE[SPR_PROPERTY_TYPE].IDENTIFIER=^循環攜砂液泵壓^
通過分析可以得出“循環攜砂液泵壓”來自于SPP_TRANSIENT_PRESSURE實體,并且是一個具有瞬時壓力屬性的實體,它被一個活動實體SPE_ACTIVITY約束,類型標識符為“循環攜砂液泵壓”。通過以上分析,把“循環攜砂液泵壓”數據項劃分到可視化活動類中。最終可以把數據項的可視化分類劃分為活動類、材料類、設施類、角色類、綜合類。
本文以“繞絲割縫篩管防砂施工”為例,應用6W模型對其進行描述,具體如下所示:
發起者(WHO):SPE_BUSINESS_ASSOCIATE。
操作地點(WHERE):SPE_WELL。
活動時間(WHEN):SCHEDULE78357。
操作對象(WHICH):SPE_WELLBORE、SPE_WELL_OPERATION_FLUID、SPE_WELL_OPERATION_SOLID、SPE_EARTH_FEATURE_CLASS。
活動原因(WHY):防止采油過程中堵砂。
產生對象(WHAT):SPP_ABSOLUTE_ABUDANCE、SPP_BUCK_VOLUME_TOTAL、SPP_TRANSIENT_PRESSURE。
結合勘探開發數據模型中活動的存儲結構確定該流程的數據庫實例表。發起者( WHO )由instance_creator項表示,活動時間( WHEN )由schedule_activity、constraint_for和constrained_by表示。schedule_activity表示一個活動進度表,也就是一些有序活動的集合;constraint_for表示該活動所約束的活動;constrained_by表示約束該活動的活動。操作地點(WHERE)由activity_context表示,活動原因( WHY )由description表示。操作對象( WHICH )由involved_object表示,產生對象( WHAT )由pty_general_property和process_data表示。其中,pty_general_property表示活動過程中所產生的特性,process_data表示活動過程中所產生的數據。
通過對“繞絲割縫篩管防砂施工”業務單元的分析,結合防砂施工作業規范及數據模型,得出和繞絲割縫篩管防砂施工相關的施工活動,包括下管柱施工、試壓施工、洗井施工、座封施工、試擠施工、填砂施工、起管柱施工、探沖砂作業施工。施工活動的工序由活動的constraint_for和constrained_by 2個屬性控制。constraint_for屬性表示該活動具有一個限制行為,該限制行為是對施工計劃中其他施工的限制,即只有該施工活動完成后,其他施工活動才能啟動。constrained_by屬性表示該活動被施工計劃中的其他施工活動所限制,即只有其他施工活動完成后,該施工活動才能啟動。
本文對油田勘探開發業務模型的可視化采用可擴展標記語言(XML)可視化描述文件[8],獲得用于繪制二維圖的節點、邊以及節點與邊的關系,然后進行繪制。具體流程如下所示:
(1)創建了XML空文件,為其添加根節點。從描述活動的數據庫中查詢是否存在父活動,如果存在則在XML的根節點下插入一個父活動節點,并設置其與根節點的關系。查詢發起者是否存在,如果存在則在XML的根節點下插入一個發起者節點,并設置其與根節點的關系。查詢操作地點對象是否存在,如果存在則獲取操作地點對象的個數并設置其與根節點的關系。然后,根節點個數減1,判斷根節點是否為空,如果不為空則獲取下一個根節點。如此循環,直到場景元素為空,那么所有的操作地點對象與根節點關系設置完成。
(2)按照操作地點對象的設置方式設置操作對象。
(3)判斷是否存在相關的活動。如果不存在則該施工活動只有一個相關活動,然后保存可視化描述文件并進行繪制。如果存在則通過constraint_for屬性判斷其是否約束了其他活動,即它的下一個活動是否存在。如果存在下一個活動則將該活動插入到根節點下,并設置其與根節點以及下一個活動間的關系。如此循環,直到讀取并設置完所有相關的活動狀態后,保存以上過程生成的可視化描述文件。
(4)對此可視化描述文件進行解析,并結合二維圖繪制方法,生成一個以所查詢業務活動為中心并與操作地點對象、操作對象、相關活動等相關聯的可視化顯示結果,如圖3所示。

圖3 基于XML的業務活動二維圖形Fig.3 Two-dimensional graphics for business activities based on XML
模板是具有相似性一組事物的通用模型或框架模式,它包含了客觀事物的基本結構及基本內容。場景模板是基于模板思想對某類業務或業務活動的一種場景描述,本文基于不同業務活動定義了幾種適用于油田勘探開發的場景模板。通過對場景模板的解釋生成虛擬場景,從而提高編輯和制作虛擬場景的效率。
由于很多業務涉及的操作地點對象、操作對象以及活動過程所產生的相關施工活動是相似的[9],因此通過對與業務相關對象的分析與抽象,提出了油田場景模板。以“濾砂管防砂施工”為例,做如下定義:WELL表示井,WB表示井筒,T表示防砂工具,CY表示儀表車,CB表示泵車,CS表示混砂車,CW表示水罐車,CZ表示作業車,P表示施工單位,STR表示地層;FQ表示前置液,FB表示后置液,FX表示攜砂液,FW表示洗井液,SS表示砂子。施工工序如下所示:A1為下防砂管柱施工,A2為試壓施工,A3為座封施工,A4為填砂施工,A5為洗井施工,A6為起管柱施工。通過以上方法所生成的防砂場景模板的描述如下所示:
R(WELL);
D(WELL,WB,p);
D(WELL,STR,p);
R(WB);
I(WB,T,p);
I(WB,FQ,p);
I(WB,FB,p);
I(WB,FX,p);
I(WB,FW,p);
I(WB,SS,p);
W(WELL,CY,p);
N(WELL,CB,p);
E(WELL,CS,p);
S(WELL,CW,p);
S(WELL,CZ,p);
N(WELL,P,p);
AS (A1,A2,A3,A4,A5,A6);
該場景模板描述以井WELL和井筒WB為參考實體,在井口的下方位置p處有井筒WB,在另一個位置p處有地層STR,在井筒內位置p處有防砂工具T。此外,在井筒內相應的位置處有前置液、后置液、攜砂液、洗井液和砂子。在井口的西面位置p處有儀表車CY,在井口的北面位置p處有泵車CB,在井口的東面位置p處有混砂車CS,在井口的南面位置p處有水罐車CW;另一個位置p處有一個作業車CZ,在井口的北面位置p處有施工單位P(一般是施工人員)。防砂施工的施工工序為A1到A6。這樣,后期通過對場景模板的解析,就可以生成相應的虛擬場景。
對于濾砂管防砂虛擬場景的實現,首先從場景模板數據庫中取出參考對象及其相關參數,然后判斷當前參考對象是否為基本參考對象[10]。如果是則初始化基本參考對象,設置其位置等信息;如果不是則繼續判斷是否存在與當前對象相關的其他對象及對象間的關系。如果存在與當前對象相關的其他對象及對象間的關系則提取與當前對象相關的其他對象及其關系,并設置這些關系;如果不存在則判斷當前對象是否為最后一個對象。如果不是最后一個對象則讀取下一個參考對象及其參數,并對其進行初始化設置;如果是則完成了場景的構建。生成的虛擬場景如圖4所示。

圖4 濾砂管防砂場景Fig.4 Sand control scene of sand filter tube
本文通過對Epicentre數據模型以及油田勘探開發數據模型和業務模型的分析,結合可視化技術,實現了油田勘探開發業務模型的可視化。同時,通過模板思想的引入并結合虛擬現實技術,構建了油田虛擬場景。本文研究表明,業務模型可視化可以對油田勘探開發領域中業務活動的流程進行形象展示,同時也可使相關技術人員對油田勘探開發過程產生形象認識。基于模板的虛擬場景實現有助于油田開發人員快速生成場景,降低開發難度。
[1] POSC.Base computer standards[M].Englewood Cliffs:PTR Prentice Hall,1994.
[2] POSC.Data access and exchange[M].Englewood Cliffs:PTR Prentice Hall,1994.
[3] 袁滿,張連濱,文必龍,等.Epicentre的核心模型及其數據映射技術[J].大慶石油學院學報,2000,24(4):52-56.
YUAN Man,ZHANG Lianbin,WEN Bilong,et al.Epicentre kernel data model and technique of mapping data[J].Journal of Daqing Petroleum Institute,2000,24(4):52-55.
[4] POSC.Epicentre data model[M].Englewood Cliffs:PTR Prentice Hall,1994.
[5] POSC.POSC exchange format[M].Englewood Cliffs:PTR Prentice Hall,1994.
[6] POSC.E&P user interface style guide[M].Englewood Cliffs:PTR Prentice Hall,1994.
[7] 王海平.基于POSC的油田業務分析與建模方法研究[D].青島:中國石油大學,2010.
WANG Haiping.Business process modeling method study based on POSC in petroleum industy[D].Qingdao:China University of Petroleum,2010.
[8] 任慶東,蘇斐,李井輝.利用XML實現異源數據庫中的數據交換[J].計算機應用研究,2001,18(12):129-130.
REN Qingdong,SU Fei,LI Jinghui.Using XML to exchange data among different databases[J].Computer Application Research,2001,18(12):129-130.
[9] CELENTANO A,GAGGI O.Template-based generation of multimedia presentations[J].International Journal of Software Engineering and Knowledge Engineering,2003,13(4):419-445.
[10] SUN Jing,BACIU G,YU Xiaobo.Image-based template generation of road networks for virtual maps[J].International Journal of Image and Graphics,2004,4(4):701-720.