FUZZY DRILLING DIRECTION (FDD) CONTROLLER  2 This document contains the following sections. Recall there are two FDD controller OUTPUTs (DTFy and DTFx) and eight FDD controller INPUTS (msVD, RCVD, msID, RCID, msHD, RCHD, msAD, RCAD). The INPUTS are Technical Hole Deviation. The table below presents a variable summary. Input  Deviation "Sense"  Angular Deviation  Lineal Deviation  Used to compute DTF_{Y}  Used to compute DTF_{X}  Input Description  msVD  Vertical   X  X   vertical deviation  RCVD  Vertical   X  X   relative change in vertical deviation  msID  Vertical  X   X   inclinational deviation  RCID  Vertical  X   X   relative change in inclinational deviation  msHD  Horizontal   X   X  horizontal deviation  RCHD  Horizontal   X   X  relative change in horizontal deviation  msAD  Horizontal  X    X  azimuthal deviation  RCAD  Horizontal  X    X  relative change in azimuthal deviation 
Each FDD controller input and output is Fuzzified. The Fuzzification of a variable includes the following steps:  Define the domain of definition. Here, the relevant numerical range of the variable is specified. For example, if a heating/cooling system were being designed, a sensible domain of definition for Current Room Temperature might be 60 to 85 degrees Fahrenheit.
 Determine the number of notions (sets) that sufficiently describes the domain of definition, and name each notion accordingly.
 For each notion, define a degree of membership (DOM) function. A DOM functiona Fuzzy setmaps a given element from the domain into a value between [0,1].
Each DOM function requires at least 2 parameters for complete mathematical definition. For the simulated well paths presented on the prior page, 9 fuzzy sets (continuous DOM functions) were selected and appropriately named to describe each respective FDD controller input and output variable. Without exploiting symmetry, this yields (8 + 2) * (9 + 2) = 110 unique FDD controller parameters for Fuzzification only (the 2 is added to 9 to account for selecting the respective domain min and domain max). However, since there exists logical symmetry, and by simply accepting a general Fuzzification structure for all variables, the number of "tunable" FDD controller parameters can be significantly reduced to 10. For your reference, an example Fuzzification structure is presented below. It is logical for the domains of definitions for all FDD controller variables (i.e., inputs and outputs) to be symmetric about zero. Thus, given a Fuzzification structure, the "tunable" FDD controller parameters are:  a = absolute value of domain min/max of msVD
 b = absolute value of domain min/max of RCVD
 c = absolute value of domain min/max of msID
 d = absolute value of domain min/max of RCID
 e = absolute value of domain min/max of DTF_{Y}
 f = absolute value of domain min/max of msHD
 g = absolute value of domain min/max of RCHD
 h = absolute value of domain min/max of msAD
 j = absolute value of domain min/max of RCAD
 k = absolute value of domain min/max of DTF_{X}
To curtail this discussion, we will only address "computing" DTF_{Y} based on Technical Hole Deviation (THD) in the vertical sense. However, realize that because of symmetry, computing DTF_{X} based on THD in the horizontal sense can be similarly derived via appropriate variable substitution. Furthermore, for brevity we will assume that the variable Fuzzification structure has been completed with 5 (instead of 9) triangularshaped (instead of continuous) Fuzzy sets. FDD Controller Input/Output Naming of Fuzzy Sets Please note the following Fuzzyset naming convention for this discussion. Variable Description  Abbreviation  Fuzzy Set Notion Reference  vertical deviation  msVD  very low  low  righton  high  very high  VL  LO  RO  HI  VH  relative change in vertical deviation  RCVD  neg. big  neg. small  zero  pos. small  pos. big  NB  NS  ZE  PS  PB  inclinational deviation  msID  very low  low  righton  high  very high  VL  LO  RO  HI  VH  relative change in inclinational deviation  RCID  neg. big  neg. small  zero  pos. small  pos. big  NB  NS  ZE  PS  PB  change in Tool Force (Ydirection)  DTF_{Y}  drop hard  drop soft  leavealone  build soft  build hard  DH  DS  LA  BS  BH 
The naming of the Fuzzy sets that describe the domain of DTF_{Y} should not be confused with absolute and definite "building" or "dropping" of well bore inclination. Building (as in "build hard" for example) means DTF_{Y} should be significantly increased. Of course, what is actually meant by "significantly increased" is dependent on the FDD controller parameter A and the selected Fuzzification structure. Under certain circumstances, increasing DTF_{Y} would actually build well bore inclination at a higher gradient, and under other circumstances, increasing DTF_{Y} would continue to drop well bore inclination but at a lower gradient than prior. FDD Controller Rule Matrix 1: msVD and RCVD The matrix below presents a group of 25 Fuzzy rules that associate msVD and RCVD with reference to how DTF_{Y} should be changed. For example, the upper left rule would be read as: IF <msVD> is [VERYLOW] AND <RCVD> is [POSITIVEBIG], THEN <DTF_{Y}> should be [LEAVEALONE] Rule matrix 1 suggests how DTF_{Y} should be changed based on lineal deviation, without regard to angular deviation.
For each Fuzzy rule above, a picture can be drawn that easily conveys the commonsense logic for the rule. Two such examples follow. Fuzzy Rule Example Explanation #1 IF <msVD> is [LO] AND <RCVD> is [ZE], THEN <DTF_{Y}> should be [BS]. In simple terms, the foregoing rule addresses the following scenario: "The actual hole path is lower than the desired hole path. Since the last survey, the status of being low has pretty much stayed the same. Since we are 'below the curve,' hole inclination needs to be increased. Increasing the value of DTF_{Y} tends to increase the force at the bit in the direction which often acts to build hole angle. Since vertical deviation is not too low, we do not want to make any drastic changes which may cause an unnecessary dogleg or cause us to overshoot the planned path. Therefore, let us increase DTF_{Y} a little.
Fuzzy Rule Example Explanation #2 IF <msVD> is [VH] AND <RCVD> is [NB], THEN <DTF_{Y}> should be [LA]. In lay terms, the foregoing rule addresses the following scenario: "Right now we are way high of the curve. Since we are headed in the right direction, however, for now let's just leave the tool settings alone."
FDD Controller Rule Matrix 2: msID and RCID The matrix below presents a group of Fuzzy rules that associate msID and RCID with reference to how DTF_{Y} should be changed. Rule matrix 2 suggests how DTF_{Y} should be changed based on angular deviation, without regard to lineal deviation. One example rule explanation follows the rule matrix.
Fuzzy Rule Example Explanation #3 IF <msID> is [HI] AND <RCID> is [PS], THEN <DTF_{Y}> should be [DH]. In lay terms, the foregoing rule addresses the following scenario: "The hole inclination is a little higher than we'd like it to be. The bad thing is it's getting worse. We better try to drop angle pretty hard before it gets out of hand. We may not be able to get it back to what we want right away, but at least we can try to stop it from getting worse. Let's lower DTF_{Y} a good chunk and wait and see if that does the trick."
FDD Controller Rule Matrix 3: msVD and msID The rule matrix in this section presents a group of Fuzzy rules that associate msVD and msID in reference to a Weighting Factor, which is further discussed below. Rule matrix 1 addressed lineal deviations, while rule matrix 2 addressed angular deviations. Which rules are most important? The answer depends on both msVD and msID! To implement the concept "which rules are most important", a weighting factor (WF) is employed. By choice, the WF is a percentage that applies to the results of computing rule matrix 2 (angular deviations); thus (1  WF) is the percentage that applies to the results of computing rule matrix 1 (lineal deviations). To determine the best weighting factor (WF), we again use Fuzzy Logic because we can answer the control questions for various scenarios with words and commonsense logic! Controlling angular deviations is easier than is controlling lineal deviations. This is true because controlling lineal deviations with any sort of longevity also inherently requires controlling angular deviations. There must be sufficient controlability (and not necessarily minimizingability) of angular deviations before attempting to minimize lineal deviations. This explains the lowerleft and the upperright sections of rule matrix 3. For example, if the well bore is VERY HIGH of the plan and the well bore inclination is HIGH of the planned inclination, forget trying to minimize msVD and concentrate on gaining control of msID first; thus, the rule for this scenario infers WF of 90%. The center of rule matrix 3 (msVD ~ 0 and msID ~ 0) is THE target state. Here, the well bore is "ondepth" AND "oninclination". Under this scenario, if msID remains minimized (~ 0), the well bore will continue to remain ontrack regardless if planned inclination is constant or changing. Thus, the rule for this scenario infers WF of 90%. For another example, assume we at the beginning of a trueverticaldepth correction (e.g., lower the horizontal well bore 20 feet TVD right now). Under the "old" plan, (assume) msVD and msID were both about zero, but now msVD is abruptly VERY HIGH while msID remains RIGHTON. Obviously, we must temporarily "suffer" a nonzero msID in order to steer the well bore towards the new horizontal plan, even though the beginning and ending planned inclination angle is 90 degrees. Thus, the rule for this scenario infers WF of 10%, which accordingly makes the rules based on lineal deviation significantly more important than those based on angular deviation. However, as the well bore begins to approach the new planned horizontal TVD, the importance of msID (and thus the weighting factor) is increased to ensure a "smooth landing."
General Discussion A sketch that depicts the association of mapping INPUT to OUTPUT follows: The result of computing a rule matrix yields a vector of scaling factors respective to the output Fuzzy sets. By employing the weighting factor, the results from rule matrix 1 and rule matrix 2 are combined into a single vector of Fuzzy scaling factors. Defuzzification yields a single number, that is, DTF_{Y}. The time required to process the FDD controller is on the order of milliseconds. FORTUNATELY, you don't need to understand Fuzzy Logic and THD mathematics to apply this patented technology. SES can do it for you and output is presented as how to change the directional steering activity.
