Note : Les descriptions sont présentées dans la langue officielle dans laquelle elles ont été soumises.
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
SYSTEM AND METHOD FOR RIG STATE DETECTION
FIELD OF THE INVENTION:
The present invention relates to the field of
drilling technology in oilfield applications. In
particular, the invention relates to a system and method
for automatically detecting the state of a drilling rig.
BACKGROUND OF THE INVENTION:
In oilfield applications, the drilling process
can be impeded by a wide variety of problems. Accurate
measurements of downhole conditions,'rock properties and
surface equipment allow many drilling risks to'be
minimized, but they are also crucial for detecting that a
problem has occurred. At present, most problem
detection is the result of human vigilance, but detection
probability is often degraded by fatigue, high workload
or lack of experience.
Some limited techniques have been used for
detecting one of two possible rig states, but generally
these have only used a single input channel. In one
example, a technique is used to automatically detect if
the drill pipe is "in slips" or "not in slips". This
information is used in gaining accurate control of depth
estimates, for example in conjunction with activities
such as measurement-while-drilling (MWD or mud logging.
To tell whether the drill pipe is "in slips" the known
technique generally only uses a single input channel
measured on the surface: Hookload. Another example is a
technique used to predict if the drill bit is "on bottom"
or "not on bottom." Similarly, this method makes use of
only a single input channel, namely block position, and
1
CA 02511203 2011-03-03
72424-99
is only used to detect one of two "states" of the drilling rig.
Known event detection systems have depended upon the drilling
personnel to identify the rig state. For example see, "The MDS System:
Computers Transform Drilling", Bourgois, Burgess, Rike, Unsworth, Oilfield
Review Vol. 2, No. 1, 1990, pp. 4-15, and "Managing Drilling Risk' Aldred et
al.,
Oilfield Review, Summer 1999, pp. 219.
SUMMARY OF THE INVENTION:
Thus, it is an object of some embodiments of the present invention
to provide a system and method for automatic rig state detection that makes
use
of multiple input channels to detect one of several distinct rig states.
It is also an object of some embodiments of the present invention to
provide a system and method of drilling event detection based on automatic rig
state detection.
According to an aspect of the invention a method is provided for
drilling while automatically detecting the state of a drilling rig during the
drilling
process of a wellbore comprising the following steps. Receiving two or more
independent input data channels, each input data channel representing a series
of
measurements made over time during the drilling process. And, automatically
detecting the most likely state of the drilling rig from at least three
possible rig
states, the detection based on the two or more input channels. Activity
relating to
drilling is preferably altered based on the detection of the most likely state
of the
drilling rig.
According to another aspect of the invention there is provided a
method for drilling while automatically detecting the state of a drilling rig
during the
drilling process of a wellbore comprising the steps of: receiving two or more
independent input data channels, each input data channel representing a series
of
measurements made over time during the drilling process; automatically
detecting
the most likely state of the drilling rig from at least three possible rig
states, the
detection based on the two or more input channels, wherein the step of
automatically detecting further comprises generating a probability associated
with
2
CA 02511203 2011-03-03
72424-99
each possible rig state, and wherein generating. the probability associated
with
each possible rig state includes using transitional probabilities for state-to-
state
transitions for the purpose of calculating the probability; and outputting a
notification to drilling personnel regarding detecting the most likely state.
According to a further aspect of the invention there is provided a
system for drilling while automatically detecting the state of a drilling rig
during the
drilling process of a wellbore comprising: a storage system adapted to receive
two
or more independent input data channels, each input data channel representing
a
series of measurements made over time during the drilling process; and a
processing system adapted and programmed to automatically detect the most
likely state of the drilling rig from at least three possible rig states and
to calculate
a probability associated with each possible rig state, the detection based on
the
two or more inputs, wherein calculating the probability associated with each
possible rig state includes using transitional probabilities for state-to-
state
transitions for the purpose of calculating the probability, the processing
system
further being adapted to output data regarding a corrective action with
respect to
the drilling rig.
According to still another aspect of the invention there is provided a
computer. readable medium capable of causing a computer system to carry out
the
following steps during the drilling process of a wellbore: receiving two or
more
independent input data channels, each input data channel representing a series
of
measurements made over time during the drilling process; automatically
detecting
the most. likely state of the drilling rig from at least three possible rig
states, the
detection based on the two or more input channels, wherein automatically
detecting the most likely state comprises calculating a probability of at
least one of
the rig states, and wherein calculating the probability of at least one of the
rig
states includes using a transitional probability associated with a state-to-
state
transition for the purpose of calculating the probability; and displaying
information
based on the detected most likely state of the drilling rig to drilling
personnel to
enable adjustment of drilling activity.
2a
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
The method preferably makes use of three or
more independent input channels which are preferably
selected from the following: hookload, block position,
torque and stand pipe pressure. The set of possible rig
states preferably includes at least 6 states, and even
more preferably, more than 10 possible states. The
method also preferably generates a probability of each
possible rig-state.
The algorithm used in automatically detecting
the most likely state is preferably probabilistic in
nature, and is even more preferably based on particle
filtering techniques.
The method preferably includes event detection
based on the automatically detected rig state. The event
detection is preferably automatic. The method preferably
either notifies the drilling personnel of the detected
event and/or suggests corrective action.
The present invention is also embodied in a
system for drilling while automatically detecting the
state of a drilling rig during the drilling process of a
wellbore, and a computer readable medium capable of
causing a computer system to carry out the following
steps during a the drilling process of a wellbore.
As used herein, the phrases "rig states" or
"states of the rig" refers to intentional actions taking
place in a drilling system during the drilling process.
Further the set of rig states are preferably defined such
that they are mutually exclusive.
As used herein the phrase "drilling process"
refers to the entire phase of wellbore construction
relating to drilling the wellbore, including the
3
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
operations commonly known as tripping, reaming, rotary
drilling, slide drilling and running casing.
BRIEF DESCRIPTION OF THE DRAWINGS:
Figure 1 shows an example of the inputs and
output of a system for rig state detection, according to
a preferred embodiment of the invention;
Figure 2 illustrates a parametric particle
filter viewed as a Bayesian network;
Figure 3 shows simulated data where each sample
was drawn from one of three noisy states;
Figure 4 shows changes in the posterior
densities of one particle during four time steps from the
example shown in Figure 3;
Figure 5 shows an example of the parameters of
the Kalman filter optimized for detecting the state
"InSlips;"
Figure 6 shows a parametric particle filter
detecting `PoohPump', `RihPump' and `InSlips' states
using HKLD and BPOS data, according to a preferred
embodiment of the invention;
Figure 7 shows plots of the inputs and output
of a rig state detection system according to a preferred
embodiment of the invention;
Figure 8 shows steps involved in a system for
automatic rig state detection based on a preferred
embodiment of the invention;
Figure 9 shows steps involved in an improved
system for event detection, according to preferred
embodiments of the invention;
4
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
Figure 10 shows a drilling system 10 using
automatic rig state detection, according to preferred
embodiments of the invention;
Figure 11 shows further detail of a suitable
processor, according to preferred embodiments of the
invention; and
Figure 12 illustrates piecewise linear
standpipe pressure likelihoods for the cases of pumps on
and pumps off, according to a described example.
DETAILED DESCRIPTION OF THE INVENTION:
.According to the invention, it has been
recognized that the signatures that may lead to the
accurate detection of many drilling events are spread
across multiple surface and downhole channels with low
signal-to-noise ratios. Additionally, many of the
routine actions of the driller could be mistaken for
problems unless the system is analyzed as a whole.
According to the invention, it has been found that by
automatically detecting the drilling rig activity or `rig
state' in real-time, this rig state information can be
fed into problem detection algorithms thereby greatly
increasing the accuracy of such algorithms.
The following notation is used in the
description of the invention:
5
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
BHA Bottom hole assembly
BPOS Block position
BVEL Block velocity
DEPT Bit depth
HKLD Hookload
HMM Hidden Markov model
IDEALTM Integrated Drilling Evaluation and Logging
LWD Logging while drilling
MWD Measurement while drilling
POOH Pull out of hole
PPF Parametric particle filter
RIH Run in hole
RPM Revolutions per minute
SPIN-DR Stuck Pipe Investigation, Diagnosis and
Recommendation - SPIN DoctorrM
SPPA Standpipe pressure
TQA Torque
Figure 1 shows an example of the inputs and
output of a system for rig state detection, according to
a preferred embodiment of the invention. Rig activity
can be broken down into a number of processes, such as
drilling in rotary mode, drilling in slide mode, RIH,
POOH etc., that are controlled by the driller. As shown
in the columns (a) to (d) in Figure 1, the preferred
input channels are measurements made at the surface on
the rig, namely block position (a), Hookload (b), torque
(c) and standpipe pressure (d). Based on these four
input channels, the rig state detection system detects
the state of the drilling rig, shown in column (e). In
this example the system has detected states "PoohPump",
"RihPump" and "in slips" which will be described in
further detail below.
6
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
It has been found that the following 13 rig
states provide a suitable basis for providing rig event
detection and control in many applications:
State Rotation Pumping Block Hookload
movement
DrillRot / / y Low
DrillSlide x / y Low
RihPumpRot / / 4 Low
RihPump / 4 Low
Rih x y Low
PoohPumpRot / / er High
PoohPump X / T High
Pooh x X T High
StaticPumpRot / / x -T
StaticPump x / x -T
Static x x x -T
In slips x Either _B
Unclassified Either Either Any Any
where B = weight of the traveling block,
T = weight of drill string
Preferably, a reasonable density is provided
for each state-channel combination and a transition
probability is assigned for each state-to-state
transition. Unlikely transitions such as `Pooh' then
`InSlips' are assigned a low probability, as the pipe
must be moving downwards-for the pipe to go into slips.
Consequently, `Rih' then `InSlips' should receive a high
probability.
An `unclassified' state is included with
extremely conservative densities to capture less likely
operations, such as rotating but not pumping. However,
according to the particular application at hand, it may
be useful to define further states. For example, it has
been found that in some cases three additional states are
useful to define the case of rotating without pumping:
RihRot, PoohRot, StaticRot.
7
CA 02511203 2011-03-03
72424-99
Since the surface measured input.channels are
typically corrupted by noise, the system for detecting
rig state makes use of Bayesian inference, in that it
preferably operates by representing degrees of belief in
opposing hypotheses. These hypotheses incorporate the
extensive prior information that is known about each
state (e.g. hookload drops to the weight of the
travelling block whilst the pipe is in slips) and which
state is likely or unlikely to follow another.
According to a preferred embodiment, the basic
rig states feed into a hierarchy of more complex rig
states. An in slips' state where the block position
ends up approximately 90ft higher than when it entered
the state could be relabeled `Connection (pipe added)'.
The sequence `Rih', `Connection (pipe added)', `Rih',
`Connection (pipe added)', etc. could be classified as
`Tripping -in' .
Most of the known multiple changepoint problems
in the general signal processing-literature are applied
to the data retrospectively, but the computation involved
usually precludes their application to on-line detection.
For example, US Patent No. 5,952,569,
discloses the application of single
changepoint models that are computationally inexpensive
by comparison, so this is both retrospective and on-line.
Sequential methods modify the result from the previous
time step, rather than recompute from scratch, so more
sophisticated models can be applied within the sampling
period. According to preferred embodiments of the
invention the sequential Bayesian technique known as
particle filtering is used in rig state detection using a
parametric particle filter.
8
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
Sequential Bayesian Filtering will now be
described in further detail. A noisy measurement xt is
represented as a function of an underlying system
variable Bt and an observation noise term vt in the
observation model
xt =ht(et,vt) (1)
The system model
et+1 = ft (Ot ' wt) (2)
captures the dynamics of the system. The current value
of the system variable, et+1, is assumed to be dependent-on
the previous value, et, but independent of the value at
all other times, et-1'et-2'=" 0 ; such a process is called
Markov. Events that influence the system dynamics but
are not captured by the Markov process are represented as
another noise process called system noise wt.
As an example, et is a vector containing the range and
speed of an aircraft flying directly away from an
airport. The system model
11+i=11 At rt + 0 (3)
0 1 rt wt
Yt+1
)=() )()
models range as increasing by the product of speed and
sampling time At. Wt is a Gaussian that models changes
in speed due to gusts of wind or the pilot changing
thrust. xt is the range given by the airport's radar that
is corrupted by Gaussian observation noise (combined
effects of electrical noise in the amplifiers, finite
range resolution of the radar, etc)
xt =(1 0 rt +vt . (4)
rt
9
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
According to a preferred embodiment, the rig
state detection system employs a specific type of
particle filter called the parametric particle filter.
Parametric particle filter (PPF) as used herein
describes a particle filter where the system model or the
observation model is controlled by a hidden Markov model,
as defined in Carpenter J, Clifford P.and Fearnhead P,
"Building Robust Simulation-based Filters for Evolving
Data Sets", Technical report, Department of Statistics,
University of Oxford, 1998.
A hidden Markov model (HMM) is' a probabilistic
process over -a discrete set of states y = {1,...,K} . The
likelihood of the state at the next time step is given by
a square matrix of transition probabilities P(yt+llyt/ that
can capture likely and unlikely sequences of states.
Figure 2 illustrates a parametric particle
filter viewed as a Bayesian network. In the Bayesian
network representation of the parametric particle filter,
the arrows indicate the direction of causal impact.
Each particle must consider the possibility of
state transition at each step, so the particle is split
into K new particles with weights
1]Zt+li. 1 O YYGr P(xt+l I yt+1 = j, a)P(Y,+1 = J I yt) = (5)
for j=1,...,K. A resampling step is used to reduce to
number of particles from nK back to n, to avoid an
exponentially increasing number of particles with time.
The resampling step and the Kalman filter are now
discussed in further detail.
The minimum variance sampling algorithm chooses a
new set of weights Xi'jthat minimises
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
E ZI(nz+i -Xi,i12 (6)
j=1 i=1 /l
subject to the constraints E\Xt l - znt+1 and that at most n
of the X`'' are non-zero. The weights that will propagate
to the next time step hnt+1 /i=1,...,n will consist of the non-zero
X `''. The resulting algorithm is as follows:
1. Calculate c, the unique solution to n = JEmin(cnz+i,1) .
j=1 i=1
This can be solved iteratively. See, "Sequential
Monte Carlo methods in filter theory", P. Fearnhead,
Department of Statistics, Oxford University, 1998
p.92.
2. Particles where cm >1 are retained with unchanged
weights X`''=inri. The number of retained particles
is k.
3. n-k particles are sampled from the remaining nK-k
particles using the systematic sampling algorithm
(See, Carpenter, 1998, p.8). Note that the
published algorithm contains a typographical error;
the fourth line from the end should read `switch sk
with s''. The sampled particles receive weight
X"i=1/c and the remainder are set to zero.
4. Normalise X"i to sum to unity
5. Set (nz to the non-zero V j .
t+1 i=l,...,n
The likelihood of-a particular state at any
time can be estimated by the sum of the weights of the
particles in that state (see, Fearnhead, 1998, p.88).
n (7)
P\~t+1 - 3 I xl:tl / - ynt+1U (Y:+1 - 3)
i=1
11
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
If the state of the system is unchanged, it is
assumed that the following observation and system models
apply,
Ot = FO 1 +Wt (8)
xt = HO, +Vt
The noise random variables Wt and Vtare
multivariate Gaussian random variables with zero mean and
covariance matrices Q and R. Wt and VI are uncorrelated.
If the prior is also Gaussian, at each time step, both
the prior and posterior will be Gaussian. The solution
to these conditions is the well-known Kalman filter.
The prior at time t, p(Ot I x1.r-1) , has mean at1t-1 and
covariance Plt-1
The posterior at time t, p(Ot I x1.1), has mean at
and covariance P.
The Kalman filter, equations are:
at1t-1 = Fat-1 , (9)
Pit-1 = FP_1FT +Q , (10)
at = atlt-1 + Pit-1 Kt-1 (Xt - atlt-1) , (11)
P =Pit-1- Pit-1Kt 1P1t-1 . (12)
K, the Kalman gain matrix, is given by
Kt = Pit-1 + R . (13)
A simple example of a parametric particle
filter will now be described. Figure 3 shows simulated
data where each sample was drawn from one of three noisy
states. In particular Figure 3 shows an example of a
parametric particle filter applied to simulated data
drawn from the bold Gaussians 210 on the left side plot
12
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
(a). The narrow Gaussians 212 indicate the prior
knowledge of the state locations. In this example, there
is a single input channel denoted by line 200, and the
three state are denoted with roman numerals'I, II, and
III. The centre of each circle indicates a particle, its
radius indicates the particle weight and the particle
state is indicated by the roman numerals I, II and III.
100 particles were used.
In plot (b) a PPF was used to estimate which
state the data was drawn from. The numerals I, II and
III indicate the,most likely state for each sample.
Each particle contained an independent Kalman filter for
each state. The filter corresponding to the particle's
current state was updated sequentially, but the other two
filters remained dormant.
Figure 4. shows changes in the posterior
densities of one particle during four time steps from the
example shown in Figure 3. The three states are
indicated by the roman numerals I, II and III. Note that
these graphs are all priors and posterior densities in
the system variable domain. The likelihood densities in
the observation variable domain would be wider, e.g.
p(e3I y = 2) is almost a delta function, so the likelihood
density would look very similar to p( 1I y = 2) as the
variance=R.
When a particle changed state, its belief of
the old state was reinitialised. When using PPFs for rig
state detection systems, if it is known that the driller
previously held the weight-on-bit near 10klbf when
drilling, it is risky to assume that the driller will do
the same next time.
13
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
Each particle st incorporated yt, the belief of
the state of the HMM and at, the particles' support
points,
r i ~ r
St = (ye ar br cr P ~ (14 )
where al, bt and ct are the posterior means of
the three states (i.e. equation (11) for each
of the Kalman filters)
P` is the posterior variance of the active
Kalman filter (both dormant filters had
variance R, so it is inefficient to store this
information in each particle)
The Kalman model was the same for each state
F=H=1, Q=O, R=0.3, P1=R. The choice of transition
probabilities
1- P, P, 0
P(r,+, I r)= P, 1-2P, P, (15)
0 P, 1-P,
is fundamental to the filter behaviour in this example.
Direct jumps between states'l and 3 were not . permitted,
so the filter estimated that the likelihood of being in
state 1 at t=48 was negligible, despite the observation
being close the mean of state 1. It was assumed that the
HMM would remain in a state length for approximately 20
samples, so the probability of jumping P, was set to
1/20=0.05. Increasing Pi would increase the likelihood
of mini-states existing at t=33, 72 and 88.
It would be relatively simple to define an
observation model with xt as a vector of the four surface
channels and form a corresponding system model, but as
14
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
the dimensionality of the problem increases, the number
of particles required increases exponentially. In
problems where the useful information. is easier to
extract from some channels than others, modeling the
simpler channels with a non-evolving likelihood reduces
the dimensionality of the problem. The weight equation
for the new particles then, becomes
`) p(bt+1 I Yt+1 t - J~
inr+i,'ji m` p(ar+1 I Yt+i = J,at/
t p(yt+i = I Yr (16)
C
p 1IY1
wher 71t+1 = weight of the jth descendent of ith
m = weight of ith particle = parent's
t
at = observations requiring an evolving
bt = observations not requiring an
Yt = hidden state = rig state
at` = vector of parameters that contain
p(atJõ.) = Gaussian likelihood from the Kalman
p(bt = non-evolving likelihood
p(yt l ...) = transition probability
This approach is demonstrated in the following
example of a rig state detection system using only HKLD
and BPOS channels. The signal-to-noise ratio of the EPOS
channel is usually very, high, so this channel was modeled
with a non-evolving likelihood, giving
t p (BVELt+l
Yt+~ A t (17 )
ynt+1 ~ mt p(HKLDt+i I Yt+i = J,at p BVELI , I y
) p(Yt+i = J yt )
t
The relevant priors for HKLD and likelihoods
for BVEL are given in the following table (the TQA and
SPPA likelihoods can be ignored until a later example).
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
Table of priors and likelihoods
State Alternat HKLD BVEL TQA SSPA
ive name
DrillRot Rotary U (B, T+2oT) U ( -VDRILL U (PTQO- ON
mode 2 ov) 3 GTQO , TQDRILL )
drilling
DrillSlide Slide As above As above As ON
mode StaticPump
drilling
RihPumpRot Reaming 0.8U(B,T+2oT)+ U(- As DrillRot ON
in 0. 2U (T+2(5T, T+O VTRIP, 0)
RihPump Sliding As above As above As ON
in StaticPump
Rih Tripping As above As above As OFF
in StaticPump
PoohPumpRot, Reaming 0.2U(B,T-2a-T)+ U(0, As DrillRot ON
out O . 8U (T- VTRIP)
26T, T+O)
PoohPump Sliding As above As above As ON
out StaticPump
Pooh Tripping As above As above As OFF
out StaticPump
StaticPumpRo Circ. & N(T, 6T2) N(0, 6v ) As DrillRot ON
t rot.
StaticPump Circulat As above As above N(}.1TQ0,6TQO2) ON
ing
Static Off As above As above As above OFF
bottom
InSlips N(B, oB2) U (- As As
VSLIPS, 0) StaticPump below
Unclassified U(B,T+O) U(-VTRIP, U (2}1TQO, U(O,C
VTRIP) TQDRILL) )
Key:
U(low,high)=uniform'pdf
N(mean,variance)=Gaussian pdf
Other symbols explained overleaf
16
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
Symbol Description Value Source
T THKD (total 210k1bf Supplied by the
hookload) acquisition system
6T uncertainty 5klbf Estimated from
in T StaticPumpRot states
maximum
O 150klbf Conservative estimate
overpull
weight of
Estimated from InSlips
B travelling 85klbf
states
block
aB uncertainty 10klbf Estimated from InSlips
in B states
maximum
tripping
VTRIP 3ft/s Conservative estimate
speed (up or
down)
W VIJRILL maximum ROP 0.2ft/s Conservative estimate
> maximum speed
VSLIPS of pipe 0.2ft/s Conservative estimate
hitting slips
uncertainty
GFV 10_3 ft/s in BVEL Conservative estimate
zero
UTQO calibration -0.5 kflb Estimated from InSlips
states
of TQA
uncertainty Estimated from'InSlips
N oTQO 10 kflb
in PTQO states
maximum
Estimated from DrillRot
TQDRILL torque whilst 260kflb
states
drilling
17
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
Figure 12 illustrates the piecewise linear standpipe
pressure likelihoods for the cases of pumps on and pumps
off, according to this example. In Figure 12 A=500psi,
B=1000psi, C=5000psi, D=2/(2C-B-A),, E=(2C-2B)/(A(2C-B-A))
Conservative estimates are preferably be treated is
constants. Parameters that are estimated from particular
states will vary from rig to rig and many will vary with
depth. These estimates can be made by personnel or by a
calibration algorithm. The values in the above table
were used for the examples shown.
"bit on bottom" and "in slips" indicators from
systems such as IDEALTM are useful for automatic
calibration.
B and 6B are preferably set to the median and
standard deviation of HKLD data when the "in slips"
indicator is true.
,/TQO is preferably set to the median of the TQA data
when the "in slips" indicator is true. This
automatically rejects make-up and break-out, torques.
TQDRILL is preferably set to the maximum value of TQA
whilst the "bit on bottom" indicator is true.
Detecting when the drill string goes into slips is
very important, so the Kalman filter is preferably
optimised for this transition. Figure 5 shows the
parameters of the Kalman filter optimized for detecting
the state "InSlips." Plot (a) shows hookload versus
sample number for a limited number selected samples. The
hookload data is shown by points 228 joined by thick line
230. A quadratic 242 is fitted to.the hookload data as
shown. Also shown by the dotted lines 240 is 3 standard
deviations from the fitted quadratic. The observation
noise variance R is estimated by fitting a quadratic 242
18
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
to the `RihPump' HKLD data shown in Figure 5(a). The
maximum gradient of the quadratic fit was 4.2klbf/s,
shown by line 244. It was assumed that the system noise
process should be capable,of generating a sample of this
magnitude as a 1-sigma event, so Q was set at 4.22=18.
In Figure 5(b) also shows hookload data versus
sample number, but for a wider range of samples. In this
example, the hookload data line is again denoted with
numeral 230. The Kalman estimate is shown by line 232,
which is surrounded first by the standard deviation of
the Kalman estimate 234, then by the standard deviation
of the observation noise, R (shown by lines 236), and
finnaly by the standard deviation of the Kalman error + R
(shown by lines 238). As the Kalman filter cannot track
the transition-very quickly, the descendent of a
`RihPump' particle also in the `RihPump' state will
obtain a much lower weight than the descendent in the in
slips' state sitting down at -85 klbf.
The block will continue to drop a few inches
after the pipe has gone into slips, so a change in BVEL
will lag a change in HKLD and is therefore less useful
for detecting in slips accurately. SPPA and TQA contain
no information about the transition, so the processing of
HKLD must be as accurate as possible.
Figure 6 shows the PPF detecting `PoohPump',
`RihPump' and in slips' states using HKLD and BPOS data,
according to a preferred embodiment of the invention.
Plot (a) shows the block position and plot (b) shows
block velocity, which is a function of block position.
Plot (c) shows the hookload input channel. As used
herein, input channels are "independent" when one input
channels is not a direct function of the other input
19
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
channel. Thus block position and block velocity are not
independent from one another, but they are both
independent of theVhookload input channel.
As in Figure 3(a), in piot(c) the centre of
each circle indicates a particle and its radius indicates
the particle weight. The overwhelming state of the
particles is noted by the state names at the bottom of
Figure 6, namely "P.oohPump", "RihPump" and "InSlips." In
this exmple, 100 particles were used. Plot (d) shows
detected state probabilities by summing particle weight
at each sample number.
An example of a rig state detection system
using four input channels will now be described. The
installation of an RPM sensor is much more complex than a
torque (TQA) sensor, so most oilfield drilling jobs rely
on the latter only. Note that if it becomes practical to
provide an RPM sensor on the rig, RPM would be much
preferred over Torque as an input channel to the
automatic rig state detecting system. For state
detection, TQA is used to differentiate between rotating
and non-rotating states that otherwise look very similar,
e.g. `RihPump' and `RihPumpRot'. Any torque above a
noise floor would count as rotating. The statistics of
TQA in the non-rotating state should be approximately
stationary, so an evolving likelihood is not necessary.
The TQA likelihoods are shown in the likelihood table
above.
Similarly, most of the information in SPPA is
also binary - pumps on or off, for distinguishing
`RihPump' from `Rih'.' The weight of the-new particles is
therefore:
in-"j - m'
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
where 4+1 = p(BVEL,+I Y,+, - J )P ~7 Q+l Yr+, - J)P (SI'I'A+1 I Yr+1 = j) is
not
particle dependent, so need only be calculated once per
time step.
Figure 7 shows plots of the inputs and output
of a rig state detection system according to a preferred
embodiment of the invention. In the case of Figure 7,
the same data was used as in the example of Figure 6 but
it includes a wider range of samples. In the*case of
Figure 7 a preferred PPF based algorithm was applied to
16 minutes of drilling data. Rows a-e show block
position, block velocity, Hookload, torque and standpipe
pressure respectively. Row f shows the output of the rig
state detection. The individual states are expressed in
terms of a probability. Note that in Figure 7, eight out
of the proposed thirteen states have been implemented to
date and are shown in plot (f) of Figure 7. In plot (f),
the two letter labels refer to the following rig states:
RD = DrillRot, RO = PoohPumpRot, CR = StaticPumpRot, RI =
RihPumpRot, C = StaticPump, SO = PoohPump, SI = RihPump,
and IS = InSlips.
In the present example, the transition matrix P
was assigned uniform values to simplify interpretation.
Even more realistic values are preferred so as to improve
the state detection. An example of an unlikely state
sequence is drilling in rotary mode occurring directly
after drilling in slide mode (DrillSlide). This is
because drag forces are greater during slide mode
drilling, so if rotation began whilst on bottom, the
weight-on-bit could quickly become undesirably high.
21
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
DrillSlide, PoohPump -5ft, RihPumpRot -5ft, DrillRot is a
more typical sequence.
The first 12 states in the above table of
priors and likelihoods deliberately leave gaps in the
parameter space of the four surface channels, which
correspond to very unlikely or potentially damaging
operations, e.g.' if the BHA contains a mud motor, RIH
whilst rotating but not pumping is a very risky
operation, as if the bit touched the borehole wall and
rotated, it would suck mud and possibly cuttings into the
motor. To cover these gaps and prevent instability in
the software, a state called `unclassified' with very
broad priors is defined.
Figure 8 shows steps involved in a system for
automatic rig state detection based on a preferred
embodiment of the invention. In particular, Figure 8
shows steps for using a parametric particle filtering
method for automatic rig state detection. In step 110, n
particles are initialized with equal weight and equal
number of particles in each state. The particles are
preferably randomly sampled from likelihood distributions
which form part of prior information 130. For examples
of suitable likelihood distributions see "Table of all
priors and likelihoods" above. Note that the likelihood
distributions'form at in equation (16). In step 112,
each particle give "birth" to a new particle in each
state, and then "dies." In step 114, the weight is
calculated as the parent's weight time the likelihood
times the transition probability. The likelihood
distributions from prior information 130 and the new
sensor data 132 (i.e. input channels) are preferably
incorporated according to equation (16). In steps 116
22
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
and 118, the population is reduced back to n particles,
with the larger weights more likely to survive, and the
weights are normalized to sum to unity. The preferred
method for carrying out these steps is described above in
the description following equation (6). In step 119, the
state of the particle is compared with that of its
parent. If they are not the same, step 112 should be
repeated for the next sample. If they are not the same
the particle's belief is preferably refined using the
Kalman filter using data 132 according to equations (9)
to (13) above. In step 122, the beliefs are constrained
within prior bounds if necessary, preferably using
likelihood models in prior information 130, such as from
the table above. In step 124, the weights of the
particles are summed in each state, thereby yielding the
state probability for each sample, and then step 112 is
repeated for the next sample.
According to the invention,. when the drilling
conditions have made the occurrence of a particular
drilling event quite likely, it may be known a priori
that changing to a particular rig state could greatly
exacerbate the problem. For example, on the verge of a
pack-off event, the driller should not pull-out-of-hole
until the borehole has been circulated sufficiently
thoroughly for the probability of pack-off to fall to a
reasonable level. A prediction of the next rig,state can
be derived from the current state probabilities and the
transition probabilities,
P(r,+, = k I data,:)= p(Yr+, = k I YI )P(rr I datal:t )
(19)
23
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
If the event probability is high and the
probability of an undesirable next rig state is high, the
algorithm preferably reminds the driller not to change
into that particular rig state. The same technique is
preferably applied recursively to predict the rig state a
number of samples ahead.
According to an alternative embodiment,
additional input channels are used and the rig state is
accurately detected without the use of particle filtering
techniques. In this example, the rig state detection
system makes use of two input channels from a known
drilling acquisition system, known as IDEAL T111 from
Schlumberger. Specifically two binary indicators are
used: (1) BONB which indicates when the bit is on bottom,
and (2) STIS which indicates when the pipe is in slips.
Bayes' rule gives,
P(Yt - . I bt) = p`bt l Ytb . j)P(Yt _ i) (2 0)
P(t I r t) (Yt )
Yr
where P(Yt = j I bj = posterior probability of state j
P(bt I Yt = j) = multivariate likelihood of state j
P(Yt = j) = prior probability of state j
Modeling the likelihoods independently gives,
P(btlrtj)=P(HKLDtIYt=j)P(BVELtIYt=j)p(SPPAt1)/t=j)x (21)
P(TQ4IYt=j)P(BONBtIYy=j)P(STIStIYt=j)
Extending the likelihood table to include the
binary indicators give the following table.
24
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
State Rotation Pumping Block Hookload BONB STIS
movement
DrillRot / / 4 Low 1 0
DrillSlide x / 4 Low 1 0
RihPumpRot / / y. Low 0 0
RihPump x / 4 Low 0 0
Rih x x 4 Low 0 0
PoohPumpRot / / High 0 0
PoohPump x / High 0 0
Pooh x x .High 0 0
StaticPumpRot / / x -T 0 0
StaticPump x / x -T 0 0
Static x x x -T 0 0
InSlips x Either 4 -B 0 1
Unclassified Either .Either Any Any Either Either
According to another alternative embodiment,
fuzzy logic is used to automatically detect rig states
instead of or in combination with the probabilistic
methods described above.
According to an alternative embodiment, an
independent particle filter is applied to each input
channel to detect temporal features in the data, such as
step-changes, ramps etc; these filters are called
"changepoint detectors". ,A further particle filter
analyses the estimated distribution of changepoints and
segment parameters, in addition to the raw channel data,
to determine the probability of each rig state.
The changepoint detectors are designed to
segment a signal into sections each of which can be
described by the following General Linear Model,
y(m:t)=Gj(1:t-tit +1)b+w,
where
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
= m is the changepoint time at the start of this
segment (thus t+1 is the changepoint time of the
next segment).
= y(m:t) are the data from time in to t arranged in a
column vector.
= b is a column vector of coefficients (The algorithm
does not need to know the value of b).
= Gj is a matrix for the jth model and G3(1:t-m+1)
indicates the first t- m +1 rows of the matrix. For
example, G1 below is a model for data with a
constant mean and b will have one element which is
the value of this mean;,G2 is a model for linearly
varying data and b will have two elements being the
intercept and slope of the line; G3,is a model for
an exponential decay with rate A and b will have
two elements being the final value of the decay, and
the amplitude of the exponential.
1 1 0 1 1
1 1 1 1 eA
2 -22
G1(1:t)= 1 , G,(1:t)= 1 , G3(1:t)= 1 e
1 1 t-2 1 e (t-2)2
1 1 t-1 1 e-(t-l)a
In the following G3(k) will indicate the kth row of
the matrix. The total number of models is J, and G1,
G2 , ... , G, are to be specified by the user. Other
data models that fit into this framework are
polynomials of any order, sinusoidal models with
.known frequencies and autoregressive models. It is
assumed that an arbitrary number of rows of G, can
26
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
be specified; for the examples above it is obvious
how to do this.
= w is a column vector the same size as y(izz:t) , each
element is an independent sample from a zero mean
Gaussian with variance a'2. As with b the algorithm
does not need to know the value of a .
To obtain data with changepoints, the values of
b and a will be different in each segment. The desired
output of the algorithm is a collection of lists of
changepoint times, and a probability for each list. The
most probable list is thus the most probable segmentation
of the data according to the choice of models, G1, ..., G, .
The segmentation of the, signal is best
described using a tree structure, and the algorithm can
be considered as a search of this tree. At time 0 (before
any data has arrived) the tree consists of a single root
node, R. At time 1 the root node splits into J leaves,
one leaf for each of the J segment models - the first
leaf represents the hypothesis that the first data point
is modeled with G1, the second leaf hypothesises G2 etc.
At subsequent times the tree grows by each leaf node
splitting into J+1 leaves, one for each model and an
extra one represented by 0 which indicates that the data
point at the corresponding time belongs to the same model
segment as its parent. For example, with the two models
already described a path through the tree from the root
to a leaf node at time 10 might be R1000002000, and
this would indicate that y(1:6) was generated with G1 and
that y(7:10) was generated with G, (constant level
27
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
followed by a ramp for the examples of G1 and G2 given
earlier).
Some terminology will be useful. Considering a
generic leaf node,
= "The current model" can be found by moving up the
tree towards the root until a non-0 node is
encountered - the current model is the value of this
node.
= "The most recent changepoint" is the time
corresponding to the node in the previous bullet
point.
Over time the tree grows, and it is searched
using a collection of particles each occupying a distinct
leaf node. Let the particles be indexed by i=1,2,...,N, (N
is chosen by the user, and around '20-100 is usually
sufficient) then associated with particle i is a weight,
w; which can be interpreted as the probability that the
segmentation indicated by the path from the particle to
the root (as in the example above) is the correct
segmentation. Reference will also be made to the term
"node weight", which is the weight a particle located at
some node would have (though there may not actually be a
particle at, the node). In order to define the algorithm,
the method of updating the collection of N particles
when a new data point arrives is first, described, and
second how to initialize the particles at the start.
At time t the whole tree will have J(J+1)t-1
leaves, and it is assumed that N<J(J+1)t-1 so that not all
the leaves are occupied by a particle. (The case when
N2:J(J+1)t-1 is the initialization process, described
below.) The objective of the `algorithm is to concentrate
28
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
the particles on leaves that mean the particle weights
will be large. To update the particles from time t-1 to
time t
= Each particle is linked to its J+1 leaf nodes at
time t. For the N particles collectively there will
be (J +1)N such nodes - new particles are placed at
each of these nodes. In the example, a particle
whose path. back to the root node is R1000002000
would spawn 3 new particles whose paths back to the
root node would be
R1000002000
R1000002001
R1000002002
The new particles are referred to as "children" and
the old particles "parents".
= The weights for the child particles are calculated
as the product of three terms ; W hild - parent XWprior X wlikelihood
these are described below.
1. Wparent is the weight of the parent particle.
2. Wprior is a term which depends on the value of
the child node and a user defined number Pp,
which is between 0 and 1; if the child node is
0 then Wprior =1-Pp , otherwise, Wprior =PpIJ
Mathematically, this is the prior probability of
a changepoint at any time, so that small Pp
encourage long segments. (Note, more complicated
specifications of this are possible, such as
dividing Pp unequally among the J models when
the child node is not 0, implying that some
models are more probable than others. Also, a
29
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
specification that precludes segments less than
some value Tn ; for a given-node, if the most
recent changepoint is less than Tmin away, the
node has wprior =1 if the node value is 0 and
Wprior =O otherwise. If the most recent
changepoint is more than Tmin away, the simple
model in the main text is used.)
3. Wlikelihood is a term which depends on the data, the
current model, the most recent changepoint time
and three user defined variables; a, ,8 and 8
that are all positive scalars.. They are
determined by trial and error, but suitable
starting values are a,,8=0.1 and 5=50.
Increasing 8 encourages fewer changepoints. For
the child particle in question at time t, let
the current model be j, the most recent
changepoint be m, then Wlikelihood is given by:
-(t-,n+1)12-a
(Y(t) - Y)`
Wlikelihood _ - K[1+ 2
G.(t-m)HG~ (1:t-m)y(m:t-1)
where
Y_ 1-Gj(t-m )HG (t-m)
02,6+y(m:t-1)T [I-Gj(1:t-m)HGj (1:t-m)]y(m:t-1)
1-G,(t-m)HGi (t-1n)
K= I'((t-m+1)12+a)
~p2I'((t-m)12+a)
H=(G~(1:t-nz)Gj(1:t-n1)+8-2I) 1.
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
I'(.) is the gamma function, I is a suitably
dimensioned identity matrix and T denotes a
matrix transpose. (This computation results from
the data model y(m: t) =Gjb+w , which defines a
data likelihood
p(y(zn:t)Ib,a,G3)=N(y(m:t)IGjb,0.21) , and a prior
distribution for b and a,
p(b, a) = N(b IO, 0.2821) x IG(a'2 l a, l3) . From these
p(y(in : t)I Gj) can be computed by integrating
p(y(m : t) I b, a, Gj) x p(b, a) over b and o-. Wlikelihood is
actually p(y(t)I y(nz: t-1),Gj) which can be found from
p(y(in:t)JGj) by standard probabilistic
manipulations, and results in the. expression for
Wlikelihood given above . ) '
= The child particle weights are normalized by
calculating their sum, and replacing each child
weight with its existing value divided by the sum.
= From the N(J +1) children, N particles are selected
to become parents at the next time step. This is
done either by using the resampling method given in
the PPF,embodiment of the rig state detector using
the particle weights as usual, or simply by
selecting the N particles with largest weights. In
the latter case, the surviving particles have their
weights re-normalized as in the previous bullet
point.
The initialization procedure will now be
described. At time 1 the tree only has J leaf nodes, so
31
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
J"particles are initialized, one for'each leaf; their
weights are set to 11J. To go from t=1 to 2 the usual
update steps (as above) are applied to the J particles,
so there are now J(J,+1) children. If J(J+1)<N the final
selection step (last bullet point above) is omitted. This
is continued until the number of children exceeds N,
when the selection step is re-introduced at every time
step.
Two specific embodiments of this algorithm for
the rig state detection problem are as follows.
The TQA data can be modeled with segments of
constant mean, thus the changepoint algorithm is used
with G1 given in the above. Suitable values for the user-
defined variables are a=0.1 ,8=0.1, 8=100 and PP=0.1.
The BPOS data consists of flat and ramped
segments with a small amount of noise, so the changepoint
detector is used with G1 (data with constant mean) and G,
(linearly varying data) given earlier. Suitable user-
defined variables are a=3 /3=0.4 and (5=1000. The
specification for Wprior is different from that given above
to.take account of the fact that two G1 segments cannot
be adjacent ;(since the true block position must be
continuous with respect to time). Considering a child
particle at time t, let M be the model indicated by the
particle for time t-1 (M=1 implies G1, M=2 implies G2 )
and 7a be the value of the node at time t, then Wprior is
defined according to the following table.
32
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
n
0 1 2
1 1- PP 0 PP
M
2 1-Pr PP /2 PP /2
For this example PP =0.05 is suitable.
The rig state detector preferably uses the
results of the changepoint detectors as its inputs, but
some further processing is required to get them into a
suitable format. Typical examples of this for the two
channels considered above will be given.
The TQA channel can be used to infer.if the
drill string is rotating (ROT) or not (ROT) and the
probability of these two events is a sufficient synopsis
of the information supplied by the TQA channel. This
inference is performed via the mean level of the TQA
channel (the parameter b for the current segment in the
changepoint detector) as follows. If the rotation mode is
ROT then the mean level is modeled with
p(bI ROT) = N(,uTQo, UiQo), and if the rotation mode is ROT the
mean level is modeled with p(bIROT) = U(UTQO -36TQ0,TQDR/LL)
(Suitable values for ,uTQ0,6TQ0,TQDRTLL can be found using the
same procedure as in the PPF embodiment c.f. "Table of
priors and likelihoods"). Assuming that
P(ROT)=P(ROT)=112, the mean level models can be combined
(using Bayes' Theorem) to give
33
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
P(ROT I b) = p(b I ROT)
p(b I ROT) + P(b I ROT)
P(ROT 115) = p(b I ROT)
p(b I ROT) + P(b I ROT)
These can be used with the output of the TQA
changepoint detector to estimate P(ROT I y(1: t)) and
P(ROT I y(1: t)) as follows.
Set PRQT(t)=0, select NS (This variable must be
determined by experimentation, NS=100 is a good default
choice. The following routine calculates an approximation
of P(ROT I y(1: t)) and increasing NS increases the accuracy
of the approximation) then for n =1,...,NS
= Using the systematic sampling algorithm (See
Carpenter, 1998, p.8) sample .once from the TQA
particle weights, and set i equal to the index
sampled by the algorithm.,
= Find ml, the most recent changepoint time for,TQA
particle i.
= Compute the following terms, where g1=G1(i:t-m1+1)
b=(gTg1+82I) IgTY(m1:t),
[Ti +8 I 2 + m:t I- +8 I m:t))],
v=2a+t-nz1+1.
= Generate a sample from a'Student-t distribution with
20, v degrees of freedom using the algorithm in
('Statistical Computing', W.J.Kennedy & J.E.Gentle,
Marcel Dekker, New York, 1980, p.219-220) and store
the sample in x.
= Set b=b+x~.
34
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
= Increment PROT (t) using PROT (t) <- PR0T (t) + wi x P(ROT jb) ,
where w, is the weight of particle i.
At the end of this process PROT(t) is the
probability (indicated by the data y(1:t)) that the drill
string is rotating and PR0T(t)=1-PR0T(t) is the probability
that the drill string is stationary.
The synopsis from the BPOS channel is slightly
different. Sufficient information from this channel is if
the block is stationary, moving up, or moving down. The
event STAT (block is stationary) is equivalent to the
current segment model being G1, UP is indicated by the
current segment model being G2 and the slope parameter
(b(2) in this-case) being positive, DOWN is indicated by
the current segment model being G2 and the slope
parameter being negative. The probabilities of these
events at time t (indicated by the data) are written
PSTATIC(t), Pup(t) and PDOWN(t) and are computed as follows.
Initialise PDOWN(t)=0 and PSTAT(t)=0, then for i=1,...,N :
= Find the most recent changepoint time, fn1 and the
current model Mi.
= if M1 =1
o Increment PSTAT(t) using PSTAT (t) -PSTAT (t) + wl where w,
is the current particle weight.
= If M1 =2
o Compute the following terms, where
g2 = G2 (1: t - tni + 1)
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
b=(g2g2+S I)-lg2y(m; :t), T =(gzg2+S 21)(2fl+y(m1:t)T ['T92(g292+s 2I)-
ig2]y(m1t)),
v=2a+t-n;+1.
(Note that b is a 2-vector and E is a 2X2
matrix.).
o Increment PDOWN(t) using
PDOWN (t) PDOwN (t) + w1 stcdf I v, 4(2)/Z(2,2)) .
At the end of this process PUP(t) is computed
using PUP(t)=1-PD0WN(t)-PSTAT(t)
Similar computations can be performed to deduce
equivalent synopses for the other channels.
An example of a reduced model for rig state
detection using the two changepoint embodiments given
above as inputs will now be described. Let y1 be a random
variable for the rig state at time t taking one of the
following values:
{PoohPumpRot, PoohPump, RihPumpRot, RihPunzp, StaticPumpRot, StaticPump}
These six states can be classified using the synopses
from the TQA and BPOS channels and the following table.
Rig State Rotation Block movement
PoohPuinpRot ROT UP
PoohPuinp ROT UP
RihPuinpRot ROT DOWN
RihPuinp ROT DOWN
StaticPuinpRot ROT STAT
StaticPump ROT STAT
36
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
The objective of the rig state detection
algorithm is to compute the probability of each yt using
PROT (1 : t) , PRO-T(1:01 PDOWN (1 : t) , PSTAT (1 : t) and P. (1: t) and
update
these probabilities as t increases.
The user must specify a probability for all
possible state transitions e.g.
Pr(yt = PoohPuinp J yt-1 = StaticPunzp) and these may be encapsulated
in a matrix 1Z such that fl = Pr(yt = j l yt-1 = i) with i and -J
varying over the six possible states. This matrix must
satisfy H ?O for all i, j and Yjrll~ =1 for all i so that
each row is a proper probability distribution. For the
example embodiment the following simple specification is
sufficient; I1;. =e for i:?4-j and II,ii =1-5Ã for i= j . e=0.05
is a suitable value and decreasing s tends to encourage
fewer state changes. More complicated specifications are
possible that account for certain state transitions being
more probable than others.
The information contained in the changepoint
detector outputs are incorporated as follows. Let
PTQA(t) = [PROT (t) PROT (t)] and PBPOS (t) = [PDOWN (t) PSTAT (t) PUP (t)] be
the
outputs from the TQA and BPOS channels collected into two
vectors. The user must specify twelve likelihood
functions of the form p(PTQA(t)!yt) and p(PBPOS(t)Iyt) for all
six possible yt . Since PTQA(t) and PBPOS(t) are both vectors
constrained so that their elements sum to 1, these
likelihoods must be defined over similar spaces. The
Dirichlet class of distributions has this property so
they are used in this example. The Dirichlet distribution
with k variables has the form
37
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
//00 0 I'(a1 ...+ak) ai-1 ~ ... ~Ba~-1
P( 11 21 ..., k) e
r(a1)x:..xr(ak) 1 k
for 01,...,Ok >_ 0 and Zk O. =1, and the parameters a. > 0 .
The explicit specification of these likelihoods
for the model example is as follows.
= p(PTQA(t)=l yr)
o For r, E {PooliPumpRot, RihPuinpRot, StaticPumpRot} the
likelihood is a 2-element Dirichlet with
parameters a 1 = 3 and a2 =1 .
o For yt E {PoohPuznp, RihPunzp, StaticPump} the likelihood
is a 2-element Dirichlet with parameters a1=1
and a2=3.
= p (Faros (t) I Yt )
o For yt E {RihPumpRot, RihPunzp} the likelihood is a 3-
element Dirichlet with parameters a1=3, a2=1
and a3=1.
o For yt E {StaticPumpRot, StaticPump} the likelihood is a
3-element Dirichlet'with parameters a1=1, a2=3
and a3=1.
o For yt E {PooliPumpRot, PoohPump} the likelihood is a
3-element Dirichlet with parameters a1=1, a2=1
and a3 = 3 .
The idea behind this is that the largest a
parameter corresponds to the element in PTQA(t) or PBros(t)
that should be large for the given,rig state. For
instance, y = PooliPumpRot implies the rotation mode should
be ROT and the block movement mode should be DOWN, so
38
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
the second element of PTQA(t) (corresponding to PROT) should
be large, and the third element of PBPOS(t) (corresponding
to Pdo,võ) should be large. This is reflected in the
likelihood specifications above where for
p(PTQA(t)Iy =PoohPumpRot) az is large, and for
p(PBPOS(t)jyt =PoohPumpRot) a3 is large. Also it is important
that the non-large a's are set identically to 1 because
if they are not then (for example) p(PTQA(t)=[1 O]Iyt)=0. The
event PTQA(t) = [l 0] means that the changepoint detector is
certain that the TQA mode is on, so it should not be the
case that the likelihood of this event is 0. However, if
the above specification is.used the likelihood is at its
maximum for PTQA(t) = [1 0] .
To compute the rig state probabilities the
following algorithm is employed, and it is assumed that
the changepoint detection algorithms are operating and
outputting their probability synopses.
= Set z 0 = [ 1 1 1 1 1 1 ] / 6 .
= For t=1,2,...
o Set zt = zt-111 and k=1.
o For= each iE {PoohPumpRot, PoohPump,..., StaticPump)
^ Set zt(k)<-zt(k)xp(PTQ1(t)lyt =i)Xp(PBPOS(t)lyt =i)
^ Set k~-k+l.
o End for.
o Set Z=zt(1)++zt(6), then set zt(k)F-zt(k)/Z for
k=1,...,6.
= End for.
39
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
At the end of each iteration. zt is a 6-vector
containing estimates of 'the probability for the six rig
states conditional on the sensor data. up to time t.
According preferred embodiments of the
invention, the automatically detected rig state
information is used as part of a larger system for event
detection. In particular, it has been found that the
ability to diagnose certain drilling problems is greatly
.improved by incorporating the automatically detected rig
state.
According to one embodiment, an improved
diagnostic tool for detecting problems associated with
stuck pipe is provided. The tool preferable builds on a
known diagnostic tool such as SPIN doctorTM from
Schlumberger. The known tool queries the drill rig
personnel about the rig state when the pipe became stuck.
See Managing Drilling Risk, Aldred et al. Oilfield
Review, summer 1999, at page 11. According to the
invention, the diagnostic tool, such as SPIN-DR, is
modified to take the input directly from the automatic
rig state detection system as described above to greatly
improve and automate the detection of the onset of pipe
sticking.
Figure 9 shows steps involved in an improved
system for event detection, according to preferred
embodiments of the invention. In step 134, measured
surface data are received or sensed. Examples include
hookload, block position or velocity, standpipe pressure,
torque, as well as detected inputs such as the "bit on
bottom" and "in slips" indicators from system such. as
IDEAL TM. In step 136, measured downhole data are
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
received, such as MWD or LWD data. In step 132, the data
are inputted to the automatic rig state detection system
100, such as described above with reference to figure 8.
As described in Figure 8, prior information is also
inputted to the rig state detection system 100. From the
detection system 100 the rig state information (which is
preferably in the form of a probability) is inputted into
event detection systems. Instep 140, the rig state
information is inputted into an automatic event detection
system, such as SPIN-DR used for stuck pipe detection as
described above.
In general, in step 140, the automatic event
detection can be greatly improved through the use of
automatic rig state detection. Preferably, in step 140,
the rig state information is used to apply different
variations of the event detection algorithm depending on
the particular rig state. If the event detection is
based on threshold parameters, the threshold levels could
be set optimally for each rig state, thereby
significantly reducing the false positives (e.g. false
alarms) and false negative of the event detector.
However, as an alternative to threshold based techniques,
event detection preferably calculates the probability
that the event has occurred or will do shortly. If an
alarm is to be raised, this is preferably a threshold on
the calculated probability.
In step 142, in the case of the stuck pipe
detector, when a stuck pipe is indicated by the improved
SPIN-DR system, the drilling personnel are warned. In
step 146 the drilling personnel take corrective action in
light of the warning in step 142. In the case of a stuck
pipe warning For example, the warning for stuck pipe
41
CA 02511203 2011-03-03
72424-99
preferably includes the diagnosed cause such as
"undergauge hole." Alternatively, in step 144, instead of
a warning, the system suggests corrective action to the
drilling personnel. For example, if the diagnosis is
"undergauge hole", the suggested corrective action could
be to "spot an oil based mud pill".
Another example of an improved event detection
system, according to a preferred embodiment of the
invention, is an improved washout detection system.
According to this embodiment, the following additional
steps are performed.' Determine the relationship between
pump pressure and mud flow rate for the rig states where
pumping is occurring. Calculate surface flow rate from
surface data collected at the pumping system. Calculate
downhole flow rate from MWD turbine assembly. Compare
the surface and downhole flow rates, within like states.
For example, the calculations for PoohPumpRot and
DrillSlide are 'preferably performed separately. If a
discrepancy appears between surface-and downhole flow
rate among like states, a. washout event is indicated.
For further detail about washout detection see.,
Schlumberger Drilling and Measurements overview flier
entitled "Washout Alarm"
(http://www.hub.slb.com/Docs/DandM/GraphicsFolder/DM-Over
views/Washout_alarm.pdf).
Referring to Figure 9, the washout detection
system is an example of an automatic event detection
system step 140. In the case of a washout indication, a
warning is made to the drilling personnel in step 142.
The corrective action taken in step 146 could be tripping
out and inspecting the pipe tool joints for the washout.
42
CA 02511203 2011-03-03
72424-99
Another example of an improved event detection
system, according to a preferred embodiment of the
invention is an improved bit wear detection system using.
mechanical efficiency analysis. Mechanical efficiency
analysis techniques for detecting bit wear are known.
See, U.S. Patent No. 4,685,329, and "Measuring the Wear,
of Milled Tooth Bits Using MWD Torque and Weight-on-Bit"
Burgess and Lesso, SPE/IADC 13475.
According to the
invention, an improved bit wear detection system is
provided by separating the data into different cases
based on the state of the rig: (1) rotary drilling
(DrillRot), (2) sliding drilling (DrillSlide), and (3)
other states. The data from the non drilling states
(other states) is ignored. The data for rotary. drilling
and slider drilling are then analysed separately, by fine
tuning the torque and weight relationships for each case.
The different analysis preferably make use of the fact
that since the downhole torque sensor is typically
positioned above the mud motor, while rotary drilling the
direct torque is-sensed, and during sliding drilling, the
reactive torque is sensed.
According to another example of step 140, the
data extracted from a drilling acquisition system such as
Schulmberger's IDEAL=" technology. is automatically
extracted according to rig state. See U.S. Patent.
6,438,495. In this
case, all the data*is automatically separated into
DrillSlide, DrillRot, and the other states. Operational
parameters are selected for like states and BHA direction
tendency analysis is thereby automated.
43
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
According to another example of step 140, an
improved event detection system is based on torque and
drag analysis. Commercially available torque and drag
analysis software such as Dril1SAFETM part of Schlumberger
DrillingOfficeTM or DeaDrag8TM from Drilling Engineering
Assocation is preferable modified to automatically accept
rig state information to determine which mode of torque
and drag analysis to run. This automation allows a
continuous modeling of drill string tensile and torque
measurements. The comparison of these modeled data to
the actual measurements allows multiple forms of event
detectors such as stuck pipe, hole cleaning problems,
twist off, and sloughing shales.
According to another example of step 140, a
swab/surge detection system is provided. In general a
drill bit has almost the same diameter as the borehole
itself, so when raising a drill string, the bit acts like
a piston and the pressure of the mud below the bit is
reduced. This swab pressure can allow reservoir fluids
to enter the wellbore if the drill string is raised too
quickly, which may lead to a kick or a blowout.
Conversely, as the string is lowered, the pressure of the
mud below the bit is increased. This surge pressure can
fracture the formation, leading to mud loss and wellbore
stability problems. At each point along the wellbore,
the maximum safe surge pressure and the minimum safe swab
pressure can be calculated e.g. from an earth model.
Downhole pressure can be measured directly or modeled.
The detection system for detects dangerous swab and surge
pressures by first detecting the state of the drilling
rig, and acquires downhole pressure and drill bit depth
measurement data. If at any point along the wellbore the
44
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
maximum/minimum safe threshold pressure for the detected
state has been or is about to be exceeded, the warns the
driller of the situation and preferably suggests that the
drill string velocity be reduced.
According to another embodiment of the
invention, manual analysis of measured data is improved
through the use of automatic rig state information.
Referring to Figure 9, in step 150, automatic rig state
information is used to improve manual event detection.
According to the invention, in step 150 the most probable
rig state is plotted alongside other data channels,
thereby helping to focus the attention of an engineer
looking at MWD/LWD logs for formation evaluation or
drilling events. The state preferably is not displayed
when the state uncertainty exceeds a predefined limit.
An example of step 150 is avoiding excessive
vibrations in the drillstring. MWD downhole shock
measurements are monitored, sometimes remotely, to
determine if the BHA/drillstring is about to go into one
of several destructive vibration modes such as:
stick/slip, lateral resonance, forward, chaotic, and
backward whirl. This process involves manually performed
pattern recognition and is greatly improved by the use of
rig state information.
According to another embodiment of the
invention, the automatically detected events and the
state(s) during which they occurred are fed directly into
a knowledge base such as the commercially used software
known as RiskTRAKTM"from Schlumberger. Additionally,
risks identified within RiskTRAKTM are used as inputs to
the automatic rig state detectors. In particular the
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
identified risks are used to alter the prior
probabilities of the event detection algorithms.
Figure 10 shows a drilling system 10 using
automatic rig state detection, according to preferred
embodiments of the invention. Drill string 58 is shown
within borehole 46. Borehole'46 is located in the earth
40 having a surface 42. Borehole 46 is being cut by the
action of drill bit 54. Drill bit 54 is disposed at the
far end of the bottom hole assembly 56 that is attached
to and forms the lower portion of drill string 58.
Bottom hole assembly 56 contains a number of devices
including various subassemblies. According to the
invention measurement-while-drilling (MWD) subassemblies
are included in subassemblies 62. Examples of typical
MWD measurements include direction, inclination, survey
data, downhole pressure (inside the drill pipe, and
outside or annular pressure), resistivity, density, and
porosity. Also included is a subassembly 60=for
measuring torque and weight on bit. The signals from
the subassemblies 62 are preferably processed in
processor 66. After processing, the information from
processor 66 is then communicated to pulser assembly 64.
Pulser assembly 64 converts the information from
processor 66 into pressure pulses in the drilling fluid.
The pressure pulses are generated in a particular pattern
which represents the data from subassemblies 62. The
pressure pulses travel upwards though the drilling fluid
in the central opening in the drill string and towards
the surface system. The subassemblies in the bottom hole=
assembly 56 can also include a turbine or motor for
providing power for rotating and steering drill bit 54.
46
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
The drilling rig 12 includes a derrick 68 and
hoisting system, a rotating system, and a mud circulation
system. The hoisting system which suspends the drill
string 58, includes draw works 70, fast line 71, crown
block 75, drilling line 79, traveling block and hook 72,
swivel 74, and deadline 77. The rotating system includes
kelly 76, rotary table 88, and engines (not shown). The
rotating system imparts a rotational force on the drill
string 58 as is well known in the art. Although a system
with a Kelly and rotary table is shown in Figure 4, those
of skill in the art will recognize that the present
invention is also applicable to top drive drilling
arrangements. Although the drilling system is shown in
Figure 4 as being on land, those of skill in the art will
recognize that the present invention is equally
applicable to marine environments.
The mud circulation system pumps drilling fluid
down the central opening in the drill string. The,
drilling fluid is often called mud, and it is typically a
mixture of water or diesel fuel, special clays, and other
chemicals. The drilling mud is stored in mud pit 78.
The drilling mud is drawn in to mud pumps (not shown),
which pumps the mud though stand pipe 86 and into the
kelly 76 through swivel 74 which contains a rotating
seal. In invention is also applicable to underbalanced
drilling. If drilling underbalanced, at some point prior
to entering the drill string, gas is introduced into
drilling mud using an injection system (not shown).
The mud passes through drill string 58 and
through drill bit 54. As the teeth of the drill bit
grind and gouges the earth formation into cuttings the
mud is ejected out of openings or nozzles in the bit with
47
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
great speed and pressure. These jets of mud lift the
cuttings off the bottom of the hole and away from the
bit, and up towards the surface in the annular space
between drill string 58 and the wall of borehole 46.
At the surface the mud and cuttings leave the
well through a side outlet in blowout preventer 99 and
through mud return line (not shown). Blowout preventer
99 comprises a pressure control device and a rotary seal.
The mud return line feeds the mud into separator (not
shown) which separates the mud from the cuttings. From
the separator, the mud is returned to mud pit 78 for
storage and re-use.
Various sensors are placed on the drilling rig
10 to take measurement of the drilling equipment. In
particular hookload is measured by hookload sensor 94
mounted on deadline 77, block position and the related
block velocity are measured by block sensor 95 which is
part of the draw works 70. Surface torque is measured
by a sensor on the rotary table 88. Standpipe pressure
is measured by pressure sensor 92, located on standpipe
86. Signals from these measurements are communicated to
a central surface processor 96. In addition, mud pulses
traveling up the drillstring are detected by pressure
sensor 92. Pressure sensor 92 comprises a transducer
that converts the mud pressure into electronic signals.
The pressure sensor 92 is connected to surface processor
96 that converts the signal from the pressure signal into
digital form, stores and demodulates the digital signal
into useable MWD data. According to various embodiments
described above, surface processor 96 is programmed to
automatically detect the most likely rig state based on
the various input channels described. Processor 96 is
48
CA 02511203 2005-06-20
WO 2004/059123 PCT/GB2003/005596
also programmed carry out the automated event detection
as described above. Processor 96 preferably transmits
the rig state and/or event detection information to user
interface system 97 which is designed to warn the
drilling personnel of undesirable events and/or suggest
activity to the drilling personnel to avoid undesirable
events, as described above.
Figure 11 shows further detail of processor 96,
according to preferred embodiments of the invention.
Processor 96 preferably consists of one or more central
processing units 350, main memory 352, communications or
I/O modules 354, graphics devices 356; a floating point
accelerator 358, and mass storage such as tapes and discs
360.
While the invention has been described in
conjunction with the exemplary embodiments de'sc'ribed
above, many equivalent modifications and variations will
be apparent to those skilled in the art when given this
disclosure. Accordingly, the exemplary embodiments of
the invention set forth above are considered to be
illustrative and not limiting. Various changes to the
described embodiments may be made without departing from
the spirit and scope of the invention.
49