为了优化钻井流程并下降作业本钱,Baker Hughes的动力学与遥测(Dynamics & Telemetry)小组开发了一个序列猜测算法,用于在钻井作业期间快速牢靠的解码井下数据。这个已集成到公司地上体系的高档解码算法为随钻丈量(measurement while drilling,MWD)办法供给了支撑。运用MWD时,能够搜集名贵的方位数据和地层数据,以用来优化钻井流程。该体系支撑更精确地定位井眼,这能够使钻井作业更具本钱效益,并使操作员能够较少的非生产时刻(NPT)钻更杂乱的井。
工程团队运用一种桌面科学核算软件规划序列猜测算法,将其主动转化为C代码,然后布置到归于地上体系一部分的一台实时PC上。在科学核算软件中开发和调试该算法后,工程师经过主动生成所需的C代码来加快完成进程。
此作业流程不再需求用两种言语保护和测验同一个算法,因而缩短了开发流程。更重要的是,此作业流程下降了用手艺编写C代码的一种首要危险,即原始科学核算算法和终究规划中完成的C代码之间的差异。运用此作业流程的一大优势是小组在修正缺点上所花的时刻减少了。质量和开发速度的进步使小组坚决了在未来的项目中重用算法和开发流程的计划。
运用马尔可夫链(Markov Chains)进行序列猜测
序列猜测的一个常见应用是运用曾经的数据来预估未来的数据点。序列猜测算法在许多职业和许多景象中都会用到,例如根据丈量数据的温度曲线外推,或许在与最大似然序列预算器进行数字通信时,从噪声信号中提取有用的信息。序列猜测需求一个模型来猜测未来数据,如马尔可夫链。运用马尔可夫链建模的体系占用有限的状况数,从而使未来的数据点仅取决于现在的状况而不是曾经的状况。
图1.运用马尔可夫链建模的序列预告器
在图1中,运用马尔可夫链建模的序列预告用具有4个状况。从一个状况转化到另一个状况的或许性用小数表明。例如,从状况1转化为状况2的概率为0.95,而保持在状况1的概率为0.05。在转化时,或许会有一个或多个途径。图1中显现的序列预告器可作为有限的状况机来完成,它的最形象的表达便是格状图。
图2.格状图示例
图2显现的是一个或许的(猜测的)状况序列。虚线箭头表明或许的转化,实线箭头表明实践猜测的转化。此图显现或许的序列为[1 2 3 4 4 3 3 1]。请注意,仅显现部分或许的转化来进行阐明。与闻名的Viterbi算法相似,序列预告器经过根据外部质量标准核算途径衡量来回绝不大或许的序列途径。假如两个或多个途径在一个状况中相交,则累积并比较它们的途径衡量值,将最佳途径选为幸存途径。
工程团队在技能核算软件中为序列猜测完成马尔可夫链,以进步其地上解码软件的牢靠性。